{"version":3,"sources":["./node_modules/@angular/localize/fesm2015/init.js","./src/app/admin/company/brands/addbrand/addbrand.component.html","./src/app/admin/company/brands/brands.component.html","./src/app/admin/company/locations/addlocation/addlocation.component.html","./src/app/admin/company/locations/locations.component.html","./src/app/admin/customer/customers/addcustomers/addcustomer.component.html","./src/app/admin/customer/customers/customers.component.html","./src/app/admin/dashboard/dashboard.component.html","./src/app/admin/menu/category/addcategory/addcategory.component.html","./src/app/admin/menu/category/category.component.html","./src/app/admin/menu/city/addcity/addcity.component.html","./src/app/admin/menu/city/city.component.html","./src/app/admin/menu/gift/addgift/addgift.component.html","./src/app/admin/menu/gift/gift.component.html","./src/app/admin/menu/items/additem/additem.component.html","./src/app/admin/menu/items/items.component.html","./src/app/admin/menu/modifiers/addmodifier/addmodifier.component.html","./src/app/admin/menu/modifiers/modifiers.component.html","./src/app/admin/menu/subcategory/addsubcategory/addsubcategory.component.html","./src/app/admin/menu/subcategory/subcategory.component.html","./src/app/admin/report/salescategorywise/salescategorywise.component.html","./src/app/admin/report/salescustomerwise/salescustomerwise.component.html","./src/app/admin/report/salesdetail/salesdetail.component.html","./src/app/admin/report/salesitemwise/salesitemwise.component.html","./src/app/admin/report/salesuserwise/salesuserwise.component.html","./src/app/admin/report/summary/summary.component.html","./src/app/admin/sales/editorder/editorder.component.html","./src/app/admin/sales/orderdetails/orderdetails.component.html","./src/app/admin/sales/orders/orders.component.html","./src/app/admin/settings/banner/addbanner/addbanner.component.html","./src/app/admin/settings/banner/banner.component.html","./src/app/admin/settings/coupon/addcoupon/addcoupon.component.html","./src/app/admin/settings/coupon/coupon.component.html","./src/app/admin/settings/delivery/adddelivery/adddelivery.component.html","./src/app/admin/settings/delivery/delivery.component.html","./src/app/admin/settings/dynamiccss/dynamiccss.component.html","./src/app/admin/settings/generalsettings/generalsettings.component.html","./src/app/admin/settings/notifications/addnotifications/addnotifications.component.html","./src/app/admin/settings/notifications/notifications.component.html","./src/app/admin/settings/offers/addoffers/addoffers.component.html","./src/app/admin/settings/offers/offers.component.html","./src/app/admin/settings/reviews/reviews.component.html","./src/app/app.component.html","./src/app/counter/counter.component.html","./src/app/datepicker-popup/datepicker-popup.html","./src/app/datepicker-range/datepicker-range-popup.html","./src/app/fetch-data/fetch-data.component.html","./src/app/home/home.component.html","./src/app/imageupload/imageupload.component.html","./src/app/layout/layout.component.html","./src/app/login/login.component.html","./src/app/nav-menu/nav-menu.component.html","./src/app/themeImages/bgfeaturedupload/bgfeaturedupload.component.html","./src/app/themeImages/bgnewarrivalupload/bgnewarrivalupload.component.html","./src/app/themeImages/bgnewsletterupload/bgnewsletterupload.component.html","./src/app/themeImages/bgpopularupload/bgpopularupload.component.html","./src/app/themeImages/bgtestimonialupload/bgtestimonialupload.component.html","./src/app/themeImages/bgworkflowupload/bgworkflowupload.component.html","./src/app/themeImages/logoupload/logoupload.component.html","./src/$_lazy_route_resource lazy namespace object","./src/ExportExcel/excel.service.ts","./src/app/_directives/sortable.directive.ts","./src/app/_models/Dashboard.ts","./src/app/_models/Orders.ts","./src/app/_models/Report.ts","./src/app/_services/banner.service.ts","./src/app/_services/brands.service.ts","./src/app/_services/category.service.ts","./src/app/_services/city.service.ts","./src/app/_services/coupon.service.ts","./src/app/_services/customers.service.ts","./src/app/_services/dashboard.service.ts","./src/app/_services/delivery.service.ts","./src/app/_services/gift.service.ts","./src/app/_services/items.service.ts","./src/app/_services/local-storage.service.ts","./src/app/_services/locations.service.ts","./src/app/_services/login.service.ts","./src/app/_services/modifiers.service.ts","./src/app/_services/notifications.service.ts","./src/app/_services/offers.service.ts","./src/app/_services/orders.service.ts","./src/app/_services/report.service.ts","./src/app/_services/reviews.service.ts","./src/app/_services/settings.service.ts","./src/app/_services/subcategory.service.ts","./src/app/_services/toastservice.ts","./src/app/admin/company/brands/addbrand/addbrand.component.css","./src/app/admin/company/brands/addbrand/addbrand.component.ts","./src/app/admin/company/brands/brands.component.ts","./src/app/admin/company/locations/addlocation/addlocation.component.css","./src/app/admin/company/locations/addlocation/addlocation.component.ts","./src/app/admin/company/locations/locations.component.ts","./src/app/admin/customer/customers/addcustomers/addcustomer.component.css","./src/app/admin/customer/customers/addcustomers/addcustomer.component.ts","./src/app/admin/customer/customers/customers.component.ts","./src/app/admin/dashboard/dashboard.component.css","./src/app/admin/dashboard/dashboard.component.ts","./src/app/admin/menu/category/addcategory/addcategory.component.css","./src/app/admin/menu/category/addcategory/addcategory.component.ts","./src/app/admin/menu/category/category.component.ts","./src/app/admin/menu/city/addcity/addcity.component.css","./src/app/admin/menu/city/addcity/addcity.component.ts","./src/app/admin/menu/city/city.component.ts","./src/app/admin/menu/gift/addgift/addgift.component.css","./src/app/admin/menu/gift/addgift/addgift.component.ts","./src/app/admin/menu/gift/gift.component.ts","./src/app/admin/menu/items/additem/additem.component.css","./src/app/admin/menu/items/additem/additem.component.ts","./src/app/admin/menu/items/items.component.ts","./src/app/admin/menu/modifiers/addmodifier/addmodifier.component.css","./src/app/admin/menu/modifiers/addmodifier/addmodifier.component.ts","./src/app/admin/menu/modifiers/modifiers.component.ts","./src/app/admin/menu/subcategory/addsubcategory/addsubcategory.component.css","./src/app/admin/menu/subcategory/addsubcategory/addsubcategory.component.ts","./src/app/admin/menu/subcategory/subcategory.component.ts","./src/app/admin/report/salescategorywise/salescategorywise.component.ts","./src/app/admin/report/salescustomerwise/salescustomerwise.component.ts","./src/app/admin/report/salesdetail/salesdetail.component.ts","./src/app/admin/report/salesitemwise/salesitemwise.component.ts","./src/app/admin/report/salesuserwise/salesuserwise.component.ts","./src/app/admin/report/summary/summary.component.ts","./src/app/admin/sales/editorder/editorder.component.css","./src/app/admin/sales/editorder/editorder.component.ts","./src/app/admin/sales/orderdetails/orderdetails.component.css","./src/app/admin/sales/orderdetails/orderdetails.component.ts","./src/app/admin/sales/orders/orders.component.ts","./src/app/admin/settings/banner/addbanner/addbanner.component.css","./src/app/admin/settings/banner/addbanner/addbanner.component.ts","./src/app/admin/settings/banner/banner.component.ts","./src/app/admin/settings/coupon/addcoupon/addcoupon.component.css","./src/app/admin/settings/coupon/addcoupon/addcoupon.component.ts","./src/app/admin/settings/coupon/coupon.component.ts","./src/app/admin/settings/delivery/adddelivery/adddelivery.component.css","./src/app/admin/settings/delivery/adddelivery/adddelivery.component.ts","./src/app/admin/settings/delivery/delivery.component.css","./src/app/admin/settings/delivery/delivery.component.ts","./src/app/admin/settings/dynamiccss/dynamiccss.component.ts","./src/app/admin/settings/generalsettings/generalsettings.component.css","./src/app/admin/settings/generalsettings/generalsettings.component.ts","./src/app/admin/settings/notifications/addnotifications/addnotifications.component.css","./src/app/admin/settings/notifications/addnotifications/addnotifications.component.ts","./src/app/admin/settings/notifications/notifications.component.ts","./src/app/admin/settings/offers/addoffers/addoffers.component.css","./src/app/admin/settings/offers/addoffers/addoffers.component.ts","./src/app/admin/settings/offers/offers.component.ts","./src/app/admin/settings/reviews/reviews.component.ts","./src/app/app.component.ts","./src/app/app.module.ts","./src/app/counter/counter.component.ts","./src/app/datepicker-popup/datepicker-popup.ts","./src/app/datepicker-range/datepicker-range-popup.ts","./src/app/fetch-data/fetch-data.component.ts","./src/app/home/home.component.ts","./src/app/imageupload/imageupload.component.ts","./src/app/layout/layout.component.css","./src/app/layout/layout.component.ts","./src/app/login/login.component.ts","./src/app/nav-menu/nav-menu.component.css","./src/app/nav-menu/nav-menu.component.ts","./src/app/themeImages/bgfeaturedupload/bgfeaturedupload.component.ts","./src/app/themeImages/bgnewarrivalupload/bgnewarrivalupload.component.ts","./src/app/themeImages/bgnewsletterupload/bgnewsletterupload.component.ts","./src/app/themeImages/bgpopularupload/bgpopularupload.component.ts","./src/app/themeImages/bgtestimonialupload/bgtestimonialupload.component.ts","./src/app/themeImages/bgworkflowupload/bgworkflowupload.component.ts","./src/app/themeImages/logoupload/logoupload.component.ts","./src/environments/environment.ts","./src/main.ts","fs (ignored)","crypto (ignored)","stream (ignored)"],"names":[],"mappings":";;;;;;;;;AAAA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC;AACxC;AACA,mCAAmC;AACnC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,KAAK,cAAc,aAAa;AACnD;AACA;AACA,0CAA0C,IAAI,aAAa,MAAM;AACjE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,aAAa;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,MAAM,YAAY;AAClC;AACA,gBAAgB,MAAM,MAAM;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,yBAAyB;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C,6BAA6B;AACxE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iEAAiE,IAAI;AACrE;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;ACrMA;AAAe,68HAA84H,E;;;;;;;;;;;;ACA75H;AAAe,m/DAAo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","file":"main-es2015.js","sourcesContent":["/**\n * @license Angular v10.0.4\n * (c) 2010-2020 Google LLC. https://angular.io/\n * License: MIT\n */\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nconst __globalThis = typeof globalThis !== 'undefined' && globalThis;\nconst __window = typeof window !== 'undefined' && window;\nconst __self = typeof self !== 'undefined' && typeof WorkerGlobalScope !== 'undefined' &&\n self instanceof WorkerGlobalScope && self;\nconst __global = typeof global !== 'undefined' && global;\n// Always use __globalThis if available; this is the spec-defined global variable across all\n// environments.\n// Then fallback to __global first; in Node tests both __global and __window may be defined.\nconst _global = __globalThis || __global || __window || __self;\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * Tag a template literal string for localization.\n *\n * For example:\n *\n * ```ts\n * $localize `some string to localize`\n * ```\n *\n * **Providing meaning, description and id**\n *\n * You can optionally specify one or more of `meaning`, `description` and `id` for a localized\n * string by pre-pending it with a colon delimited block of the form:\n *\n * ```ts\n * $localize`:meaning|description@@id:source message text`;\n *\n * $localize`:meaning|:source message text`;\n * $localize`:description:source message text`;\n * $localize`:@@id:source message text`;\n * ```\n *\n * This format is the same as that used for `i18n` markers in Angular templates. See the\n * [Angular 18n guide](guide/i18n#template-translations).\n *\n * **Naming placeholders**\n *\n * If the template literal string contains expressions, then the expressions will be automatically\n * associated with placeholder names for you.\n *\n * For example:\n *\n * ```ts\n * $localize `Hi ${name}! There are ${items.length} items.`;\n * ```\n *\n * will generate a message-source of `Hi {$PH}! There are {$PH_1} items`.\n *\n * The recommended practice is to name the placeholder associated with each expression though.\n *\n * Do this by providing the placeholder name wrapped in `:` characters directly after the\n * expression. These placeholder names are stripped out of the rendered localized string.\n *\n * For example, to name the `items.length` expression placeholder `itemCount` you write:\n *\n * ```ts\n * $localize `There are ${items.length}:itemCount: items`;\n * ```\n *\n * **Escaping colon markers**\n *\n * If you need to use a `:` character directly at the start of a tagged string that has no\n * metadata block, or directly after a substitution expression that has no name you must escape\n * the `:` by preceding it with a backslash:\n *\n * For example:\n *\n * ```ts\n * // message has a metadata block so no need to escape colon\n * $localize `:some description::this message starts with a colon (:)`;\n * // no metadata block so the colon must be escaped\n * $localize `\\:this message starts with a colon (:)`;\n * ```\n *\n * ```ts\n * // named substitution so no need to escape colon\n * $localize `${label}:label:: ${}`\n * // anonymous substitution so colon must be escaped\n * $localize `${label}\\: ${}`\n * ```\n *\n * **Processing localized strings:**\n *\n * There are three scenarios:\n *\n * * **compile-time inlining**: the `$localize` tag is transformed at compile time by a\n * transpiler, removing the tag and replacing the template literal string with a translated\n * literal string from a collection of translations provided to the transpilation tool.\n *\n * * **run-time evaluation**: the `$localize` tag is a run-time function that replaces and\n * reorders the parts (static strings and expressions) of the template literal string with strings\n * from a collection of translations loaded at run-time.\n *\n * * **pass-through evaluation**: the `$localize` tag is a run-time function that simply evaluates\n * the original template literal string without applying any translations to the parts. This\n * version is used during development or where there is no need to translate the localized\n * template literals.\n * @param messageParts a collection of the static parts of the template string.\n * @param expressions a collection of the values of each placeholder in the template string.\n * @returns the translated string, with the `messageParts` and `expressions` interleaved together.\n */\nconst $localize = function (messageParts, ...expressions) {\n if ($localize.translate) {\n // Don't use array expansion here to avoid the compiler adding `__read()` helper unnecessarily.\n const translation = $localize.translate(messageParts, expressions);\n messageParts = translation[0];\n expressions = translation[1];\n }\n let message = stripBlock(messageParts[0], messageParts.raw[0]);\n for (let i = 1; i < messageParts.length; i++) {\n message += expressions[i - 1] + stripBlock(messageParts[i], messageParts.raw[i]);\n }\n return message;\n};\nconst BLOCK_MARKER = ':';\n/**\n * Strip a delimited \"block\" from the start of the `messagePart`, if it is found.\n *\n * If a marker character (:) actually appears in the content at the start of a tagged string or\n * after a substitution expression, where a block has not been provided the character must be\n * escaped with a backslash, `\\:`. This function checks for this by looking at the `raw`\n * messagePart, which should still contain the backslash.\n *\n * @param messagePart The cooked message part to process.\n * @param rawMessagePart The raw message part to check.\n * @returns the message part with the placeholder name stripped, if found.\n * @throws an error if the block is unterminated\n */\nfunction stripBlock(messagePart, rawMessagePart) {\n return rawMessagePart.charAt(0) === BLOCK_MARKER ?\n messagePart.substring(findEndOfBlock(messagePart, rawMessagePart) + 1) :\n messagePart;\n}\n/**\n * Find the end of a \"marked block\" indicated by the first non-escaped colon.\n *\n * @param cooked The cooked string (where escaped chars have been processed)\n * @param raw The raw string (where escape sequences are still in place)\n *\n * @returns the index of the end of block marker\n * @throws an error if the block is unterminated\n */\nfunction findEndOfBlock(cooked, raw) {\n /***********************************************************************************************\n * This function is repeated in `src/utils/messages.ts` and the two should be kept in sync.\n * The reason is that this file is marked as having side-effects, and if we import `messages.ts`\n * into it, the whole of `src/utils` will be included in this bundle and none of the functions\n * will be tree shaken.\n ***********************************************************************************************/\n for (let cookedIndex = 1, rawIndex = 1; cookedIndex < cooked.length; cookedIndex++, rawIndex++) {\n if (raw[rawIndex] === '\\\\') {\n rawIndex++;\n }\n else if (cooked[cookedIndex] === BLOCK_MARKER) {\n return cookedIndex;\n }\n }\n throw new Error(`Unterminated $localize metadata block in \"${raw}\".`);\n}\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n// Attach $localize to the global context, as a side-effect of this module.\n_global.$localize = $localize;\n//# sourceMappingURL=init.js.map\n","export default \"

Add Brand

\\r\\n

\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
Brand Details
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n Name is required.\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\";","export default \"\\r\\n

Brands

\\r\\n

\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Brands List
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
IMAGE Name EmailPassword Description Status
\\r\\n \\\"\\\"\\r\\n
\\r\\n
{{item.name}} {{item.email}} {{item.password}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n

\\r\\n Showing\\r\\n {{(service.pageSize * service.page)-9}} to\\r\\n {{(service.pageSize * service.page) > (total$ | async)!?(total$ | async)!:service.pageSize * service.page}} of\\r\\n {{(total$ | async)!}} results\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\";","export default \"

Add Location

\\r\\n

\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
Location Details
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n Name is required.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\";","export default \"\\r\\n

Location

\\r\\n

\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Locations List
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Name Description Delivery Charges Contact Status
{{item.name}} {{item.description}} {{item.deliveryCharges}} {{item.contact}} \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n

\\r\\n Showing\\r\\n {{(service.pageSize * service.page)-9}} to\\r\\n {{(service.pageSize * service.page) > (total$ | async)!?(total$ | async)!:service.pageSize * service.page}} of\\r\\n {{(total$ | async)!}} results\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\";","export default \"

Add Customer

\\r\\n

\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
Customer Details
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n First Name is required.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n Last Name is required.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n Email is required.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n Password is required.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\";","export default \"\\r\\n

Customers

\\r\\n

\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Customers List
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Orders Count First Name Last Name Email Contact# Status
{{item.ordersCount}} {{item.firstName}} {{item.lastName}} {{item.email}} {{item.contactNo}} \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n

\\r\\n Showing\\r\\n {{(service.pageSize * service.page)-9}} to\\r\\n {{(service.pageSize * service.page) > (total$ | async)!?(total$ | async)!:service.pageSize * service.page}} of\\r\\n {{(total$ | async)!}} results\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\";","export default \"\\r\\n
\\r\\n
\\r\\n

Dashboard

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Total Sales
\\r\\n
{{dashboardSummary.sales}}
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Net Sales
\\r\\n
{{dashboardSummary.netSales}}
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Total Tax
\\r\\n
{{dashboardSummary.totalTax}}
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Total Orders
\\r\\n
\\r\\n
\\r\\n
{{dashboardSummary.totalOrders}}
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
Earnings Overview
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
Revenue Periodic
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\";","export default \"

Add Category

\\r\\n

\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
Category Details
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n Name is required.\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n Recommened Files Size: 500X500 &
File Size limit is 1 MB
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\";","export default \"\\r\\n

Category

\\r\\n

\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Category List
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
IMAGE TitleDescription Display Order Status
\\r\\n \\\"\\\"\\r\\n
\\r\\n
{{item.title}} {{item.description}} {{item.displayOrder}} \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n

\\r\\n Showing\\r\\n {{(service.pageSize * service.page)-9}} to\\r\\n {{(service.pageSize * service.page) > (total$ | async)!?(total$ | async)!:service.pageSize * service.page}} of\\r\\n {{(total$ | async)!}} results\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\";","export default \"

Add City

\\r\\n

\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
City Details
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n City Name is required.\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\";","export default \"\\r\\n

City

\\r\\n

\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
City List
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
City NameStatus
{{item.cityName}} \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n

\\r\\n Showing\\r\\n {{(service.pageSize * service.page)-9}} to\\r\\n {{(service.pageSize * service.page) > (total$ | async)!?(total$ | async)!:service.pageSize * service.page}} of\\r\\n {{(total$ | async)!}} results\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\";","export default \"

Add Gift

\\r\\n

\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
Gift Details
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n Name is required.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n Recommened Files Size: 500X500 &
File Size limit is 1 MB
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\";","export default \"\\r\\n

Gift

\\r\\n

\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Gift List
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Image TitleDescription Display Price Discounted Price Status
\\r\\n \\\"\\\"\\r\\n
\\r\\n
{{item.title}} {{item.description}} {{item.displayPrice}} {{item.discountedPrice}} \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n

\\r\\n Showing\\r\\n {{(service.pageSize * service.page)-9}} to\\r\\n {{(service.pageSize * service.page) > (total$ | async)!?(total$ | async)!:service.pageSize * service.page}} of\\r\\n {{(total$ | async)!}} results\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\";","export default \"

Add Item

\\r\\n

\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
Item Details
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n Name is required.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n Price is required.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{item.title}}\\r\\n ×\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{item.title}}\\r\\n ×\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{item.cityName}}\\r\\n ×\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n Recommened Files Size: 500X500 &
File Size limit is 500 KB
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
File is required.
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\";","export default \"\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Items List
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
IMAGE Name Description Display Order Price Stock Status
\\r\\n \\\"\\\"\\r\\n
\\r\\n
{{item.title}} {{item.description}} {{item.displayOrder}}{{item.price}}{{item.stockQty}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n

\\r\\n Showing\\r\\n {{(service.pageSize * service.page)-39}} to\\r\\n {{(service.pageSize * service.page) > (total$ | async)!?(total$ | async)!:service.pageSize * service.page}} of\\r\\n {{(total$ | async)!}} results\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\";","export default \"

Add Modifier

\\r\\n

\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
Modifier Details
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n Name is required.\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\";","export default \"\\r\\n

Modifier

\\r\\n

\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Modifiers List
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
IMAGE Name Description Display Order PriceStatus
\\r\\n \\\"\\\"\\r\\n
\\r\\n
{{item.name}} {{item.description}} {{item.displayOrder}}{{item.price}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n

\\r\\n Showing\\r\\n {{(service.pageSize * service.page)-9}} to\\r\\n {{(service.pageSize * service.page) > (total$ | async)!?(total$ | async)!:service.pageSize * service.page}} of\\r\\n {{(total$ | async)!}} results\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\";","export default \"

Add Subcategory

\\r\\n

\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
Subcategory Details
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n Name is required.\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{item.title}}\\r\\n ×\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\";","export default \"\\r\\n

Subcategory

\\r\\n

\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Subcategory List
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
TitleStatus
{{item.title}} \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n

\\r\\n Showing\\r\\n {{(service.pageSize * service.page)-9}} to\\r\\n {{(service.pageSize * service.page) > (total$ | async)!?(total$ | async)!:service.pageSize * service.page}} of\\r\\n {{(total$ | async)!}} results\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\";","export default \"\\r\\n

Report

\\r\\n

\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Sales Categorywise
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Category Name Quantity Sold Total Cost Total Price Profit
{{item.categoryName}} {{item.quantity}} {{item.cost | number : '1.2-2'}}{{item.price | number : '1.2-2' }}{{item.price -item.cost | number : '1.2-2'}}
\\r\\n
\\r\\n
\\r\\n
\";","export default \"\\r\\n

Report

\\r\\n

\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Sales Customerwise
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{item.locationID }}\\r\\n \\r\\n \\r\\n {{item.name}}\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
TransactionNoOrderNoNameAddress MobileAmount Total Tax Charges Grand Total
{{item.transactionNo}} {{item.orderNo}} {{item.customerName}} {{item.customerAddress}} {{item.customerMobile}}{{item.amountTotal| number : '1.2-2'}}{{item.tax| number : '1.2-2'}}{{item.serviceCharges| number : '1.2-2'}}{{item.grandTotal| number : '1.2-2'}}
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\";","export default \"\\r\\n

Report

\\r\\n

\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Sales Detail
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Order #NameAddress MobileTotal Tax Charges G.Total
{{item.orderNo}} {{item.customerName}} {{item.customerAddress}} {{item.customerMobile}}{{item.amountTotal| number : '1.2-2'}}{{item.tax | number : '1.2-2'}}{{item.serviceCharges| number : '1.2-2'}}{{item.grandTotal| number : '1.2-2'}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n\";","export default \"\\r\\n

Report

\\r\\n

\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Sales Itemwise
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Item Name Quantity Sold Total Cost Total Price Profit
{{item.itemName}} {{item.quantity}} {{item.cost | number : '1.2-2'}}{{item.price | number : '1.2-2'}}{{(item.price - item.cost) | number : '1.2-2'}}
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\";","export default \"\\r\\n

Customers

\\r\\n

\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Sales Detail Report
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
IMAGE Name Email Mobile Password Status
\\r\\n \\\"\\\"\\r\\n
\\r\\n
{{item.fullName}} {{item.email}} {{item.mobile}}{{item.password}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\";","export default \"\\r\\n

Report

\\r\\n

\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Sales Summary
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Total Sales
\\r\\n
{{_model.totalSales | number : '1.2-2'}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Total Tax
\\r\\n
{{_model.totalTax| number : '1.2-2'}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Total Discount
\\r\\n
{{_model.totalDiscount | number : '1.2-2'}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Total NetSales
\\r\\n
{{_model.totalNetSales | number : '1.2-2'}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Total Orders
\\r\\n
{{_model.totalSalesOrders | number : '1.2-2'}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Total Delivery Orders
\\r\\n
{{_model.totalDeliveryOrders | number : '1.2-2'}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
Total Cancel Orders
\\r\\n
{{_model.totalCancelOrders | number : '1.2-2'}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\";","export default \"

Edit Order

\\r\\n

\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
Item Details
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{item.title}}\\r\\n ×\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n {{item.title}}\\r\\n ×\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
Image Name QtyPriceT.PriceAction
\\r\\n \\\"\\\"\\r\\n
\\r\\n
\\r\\n {{item.title}}: ProductNotes: {{item.productNote}}\\r\\n
GIFT: {{item1.title }} [ {{item1.price}} ]
{{item.quantity}} {{item.price/item.quantity}} {{item.price}} \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\";","export default \"\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n Order Details - \\r\\n {{\\r\\n order.statusID == 101 ?\\\"In Process\\\":\\r\\n order.statusID == 100 ? \\\"Delivered\\\" :\\r\\n order.statusID==104 ?\\\"Payment Failed\\\" :\\r\\n order.statusID == 105 ?\\\"Delivery Failed\\\" :\\r\\n order.statusID == 102 ? \\\"Order Accepted\\\" :\\r\\n order.statusID == 106 ? \\\"Cancelled\\\" :\\r\\n \\\"-\\\"\\r\\n }}\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Order Status
\\r\\n
\\r\\n
\\r\\n

Email message to be sent to customer (Optional)

\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
Order Information
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Order No\\r\\n \\r\\n
\\r\\n
\\r\\n
{{ order.orderNo }}
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Payment Method\\r\\n \\r\\n
\\r\\n
\\r\\n
{{ order.paymentMethod }}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Order Date\\r\\n \\r\\n
\\r\\n
\\r\\n
{{ order.orderDate | date }}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Delivery Date\\r\\n \\r\\n
\\r\\n
\\r\\n
{{ orderCustomerInfo.deliveryDate | date }}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Delivery Time\\r\\n \\r\\n
\\r\\n
\\r\\n
{{ orderCustomerInfo.selectedTime }}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Status\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n {{ order.statusID == 101 ?\\\"In Process\\\":order.statusID == 100 ? \\\"Delivered\\\" : order.statusID==104 ?\\\"Payment Failed\\\" : order.statusID == 105 ?\\\"Delivery Failed\\\" :order.statusID == 106 ?\\\"Cancelled\\\" : order.statusID == 102 ? \\\"Order Accepted\\\" : \\\"-\\\" }}\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Customer Information
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Sender Name\\r\\n \\r\\n
\\r\\n
\\r\\n
{{ orderCustomerInfo.senderName }}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Sender Email\\r\\n \\r\\n
\\r\\n
\\r\\n
{{ orderCustomerInfo.senderEmail }}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Sender Contact\\r\\n \\r\\n
\\r\\n
\\r\\n
{{ orderCustomerInfo.senderContact }}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Sender Address\\r\\n \\r\\n
\\r\\n
\\r\\n
{{ orderCustomerInfo.senderAddress}}
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Customer Name\\r\\n \\r\\n
\\r\\n
\\r\\n
{{ orderCustomerInfo.customerName }}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Customer Email\\r\\n \\r\\n
\\r\\n
\\r\\n
{{ orderCustomerInfo.email }}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Address\\r\\n \\r\\n
\\r\\n
\\r\\n
{{ orderCustomerInfo.address }}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Nearest Place\\r\\n \\r\\n
\\r\\n
\\r\\n
{{ orderCustomerInfo.nearestPlace }}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Place Type\\r\\n \\r\\n
\\r\\n
\\r\\n
{{ orderCustomerInfo.placeType }}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Contact Number\\r\\n \\r\\n
\\r\\n
\\r\\n
{{ orderCustomerInfo.contactNo }}
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Message for gift card\\r\\n \\r\\n
\\r\\n
\\r\\n
{{ orderCustomerInfo.cardNotes }}
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
Billing Information
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Amount Total\\r\\n \\r\\n
\\r\\n
\\r\\n
{{ order.amountTotal | number : '1.2-2'}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Tax\\r\\n \\r\\n
\\r\\n
\\r\\n
{{ order.tax | number : '1.2-2'}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Delivery Charges\\r\\n \\r\\n
\\r\\n
\\r\\n
{{ order.deliveryAmount | number : '1.2-2'}}
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n Grand Total\\r\\n \\r\\n
\\r\\n
\\r\\n
{{ order.grandTotal | number : '1.2-2'}}
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n\\r\\n \\r\\n
Image Name QtyPriceT.Price
\\r\\n \\\"\\\"\\r\\n
\\r\\n
\\r\\n {{item.title }}\\r\\n

Notes: {{item.productNote }}

\\r\\n
GIFT: {{item1.title }} [ {{item1.price}} BD ]
{{item.quantity}} {{item.price/item.quantity}} {{item.price}}
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n\";","export default \"\\r\\n

Sales

\\r\\n

\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Orders List
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Order # Sender Name Sender Contact Receiver Name Total Date Status
{{item.orderNo}} {{item.senderName}} {{item.senderContact}} {{item.customerName}} Rs. {{item.grandTotal | number : '1.2-2'}} {{item.orderDate | date}}\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n

\\r\\n Showing\\r\\n {{(service.pageSize * service.page)- 39}} to\\r\\n {{(service.pageSize * service.page) > (total$ | async)!?(total$ | async)!:service.pageSize * service.page}} of\\r\\n {{(total$ | async)!}} results\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\";","export default \"

Add banner

\\r\\n

\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
Banner Details
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n Recommened Files Size: 1920X820 &
File Size limit is 1 MB
\\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\";","export default \"\\r\\n

Banners

\\r\\n

\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Banners List
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
IMAGE Title Main Heading DescriptionForm NameStatus
\\r\\n \\\"\\\"\\r\\n
\\r\\n
{{item.title}} {{item.mainHeading}} {{item.description}} {{item.formName}} \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n

\\r\\n Showing\\r\\n {{(service.pageSize * service.page)-9}} to\\r\\n {{(service.pageSize * service.page) > (total$ | async)!?(total$ | async)!:service.pageSize * service.page}} of\\r\\n {{(total$ | async)!}} results\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\";","export default \"

Add Coupon

\\r\\n

\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Coupon Details
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n Name is required.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\";","export default \"\\r\\n

Coupon

\\r\\n

\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Coupon List
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Name Code Description Type Value FromTo Status
{{item.title}} {{item.couponCode}} {{item.description}} {{item.type}} {{item.amount}} {{item.fromDate | date}} {{item.toDate| date}} \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n Showing\\r\\n {{(service.pageSize * service.page)-9}} to\\r\\n {{(service.pageSize * service.page) > (total$ | async)!?(total$ | async)!:service.pageSize * service.page}} of\\r\\n {{(total$ | async)!}} results\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\";","export default \"

Add Area

\\r\\n

\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
Delivery Area Details
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n Name is required.\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n Amount is required.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\";","export default \"\\r\\n\\r\\n

Delivery

\\r\\n

\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Delivery Area
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Name Amount Status
{{item.name}} {{item.amount}} \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n

\\r\\n Showing\\r\\n {{(service.pageSize * service.page)-9}} to\\r\\n {{(service.pageSize * service.page) > (total$ | async)!?(total$ | async)!:service.pageSize * service.page}} of\\r\\n {{(total$ | async)!}} results\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\";","export default \"

Theme Changes Form

\\r\\n

\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
Theme Changes
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n Recommened Files Size: 500X500 &
File Size limit is 1 MB
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\";","export default \"

General Settings

\\r\\n

\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
Settings
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\";","export default \"

Add notification

\\r\\n

\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
Notifications Details
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n Name is required.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n Recommened Files Size: 500X500 &
File Size limit is 1 MB
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\";","export default \"\\r\\n

Notifications

\\r\\n

\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Notifications List
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
IMAGE Name Descripiton FromTo Status
\\r\\n \\\"\\\"\\r\\n
\\r\\n
{{item.title}} {{item.descripiton}} {{item.startDate | date}} {{item.endDate| date}} \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n Showing\\r\\n {{(service.pageSize * service.page)-9}} to\\r\\n {{(service.pageSize * service.page) > (total$ | async)!?(total$ | async)!:service.pageSize * service.page}} of\\r\\n {{(total$ | async)!}} results\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\";","export default \"

Add offer

\\r\\n

\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
Offers Details
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n Name is required.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n Recommened Files Size: 500X500 &
File Size limit is 1 MB
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\";","export default \"\\r\\n

Offers

\\r\\n

\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Offers List
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
IMAGE Name Descripiton FromTo Status
\\r\\n \\\"\\\"\\r\\n
\\r\\n
{{item.title}} {{item.descripiton}} {{item.startDate | date}} {{item.endDate| date}} \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n Showing\\r\\n {{(service.pageSize * service.page)-9}} to\\r\\n {{(service.pageSize * service.page) > (total$ | async)!?(total$ | async)!:service.pageSize * service.page}} of\\r\\n {{(total$ | async)!}} results\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\";","export default \"\\r\\n

Item Reviews

\\r\\n

\\r\\n\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
Reviews List
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
Name Email Contact Stars Comment ItemName Status
{{item.name}} {{item.email}} {{item.contact}} {{item.stars}} {{item.comments}} {{item.itemName}} \\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n

\\r\\n Showing\\r\\n {{(service.pageSize * service.page)-9}} to\\r\\n {{(service.pageSize * service.page) > (total$ | async)!?(total$ | async)!:service.pageSize * service.page}} of\\r\\n {{(total$ | async)!}} results\\r\\n

\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\";","export default \"\\r\\n\\r\\n\\r\\n\";","export default \"

Counter

\\r\\n\\r\\n

This is a simple example of an Angular component.

\\r\\n\\r\\n

Current count: {{ currentCount }}

\\r\\n\\r\\n\\r\\n\";","export default \"
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\";","export default \"
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n {{ date.day }}\\r\\n \\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\";","export default \"

Weather forecast

\\r\\n\\r\\n

This component demonstrates fetching data from the server.

\\r\\n\\r\\n

Loading...

\\r\\n\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
DateTemp. (C)Temp. (F)Summary
{{ forecast.date }}{{ forecast.temperatureC }}{{ forecast.temperatureF }}{{ forecast.summary }}
\\r\\n\";","export default \"\";","export default \"
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\";","export default \"\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n Powered by AIRTECH SOLUTIONS\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n\";","export default \"
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n

Welcome Back!

\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n Email is required.\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n password is required.\\r\\n
\\r\\n
\\r\\n
\\r\\n \\r\\n \\r\\n \\r\\n\\r\\n
\\r\\n\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n\\r\\n
\\r\\n\";","export default \"
\\r\\n \\r\\n
\\r\\n KarachiFlora\\r\\n \\r\\n \\r\\n \\r\\n \\r\\n \\r\\n
\\r\\n \\r\\n \\r\\n
\\r\\n\";","export default \"
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\";","export default \"
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\";","export default \"
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\";","export default \"
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\";","export default \"
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\";","export default \"
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\";","export default \"
\\r\\n\\r\\n
\\r\\n
\\r\\n \\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n
\\r\\n\\r\\n\\r\\n\\r\\n\";","function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"./src/$$_lazy_route_resource lazy recursive\";","import { Injectable } from '@angular/core';\r\nimport * as FileSaver from 'file-saver';\r\nimport * as XLSX from 'xlsx';\r\n\r\nconst EXCEL_TYPE = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\nconst EXCEL_EXTENSION = '.xlsx';\r\n\r\n@Injectable()\r\nexport class ExcelService {\r\n\r\n constructor() { }\r\n\r\n public exportAsExcelFile(json: any[], excelFileName: string): void {\r\n \r\n const worksheet: XLSX.WorkSheet = XLSX.utils.json_to_sheet(json);\r\n console.log('worksheet',worksheet);\r\n const workbook: XLSX.WorkBook = { Sheets: { 'data': worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = XLSX.write(workbook, { bookType: 'xlsx', type: 'array' });\r\n //const excelBuffer: any = XLSX.write(workbook, { bookType: 'xlsx', type: 'buffer' });\r\n this.saveAsExcelFile(excelBuffer, excelFileName);\r\n }\r\n\r\n private saveAsExcelFile(buffer: any, fileName: string): void {\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n FileSaver.saveAs(data, fileName + '_export_' + new Date().getTime() + EXCEL_EXTENSION);\r\n }\r\n\r\n}","import {Directive, EventEmitter, Input, Output} from '@angular/core';\r\n\r\n\r\nexport type SortColumn = keyof any | '';\r\nexport type SortDirection = 'asc' | 'desc' | '';\r\nconst rotate: {[key: string]: SortDirection} = { 'asc': 'desc', 'desc': '', '': 'asc' };\r\n\r\nexport interface SortEvent {\r\n column: SortColumn;\r\n direction: SortDirection;\r\n}\r\n\r\n@Directive({\r\n selector: 'th[sortable]',\r\n host: {\r\n '[class.asc]': 'direction === \"asc\"',\r\n '[class.desc]': 'direction === \"desc\"',\r\n '(click)': 'rotate()'\r\n }\r\n})\r\nexport class NgbdSortableHeader {\r\n\r\n @Input() sortable: SortColumn = '';\r\n @Input() direction: SortDirection = '';\r\n @Output() sort = new EventEmitter();\r\n\r\n rotate() {\r\n this.direction = rotate[this.direction];\r\n this.sort.emit({column: this.sortable, direction: this.direction});\r\n }\r\n}\r\n","export class DashboardSummary {\r\n totalOrders: number;\r\n totalTax: number;\r\n netSales: number;\r\n sales: number;\r\n \r\n}","export class Orders {\r\n customerID: number;\r\n orderNo: string;\r\n customerName: string;\r\n senderName: string;\r\n senderContact: string;\r\n amountTotal: number;\r\n tax: number;\r\n deliveryAmount: number;\r\n grandTotal: number;\r\n locationID: number;\r\n brandID: number;\r\n statusID: number;\r\n orderDate: string;\r\n orderType: string;\r\n orderID: number;\r\n paymentMethodID: number;\r\n paymentMethod: string;\r\n}\r\n\r\nexport class OrderDetails {\r\n orderDetailID: number;\r\n orderID: number;\r\n title: string;\r\n itemID: number;\r\n quantity: number;\r\n price: number;\r\n cost: number;\r\n discountAmount: number;\r\n statusID: number;\r\n giftids: any;\r\n productNote: string;\r\n orderDetailGifts: OrderDetailGifts[];\r\n}\r\nexport class OrderDetailGifts {\r\n\r\n orderDetailID: number;\r\n orderID: number;\r\n title: string;\r\n giftID: number;\r\n itemID: number;\r\n quantity: number;\r\n price: number;\r\n cost: number;\r\n statusID: number;\r\n}\r\nexport class OrderDetailModifiers {\r\n OrderDetailModifierID: number;\r\n orderDetailID: number;\r\n orderID: number;\r\n ModifierID: number;\r\n quantity: number;\r\n price: number;\r\n cost: number;\r\n statusID: number;\r\n}\r\nexport class OrderCheckout {\r\n paymentID: number;\r\n orderID: string;\r\n paymentModeID: string;\r\n amount: string;\r\n discountAmount: string;\r\n}\r\nexport class CustomerOrders {\r\n customerOrderID: number;\r\n contactNo: string;\r\n customerName: string;\r\n email: string;\r\n description: string;\r\n address: string;\r\n nearestPlace: string;\r\n deliveryDate: string;\r\n deliveryTime: string;\r\n cardNotes: string;\r\n placeType: string;\r\n selectedTime: string;\r\n senderName: string;\r\n senderEmail: string;\r\n senderContact: string;\r\n senderAddress: string;\r\n\r\n}","export class Report {\r\n\r\n}\r\n\r\nexport class SummaryReport {\r\n totalSales: string;\r\n totalTax: string;\r\n totalDiscount: string;\r\n totalReturn: string;\r\n totalNetSales: string;\r\n totalSalesOrders: string;\r\n totalDeliveryOrders: string;\r\n totalPickUpOrders: string;\r\n totalCancelOrders: string;\r\n brandID: number;\r\n}\r\n\r\nexport class SalesdetailReport {\r\n orderNo: number;\r\n transactionNo: number;\r\n CustomerID: string;\r\n customerName: string;\r\n customerMobile: string;\r\n orderDate: string;\r\n statusID: number;\r\n orderID: number;\r\n amountTotal: number;\r\n grandTotal: number;\r\n serviceCharges: number;\r\n tax: number;\r\n}\r\nexport class SalesitemwiseReport {\r\n itemName: string;\r\n quantity: string;\r\n cost: string;\r\n price: string;\r\n profit: string;\r\n itemID: string;\r\n}\r\nexport class SalescustomerwiseReport {\r\n orderNo: number;\r\n transactionNo: number;\r\n CustomerID: string;\r\n customerName: string;\r\n customerMobile: string;\r\n orderDate: string;\r\n statusID: number;\r\n orderID: number;\r\n amountTotal: number;\r\n grandTotal: number;\r\n serviceCharges: number;\r\n tax: number;\r\n}\r\nexport class SalesuserwiseReport {\r\n orderNo: string;\r\n transactionNo: string;\r\n customerName: string;\r\n customerContact: string;\r\n orderDate: string;\r\n statusID: string;\r\n amountTotal: string;\r\n orderID: string;\r\n}\r\nexport class SalescategorywiseReport {\r\n categoryName: string;\r\n quantity: string;\r\n cost: string;\r\n price: string;\r\n profit: string;\r\n itemID: string;\r\n}","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { BehaviorSubject, Observable, of, Subject } from 'rxjs';\r\nimport { switchMap, tap, map } from 'rxjs/operators';\r\nimport { SortColumn, SortDirection } from '../_directives/sortable.directive';\r\nimport { State } from '../_models/State';\r\nimport { Banner } from '../_models/Banner';\r\n\r\n\r\ninterface SearchBannerResult {\r\n data: Banner[];\r\n total: number;\r\n}\r\nconst compare = (v1: string, v2: string) => v1 < v2 ? -1 : v1 > v2 ? 1 : 0;\r\n\r\nfunction sort(data: Banner[], column: SortColumn, direction: string): Banner[] {\r\n if (direction === '' || column === '') {\r\n return data;\r\n } else {\r\n return [...data].sort((a, b) => {\r\n const res = compare(`${a[column]}`, `${b[column]}`);\r\n return direction === 'asc' ? res : -res;\r\n });\r\n }\r\n}\r\n\r\nfunction matches(data: Banner, term: string) {\r\n \r\n return data.name.toLowerCase().includes(term.toLowerCase())\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class BannerService {\r\n\r\n constructor(private http: HttpClient) {\r\n }\r\n\r\n private _loading$ = new BehaviorSubject(true);\r\n private _search$ = new Subject();\r\n private _allData$ = new BehaviorSubject([]);\r\n private _data$ = new BehaviorSubject([]);\r\n private _total$ = new BehaviorSubject(0);\r\n public Banner: Banner[];\r\n private _state: State = {\r\n page: 1,\r\n pageSize: 10,\r\n searchTerm: '',\r\n sortColumn: '',\r\n sortDirection: ''\r\n };\r\n\r\n get total$() { return this._total$.asObservable(); }\r\n get loading$() { return this._loading$.asObservable(); }\r\n get page() { return this._state.page; }\r\n get pageSize() { return this._state.pageSize; }\r\n get searchTerm() { return this._state.searchTerm; }\r\n\r\n set page(page: number) { this._set({ page }); }\r\n set pageSize(pageSize: number) { this._set({ pageSize }); }\r\n set searchTerm(searchTerm: any) { this._set({ searchTerm }); }\r\n set sortColumn(sortColumn: SortColumn) { this._set({ sortColumn }); }\r\n set sortDirection(sortDirection: SortDirection) { this._set({ sortDirection }); }\r\n\r\n get data$() {\r\n return this._data$.asObservable();\r\n }\r\n get allData$() {\r\n return this._allData$.asObservable();\r\n }\r\n\r\n\r\n getById(id) {\r\n return this.http.get(`api/banner/${id}`);\r\n }\r\n getAllData() {\r\n\r\n const url = `api/banner/all`;\r\n console.log(url);\r\n tap(() => this._loading$.next(true)),\r\n this.http.get(url).subscribe(res => {\r\n this.Banner = res;\r\n \r\n this._data$.next(this.Banner);\r\n this._allData$.next(this.Banner);\r\n\r\n this._search$.pipe(\r\n switchMap(() => this._search()),\r\n tap(() => this._loading$.next(false))\r\n ).subscribe(result => {\r\n this._data$.next(result.data);\r\n this._total$.next(result.total);\r\n });\r\n\r\n this._search$.next();\r\n });\r\n }\r\n private _set(patch: Partial) {\r\n Object.assign(this._state, patch);\r\n this._search$.next();\r\n }\r\n\r\n private _search(): Observable {\r\n const { sortColumn, sortDirection, pageSize, page, searchTerm } = this._state;\r\n\r\n // 1. sort\r\n let sortedData = sort(this.Banner, sortColumn, sortDirection);\r\n\r\n //// 2. filter\r\n sortedData = sortedData.filter(data => matches(data, searchTerm));\r\n const total = sortedData.length;\r\n\r\n // 3. paginate\r\n const data = sortedData.slice((page - 1) * pageSize, (page - 1) * pageSize + pageSize);\r\n return of({ data, total });\r\n }\r\n\r\n\r\n clear() {\r\n // clear by calling subject.next() without parameters\r\n this._search$.next();\r\n this._data$.next(null);\r\n this._allData$.next(null);\r\n this._total$.next(null);\r\n this._loading$.next(null);\r\n this._state = {\r\n page: 1,\r\n pageSize: 10,\r\n searchTerm: '',\r\n sortColumn: '',\r\n sortDirection: ''\r\n };\r\n }\r\n insert(data) {\r\n return this.http.post(`api/banner/insert`, data)\r\n .pipe(map(res => {\r\n\r\n console.log(res);\r\n return res;\r\n }));\r\n }\r\n\r\n update(updateData) {\r\n return this.http.post(`api/banner/update`, updateData)\r\n .pipe(map(res => {\r\n console.log(res);\r\n return res;\r\n }));\r\n }\r\n delete(updateData) {\r\n return this.http.post(`api/banner/delete`, updateData);\r\n }\r\n\r\n}\r\n","import { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { BehaviorSubject, Observable, of, Subject } from 'rxjs';\r\nimport { switchMap, tap, map } from 'rxjs/operators';\r\nimport { SortColumn, SortDirection } from '../_directives/sortable.directive';\r\nimport { State } from '../_models/State';\r\nimport { Brands } from '../_models/Brands';\r\n\r\ninterface SearchBrandsResult {\r\n data: Brands[];\r\n total: number;\r\n}\r\nconst compare = (v1: string, v2: string) => v1 < v2 ? -1 : v1 > v2 ? 1 : 0;\r\n\r\nfunction sort(data: Brands[], column: SortColumn, direction: string): Brands[] {\r\n if (direction === '' || column === '') {\r\n return data;\r\n } else {\r\n return [...data].sort((a, b) => {\r\n const res = compare(`${a[column]}`, `${b[column]}`);\r\n return direction === 'asc' ? res : -res;\r\n });\r\n }\r\n}\r\n\r\nfunction matches(data: Brands, term: string) {\r\n debugger\r\n return data.name.toLowerCase().includes(term.toLowerCase())\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class BrandsService {\r\n\r\n constructor(private http: HttpClient) {\r\n }\r\n\r\n private _loading$ = new BehaviorSubject(true);\r\n private _search$ = new Subject();\r\n private _allData$ = new BehaviorSubject([]);\r\n private _data$ = new BehaviorSubject([]);\r\n private _total$ = new BehaviorSubject(0);\r\n public brands: Brands[];\r\n private _state: State = {\r\n page: 1,\r\n pageSize: 10,\r\n searchTerm: '',\r\n sortColumn: '',\r\n sortDirection: ''\r\n };\r\n\r\n get total$() { return this._total$.asObservable(); }\r\n get loading$() { return this._loading$.asObservable(); }\r\n get page() { return this._state.page; }\r\n get pageSize() { return this._state.pageSize; }\r\n get searchTerm() { return this._state.searchTerm; }\r\n\r\n set page(page: number) { this._set({ page }); }\r\n set pageSize(pageSize: number) { this._set({ pageSize }); }\r\n set searchTerm(searchTerm: any) { this._set({ searchTerm }); }\r\n set sortColumn(sortColumn: SortColumn) { this._set({ sortColumn }); }\r\n set sortDirection(sortDirection: SortDirection) { this._set({ sortDirection }); }\r\n\r\n get data$() {\r\n return this._data$.asObservable();\r\n }\r\n get allData$() {\r\n return this._allData$.asObservable();\r\n }\r\n \r\n\r\n getById(id,brandId) {\r\n return this.http.get(`api/brand/${id}`);\r\n }\r\n getAllData(brandId) {\r\n\r\n const url = `api/brand/all/${brandId}`;\r\n console.log(url);\r\n tap(() => this._loading$.next(true)),\r\n this.http.get(url).subscribe(res => {\r\n this.brands = res;\r\n debugger\r\n this._data$.next(this.brands);\r\n this._allData$.next(this.brands);\r\n\r\n this._search$.pipe(\r\n switchMap(() => this._search()),\r\n tap(() => this._loading$.next(false))\r\n ).subscribe(result => {\r\n this._data$.next(result.data);\r\n this._total$.next(result.total);\r\n });\r\n\r\n this._search$.next();\r\n });\r\n }\r\n private _set(patch: Partial) {\r\n Object.assign(this._state, patch);\r\n this._search$.next();\r\n }\r\n\r\n private _search(): Observable {\r\n const { sortColumn, sortDirection, pageSize, page, searchTerm } = this._state;\r\n\r\n // 1. sort\r\n let sortedData = sort(this.brands, sortColumn, sortDirection);\r\n\r\n //// 2. filter\r\n sortedData = sortedData.filter(data => matches(data, searchTerm));\r\n const total = sortedData.length;\r\n\r\n // 3. paginate\r\n const data = sortedData.slice((page - 1) * pageSize, (page - 1) * pageSize + pageSize);\r\n return of({ data, total });\r\n }\r\n\r\n \r\n clear() {\r\n // clear by calling subject.next() without parameters\r\n this._search$.next();\r\n this._data$.next(null);\r\n this._allData$.next(null);\r\n this._total$.next(null);\r\n this._loading$.next(null);\r\n this._state = {\r\n page: 1,\r\n pageSize: 10,\r\n searchTerm: '',\r\n sortColumn: '',\r\n sortDirection: ''\r\n };\r\n }\r\n insert(data) {\r\n return this.http.post(`api/brand/insert`, data)\r\n .pipe(map(res => {\r\n \r\n console.log(res);\r\n return res;\r\n }));\r\n }\r\n\r\n update(updateData) {\r\n return this.http.post(`api/brand/update`, updateData)\r\n .pipe(map(res => {\r\n console.log(res);\r\n return res;\r\n }));\r\n }\r\n \r\n delete(id) {\r\n return this.http.delete(`api/brand/delete/${id}`);\r\n }\r\n\r\n}\r\n","import { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { BehaviorSubject, Observable, of, Subject } from 'rxjs';\r\nimport { switchMap, tap, map } from 'rxjs/operators';\r\nimport { SortColumn, SortDirection } from '../_directives/sortable.directive';\r\nimport { State } from '../_models/State';\r\nimport { Category } from '../_models/Cateogry';\r\n\r\ninterface SearchCategoryResult {\r\n data: Category[];\r\n total: number;\r\n}\r\nconst compare = (v1: string, v2: string) => v1 < v2 ? -1 : v1 > v2 ? 1 : 0;\r\n\r\nfunction sort(data: Category[], column: SortColumn, direction: string): Category[] {\r\n if (direction === '' || column === '') {\r\n return data;\r\n } else {\r\n return [...data].sort((a, b) => {\r\n const res = compare(`${a[column]}`, `${b[column]}`);\r\n return direction === 'asc' ? res : -res;\r\n });\r\n }\r\n}\r\n\r\nfunction matches(data: Category, term: string) {\r\n \r\n return data.title.toLowerCase().includes(term.toLowerCase())\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class CategoryService {\r\n\r\n constructor(private http: HttpClient) {\r\n }\r\n\r\n private _loading$ = new BehaviorSubject(true);\r\n private _search$ = new Subject();\r\n private _allData$ = new BehaviorSubject([]);\r\n private _data$ = new BehaviorSubject([]);\r\n private _total$ = new BehaviorSubject(0);\r\n public categories: Category[];\r\n private _state: State = {\r\n page: 1,\r\n pageSize: 10,\r\n searchTerm: '',\r\n sortColumn: '',\r\n sortDirection: ''\r\n };\r\n\r\n get total$() { return this._total$.asObservable(); }\r\n get loading$() { return this._loading$.asObservable(); }\r\n get page() { return this._state.page; }\r\n get pageSize() { return this._state.pageSize; }\r\n get searchTerm() { return this._state.searchTerm; }\r\n\r\n set page(page: number) { this._set({ page }); }\r\n set pageSize(pageSize: number) { this._set({ pageSize }); }\r\n set searchTerm(searchTerm: any) { this._set({ searchTerm }); }\r\n set sortColumn(sortColumn: SortColumn) { this._set({ sortColumn }); }\r\n set sortDirection(sortDirection: SortDirection) { this._set({ sortDirection }); }\r\n\r\n get data$() {\r\n return this._data$.asObservable();\r\n }\r\n get allData$() {\r\n return this._allData$.asObservable();\r\n }\r\n \r\n\r\n getById(id) {\r\n return this.http.get(`api/category/${id}`);\r\n }\r\n\r\n \r\n getAllData() {\r\n\r\n const url = `api/category/all`;\r\n console.log(url);\r\n tap(() => this._loading$.next(true)),\r\n this.http.get(url).subscribe(res => {\r\n this.categories = res;\r\n \r\n this._data$.next(this.categories);\r\n this._allData$.next(this.categories);\r\n\r\n this._search$.pipe(\r\n switchMap(() => this._search()),\r\n tap(() => this._loading$.next(false))\r\n ).subscribe(result => {\r\n this._data$.next(result.data);\r\n this._total$.next(result.total);\r\n });\r\n\r\n this._search$.next();\r\n });\r\n }\r\n private _set(patch: Partial) {\r\n Object.assign(this._state, patch);\r\n this._search$.next();\r\n }\r\n\r\n private _search(): Observable {\r\n const { sortColumn, sortDirection, pageSize, page, searchTerm } = this._state;\r\n\r\n // 1. sort\r\n let sortedData = sort(this.categories, sortColumn, sortDirection);\r\n\r\n //// 2. filter\r\n sortedData = sortedData.filter(data => matches(data, searchTerm));\r\n const total = sortedData.length;\r\n\r\n // 3. paginate\r\n const data = sortedData.slice((page - 1) * pageSize, (page - 1) * pageSize + pageSize);\r\n return of({ data, total });\r\n }\r\n\r\n \r\n clear() {\r\n // clear by calling subject.next() without parameters\r\n this._search$.next();\r\n this._data$.next(null);\r\n this._allData$.next(null);\r\n this._total$.next(null);\r\n this._loading$.next(null);\r\n this._state = {\r\n page: 1,\r\n pageSize: 10,\r\n searchTerm: '',\r\n sortColumn: '',\r\n sortDirection: ''\r\n };\r\n }\r\n insert(data) {\r\n return this.http.post(`api/category/insert`, data)\r\n .pipe(map(res => {\r\n \r\n console.log(res);\r\n return res;\r\n }));\r\n }\r\n\r\n update(updateData) {\r\n return this.http.post(`api/category/update`, updateData)\r\n .pipe(map(res => {\r\n console.log(res);\r\n return res;\r\n }));\r\n }\r\n \r\n delete(updateData) {\r\n return this.http.post(`api/category/delete`, updateData);\r\n }\r\n \r\n // delete(updateData) {\r\n // return this.http.put(`api/category/delete`, updateData)\r\n // .pipe(map(res => {\r\n // console.log(res);\r\n // return res;\r\n // }));\r\n // return this.http.delete(`api/category/delete/${id}`);\r\n // }\r\n\r\n}\r\n","import { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { BehaviorSubject, Observable, of, Subject } from 'rxjs';\r\nimport { switchMap, tap, map } from 'rxjs/operators';\r\nimport { SortColumn, SortDirection } from '../_directives/sortable.directive';\r\nimport { State } from '../_models/State';\r\nimport { City } from '../_models/City';\r\n\r\ninterface SearchCityResult {\r\n data: City[];\r\n total: number;\r\n}\r\nconst compare = (v1: string, v2: string) => v1 < v2 ? -1 : v1 > v2 ? 1 : 0;\r\n\r\nfunction sort(data: City[], column: SortColumn, direction: string): City[] {\r\n if (direction === '' || column === '') {\r\n return data;\r\n } else {\r\n return [...data].sort((a, b) => {\r\n const res = compare(`${a[column]}`, `${b[column]}`);\r\n return direction === 'asc' ? res : -res;\r\n });\r\n }\r\n}\r\n\r\nfunction matches(data: City, term: string) {\r\n return data.cityName.toLowerCase().includes(term.toLowerCase())\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class CityService {\r\n\r\n constructor(private http: HttpClient) {\r\n }\r\n\r\n private _loading$ = new BehaviorSubject(true);\r\n private _search$ = new Subject();\r\n private _allData$ = new BehaviorSubject([]);\r\n private _data$ = new BehaviorSubject([]);\r\n private _total$ = new BehaviorSubject(0);\r\n public cities: City[];\r\n private _state: State = {\r\n page: 1,\r\n pageSize: 10,\r\n searchTerm: '',\r\n sortColumn: '',\r\n sortDirection: ''\r\n };\r\n\r\n get total$() { return this._total$.asObservable(); }\r\n get loading$() { return this._loading$.asObservable(); }\r\n get page() { return this._state.page; }\r\n get pageSize() { return this._state.pageSize; }\r\n get searchTerm() { return this._state.searchTerm; }\r\n\r\n set page(page: number) { this._set({ page }); }\r\n set pageSize(pageSize: number) { this._set({ pageSize }); }\r\n set searchTerm(searchTerm: any) { this._set({ searchTerm }); }\r\n set sortColumn(sortColumn: SortColumn) { this._set({ sortColumn }); }\r\n set sortDirection(sortDirection: SortDirection) { this._set({ sortDirection }); }\r\n\r\n get data$() {\r\n return this._data$.asObservable();\r\n }\r\n get allData$() {\r\n return this._allData$.asObservable();\r\n }\r\n \r\n loadCategories() {\r\n return this.http.get( `api/city/all`);\r\n }\r\n getById(id) {\r\n return this.http.get(`api/city/${id}`);\r\n }\r\n\r\n \r\n getAllData() {\r\n\r\n const url = `api/city/all`;\r\n console.log(url);\r\n tap(() => this._loading$.next(true)),\r\n this.http.get(url).subscribe(res => {\r\n this.cities = res;\r\n \r\n this._data$.next(this.cities);\r\n this._allData$.next(this.cities);\r\n\r\n this._search$.pipe(\r\n switchMap(() => this._search()),\r\n tap(() => this._loading$.next(false))\r\n ).subscribe(result => {\r\n this._data$.next(result.data);\r\n this._total$.next(result.total);\r\n });\r\n\r\n this._search$.next();\r\n });\r\n }\r\n private _set(patch: Partial) {\r\n Object.assign(this._state, patch);\r\n this._search$.next();\r\n }\r\n\r\n private _search(): Observable {\r\n const { sortColumn, sortDirection, pageSize, page, searchTerm } = this._state;\r\n\r\n // 1. sort\r\n let sortedData = sort(this.cities, sortColumn, sortDirection);\r\n\r\n //// 2. filter\r\n sortedData = sortedData.filter(data => matches(data, searchTerm));\r\n const total = sortedData.length;\r\n\r\n // 3. paginate\r\n const data = sortedData.slice((page - 1) * pageSize, (page - 1) * pageSize + pageSize);\r\n return of({ data, total });\r\n }\r\n\r\n \r\n clear() {\r\n // clear by calling subject.next() without parameters\r\n this._search$.next();\r\n this._data$.next(null);\r\n this._allData$.next(null);\r\n this._total$.next(null);\r\n this._loading$.next(null);\r\n this._state = {\r\n page: 1,\r\n pageSize: 10,\r\n searchTerm: '',\r\n sortColumn: '',\r\n sortDirection: ''\r\n };\r\n }\r\n insert(data) {\r\n return this.http.post(`api/city/insert`, data)\r\n .pipe(map(res => {\r\n \r\n console.log(res);\r\n return res;\r\n }));\r\n }\r\n\r\n update(updateData) {\r\n return this.http.post(`api/city/update`, updateData)\r\n .pipe(map(res => {\r\n console.log(res);\r\n return res;\r\n }));\r\n }\r\n \r\n delete(updateData) {\r\n return this.http.post(`api/city/delete`, updateData);\r\n }\r\n \r\n // delete(updateData) {\r\n // return this.http.put(`api/subcategory/delete`, updateData)\r\n // .pipe(map(res => {\r\n // console.log(res);\r\n // return res;\r\n // }));\r\n // return this.http.delete(`api/subcategory/delete/${id}`);\r\n // }\r\n\r\n}\r\n","import { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { BehaviorSubject, Observable, of, Subject } from 'rxjs';\r\nimport { switchMap, tap, map } from 'rxjs/operators';\r\nimport { SortColumn, SortDirection } from '../_directives/sortable.directive';\r\nimport { State } from '../_models/State';\r\nimport { Coupon } from '../_models/Coupon';\r\n\r\n\r\ninterface SearchCouponResult {\r\n data: Coupon[];\r\n total: number;\r\n}\r\nconst compare = (v1: string, v2: string) => v1 < v2 ? -1 : v1 > v2 ? 1 : 0;\r\n\r\nfunction sort(data: Coupon[], column: SortColumn, direction: string): Coupon[] {\r\n if (direction === '' || column === '') {\r\n return data;\r\n } else {\r\n return [...data].sort((a, b) => {\r\n const res = compare(`${a[column]}`, `${b[column]}`);\r\n return direction === 'asc' ? res : -res;\r\n });\r\n }\r\n}\r\n\r\nfunction matches(data: Coupon, term: string) {\r\n return data.title.toLowerCase().includes(term.toLowerCase())\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class CouponService {\r\n\r\n constructor(private http: HttpClient) {\r\n }\r\n \r\n private _loading$ = new BehaviorSubject(true);\r\n private _search$ = new Subject();\r\n private _allData$ = new BehaviorSubject([]);\r\n private _data$ = new BehaviorSubject([]);\r\n private _total$ = new BehaviorSubject(0);\r\n public coupons: Coupon[];\r\n private _state: State = {\r\n page: 1,\r\n pageSize: 10,\r\n searchTerm: '',\r\n sortColumn: '',\r\n sortDirection: ''\r\n };\r\n\r\n get total$() { return this._total$.asObservable(); }\r\n get loading$() { return this._loading$.asObservable(); }\r\n get page() { return this._state.page; }\r\n get pageSize() { return this._state.pageSize; }\r\n get searchTerm() { return this._state.searchTerm; }\r\n\r\n set page(page: number) { this._set({ page }); }\r\n set pageSize(pageSize: number) { this._set({ pageSize }); }\r\n set searchTerm(searchTerm: any) { this._set({ searchTerm }); }\r\n set sortColumn(sortColumn: SortColumn) { this._set({ sortColumn }); }\r\n set sortDirection(sortDirection: SortDirection) { this._set({ sortDirection }); }\r\n\r\n get data$() {\r\n return this._data$.asObservable();\r\n }\r\n get allData$() {\r\n return this._allData$.asObservable();\r\n }\r\n\r\n getById(id) {\r\n return this.http.get(`api/coupon/${id}`);\r\n }\r\n\r\n getAllData() {\r\n const url = `api/coupon/all`;\r\n console.log(url);\r\n tap(() => this._loading$.next(true)),\r\n this.http.get(url).subscribe(res => {\r\n this.coupons = res;\r\n this._data$.next(this.coupons);\r\n this._allData$.next(this.coupons);\r\n this._search$.pipe(\r\n switchMap(() => this._search()),\r\n tap(() => this._loading$.next(false))\r\n ).subscribe(result => {\r\n this._data$.next(result.data);\r\n this._total$.next(result.total);\r\n });\r\n\r\n this._search$.next();\r\n });\r\n }\r\n\r\n private _set(patch: Partial) {\r\n Object.assign(this._state, patch);\r\n this._search$.next();\r\n }\r\n\r\n private _search(): Observable {\r\n const { sortColumn, sortDirection, pageSize, page, searchTerm } = this._state;\r\n\r\n // 1. sort\r\n let sortedData = sort(this.coupons, sortColumn, sortDirection);\r\n\r\n //// 2. filter\r\n sortedData = sortedData.filter(data => matches(data, searchTerm));\r\n const total = sortedData.length;\r\n\r\n // 3. paginate\r\n const data = sortedData.slice((page - 1) * pageSize, (page - 1) * pageSize + pageSize);\r\n return of({ data, total });\r\n }\r\n\r\n clear() {\r\n // clear by calling subject.next() without parameters\r\n this._search$.next();\r\n this._data$.next(null);\r\n this._allData$.next(null);\r\n this._total$.next(null);\r\n this._loading$.next(null);\r\n this._state = {\r\n page: 1,\r\n pageSize: 10,\r\n searchTerm: '',\r\n sortColumn: '',\r\n sortDirection: ''\r\n };\r\n }\r\n\r\n insert(data) {\r\n return this.http.post(`api/coupon/insert`, data)\r\n .pipe(map(res => {\r\n\r\n console.log(res);\r\n return res;\r\n }));\r\n }\r\n\r\n update(updateData) {\r\n return this.http.post(`api/coupon/update`, updateData)\r\n .pipe(map(res => {\r\n console.log(res);\r\n return res;\r\n }));\r\n }\r\n\r\n delete(updateData) {\r\n return this.http.post(`api/coupon/delete`, updateData);\r\n }\r\n}\r\n","import { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { BehaviorSubject, Observable, of, Subject } from 'rxjs';\r\nimport { switchMap, tap, map } from 'rxjs/operators';\r\nimport { SortColumn, SortDirection } from '../_directives/sortable.directive';\r\nimport { State } from '../_models/State';\r\nimport { Customers } from '../_models/Customers';\r\n\r\n\r\ninterface SearchCustomersResult {\r\n data: Customers[];\r\n total: number;\r\n}\r\nconst compare = (v1: string, v2: string) => v1 < v2 ? -1 : v1 > v2 ? 1 : 0;\r\n\r\nfunction sort(data: Customers[], column: SortColumn, direction: string): Customers[] {\r\n if (direction === '' || column === '') {\r\n return data;\r\n } else {\r\n return [...data].sort((a, b) => {\r\n const res = compare(`${a[column]}`, `${b[column]}`);\r\n return direction === 'asc' ? res : -res;\r\n });\r\n }\r\n}\r\n\r\nfunction matches(data: Customers, term: string) {\r\n \r\n return data.firstName.toLowerCase().includes(term.toLowerCase())\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class CustomersService {\r\n\r\n constructor(private http: HttpClient) {\r\n }\r\n\r\n private _loading$ = new BehaviorSubject(true);\r\n private _search$ = new Subject();\r\n private _allData$ = new BehaviorSubject([]);\r\n private _data$ = new BehaviorSubject([]);\r\n private _total$ = new BehaviorSubject(0);\r\n public customers: Customers[];\r\n private _state: State = {\r\n page: 1,\r\n pageSize: 10,\r\n searchTerm: '',\r\n sortColumn: '',\r\n sortDirection: ''\r\n };\r\n\r\n get total$() { return this._total$.asObservable(); }\r\n get loading$() { return this._loading$.asObservable(); }\r\n get page() { return this._state.page; }\r\n get pageSize() { return this._state.pageSize; }\r\n get searchTerm() { return this._state.searchTerm; }\r\n\r\n set page(page: number) { this._set({ page }); }\r\n set pageSize(pageSize: number) { this._set({ pageSize }); }\r\n set searchTerm(searchTerm: any) { this._set({ searchTerm }); }\r\n set sortColumn(sortColumn: SortColumn) { this._set({ sortColumn }); }\r\n set sortDirection(sortDirection: SortDirection) { this._set({ sortDirection }); }\r\n\r\n get data$() {\r\n return this._data$.asObservable();\r\n }\r\n get allData$() {\r\n return this._allData$.asObservable();\r\n }\r\n \r\n\r\n getById(id) {\r\n return this.http.get(`api/customer/${id}`);\r\n }\r\n \r\n getAllCustomer() {\r\n return this.http.get(`api/customer/all`);\r\n }\r\n getAllData() {\r\n\r\n const url = `api/customer/all`;\r\n console.log(url);\r\n tap(() => this._loading$.next(true)),\r\n this.http.get(url).subscribe(res => {\r\n this.customers = res;\r\n \r\n this._data$.next(this.customers);\r\n this._allData$.next(this.customers);\r\n\r\n this._search$.pipe(\r\n switchMap(() => this._search()),\r\n tap(() => this._loading$.next(false))\r\n ).subscribe(result => {\r\n this._data$.next(result.data);\r\n this._total$.next(result.total);\r\n });\r\n\r\n this._search$.next();\r\n });\r\n }\r\n private _set(patch: Partial) {\r\n Object.assign(this._state, patch);\r\n this._search$.next();\r\n }\r\n\r\n private _search(): Observable {\r\n const { sortColumn, sortDirection, pageSize, page, searchTerm } = this._state;\r\n\r\n // 1. sort\r\n let sortedData = sort(this.customers, sortColumn, sortDirection);\r\n\r\n //// 2. filter\r\n sortedData = sortedData.filter(data => matches(data, searchTerm));\r\n const total = sortedData.length;\r\n\r\n // 3. paginate\r\n const data = sortedData.slice((page - 1) * pageSize, (page - 1) * pageSize + pageSize);\r\n return of({ data, total });\r\n }\r\n\r\n \r\n clear() {\r\n // clear by calling subject.next() without parameters\r\n this._search$.next();\r\n this._data$.next(null);\r\n this._allData$.next(null);\r\n this._total$.next(null);\r\n this._loading$.next(null);\r\n this._state = {\r\n page: 1,\r\n pageSize: 10,\r\n searchTerm: '',\r\n sortColumn: '',\r\n sortDirection: ''\r\n };\r\n }\r\n insert(data) {\r\n \r\n return this.http.post(`api/customer/insert`, data)\r\n .pipe(map(res => {\r\n \r\n console.log(res);\r\n return res;\r\n }));\r\n }\r\n\r\n update(updateData) {\r\n return this.http.post(`api/customer/update`, updateData)\r\n .pipe(map(res => {\r\n console.log(res);\r\n return res;\r\n }));\r\n }\r\n delete(updateData) {\r\n return this.http.post(`api/customer/delete`, updateData);\r\n }\r\n\r\n}\r\n","import { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Location } from '../_models/Location';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class DashboadService {\r\n\r\n constructor(private http: HttpClient) {\r\n }\r\n\r\n public locations: Location[];\r\n\r\n GetDashboard( fdate,tdate) {\r\n \r\n // var fromdate = fdate;\r\n // var dd = String(fdate.getDate()).padStart(2, '0');\r\n // var mm = String(fdate.getMonth() + 1).padStart(2, '0'); //January is 0!\r\n // var yyyy = fdate.getFullYear();\r\n\r\n\r\n // var todate = tdate;\r\n // var dd1 = String(tdate.getDate()).padStart(2, '0');\r\n // var mm1 = String(tdate.getMonth() + 1).padStart(2, '0'); //January is 0!\r\n // var yyyy1 = tdate.getFullYear();\r\n\r\n // fromdate = yyyy + '-' + dd + '-' + mm; \r\n // todate = yyyy1 + '-' + dd1 + '-' + mm1;\r\n return this.http.get(`api/dashboard/get/${fdate}/${tdate}`);\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { BehaviorSubject, Observable, of, Subject } from 'rxjs';\r\nimport { switchMap, tap, map } from 'rxjs/operators';\r\nimport { SortColumn, SortDirection } from '../_directives/sortable.directive';\r\nimport { State } from '../_models/State';\r\nimport { Delivery } from '../_models/Delivery';\r\nimport { Brands } from '../_models/Brands';\r\n\r\n\r\ninterface SearchDeliveryResult {\r\n data: Delivery[];\r\n total: number;\r\n}\r\nconst compare = (v1: string, v2: string) => v1 < v2 ? -1 : v1 > v2 ? 1 : 0;\r\n\r\nfunction sort(data: Delivery[], column: SortColumn, direction: string): Delivery[] {\r\n if (direction === '' || column === '') {\r\n return data;\r\n } else {\r\n return [...data].sort((a, b) => {\r\n const res = compare(`${a[column]}`, `${b[column]}`);\r\n return direction === 'asc' ? res : -res;\r\n });\r\n }\r\n}\r\n\r\nfunction matches(data: Delivery, term: string) {\r\n \r\n return data.name.toLowerCase().includes(term.toLowerCase())\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class DeliveryService {\r\n\r\n constructor(private http: HttpClient) {\r\n }\r\n\r\n private _loading$ = new BehaviorSubject(true);\r\n private _search$ = new Subject();\r\n private _allData$ = new BehaviorSubject([]);\r\n private _data$ = new BehaviorSubject([]);\r\n private _total$ = new BehaviorSubject(0);\r\n public Delivery: Delivery[];\r\n private _state: State = {\r\n page: 1,\r\n pageSize: 10,\r\n searchTerm: '',\r\n sortColumn: '',\r\n sortDirection: ''\r\n };\r\n\r\n get total$() { return this._total$.asObservable(); }\r\n get loading$() { return this._loading$.asObservable(); }\r\n get page() { return this._state.page; }\r\n get pageSize() { return this._state.pageSize; }\r\n get searchTerm() { return this._state.searchTerm; }\r\n\r\n set page(page: number) { this._set({ page }); }\r\n set pageSize(pageSize: number) { this._set({ pageSize }); }\r\n set searchTerm(searchTerm: any) { this._set({ searchTerm }); }\r\n set sortColumn(sortColumn: SortColumn) { this._set({ sortColumn }); }\r\n set sortDirection(sortDirection: SortDirection) { this._set({ sortDirection }); }\r\n\r\n get data$() {\r\n return this._data$.asObservable();\r\n }\r\n get allData$() {\r\n return this._allData$.asObservable();\r\n }\r\n\r\n loadBrands(brandId) {\r\n return this.http.get(`api/brand/all/${brandId}`);\r\n }\r\n getById(id) {\r\n return this.http.get(`api/delivery/${id}`);\r\n }\r\n // getBrands(brandId) {\r\n // return this.http.get(`api/delivery/settings/${brandId}`);\r\n // }\r\n \r\n getAllData() {\r\n\r\n const url = `api/delivery/all`;\r\n console.log(url);\r\n tap(() => this._loading$.next(true)),\r\n this.http.get(url).subscribe(res => {\r\n this.Delivery = res;\r\n \r\n this._data$.next(this.Delivery);\r\n this._allData$.next(this.Delivery);\r\n\r\n this._search$.pipe(\r\n switchMap(() => this._search()),\r\n tap(() => this._loading$.next(false))\r\n ).subscribe(result => {\r\n this._data$.next(result.data);\r\n this._total$.next(result.total);\r\n });\r\n\r\n this._search$.next();\r\n });\r\n }\r\n private _set(patch: Partial) {\r\n Object.assign(this._state, patch);\r\n this._search$.next();\r\n }\r\n\r\n private _search(): Observable {\r\n const { sortColumn, sortDirection, pageSize, page, searchTerm } = this._state;\r\n\r\n // 1. sort\r\n let sortedData = sort(this.Delivery, sortColumn, sortDirection);\r\n\r\n //// 2. filter\r\n sortedData = sortedData.filter(data => matches(data, searchTerm));\r\n const total = sortedData.length;\r\n\r\n // 3. paginate\r\n const data = sortedData.slice((page - 1) * pageSize, (page - 1) * pageSize + pageSize);\r\n return of({ data, total });\r\n }\r\n\r\n\r\n clear() {\r\n // clear by calling subject.next() without parameters\r\n this._search$.next();\r\n this._data$.next(null);\r\n this._allData$.next(null);\r\n this._total$.next(null);\r\n this._loading$.next(null);\r\n this._state = {\r\n page: 1,\r\n pageSize: 10,\r\n searchTerm: '',\r\n sortColumn: '',\r\n sortDirection: ''\r\n };\r\n }\r\n insert(data) {\r\n \r\n return this.http.post(`api/delivery/insert`, data)\r\n .pipe(map(res => {\r\n\r\n console.log(res);\r\n return res;\r\n }));\r\n }\r\n\r\n update(updateData) {\r\n return this.http.post(`api/delivery/update`, updateData)\r\n .pipe(map(res => {\r\n console.log(res);\r\n return res;\r\n }));\r\n }\r\n delete(updateData) {\r\n return this.http.post(`api/delivery/delete`, updateData);\r\n }\r\n\r\n}\r\n","import { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { BehaviorSubject, Observable, of, Subject } from 'rxjs';\r\nimport { switchMap, tap, map } from 'rxjs/operators';\r\nimport { SortColumn, SortDirection } from '../_directives/sortable.directive';\r\nimport { State } from '../_models/State';\r\nimport { Gift } from '../_models/Gift';\r\n\r\ninterface SearchGiftResult {\r\n data: Gift[];\r\n total: number;\r\n}\r\nconst compare = (v1: string, v2: string) => v1 < v2 ? -1 : v1 > v2 ? 1 : 0;\r\n\r\nfunction sort(data: Gift[], column: SortColumn, direction: string): Gift[] {\r\n if (direction === '' || column === '') {\r\n return data;\r\n } else {\r\n return [...data].sort((a, b) => {\r\n const res = compare(`${a[column]}`, `${b[column]}`);\r\n return direction === 'asc' ? res : -res;\r\n });\r\n }\r\n}\r\n\r\nfunction matches(data: Gift, term: string) {\r\n \r\n return data.title.toLowerCase().includes(term.toLowerCase())\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class GiftService {\r\n\r\n constructor(private http: HttpClient) {\r\n }\r\n\r\n private _loading$ = new BehaviorSubject(true);\r\n private _search$ = new Subject();\r\n private _allData$ = new BehaviorSubject([]);\r\n private _data$ = new BehaviorSubject([]);\r\n private _total$ = new BehaviorSubject(0);\r\n public categories: Gift[];\r\n private _state: State = {\r\n page: 1,\r\n pageSize: 10,\r\n searchTerm: '',\r\n sortColumn: '',\r\n sortDirection: ''\r\n };\r\n\r\n get total$() { return this._total$.asObservable(); }\r\n get loading$() { return this._loading$.asObservable(); }\r\n get page() { return this._state.page; }\r\n get pageSize() { return this._state.pageSize; }\r\n get searchTerm() { return this._state.searchTerm; }\r\n\r\n set page(page: number) { this._set({ page }); }\r\n set pageSize(pageSize: number) { this._set({ pageSize }); }\r\n set searchTerm(searchTerm: any) { this._set({ searchTerm }); }\r\n set sortColumn(sortColumn: SortColumn) { this._set({ sortColumn }); }\r\n set sortDirection(sortDirection: SortDirection) { this._set({ sortDirection }); }\r\n\r\n get data$() {\r\n return this._data$.asObservable();\r\n }\r\n get allData$() {\r\n return this._allData$.asObservable();\r\n }\r\n \r\n\r\n getById(id) {\r\n return this.http.get(`api/gift/${id}`);\r\n }\r\n\r\n \r\n getAllData() {\r\n\r\n const url = `api/gift/all`;\r\n console.log(url);\r\n tap(() => this._loading$.next(true)),\r\n this.http.get(url).subscribe(res => {\r\n this.categories = res;\r\n \r\n this._data$.next(this.categories);\r\n this._allData$.next(this.categories);\r\n\r\n this._search$.pipe(\r\n switchMap(() => this._search()),\r\n tap(() => this._loading$.next(false))\r\n ).subscribe(result => {\r\n this._data$.next(result.data);\r\n this._total$.next(result.total);\r\n });\r\n\r\n this._search$.next();\r\n });\r\n }\r\n private _set(patch: Partial) {\r\n Object.assign(this._state, patch);\r\n this._search$.next();\r\n }\r\n\r\n private _search(): Observable {\r\n const { sortColumn, sortDirection, pageSize, page, searchTerm } = this._state;\r\n\r\n // 1. sort\r\n let sortedData = sort(this.categories, sortColumn, sortDirection);\r\n\r\n //// 2. filter\r\n sortedData = sortedData.filter(data => matches(data, searchTerm));\r\n const total = sortedData.length;\r\n\r\n // 3. paginate\r\n const data = sortedData.slice((page - 1) * pageSize, (page - 1) * pageSize + pageSize);\r\n return of({ data, total });\r\n }\r\n\r\n \r\n clear() {\r\n // clear by calling subject.next() without parameters\r\n this._search$.next();\r\n this._data$.next(null);\r\n this._allData$.next(null);\r\n this._total$.next(null);\r\n this._loading$.next(null);\r\n this._state = {\r\n page: 1,\r\n pageSize: 10,\r\n searchTerm: '',\r\n sortColumn: '',\r\n sortDirection: ''\r\n };\r\n }\r\n insert(data) {\r\n return this.http.post(`api/gift/insert`, data)\r\n .pipe(map(res => {\r\n \r\n console.log(res);\r\n return res;\r\n }));\r\n }\r\n\r\n update(updateData) {\r\n return this.http.post(`api/gift/update`, updateData)\r\n .pipe(map(res => {\r\n console.log(res);\r\n return res;\r\n }));\r\n }\r\n \r\n delete(updateData) {\r\n return this.http.post(`api/gift/delete`, updateData);\r\n }\r\n \r\n // delete(updateData) {\r\n // return this.http.put(`api/gift/delete`, updateData)\r\n // .pipe(map(res => {\r\n // console.log(res);\r\n // return res;\r\n // }));\r\n // return this.http.delete(`api/gift/delete/${id}`);\r\n // }\r\n\r\n}\r\n","import { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { BehaviorSubject, Observable, of, Subject } from 'rxjs';\r\nimport { switchMap, tap, map } from 'rxjs/operators';\r\nimport { SortColumn, SortDirection } from '../_directives/sortable.directive';\r\nimport { State } from '../_models/State';\r\nimport { ItemImages, Items } from '../_models/Items';\r\nimport { Category } from '../_models/Cateogry';\r\nimport { Subcategory } from '../_models/Subcategory';\r\nimport { City } from '../_models/City';\r\n\r\ninterface SearchItemsResult {\r\n data: Items[];\r\n total: number;\r\n}\r\nconst compare = (v1: string, v2: string) => v1 < v2 ? -1 : v1 > v2 ? 1 : 0;\r\n\r\nfunction sort(data: Items[], column: SortColumn, direction: string): Items[] {\r\n if (direction === '' || column === '') {\r\n return data;\r\n } else {\r\n return [...data].sort((a, b) => {\r\n const res = compare(`${a[column]}`, `${b[column]}`);\r\n return direction === 'asc' ? res : -res;\r\n });\r\n }\r\n}\r\n\r\nfunction matches(data: Items, term: string) {\r\n debugger\r\n return data.title.toLowerCase().includes(term.toLowerCase())\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class ItemsService {\r\n\r\n constructor(private http: HttpClient) {\r\n }\r\n\r\n private _loading$ = new BehaviorSubject(true);\r\n private _search$ = new Subject();\r\n private _allData$ = new BehaviorSubject([]);\r\n private _data$ = new BehaviorSubject([]);\r\n private _total$ = new BehaviorSubject(0);\r\n public items: Items[];\r\n private _state: State = {\r\n page: 1,\r\n pageSize: 40,\r\n searchTerm: '',\r\n sortColumn: '',\r\n sortDirection: ''\r\n };\r\n\r\n get total$() { return this._total$.asObservable(); }\r\n get loading$() { return this._loading$.asObservable(); }\r\n get page() { return this._state.page; }\r\n get pageSize() { return this._state.pageSize; }\r\n get searchTerm() { return this._state.searchTerm; }\r\n\r\n set page(page: number) { this._set({ page }); }\r\n set pageSize(pageSize: number) { this._set({ pageSize }); }\r\n set searchTerm(searchTerm: any) { this._set({ searchTerm }); }\r\n set sortColumn(sortColumn: SortColumn) { this._set({ sortColumn }); }\r\n set sortDirection(sortDirection: SortDirection) { this._set({ sortDirection }); }\r\n\r\n get data$() {\r\n return this._data$.asObservable();\r\n }\r\n get allData$() {\r\n return this._allData$.asObservable();\r\n }\r\n loadCities() {\r\n return this.http.get( `api/city/all`);\r\n } \r\n loadCategories() {\r\n return this.http.get( `api/category/all`);\r\n }\r\n loadItemImages(id) {\r\n return this.http.get( `api/item/images/${id}`);\r\n }\r\n loadSubCategories() {\r\n return this.http.get( `api/subcategory/all`);\r\n }\r\n getById(id) {\r\n return this.http.get(`api/item/${id}`);\r\n }\r\n getAllData() {\r\n\r\n const url = `api/item/all`;\r\n console.log(url);\r\n tap(() => this._loading$.next(true)),\r\n this.http.get(url).subscribe(res => {\r\n this.items = res;\r\n \r\n this._data$.next(this.items);\r\n this._allData$.next(this.items);\r\n\r\n this._search$.pipe(\r\n switchMap(() => this._search()),\r\n tap(() => this._loading$.next(false))\r\n ).subscribe(result => {\r\n this._data$.next(result.data);\r\n this._total$.next(result.total);\r\n });\r\n\r\n this._search$.next();\r\n });\r\n }\r\n private _set(patch: Partial) {\r\n Object.assign(this._state, patch);\r\n this._search$.next();\r\n }\r\n\r\n private _search(): Observable {\r\n const { sortColumn, sortDirection, pageSize, page, searchTerm } = this._state;\r\n\r\n // 1. sort\r\n let sortedData = sort(this.items, sortColumn, sortDirection);\r\n\r\n //// 2. filter\r\n sortedData = sortedData.filter(data => matches(data, searchTerm));\r\n const total = sortedData.length;\r\n\r\n // 3. paginate\r\n const data = sortedData.slice((page - 1) * pageSize, (page - 1) * pageSize + pageSize);\r\n return of({ data, total });\r\n }\r\n\r\n \r\n clear() {\r\n // clear by calling subject.next() without parameters\r\n this._search$.next();\r\n this._data$.next(null);\r\n this._allData$.next(null);\r\n this._total$.next(null);\r\n this._loading$.next(null);\r\n this._state = {\r\n page: 1,\r\n pageSize: 40,\r\n searchTerm: '',\r\n sortColumn: '',\r\n sortDirection: ''\r\n };\r\n }\r\n insert(data) {\r\n return this.http.post(`api/item/insert`, data)\r\n .pipe(map(res => {\r\n \r\n console.log(res);\r\n return res;\r\n }));\r\n }\r\n\r\n update(updateData) {\r\n return this.http.post(`api/item/update`, updateData)\r\n .pipe(map(res => {\r\n console.log(res);\r\n return res;\r\n }));\r\n }\r\n delete(updateData) {\r\n return this.http.post(`api/item/delete`, updateData);\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Subject } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class LocalStorageService {\r\n selectedBrand: any;\r\n selectedLocation: any;\r\n\r\n constructor() {\r\n \r\n }\r\n\r\n\r\n setSelectedUser(data) {\r\n sessionStorage.setItem('_autheticatedUser', JSON.stringify(data));\r\n }\r\n\r\n setSelectedLocation(location) {\r\n sessionStorage.setItem('selectedLocation', JSON.stringify(location));\r\n }\r\n getSelectedLocation() {\r\n return JSON.parse(sessionStorage.getItem('selectedLocation'));\r\n }\r\n setLocation(location) {\r\n sessionStorage.setItem('_Locations', JSON.stringify(location));\r\n }\r\n getLocation() {\r\n \r\n return JSON.parse(sessionStorage.getItem('_Locations'));\r\n }\r\n getSelectedUser() {\r\n \r\n return JSON.parse(sessionStorage.getItem('_autheticatedUser'));\r\n }\r\n\r\n // getSelectedUser() {\r\n // let userInfo = JSON.parse(sessionStorage.getItem(\"currentUser\"));\r\n // if(userInfo !==null){\r\n // userInfo = JSON.parse(userInfo.data);\r\n // return userInfo;\r\n // }\r\n // }\r\n\r\n\r\n \r\n}\r\n","import { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { BehaviorSubject, Observable, of, Subject } from 'rxjs';\r\nimport { switchMap, tap, map } from 'rxjs/operators';\r\nimport { SortColumn, SortDirection } from '../_directives/sortable.directive';\r\nimport { State } from '../_models/State';\r\nimport { Location } from '../_models/Location';\r\n\r\ninterface SearchLocationsResult {\r\n data: Location[];\r\n total: number;\r\n}\r\nconst compare = (v1: string, v2: string) => v1 < v2 ? -1 : v1 > v2 ? 1 : 0;\r\n\r\nfunction sort(data: Location[], column: SortColumn, direction: string): Location[] {\r\n if (direction === '' || column === '') {\r\n return data;\r\n } else {\r\n return [...data].sort((a, b) => {\r\n const res = compare(`${a[column]}`, `${b[column]}`);\r\n return direction === 'asc' ? res : -res;\r\n });\r\n }\r\n}\r\n\r\nfunction matches(data: Location, term: string) {\r\n return data.name.toLowerCase().includes(term.toLowerCase())\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class LocationsService {\r\n\r\n constructor(private http: HttpClient) {\r\n }\r\n\r\n private _loading$ = new BehaviorSubject(true);\r\n private _search$ = new Subject();\r\n private _allData$ = new BehaviorSubject([]);\r\n private _data$ = new BehaviorSubject([]);\r\n private _total$ = new BehaviorSubject(0);\r\n public locations: Location[];\r\n private _state: State = {\r\n page: 1,\r\n pageSize: 10,\r\n searchTerm: '',\r\n sortColumn: '',\r\n sortDirection: ''\r\n };\r\n\r\n get total$() { return this._total$.asObservable(); }\r\n get loading$() { return this._loading$.asObservable(); }\r\n get page() { return this._state.page; }\r\n get pageSize() { return this._state.pageSize; }\r\n get searchTerm() { return this._state.searchTerm; }\r\n\r\n set page(page: number) { this._set({ page }); }\r\n set pageSize(pageSize: number) { this._set({ pageSize }); }\r\n set searchTerm(searchTerm: any) { this._set({ searchTerm }); }\r\n set sortColumn(sortColumn: SortColumn) { this._set({ sortColumn }); }\r\n set sortDirection(sortDirection: SortDirection) { this._set({ sortDirection }); }\r\n\r\n get data$() {\r\n return this._data$.asObservable();\r\n }\r\n get allData$() {\r\n return this._allData$.asObservable();\r\n }\r\n \r\n\r\n getById(id,brandId) {\r\n return this.http.get(`api/location/${id}/brand/${brandId}`);\r\n }\r\n getAllLocations(brandId) {\r\n return this.http.get(`api/location/all/${brandId}`);\r\n }\r\n getAllData(brandId) {\r\n\r\n const url = `api/location/all/${brandId}`;\r\n console.log(url);\r\n tap(() => this._loading$.next(true)),\r\n this.http.get(url).subscribe(res => {\r\n this.locations = res;\r\n \r\n this._data$.next(this.locations);\r\n this._allData$.next(this.locations);\r\n\r\n this._search$.pipe(\r\n switchMap(() => this._search()),\r\n tap(() => this._loading$.next(false))\r\n ).subscribe(result => {\r\n this._data$.next(result.data);\r\n this._total$.next(result.total);\r\n });\r\n\r\n this._search$.next();\r\n });\r\n }\r\n private _set(patch: Partial) {\r\n Object.assign(this._state, patch);\r\n this._search$.next();\r\n }\r\n\r\n private _search(): Observable {\r\n const { sortColumn, sortDirection, pageSize, page, searchTerm } = this._state;\r\n\r\n // 1. sort\r\n let sortedData = sort(this.locations, sortColumn, sortDirection);\r\n\r\n //// 2. filter\r\n sortedData = sortedData.filter(data => matches(data, searchTerm));\r\n const total = sortedData.length;\r\n\r\n // 3. paginate\r\n const data = sortedData.slice((page - 1) * pageSize, (page - 1) * pageSize + pageSize);\r\n return of({ data, total });\r\n }\r\n\r\n \r\n clear() {\r\n // clear by calling subject.next() without parameters\r\n this._search$.next();\r\n this._data$.next(null);\r\n this._allData$.next(null);\r\n this._total$.next(null);\r\n this._loading$.next(null);\r\n this._state = {\r\n page: 1,\r\n pageSize: 10,\r\n searchTerm: '',\r\n sortColumn: '',\r\n sortDirection: ''\r\n };\r\n }\r\n insert(data) {\r\n \r\n return this.http.post(`api/location/insert`, data)\r\n .pipe(map(res => {\r\n \r\n console.log(res);\r\n return res;\r\n }));\r\n }\r\n\r\n update(updateData) {\r\n \r\n return this.http.post(`api/location/update`, updateData)\r\n .pipe(map(res => {\r\n console.log(res);\r\n return res;\r\n }));\r\n }\r\n \r\n delete(updateData) {\r\n \r\n return this.http.post(`api/location/delete`, updateData);\r\n }\r\n\r\n}\r\n","import { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { BehaviorSubject, Observable, of, Subject } from 'rxjs';\r\nimport { User } from '../_models/User';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class LoginService {\r\n private currentUserSubject: BehaviorSubject;\r\n public currentUser: Observable;\r\n\r\n constructor(private http: HttpClient) {\r\n this.currentUserSubject = new BehaviorSubject(JSON.parse(sessionStorage.getItem('_autheticatedUser')));\r\n this.currentUser = this.currentUserSubject.asObservable();\r\n }\r\n\r\n public get currentUserValue(): User {\r\n return this.currentUserSubject.value;\r\n }\r\n\r\n login(username, password) {\r\n\r\n return this.http.get(`api/login/authenticate/${username}/${password}`);\r\n \r\n }\r\n getAllLocations(brandId) {\r\n return this.http.get(`api/location/all/${brandId}`);\r\n }\r\n}\r\n","import { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { BehaviorSubject, Observable, of, Subject } from 'rxjs';\r\nimport { switchMap, tap, map } from 'rxjs/operators';\r\nimport { SortColumn, SortDirection } from '../_directives/sortable.directive';\r\nimport { State } from '../_models/State';\r\nimport { Modifiers } from '../_models/Modifiers';\r\n\r\ninterface SearchModifiersResult {\r\n data: Modifiers[];\r\n total: number;\r\n}\r\nconst compare = (v1: string, v2: string) => v1 < v2 ? -1 : v1 > v2 ? 1 : 0;\r\n\r\nfunction sort(data: Modifiers[], column: SortColumn, direction: string): Modifiers[] {\r\n if (direction === '' || column === '') {\r\n return data;\r\n } else {\r\n return [...data].sort((a, b) => {\r\n const res = compare(`${a[column]}`, `${b[column]}`);\r\n return direction === 'asc' ? res : -res;\r\n });\r\n }\r\n}\r\n\r\nfunction matches(data: Modifiers, term: string) {\r\n debugger\r\n return data.name.toLowerCase().includes(term.toLowerCase())\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class ModifiersService {\r\n\r\n constructor(private http: HttpClient) {\r\n }\r\n\r\n private _loading$ = new BehaviorSubject(true);\r\n private _search$ = new Subject();\r\n private _allData$ = new BehaviorSubject([]);\r\n private _data$ = new BehaviorSubject([]);\r\n private _total$ = new BehaviorSubject(0);\r\n public modifiers: Modifiers[];\r\n private _state: State = {\r\n page: 1,\r\n pageSize: 10,\r\n searchTerm: '',\r\n sortColumn: '',\r\n sortDirection: ''\r\n };\r\n\r\n get total$() { return this._total$.asObservable(); }\r\n get loading$() { return this._loading$.asObservable(); }\r\n get page() { return this._state.page; }\r\n get pageSize() { return this._state.pageSize; }\r\n get searchTerm() { return this._state.searchTerm; }\r\n\r\n set page(page: number) { this._set({ page }); }\r\n set pageSize(pageSize: number) { this._set({ pageSize }); }\r\n set searchTerm(searchTerm: any) { this._set({ searchTerm }); }\r\n set sortColumn(sortColumn: SortColumn) { this._set({ sortColumn }); }\r\n set sortDirection(sortDirection: SortDirection) { this._set({ sortDirection }); }\r\n\r\n get data$() {\r\n return this._data$.asObservable();\r\n }\r\n get allData$() {\r\n return this._allData$.asObservable();\r\n }\r\n \r\n\r\n getById(id,brandId) {\r\n return this.http.get(`api/modifier/${id}/brand/${brandId}`);\r\n }\r\n getAllData(brandId) {\r\n\r\n const url = `api/modifier/all/${brandId}`;\r\n console.log(url);\r\n tap(() => this._loading$.next(true)),\r\n this.http.get(url).subscribe(res => {\r\n this.modifiers = res;\r\n debugger\r\n this._data$.next(this.modifiers);\r\n this._allData$.next(this.modifiers);\r\n\r\n this._search$.pipe(\r\n switchMap(() => this._search()),\r\n tap(() => this._loading$.next(false))\r\n ).subscribe(result => {\r\n this._data$.next(result.data);\r\n this._total$.next(result.total);\r\n });\r\n\r\n this._search$.next();\r\n });\r\n }\r\n private _set(patch: Partial) {\r\n Object.assign(this._state, patch);\r\n this._search$.next();\r\n }\r\n\r\n private _search(): Observable {\r\n const { sortColumn, sortDirection, pageSize, page, searchTerm } = this._state;\r\n\r\n // 1. sort\r\n let sortedData = sort(this.modifiers, sortColumn, sortDirection);\r\n\r\n //// 2. filter\r\n sortedData = sortedData.filter(data => matches(data, searchTerm));\r\n const total = sortedData.length;\r\n\r\n // 3. paginate\r\n const data = sortedData.slice((page - 1) * pageSize, (page - 1) * pageSize + pageSize);\r\n return of({ data, total });\r\n }\r\n\r\n \r\n clear() {\r\n // clear by calling subject.next() without parameters\r\n this._search$.next();\r\n this._data$.next(null);\r\n this._allData$.next(null);\r\n this._total$.next(null);\r\n this._loading$.next(null);\r\n this._state = {\r\n page: 1,\r\n pageSize: 10,\r\n searchTerm: '',\r\n sortColumn: '',\r\n sortDirection: ''\r\n };\r\n }\r\n insert(data) {\r\n return this.http.post(`api/modifier/insert`, data)\r\n .pipe(map(res => { \r\n console.log(res);\r\n return res;\r\n }));\r\n }\r\n\r\n update(updateData) {\r\n return this.http.post(`api/modifier/update`, updateData)\r\n .pipe(map(res => {\r\n console.log(res);\r\n return res;\r\n }));\r\n }\r\n delete(updateData) {\r\n return this.http.post(`api/modifier/delete`, updateData);\r\n }\r\n \r\n\r\n}\r\n","import { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { BehaviorSubject, Observable, of, Subject } from 'rxjs';\r\nimport { switchMap, tap, map } from 'rxjs/operators';\r\nimport { SortColumn, SortDirection } from '../_directives/sortable.directive';\r\nimport { State } from '../_models/State';\r\nimport { Notifications } from '../_models/Notifications';\r\nimport { Items } from '../_models/Items';\r\n\r\n\r\ninterface SearchNotificationsResult {\r\n data: Notifications[];\r\n total: number;\r\n}\r\nconst compare = (v1: string, v2: string) => v1 < v2 ? -1 : v1 > v2 ? 1 : 0;\r\n\r\nfunction sort(data: Notifications[], column: SortColumn, direction: string): Notifications[] {\r\n if (direction === '' || column === '') {\r\n return data;\r\n } else {\r\n return [...data].sort((a, b) => {\r\n const res = compare(`${a[column]}`, `${b[column]}`);\r\n return direction === 'asc' ? res : -res;\r\n });\r\n }\r\n}\r\n\r\nfunction matches(data: Notifications, term: string) {\r\n \r\n return data.title.toLowerCase().includes(term.toLowerCase())\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class NotificationsService {\r\n\r\n constructor(private http: HttpClient) {\r\n }\r\n\r\n private _loading$ = new BehaviorSubject(true);\r\n private _search$ = new Subject();\r\n private _allData$ = new BehaviorSubject([]);\r\n private _data$ = new BehaviorSubject([]);\r\n private _total$ = new BehaviorSubject(0);\r\n public notificationss: Notifications[];\r\n private _state: State = {\r\n page: 1,\r\n pageSize: 10,\r\n searchTerm: '',\r\n sortColumn: '',\r\n sortDirection: ''\r\n };\r\n\r\n get total$() { return this._total$.asObservable(); }\r\n get loading$() { return this._loading$.asObservable(); }\r\n get page() { return this._state.page; }\r\n get pageSize() { return this._state.pageSize; }\r\n get searchTerm() { return this._state.searchTerm; }\r\n\r\n set page(page: number) { this._set({ page }); }\r\n set pageSize(pageSize: number) { this._set({ pageSize }); }\r\n set searchTerm(searchTerm: any) { this._set({ searchTerm }); }\r\n set sortColumn(sortColumn: SortColumn) { this._set({ sortColumn }); }\r\n set sortDirection(sortDirection: SortDirection) { this._set({ sortDirection }); }\r\n\r\n get data$() {\r\n return this._data$.asObservable();\r\n }\r\n get allData$() {\r\n return this._allData$.asObservable();\r\n }\r\n loadItems() {\r\n return this.http.get( `api/item/all`);\r\n }\r\n\r\n getById(id) {\r\n return this.http.get(`api/notifications/${id}`);\r\n }\r\n getAllData() {\r\n\r\n const url = `api/notifications/all`;\r\n console.log(url);\r\n tap(() => this._loading$.next(true)),\r\n this.http.get(url).subscribe(res => {\r\n this.notificationss = res;\r\n \r\n this._data$.next(this.notificationss);\r\n this._allData$.next(this.notificationss);\r\n\r\n this._search$.pipe(\r\n switchMap(() => this._search()),\r\n tap(() => this._loading$.next(false))\r\n ).subscribe(result => {\r\n this._data$.next(result.data);\r\n this._total$.next(result.total);\r\n });\r\n\r\n this._search$.next();\r\n });\r\n }\r\n private _set(patch: Partial) {\r\n Object.assign(this._state, patch);\r\n this._search$.next();\r\n }\r\n\r\n private _search(): Observable {\r\n const { sortColumn, sortDirection, pageSize, page, searchTerm } = this._state;\r\n\r\n // 1. sort\r\n let sortedData = sort(this.notificationss, sortColumn, sortDirection);\r\n\r\n //// 2. filter\r\n sortedData = sortedData.filter(data => matches(data, searchTerm));\r\n const total = sortedData.length;\r\n\r\n // 3. paginate\r\n const data = sortedData.slice((page - 1) * pageSize, (page - 1) * pageSize + pageSize);\r\n return of({ data, total });\r\n }\r\n\r\n \r\n clear() {\r\n // clear by calling subject.next() without parameters\r\n this._search$.next();\r\n this._data$.next(null);\r\n this._allData$.next(null);\r\n this._total$.next(null);\r\n this._loading$.next(null);\r\n this._state = {\r\n page: 1,\r\n pageSize: 10,\r\n searchTerm: '',\r\n sortColumn: '',\r\n sortDirection: ''\r\n };\r\n }\r\n insert(data) {\r\n \r\n return this.http.post(`api/notifications/insert`, data)\r\n .pipe(map(res => {\r\n \r\n console.log(res);\r\n return res;\r\n }));\r\n }\r\n\r\n update(updateData) {\r\n return this.http.post(`api/notifications/update`, updateData)\r\n .pipe(map(res => {\r\n console.log(res);\r\n return res;\r\n }));\r\n }\r\n delete(updateData) {\r\n return this.http.post(`api/notifications/delete`, updateData);\r\n }\r\n}\r\n","import { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { BehaviorSubject, Observable, of, Subject } from 'rxjs';\r\nimport { switchMap, tap, map } from 'rxjs/operators';\r\nimport { SortColumn, SortDirection } from '../_directives/sortable.directive';\r\nimport { State } from '../_models/State';\r\nimport { Offers } from '../_models/Offers';\r\nimport { Items } from '../_models/Items';\r\n\r\n\r\ninterface SearchOffersResult {\r\n data: Offers[];\r\n total: number;\r\n}\r\nconst compare = (v1: string, v2: string) => v1 < v2 ? -1 : v1 > v2 ? 1 : 0;\r\n\r\nfunction sort(data: Offers[], column: SortColumn, direction: string): Offers[] {\r\n if (direction === '' || column === '') {\r\n return data;\r\n } else {\r\n return [...data].sort((a, b) => {\r\n const res = compare(`${a[column]}`, `${b[column]}`);\r\n return direction === 'asc' ? res : -res;\r\n });\r\n }\r\n}\r\n\r\nfunction matches(data: Offers, term: string) {\r\n \r\n return data.title.toLowerCase().includes(term.toLowerCase())\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class OffersService {\r\n\r\n constructor(private http: HttpClient) {\r\n }\r\n\r\n private _loading$ = new BehaviorSubject(true);\r\n private _search$ = new Subject();\r\n private _allData$ = new BehaviorSubject([]);\r\n private _data$ = new BehaviorSubject([]);\r\n private _total$ = new BehaviorSubject(0);\r\n public offerss: Offers[];\r\n private _state: State = {\r\n page: 1,\r\n pageSize: 10,\r\n searchTerm: '',\r\n sortColumn: '',\r\n sortDirection: ''\r\n };\r\n\r\n get total$() { return this._total$.asObservable(); }\r\n get loading$() { return this._loading$.asObservable(); }\r\n get page() { return this._state.page; }\r\n get pageSize() { return this._state.pageSize; }\r\n get searchTerm() { return this._state.searchTerm; }\r\n\r\n set page(page: number) { this._set({ page }); }\r\n set pageSize(pageSize: number) { this._set({ pageSize }); }\r\n set searchTerm(searchTerm: any) { this._set({ searchTerm }); }\r\n set sortColumn(sortColumn: SortColumn) { this._set({ sortColumn }); }\r\n set sortDirection(sortDirection: SortDirection) { this._set({ sortDirection }); }\r\n\r\n get data$() {\r\n return this._data$.asObservable();\r\n }\r\n get allData$() {\r\n return this._allData$.asObservable();\r\n }\r\n loadItems() {\r\n return this.http.get( `api/item/all`);\r\n }\r\n\r\n getById(id) {\r\n return this.http.get(`api/offers/${id}`);\r\n }\r\n getAllData() {\r\n\r\n const url = `api/offers/all`;\r\n console.log(url);\r\n tap(() => this._loading$.next(true)),\r\n this.http.get(url).subscribe(res => {\r\n this.offerss = res;\r\n \r\n this._data$.next(this.offerss);\r\n this._allData$.next(this.offerss);\r\n\r\n this._search$.pipe(\r\n switchMap(() => this._search()),\r\n tap(() => this._loading$.next(false))\r\n ).subscribe(result => {\r\n this._data$.next(result.data);\r\n this._total$.next(result.total);\r\n });\r\n\r\n this._search$.next();\r\n });\r\n }\r\n private _set(patch: Partial) {\r\n Object.assign(this._state, patch);\r\n this._search$.next();\r\n }\r\n\r\n private _search(): Observable {\r\n const { sortColumn, sortDirection, pageSize, page, searchTerm } = this._state;\r\n\r\n // 1. sort\r\n let sortedData = sort(this.offerss, sortColumn, sortDirection);\r\n\r\n //// 2. filter\r\n sortedData = sortedData.filter(data => matches(data, searchTerm));\r\n const total = sortedData.length;\r\n\r\n // 3. paginate\r\n const data = sortedData.slice((page - 1) * pageSize, (page - 1) * pageSize + pageSize);\r\n return of({ data, total });\r\n }\r\n\r\n \r\n clear() {\r\n // clear by calling subject.next() without parameters\r\n this._search$.next();\r\n this._data$.next(null);\r\n this._allData$.next(null);\r\n this._total$.next(null);\r\n this._loading$.next(null);\r\n this._state = {\r\n page: 1,\r\n pageSize: 10,\r\n searchTerm: '',\r\n sortColumn: '',\r\n sortDirection: ''\r\n };\r\n }\r\n insert(data) {\r\n \r\n return this.http.post(`api/offers/insert`, data)\r\n .pipe(map(res => {\r\n \r\n console.log(res);\r\n return res;\r\n }));\r\n }\r\n\r\n update(updateData) {\r\n return this.http.post(`api/offers/update`, updateData)\r\n .pipe(map(res => {\r\n console.log(res);\r\n return res;\r\n }));\r\n }\r\n delete(updateData) {\r\n return this.http.post(`api/offers/delete`, updateData);\r\n }\r\n}\r\n","import { Injectable} from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { BehaviorSubject, Observable, of, Subject } from 'rxjs';\r\nimport { switchMap, tap, map } from 'rxjs/operators';\r\nimport { SortColumn, SortDirection } from '../_directives/sortable.directive';\r\nimport { State } from '../_models/State';\r\nimport { Orders } from '../_models/Orders';\r\nimport { Category } from '../_models/Cateogry';\r\nimport { Subcategory } from '../_models/Subcategory';\r\nimport { Items } from '../_models/Items';\r\nimport { Gift } from '../_models/Gift';\r\n\r\n\r\ninterface SearchOrdersResult {\r\n data: Orders[];\r\n total: number;\r\n}\r\nconst compare = (v1: string, v2: string) => v1 < v2 ? -1 : v1 > v2 ? 1 : 0;\r\n\r\nfunction sort(data: Orders[], column: SortColumn, direction: string): Orders[] {\r\n if (direction === '' || column === '') {\r\n return data;\r\n } else {\r\n return [...data].sort((a, b) => {\r\n const res = compare(`${a[column]}`, `${b[column]}`);\r\n return direction === 'asc' ? res : -res;\r\n });\r\n }\r\n}\r\n\r\nfunction matches(data: Orders, term: string) {\r\n \r\n return data.orderNo.toLowerCase().includes(term.toLowerCase()) \r\n || data.senderContact.toLowerCase().includes(term.toLowerCase())\r\n || data.senderName.toLowerCase().includes(term.toLowerCase())\r\n || data.customerName.toLowerCase().includes(term.toLowerCase())\r\n \r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class OrdersService {\r\n\r\n constructor(private http: HttpClient) {\r\n }\r\n loadLocations(brandId) {\r\n return this.http.get(`api/location/all/${brandId}`);\r\n }\r\n \r\n loadItems() {\r\n return this.http.get( `api/item/all`);\r\n }\r\n loadGifts() {\r\n return this.http.get( `api/item/gifts/all`);\r\n }\r\n loadSubCategories() {\r\n return this.http.get( `api/subcategory/all`);\r\n }\r\n private _loading$ = new BehaviorSubject(true);\r\n private _search$ = new Subject();\r\n private _allData$ = new BehaviorSubject([]);\r\n private _data$ = new BehaviorSubject([]);\r\n private _total$ = new BehaviorSubject(0);\r\n public orders: Orders[];\r\n private _state: State = {\r\n page: 1,\r\n pageSize: 40,\r\n searchTerm: '',\r\n sortColumn: '',\r\n sortDirection: ''\r\n };\r\n\r\n get total$() { return this._total$.asObservable(); }\r\n get loading$() { return this._loading$.asObservable(); }\r\n get page() { return this._state.page; }\r\n get pageSize() { return this._state.pageSize; }\r\n get searchTerm() { return this._state.searchTerm; }\r\n\r\n set page(page: number) { this._set({ page }); }\r\n set pageSize(pageSize: number) { this._set({ pageSize }); }\r\n set searchTerm(searchTerm: any) { this._set({ searchTerm }); }\r\n set sortColumn(sortColumn: SortColumn) { this._set({ sortColumn }); }\r\n set sortDirection(sortDirection: SortDirection) { this._set({ sortDirection }); }\r\n\r\n get data$() {\r\n return this._data$.asObservable();\r\n }\r\n \r\n get allData$() {\r\n return this._allData$.asObservable();\r\n } \r\n\r\n getById(id) {\r\n return this.http.get(`api/orders/${id}`);\r\n }\r\n\r\n getAllData(fromDate,toDate) {\r\n\r\n const url = `api/orders/all/0/${fromDate}/${toDate}`;\r\n console.log(url);\r\n tap(() => this._loading$.next(true)),\r\n this.http.get(url).subscribe(res => {\r\n this.orders = res;\r\n \r\n this._data$.next(this.orders);\r\n this._allData$.next(this.orders);\r\n\r\n this._search$.pipe(\r\n switchMap(() => this._search()),\r\n tap(() => this._loading$.next(false))\r\n ).subscribe(result => {\r\n this._data$.next(result.data);\r\n this._total$.next(result.total);\r\n });\r\n\r\n this._search$.next();\r\n });\r\n }\r\n\r\n private _set(patch: Partial) {\r\n Object.assign(this._state, patch);\r\n this._search$.next();\r\n }\r\n\r\n private _search(): Observable {\r\n const { sortColumn, sortDirection, pageSize, page, searchTerm } = this._state;\r\n\r\n // 1. sort\r\n let sortedData = sort(this.orders, sortColumn, sortDirection);\r\n\r\n //// 2. filter\r\n sortedData = sortedData.filter(data => matches(data, searchTerm));\r\n const total = sortedData.length;\r\n\r\n // 3. paginate\r\n const data = sortedData.slice((page - 1) * pageSize, (page - 1) * pageSize + pageSize);\r\n return of({ data, total });\r\n }\r\n\r\n clear() {\r\n // clear by calling subject.next() without parameters\r\n this._search$.next();\r\n this._data$.next(null);\r\n this._allData$.next(null);\r\n this._total$.next(null);\r\n this._loading$.next(null);\r\n this._state = {\r\n page: 1,\r\n pageSize: 40,\r\n searchTerm: '',\r\n sortColumn: '',\r\n sortDirection: ''\r\n };\r\n }\r\n\r\n update(updateData) {\r\n return this.http.post(`api/orders/update`, updateData)\r\n .pipe(map(res => {\r\n console.log(res);\r\n return res;\r\n }));\r\n }\r\n \r\n updateOrder(updateData) {\r\n return this.http.post(`api/orders/edit`, updateData)\r\n .pipe(map(res => {\r\n console.log(res);\r\n return res;\r\n }));\r\n }\r\n\r\n}\r\n","import { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { SummaryReport, SalesdetailReport, SalescategorywiseReport, SalescustomerwiseReport, SalesitemwiseReport } from '../_models/Report';\r\nimport { Observable } from 'rxjs';\r\n;\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class ReportService {\r\n\r\n constructor(private http: HttpClient) {\r\n }\r\n\r\n\r\n SalesSummaryRpt(fromDate,toDate) {\r\n return this.http.get(`api/report/summary/${fromDate}/${toDate}`);\r\n }\r\n\r\n SalesDetailRpt(fromDate,toDate) {\r\n return this.http.get(`api/report/salesdetail/${fromDate}/${toDate}`);\r\n }\r\n\r\n SalesItemwiseRpt(fromDate,toDate) {\r\n return this.http.get(`api/report/salesitemwise/${fromDate}/${toDate}`);\r\n }\r\n\r\n SalesCategorywiseRpt(fromDate,toDate) {\r\n return this.http.get(`api/report/salescategorywise/${fromDate}/${toDate}`);\r\n }\r\n\r\n SalesCustomerwiseRpt(customerID,fromDate,toDate) {\r\n return this.http.get(`api/report/salescustomerwise/${customerID}/${fromDate}/${toDate}`);\r\n }\r\n\r\n SalesUserwiseRpt(fromDate,toDate) {\r\n return this.http.get(`api/report/salesuserwise/${fromDate}/${toDate}`);\r\n }\r\n \r\n loadLocations(brandId) {\r\n return this.http.get(`api/location/all/${brandId}`);\r\n }\r\n\r\n}\r\n","import { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { BehaviorSubject, Observable, of, Subject } from 'rxjs';\r\nimport { switchMap, tap, map } from 'rxjs/operators';\r\nimport { SortColumn, SortDirection } from '../_directives/sortable.directive';\r\nimport { State } from '../_models/State';\r\nimport { Reviews } from '../_models/Reviews';\r\nimport { Items } from '../_models/Items';\r\n\r\n\r\ninterface SearchReviewsResult {\r\n data: Reviews[];\r\n total: number;\r\n}\r\nconst compare = (v1: string, v2: string) => v1 < v2 ? -1 : v1 > v2 ? 1 : 0;\r\n\r\nfunction sort(data: Reviews[], column: SortColumn, direction: string): Reviews[] {\r\n if (direction === '' || column === '') {\r\n return data;\r\n } else {\r\n return [...data].sort((a, b) => {\r\n const res = compare(`${a[column]}`, `${b[column]}`);\r\n return direction === 'asc' ? res : -res;\r\n });\r\n }\r\n}\r\n\r\nfunction matches(data: Reviews, term: string) {\r\n \r\n return data.name.toLowerCase().includes(term.toLowerCase())\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class ReviewsService {\r\n\r\n constructor(private http: HttpClient) {\r\n }\r\n\r\n private _loading$ = new BehaviorSubject(true);\r\n private _search$ = new Subject();\r\n private _allData$ = new BehaviorSubject([]);\r\n private _data$ = new BehaviorSubject([]);\r\n private _total$ = new BehaviorSubject(0);\r\n public reviewss: Reviews[];\r\n private _state: State = {\r\n page: 1,\r\n pageSize: 10,\r\n searchTerm: '',\r\n sortColumn: '',\r\n sortDirection: ''\r\n };\r\n\r\n get total$() { return this._total$.asObservable(); }\r\n get loading$() { return this._loading$.asObservable(); }\r\n get page() { return this._state.page; }\r\n get pageSize() { return this._state.pageSize; }\r\n get searchTerm() { return this._state.searchTerm; }\r\n\r\n set page(page: number) { this._set({ page }); }\r\n set pageSize(pageSize: number) { this._set({ pageSize }); }\r\n set searchTerm(searchTerm: any) { this._set({ searchTerm }); }\r\n set sortColumn(sortColumn: SortColumn) { this._set({ sortColumn }); }\r\n set sortDirection(sortDirection: SortDirection) { this._set({ sortDirection }); }\r\n\r\n get data$() {\r\n return this._data$.asObservable();\r\n }\r\n get allData$() {\r\n return this._allData$.asObservable();\r\n }\r\n loadItems() {\r\n return this.http.get( `api/item/all`);\r\n }\r\n\r\n getById(id) {\r\n return this.http.get(`api/reviews/${id}`);\r\n }\r\n getAllData() {\r\n\r\n const url = `api/item/reviews/all`;\r\n console.log(url);\r\n tap(() => this._loading$.next(true)),\r\n this.http.get(url).subscribe(res => {\r\n this.reviewss = res;\r\n \r\n this._data$.next(this.reviewss);\r\n this._allData$.next(this.reviewss);\r\n\r\n this._search$.pipe(\r\n switchMap(() => this._search()),\r\n tap(() => this._loading$.next(false))\r\n ).subscribe(result => {\r\n this._data$.next(result.data);\r\n this._total$.next(result.total);\r\n });\r\n\r\n this._search$.next();\r\n });\r\n }\r\n private _set(patch: Partial) {\r\n Object.assign(this._state, patch);\r\n this._search$.next();\r\n }\r\n\r\n private _search(): Observable {\r\n const { sortColumn, sortDirection, pageSize, page, searchTerm } = this._state;\r\n\r\n // 1. sort\r\n let sortedData = sort(this.reviewss, sortColumn, sortDirection);\r\n\r\n //// 2. filter\r\n sortedData = sortedData.filter(data => matches(data, searchTerm));\r\n const total = sortedData.length;\r\n\r\n // 3. paginate\r\n const data = sortedData.slice((page - 1) * pageSize, (page - 1) * pageSize + pageSize);\r\n return of({ data, total });\r\n }\r\n\r\n \r\n clear() {\r\n // clear by calling subject.next() without parameters\r\n this._search$.next();\r\n this._data$.next(null);\r\n this._allData$.next(null);\r\n this._total$.next(null);\r\n this._loading$.next(null);\r\n this._state = {\r\n page: 1,\r\n pageSize: 10,\r\n searchTerm: '',\r\n sortColumn: '',\r\n sortDirection: ''\r\n };\r\n }\r\n delete(updateData) {\r\n return this.http.post(`api/item/reviews/delete`, updateData);\r\n }\r\n}\r\n","import { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { BehaviorSubject, Observable, of, Subject } from 'rxjs';\r\nimport { switchMap, tap, map } from 'rxjs/operators';\r\nimport { SortColumn, SortDirection } from '../_directives/sortable.directive';\r\nimport { State } from '../_models/State';\r\nimport { DynamicCss, Settings } from '../_models/Settings';\r\n\r\n\r\ninterface SearchGeneralsettingsResult {\r\n data: Settings[];\r\n total: number;\r\n}\r\nconst compare = (v1: string, v2: string) => v1 < v2 ? -1 : v1 > v2 ? 1 : 0;\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class SettingService {\r\n\r\n constructor(private http: HttpClient) {\r\n }\r\n\r\n private _loading$ = new BehaviorSubject(true);\r\n private _search$ = new Subject();\r\n private _allData$ = new BehaviorSubject([]);\r\n private _data$ = new BehaviorSubject([]);\r\n private _total$ = new BehaviorSubject(0);\r\n public settings: Settings[];\r\n private _state: State = {\r\n page: 1,\r\n pageSize: 10,\r\n searchTerm: '',\r\n sortColumn: '',\r\n sortDirection: ''\r\n };\r\n\r\n get total$() { return this._total$.asObservable(); }\r\n get loading$() { return this._loading$.asObservable(); }\r\n get page() { return this._state.page; }\r\n get pageSize() { return this._state.pageSize; }\r\n get searchTerm() { return this._state.searchTerm; }\r\n\r\n set page(page: number) { this._set({ page }); }\r\n set pageSize(pageSize: number) { this._set({ pageSize }); }\r\n set searchTerm(searchTerm: any) { this._set({ searchTerm }); }\r\n set sortColumn(sortColumn: SortColumn) { this._set({ sortColumn }); }\r\n set sortDirection(sortDirection: SortDirection) { this._set({ sortDirection }); }\r\n\r\n get data$() {\r\n return this._data$.asObservable();\r\n }\r\n get allData$() {\r\n return this._allData$.asObservable();\r\n }\r\n \r\n\r\n getById(id) {\r\n return this.http.get(`api/settings/get/${id}`);\r\n }\r\n\r\n getCssById(id) {\r\n return this.http.get(`api/settings/getcss/${id}`);\r\n }\r\n \r\n private _set(patch: Partial) {\r\n Object.assign(this._state, patch);\r\n this._search$.next();\r\n }\r\n\r\n \r\n clear() {\r\n // clear by calling subject.next() without parameters\r\n this._search$.next();\r\n this._data$.next(null);\r\n this._allData$.next(null);\r\n this._total$.next(null);\r\n this._loading$.next(null);\r\n this._state = {\r\n page: 1,\r\n pageSize: 10,\r\n searchTerm: '',\r\n sortColumn: '',\r\n sortDirection: ''\r\n };\r\n }\r\n update(updateData) {\r\n return this.http.post(`api/settings/update`, updateData)\r\n .pipe(map(res => {\r\n console.log(res);\r\n return res;\r\n }));\r\n }\r\n updateCss(updateData) {\r\n return this.http.post(`api/settings/updateCss`, updateData)\r\n .pipe(map(res => {\r\n console.log(res);\r\n return res;\r\n }));\r\n }\r\n}\r\n","import { Injectable, Inject } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\nimport { BehaviorSubject, Observable, of, Subject } from 'rxjs';\r\nimport { switchMap, tap, map } from 'rxjs/operators';\r\nimport { SortColumn, SortDirection } from '../_directives/sortable.directive';\r\nimport { State } from '../_models/State';\r\nimport { Subcategory } from '../_models/Subcategory';\r\nimport { Category } from '../_models/Cateogry';\r\n\r\ninterface SearchSubcategoryResult {\r\n data: Subcategory[];\r\n total: number;\r\n}\r\nconst compare = (v1: string, v2: string) => v1 < v2 ? -1 : v1 > v2 ? 1 : 0;\r\n\r\nfunction sort(data: Subcategory[], column: SortColumn, direction: string): Subcategory[] {\r\n if (direction === '' || column === '') {\r\n return data;\r\n } else {\r\n return [...data].sort((a, b) => {\r\n const res = compare(`${a[column]}`, `${b[column]}`);\r\n return direction === 'asc' ? res : -res;\r\n });\r\n }\r\n}\r\n\r\nfunction matches(data: Subcategory, term: string) {\r\n return data.title.toLowerCase().includes(term.toLowerCase())\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class SubcategoryService {\r\n\r\n constructor(private http: HttpClient) {\r\n }\r\n\r\n private _loading$ = new BehaviorSubject(true);\r\n private _search$ = new Subject();\r\n private _allData$ = new BehaviorSubject([]);\r\n private _data$ = new BehaviorSubject([]);\r\n private _total$ = new BehaviorSubject(0);\r\n public categories: Subcategory[];\r\n private _state: State = {\r\n page: 1,\r\n pageSize: 10,\r\n searchTerm: '',\r\n sortColumn: '',\r\n sortDirection: ''\r\n };\r\n\r\n get total$() { return this._total$.asObservable(); }\r\n get loading$() { return this._loading$.asObservable(); }\r\n get page() { return this._state.page; }\r\n get pageSize() { return this._state.pageSize; }\r\n get searchTerm() { return this._state.searchTerm; }\r\n\r\n set page(page: number) { this._set({ page }); }\r\n set pageSize(pageSize: number) { this._set({ pageSize }); }\r\n set searchTerm(searchTerm: any) { this._set({ searchTerm }); }\r\n set sortColumn(sortColumn: SortColumn) { this._set({ sortColumn }); }\r\n set sortDirection(sortDirection: SortDirection) { this._set({ sortDirection }); }\r\n\r\n get data$() {\r\n return this._data$.asObservable();\r\n }\r\n get allData$() {\r\n return this._allData$.asObservable();\r\n }\r\n \r\n loadCategories() {\r\n return this.http.get( `api/category/all`);\r\n }\r\n getById(id) {\r\n return this.http.get(`api/subcategory/${id}`);\r\n }\r\n\r\n \r\n getAllData() {\r\n\r\n const url = `api/subcategory/all`;\r\n console.log(url);\r\n tap(() => this._loading$.next(true)),\r\n this.http.get(url).subscribe(res => {\r\n this.categories = res;\r\n \r\n this._data$.next(this.categories);\r\n this._allData$.next(this.categories);\r\n\r\n this._search$.pipe(\r\n switchMap(() => this._search()),\r\n tap(() => this._loading$.next(false))\r\n ).subscribe(result => {\r\n this._data$.next(result.data);\r\n this._total$.next(result.total);\r\n });\r\n\r\n this._search$.next();\r\n });\r\n }\r\n private _set(patch: Partial) {\r\n Object.assign(this._state, patch);\r\n this._search$.next();\r\n }\r\n\r\n private _search(): Observable {\r\n const { sortColumn, sortDirection, pageSize, page, searchTerm } = this._state;\r\n\r\n // 1. sort\r\n let sortedData = sort(this.categories, sortColumn, sortDirection);\r\n\r\n //// 2. filter\r\n sortedData = sortedData.filter(data => matches(data, searchTerm));\r\n const total = sortedData.length;\r\n\r\n // 3. paginate\r\n const data = sortedData.slice((page - 1) * pageSize, (page - 1) * pageSize + pageSize);\r\n return of({ data, total });\r\n }\r\n\r\n \r\n clear() {\r\n // clear by calling subject.next() without parameters\r\n this._search$.next();\r\n this._data$.next(null);\r\n this._allData$.next(null);\r\n this._total$.next(null);\r\n this._loading$.next(null);\r\n this._state = {\r\n page: 1,\r\n pageSize: 10,\r\n searchTerm: '',\r\n sortColumn: '',\r\n sortDirection: ''\r\n };\r\n }\r\n insert(data) {\r\n return this.http.post(`api/subcategory/insert`, data)\r\n .pipe(map(res => {\r\n \r\n console.log(res);\r\n return res;\r\n }));\r\n }\r\n\r\n update(updateData) {\r\n return this.http.post(`api/subcategory/update`, updateData)\r\n .pipe(map(res => {\r\n console.log(res);\r\n return res;\r\n }));\r\n }\r\n \r\n delete(updateData) {\r\n return this.http.post(`api/subcategory/delete`, updateData);\r\n }\r\n \r\n // delete(updateData) {\r\n // return this.http.put(`api/subcategory/delete`, updateData)\r\n // .pipe(map(res => {\r\n // console.log(res);\r\n // return res;\r\n // }));\r\n // return this.http.delete(`api/subcategory/delete/${id}`);\r\n // }\r\n\r\n}\r\n","import { ToastrService } from 'ngx-toastr';\r\nimport { Injectable } from '@angular/core';\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n export class ToastService {\r\n\r\n constructor(public toastr: ToastrService) { }\r\n\r\n public showSuccess(_title, _message) {\r\n this.toastr.success(_title, _message, {\r\n timeOut: 3000,\r\n });\r\n }\r\n public showError(_title, _message) {\r\n this.toastr.error(_title, _message, {\r\n timeOut: 3000,\r\n });\r\n }\r\n public showWarning(_title, _message) {\r\n this.toastr.warning(_title, _message, {\r\n timeOut: 3000,\r\n });\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2FkbWluL2NvbXBhbnkvYnJhbmRzL2FkZGJyYW5kL2FkZGJyYW5kLmNvbXBvbmVudC5jc3MifQ== */\";","import { Component, OnInit, Input, ViewChild } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { FormGroup, FormControl, FormBuilder, Validators } from '@angular/forms';\r\n\r\nimport { ImageuploadComponent } from 'src/app/imageupload/imageupload.component';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\nimport { BrandsService } from 'src/app/_services/brands.service';\r\n\r\n@Component({\r\n selector: 'app-addbrand',\r\n templateUrl: './addbrand.component.html',\r\n styleUrls: ['./addbrand.component.css']\r\n})\r\nexport class AddbrandComponent implements OnInit {\r\n submitted = false;\r\n brandForm: FormGroup;\r\n fileData: any;\r\n loading = false;\r\n loadingBrand = false;\r\n ButtonText = \"Save\";\r\n imageBgUrl: any = \"\";\r\n @ViewChild(ImageuploadComponent, { static: true }) imgComp;\r\n\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private ls: LocalStorageService,\r\n public ts: ToastService,\r\n private brandService: BrandsService\r\n\r\n ) {\r\n this.createForm();\r\n }\r\n\r\n\r\n ngOnInit() {\r\n this.setSelectedBrand();\r\n }\r\n get f() { return this.brandForm.controls; }\r\n\r\n private createForm() {\r\n\r\n this.brandForm = this.formBuilder.group({\r\n\r\n name: ['', Validators.required],\r\n email: [''],\r\n password: [''],\r\n address: [''],\r\n companyURl: [''],\r\n currency: [''],\r\n statusID: [true],\r\n displayOrder: [0],\r\n brandID: 0,\r\n image: [''],\r\n locationID: null\r\n });\r\n }\r\n\r\n\r\n\r\n private editForm(obj) {\r\ndebugger\r\n this.f.name.setValue(obj.name);\r\n this.f.email.setValue(obj.email);\r\n this.f.password.setValue(obj.password);\r\n this.f.brandID.setValue(obj.brandID);\r\n this.f.image.setValue(obj.image);\r\n this.f.address.setValue(obj.address);\r\n this.f.statusID.setValue(obj.statusID === 1 ? true : false);\r\n this.f.companyURl.setValue(obj.companyURl);\r\n\r\n this.imageBgUrl = obj.imageUrl;\r\n this.imgComp.imageUrl = obj.image;\r\n }\r\n\r\n\r\n setSelectedBrand() {\r\n\r\n this.route.paramMap.subscribe(param => {\r\n const sid = +param.get('id');\r\n if (sid) {\r\n this.loadingBrand = true;\r\n this.f.brandID.setValue(sid);\r\n this.brandService.getById(sid, this.f.brandID.value).subscribe(res => {\r\n //Set Forms\r\n this.editForm(res);\r\n this.loadingBrand = false;\r\n });\r\n }\r\n })\r\n }\r\n\r\n onSubmit() {\r\n debugger\r\n this.brandForm.markAllAsTouched();\r\n this.submitted = true;\r\n\r\n if (this.brandForm.invalid) { return; }\r\n this.loading = true;\r\n this.f.statusID.setValue(this.f.statusID.value === true ? 1 : 2);\r\n this.f.image.setValue(this.imgComp.imageUrl);\r\n if (parseInt(this.f.brandID.value) === 0) {\r\n\r\n //Insert brand\r\n console.log(JSON.stringify(this.brandForm.value));\r\n this.brandService.insert(this.brandForm.value).subscribe(data => {\r\n if (data != 0) {\r\n this.ts.showSuccess(\"Success\", \"Record added successfully.\")\r\n this.router.navigate(['/admin/brand']);\r\n }\r\n\r\n this.loading = false;\r\n }, error => {\r\n this.ts.showError(\"Error\", \"Failed to insert record.\")\r\n this.loading = false;\r\n });\r\n\r\n } else {\r\n //Update brand\r\n this.brandService.update(this.brandForm.value).subscribe(data => {\r\n this.loading = false;\r\n if (data != 0) {\r\n this.ts.showSuccess(\"Success\", \"Record updated successfully.\")\r\n this.router.navigate(['/admin/brand']);\r\n }\r\n }, error => {\r\n this.ts.showError(\"Error\", \"Failed to update record.\")\r\n this.loading = false;\r\n });\r\n }\r\n }\r\n selectFile(event) {\r\n this.fileData = event.target.files[0];\r\n\r\n if (this.fileData.type == 'image/jpeg' || this.fileData.type == 'image/jpeg' || this.fileData.type == 'image/jpg') {\r\n debugger\r\n const reader = new FileReader();\r\n reader.readAsDataURL(this.fileData);\r\n reader.onload = () => {\r\n debugger\r\n this.imageBgUrl = reader.result;\r\n this.f.companyURl.setValue(this.imageBgUrl);\r\n\r\n };\r\n } else {\r\n alert(\"file type should be image\")\r\n return;\r\n }\r\n\r\n }\r\n\r\n\r\n}\r\n","\r\nimport { Component, OnInit, QueryList, ViewChildren } from '@angular/core';\r\nimport { Observable, Subscription } from 'rxjs';\r\n\r\nimport { NgbdSortableHeader, SortEvent } from 'src/app/_directives/sortable.directive';\r\n\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { Router } from '@angular/router';\r\nimport { BrandsService } from 'src/app/_services/brands.service';\r\nimport { Brands } from 'src/app/_models/Brands';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\n\r\n@Component({\r\n selector: 'app-brand',\r\n templateUrl: './brands.component.html',\r\n providers: []\r\n})\r\nexport class BrandComponent implements OnInit {\r\n data$: Observable; \r\n oldData: Brands[];\r\n total$: Observable;\r\n loading$: Observable;\r\n private selectedBrand;\r\n\r\n\r\n \r\n locationSubscription: Subscription;\r\n\r\n submit: boolean;\r\n @ViewChildren(NgbdSortableHeader) headers: QueryList;\r\n\r\n constructor(public service: BrandsService,\r\n public ls :LocalStorageService,\r\n public ts :ToastService,\r\n public router:Router) { \r\n this.loading$ = service.loading$;\r\n this.submit = false; \r\n }\r\n\r\n ngOnInit() {\r\n this.getData();\r\n }\r\n\r\n getData() { \r\n this.service.getAllData(this.selectedBrand); \r\n this.data$ = this.service.data$;\r\n this.total$ = this.service.total$;\r\n this.loading$ = this.service.loading$;\r\n }\r\n\r\n onSort({ column, direction }: SortEvent) {\r\n\r\n this.headers.forEach(header => {\r\n if (header.sortable !== column) {\r\n header.direction = '';\r\n }\r\n });\r\n this.service.sortColumn = column;\r\n this.service.sortDirection = direction;\r\n }\r\n\r\n\r\n Edit(brand) {\r\n this.router.navigate([\"admin/brand/edit\", brand]);\r\n }\r\n\r\n Delete(id) {\r\n this.service.delete(parseInt(id)).subscribe((res: any) => {\r\n if(res!=0){\r\n this.ts.showSuccess(\"Success\",\"Record deleted successfully.\")\r\n this.getData();\r\n }\r\n else\r\n this.ts.showError(\"Error\",\"Failed to delete record.\");\r\n\r\n }, error => {\r\n this.ts.showError(\"Error\",\"Failed to delete record.\")\r\n });\r\n }\r\n Deactive(id, rowVersion) {\r\n\r\n // this.service.deactive(parseInt(id), rowVersion).subscribe((res: any) => {\r\n // this.alertService.success(\"Brand has been Deactived\");\r\n // this.getBrandData();\r\n // }, error => {\r\n // this.alertService.error(error);\r\n // });\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2FkbWluL2NvbXBhbnkvbG9jYXRpb25zL2FkZGxvY2F0aW9uL2FkZGxvY2F0aW9uLmNvbXBvbmVudC5jc3MifQ== */\";","import { Component, OnInit} from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { LocationsService } from 'src/app/_services/locations.service';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\n\r\n@Component({\r\n selector: 'app-addlocation',\r\n templateUrl: './addlocation.component.html',\r\n styleUrls: ['./addlocation.component.css']\r\n})\r\nexport class AddlocationComponent implements OnInit {\r\n submitted = false;\r\n locationForm: FormGroup;\r\n loading = false;\r\n loadingLocations = false;\r\n ButtonText = \"Save\"; \r\n\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private ls: LocalStorageService,\r\n public ts :ToastService,\r\n private locationService: LocationsService\r\n\r\n ) {\r\n this.createForm();\r\n }\r\n\r\n ngOnInit() {\r\n this.setSelectedLocations();\r\n }\r\n\r\n get f() { return this.locationForm.controls; }\r\n\r\n private createForm() {\r\n\r\n this.locationForm = this.formBuilder.group({\r\n name: ['', Validators.required],\r\n email: [''],\r\n address: [''],\r\n deliveryServices: [false],\r\n deliveryCharges: [0],\r\n minOrderAmount:[0],\r\n contactNo: [''],\r\n password: [''],\r\n currency: [''],\r\n latitude: [''],\r\n longitude: [''],\r\n description: [''],\r\n statusID: [true],\r\n locationID: 0,\r\n brandID: this.ls.getSelectedUser().brandID\r\n });\r\n }\r\n\r\n private editForm(obj) {\r\n debugger\r\n this.f.name.setValue(obj.name);\r\n this.f.email.setValue(obj.email);\r\n this.f.desc.setValue(obj.contactNo);\r\n this.f.contactNo.setValue(obj.contactNo); \r\n this.f.minOrderAmount.setValue(obj.minOrderAmount);\r\n this.f.deliveryCharges.setValue(obj.deliveryCharges);\r\n this.f.address.setValue(obj.address);\r\n this.f.password.setValue(obj.password);\r\n this.f.currency.setValue(obj.currency);\r\n this.f.latitude.setValue(obj.latitude);\r\n this.f.longitude.setValue(obj.longitude);\r\n this.f.description.setValue(obj.description);\r\n this.f.locationID.setValue(obj.locationID);\r\n this.f.statusID.setValue(obj.statusID === 1 ? true : false);\r\n }\r\n\r\n setSelectedLocations() { \r\n this.route.paramMap.subscribe(param => {\r\n const sid = +param.get('id');\r\n if (sid) {\r\n this.loadingLocations = true;\r\n this.f.locationID.setValue(sid);\r\n this.locationService.getById(sid, this.f.brandID.value).subscribe(res => {\r\n //Set Forms\r\n this.editForm(res);\r\n this.loadingLocations = false;\r\n });\r\n }\r\n })\r\n }\r\n\r\n onSubmit() {\r\n debugger\r\n this.locationForm.markAllAsTouched();\r\n this.submitted = true;\r\n\r\n if (this.locationForm.invalid) { return; }\r\n this.loading = true;\r\n this.f.statusID.setValue(this.f.statusID.value === true ? 1 : 2);\r\n \r\n if (parseInt(this.f.locationID.value) === 0) {\r\n\r\n //Insert location\r\n this.locationService.insert(this.locationForm.value).subscribe(data => {\r\n if (data != 0) {\r\n this.ts.showSuccess(\"Success\",\"Record added successfully.\")\r\n this.router.navigate(['/admin/location']);\r\n }\r\n this.loading = false;\r\n }, error => {\r\n this.ts.showError(\"Error\",\"Failed to insert record.\")\r\n this.loading = false;\r\n });\r\n\r\n } else {\r\n //Update location\r\n this.locationService.update(this.locationForm.value).subscribe(data => {\r\n this.loading = false;\r\n if (data != 0) {\r\n this.ts.showSuccess(\"Success\",\"Record updated successfully.\")\r\n this.router.navigate(['/admin/location']);\r\n }\r\n }, error => {\r\n this.ts.showError(\"Error\",\"Failed to update record.\")\r\n this.loading = false;\r\n });\r\n }\r\n }\r\n\r\n\r\n\r\n}\r\n","\r\nimport { Component, OnInit, QueryList, ViewChildren } from '@angular/core';\r\nimport { Observable, Subscription } from 'rxjs';\r\nimport { NgbdSortableHeader, SortEvent } from 'src/app/_directives/sortable.directive';\r\nimport { Location } from 'src/app/_models/Location';\r\nimport { LocationsService } from 'src/app/_services/locations.service';\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { Router } from '@angular/router';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\n\r\n@Component({\r\n selector: 'app-locations',\r\n templateUrl: './locations.component.html',\r\n providers: []\r\n})\r\nexport class LocationsComponent implements OnInit {\r\n data$: Observable; \r\n oldData: Location[];\r\n total$: Observable;\r\n loading$: Observable;\r\n private selectedBrand; \r\n locationSubscription: Subscription;\r\n submit: boolean;\r\n\r\n @ViewChildren(NgbdSortableHeader) headers: QueryList;\r\n\r\n constructor(public service: LocationsService,\r\n public ls :LocalStorageService,\r\n public ts :ToastService,\r\n public router:Router) {\r\n this.selectedBrand =this.ls.getSelectedUser().brandID;\r\n this.loading$ = service.loading$;\r\n this.submit = false; \r\n }\r\n\r\n ngOnInit() {\r\n this.getData();\r\n }\r\n\r\n getData() { \r\n debugger\r\n this.service.getAllData(this.selectedBrand); \r\n this.data$ = this.service.data$;\r\n this.total$ = this.service.total$;\r\n this.loading$ = this.service.loading$;\r\n }\r\n onSort({ column, direction }: SortEvent) {\r\n this.headers.forEach(header => {\r\n if (header.sortable !== column) {\r\n header.direction = '';\r\n }\r\n });\r\n this.service.sortColumn = column;\r\n this.service.sortDirection = direction;\r\n }\r\n\r\n\r\n Edit(locations) {\r\n this.router.navigate([\"admin/location/edit\", locations]);\r\n }\r\n\r\n Delete(obj) {\r\n this.service.delete(obj).subscribe((res: any) => {\r\n if(res!=0){\r\n this.ts.showSuccess(\"Success\",\"Record deleted successfully.\")\r\n this.getData();\r\n }\r\n else\r\n this.ts.showError(\"Error\",\"Failed to delete record.\");\r\n\r\n }, error => {\r\n this.ts.showError(\"Error\",\"Failed to delete record.\")\r\n });\r\n }\r\n Deactive(id, rowVersion) {\r\n\r\n // this.service.deactive(parseInt(id), rowVersion).subscribe((res: any) => {\r\n // this.alertService.success(\"Locations has been Deactived\");\r\n // this.getBrandData();\r\n // }, error => {\r\n // this.alertService.error(error);\r\n // });\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2FkbWluL2N1c3RvbWVyL2N1c3RvbWVycy9hZGRjdXN0b21lcnMvYWRkY3VzdG9tZXIuY29tcG9uZW50LmNzcyJ9 */\";","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport { ImageuploadComponent } from 'src/app/imageupload/imageupload.component';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { CustomersService } from 'src/app/_services/customers.service';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\n\r\n@Component({\r\n selector: 'app-addcustomer',\r\n templateUrl: './addcustomer.component.html',\r\n styleUrls: ['./addcustomer.component.css']\r\n})\r\nexport class AddcustomerComponent implements OnInit {\r\n\r\n submitted = false;\r\n customerForm: FormGroup;\r\n loading = false;\r\n loadingCustomer = false;\r\n ButtonText = \"Save\"; selectedCityIds\r\n selectedSubCategoriesIds: string[];\r\n selectedLocationIds: string[];\r\n selectedgroupModifierIds: string[];\r\n\r\n @ViewChild(ImageuploadComponent, { static: true }) imgComp;\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private ls: LocalStorageService,\r\n public ts: ToastService,\r\n private customerService: CustomersService\r\n\r\n ) {\r\n this.createForm();\r\n }\r\n\r\n ngOnInit() {\r\n this.setSelectedCustomer();\r\n }\r\n\r\n get f() { return this.customerForm.controls; }\r\n\r\n private createForm() {\r\n this.customerForm = this.formBuilder.group({\r\n firstName: ['', Validators.required],\r\n lastName: ['', Validators.required],\r\n email: ['', Validators.required],\r\n password: ['', Validators.required],\r\n statusID: [true],\r\n isVerified: [true],\r\n customerID: 0,\r\n });\r\n }\r\n\r\n private editForm(obj) {\r\n this.f.firstName.setValue(obj.firstName);\r\n this.f.lastName.setValue(obj.lastName);\r\n this.f.email.setValue(obj.email);\r\n this.f.password.setValue(obj.password);\r\n this.f.customerID.setValue(obj.customerID);\r\n this.f.isVerified.setValue(obj.isVerified);\r\n this.f.statusID.setValue(obj.statusID === 1 ? true : false);\r\n }\r\n\r\n setSelectedCustomer() {\r\n this.route.paramMap.subscribe(param => {\r\n const sid = +param.get('id');\r\n if (sid) {\r\n this.loadingCustomer = true;\r\n this.f.customerID.setValue(sid);\r\n this.customerService.getById(sid).subscribe(res => {\r\n //Set Forms\r\n this.editForm(res);\r\n this.loadingCustomer = false;\r\n });\r\n }\r\n })\r\n }\r\n\r\n onSubmit() {\r\n this.customerForm.markAllAsTouched();\r\n this.submitted = true;\r\n if (this.customerForm.invalid) { return; }\r\n this.loading = true;\r\n this.f.statusID.setValue(this.f.statusID.value === true ? 1 : 2);\r\n \r\n\r\n if (parseInt(this.f.customerID.value) === 0) {\r\n //Insert customer\r\n console.log(JSON.stringify(this.customerForm.value));\r\n this.customerService.insert(this.customerForm.value).subscribe(data => {\r\n if (data != 0) {\r\n this.ts.showSuccess(\"Success\",\"Record added successfully.\")\r\n this.router.navigate(['/admin/customer']);\r\n }\r\n this.loading = false;\r\n }, error => {\r\n this.ts.showError(\"Error\",\"Failed to insert record.\")\r\n this.loading = false;\r\n });\r\n } else {\r\n //Update customer\r\n this.customerService.update(this.customerForm.value).subscribe(data => {\r\n this.loading = false;\r\n if (data != 0) {\r\n this.ts.showSuccess(\"Success\",\"Record updated successfully.\")\r\n this.router.navigate(['/admin/customer']);\r\n }\r\n }, error => {\r\n this.ts.showError(\"Error\",\"Failed to update record.\")\r\n this.loading = false;\r\n });\r\n }\r\n }\r\n\r\n\r\n\r\n}\r\n","import { Component, OnInit, QueryList, ViewChildren } from '@angular/core';\r\nimport { Observable, Subscription } from 'rxjs';\r\nimport { NgbdSortableHeader, SortEvent } from 'src/app/_directives/sortable.directive';\r\nimport { CustomersService } from 'src/app/_services/customers.service';\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { Router } from '@angular/router';\r\nimport { Customers } from 'src/app/_models/Customers';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\nimport { ExcelService } from 'src/ExportExcel/excel.service';\r\n\r\n@Component({\r\n selector: 'app-customers',\r\n templateUrl: './customers.component.html',\r\n providers: [ExcelService]\r\n})\r\n\r\nexport class CustomersComponent implements OnInit {\r\n data$: Observable ;\r\n CustomerList: Customers[] = [];\r\n oldData: Customers[];\r\n total$: Observable;\r\n loading$: Observable;\r\n private selectedBrand;\r\n\r\n locationSubscription: Subscription;\r\n submit: boolean;\r\n @ViewChildren(NgbdSortableHeader) headers: QueryList;\r\n\r\n constructor(public service: CustomersService,\r\n public ls: LocalStorageService,\r\n public ts: ToastService,\r\n public router: Router,\r\n public excelService: ExcelService) {\r\n this.selectedBrand = this.ls.getSelectedUser().brandID;\r\n\r\n this.loading$ = service.loading$;\r\n this.submit = false;\r\n\r\n }\r\n\r\n ngOnInit() {\r\n this.getData();\r\n }\r\n\r\n getData() {\r\n this.service.getAllData();\r\n this.data$ = this.service.data$;\r\n this.total$ = this.service.total$;\r\n this.loading$ = this.service.loading$;\r\n }\r\n\r\n onSort({ column, direction }: SortEvent) {\r\n\r\n this.headers.forEach(header => {\r\n if (header.sortable !== column) {\r\n header.direction = '';\r\n }\r\n });\r\n this.service.sortColumn = column;\r\n this.service.sortDirection = direction;\r\n }\r\n\r\n Edit(customers) {\r\n this.router.navigate([\"admin/customer/edit\", customers]);\r\n }\r\n\r\n Delete(obj) {\r\n if (confirm(\"Are you sure to delete? \")) {\r\n this.service.delete(obj).subscribe((res: any) => {\r\n if (res != 0) {\r\n this.ts.showSuccess(\"Success\", \"Record deleted successfully.\")\r\n this.getData();\r\n }\r\n else\r\n this.ts.showError(\"Error\", \"Failed to delete record.\")\r\n\r\n }, error => {\r\n this.ts.showError(\"Error\", \"Failed to delete record.\")\r\n });\r\n }\r\n }\r\n\r\n \r\n ExportData() {\r\n \r\n this.service.getAllCustomer( )\r\n .subscribe((res: any) => { \r\n this.CustomerList = res; \r\n \r\n this.excelService.exportAsExcelFile(this.CustomerList, 'Customer_Export'); \r\n }, error => {\r\n });\r\n }\r\n exportAsXLSX(): void {\r\n this.ExportData();\r\n }\r\n}\r\n","export default \".card-body{\\r\\n padding: 20px;\\r\\n}\\r\\n\\r\\n .advanced-pie-legend-wrapper{display: none !important;}\\r\\n\\r\\n .dashboard-labels{\\r\\n font-size: 13px;\\r\\n }\\r\\n\\r\\n ngx-charts-advanced-pie-chart:first-child{\\r\\nheight:200px ;\\r\\n }\\r\\n\\r\\n .content-wrapper-padding{\\r\\n padding-top: 4rem;\\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvYWRtaW4vZGFzaGJvYXJkL2Rhc2hib2FyZC5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0lBQ0ksYUFBYTtBQUNqQjs7RUFFRSw2QkFBNkIsd0JBQXdCLENBQUM7O0VBRXREO01BQ0ksZUFBZTtFQUNuQjs7RUFDQTtBQUNGLGFBQWE7RUFDWDs7RUFFQTtJQUNFLGlCQUFpQjtBQUNyQiIsImZpbGUiOiJzcmMvYXBwL2FkbWluL2Rhc2hib2FyZC9kYXNoYm9hcmQuY29tcG9uZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi5jYXJkLWJvZHl7XHJcbiAgICBwYWRkaW5nOiAyMHB4O1xyXG59XHJcblxyXG4gIC5hZHZhbmNlZC1waWUtbGVnZW5kLXdyYXBwZXJ7ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O31cclxuXHJcbiAgLmRhc2hib2FyZC1sYWJlbHN7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTNweDtcclxuICB9XHJcbiAgbmd4LWNoYXJ0cy1hZHZhbmNlZC1waWUtY2hhcnQ6Zmlyc3QtY2hpbGR7XHJcbmhlaWdodDoyMDBweCA7XHJcbiAgfVxyXG5cclxuICAuY29udGVudC13cmFwcGVyLXBhZGRpbmd7XHJcbiAgICBwYWRkaW5nLXRvcDogNHJlbTtcclxufSJdfQ== */\";","import { Component, NgModule, ViewChild } from '@angular/core';\r\n\r\n\r\nimport {\r\n ChartComponent,\r\n ApexAxisChartSeries,\r\n ApexChart,\r\n ApexXAxis,\r\n ApexTitleSubtitle,\r\n ApexMarkers,\r\n AnnotationStyle,\r\n ApexDataLabels,\r\n ApexStroke,\r\n ApexGrid,\r\n ApexYAxis,\r\n ApexAnnotations,\r\n ApexNonAxisChartSeries,\r\n ApexFill,\r\n ApexLegend,\r\n ApexTooltip,\r\n ApexPlotOptions,\r\n ApexResponsive,\r\n ApexStates,\r\n ApexTheme\r\n} from \"ng-apexcharts\";\r\nimport { DashboadService } from 'src/app/_services/dashboard.service';\r\nimport { DashboardSummary } from 'src/app/_models/Dashboard';\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { NgbdDatepickerRangePopup } from 'src/app/datepicker-range/datepicker-range-popup';\r\nimport { NgbDate } from '@ng-bootstrap/ng-bootstrap';\r\nexport type ChartOptions = {\r\n series: ApexAxisChartSeries;\r\n chart: ApexChart;\r\n xaxis: ApexXAxis;\r\n title: ApexTitleSubtitle;\r\n};\r\nconst now = new Date();\r\n@Component({\r\n selector: 'app-dashboard',\r\n templateUrl: './dashboard.component.html',\r\n styleUrls: ['./dashboard.component.css']\r\n})\r\n\r\nexport class DashboardComponent {\r\n @ViewChild(\"chart\") chart: ChartComponent;\r\n public chartOptions;\r\n public chartOptionsDonut;\r\n dashboardSummary=new DashboardSummary();\r\n ngOnInit() {\r\n \r\n const date: NgbDate = new NgbDate(now.getFullYear(), now.getMonth() + 1, 1); \r\n this._datepicker.fromDate=date;\r\n this.GetDataDashboard();\r\n }\r\n @ViewChild(NgbdDatepickerRangePopup, { static: true }) _datepicker;\r\n constructor(public service: DashboadService,public ls: LocalStorageService) {\r\n \r\n }\r\n BindTodaysSales(sales, timeSlot) {\r\n this.chartOptions = {\r\n series: [\r\n {\r\n name: \"Sales\",\r\n data: sales\r\n }\r\n ],\r\n chart: {\r\n height: 300,\r\n type: \"bar\"\r\n },\r\n title: {\r\n text: \"\"\r\n },\r\n xaxis: {\r\n categories: timeSlot\r\n }\r\n };\r\n\r\n }\r\n BindMAEN(maen) {\r\n \r\n this.chartOptionsDonut = {\r\n series: [maen.morning, maen.afterNoon, maen.evening, maen.night],\r\n chart: {\r\n type: \"donut\"\r\n },\r\n labels: [\"Morning\", \"Evening\", \"Afternoon\", \"Night\"],\r\n responsive: [\r\n {\r\n breakpoint: 250,\r\n options: {\r\n colors: ['#2E93fA', '#66DA26', '#546E7A', '#E91E63', '#FF9800'],\r\n chart: {\r\n width: 100\r\n },\r\n legend: {\r\n position: \"bottom\"\r\n }\r\n }\r\n }\r\n ]\r\n };\r\n }\r\n // GetDashboard() {\r\n // debugger\r\n // this.service.GetDashboard(new Date()).subscribe((res: any) => {\r\n \r\n // this.dashboardSummary = res.summarysales;\r\n // this.BindTodaysSales(res.todaysales.sales, res.todaysales.timeSlot);\r\n // this.BindMAEN(res.maensales);\r\n // }, error => {\r\n\r\n // });\r\n \r\n // }\r\n GetDataDashboard(){\r\n \r\n this.service.GetDashboard(this.parseDate(this._datepicker.fromDate),this.parseDate(this._datepicker.toDate)).subscribe((res: any) => {\r\n \r\n this.dashboardSummary = res.summarysales;\r\n this.BindTodaysSales(res.todaysales.sales, res.todaysales.timeSlot);\r\n this.BindMAEN(res.maensales);\r\n }, error => {\r\n\r\n });\r\n }\r\n parseDate(obj) {\r\n return obj.year + \"-\" + obj.month + \"-\" + obj.day;;\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2FkbWluL21lbnUvY2F0ZWdvcnkvYWRkY2F0ZWdvcnkvYWRkY2F0ZWdvcnkuY29tcG9uZW50LmNzcyJ9 */\";","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport { CategoryService } from 'src/app/_services/category.service';\r\nimport { ImageuploadComponent } from 'src/app/imageupload/imageupload.component';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\n\r\n@Component({\r\n selector: 'app-addcategory',\r\n templateUrl: './addcategory.component.html',\r\n styleUrls: ['./addcategory.component.css']\r\n})\r\nexport class AddcategoryComponent implements OnInit {\r\n\r\n\r\n submitted = false;\r\n categoryForm: FormGroup;\r\n\r\n loading = false;\r\n loadingCategory = false;\r\n ButtonText = \"Save\";\r\n\r\n @ViewChild(ImageuploadComponent, { static: true }) imgComp;\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private ls: LocalStorageService,\r\n public ts :ToastService,\r\n private categoryService: CategoryService\r\n\r\n ) {\r\n this.createForm();\r\n }\r\n\r\n ngOnInit() {\r\n this.setSelectedCategory();\r\n }\r\n\r\n get f() { return this.categoryForm.controls; }\r\n\r\n private createForm() {\r\n this.categoryForm = this.formBuilder.group({\r\n title: ['', Validators.required],\r\n arabicTitle: [''],\r\n description: [''],\r\n isActive: [true],\r\n categoryID: 0,\r\n displayOrder: 0,\r\n image: [''],\r\n userID: this.ls.getSelectedUser().userID,\r\n locationID: null\r\n });\r\n }\r\n\r\n private editForm(obj) {\r\n\r\n this.f.title.setValue(obj.title);\r\n this.f.arabicTitle.setValue(obj.arabicTitle);\r\n this.f.categoryID.setValue(obj.categoryID);\r\n this.f.image.setValue(obj.image);\r\n this.f.description.setValue(obj.description);\r\n this.f.displayOrder.setValue(obj.displayOrder);\r\n this.f.isActive.setValue(obj.isActive === 1 ? true : false);\r\n this.imgComp.imageUrl = obj.image;\r\n }\r\n\r\n setSelectedCategory() { \r\n this.route.paramMap.subscribe(param => {\r\n const sid = +param.get('id');\r\n if (sid) {\r\n this.loadingCategory = true;\r\n this.f.categoryID.setValue(sid);\r\n this.categoryService.getById(sid).subscribe(res => {\r\n //Set Forms\r\n this.editForm(res);\r\n this.loadingCategory = false;\r\n });\r\n }\r\n })\r\n }\r\n\r\n onSubmit() {\r\n \r\n this.categoryForm.markAllAsTouched();\r\n this.submitted = true;\r\n if (this.categoryForm.invalid) { return; }\r\n this.loading = true;\r\n this.f.isActive.setValue(this.f.isActive.value === true ? 1 : 2);\r\n this.f.image.setValue(this.imgComp.imageUrl);\r\n\r\n if (parseInt(this.f.categoryID.value) === 0) {\r\n //Insert category\r\n this.categoryService.insert(this.categoryForm.value).subscribe(data => {\r\n if (data != 0) {\r\n this.ts.showSuccess(\"Success\",\"Record added successfully.\")\r\n this.router.navigate(['/admin/category']);\r\n }\r\n this.loading = false;\r\n }, error => {\r\n this.ts.showError(\"Error\",\"Failed to insert record.\")\r\n this.loading = false;\r\n });\r\n\r\n } else {\r\n //Update category\r\n this.categoryService.update(this.categoryForm.value).subscribe(data => {\r\n this.loading = false;\r\n if (data != 0) {\r\n this.ts.showSuccess(\"Success\",\"Record updated successfully.\")\r\n this.router.navigate(['/admin/category']);\r\n }\r\n }, error => {\r\n this.ts.showError(\"Error\",\"Failed to update record.\")\r\n this.loading = false;\r\n });\r\n }\r\n }\r\n}\r\n","\r\nimport { Component, OnInit, QueryList, ViewChildren } from '@angular/core';\r\nimport { Observable, Subscription } from 'rxjs';\r\nimport { AddcategoryComponent } from './addcategory/addcategory.component';\r\nimport { NgbdSortableHeader, SortEvent } from 'src/app/_directives/sortable.directive';\r\nimport { Category } from 'src/app/_models/Cateogry';\r\nimport { CategoryService } from 'src/app/_services/category.service';\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { Router } from '@angular/router';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\nimport { ToastrService } from 'ngx-toastr';\r\n\r\n@Component({\r\n selector: 'app-category',\r\n templateUrl: './category.component.html',\r\n providers: []\r\n})\r\nexport class CategoryComponent implements OnInit {\r\n data$: Observable;\r\n oldData: Category[];\r\n total$: Observable;\r\n loading$: Observable;\r\n private selectedBrand;\r\n locationSubscription: Subscription;\r\n submit: boolean;\r\n @ViewChildren(NgbdSortableHeader) headers: QueryList;\r\n\r\n constructor(public service: CategoryService,\r\n public ls: LocalStorageService,\r\n public ts: ToastService,\r\n public tss: ToastrService,\r\n public router: Router) {\r\n\r\n this.selectedBrand = this.ls.getSelectedUser().userID;\r\n this.loading$ = service.loading$;\r\n this.submit = false;\r\n }\r\n\r\n ngOnInit() {\r\n this.getData();\r\n }\r\n\r\n getData() {\r\n this.service.getAllData();\r\n this.data$ = this.service.data$;\r\n this.total$ = this.service.total$;\r\n this.loading$ = this.service.loading$;\r\n }\r\n\r\n onSort({ column, direction }: SortEvent) {\r\n this.headers.forEach(header => {\r\n if (header.sortable !== column) {\r\n header.direction = '';\r\n }\r\n });\r\n this.service.sortColumn = column;\r\n this.service.sortDirection = direction;\r\n }\r\n\r\n Edit(category) {\r\n this.router.navigate([\"admin/category/edit\", category]);\r\n }\r\n\r\n Delete(obj) {\r\n if(confirm(\"Are you sure to delete? \")) {\r\n this.service.delete(obj).subscribe((res: any) => {\r\n if (res != 0) {\r\n this.ts.showSuccess(\"Success\", \"Record deleted successfully.\")\r\n this.getData();\r\n }\r\n else {\r\n this.ts.showError(\"Error\", \"Failed to delete record.\");\r\n }\r\n }, error => {\r\n this.ts.showError(\"Error\",\"Failed to delete record.\")\r\n });\r\n }\r\n \r\n }\r\n Deactive(id, rowVersion) {\r\n\r\n // this.service.deactive(parseInt(id), rowVersion).subscribe((res: any) => {\r\n // this.alertService.success(\"Category has been Deactived\");\r\n // this.getBrandData();\r\n // }, error => {\r\n // this.alertService.error(error);\r\n // });\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2FkbWluL21lbnUvY2l0eS9hZGRjaXR5L2FkZGNpdHkuY29tcG9uZW50LmNzcyJ9 */\";","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport { ImageuploadComponent } from 'src/app/imageupload/imageupload.component';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\nimport { CityService } from 'src/app/_services/city.service';\r\n\r\n@Component({\r\n selector: 'app-addcity',\r\n templateUrl: './addcity.component.html',\r\n styleUrls: ['./addcity.component.css']\r\n})\r\nexport class AddcityComponent implements OnInit {\r\n\r\n submitted = false;\r\n cityForm: FormGroup;\r\n loading = false;\r\n loadingCity = false;\r\n ButtonText = \"Save\";\r\n CategoryList = [];\r\n selectedCategoryIds: string[];\r\n @ViewChild(ImageuploadComponent, { static: true }) imgComp;\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private ls: LocalStorageService,\r\n public ts :ToastService,\r\n private cityService: CityService\r\n\r\n ) {\r\n this.createForm();\r\n this.loadCategory();\r\n }\r\n\r\n ngOnInit() {\r\n this.setSelectedSubcategory();\r\n }\r\n\r\n get f() { return this.cityForm.controls; }\r\n\r\n private createForm() {\r\n this.cityForm = this.formBuilder.group({\r\n cityID: [0],\r\n cityName: ['', Validators.required], \r\n statusID: [true],\r\n \r\n });\r\n }\r\n\r\n private editForm(obj) {\r\n\r\n this.f.cityName.setValue(obj.cityName); \r\n this.f.statusID.setValue(obj.statusID === 1 ? true : false);\r\n\r\n // if (obj.categories != \"\") {\r\n // var stringToConvert = obj.categories;\r\n // this.selectedCategoryIds = stringToConvert.split(',').map(Number);\r\n // this.f.categories.setValue(obj.categories);\r\n // }\r\n }\r\n\r\n setSelectedSubcategory() { \r\n this.route.paramMap.subscribe(param => {\r\n const sid = +param.get('id');\r\n if (sid) {\r\n this.loadingCity = true;\r\n this.f.cityID.setValue(sid);\r\n this.cityService.getById(sid).subscribe(res => {\r\n //Set Forms\r\n this.editForm(res);\r\n this.loadingCity = false;\r\n });\r\n }\r\n })\r\n }\r\n\r\n onSubmit() {\r\n debugger\r\n this.cityForm.markAllAsTouched();\r\n this.submitted = true;\r\n if (this.cityForm.invalid) { return; }\r\n this.loading = true;\r\n this.f.statusID.setValue(this.f.statusID.value === true ? 1 : 2);\r\n \r\n if (parseInt(this.f.cityID.value) === 0) {\r\n //Insert city\r\n this.cityService.insert(this.cityForm.value).subscribe(data => {\r\n if (data != 0) {\r\n this.ts.showSuccess(\"Success\",\"Record added successfully.\")\r\n this.router.navigate(['/admin/city']);\r\n }\r\n this.loading = false;\r\n }, error => {\r\n this.ts.showError(\"Error\",\"Failed to insert record.\")\r\n this.loading = false;\r\n });\r\n\r\n } else {\r\n //Update city\r\n this.cityService.update(this.cityForm.value).subscribe(data => {\r\n this.loading = false;\r\n if (data != 0) {\r\n this.ts.showSuccess(\"Success\",\"Record updated successfully.\")\r\n this.router.navigate(['/admin/city']);\r\n }\r\n }, error => {\r\n this.ts.showError(\"Error\",\"Failed to update record.\")\r\n this.loading = false;\r\n });\r\n }\r\n }\r\n private loadCategory() {\r\n this.cityService.loadCategories().subscribe((res: any) => {\r\n this.CategoryList = res;\r\n });\r\n }\r\n}\r\n","\r\nimport { Component, OnInit, QueryList, ViewChildren } from '@angular/core';\r\nimport { Observable, Subscription } from 'rxjs';\r\n\r\nimport { NgbdSortableHeader, SortEvent } from 'src/app/_directives/sortable.directive';\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { Router } from '@angular/router';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { City } from 'src/app/_models/City';\r\nimport { CityService } from 'src/app/_services/city.service';\r\n\r\n@Component({\r\n selector: 'app-city',\r\n templateUrl: './city.component.html',\r\n providers: []\r\n})\r\nexport class CityComponent implements OnInit {\r\n data$: Observable;\r\n oldData: City[];\r\n total$: Observable;\r\n loading$: Observable;\r\n private selectedBrand;\r\n locationSubscription: Subscription;\r\n submit: boolean;\r\n @ViewChildren(NgbdSortableHeader) headers: QueryList;\r\n\r\n constructor(public service: CityService,\r\n public ls: LocalStorageService,\r\n public ts: ToastService,\r\n public tss: ToastrService,\r\n public router: Router) {\r\n\r\n this.selectedBrand = this.ls.getSelectedUser().userID;\r\n this.loading$ = service.loading$;\r\n this.submit = false;\r\n }\r\n\r\n ngOnInit() {\r\n this.getData();\r\n }\r\n\r\n getData() {\r\n this.service.getAllData();\r\n this.data$ = this.service.data$;\r\n this.total$ = this.service.total$;\r\n this.loading$ = this.service.loading$;\r\n }\r\n\r\n onSort({ column, direction }: SortEvent) {\r\n this.headers.forEach(header => {\r\n if (header.sortable !== column) {\r\n header.direction = '';\r\n }\r\n });\r\n this.service.sortColumn = column;\r\n this.service.sortDirection = direction;\r\n }\r\n\r\n Edit(city) {\r\n this.router.navigate([\"admin/city/edit\", city]);\r\n }\r\n\r\n Delete(obj) {\r\n if (confirm(\"Are you sure to delete? \")) {\r\n this.service.delete(obj).subscribe((res: any) => {\r\n if (res != 0) {\r\n this.ts.showSuccess(\"Success\", \"Record deleted successfully.\")\r\n this.getData();\r\n }\r\n else {\r\n this.ts.showError(\"Error\", \"Failed to delete record.\");\r\n }\r\n }, error => {\r\n this.ts.showError(\"Error\", \"Failed to delete record.\")\r\n });\r\n }\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2FkbWluL21lbnUvZ2lmdC9hZGRnaWZ0L2FkZGdpZnQuY29tcG9uZW50LmNzcyJ9 */\";","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport { GiftService } from 'src/app/_services/gift.service';\r\nimport { ImageuploadComponent } from 'src/app/imageupload/imageupload.component';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\n\r\n@Component({\r\n selector: 'app-addgift',\r\n templateUrl: './addgift.component.html',\r\n styleUrls: ['./addgift.component.css']\r\n})\r\nexport class AddgiftComponent implements OnInit {\r\n\r\n\r\n submitted = false;\r\n giftForm: FormGroup;\r\n\r\n loading = false;\r\n loadingGift = false;\r\n ButtonText = \"Save\";\r\n\r\n @ViewChild(ImageuploadComponent, { static: true }) imgComp;\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private ls: LocalStorageService,\r\n public ts :ToastService,\r\n private giftService: GiftService\r\n\r\n ) {\r\n this.createForm();\r\n }\r\n\r\n ngOnInit() {\r\n this.setSelectedGift();\r\n }\r\n\r\n get f() { return this.giftForm.controls; }\r\n\r\n private createForm() {\r\n this.giftForm = this.formBuilder.group({\r\n title: ['', Validators.required],\r\n arabicTitle: [''],\r\n description: [''],\r\n actualPrice: [0],\r\n displayPrice: [0],\r\n discountedPrice: [0],\r\n inStock : [true],\r\n displayOrder : [0],\r\n stockQty: [0],\r\n statusID: [true],\r\n giftID: 0,\r\n image: ['']\r\n });\r\n }\r\n\r\n private editForm(obj) {\r\n\r\n this.f.title.setValue(obj.title);\r\n this.f.arabicTitle.setValue(obj.arabicTitle);\r\n this.f.giftID.setValue(obj.giftID);\r\n this.f.actualPrice.setValue(obj.actualPrice);\r\n this.f.displayPrice.setValue(obj.displayPrice);\r\n this.f.discountedPrice.setValue(obj.discountedPrice);\r\n this.f.stockQty.setValue(obj.stockQty);\r\n this.f.image.setValue(obj.image);\r\n this.f.description.setValue(obj.description);\r\n this.f.statusID.setValue(obj.statusID === 1 ? true : false);\r\n this.imgComp.imageUrl = obj.image;\r\n }\r\n\r\n setSelectedGift() { \r\n this.route.paramMap.subscribe(param => {\r\n const sid = +param.get('id');\r\n if (sid) {\r\n this.loadingGift = true;\r\n this.f.giftID.setValue(sid);\r\n this.giftService.getById(sid).subscribe(res => {\r\n //Set Forms\r\n this.editForm(res);\r\n this.loadingGift = false;\r\n });\r\n }\r\n })\r\n }\r\n\r\n onSubmit() {\r\n debugger\r\n this.giftForm.markAllAsTouched();\r\n this.submitted = true;\r\n if (this.giftForm.invalid) { return; }\r\n this.loading = true;\r\n this.f.statusID.setValue(this.f.statusID.value === true ? 1 : 2);\r\n this.f.image.setValue(this.imgComp.imageUrl);\r\n\r\n if (parseInt(this.f.giftID.value) === 0) {\r\n //Insert gift\r\n this.giftService.insert(this.giftForm.value).subscribe(data => {\r\n if (data != 0) {\r\n this.ts.showSuccess(\"Success\",\"Record added successfully.\")\r\n this.router.navigate(['/admin/gift']);\r\n }\r\n this.loading = false;\r\n }, error => {\r\n this.ts.showError(\"Error\",\"Failed to insert record.\")\r\n this.loading = false;\r\n });\r\n\r\n } else {\r\n //Update gift\r\n this.giftService.update(this.giftForm.value).subscribe(data => {\r\n this.loading = false;\r\n if (data != 0) {\r\n this.ts.showSuccess(\"Success\",\"Record updated successfully.\")\r\n this.router.navigate(['/admin/gift']);\r\n }\r\n }, error => {\r\n this.ts.showError(\"Error\",\"Failed to update record.\")\r\n this.loading = false;\r\n });\r\n }\r\n }\r\n}\r\n","\r\nimport { Component, OnInit, QueryList, ViewChildren } from '@angular/core';\r\nimport { Observable, Subscription } from 'rxjs';\r\nimport { NgbdSortableHeader, SortEvent } from 'src/app/_directives/sortable.directive';\r\nimport { Gift } from 'src/app/_models/Gift';\r\nimport { GiftService } from 'src/app/_services/gift.service';\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { Router } from '@angular/router';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\nimport { ToastrService } from 'ngx-toastr';\r\n\r\n@Component({\r\n selector: 'app-gift',\r\n templateUrl: './gift.component.html',\r\n providers: []\r\n})\r\nexport class GiftComponent implements OnInit {\r\n data$: Observable;\r\n oldData: Gift[];\r\n total$: Observable;\r\n loading$: Observable;\r\n private selectedBrand;\r\n locationSubscription: Subscription;\r\n submit: boolean;\r\n @ViewChildren(NgbdSortableHeader) headers: QueryList;\r\n\r\n constructor(public service: GiftService,\r\n public ls: LocalStorageService,\r\n public ts: ToastService,\r\n public tss: ToastrService,\r\n public router: Router) {\r\n\r\n this.selectedBrand = this.ls.getSelectedUser().userID;\r\n this.loading$ = service.loading$;\r\n this.submit = false;\r\n }\r\n\r\n ngOnInit() {\r\n this.getData();\r\n }\r\n\r\n getData() {\r\n this.service.getAllData();\r\n this.data$ = this.service.data$;\r\n this.total$ = this.service.total$;\r\n this.loading$ = this.service.loading$;\r\n }\r\n\r\n onSort({ column, direction }: SortEvent) {\r\n this.headers.forEach(header => {\r\n if (header.sortable !== column) {\r\n header.direction = '';\r\n }\r\n });\r\n this.service.sortColumn = column;\r\n this.service.sortDirection = direction;\r\n }\r\n\r\n Edit(gift) {\r\n this.router.navigate([\"admin/gift/edit\", gift]);\r\n }\r\n\r\n Delete(obj) {\r\n if (confirm(\"Are you sure to delete? \")) {\r\n this.service.delete(obj).subscribe((res: any) => {\r\n if (res != 0) {\r\n this.ts.showSuccess(\"Success\", \"Record deleted successfully.\")\r\n this.getData();\r\n }\r\n else {\r\n this.ts.showError(\"Error\", \"Failed to delete record.\");\r\n }\r\n }, error => {\r\n this.ts.showError(\"Error\", \"Failed to delete record.\")\r\n });\r\n }\r\n }\r\n Deactive(id, rowVersion) {\r\n\r\n // this.service.deactive(parseInt(id), rowVersion).subscribe((res: any) => {\r\n // this.alertService.success(\"Gift has been Deactived\");\r\n // this.getBrandData();\r\n // }, error => {\r\n // this.alertService.error(error);\r\n // });\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2FkbWluL21lbnUvaXRlbXMvYWRkaXRlbS9hZGRpdGVtLmNvbXBvbmVudC5jc3MifQ== */\";","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport { ItemsService } from 'src/app/_services/items.service';\r\nimport { ImageuploadComponent } from 'src/app/imageupload/imageupload.component';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\nimport { CategoryService } from 'src/app/_services/category.service';\r\n\r\n@Component({\r\n selector: 'app-additem',\r\n templateUrl: './additem.component.html',\r\n styleUrls: ['./additem.component.css']\r\n})\r\n\r\nexport class AdditemsComponent implements OnInit {\r\n submitted = false;\r\n itemsForm: FormGroup;\r\n loading = false;\r\n loadingItems = false;\r\n Images = [];\r\n CategoryList = [];\r\n CityList = [];\r\n selectedCategoryIds: string[];\r\n selectedCityIds: string[];\r\n\r\n SubCategoryList = [];\r\n selectedSubCategoryIds: string[];\r\n\r\n @ViewChild(ImageuploadComponent, { static: true }) imgComp;\r\n\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n public ts: ToastService,\r\n private itemsService: ItemsService\r\n ) {\r\n\r\n this.createForm();\r\n this.loadCategory();\r\n this.loadSubCategory();\r\n this.loadCity();\r\n }\r\n\r\n ngOnInit() {\r\n this.setSelecteditem();\r\n }\r\n\r\n get f() { return this.itemsForm.controls; }\r\n\r\n private createForm() {\r\n this.itemsForm = this.formBuilder.group({\r\n title: ['', Validators.required],\r\n arabicTitle: [''],\r\n description: [''],\r\n statusID: [true],\r\n isFeatured: [false],\r\n inStock: [false],\r\n displayOrder: [0],\r\n cost: [0],\r\n stockQty: [0],\r\n discountedPrice: [0],\r\n categoryID: [null],\r\n price: [0, Validators.required],\r\n itemID: 0,\r\n image: [''],\r\n sku: [''],\r\n barcode: [''],\r\n hoveredImage: [''],\r\n categories: [],\r\n cities: [],\r\n subcategories: [],\r\n color: [''],\r\n doublePrice: [0],\r\n file: [''],\r\n imagesSource: [''],\r\n itemImages: [],\r\n isDoubleQty: [false]\r\n });\r\n }\r\n onFileChange(event) {\r\n if (event.target.files && event.target.files[0]) {\r\n var filesAmount = event.target.files.length;\r\n for (let i = 0; i < filesAmount; i++) {\r\n var reader = new FileReader();\r\n debugger;\r\n var fileSize = event.target.files[i].size / 100000;\r\n if (fileSize > 5) { alert(\"Filesize exceed 500 KB\"); }\r\n else {\r\n reader.onload = (event: any) => {\r\n console.log(event.target.result);\r\n this.Images.push(event.target.result);\r\n this.itemsForm.patchValue({\r\n imagesSource: this.Images\r\n });\r\n }\r\n reader.readAsDataURL(event.target.files[i]);\r\n }\r\n }\r\n }\r\n }\r\n\r\n private editForm(obj) {\r\n this.f.title.setValue(obj.title);\r\n this.f.arabicTitle.setValue(obj.arabicTitle);\r\n this.f.displayOrder.setValue(obj.displayOrder);\r\n this.f.price.setValue(obj.price);\r\n this.f.cost.setValue(obj.cost);\r\n this.f.discountedPrice.setValue(obj.discountedPrice);\r\n this.f.stockQty.setValue(obj.stockQty);\r\n this.f.itemID.setValue(obj.itemID);\r\n this.f.image.setValue(obj.image);\r\n this.f.color.setValue(obj.color);\r\n this.f.doublePrice.setValue(obj.doublePrice);\r\n this.f.hoveredImage.setValue(obj.image);\r\n this.f.description.setValue(obj.description);\r\n this.f.statusID.setValue(obj.statusID === 1 ? true : false);\r\n this.f.isFeatured.setValue(obj.isFeatured);\r\n this.f.isDoubleQty.setValue(obj.isDoubleQty);\r\n\r\n if (obj.categories != \"\") {\r\n var stringToConvert = obj.categories;\r\n this.selectedCategoryIds = stringToConvert.split(',').map(Number);\r\n this.f.categories.setValue(obj.categories);\r\n }\r\n\r\n if (obj.subcategories != \"\") {\r\n var stringToConvert = obj.subcategories;\r\n this.selectedSubCategoryIds = stringToConvert.split(',').map(Number);\r\n this.f.subcategories.setValue(obj.subcategories);\r\n }\r\n if (obj.cities != \"\") {\r\n var stringToConvert = obj.cities;\r\n this.selectedCityIds = stringToConvert.split(',').map(Number);\r\n this.f.cities.setValue(obj.cities);\r\n }\r\n // this.imgComp.imageUrl = obj.image;\r\n\r\n this.loadItemImages(this.f.itemID.value);\r\n }\r\n\r\n setSelecteditem() {\r\n this.route.paramMap.subscribe(param => {\r\n const sid = +param.get('id');\r\n if (sid) {\r\n this.loadingItems = true;\r\n this.f.itemID.setValue(sid);\r\n this.itemsService.getById(sid).subscribe(res => {\r\n //Set Forms\r\n this.editForm(res);\r\n this.loadingItems = false;\r\n });\r\n }\r\n })\r\n }\r\n\r\n onSubmit() {\r\n debugger\r\n this.itemsForm.markAllAsTouched();\r\n this.submitted = true;\r\n if (this.itemsForm.invalid) { return; }\r\n this.loading = true;\r\n this.f.categories.setValue(this.selectedCategoryIds == undefined ? \"\" : this.selectedCategoryIds.toString());\r\n this.f.subcategories.setValue(this.selectedSubCategoryIds == undefined ? \"\" : this.selectedSubCategoryIds.toString());\r\n this.f.cities.setValue(this.selectedCityIds == undefined ? \"\" : this.selectedCityIds.toString());\r\n this.f.statusID.setValue(this.f.statusID.value === true ? 1 : 2);\r\n if (parseInt(this.f.itemID.value) === 0) {\r\n //Insert item\r\n this.itemsService.insert(this.itemsForm.value).subscribe(data => {\r\n if (data != 0) {\r\n this.ts.showSuccess(\"Success\", \"Record added successfully.\")\r\n this.router.navigate(['/admin/item']);\r\n }\r\n this.loading = false;\r\n }, error => {\r\n this.ts.showError(\"Error\", \"Failed to insert record.\")\r\n this.loading = false;\r\n });\r\n\r\n } else {\r\n //Update item\r\n this.itemsService.update(this.itemsForm.value).subscribe(data => {\r\n this.loading = false;\r\n if (data != 0) {\r\n this.ts.showSuccess(\"Success\", \"Record updated successfully.\")\r\n this.router.navigate(['/admin/item']);\r\n }\r\n }, error => {\r\n this.ts.showError(\"Error\", \"Failed to update record.\")\r\n this.loading = false;\r\n });\r\n }\r\n }\r\n\r\n private loadCategory() {\r\n this.itemsService.loadCategories().subscribe((res: any) => {\r\n this.CategoryList = res;\r\n });\r\n }\r\n private loadCity() {\r\n this.itemsService.loadCities().subscribe((res: any) => {\r\n this.CityList = res;\r\n });\r\n }\r\n private loadItemImages(id) {\r\n this.itemsService.loadItemImages(id).subscribe((res: any) => {\r\n this.Images = res;\r\n this.f.imagesSource.setValue(this.Images);\r\n });\r\n }\r\n private loadSubCategory() {\r\n this.itemsService.loadSubCategories().subscribe((res: any) => {\r\n this.SubCategoryList = res;\r\n });\r\n }\r\n removeImage(obj) {\r\n const index = this.Images.indexOf(obj);\r\n this.Images.splice(index, 1);\r\n\r\n this.f.imagesSource.setValue(this.Images);\r\n }\r\n}\r\n","import { Component, OnInit, QueryList, ViewChildren } from '@angular/core';\r\nimport { Observable, Subscription } from 'rxjs';\r\nimport { NgbdSortableHeader, SortEvent } from 'src/app/_directives/sortable.directive';\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { Router } from '@angular/router';\r\nimport { Items } from 'src/app/_models/Items';\r\nimport { ItemsService } from 'src/app/_services/items.service';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\n\r\n@Component({\r\n selector: 'app-items',\r\n templateUrl: './items.component.html',\r\n providers: []\r\n})\r\n\r\nexport class ItemsComponent implements OnInit {\r\n data$: Observable;\r\n oldData: Items[];\r\n total$: Observable;\r\n loading$: Observable;\r\n private selectedBrand;\r\n locationSubscription: Subscription;\r\n submit: boolean;\r\n @ViewChildren(NgbdSortableHeader) headers: QueryList;\r\n\r\n constructor(public service: ItemsService,\r\n public ls: LocalStorageService,\r\n public ts: ToastService,\r\n public router: Router) {\r\n this.loading$ = service.loading$;\r\n this.submit = false;\r\n }\r\n\r\n ngOnInit() {\r\n this.getData();\r\n }\r\n\r\n getData() {\r\n this.service.getAllData();\r\n this.data$ = this.service.data$;\r\n this.total$ = this.service.total$;\r\n this.loading$ = this.service.loading$;\r\n }\r\n\r\n onSort({ column, direction }: SortEvent) {\r\n this.headers.forEach(header => {\r\n if (header.sortable !== column) {\r\n header.direction = '';\r\n }\r\n });\r\n this.service.sortColumn = column;\r\n this.service.sortDirection = direction;\r\n }\r\n\r\n Edit(items) {\r\n this.router.navigate([\"admin/item/edit\", items]);\r\n }\r\n\r\n Delete(obj) {\r\n if (confirm(\"Are you sure to delete? \")) {\r\n this.service.delete(obj).subscribe((res: any) => {\r\n if (res != 0) {\r\n this.ts.showSuccess(\"Success\", \"Record deleted successfully.\")\r\n this.getData();\r\n }\r\n else\r\n this.ts.showError(\"Error\", \"Failed to delete record.\");\r\n\r\n }, error => {\r\n this.ts.showError(\"Error\", \"Failed to delete record.\")\r\n });\r\n }\r\n }\r\n\r\n Deactive(id, rowVersion) {\r\n\r\n // this.service.deactive(parseInt(id), rowVersion).subscribe((res: any) => {\r\n // this.alertService.success(\"items has been Deactived\");\r\n // this.getBrandData();\r\n // }, error => {\r\n // this.alertService.error(error);\r\n // });\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2FkbWluL21lbnUvbW9kaWZpZXJzL2FkZG1vZGlmaWVyL2FkZG1vZGlmaWVyLmNvbXBvbmVudC5jc3MifQ== */\";","import { Component, OnInit, Input, ViewChild } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport { ImageuploadComponent } from 'src/app/imageupload/imageupload.component';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { ModifiersService } from 'src/app/_services/modifiers.service';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\n\r\n@Component({\r\n selector: 'app-addmodifier',\r\n templateUrl: './addmodifier.component.html',\r\n styleUrls: ['./addmodifier.component.css']\r\n})\r\nexport class AddmodifierComponent implements OnInit {\r\n submitted = false;\r\n modifierForm: FormGroup;\r\n loading = false;\r\n loadingmodifier = false;\r\n @ViewChild(ImageuploadComponent, { static: true }) imgComp;\r\n\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n public ts: ToastService,\r\n private ls: LocalStorageService,\r\n private modifierService: ModifiersService\r\n\r\n ) {\r\n this.createForm();\r\n }\r\n\r\n ngOnInit() {\r\n this.setSelectedmodifier();\r\n }\r\n\r\n get f() { return this.modifierForm.controls; }\r\n\r\n private createForm() {\r\n this.modifierForm = this.formBuilder.group({\r\n name: ['', Validators.required],\r\n arabicName: [''],\r\n description: [''],\r\n statusID: [true],\r\n displayOrder: [0],\r\n price: [0],\r\n modifierID: 0,\r\n image: [''],\r\n brandID: this.ls.getSelectedUser().brandID,\r\n locationID: null\r\n });\r\n }\r\n\r\n private editForm(obj) {\r\n this.f.name.setValue(obj.name);\r\n this.f.arabicName.setValue(obj.arabicName);\r\n this.f.displayOrder.setValue(obj.displayOrder);\r\n this.f.price.setValue(obj.price);\r\n this.f.modifierID.setValue(obj.modifierID);\r\n this.f.image.setValue(obj.image);\r\n this.f.description.setValue(obj.description);\r\n this.f.statusID.setValue(obj.statusID === 1 ? true : false);\r\n this.imgComp.imageUrl = obj.image;\r\n }\r\n\r\n setSelectedmodifier() {\r\n this.route.paramMap.subscribe(param => {\r\n const sid = +param.get('id');\r\n if (sid) {\r\n this.loadingmodifier = true;\r\n this.f.modifierID.setValue(sid);\r\n this.modifierService.getById(sid, this.f.brandID.value).subscribe(res => {\r\n //Set Forms\r\n this.editForm(res);\r\n this.loadingmodifier = false;\r\n });\r\n }\r\n })\r\n }\r\n\r\n onSubmit() {\r\n this.modifierForm.markAllAsTouched();\r\n this.submitted = true;\r\n if (this.modifierForm.invalid) { return; }\r\n this.loading = true;\r\n this.f.statusID.setValue(this.f.statusID.value === true ? 1 : 2);\r\n this.f.image.setValue(this.imgComp.imageUrl);\r\n if (parseInt(this.f.modifierID.value) === 0) {\r\n\r\n //Insert modifier\r\n console.log(JSON.stringify(this.modifierForm.value));\r\n this.modifierService.insert(this.modifierForm.value).subscribe(data => {\r\n if (data != 0) {\r\n this.ts.showSuccess(\"Success\", \"Record added successfully.\")\r\n this.router.navigate(['/admin/modifier']);\r\n }\r\n // this.alertService.success(\"Item has been created\");\r\n this.loading = false;\r\n }, error => {\r\n this.ts.showError(\"Error\", \"Failed to insert record.\")\r\n this.loading = false;\r\n });\r\n\r\n } else {\r\n //Update modifier\r\n this.modifierService.update(this.modifierForm.value).subscribe(data => {\r\n this.loading = false;\r\n if (data != 0) {\r\n this.ts.showSuccess(\"Success\", \"Record updated successfully.\")\r\n this.router.navigate(['/admin/modifier']);\r\n }\r\n }, error => {\r\n this.ts.showError(\"Error\", \"Failed to update record.\")\r\n this.loading = false;\r\n });\r\n }\r\n }\r\n}\r\n","\r\nimport { Component, OnInit, QueryList, ViewChildren } from '@angular/core';\r\nimport { Observable, Subscription } from 'rxjs';\r\nimport { NgbdSortableHeader, SortEvent } from 'src/app/_directives/sortable.directive';\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { Router } from '@angular/router';\r\nimport { Modifiers } from 'src/app/_models/Modifiers';\r\nimport { ModifiersService } from 'src/app/_services/modifiers.service';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\n\r\n@Component({\r\n selector: 'app-modifiers',\r\n templateUrl: './modifiers.component.html',\r\n providers: []\r\n})\r\n\r\nexport class ModifiersComponent implements OnInit {\r\n data$: Observable;\r\n oldData: Modifiers[];\r\n total$: Observable;\r\n loading$: Observable;\r\n private selectedBrand;\r\n locationSubscription: Subscription;\r\n submit: boolean;\r\n @ViewChildren(NgbdSortableHeader) headers: QueryList;\r\n\r\n constructor(public service: ModifiersService,\r\n public ls: LocalStorageService,\r\n public ts: ToastService,\r\n public router: Router) {\r\n this.selectedBrand = this.ls.getSelectedUser().brandID;\r\n this.loading$ = service.loading$;\r\n this.submit = false;\r\n }\r\n\r\n ngOnInit() {\r\n this.getData();\r\n }\r\n\r\n getData() {\r\n this.service.getAllData(this.selectedBrand);\r\n this.data$ = this.service.data$;\r\n this.total$ = this.service.total$;\r\n this.loading$ = this.service.loading$;\r\n }\r\n\r\n onSort({ column, direction }: SortEvent) {\r\n this.headers.forEach(header => {\r\n if (header.sortable !== column) {\r\n header.direction = '';\r\n }\r\n });\r\n this.service.sortColumn = column;\r\n this.service.sortDirection = direction;\r\n }\r\n\r\n Edit(modifiers) {\r\n this.router.navigate([\"admin/modifier/edit\", modifiers]);\r\n }\r\n\r\n Delete(obj) {\r\n if (confirm(\"Are you sure to delete? \")) {\r\n this.service.delete(obj).subscribe((res: any) => {\r\n if (res != 0) {\r\n this.ts.showSuccess(\"Success\", \"Record deleted successfully.\")\r\n this.getData();\r\n }\r\n else\r\n this.ts.showError(\"Error\", \"Failed to delete record.\");\r\n\r\n }, error => {\r\n this.ts.showError(\"Error\", \"Failed to delete record.\")\r\n });\r\n }\r\n }\r\n Deactive(id, rowVersion) {\r\n\r\n // this.service.deactive(parseInt(id), rowVersion).subscribe((res: any) => {\r\n // this.alertService.success(\"Modifiers has been Deactived\");\r\n // this.getBrandData();\r\n // }, error => {\r\n // this.alertService.error(error);\r\n // });\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2FkbWluL21lbnUvc3ViY2F0ZWdvcnkvYWRkc3ViY2F0ZWdvcnkvYWRkc3ViY2F0ZWdvcnkuY29tcG9uZW50LmNzcyJ9 */\";","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport { SubcategoryService } from 'src/app/_services/subcategory.service';\r\nimport { ImageuploadComponent } from 'src/app/imageupload/imageupload.component';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\n\r\n@Component({\r\n selector: 'app-addsubcategory',\r\n templateUrl: './addsubcategory.component.html',\r\n styleUrls: ['./addsubcategory.component.css']\r\n})\r\nexport class AddsubcategoryComponent implements OnInit {\r\n\r\n submitted = false;\r\n subcategoryForm: FormGroup;\r\n loading = false;\r\n loadingSubcategory = false;\r\n ButtonText = \"Save\";\r\n CategoryList = [];\r\n selectedCategoryIds: string[];\r\n @ViewChild(ImageuploadComponent, { static: true }) imgComp;\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private ls: LocalStorageService,\r\n public ts :ToastService,\r\n private subcategoryService: SubcategoryService\r\n\r\n ) {\r\n this.createForm();\r\n this.loadCategory();\r\n }\r\n\r\n ngOnInit() {\r\n this.setSelectedSubcategory();\r\n }\r\n\r\n get f() { return this.subcategoryForm.controls; }\r\n\r\n private createForm() {\r\n this.subcategoryForm = this.formBuilder.group({\r\n title: ['', Validators.required],\r\n arabicTitle: [''],\r\n statusID: [true],\r\n subCategoryID: 0,\r\n image: [''],\r\n categories: [],\r\n });\r\n }\r\n\r\n private editForm(obj) {\r\n\r\n this.f.title.setValue(obj.title);\r\n this.f.arabicTitle.setValue(obj.arabicTitle);\r\n this.f.subCategoryID.setValue(obj.subCategoryID);\r\n this.f.statusID.setValue(obj.statusID === 1 ? true : false);\r\n\r\n if (obj.categories != \"\") {\r\n var stringToConvert = obj.categories;\r\n this.selectedCategoryIds = stringToConvert.split(',').map(Number);\r\n this.f.categories.setValue(obj.categories);\r\n }\r\n }\r\n\r\n setSelectedSubcategory() { \r\n this.route.paramMap.subscribe(param => {\r\n const sid = +param.get('id');\r\n if (sid) {\r\n this.loadingSubcategory = true;\r\n this.f.subCategoryID.setValue(sid);\r\n this.subcategoryService.getById(sid).subscribe(res => {\r\n //Set Forms\r\n this.editForm(res);\r\n this.loadingSubcategory = false;\r\n });\r\n }\r\n })\r\n }\r\n\r\n onSubmit() {\r\n \r\n this.subcategoryForm.markAllAsTouched();\r\n this.submitted = true;\r\n if (this.subcategoryForm.invalid) { return; }\r\n this.loading = true;\r\n this.f.statusID.setValue(this.f.statusID.value === true ? 1 : 2);\r\n this.f.categories.setValue(this.selectedCategoryIds == undefined ? \"\" : this.selectedCategoryIds.toString());\r\n if (parseInt(this.f.subCategoryID.value) === 0) {\r\n //Insert subcategory\r\n this.subcategoryService.insert(this.subcategoryForm.value).subscribe(data => {\r\n if (data != 0) {\r\n this.ts.showSuccess(\"Success\",\"Record added successfully.\")\r\n this.router.navigate(['/admin/subcategory']);\r\n }\r\n this.loading = false;\r\n }, error => {\r\n this.ts.showError(\"Error\",\"Failed to insert record.\")\r\n this.loading = false;\r\n });\r\n\r\n } else {\r\n //Update subcategory\r\n this.subcategoryService.update(this.subcategoryForm.value).subscribe(data => {\r\n this.loading = false;\r\n if (data != 0) {\r\n this.ts.showSuccess(\"Success\",\"Record updated successfully.\")\r\n this.router.navigate(['/admin/subcategory']);\r\n }\r\n }, error => {\r\n this.ts.showError(\"Error\",\"Failed to update record.\")\r\n this.loading = false;\r\n });\r\n }\r\n }\r\n private loadCategory() {\r\n this.subcategoryService.loadCategories().subscribe((res: any) => {\r\n this.CategoryList = res;\r\n });\r\n }\r\n}\r\n","\r\nimport { Component, OnInit, QueryList, ViewChildren } from '@angular/core';\r\nimport { Observable, Subscription } from 'rxjs';\r\nimport { AddsubcategoryComponent } from './addsubcategory/addsubcategory.component';\r\nimport { NgbdSortableHeader, SortEvent } from 'src/app/_directives/sortable.directive';\r\nimport { Subcategory } from 'src/app/_models/Subcategory';\r\nimport { SubcategoryService } from 'src/app/_services/subcategory.service';\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { Router } from '@angular/router';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\nimport { ToastrService } from 'ngx-toastr';\r\n\r\n@Component({\r\n selector: 'app-subcategory',\r\n templateUrl: './subcategory.component.html',\r\n providers: []\r\n})\r\nexport class SubcategoryComponent implements OnInit {\r\n data$: Observable;\r\n oldData: Subcategory[];\r\n total$: Observable;\r\n loading$: Observable;\r\n private selectedBrand;\r\n locationSubscription: Subscription;\r\n submit: boolean;\r\n @ViewChildren(NgbdSortableHeader) headers: QueryList;\r\n\r\n constructor(public service: SubcategoryService,\r\n public ls: LocalStorageService,\r\n public ts: ToastService,\r\n public tss: ToastrService,\r\n public router: Router) {\r\n\r\n this.selectedBrand = this.ls.getSelectedUser().userID;\r\n this.loading$ = service.loading$;\r\n this.submit = false;\r\n }\r\n\r\n ngOnInit() {\r\n this.getData();\r\n }\r\n\r\n getData() {\r\n this.service.getAllData();\r\n this.data$ = this.service.data$;\r\n this.total$ = this.service.total$;\r\n this.loading$ = this.service.loading$;\r\n }\r\n\r\n onSort({ column, direction }: SortEvent) {\r\n this.headers.forEach(header => {\r\n if (header.sortable !== column) {\r\n header.direction = '';\r\n }\r\n });\r\n this.service.sortColumn = column;\r\n this.service.sortDirection = direction;\r\n }\r\n\r\n Edit(subcategory) {\r\n this.router.navigate([\"admin/subcategory/edit\", subcategory]);\r\n }\r\n\r\n Delete(obj) {\r\n if (confirm(\"Are you sure to delete? \")) {\r\n this.service.delete(obj).subscribe((res: any) => {\r\n if (res != 0) {\r\n this.ts.showSuccess(\"Success\", \"Record deleted successfully.\")\r\n this.getData();\r\n }\r\n else {\r\n this.ts.showError(\"Error\", \"Failed to delete record.\");\r\n }\r\n }, error => {\r\n this.ts.showError(\"Error\", \"Failed to delete record.\")\r\n });\r\n }\r\n }\r\n}\r\n","import { Component, OnInit, QueryList, ViewChildren, ViewChild } from '@angular/core';\r\nimport { Observable, of, Subscription } from 'rxjs';\r\nimport { NgbdSortableHeader } from 'src/app/_directives/sortable.directive';\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { Router } from '@angular/router';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\nimport { ReportService } from 'src/app/_services/report.service';\r\nimport { SalescategorywiseReport } from 'src/app/_models/Report';\r\nimport { delay, map } from 'rxjs/operators';\r\nimport { NgbdDatepickerRangePopup } from 'src/app/datepicker-range/datepicker-range-popup';\r\nimport { Location } from 'src/app/_models/Location';\r\nimport { ExcelService } from 'src/ExportExcel/excel.service';\r\n@Component({\r\n selector: 'app-salescategorywise',\r\n templateUrl: './salescategorywise.component.html',\r\n providers: [ExcelService]\r\n})\r\n\r\nexport class SalescategorywiseComponent implements OnInit {\r\n data$: Observable;\r\n\r\n @ViewChild(NgbdDatepickerRangePopup, { static: true }) _datepicker;\r\n private selectedBrand;\r\n private selectedLocation;\r\n Locations: Location[] = [];\r\n selectedLocations = [];\r\n locationID = 0;\r\n locationSubscription: Subscription;\r\n submit: boolean;\r\n salesCategoryWise: SalescategorywiseReport[] = [];\r\n @ViewChildren(NgbdSortableHeader) headers: QueryList;\r\n @ViewChild('locationDrp') drplocation: any;\r\n constructor(public service: ReportService,\r\n public ls: LocalStorageService,\r\n public ts: ToastService,\r\n public excelService: ExcelService,\r\n public router: Router) {\r\n // this.selectedBrand = this.ls.getSelectedUser().brandID;\r\n\r\n }\r\n\r\n ngOnInit() {\r\n this.getData();\r\n }\r\n exportAsXLSX(): void {\r\n\r\n this.excelService.exportAsExcelFile(this.salesCategoryWise, 'Report_Export');\r\n }\r\n getData() {\r\n this.service.SalesCategorywiseRpt( this.parseDate(this._datepicker.fromDate), this.parseDate(this._datepicker.toDate))\r\n .subscribe((res: any) => {\r\n if (res != null) {\r\n \r\n this.salesCategoryWise = res;\r\n }\r\n else\r\n this.ts.showError(\"Error\", \"Something went wrong\");\r\n\r\n }, error => {\r\n this.ts.showError(\"Error\", \"Failed to delete record.\")\r\n });\r\n }\r\n\r\n parseDate(obj) {\r\n return obj.year + \"-\" + obj.month + \"-\" + obj.day;;\r\n }\r\n loadLocations() {\r\n this.service.loadLocations(this.selectedBrand).subscribe((res: any) => {\r\n\r\n this.Locations = res;\r\n this.locationID = this.selectedLocation;\r\n\r\n this.loadLocationsMulti()\r\n .pipe(map(x => x.filter(y => !y.disabled)))\r\n .subscribe((res) => {\r\n this.Locations = res;\r\n var arr = [];\r\n this.Locations.forEach(element => {\r\n arr.push(element.locationID);\r\n });\r\n this.selectedLocations = arr;\r\n\r\n this.getData();\r\n });\r\n\r\n });\r\n\r\n }\r\n loadLocationsMulti(term: string = null): Observable {\r\n let items = this.Locations;\r\n if (term) {\r\n items = items.filter(x => x.name.toLocaleLowerCase().indexOf(term.toLocaleLowerCase()) > -1);\r\n }\r\n return of(items).pipe(delay(500));\r\n }\r\n Filter() {\r\n \r\n this.getData();\r\n }\r\n}\r\n","import { Component, OnInit, QueryList, ViewChildren, ViewChild } from '@angular/core';\r\nimport { Observable, of, Subscription } from 'rxjs';\r\nimport { NgbdSortableHeader } from 'src/app/_directives/sortable.directive';\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { Router } from '@angular/router';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\nimport { ReportService } from 'src/app/_services/report.service';\r\nimport { SalescustomerwiseReport } from 'src/app/_models/Report';\r\nimport { NgbdDatepickerRangePopup } from 'src/app/datepicker-range/datepicker-range-popup';\r\nimport { delay, map } from 'rxjs/operators';\r\nimport { Location } from 'src/app/_models/Location';\r\n@Component({\r\n selector: 'app-salescustomerwise',\r\n templateUrl: './salescustomerwise.component.html',\r\n providers: []\r\n})\r\n\r\nexport class SalescustomerwiseComponent implements OnInit {\r\n data$: Observable;\r\n\r\n @ViewChild(NgbdDatepickerRangePopup, { static: true }) _datepicker;\r\n private selectedBrand;\r\n private selectedLocation;\r\n Locations: Location[] = [];\r\n selectedLocations = [];\r\n locationID = 0;\r\n locationSubscription: Subscription;\r\n submit: boolean;\r\n @ViewChildren(NgbdSortableHeader) headers: QueryList;\r\n @ViewChild('locationDrp') drplocation: any;\r\n constructor(public service: ReportService,\r\n public ls: LocalStorageService,\r\n public ts: ToastService,\r\n public router: Router) {\r\n this.selectedBrand = this.ls.getSelectedUser().brandID;\r\n // this.selectedLocation = this.ls.getSelectedLocation().locationID\r\n\r\n this.loadLocations();\r\n }\r\n\r\n ngOnInit() {\r\n \r\n }\r\n\r\n getData(locaionID) {\r\n this.service.SalesCustomerwiseRpt(0, this.parseDate(this._datepicker.fromDate), this.parseDate(this._datepicker.toDate))\r\n .subscribe((res: any) => {\r\n if (res != null) {\r\n this.data$ = res;\r\n }\r\n else\r\n this.ts.showError(\"Error\", \"Something went wrong\");\r\n\r\n }, error => {\r\n this.ts.showError(\"Error\", \"Failed to delete record.\")\r\n });\r\n }\r\n\r\n parseDate(obj) {\r\n return obj.year + \"-\" + obj.month + \"-\" + obj.day;;\r\n }\r\n private loadLocations() {\r\n this.service.loadLocations(this.selectedBrand).subscribe((res: any) => {\r\n\r\n this.Locations = res;\r\n this.locationID = this.selectedLocation;\r\n\r\n this.loadLocationsMulti()\r\n .pipe(map(x => x.filter(y => !y.disabled)))\r\n .subscribe((res) => {\r\n this.Locations = res;\r\n var arr=[];\r\n this.Locations.forEach(element => {\r\n arr.push(element.locationID);\r\n });\r\n this.selectedLocations=arr;\r\n\r\n this.getData(this.selectedLocations.toString());\r\n \r\n });\r\n\r\n });\r\n \r\n }\r\n loadLocationsMulti(term: string = null): Observable {\r\n let items = this.Locations;\r\n if (term) {\r\n items = items.filter(x => x.name.toLocaleLowerCase().indexOf(term.toLocaleLowerCase()) > -1);\r\n }\r\n return of(items).pipe(delay(500));\r\n }\r\n Filter() {\r\n debugger\r\n this.getData(this.selectedLocations.toString());\r\n }\r\n}\r\n","import { Component, OnInit, QueryList, ViewChildren, ViewChild } from '@angular/core';\r\nimport { Observable, of, Subscription } from 'rxjs';\r\nimport { NgbdSortableHeader } from 'src/app/_directives/sortable.directive';\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { Router } from '@angular/router';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\nimport { ReportService } from 'src/app/_services/report.service';\r\nimport { SalesdetailReport } from 'src/app/_models/Report';\r\nimport { Location } from 'src/app/_models/Location';\r\nimport { delay, map } from 'rxjs/operators';\r\nimport { NgbdDatepickerRangePopup } from 'src/app/datepicker-range/datepicker-range-popup';\r\nimport { ExcelService } from 'src/ExportExcel/excel.service';\r\n@Component({\r\n selector: 'app-salesdetail',\r\n templateUrl: './salesdetail.component.html',\r\n providers: [ExcelService]\r\n})\r\n\r\nexport class SalesdetailComponent implements OnInit {\r\n data$: Observable;\r\n\r\n\r\n private selectedBrand;\r\n private selectedLocation;\r\n Locations: Location[] = [];\r\n selectedLocations = [];\r\n locationID = 0;\r\n locationSubscription: Subscription;\r\n submit: boolean;\r\n orderDetails: SalesdetailReport[] = [];\r\n // @ViewChildren(NgbdSortableHeader) headers: QueryList;\r\n // @ViewChild('locationDrp') drplocation: any;\r\n @ViewChild(NgbdDatepickerRangePopup, { static: true }) _datepicker;\r\n constructor(public service: ReportService,\r\n public ls: LocalStorageService,\r\n public ts: ToastService,\r\n public excelService: ExcelService,\r\n public router: Router) {\r\n this.selectedBrand = this.ls.getSelectedUser().brandID;\r\n // this.selectedLocation = this.ls.getSelectedLocation().locationID\r\n\r\n }\r\n\r\n ngOnInit() {\r\n\r\n this.getData();\r\n }\r\n exportAsXLSX(): void {\r\n\r\n this.excelService.exportAsExcelFile(this.orderDetails, 'Report_Export');\r\n }\r\n getData() {\r\n \r\n this.service.SalesDetailRpt( this.parseDate(this._datepicker.fromDate), this.parseDate(this._datepicker.toDate))\r\n .subscribe((res: any) => {\r\n if (res != null) {\r\n \r\n this.orderDetails = res;\r\n }\r\n else\r\n this.ts.showError(\"Error\", \"Something went wrong\");\r\n\r\n }, error => {\r\n this.ts.showError(\"Error\", \"Failed to delete record.\")\r\n });\r\n }\r\n\r\n parseDate(obj) {\r\n return obj.year + \"-\" + obj.month + \"-\" + obj.day;;\r\n }\r\n loadLocations() {\r\n this.service.loadLocations(this.selectedBrand).subscribe((res: any) => {\r\n\r\n this.Locations = res;\r\n this.locationID = this.selectedLocation;\r\n\r\n this.loadLocationsMulti()\r\n .pipe(map(x => x.filter(y => !y.disabled)))\r\n .subscribe((res) => {\r\n this.Locations = res;\r\n var arr=[];\r\n this.Locations.forEach(element => {\r\n arr.push(element.locationID);\r\n });\r\n this.selectedLocations=arr;\r\n // this.getData(this.selectedLocations.toString()); \r\n });\r\n\r\n });\r\n \r\n }\r\n loadLocationsMulti(term: string = null): Observable {\r\n let items = this.Locations;\r\n if (term) {\r\n items = items.filter(x => x.name.toLocaleLowerCase().indexOf(term.toLocaleLowerCase()) > -1);\r\n }\r\n return of(items).pipe(delay(500));\r\n }\r\n Filter() {\r\n \r\n this.getData();\r\n }\r\n}\r\n","import { Component, OnInit, QueryList, ViewChildren, ViewChild } from '@angular/core';\r\nimport { Observable, of, Subscription } from 'rxjs';\r\nimport { NgbdSortableHeader } from 'src/app/_directives/sortable.directive';\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { Router } from '@angular/router';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\nimport { ReportService } from 'src/app/_services/report.service';\r\nimport { SalesitemwiseReport } from 'src/app/_models/Report';\r\nimport { Location } from 'src/app/_models/Location';\r\nimport { NgbdDatepickerRangePopup } from 'src/app/datepicker-range/datepicker-range-popup';\r\nimport { delay, map } from 'rxjs/operators';\r\nimport { ExcelService } from 'src/ExportExcel/excel.service';\r\n@Component({\r\n selector: 'app-salesitemwise',\r\n templateUrl: './salesitemwise.component.html',\r\n providers: [ExcelService]\r\n})\r\n\r\nexport class SalesitemwiseComponent implements OnInit {\r\n data$: Observable;\r\n\r\n @ViewChild(NgbdDatepickerRangePopup, { static: true }) _datepicker;\r\n private selectedBrand;\r\n private selectedLocation;\r\n Locations: Location[] = [];\r\n selectedLocations = [];\r\n locationID = 0;\r\n locationSubscription: Subscription;\r\n submit: boolean;\r\n salesItemWise: SalesitemwiseReport[] = [];\r\n @ViewChildren(NgbdSortableHeader) headers: QueryList;\r\n @ViewChild('locationDrp') drplocation: any;\r\n constructor(public service: ReportService,\r\n public ls: LocalStorageService,\r\n public ts: ToastService,\r\n public excelService: ExcelService,\r\n public router: Router) {\r\n // this.selectedBrand = this.ls.getSelectedUser().brandID;\r\n }\r\n\r\n ngOnInit() {\r\n this.getData();\r\n }\r\n\r\n getData() {\r\n\r\n this.service.SalesItemwiseRpt(this.parseDate(this._datepicker.fromDate), this.parseDate(this._datepicker.toDate))\r\n .subscribe((res: any) => {\r\n if (res != null) {\r\n\r\n this.salesItemWise = res;\r\n }\r\n else\r\n this.ts.showError(\"Error\", \"Something went wrong\");\r\n\r\n }, error => {\r\n this.ts.showError(\"Error\", \"Failed to delete record.\")\r\n });\r\n }\r\n\r\n parseDate(obj) {\r\n return obj.year + \"-\" + obj.month + \"-\" + obj.day;;\r\n }\r\n\r\n loadLocationsMulti(term: string = null): Observable {\r\n let items = this.Locations;\r\n if (term) {\r\n items = items.filter(x => x.name.toLocaleLowerCase().indexOf(term.toLocaleLowerCase()) > -1);\r\n }\r\n return of(items).pipe(delay(500));\r\n }\r\n Filter() {\r\n\r\n this.getData();\r\n }\r\n exportAsXLSX(): void {\r\n\r\n this.excelService.exportAsExcelFile(this.salesItemWise, 'Report_Export');\r\n }\r\n private loadLocations() {\r\n this.service.loadLocations(this.selectedBrand).subscribe((res: any) => {\r\n\r\n this.Locations = res;\r\n this.locationID = this.selectedLocation;\r\n\r\n this.loadLocationsMulti()\r\n .pipe(map(x => x.filter(y => !y.disabled)))\r\n .subscribe((res) => {\r\n this.Locations = res;\r\n var arr = [];\r\n this.Locations.forEach(element => {\r\n arr.push(element.locationID);\r\n });\r\n this.selectedLocations = arr;\r\n // this.getData(this.selectedLocations.toString());\r\n });\r\n\r\n });\r\n\r\n }\r\n}\r\n","import { Component, OnInit, QueryList, ViewChildren, ViewChild } from '@angular/core';\r\nimport { Observable, Subscription } from 'rxjs';\r\nimport { NgbdSortableHeader } from 'src/app/_directives/sortable.directive';\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { Router } from '@angular/router';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\nimport { ReportService } from 'src/app/_services/report.service';\r\nimport { SalesuserwiseReport } from 'src/app/_models/Report';\r\n\r\nimport { NgbdDatepickerRangePopup } from 'src/app/datepicker-range/datepicker-range-popup';\r\n@Component({\r\n selector: 'app-salesuserwise',\r\n templateUrl: './salesuserwise.component.html',\r\n providers: []\r\n})\r\n\r\nexport class SalesuserwiseComponent implements OnInit {\r\n data$: Observable;\r\n\r\n @ViewChild(NgbdDatepickerRangePopup, { static: true }) _datepicker;\r\n private selectedBrand;\r\n private selectedLocation;\r\n Locations: []\r\n locationID = 0;\r\n locationSubscription: Subscription;\r\n submit: boolean;\r\n @ViewChildren(NgbdSortableHeader) headers: QueryList;\r\n @ViewChild('locationDrp') drplocation: any;\r\n constructor(public service: ReportService,\r\n public ls: LocalStorageService,\r\n public ts: ToastService,\r\n public router: Router) {\r\n this.selectedBrand = this.ls.getSelectedUser().brandID;\r\n this.selectedLocation = this.ls.getSelectedLocation().locationID\r\n }\r\n\r\n ngOnInit() {\r\n this.getData(this.selectedLocation);\r\n this.loadLocations();\r\n }\r\n\r\n getData(locaionID) {\r\n this.service.SalesDetailRpt( this.parseDate(this._datepicker.fromDate), this.parseDate(this._datepicker.toDate))\r\n .subscribe((res: any) => {\r\n if (res != null) {\r\n this.data$ = res;\r\n }\r\n else\r\n this.ts.showError(\"Error\", \"Something went wrong\");\r\n\r\n }, error => {\r\n this.ts.showError(\"Error\", \"Failed to delete record.\")\r\n });\r\n }\r\n\r\n parseDate(obj) {\r\n return obj.year + \"-\" + obj.month + \"-\" + obj.day;;\r\n }\r\n private loadLocations() {\r\n this.service.loadLocations(this.selectedBrand).subscribe((res: any) => {\r\n\r\n this.Locations = res;\r\n this.locationID=this.selectedLocation ;\r\n });\r\n }\r\n Filter() {\r\n debugger\r\n // this.getData(obj.target.value);\r\n }\r\n \r\n}\r\n","\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { Router } from '@angular/router';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\nimport { ReportService } from 'src/app/_services/report.service';\r\nimport { SummaryReport } from 'src/app/_models/Report';\r\nimport { NgbdDatepickerRangePopup } from 'src/app/datepicker-range/datepicker-range-popup';\r\nimport { ExcelService } from 'src/ExportExcel/excel.service';\r\n\r\n@Component({\r\n selector: 'app-summary',\r\n templateUrl: './summary.component.html',\r\n providers: [ExcelService]\r\n})\r\nexport class SummaryComponent implements OnInit {\r\n public _model = new SummaryReport();\r\n export=[];\r\n locationSubscription: Subscription;\r\n private selectedBrand;\r\n @ViewChild(NgbdDatepickerRangePopup, { static: true }) _datepicker;\r\n constructor(public service: ReportService,\r\n public ls: LocalStorageService,\r\n public excelService: ExcelService,\r\n public ts: ToastService,\r\n public router: Router) {\r\n this.selectedBrand = this.ls.getSelectedUser().brandID;\r\n }\r\n\r\n ngOnInit() {\r\n this.getData();\r\n }\r\n exportAsXLSX(): void {\r\n\r\n this.excelService.exportAsExcelFile(this.export, 'Report_Export');\r\n }\r\n getData() {\r\n\r\n this.service.SalesSummaryRpt(this.parseDate(this._datepicker.fromDate), this.parseDate(this._datepicker.toDate))\r\n .subscribe((res: any) => {\r\n if (res != null) {\r\n\r\n this._model = res[0];\r\n this.export.push(this._model);\r\n }\r\n else\r\n this.ts.showError(\"Error\", \"Something went wrong\");\r\n\r\n }, error => {\r\n this.ts.showError(\"Error\", \"Failed to delete record.\")\r\n });\r\n }\r\n parseDate(obj) {\r\n return obj.year + \"-\" + obj.month + \"-\" + obj.day;;\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2FkbWluL3NhbGVzL2VkaXRvcmRlci9lZGl0b3JkZXIuY29tcG9uZW50LmNzcyJ9 */\";","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\nimport { OrdersService } from 'src/app/_services/orders.service';\r\nimport { OrderDetails } from 'src/app/_models/Orders';\r\nimport { NgbDateStruct } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgbdDatepickerPopup } from 'src/app/datepicker-popup/datepicker-popup';\r\nimport { of } from 'rxjs';\r\n@Component({\r\n selector: 'app-editorder',\r\n templateUrl: './editorder.component.html',\r\n styleUrls: ['./editorder.component.css']\r\n})\r\nexport class EditorderComponent implements OnInit {\r\n submitted = false;\r\n orderForm: FormGroup;\r\n loading = false;\r\n loadingItems = false;\r\n Images = [];\r\n public odetail = new OrderDetails();\r\n OrderDetailList = [];\r\n ItemsList = [];\r\n GiftList = [];\r\n model: NgbDateStruct;\r\n @ViewChild(NgbdDatepickerPopup, { static: true }) dateObj;\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n public ts: ToastService,\r\n private oService: OrdersService\r\n ) {\r\n\r\n this.createForm();\r\n this.loadItems();\r\n this.loadGifts();\r\n // this.loadSubCategory();\r\n this.setSelecteditem();\r\n }\r\n\r\n ngOnInit() {\r\n\r\n }\r\n\r\n get f() { return this.orderForm.controls; }\r\n\r\n private createForm() {\r\n this.orderForm = this.formBuilder.group({\r\n\r\n senderName: [''],\r\n senderEmail: [''],\r\n senderContact: [''],\r\n senderAddress: [''],\r\n customerName: [''],\r\n contactNo: [''],\r\n email: [''],\r\n cardNotes: [''],\r\n address: [''],\r\n nearestPlace: [''],\r\n deliveryDate: [''],\r\n deliveryTime: [''],\r\n placeType: [''],\r\n selectedTime: [''],\r\n orderID: 0,\r\n paymentMethodID: 0,\r\n orderDetails: []\r\n });\r\n }\r\n private editForm(obj) {\r\ndebugger\r\n this.OrderDetailList = obj.orderDetails;\r\n this.f.senderName.setValue(obj.customerOrders.senderName);\r\n this.f.senderEmail.setValue(obj.customerOrders.senderEmail);\r\n this.f.senderContact.setValue(obj.customerOrders.senderContact);\r\n this.f.senderAddress.setValue(obj.customerOrders.senderAddress);\r\n this.f.customerName.setValue(obj.customerOrders.customerName);\r\n this.f.contactNo.setValue(obj.customerOrders.contactNo);\r\n this.f.email.setValue(obj.customerOrders.email);\r\n this.f.address.setValue(obj.customerOrders.address);\r\n this.f.orderID.setValue(obj.order.orderID);\r\n this.f.cardNotes.setValue(obj.customerOrders.cardNotes);\r\n this.f.paymentMethodID.setValue(obj.order.paymentMethodID);\r\n this.f.nearestPlace.setValue(obj.customerOrders.nearestPlace);\r\n this.f.deliveryDate.setValue(obj.customerOrders.deliveryDate);\r\n this.f.deliveryTime.setValue(obj.customerOrders.selectedTime.toString().toLowerCase());\r\n this.f.selectedTime.setValue(obj.customerOrders.selectedTime);\r\n\r\n this.dateObj.model = { day: new Date(obj.customerOrders.deliveryDate).getDate(), month: new Date(obj.customerOrders.deliveryDate).getMonth() + 1, year: new Date(obj.customerOrders.deliveryDate).getFullYear() };\r\n\r\n }\r\n\r\n setSelecteditem() {\r\n this.route.paramMap.subscribe(param => {\r\n const sid = +param.get('id');\r\n if (sid) {\r\n this.loadingItems = true;\r\n this.f.orderID.setValue(sid);\r\n this.oService.getById(sid).subscribe(res => {\r\n //Set Forms\r\n this.editForm(res);\r\n this.loadingItems = false;\r\n });\r\n }\r\n })\r\n }\r\n\r\n onSubmit() {\r\ndebugger\r\n this.orderForm.markAllAsTouched();\r\n this.submitted = true;\r\n if (this.orderForm.invalid) { return; }\r\n this.loading = true;\r\n this.f.orderDetails.setValue(this.OrderDetailList);\r\n this.f.paymentMethodID.setValue(parseInt(this.f.paymentMethodID.value));\r\n this.f.deliveryDate.setValue(this.dateObj.model.year + \"-\" + this.dateObj.model.month + \"-\" + this.dateObj.model.day);\r\n // this.f.categories.setValue(this.selectedCategoryIds == undefined ? \"\" : this.selectedCategoryIds.toString());\r\n // this.f.subcategories.setValue(this.selectedSubCategoryIds == undefined ? \"\" : this.selectedSubCategoryIds.toString());\r\n // this.f.statusID.setValue(this.f.statusID.value === true ? 1 : 2);\r\n if (parseInt(this.f.orderID.value) === 0) {\r\n\r\n\r\n } else {\r\n ;\r\n //Update order\r\n this.oService.updateOrder(this.orderForm.value).subscribe(data => {\r\n this.loading = false;\r\n if (data != 0) {\r\n this.ts.showSuccess(\"Success\", \"Record updated successfully.\")\r\n this.router.navigate(['/admin/orders']);\r\n }\r\n }, error => {\r\n this.ts.showError(\"Error\", \"Failed to update record.\")\r\n this.loading = false;\r\n });\r\n }\r\n }\r\n\r\n // private loadCategory() {\r\n // this.oService.loadCategories().subscribe((res: any) => {\r\n // // this.CategoryList = res;\r\n // });\r\n // }\r\n private loadItems() {\r\n this.oService.loadItems().subscribe((res: any) => {\r\n\r\n this.ItemsList = res;\r\n });\r\n }\r\n private loadGifts() {\r\n this.oService.loadGifts().subscribe((res: any) => {\r\n\r\n this.GiftList = res;\r\n });\r\n }\r\n\r\n RemoveChild(obj) {\r\n const index = this.OrderDetailList.indexOf(obj);\r\n this.OrderDetailList.splice(index, 1);\r\n }\r\n AddChild(val) {\r\n debugger\r\n var obj = this.ItemsList.find(element => element.itemID == val.itemID);\r\n if (val.itemID != null) {\r\n var OrdergiftList = [];\r\n var gifttotal = 0;\r\n if (val.giftids != undefined) {\r\n val.giftids.forEach(ele => {\r\n var obj1 = this.GiftList.find(i => i.giftID == ele);\r\n OrdergiftList.push({\r\n title: obj1.title,\r\n price: obj1.displayPrice == null ? 0 : obj1.displayPrice,\r\n quantity: val.quantity == null ? 1 : val.quantity,\r\n total: val.quantity * obj1.displayPrice,\r\n giftID: obj1.giftID,\r\n itemID: obj.itemID,\r\n productNote: val.productNote,\r\n image: obj1.image == null ? 0 : obj1.image,\r\n });\r\n gifttotal += val.quantity * obj1.displayPrice;\r\n });\r\n }\r\n\r\n if (!this.OrderDetailList.find(element => element.itemID == val.itemID)) {\r\n \r\n this.OrderDetailList.push({\r\n title: obj.title,\r\n price: ((obj.price == null ? 0 : obj.price) *(val.quantity == null ? 1 : val.quantity)) + gifttotal,\r\n quantity: val.quantity == null ? 1 : val.quantity,\r\n total: ((val.quantity * obj.price) + gifttotal),\r\n itemID: obj.itemID,\r\n productNote: val.productNote,\r\n image: obj.image == null ? 0 : obj.image,\r\n orderDetailGifts: OrdergiftList\r\n });\r\n }\r\n else {\r\n alert(\"Item already added in list\")\r\n }\r\n this.clear();\r\n }\r\n }\r\n clear() {\r\n this.odetail.quantity = 1;\r\n this.odetail.price = 0;\r\n\r\n }\r\n}\r\n","export default \".list-group-item {\\r\\n padding: 0.4rem 1.25rem;\\r\\n}\\r\\n\\r\\ntd {\\r\\n padding: 0.4rem;\\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvYWRtaW4vc2FsZXMvb3JkZXJkZXRhaWxzL29yZGVyZGV0YWlscy5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0lBQ0ksdUJBQXVCO0FBQzNCOztBQUVBO0lBQ0ksZUFBZTtBQUNuQiIsImZpbGUiOiJzcmMvYXBwL2FkbWluL3NhbGVzL29yZGVyZGV0YWlscy9vcmRlcmRldGFpbHMuY29tcG9uZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi5saXN0LWdyb3VwLWl0ZW0ge1xyXG4gICAgcGFkZGluZzogMC40cmVtIDEuMjVyZW07XHJcbn1cclxuXHJcbnRkIHtcclxuICAgIHBhZGRpbmc6IDAuNHJlbTtcclxufSJdfQ== */\";","import { Component, OnInit } from '@angular/core';\r\nimport { Observable, Subscription } from 'rxjs';\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { CustomerOrders, OrderCheckout, OrderDetails, Orders } from 'src/app/_models/Orders';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\nimport { Location } from 'src/app/_models/Location';\r\nimport { OrdersService } from 'src/app/_services/orders.service';\r\nimport { NgxUiLoaderService } from 'ngx-ui-loader';\r\n\r\n@Component({\r\n selector: 'app-orderdetails',\r\n templateUrl: './orderdetails.component.html',\r\n styleUrls: ['./orderdetails.component.css'],\r\n providers: []\r\n})\r\n\r\nexport class OrderdetailsComponent implements OnInit {\r\n // public order: Orders[] = [];\r\n public order = new Orders();\r\n private selectedBrand;\r\n Locations: Location[] = [];\r\n selectedLocations = [];\r\n locationID = 0;\r\n StatusMsg = \"\";\r\n public orderDetails = new OrderDetails();\r\n public orderOrderCheckout = new OrderCheckout();\r\n public orderCustomerInfo = new CustomerOrders();\r\n // public orderDetails: OrderDetails[] = [];\r\n // public orderOrderCheckout: OrderCheckout[] = [];\r\n // public orderCustomerInfo: CustomerOrders[] = [];\r\n\r\n locationSubscription: Subscription;\r\n constructor(public service: OrdersService,\r\n public ls: LocalStorageService,\r\n public ts: ToastService,\r\n public router: Router,\r\n private route: ActivatedRoute,\r\n private ngxService: NgxUiLoaderService) {\r\n\r\n this.selectedBrand = this.ls.getSelectedUser().brandID;\r\n\r\n }\r\n\r\n ngOnInit() {\r\n this.setSelectedOrder();\r\n\r\n }\r\n\r\n setSelectedOrder() {\r\n \r\n this.route.paramMap.subscribe(param => {\r\n const sid = +param.get('id');\r\n if (sid) {\r\n this.service.getById(sid).subscribe(res => {\r\n //Set Forms\r\n\r\n this.editForm(res);\r\n });\r\n }\r\n })\r\n }\r\n\r\n updateOrder(order, status) {\r\n this.ngxService.start();\r\n // if (this.StatusMsg == '' || this.StatusMsg == undefined || this.StatusMsg == null) {\r\n // this.ts.showError(\"Error\", \"Kindly add the email message, while updating the status of order\");\r\n // }!\r\n // else {\r\n order.statusID = status;\r\n order.StatusMsg = this.StatusMsg;\r\n //Update customer\r\n this.service.update(order).subscribe(data => {\r\n\r\n if (data == 1) {\r\n this.ts.showSuccess(\"Success\", \"Record updated successfully.\")\r\n this.router.navigate(['/admin/orders']);\r\n }\r\n else{\r\n this.ts.showError(\"Error\", \"Failed to update record.\") \r\n }\r\n this.ngxService.stop();\r\n }, error => {\r\n this.ts.showError(\"Error\", \"Failed to update record.\")\r\n this.ngxService.stop();\r\n });\r\n // }\r\n }\r\n private editForm(obj) {\r\ndebugger;\r\n this.order = obj.order;\r\n this.orderDetails = obj.orderDetails;\r\n this.orderCustomerInfo = obj.customerOrders;\r\n // this.orderOrderCheckout = obj.orderCheckouts;\r\n }\r\n}\r\n","import { Component, OnInit, QueryList, ViewChild, ViewChildren } from '@angular/core';\r\nimport { Observable, of, Subscription } from 'rxjs';\r\nimport { NgbdSortableHeader, SortEvent } from 'src/app/_directives/sortable.directive';\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { Router } from '@angular/router';\r\nimport { Orders } from 'src/app/_models/Orders';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\nimport { OrdersService } from 'src/app/_services/orders.service';\r\nimport { delay, map } from 'rxjs/operators';\r\nimport { Location } from 'src/app/_models/Location';\r\nimport { NgbdDatepickerRangePopup } from 'src/app/datepicker-range/datepicker-range-popup';\r\nimport { NgbDate } from '@ng-bootstrap/ng-bootstrap';\r\n\r\nconst now = new Date();\r\n@Component({\r\n selector: 'app-orders',\r\n templateUrl: './orders.component.html',\r\n providers: []\r\n})\r\nexport class OrdersComponent implements OnInit {\r\n data$: Observable; \r\n oldData: Orders[];\r\n total$: Observable;\r\n loading$: Observable;\r\n private selectedBrand;\r\n private selectedLocation;\r\n Locations: Location[] = [];\r\n selectedLocations = [];\r\n locationID = 0;\r\n \r\n @ViewChild(NgbdDatepickerRangePopup, { static: true }) _datepicker;\r\n locationSubscription: Subscription;\r\n submit: boolean;\r\n @ViewChildren(NgbdSortableHeader) headers: QueryList;\r\n @ViewChild('locationDrp') drplocation: any;\r\n constructor(public service: OrdersService,\r\n public ls :LocalStorageService,\r\n public ts :ToastService,\r\n public router:Router) {\r\n this.loading$ = service.loading$;\r\n this.submit = false; \r\n // this.selectedBrand =this.ls.getSelectedUser().userID;\r\n\r\n \r\n }\r\n\r\n ngOnInit() {\r\n \r\n const date: NgbDate = new NgbDate(now.getFullYear(), now.getMonth() + 1, 1); \r\n this._datepicker.fromDate=date;\r\n \r\n this.getData();\r\n }\r\n \r\n getData() { \r\n \r\n this.service.getAllData( this.parseDate(this._datepicker.fromDate), this.parseDate(this._datepicker.toDate)); \r\n this.data$ = this.service.data$;\r\n this.total$ = this.service.total$;\r\n this.loading$ = this.service.loading$;\r\n }\r\n\r\n onSort({ column, direction }: SortEvent) {\r\n\r\n this.headers.forEach(header => {\r\n if (header.sortable !== column) {\r\n header.direction = '';\r\n }\r\n });\r\n this.service.sortColumn = column;\r\n this.service.sortDirection = direction;\r\n }\r\n\r\n View(orders) {\r\n this.router.navigate([\"admin/orders/view\", orders]);\r\n }\r\n Edit(orders) {\r\n this.router.navigate([\"admin/orders/edit\", orders]);\r\n}\r\n parseDate(obj) {\r\n return obj.year + \"-\" + obj.month + \"-\" + obj.day;;\r\n }\r\n\r\n loadLocations() {\r\n this.service.loadLocations(this.selectedBrand).subscribe((res: any) => {\r\n\r\n this.Locations = res;\r\n this.locationID = this.selectedLocation;\r\n\r\n this.loadLocationsMulti()\r\n .pipe(map(x => x.filter(y => !y.disabled)))\r\n .subscribe((res) => {\r\n this.Locations = res;\r\n var arr=[];\r\n this.Locations.forEach(element => {\r\n arr.push(element.locationID);\r\n });\r\n this.selectedLocations=arr;\r\n \r\n // this.getData(this.selectedLocations.toString()); \r\n });\r\n\r\n });\r\n \r\n }\r\n loadLocationsMulti(term: string = null): Observable {\r\n let items = this.Locations;\r\n if (term) {\r\n items = items.filter(x => x.name.toLocaleLowerCase().indexOf(term.toLocaleLowerCase()) > -1);\r\n }\r\n return of(items).pipe(delay(500));\r\n }\r\n Filter() {\r\n \r\n this.getData();\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2FkbWluL3NldHRpbmdzL2Jhbm5lci9hZGRiYW5uZXIvYWRkYmFubmVyLmNvbXBvbmVudC5jc3MifQ== */\";","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport { ImageuploadComponent } from 'src/app/imageupload/imageupload.component';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { BannerService } from 'src/app/_services/banner.service';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\n\r\n@Component({\r\n selector: 'app-addbanner',\r\n templateUrl: './addbanner.component.html',\r\n styleUrls: ['./addbanner.component.css']\r\n})\r\nexport class AddbannerComponent implements OnInit {\r\n\r\n submitted = false;\r\n bannerForm: FormGroup;\r\n loading = false;\r\n loadingCustomer = false;\r\n ButtonText = \"Save\"; \r\n public FormsList: string[] = [\"Home\", \"About\", \"Contact\", \"Shop\", \"Cart\" , \"Checkout\",\"Other\"];\r\n\r\n @ViewChild(ImageuploadComponent, { static: true }) imgComp;\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private ls: LocalStorageService,\r\n public ts: ToastService,\r\n private bannerService: BannerService\r\n\r\n ) {\r\n this.createForm();\r\n \r\n }\r\n\r\n ngOnInit() {\r\n this.setSelectedCustomer();\r\n }\r\n\r\n get f() { return this.bannerForm.controls; }\r\n\r\n private createForm() {\r\n debugger\r\n this.bannerForm = this.formBuilder.group({\r\n title: [''],\r\n description: [''],\r\n mainHeading: [''],\r\n //arabicTitle: ['', Validators.required],\r\n //arabicDescription: [''],\r\n //arabicMainHeading: [''],\r\n formName:['Others'],\r\n statusID: [true],\r\n bannerID: 0,\r\n image: [''],\r\n brandID: this.ls.getSelectedUser().brandID,\r\n locationID: null\r\n });\r\n }\r\n\r\n private editForm(obj) {\r\n debugger\r\n this.f.title.setValue(obj.title);\r\n this.f.mainHeading.setValue(obj.mainHeading);\r\n this.f.description.setValue(obj.description);\r\n \r\n this.f.arabicTitle.setValue(obj.arabicTitle);\r\n this.f.arabicMainHeading.setValue(obj.arabicMainHeading);\r\n this.f.arabicDescription.setValue(obj.arabicDescription);\r\n\r\n this.f.formName.setValue(obj.formName);\r\n this.f.bannerID.setValue(obj.bannerID);\r\n this.f.image.setValue(obj.image);\r\n this.f.statusID.setValue(obj.statusID === 1 ? true : false);\r\n this.imgComp.imageUrl = obj.image;\r\n }\r\n\r\n setSelectedCustomer() {\r\n this.route.paramMap.subscribe(param => {\r\n const sid = +param.get('id');\r\n if (sid) {\r\n this.loadingCustomer = true;\r\n this.f.bannerID.setValue(sid);\r\n this.bannerService.getById(sid).subscribe(res => {\r\n //Set Forms\r\n this.editForm(res);\r\n this.loadingCustomer = false;\r\n });\r\n }\r\n })\r\n }\r\n\r\n onSubmit() {\r\n debugger\r\n this.bannerForm.markAllAsTouched();\r\n this.submitted = true;\r\n if (this.bannerForm.invalid) { return; }\r\n this.loading = true;\r\n this.f.statusID.setValue(this.f.statusID.value === true ? 1 : 2);\r\n this.f.image.setValue(this.imgComp.imageUrl);\r\n\r\n if (parseInt(this.f.bannerID.value) === 0) {\r\n //Insert banner\r\n console.log(JSON.stringify(this.bannerForm.value));\r\n this.bannerService.insert(this.bannerForm.value).subscribe(data => {\r\n if (data != 0) {\r\n this.ts.showSuccess(\"Success\",\"Record added successfully.\")\r\n this.router.navigate(['/admin/banner']);\r\n }\r\n this.loading = false;\r\n }, error => {\r\n this.ts.showError(\"Error\",\"Failed to insert record.\")\r\n this.loading = false;\r\n });\r\n } else {\r\n //Update banner\r\n this.bannerService.update(this.bannerForm.value).subscribe(data => {\r\n this.loading = false;\r\n if (data != 0) {\r\n this.ts.showSuccess(\"Success\",\"Record updated successfully.\")\r\n this.router.navigate(['/admin/banner']);\r\n }\r\n }, error => {\r\n this.ts.showError(\"Error\",\"Failed to update record.\")\r\n this.loading = false;\r\n });\r\n }\r\n }\r\n\r\n\r\n\r\n}\r\n","import { Component, OnInit, QueryList, ViewChildren } from '@angular/core';\r\nimport { Observable, Subscription } from 'rxjs';\r\nimport { NgbdSortableHeader, SortEvent } from 'src/app/_directives/sortable.directive';\r\n\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { Router } from '@angular/router';\r\nimport { Banner } from 'src/app/_models/Banner';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\nimport { BannerService } from 'src/app/_services/banner.service';\r\n\r\n@Component({\r\n selector: 'app-banner',\r\n templateUrl: './banner.component.html',\r\n providers: []\r\n})\r\n\r\nexport class BannerComponent implements OnInit {\r\n data$: Observable;\r\n oldData: Banner[];\r\n total$: Observable;\r\n loading$: Observable;\r\n private selectedBrand;\r\n\r\n locationSubscription: Subscription;\r\n submit: boolean;\r\n @ViewChildren(NgbdSortableHeader) headers: QueryList;\r\n\r\n constructor(public service: BannerService,\r\n public ls: LocalStorageService,\r\n public ts: ToastService,\r\n public router: Router) {\r\n this.selectedBrand = this.ls.getSelectedUser().brandID;\r\n\r\n this.loading$ = service.loading$;\r\n this.submit = false;\r\n\r\n }\r\n\r\n ngOnInit() {\r\n this.getData();\r\n }\r\n\r\n getData() {\r\n this.service.getAllData();\r\n this.data$ = this.service.data$;\r\n this.total$ = this.service.total$;\r\n this.loading$ = this.service.loading$;\r\n }\r\n\r\n onSort({ column, direction }: SortEvent) {\r\n\r\n this.headers.forEach(header => {\r\n if (header.sortable !== column) {\r\n header.direction = '';\r\n }\r\n });\r\n this.service.sortColumn = column;\r\n this.service.sortDirection = direction;\r\n }\r\n\r\n Edit(banner) {\r\n this.router.navigate([\"admin/banner/edit\", banner]);\r\n }\r\n\r\n Delete(obj) {\r\n if (confirm(\"Are you sure to delete? \")) {\r\n this.service.delete(obj).subscribe((res: any) => {\r\n if (res != 0) {\r\n this.ts.showSuccess(\"Success\", \"Record deleted successfully.\")\r\n this.getData();\r\n }\r\n else\r\n this.ts.showError(\"Error\", \"Failed to delete record.\")\r\n\r\n }, error => {\r\n this.ts.showError(\"Error\", \"Failed to delete record.\")\r\n });\r\n }\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2FkbWluL3NldHRpbmdzL2NvdXBvbi9hZGRjb3Vwb24vYWRkY291cG9uLmNvbXBvbmVudC5jc3MifQ== */\";","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport { ImageuploadComponent } from 'src/app/imageupload/imageupload.component';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\nimport { CouponService } from 'src/app/_services/coupon.service';\r\nimport { NgbdDatepickerRangePopup } from 'src/app/datepicker-range/datepicker-range-popup';\r\n\r\n@Component({\r\n selector: 'app-addcoupon',\r\n templateUrl: './addcoupon.component.html',\r\n styleUrls: ['./addcoupon.component.css']\r\n})\r\nexport class AddcouponComponent implements OnInit {\r\n options: string[] = [\"Amount\", \"Percent\"];\r\n selectedQuantity = \"Amount\";\r\n submitted = false;\r\n couponForm: FormGroup;\r\n loading = false;\r\n loadingCoupon = false;\r\n ButtonText = \"Save\"; \r\n @ViewChild(NgbdDatepickerRangePopup, { static: true }) _datepicker;\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private ls: LocalStorageService,\r\n public ts: ToastService,\r\n private couponService: CouponService\r\n\r\n ) {\r\n this.createForm();\r\n this.f.type.setValue(this.selectedQuantity);\r\n }\r\n\r\n ngOnInit() {\r\n this.setSelectedCoupon();\r\n }\r\n\r\n get f() { return this.couponForm.controls; }\r\n\r\n private createForm() {\r\n this.couponForm = this.formBuilder.group({\r\n title: ['', Validators.required],\r\n description: [''],\r\n couponCode: [''],\r\n type: [''],\r\n statusID: [true],\r\n amount: 0,\r\n couponID: 0,\r\n fromDate: [''],\r\n toDate: ['']\r\n });\r\n }\r\n\r\n private editForm(obj) {\r\n \r\n this.f.title.setValue(obj.title);\r\n this.f.description.setValue(obj.description);\r\n this.f.couponCode.setValue(obj.couponCode);\r\n this.f.type.setValue(obj.type);\r\n this.f.amount.setValue(obj.amount);\r\n this.f.couponID.setValue(obj.couponID);\r\n this.f.fromDate.setValue(obj.fromDate);\r\n this.f.toDate.setValue(obj.toDate);\r\n this.f.statusID.setValue(obj.statusID === 1 ? true : false);\r\n\r\n this._datepicker.fromDate=new Date(obj.fromDate);\r\n this._datepicker.toDate=new Date(obj.toDate);\r\n }\r\n\r\n setSelectedCoupon() {\r\n this.route.paramMap.subscribe(param => {\r\n const sid = +param.get('id');\r\n if (sid) {\r\n this.loadingCoupon = true;\r\n this.f.couponID.setValue(sid);\r\n this.couponService.getById(sid).subscribe(res => {\r\n //Set Forms\r\n this.editForm(res);\r\n this.loadingCoupon = false;\r\n });\r\n }\r\n })\r\n }\r\n\r\n onSubmit() {\r\n this.couponForm.markAllAsTouched();\r\n this.submitted = true;\r\n if (this.couponForm.invalid) { return; }\r\n this.loading = true;\r\n this.f.statusID.setValue(this.f.statusID.value === true ? 1 : 2);\r\n this.f.fromDate.setValue(this.parseDate(this._datepicker.fromDate));\r\n this.f.toDate.setValue(this.parseDate(this._datepicker.toDate));\r\ndebugger\r\n if (parseInt(this.f.couponID.value) === 0) {\r\n //Insert coupon\r\n this.couponService.insert(this.couponForm.value).subscribe(data => {\r\n if (data != 0) {\r\n this.ts.showSuccess(\"Success\",\"Record added successfully.\")\r\n this.router.navigate(['/admin/coupon']);\r\n }\r\n this.loading = false;\r\n }, error => {\r\n this.ts.showError(\"Error\",\"Failed to insert record.\")\r\n this.loading = false;\r\n });\r\n } else {\r\n //Update coupon\r\n this.couponService.update(this.couponForm.value).subscribe(data => {\r\n this.loading = false;\r\n if (data != 0) {\r\n this.ts.showSuccess(\"Success\",\"Record updated successfully.\")\r\n this.router.navigate(['/admin/coupon']);\r\n }\r\n }, error => {\r\n this.ts.showError(\"Error\",\"Failed to update record.\")\r\n this.loading = false;\r\n });\r\n }\r\n }\r\n parseDate(obj) {\r\n return obj.year + \"-\" + obj.month + \"-\" + obj.day;;\r\n }\r\n}\r\n","import { Component, OnInit, QueryList, ViewChildren } from '@angular/core';\r\nimport { Observable, Subscription } from 'rxjs';\r\nimport { NgbdSortableHeader, SortEvent } from 'src/app/_directives/sortable.directive';\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { Router } from '@angular/router';\r\nimport { Coupon } from 'src/app/_models/Coupon';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\nimport { CouponService } from 'src/app/_services/coupon.service';\r\n\r\n@Component({\r\n selector: 'app-coupon',\r\n templateUrl: './coupon.component.html',\r\n providers: []\r\n})\r\n\r\nexport class CouponComponent implements OnInit {\r\n data$: Observable;\r\n oldData: Coupon[];\r\n total$: Observable;\r\n loading$: Observable;\r\n private selectedBrand;\r\n\r\n locationSubscription: Subscription;\r\n submit: boolean;\r\n @ViewChildren(NgbdSortableHeader) headers: QueryList;\r\n\r\n constructor(public service: CouponService,\r\n public ls: LocalStorageService,\r\n public ts: ToastService,\r\n public router: Router) {\r\n \r\n this.loading$ = service.loading$;\r\n this.submit = false;\r\n }\r\n\r\n ngOnInit() {\r\n this.getData();\r\n }\r\n\r\n getData() {\r\n this.service.getAllData();\r\n this.data$ = this.service.data$;\r\n this.total$ = this.service.total$;\r\n this.loading$ = this.service.loading$;\r\n }\r\n\r\n onSort({ column, direction }: SortEvent) {\r\n\r\n this.headers.forEach(header => {\r\n if (header.sortable !== column) {\r\n header.direction = '';\r\n }\r\n });\r\n this.service.sortColumn = column;\r\n this.service.sortDirection = direction;\r\n }\r\n\r\n Edit(coupon) {\r\n this.router.navigate([\"admin/coupon/edit\", coupon]);\r\n }\r\n\r\n Delete(obj) {\r\n if (confirm(\"Are you sure to delete? \")) {\r\n this.service.delete(obj).subscribe((res: any) => {\r\n if (res != 0) {\r\n this.ts.showSuccess(\"Success\", \"Record deleted successfully.\")\r\n this.getData();\r\n }\r\n else\r\n this.ts.showError(\"Error\", \"Failed to delete record.\")\r\n\r\n }, error => {\r\n this.ts.showError(\"Error\", \"Failed to delete record.\")\r\n });\r\n }\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2FkbWluL3NldHRpbmdzL2RlbGl2ZXJ5L2FkZGRlbGl2ZXJ5L2FkZGRlbGl2ZXJ5LmNvbXBvbmVudC5jc3MifQ== */\";","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport { ImageuploadComponent } from 'src/app/imageupload/imageupload.component';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { DeliveryService } from 'src/app/_services/delivery.service';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\n\r\n@Component({\r\n selector: 'app-adddelivery',\r\n templateUrl: './adddelivery.component.html',\r\n styleUrls: ['./adddelivery.component.css']\r\n})\r\nexport class AdddeliveryComponent implements OnInit {\r\n\r\n submitted = false;\r\n deliveryForm: FormGroup;\r\n loading = false;\r\n loadingCustomer = false;\r\n ButtonText = \"Save\"; \r\n selectedSubCategoriesIds: string[];\r\n selectedLocationIds: string[];\r\n selectedgroupModifierIds: string[];\r\n BrandsList = [];\r\n selectedBrandIds: string[];\r\n selectedModifierIds: string[];\r\n private selectedBrand;\r\n @ViewChild(ImageuploadComponent, { static: true }) imgComp;\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private ls: LocalStorageService,\r\n public ts: ToastService,\r\n private deliveryService: DeliveryService\r\n\r\n ) \r\n \r\n {\r\n this.createForm();\r\n // this.loadBrands();\r\n // this.selectedBrand =this.ls.getSelectedBrand();\r\n }\r\n \r\n\r\n ngOnInit() {\r\n this.setSelecteditem();\r\n }\r\n \r\n\r\n \r\n get f() { return this.deliveryForm.controls; }\r\n\r\n private createForm() {\r\n this.deliveryForm = this.formBuilder.group({\r\n name: ['', Validators.required],\r\n amount: [''],\r\n statusID: [true],\r\n // brandIDs :[''],\r\n deliveryAreaID: 0, \r\n // brandID: this.ls.getSelectedBrand().brandID,\r\n // brands:[],\r\n });\r\n }\r\n\r\n private editForm(obj) {\r\n this.f.name.setValue(obj.name);\r\n this.f.amount.setValue(obj.amount);\r\n this.f.deliveryAreaID.setValue(obj.deliveryAreaID);\r\n this.f.statusID.setValue(obj.statusID === 1 ? true : false); \r\n debugger\r\n // if (obj.brands != \"\") {\r\n // var stringToConvert = obj.brands;\r\n // this.selectedBrandIds = stringToConvert.split(',').map(Number);\r\n // this.f.brands.setValue(obj.brands);\r\n // }\r\n }\r\n\r\n setSelecteditem() { \r\n this.route.paramMap.subscribe(param => {\r\n const sid = +param.get('id');\r\n if (sid) {\r\n this.loading = true;\r\n this.f.deliveryAreaID.setValue(sid);\r\n this.deliveryService.getById(sid).subscribe(res => {\r\n //Set Forms\r\n this.editForm(res);\r\n this.loading = false;\r\n\r\n //BrandsFill\r\n // this.deliveryService.getBrands(this.ls.getSelectedBrand().brandID)\r\n // .subscribe((res: any) => { \r\n // var stringToConvert = res.items;\r\n // this.selectedBrandIds = stringToConvert.split(',').map(Number); \r\n // });\r\n\r\n });\r\n }\r\n })\r\n }\r\n \r\n\r\n\r\n onSubmit() {\r\n debugger;\r\n this.deliveryForm.markAllAsTouched();\r\n this.submitted = true;\r\n if (this.deliveryForm.invalid) { return; }\r\n this.loading = true;\r\n this.f.statusID.setValue(this.f.statusID.value === true ? 1 : 2); \r\n // this.f.brands.setValue(this.selectedBrandIds == undefined ? \"\" : this.selectedBrandIds.toString());\r\n\r\n if (parseInt(this.f.deliveryAreaID.value) === 0) {\r\n //Insert delivery\r\n this.deliveryService.insert(this.deliveryForm.value).subscribe(data => {\r\n if (data != 0) {\r\n this.ts.showSuccess(\"Success\",\"Record added successfully.\")\r\n this.router.navigate(['/admin/delivery']);\r\n }\r\n this.loading = false;\r\n }, error => {\r\n this.ts.showError(\"Error\",\"Failed to insert record.\")\r\n this.loading = false;\r\n });\r\n } else {\r\n //Update delivery\r\n this.deliveryService.update(this.deliveryForm.value).subscribe(data => {\r\n this.loading = false;\r\n if (data != 0) {\r\n this.ts.showSuccess(\"Success\",\"Record updated successfully.\")\r\n this.router.navigate(['/admin/delivery']);\r\n }\r\n }, error => {\r\n this.ts.showError(\"Error\",\"Failed to update record.\")\r\n this.loading = false;\r\n });\r\n }\r\n }\r\n\r\n private loadBrands() {\r\n \r\n this.deliveryService.loadBrands(this.f.brandID).subscribe((res: any) => {\r\n this.BrandsList = res;\r\n // this.setSelecteditem();\r\n });\r\n }\r\n\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2FkbWluL3NldHRpbmdzL2RlbGl2ZXJ5L2RlbGl2ZXJ5LmNvbXBvbmVudC5jc3MifQ== */\";","import { Component, OnInit, QueryList, ViewChildren } from '@angular/core';\r\nimport { Observable, Subscription } from 'rxjs';\r\nimport { NgbdSortableHeader, SortEvent } from 'src/app/_directives/sortable.directive';\r\n\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { Router } from '@angular/router';\r\nimport { Delivery } from 'src/app/_models/Delivery';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\nimport { DeliveryService } from 'src/app/_services/delivery.service';\r\n\r\n@Component({\r\n selector: 'app-delivery',\r\n templateUrl: './delivery.component.html',\r\n styleUrls: ['./delivery.component.css']\r\n})\r\nexport class DeliveryComponent implements OnInit {\r\n data$: Observable; \r\n oldData: Delivery[];\r\n total$: Observable;\r\n loading$: Observable;\r\n private selectedBrand;\r\n \r\n locationSubscription: Subscription;\r\n submit: boolean;\r\n @ViewChildren(NgbdSortableHeader) headers: QueryList;\r\n\r\n constructor(public service: DeliveryService,\r\n public ls :LocalStorageService,\r\n public ts :ToastService,\r\n public router:Router) {\r\n // this.selectedBrand =this.ls.getSelectedBrand().brandID;\r\n\r\n this.loading$ = service.loading$;\r\n this.submit = false;\r\n \r\n }\r\n\r\n ngOnInit() {\r\n this.getData();\r\n }\r\n\r\n getData() { \r\n this.service.getAllData(); \r\n this.data$ = this.service.data$;\r\n this.total$ = this.service.total$;\r\n this.loading$ = this.service.loading$;\r\n }\r\n\r\n onSort({ column, direction }: SortEvent) {\r\n\r\n this.headers.forEach(header => {\r\n if (header.sortable !== column) {\r\n header.direction = '';\r\n }\r\n });\r\n this.service.sortColumn = column;\r\n this.service.sortDirection = direction;\r\n }\r\n\r\n Edit(delivery) {\r\n this.router.navigate([\"admin/delivery/edit\", delivery]);\r\n }\r\n\r\n Delete(obj) {\r\n this.service.delete(obj).subscribe((res: any) => {\r\n if(res!=0){\r\n this.ts.showSuccess(\"Success\",\"Record deleted successfully.\")\r\n this.getData();\r\n }\r\n else\r\n this.ts.showError(\"Error\",\"Failed to delete record.\")\r\n\r\n }, error => {\r\n this.ts.showError(\"Error\",\"Failed to delete record.\")\r\n });\r\n }\r\n}\r\n","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport { ImageuploadComponent } from 'src/app/imageupload/imageupload.component';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\nimport { NgbdDatepickerRangePopup } from 'src/app/datepicker-range/datepicker-range-popup';\r\nimport { SettingService } from 'src/app/_services/settings.service';\r\nimport * as $ from 'jquery';\r\nimport 'bootstrap-colorpicker';\r\nimport { BgFeatureduploadComponent } from '../../../themeImages/bgfeaturedupload/bgfeaturedupload.component';\r\nimport { BgNewarrivaluploadComponent } from '../../../themeImages/bgnewarrivalupload/bgnewarrivalupload.component';\r\nimport { BgNewsletteruploadComponent } from '../../../themeImages/bgnewsletterupload/bgnewsletterupload.component';\r\nimport { BgPopularuploadComponent } from '../../../themeImages/bgpopularupload/bgpopularupload.component';\r\nimport { BgTestimonialuploadComponent } from '../../../themeImages/bgtestimonialupload/bgtestimonialupload.component';\r\nimport { BgWorkflowuploadComponent } from '../../../themeImages/bgworkflowupload/bgworkflowupload.component';\r\nimport { logouploadComponent } from '../../../themeImages/logoupload/logoupload.component';\r\n\r\n@Component({\r\n selector: 'app-dynamiccss',\r\n templateUrl: './dynamiccss.component.html'\r\n})\r\nexport class DynamicCssComponent implements OnInit {\r\n\r\n submitted = false;\r\n dynamiccssForm: FormGroup;\r\n loading = false;\r\n loadingDynamicCss = false;\r\n ButtonText = \"Save\";\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private router: Router,\r\n public ts: ToastService,\r\n private service: SettingService\r\n ) {\r\n this.createForm();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setSelectedDynamicCss();\r\n }\r\n\r\n @ViewChild(BgFeatureduploadComponent, { static: true }) featuredimg;\r\n @ViewChild(BgNewarrivaluploadComponent, { static: true }) newarrivalimg;\r\n @ViewChild(BgNewsletteruploadComponent, { static: true }) newsletterimg;\r\n @ViewChild(BgPopularuploadComponent, { static: true }) popularprdimg;\r\n @ViewChild(BgTestimonialuploadComponent, { static: true }) testimonialimg;\r\n @ViewChild(BgWorkflowuploadComponent, { static: true }) workflowimg;\r\n @ViewChild(logouploadComponent, { static: true }) logoimg;\r\n\r\n get f() { return this.dynamiccssForm.controls; }\r\n\r\n private createForm() {\r\n this.dynamiccssForm = this.formBuilder.group({\r\n headerToparea: ['#c06dff'],\r\n bgWorkflow: [''],\r\n logo: [''],\r\n bgFeaturedProduct: [''],\r\n bgPopularProduct: [''],\r\n bgNewArrivals: [''],\r\n bgTestimonials: [''],\r\n bgNewsletter: [''],\r\n addButton: ['#c06dff'],\r\n dynamiccssID: 0\r\n });\r\n }\r\n\r\n private editForm(obj) {\r\n debugger\r\n this.f.dynamiccssID.setValue(obj.dynamicCssID);\r\n this.f.headerToparea.setValue(obj.headerToparea);\r\n this.f.logo.setValue(obj.logo);\r\n this.f.bgWorkflow.setValue(obj.bgWorkflow);\r\n this.f.bgFeaturedProduct.setValue(obj.bgFeaturedProduct);\r\n this.f.bgPopularProduct.setValue(obj.bgPopularProduct);\r\n this.f.bgNewArrivals.setValue(obj.bgNewArrivals);\r\n this.f.bgTestimonials.setValue(obj.bgTestimonials);\r\n this.f.bgNewsletter.setValue(obj.bgNewsletter);\r\n this.f.addButton.setValue(obj.addButton);\r\n this.featuredimg.imageUrl = obj.bgFeaturedProduct;\r\n this.newarrivalimg.imageUrl = obj.bgNewArrivals;\r\n this.newsletterimg.imageUrl = obj.bgNewsletter;\r\n this.popularprdimg.imageUrl = obj.bgPopularProduct;\r\n this.testimonialimg.imageUrl = obj.bgTestimonials;\r\n this.workflowimg.imageUrl = obj.bgWorkflow;\r\n this.logoimg.imageUrl = obj.logo;\r\n }\r\n\r\n setSelectedDynamicCss() {\r\n this.service.getCssById(0).subscribe(res => {\r\n this.editForm(res);\r\n this.loadingDynamicCss = false;\r\n });\r\n }\r\n\r\n onSubmit() {\r\n debugger\r\n this.dynamiccssForm.markAllAsTouched();\r\n this.submitted = true;\r\n if (this.dynamiccssForm.invalid) { return; }\r\n this.loading = true;\r\n this.f.logo.setValue(this.logoimg.imageUrl);\r\n this.f.bgWorkflow.setValue(this.workflowimg.imageUrl);\r\n this.f.bgFeaturedProduct.setValue(this.featuredimg.imageUrl);\r\n this.f.bgPopularProduct.setValue(this.popularprdimg.imageUrl);\r\n this.f.bgNewArrivals.setValue(this.newarrivalimg.imageUrl);\r\n this.f.bgTestimonials.setValue(this.testimonialimg.imageUrl);\r\n this.f.bgNewsletter.setValue(this.newsletterimg.imageUrl);\r\n this.service.updateCss(this.dynamiccssForm.value).subscribe(data => {\r\n this.loading = false;\r\n if (data != 0) {\r\n this.ts.showSuccess(\"Success\", \"Record updated successfully.\")\r\n this.router.navigate(['/admin/dynamiccss']);\r\n }\r\n }, error => {\r\n this.ts.showError(\"Error\", \"Failed to update record.\")\r\n this.loading = false;\r\n });\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2FkbWluL3NldHRpbmdzL2dlbmVyYWxzZXR0aW5ncy9nZW5lcmFsc2V0dGluZ3MuY29tcG9uZW50LmNzcyJ9 */\";","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport { ImageuploadComponent } from 'src/app/imageupload/imageupload.component';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\nimport { NgbdDatepickerRangePopup } from 'src/app/datepicker-range/datepicker-range-popup';\r\nimport { SettingService } from 'src/app/_services/settings.service';\r\n\r\n@Component({\r\n selector: 'app-generalsettings',\r\n templateUrl: './generalsettings.component.html',\r\n styleUrls: ['./generalsettings.component.css']\r\n})\r\nexport class GeneralsettingsComponent implements OnInit {\r\n\r\n submitted = false;\r\n generalsettingsForm: FormGroup;\r\n loading = false;\r\n loadingGeneralsettings = false;\r\n ButtonText = \"Save\";\r\n openTime = { hour: new Date().getHours(), minute: new Date().getMinutes() };\r\n closeTime = { hour: new Date().getHours(), minute: new Date().getMinutes() };\r\n selectedSubCategoriesIds: string[];\r\n selectedLocationIds: string[];\r\n selectedgroupModifierIds: string[];\r\n @ViewChild(NgbdDatepickerRangePopup, { static: true }) _datepicker;\r\n @ViewChild(ImageuploadComponent, { static: true }) imgComp;\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private router: Router,\r\n public ts: ToastService,\r\n private generalsettingsService: SettingService\r\n\r\n ) {\r\n this.createForm();\r\n }\r\n\r\n ngOnInit() {\r\n this.setSelectedGeneralsettings();\r\n }\r\n\r\n get f() { return this.generalsettingsForm.controls; }\r\n\r\n private createForm() {\r\n this.generalsettingsForm = this.formBuilder.group({\r\n taxPercentage: [0, Validators.required],\r\n deliveryCharges: [0, Validators.required],\r\n minimumOrderValue: [0, Validators.required],\r\n cod: [true],\r\n isDeliveryAllow: [true],\r\n isMaintenance: [false],\r\n // isOrderClosed: [false],\r\n payPal: [true],\r\n benefitPay: [true],\r\n credimax: [true],\r\n topHeaderText: [''],\r\n facebookUrl: [''],\r\n instagramUrl: [''],\r\n openTime: [''],\r\n closeTime: [''],\r\n twitterUrl: [''],\r\n shopUrl: [''],\r\n facebook: [true],\r\n instagram: [true],\r\n twitter: [true],\r\n settingID: 0\r\n });\r\n }\r\n\r\n private editForm(obj) {\r\n debugger\r\n this.f.settingID.setValue(obj.settingID);\r\n this.f.taxPercentage.setValue(obj.taxPercentage);\r\n this.f.deliveryCharges.setValue(obj.deliveryCharges);\r\n this.f.minimumOrderValue.setValue(obj.minimumOrderValue);\r\n this.f.cod.setValue(obj.cod == 1 ? true : false);\r\n this.f.isDeliveryAllow.setValue(obj.isDeliveryAllow == 1 ? true : false);\r\n this.f.isMaintenance.setValue(obj.isMaintenance == 1 ? true : false);\r\n // this.f.isOrderClosed.setValue(obj.isOrderClosed == 1 ? true : false); \r\n this.f.benefitPay.setValue(obj.benefitPay == 1 ? true : false);\r\n this.f.openTime.setValue(obj.openTime);\r\n this.f.closeTime.setValue(obj.closeTime);\r\n this.f.credimax.setValue(obj.credimax == 1 ? true : false);\r\n this.f.payPal.setValue(obj.payPal == 1 ? true : false);\r\n this.f.topHeaderText.setValue(obj.topHeaderText);\r\n this.f.facebookUrl.setValue(obj.facebookUrl);\r\n this.f.instagramUrl.setValue(obj.instagramUrl);\r\n this.f.shopUrl.setValue(obj.shopUrl);\r\n this.f.twitterUrl.setValue(obj.twitterUrl);\r\n this.f.facebook.setValue(obj.facebook == 1 ? true : false);\r\n this.f.instagram.setValue(obj.instagram == 1 ? true : false);\r\n this.f.twitter.setValue(obj.twitter == 1 ? true : false);\r\n\r\n this.openTime = { hour: new Date(\"1/1/1900 \" + obj.openTime).getHours(), minute: new Date(\"1/1/1900 \" + obj.openTime).getMinutes() };\r\n this.closeTime = { hour: new Date(\"1/1/1900 \" + obj.closeTime).getHours(), minute: new Date(\"1/1/1900 \" + obj.closeTime).getMinutes() };\r\n }\r\n\r\n setSelectedGeneralsettings() {\r\n this.generalsettingsService.getById(0).subscribe(res => {\r\n //Set Forms\r\n this.editForm(res);\r\n this.loadingGeneralsettings = false;\r\n });\r\n // this.route.paramMap.subscribe(param => {\r\n // const sid = +param.get('id');\r\n // if (sid) {\r\n // this.loadingGeneralsettings = true;\r\n // this.f.offerID.setValue(sid);\r\n // this.generalsettingsService.getById(sid).subscribe(res => {\r\n // //Set Forms\r\n // this.editForm(res);\r\n // this.loadingGeneralsettings = false;\r\n // });\r\n // }\r\n // })\r\n }\r\n\r\n onSubmit() {\r\n debugger\r\n this.generalsettingsForm.markAllAsTouched();\r\n this.submitted = true;\r\n if (this.generalsettingsForm.invalid) { return; }\r\n this.loading = true;\r\n this.f.cod.setValue(this.f.cod.value == true ? 1 : 0);\r\n this.f.isDeliveryAllow.setValue(this.f.isDeliveryAllow.value == true ? 1 : 0);\r\n this.f.isMaintenance.setValue(this.f.isMaintenance.value == true ? 1 : 0);\r\n // this.f.isOrderClosed.setValue(this.f.isOrderClosed.value == true ? 1 : 0);\r\n this.f.benefitPay.setValue(this.f.benefitPay.value == true ? 1 : 0);\r\n this.f.credimax.setValue(this.f.credimax.value == true ? 1 : 0);\r\n this.f.payPal.setValue(this.f.payPal.value == true ? 1 : 0);\r\n\r\n this.f.facebook.setValue(this.f.facebook.value == true ? 1 : 0);\r\n this.f.instagram.setValue(this.f.instagram.value == true ? 1 : 0);\r\n this.f.twitter.setValue(this.f.twitter.value == true ? 1 : 0);\r\n this.f.openTime.setValue(this.openTime.hour + \":\" + this.openTime.minute);\r\n this.f.closeTime.setValue(this.closeTime.hour + \":\" + this.closeTime.minute);\r\n \r\n this.generalsettingsService.update(this.generalsettingsForm.value).subscribe(data => {\r\n this.loading = false;\r\n if (data != 0) {\r\n this.ts.showSuccess(\"Success\", \"Settings updated successfully.\")\r\n this.router.navigate(['/admin/generalsettings']);\r\n }\r\n }, error => {\r\n this.ts.showError(\"Error\", \"Failed to update record.\")\r\n this.loading = false;\r\n });\r\n\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2FkbWluL3NldHRpbmdzL25vdGlmaWNhdGlvbnMvYWRkbm90aWZpY2F0aW9ucy9hZGRub3RpZmljYXRpb25zLmNvbXBvbmVudC5jc3MifQ== */\";","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport { ImageuploadComponent } from 'src/app/imageupload/imageupload.component';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\nimport { NgbdDatepickerRangePopup } from 'src/app/datepicker-range/datepicker-range-popup';\r\nimport { NotificationsService } from 'src/app/_services/notifications.service';\r\n\r\n@Component({\r\n selector: 'app-addnotifications',\r\n templateUrl: './addnotifications.component.html',\r\n styleUrls: ['./addnotifications.component.css']\r\n})\r\nexport class AddnotificationsComponent implements OnInit {\r\n\r\n submitted = false;\r\n notificationsForm: FormGroup;\r\n loading = false;\r\n loadingNotifications = false;\r\n ButtonText = \"Save\"; \r\n @ViewChild(NgbdDatepickerRangePopup, { static: true }) _datepicker;\r\n @ViewChild(ImageuploadComponent, { static: true }) imgComp;\r\n\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private ls: LocalStorageService,\r\n public ts: ToastService,\r\n private notificationsService: NotificationsService\r\n\r\n ) {\r\n this.createForm();\r\n }\r\n\r\n ngOnInit() {\r\n this.setSelectedNotifications();\r\n }\r\n\r\n get f() { return this.notificationsForm.controls; }\r\n\r\n private createForm() {\r\n this.notificationsForm = this.formBuilder.group({\r\n title: ['', Validators.required],\r\n description: [''],\r\n statusID: [true],\r\n notificationID: 0,\r\n buttonURL: '',\r\n image: [''],\r\n startDate: [''],\r\n endDate: [''],\r\n \r\n });\r\n }\r\n\r\n private editForm(obj) {\r\n debugger\r\n this.f.title.setValue(obj.title);\r\n this.f.description.setValue(obj.description);\r\n this.f.notificationID.setValue(obj.notificationID);\r\n this.f.startDate.setValue(obj.startDate);\r\n this.f.buttonURL.setValue(obj.buttonURL);\r\n this.f.endDate.setValue(obj.endDate);\r\n this.f.image.setValue(obj.dealImage);\r\n this.f.statusID.setValue(obj.statusID === 1 ? true : false);\r\n this.imgComp.imageUrl = obj.dealImage;\r\n }\r\n\r\n setSelectedNotifications() {\r\n this.route.paramMap.subscribe(param => {\r\n const sid = +param.get('id');\r\n if (sid) {\r\n this.loadingNotifications = true;\r\n this.f.notificationID.setValue(sid);\r\n this.notificationsService.getById(sid).subscribe(res => {\r\n //Set Forms\r\n this.editForm(res);\r\n this.loadingNotifications = false;\r\n });\r\n }\r\n })\r\n }\r\n\r\n onSubmit() {\r\n this.notificationsForm.markAllAsTouched();\r\n this.submitted = true;\r\n if (this.notificationsForm.invalid) { return; }\r\n this.loading = true;\r\n this.f.statusID.setValue(this.f.statusID.value === true ? 1 : 2);\r\n this.f.image.setValue(this.imgComp.imageUrl);\r\n\r\n this.f.startDate.setValue(this.parseDate(this._datepicker.fromDate));\r\n this.f.endDate.setValue(this.parseDate(this._datepicker.toDate));\r\n\r\n if (parseInt(this.f.notificationID.value) === 0) {\r\n //Insert notifications\r\n \r\n this.notificationsService.insert(this.notificationsForm.value).subscribe(data => {\r\n if (data != 0) {\r\n this.ts.showSuccess(\"Success\",\"Record added successfully.\")\r\n this.router.navigate(['/admin/notifications']);\r\n }\r\n this.loading = false;\r\n }, error => {\r\n this.ts.showError(\"Error\",\"Failed to insert record.\")\r\n this.loading = false;\r\n });\r\n } else {\r\n //Update notifications\r\n this.notificationsService.update(this.notificationsForm.value).subscribe(data => {\r\n this.loading = false;\r\n if (data != 0) {\r\n this.ts.showSuccess(\"Success\",\"Record updated successfully.\")\r\n this.router.navigate(['/admin/notifications']);\r\n }\r\n }, error => {\r\n this.ts.showError(\"Error\",\"Failed to update record.\")\r\n this.loading = false;\r\n });\r\n }\r\n }\r\n\r\n parseDate(obj) {\r\n return obj.year + \"-\" + obj.month + \"-\" + obj.day;;\r\n }\r\n}\r\n","import { Component, OnInit, QueryList, ViewChildren } from '@angular/core';\r\nimport { Observable, Subscription } from 'rxjs';\r\nimport { NgbdSortableHeader, SortEvent } from 'src/app/_directives/sortable.directive';\r\n\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { Router } from '@angular/router';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\nimport { Notifications } from 'src/app/_models/Notifications';\r\nimport { NotificationsService } from 'src/app/_services/notifications.service';\r\n\r\n@Component({\r\n selector: 'app-notifications',\r\n templateUrl: './notifications.component.html',\r\n providers: []\r\n})\r\n\r\nexport class NotificationsComponent implements OnInit {\r\n data$: Observable;\r\n oldData: Notifications[];\r\n total$: Observable;\r\n loading$: Observable;\r\n private selectedBrand;\r\n\r\n locationSubscription: Subscription;\r\n submit: boolean;\r\n @ViewChildren(NgbdSortableHeader) headers: QueryList;\r\n\r\n constructor(public service: NotificationsService,\r\n public ls: LocalStorageService,\r\n public ts: ToastService,\r\n public router: Router) {\r\n this.selectedBrand = this.ls.getSelectedUser().brandID;\r\n\r\n this.loading$ = service.loading$;\r\n this.submit = false;\r\n\r\n }\r\n\r\n ngOnInit() {\r\n this.getData();\r\n }\r\n\r\n getData() {\r\n this.service.getAllData();\r\n this.data$ = this.service.data$;\r\n this.total$ = this.service.total$;\r\n this.loading$ = this.service.loading$;\r\n }\r\n\r\n onSort({ column, direction }: SortEvent) {\r\n\r\n this.headers.forEach(header => {\r\n if (header.sortable !== column) {\r\n header.direction = '';\r\n }\r\n });\r\n this.service.sortColumn = column;\r\n this.service.sortDirection = direction;\r\n }\r\n\r\n Edit(notifications) {\r\n this.router.navigate([\"admin/notifications/edit\", notifications]);\r\n }\r\n\r\n Delete(obj) {\r\n if (confirm(\"Are you sure to delete? \")) {\r\n this.service.delete(obj).subscribe((res: any) => {\r\n if (res != 0) {\r\n this.ts.showSuccess(\"Success\", \"Record deleted successfully.\")\r\n this.getData();\r\n }\r\n else\r\n this.ts.showError(\"Error\", \"Failed to delete record.\")\r\n\r\n }, error => {\r\n this.ts.showError(\"Error\", \"Failed to delete record.\")\r\n });\r\n }\r\n }\r\n}\r\n","export default \"\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsImZpbGUiOiJzcmMvYXBwL2FkbWluL3NldHRpbmdzL29mZmVycy9hZGRvZmZlcnMvYWRkb2ZmZXJzLmNvbXBvbmVudC5jc3MifQ== */\";","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport { ImageuploadComponent } from 'src/app/imageupload/imageupload.component';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\nimport { OffersService } from 'src/app/_services/offers.service';\r\nimport { NgbdDatepickerRangePopup } from 'src/app/datepicker-range/datepicker-range-popup';\r\n\r\n@Component({\r\n selector: 'app-addoffers',\r\n templateUrl: './addoffers.component.html',\r\n styleUrls: ['./addoffers.component.css']\r\n})\r\nexport class AddoffersComponent implements OnInit {\r\n\r\n submitted = false;\r\n offersForm: FormGroup;\r\n loading = false;\r\n loadingOffers = false;\r\n ButtonText = \"Save\"; \r\n @ViewChild(NgbdDatepickerRangePopup, { static: true }) _datepicker;\r\n @ViewChild(ImageuploadComponent, { static: true }) imgComp;\r\n Items = [];\r\n constructor(\r\n private formBuilder: FormBuilder,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n private ls: LocalStorageService,\r\n public ts: ToastService,\r\n private offersService: OffersService\r\n\r\n ) {\r\n this.createForm();\r\n this.loadItems();\r\n }\r\n\r\n ngOnInit() {\r\n this.setSelectedOffers();\r\n }\r\n\r\n get f() { return this.offersForm.controls; }\r\n\r\n private createForm() {\r\n this.offersForm = this.formBuilder.group({\r\n title: ['', Validators.required],\r\n description: [''],\r\n numberOfDays: [0],\r\n displayOrder: [1],\r\n statusID: [true],\r\n dealID: 0,\r\n itemID: 0,\r\n dealImage: [''],\r\n startDate: [''],\r\n endDate: [''],\r\n \r\n });\r\n }\r\n\r\n private editForm(obj) {\r\n debugger\r\n this.f.title.setValue(obj.title);\r\n this.f.description.setValue(obj.description);\r\n this.f.displayOrder.setValue(obj.displayOrder);\r\n this.f.numberOfDays.setValue(obj.numberOfDays);\r\n this.f.itemID.setValue(obj.itemID);\r\n this.f.dealID.setValue(obj.dealID);\r\n this.f.startDate.setValue(obj.startDate);\r\n this.f.endDate.setValue(obj.endDate);\r\n this.f.dealImage.setValue(obj.dealImage);\r\n this.f.statusID.setValue(obj.statusID === 1 ? true : false);\r\n this.imgComp.imageUrl = obj.dealImage;\r\n }\r\n\r\n setSelectedOffers() {\r\n this.route.paramMap.subscribe(param => {\r\n const sid = +param.get('id');\r\n if (sid) {\r\n this.loadingOffers = true;\r\n this.f.dealID.setValue(sid);\r\n this.offersService.getById(sid).subscribe(res => {\r\n //Set Forms\r\n this.editForm(res);\r\n this.loadingOffers = false;\r\n });\r\n }\r\n })\r\n }\r\n\r\n onSubmit() {\r\n this.offersForm.markAllAsTouched();\r\n this.submitted = true;\r\n if (this.offersForm.invalid) { return; }\r\n this.loading = true;\r\n this.f.statusID.setValue(this.f.statusID.value === true ? 1 : 2);\r\n this.f.dealImage.setValue(this.imgComp.imageUrl);\r\n\r\n this.f.startDate.setValue(this.parseDate(this._datepicker.fromDate));\r\n this.f.endDate.setValue(this.parseDate(this._datepicker.toDate));\r\n\r\n if (parseInt(this.f.dealID.value) === 0) {\r\n //Insert offers\r\n \r\n this.offersService.insert(this.offersForm.value).subscribe(data => {\r\n if (data != 0) {\r\n this.ts.showSuccess(\"Success\",\"Record added successfully.\")\r\n this.router.navigate(['/admin/offers']);\r\n }\r\n this.loading = false;\r\n }, error => {\r\n this.ts.showError(\"Error\",\"Failed to insert record.\")\r\n this.loading = false;\r\n });\r\n } else {\r\n //Update offers\r\n this.offersService.update(this.offersForm.value).subscribe(data => {\r\n this.loading = false;\r\n if (data != 0) {\r\n this.ts.showSuccess(\"Success\",\"Record updated successfully.\")\r\n this.router.navigate(['/admin/offers']);\r\n }\r\n }, error => {\r\n this.ts.showError(\"Error\",\"Failed to update record.\")\r\n this.loading = false;\r\n });\r\n }\r\n }\r\n\r\n parseDate(obj) {\r\n return obj.year + \"-\" + obj.month + \"-\" + obj.day;;\r\n }\r\n private loadItems() {\r\n this.offersService.loadItems().subscribe((res: any) => {\r\n \r\n this.Items = res;\r\n });\r\n }\r\n}\r\n","import { Component, OnInit, QueryList, ViewChildren } from '@angular/core';\r\nimport { Observable, Subscription } from 'rxjs';\r\nimport { NgbdSortableHeader, SortEvent } from 'src/app/_directives/sortable.directive';\r\n\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { Router } from '@angular/router';\r\nimport { Offers } from 'src/app/_models/Offers';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\nimport { OffersService } from 'src/app/_services/offers.service';\r\n\r\n@Component({\r\n selector: 'app-offers',\r\n templateUrl: './offers.component.html',\r\n providers: []\r\n})\r\n\r\nexport class OffersComponent implements OnInit {\r\n data$: Observable;\r\n oldData: Offers[];\r\n total$: Observable;\r\n loading$: Observable;\r\n private selectedBrand;\r\n\r\n locationSubscription: Subscription;\r\n submit: boolean;\r\n @ViewChildren(NgbdSortableHeader) headers: QueryList;\r\n\r\n constructor(public service: OffersService,\r\n public ls: LocalStorageService,\r\n public ts: ToastService,\r\n public router: Router) {\r\n this.selectedBrand = this.ls.getSelectedUser().brandID;\r\n\r\n this.loading$ = service.loading$;\r\n this.submit = false;\r\n\r\n }\r\n\r\n ngOnInit() {\r\n this.getData();\r\n }\r\n\r\n getData() {\r\n this.service.getAllData();\r\n this.data$ = this.service.data$;\r\n this.total$ = this.service.total$;\r\n this.loading$ = this.service.loading$;\r\n }\r\n\r\n onSort({ column, direction }: SortEvent) {\r\n\r\n this.headers.forEach(header => {\r\n if (header.sortable !== column) {\r\n header.direction = '';\r\n }\r\n });\r\n this.service.sortColumn = column;\r\n this.service.sortDirection = direction;\r\n }\r\n\r\n Edit(offers) {\r\n this.router.navigate([\"admin/offers/edit\", offers]);\r\n }\r\n\r\n Delete(obj) {\r\n if (confirm(\"Are you sure to delete? \")) {\r\n this.service.delete(obj).subscribe((res: any) => {\r\n if (res != 0) {\r\n this.ts.showSuccess(\"Success\", \"Record deleted successfully.\")\r\n this.getData();\r\n }\r\n else\r\n this.ts.showError(\"Error\", \"Failed to delete record.\")\r\n\r\n }, error => {\r\n this.ts.showError(\"Error\", \"Failed to delete record.\")\r\n });\r\n }\r\n }\r\n}\r\n","import { Component, OnInit, QueryList, ViewChildren } from '@angular/core';\r\nimport { Observable, Subscription } from 'rxjs';\r\nimport { NgbdSortableHeader, SortEvent } from 'src/app/_directives/sortable.directive';\r\n\r\nimport { LocalStorageService } from 'src/app/_services/local-storage.service';\r\nimport { Router } from '@angular/router';\r\nimport { ToastService } from 'src/app/_services/toastservice';\r\nimport { Reviews } from 'src/app/_models/Reviews';\r\nimport { ReviewsService } from 'src/app/_services/reviews.service';\r\n\r\n@Component({\r\n selector: 'app-reviews',\r\n templateUrl: './reviews.component.html',\r\n providers: []\r\n})\r\n\r\nexport class ReviewsComponent implements OnInit {\r\n data$: Observable;\r\n oldData: Reviews[];\r\n total$: Observable;\r\n loading$: Observable;\r\n private selectedBrand;\r\n\r\n locationSubscription: Subscription;\r\n submit: boolean;\r\n @ViewChildren(NgbdSortableHeader) headers: QueryList;\r\n\r\n constructor(public service: ReviewsService,\r\n public ls: LocalStorageService,\r\n public ts: ToastService,\r\n public router: Router) {\r\n this.selectedBrand = this.ls.getSelectedUser().brandID;\r\n\r\n this.loading$ = service.loading$;\r\n this.submit = false;\r\n\r\n }\r\n\r\n ngOnInit() {\r\n this.getData();\r\n }\r\n\r\n getData() {\r\n this.service.getAllData();\r\n this.data$ = this.service.data$;\r\n this.total$ = this.service.total$;\r\n this.loading$ = this.service.loading$;\r\n }\r\n\r\n onSort({ column, direction }: SortEvent) {\r\n\r\n this.headers.forEach(header => {\r\n if (header.sortable !== column) {\r\n header.direction = '';\r\n }\r\n });\r\n this.service.sortColumn = column;\r\n this.service.sortDirection = direction;\r\n }\r\n\r\n Delete(obj) {\r\n if (confirm(\"Are you sure to delete? \")) {\r\n this.service.delete(obj).subscribe((res: any) => {\r\n if (res != 0) {\r\n this.ts.showSuccess(\"Success\", \"Record deleted successfully.\")\r\n this.getData();\r\n }\r\n else\r\n this.ts.showError(\"Error\", \"Failed to delete record.\")\r\n\r\n }, error => {\r\n this.ts.showError(\"Error\", \"Failed to delete record.\")\r\n });\r\n }\r\n }\r\n\r\n}\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html'\r\n})\r\nexport class AppComponent {\r\n title = 'app';\r\n}\r\n","import { BrowserModule } from '@angular/platform-browser';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';\r\nimport { RouterModule } from '@angular/router';\r\n\r\nimport { AppComponent } from './app.component';\r\nimport { NavMenuComponent } from './nav-menu/nav-menu.component';\r\nimport { HomeComponent } from './home/home.component';\r\nimport { CounterComponent } from './counter/counter.component';\r\nimport { FetchDataComponent } from './fetch-data/fetch-data.component';\r\nimport { LoginComponent } from './login/login.component';\r\nimport { DashboardComponent } from './admin/dashboard/dashboard.component';\r\nimport { LayoutComponent } from './layout/layout.component';\r\nimport { ServiceWorkerModule } from '@angular/service-worker';\r\nimport { environment } from '../environments/environment';\r\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { CategoryComponent } from './admin/menu/category/category.component';\r\nimport { AddcategoryComponent } from './admin/menu/category/addcategory/addcategory.component';\r\nimport { ImageuploadComponent } from './imageupload/imageupload.component';\r\nimport { BgFeatureduploadComponent } from './themeImages/bgfeaturedupload/bgfeaturedupload.component';\r\nimport { BgNewarrivaluploadComponent } from './themeImages/bgnewarrivalupload/bgnewarrivalupload.component';\r\nimport { ItemsComponent } from './admin/menu/items/items.component';\r\nimport { AdditemsComponent } from './admin/menu/items/additem/additem.component';\r\nimport { ModifiersComponent } from './admin/menu/modifiers/modifiers.component';\r\nimport { AddmodifierComponent } from './admin/menu/modifiers/addmodifier/addmodifier.component';\r\nimport { CustomersComponent } from './admin/customer/customers/customers.component';\r\nimport { AddcustomerComponent } from './admin/customer/customers/addcustomers/addcustomer.component';\r\nimport { LocationsComponent } from './admin/company/locations/locations.component';\r\nimport { AddlocationComponent } from './admin/company/locations/addlocation/addlocation.component';\r\nimport { NgSelectModule } from '@ng-select/ng-select';\r\nimport { AddbrandComponent } from './admin/company/brands/addbrand/addbrand.component';\r\n\r\nimport { NgApexchartsModule } from 'ng-apexcharts';\r\nimport { ToastrModule } from 'ngx-toastr';\r\nimport { BrandComponent } from './admin/company/brands/brands.component';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { SummaryComponent } from './admin/report/summary/summary.component';\r\nimport { NgbdDatepickerRangePopup } from './datepicker-range/datepicker-range-popup';\r\nimport { BannerComponent } from './admin/settings/banner/banner.component';\r\nimport { AddbannerComponent } from './admin/settings/banner/addbanner/addbanner.component';\r\nimport { SalesdetailComponent } from './admin/report/salesdetail/salesdetail.component';\r\nimport { SalesuserwiseComponent } from './admin/report/salesuserwise/salesuserwise.component';\r\nimport { SalescustomerwiseComponent } from './admin/report/salescustomerwise/salescustomerwise.component';\r\nimport { SalescategorywiseComponent } from './admin/report/salescategorywise/salescategorywise.component';\r\nimport { SalesitemwiseComponent } from './admin/report/salesitemwise/salesitemwise.component';\r\nimport { OffersComponent } from './admin/settings/offers/offers.component';\r\nimport { AddoffersComponent } from './admin/settings/offers/addoffers/addoffers.component';\r\nimport { OrdersComponent } from './admin/sales/orders/orders.component';\r\nimport { OrderdetailsComponent } from './admin/sales/orderdetails/orderdetails.component';\r\nimport { SubcategoryComponent } from './admin/menu/subcategory/subcategory.component';\r\nimport { AddsubcategoryComponent } from './admin/menu/subcategory/addsubcategory/addsubcategory.component';\r\nimport { GiftComponent } from './admin/menu/gift/gift.component';\r\nimport { AddgiftComponent } from './admin/menu/gift/addgift/addgift.component';\r\nimport { GeneralsettingsComponent } from './admin/settings/generalsettings/generalsettings.component';\r\nimport { CouponComponent } from './admin/settings/coupon/coupon.component';\r\nimport { AddcouponComponent } from './admin/settings/coupon/addcoupon/addcoupon.component';\r\nimport { ExcelService } from 'src/ExportExcel/excel.service';\r\nimport { NotificationsComponent } from './admin/settings/notifications/notifications.component';\r\nimport { AddnotificationsComponent } from './admin/settings/notifications/addnotifications/addnotifications.component';\r\nimport { ReviewsComponent } from './admin/settings/reviews/reviews.component';\r\nimport { NgxUiLoaderModule } from 'ngx-ui-loader';\r\nimport { EditorderComponent } from './admin/sales/editorder/editorder.component';\r\nimport { NgbdDatepickerPopup } from './datepicker-popup/datepicker-popup';\r\nimport { DeliveryComponent } from './admin/settings/delivery/delivery.component';\r\nimport { AdddeliveryComponent } from './admin/settings/delivery/adddelivery/adddelivery.component';\r\nimport { CityComponent } from './admin/menu/city/city.component';\r\nimport { AddcityComponent } from './admin/menu/city/addcity/addcity.component';\r\nimport { DynamicCssComponent } from './admin/settings/dynamiccss/dynamiccss.component';\r\nimport { BgNewsletteruploadComponent } from './themeImages/bgnewsletterupload/bgnewsletterupload.component';\r\nimport { BgPopularuploadComponent } from './themeImages/bgpopularupload/bgpopularupload.component';\r\nimport { BgTestimonialuploadComponent } from './themeImages/bgtestimonialupload/bgtestimonialupload.component';\r\nimport { BgWorkflowuploadComponent } from './themeImages/bgworkflowupload/bgworkflowupload.component';\r\nimport { logouploadComponent } from './themeImages/logoupload/logoupload.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n NavMenuComponent,\r\n HomeComponent,\r\n DashboardComponent,\r\n LayoutComponent,\r\n CounterComponent,\r\n LoginComponent,\r\n FetchDataComponent,\r\n CategoryComponent,\r\n AddcategoryComponent,\r\n ItemsComponent,\r\n AdditemsComponent,\r\n ModifiersComponent,\r\n AddmodifierComponent,\r\n CustomersComponent,\r\n AddcustomerComponent,\r\n BrandComponent,\r\n AddbrandComponent,\r\n LocationsComponent,\r\n AddlocationComponent,\r\n ImageuploadComponent,\r\n BgFeatureduploadComponent,\r\n BgNewarrivaluploadComponent,\r\n BgNewsletteruploadComponent,\r\n BgPopularuploadComponent,\r\n BgTestimonialuploadComponent,\r\n BgWorkflowuploadComponent,\r\n logouploadComponent,\r\n SummaryComponent,\r\n NgbdDatepickerRangePopup,\r\n NgbdDatepickerPopup,\r\n BannerComponent,\r\n AddbannerComponent,\r\n OffersComponent,\r\n AddoffersComponent,\r\n SalesdetailComponent,\r\n SalescategorywiseComponent,\r\n SalescustomerwiseComponent,\r\n SalesitemwiseComponent,\r\n SalesuserwiseComponent,\r\n OrdersComponent,\r\n OrderdetailsComponent,\r\n SubcategoryComponent,\r\n AddsubcategoryComponent,\r\n GiftComponent,\r\n AddgiftComponent,\r\n GeneralsettingsComponent,\r\n CouponComponent,\r\n AddcouponComponent,\r\n NotificationsComponent,\r\n AddnotificationsComponent,\r\n ReviewsComponent,\r\n EditorderComponent,\r\n DeliveryComponent,\r\n AdddeliveryComponent,\r\n CityComponent,\r\n AddcityComponent,\r\n DynamicCssComponent\r\n\r\n ],\r\n imports: [\r\n BrowserModule.withServerTransition({ appId: 'ng-cli-universal' }),\r\n HttpClientModule,\r\n FormsModule,\r\n NgSelectModule,\r\n NgxUiLoaderModule,\r\n ReactiveFormsModule,\r\n ToastrModule.forRoot(),\r\n BrowserAnimationsModule,\r\n NgApexchartsModule,\r\n RouterModule.forRoot([\r\n { path: '', component: LoginComponent, pathMatch: 'full' },\r\n {\r\n path: 'admin', component: LayoutComponent,\r\n children: [\r\n { path: 'dashboard', component: DashboardComponent },\r\n { path: 'category', component: CategoryComponent },\r\n { path: 'category/add', component: AddcategoryComponent },\r\n { path: 'category/edit/:id', component: AddcategoryComponent },\r\n\r\n { path: 'subcategory', component: SubcategoryComponent },\r\n { path: 'subcategory/add', component: AddsubcategoryComponent },\r\n { path: 'subcategory/edit/:id', component: AddsubcategoryComponent },\r\n\r\n { path: 'city', component: CityComponent },\r\n { path: 'city/add', component: AddcityComponent },\r\n { path: 'city/edit/:id', component: AddcityComponent },\r\n\r\n { path: 'gift', component: GiftComponent },\r\n { path: 'gift/add', component: AddgiftComponent },\r\n { path: 'gift/edit/:id', component: AddgiftComponent },\r\n\r\n { path: 'item', component: ItemsComponent },\r\n { path: 'item/add', component: AdditemsComponent },\r\n { path: 'item/edit/:id', component: AdditemsComponent },\r\n\r\n { path: 'modifier', component: ModifiersComponent },\r\n { path: 'modifier/add', component: AddmodifierComponent },\r\n { path: 'modifier/edit/:id', component: AddmodifierComponent },\r\n\r\n { path: 'orders', component: OrdersComponent },\r\n { path: 'orders/add', component: OrderdetailsComponent },\r\n { path: 'orders/view/:id', component: OrderdetailsComponent },\r\n { path: 'orders/edit/:id', component: EditorderComponent },\r\n\r\n { path: 'customer', component: CustomersComponent },\r\n { path: 'customer/add', component: AddcustomerComponent },\r\n { path: 'customer/edit/:id', component: AddcustomerComponent },\r\n\r\n { path: 'location', component: LocationsComponent },\r\n { path: 'location/add', component: AddlocationComponent },\r\n { path: 'location/edit/:id', component: AddlocationComponent },\r\n\r\n { path: 'brand', component: BrandComponent },\r\n { path: 'brand/add', component: AddbrandComponent },\r\n { path: 'brand/edit/:id', component: AddbrandComponent },\r\n\r\n { path: 'banner', component: BannerComponent },\r\n { path: 'banner/add', component: AddbannerComponent },\r\n { path: 'banner/edit/:id', component: AddbannerComponent },\r\n\r\n { path: 'offers', component: OffersComponent },\r\n { path: 'offers/add', component: AddoffersComponent },\r\n { path: 'offers/edit/:id', component: AddoffersComponent },\r\n\r\n { path: 'notifications', component: NotificationsComponent },\r\n { path: 'notifications/add', component: AddnotificationsComponent },\r\n { path: 'notifications/edit/:id', component: AddnotificationsComponent},\r\n\r\n { path: 'reviews', component: ReviewsComponent },\r\n\r\n { path: 'coupon', component:CouponComponent },\r\n { path: 'coupon/add', component: AddcouponComponent },\r\n { path: 'coupon/edit/:id', component: AddcouponComponent },\r\n\r\n { path: 'settings', component: GeneralsettingsComponent },\r\n { path: 'dynamiccss', component: DynamicCssComponent },\r\n\r\n { path: 'report/summary', component: SummaryComponent },\r\n { path: 'report/salesdetail', component: SalesdetailComponent },\r\n { path: 'report/salesuserwise', component: SalesuserwiseComponent },\r\n { path: 'report/salescustomerwise', component: SalescustomerwiseComponent },\r\n { path: 'report/salescategorywise', component: SalescategorywiseComponent },\r\n { path: 'report/salesitemwise', component: SalesitemwiseComponent },\r\n\r\n { path: 'delivery', component: DeliveryComponent },\r\n { path: 'delivery/add', component: AdddeliveryComponent },\r\n { path: 'delivery/edit/:id', component: AdddeliveryComponent },\r\n ]\r\n }\r\n ]),\r\n ServiceWorkerModule.register('ngsw-worker.js', { enabled: environment.production }),\r\n NgbModule\r\n ],\r\n providers: [],\r\n exports: [NgbdDatepickerRangePopup,NgbdDatepickerPopup],\r\n bootstrap: [AppComponent, NgbdDatepickerRangePopup,NgbdDatepickerPopup]\r\n})\r\nexport class AppModule { }\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-counter-component',\r\n templateUrl: './counter.component.html'\r\n})\r\nexport class CounterComponent {\r\n public currentCount = 0;\r\n\r\n public incrementCounter() {\r\n this.currentCount++;\r\n }\r\n}\r\n","import {Component} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ngbd-datepicker-popup',\r\n templateUrl: './datepicker-popup.html'\r\n})\r\nexport class NgbdDatepickerPopup {\r\n model;\r\n}\r\n","import {Component} from '@angular/core';\r\nimport {NgbDate, NgbCalendar, NgbDateParserFormatter} from '@ng-bootstrap/ng-bootstrap';\r\n\r\n@Component({\r\n selector: 'ngbd-datepicker-range-popup',\r\n templateUrl: './datepicker-range-popup.html',\r\n styles: [`\r\n .form-group.hidden {\r\n width: 0;\r\n margin: 0;\r\n border: none;\r\n padding: 0;\r\n }\r\n .custom-day {\r\n text-align: center;\r\n padding: 0.185rem 0.25rem;\r\n display: inline-block;\r\n height: 2rem;\r\n width: 2rem;\r\n }\r\n .custom-day.focused {\r\n background-color: #e6e6e6;\r\n }\r\n .custom-day.range, .custom-day:hover {\r\n background-color: rgb(2, 117, 216);\r\n color: white;\r\n }\r\n .custom-day.faded {\r\n background-color: rgba(2, 117, 216, 0.5);\r\n }\r\n `]\r\n})\r\nexport class NgbdDatepickerRangePopup {\r\n\r\n hoveredDate: NgbDate | null = null;\r\n\r\n fromDate: NgbDate | null;\r\n toDate: NgbDate | null;\r\n\r\n constructor(private calendar: NgbCalendar, public formatter: NgbDateParserFormatter) {\r\n //var date = new Date();\r\n //this.fromDate = new NgbDate(date.getFullYear(), date.getMonth(), 1);\r\n //this.toDate = new NgbDate(date.getFullYear(), date.getMonth() + 1 ,0);\r\n\r\n this.fromDate = calendar.getToday();\r\n this.toDate = calendar.getNext(calendar.getToday(), 'd', 0);\r\n }\r\n\r\n onDateSelection(date: NgbDate) {\r\n if (!this.fromDate && !this.toDate) {\r\n this.fromDate = date;\r\n } else if (this.fromDate && !this.toDate && date && date.after(this.fromDate)) {\r\n this.toDate = date;\r\n } else {\r\n this.toDate = null;\r\n this.fromDate = date;\r\n }\r\n }\r\n\r\n isHovered(date: NgbDate) {\r\n return this.fromDate && !this.toDate && this.hoveredDate && date.after(this.fromDate) && date.before(this.hoveredDate);\r\n }\r\n\r\n isInside(date: NgbDate) {\r\n return this.toDate && date.after(this.fromDate) && date.before(this.toDate);\r\n }\r\n\r\n isRange(date: NgbDate) {\r\n return date.equals(this.fromDate) || (this.toDate && date.equals(this.toDate)) || this.isInside(date) || this.isHovered(date);\r\n }\r\n\r\n validateInput(currentValue: NgbDate | null, input: string): NgbDate | null {\r\n const parsed = this.formatter.parse(input);\r\n return parsed && this.calendar.isValid(NgbDate.from(parsed)) ? NgbDate.from(parsed) : currentValue;\r\n }\r\n}\r\n","import { Component, Inject } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n@Component({\r\n selector: 'app-fetch-data',\r\n templateUrl: './fetch-data.component.html'\r\n})\r\nexport class FetchDataComponent {\r\n public forecasts: WeatherForecast[];\r\n\r\n constructor(http: HttpClient, @Inject('BASE_URL') baseUrl: string) {\r\n http.get(baseUrl + 'weatherforecast').subscribe(result => {\r\n this.forecasts = result;\r\n }, error => console.error(error));\r\n }\r\n}\r\n\r\ninterface WeatherForecast {\r\n date: string;\r\n temperatureC: number;\r\n temperatureF: number;\r\n summary: string;\r\n}\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-home',\r\n templateUrl: './home.component.html',\r\n})\r\nexport class HomeComponent {\r\n}\r\n","import { Component, ChangeDetectorRef } from '@angular/core';\r\nimport { FormBuilder } from '@angular/forms';\r\n@Component({\r\n selector: 'app-imageupload',\r\n templateUrl: './imageupload.component.html'\r\n})\r\nexport class ImageuploadComponent {\r\n\r\n imageUrl: any = \"https://marnpossastorage.blob.core.windows.net/marnpos-v2-images/default-product.PNG\";\r\n editFile: boolean = true;\r\n removeUpload: boolean = false;\r\n currentFile: File = null;\r\n //onFileChange(event) {\r\n // let reader = new FileReader(); // HTML5 FileReader API\r\n // let file = event.target.files[0];\r\n // if (event.target.files && event.target.files[0]) {\r\n // reader.readAsDataURL(file);\r\n\r\n // // When file uploads set it to file formcontrol\r\n // reader.onload = () => {\r\n // this.imageUrl = reader.result;\r\n // this.registrationForm.patchValue({\r\n // file: reader.result\r\n // });\r\n // this.editFile = false;\r\n // this.removeUpload = true;\r\n // }\r\n // // ChangeDetectorRef since file is loading outside the zone\r\n // this.cd.markForCheck();\r\n // }\r\n //}\r\n\r\n onFileChange(event: any) {\r\n const maxSize = 150 * 1024; // 150 KB in bytes\r\n let reader = new FileReader(); // HTML5 FileReader API\r\n let file = event.target.files[0];\r\n\r\n if (file) {\r\n // Check if the file size exceeds the limit\r\n if (file.size > maxSize) {\r\n alert('File size exceeds 150 KB. Please select a smaller file.');\r\n return;\r\n }\r\n\r\n // Read the file if it meets the size criteria\r\n reader.readAsDataURL(file);\r\n\r\n // When file uploads set it to file formcontrol\r\n reader.onload = () => {\r\n this.imageUrl = reader.result;\r\n this.registrationForm.patchValue({\r\n file: reader.result\r\n });\r\n this.editFile = false;\r\n this.removeUpload = true;\r\n };\r\n\r\n // ChangeDetectorRef since file is loading outside the zone\r\n this.cd.markForCheck();\r\n }\r\n }\r\n\r\n constructor(\r\n public fb: FormBuilder,\r\n private cd: ChangeDetectorRef\r\n\r\n ) { }\r\n registrationForm = this.fb.group({\r\n file: [null]\r\n })\r\n}\r\n","export default \".nav-bar-inner-spaces{\\r\\n display: -webkit-box; \\r\\n}\\r\\n\\r\\n.horizontal-menu .bottom-navbar .page-navigation > .nav-item{\\r\\n margin-right: 10px;\\r\\n}\\r\\n\\r\\n.flag-icon-us {\\r\\n font-size: 17PX !important;\\r\\n}\\r\\n\\r\\n.flag-icon-sa {\\r\\n font-size: 17PX !important;\\r\\n}\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvbGF5b3V0L2xheW91dC5jb21wb25lbnQuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0Usb0JBQW9CO0FBQ3RCOztBQUVBO0lBQ0ksa0JBQWtCO0FBQ3RCOztBQUNBO0VBQ0UsMEJBQTBCO0FBQzVCOztBQUNBO0VBQ0UsMEJBQTBCO0FBQzVCIiwiZmlsZSI6InNyYy9hcHAvbGF5b3V0L2xheW91dC5jb21wb25lbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLm5hdi1iYXItaW5uZXItc3BhY2Vze1xyXG4gIGRpc3BsYXk6IC13ZWJraXQtYm94OyAgXHJcbn1cclxuXHJcbi5ob3Jpem9udGFsLW1lbnUgLmJvdHRvbS1uYXZiYXIgLnBhZ2UtbmF2aWdhdGlvbiA+IC5uYXYtaXRlbXtcclxuICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxufVxyXG4uZmxhZy1pY29uLXVzIHtcclxuICBmb250LXNpemU6IDE3UFggIWltcG9ydGFudDtcclxufVxyXG4uZmxhZy1pY29uLXNhIHtcclxuICBmb250LXNpemU6IDE3UFggIWltcG9ydGFudDtcclxufSJdfQ== */\";","import { Component, OnInit, NgModule } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n// import { TranslateService } from '@ngx-translate/core';\r\nimport { environment } from 'src/environments/environment.prod';\r\n// import { LoginService } from '../services/login.service';\r\n// import { DashboardService } from '../services/dashboard.service';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\nimport { ToastrModule } from 'ngx-toastr';\r\nimport { LocationsService } from '../_services/locations.service';\r\nimport { LocalStorageService } from '../_services/local-storage.service';\r\n\r\n@Component({\r\n selector: 'app-layout',\r\n templateUrl: './layout.component.html',\r\n styleUrls: ['./layout.component.css'],\r\n\r\n})\r\nexport class LayoutComponent implements OnInit {\r\n _Langname = \"\";\r\n locationID: 0;\r\n Locations: [];\r\n private selectedBrand;\r\n\r\n ngOnInit() {\r\n var data = this.ls.getSelectedUser();\r\n\r\n this.loadLocations();\r\n\r\n \r\n if (data == null)\r\n this.router.navigate([\"/\"]);\r\n\r\n }\r\n constructor(private router: Router\r\n , public service: LocationsService\r\n , public ls: LocalStorageService) {\r\n\r\n }\r\n Logout() {\r\n\r\n sessionStorage.clear();\r\n this.router.navigate(['/']);\r\n }\r\n\r\n private loadLocations() {\r\n // var loc = this.ls.getLocation();\r\n // if (loc != null) {\r\n // this.Locations = this.ls.getLocation();\r\n // this.locationID = this.ls.getSelectedLocation().locationID;\r\n // }\r\n // else {\r\n // this.service.getAllLocations(this.ls.getSelectedUser().brandID).subscribe((res: any) => {\r\n // debugger\r\n // if (res.length > 0) {\r\n // this.ls.setLocation(res);\r\n // this.ls.setSelectedLocation(res[0]);\r\n // this.locationID =res[0].locationID;\r\n // this.Locations =res;\r\n // }\r\n // else {\r\n // this.router.navigate(['/']);\r\n // }\r\n // });\r\n // }\r\n // this.Locations = this.ls.getLocation();\r\n // this.locationID = this.ls.getSelectedLocation().locationID;\r\n\r\n }\r\n changeloc(LocObj) {\r\n\r\n this.locationID = this.ls.selectedLocation().locationID;\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormGroup, FormBuilder, Validators } from '@angular/forms';\r\nimport { LoginService } from '../_services/login.service';\r\nimport { first } from 'rxjs/operators';\r\nimport { LocalStorageService } from '../_services/local-storage.service';\r\nimport { ToastService } from '../_services/toastservice';\r\nimport { Router } from '@angular/router';\r\n\r\n@Component({\r\n selector: 'app-login',\r\n templateUrl: './login.component.html'\r\n})\r\nexport class LoginComponent implements OnInit {\r\n loginForm: FormGroup;\r\n constructor(private formBuilder: FormBuilder,\r\n public service: LoginService,\r\n public ts: ToastService,\r\n private router: Router,\r\n private ls: LocalStorageService) { }\r\n\r\n ngOnInit() {\r\n this.createForm();\r\n }\r\n onSubmit() {\r\n\r\n this.loginForm.markAllAsTouched();\r\n if (this.loginForm.invalid) {\r\n return;\r\n }\r\n\r\n this.service.login(this.f.email.value, this.f.password.value)\r\n .pipe(first())\r\n .subscribe(\r\n data => {\r\n \r\n if (data != null) {\r\n \r\n // this.loadLocations(data[\"brandID\"]);\r\n this.ls.setSelectedUser(data);\r\n this.router.navigate([\"/admin/dashboard\"]);\r\n }\r\n else {\r\n this.ts.showError(\"Error\", \"Username or password is not correct.\");\r\n }\r\n\r\n },\r\n error => {\r\n this.ts.showError(\"Error\", \"Something went wrong.\");\r\n });\r\n }\r\n\r\n get f() { return this.loginForm.controls; }\r\n private createForm() {\r\n\r\n this.loginForm = this.formBuilder.group({\r\n\r\n email: ['', Validators.required],\r\n password: ['', Validators.required],\r\n\r\n });\r\n }\r\n private loadLocations(bid) {\r\n \r\n this.service.getAllLocations(bid).subscribe((res: any) => {\r\n \r\n if (res.length > 0) {\r\n this.ls.setLocation(res);\r\n this.ls.setSelectedLocation(res[0]);\r\n this.router.navigate([\"/admin/dashboard\"]);\r\n }\r\n else {\r\n this.ls.setLocation(null);\r\n this.ls.setSelectedLocation(null);\r\n }\r\n });\r\n }\r\n\r\n\r\n}\r\n","export default \"a.navbar-brand {\\r\\n white-space: normal;\\r\\n text-align: center;\\r\\n word-break: break-all;\\r\\n}\\r\\n\\r\\nhtml {\\r\\n font-size: 14px;\\r\\n}\\r\\n\\r\\n@media (min-width: 768px) {\\r\\n html {\\r\\n font-size: 16px;\\r\\n }\\r\\n}\\r\\n\\r\\n.box-shadow {\\r\\n box-shadow: 0 .25rem .75rem rgba(0, 0, 0, .05);\\r\\n}\\r\\n\\r\\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy9hcHAvbmF2LW1lbnUvbmF2LW1lbnUuY29tcG9uZW50LmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLG1CQUFtQjtFQUNuQixrQkFBa0I7RUFDbEIscUJBQXFCO0FBQ3ZCOztBQUVBO0VBQ0UsZUFBZTtBQUNqQjs7QUFDQTtFQUNFO0lBQ0UsZUFBZTtFQUNqQjtBQUNGOztBQUVBO0VBQ0UsOENBQThDO0FBQ2hEIiwiZmlsZSI6InNyYy9hcHAvbmF2LW1lbnUvbmF2LW1lbnUuY29tcG9uZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbImEubmF2YmFyLWJyYW5kIHtcclxuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XHJcbn1cclxuXHJcbmh0bWwge1xyXG4gIGZvbnQtc2l6ZTogMTRweDtcclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICBodG1sIHtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICB9XHJcbn1cclxuXHJcbi5ib3gtc2hhZG93IHtcclxuICBib3gtc2hhZG93OiAwIC4yNXJlbSAuNzVyZW0gcmdiYSgwLCAwLCAwLCAuMDUpO1xyXG59XHJcbiJdfQ== */\";","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-nav-menu',\r\n templateUrl: './nav-menu.component.html',\r\n styleUrls: ['./nav-menu.component.css']\r\n})\r\nexport class NavMenuComponent {\r\n isExpanded = false;\r\n\r\n collapse() {\r\n this.isExpanded = false;\r\n }\r\n\r\n toggle() {\r\n this.isExpanded = !this.isExpanded;\r\n }\r\n}\r\n","import { Component, ChangeDetectorRef } from '@angular/core';\r\nimport { FormBuilder } from '@angular/forms';\r\n@Component({\r\n selector: 'app-bgfeaturedupload',\r\n templateUrl: './bgfeaturedupload.component.html'\r\n})\r\nexport class BgFeatureduploadComponent {\r\n\r\n imageUrl: any = \"https://marnpossastorage.blob.core.windows.net/marnpos-v2-images/default-product.PNG\";\r\n editFile: boolean = true;\r\n removeUpload: boolean = false;\r\n currentFile: File = null;\r\n onFileChange(event) {\r\n let reader = new FileReader(); // HTML5 FileReader API\r\n let file = event.target.files[0];\r\n if (event.target.files && event.target.files[0]) {\r\n reader.readAsDataURL(file);\r\n\r\n // When file uploads set it to file formcontrol\r\n reader.onload = () => {\r\n this.imageUrl = reader.result;\r\n this.registrationForm.patchValue({\r\n file: reader.result\r\n });\r\n this.editFile = false;\r\n this.removeUpload = true;\r\n }\r\n // ChangeDetectorRef since file is loading outside the zone\r\n this.cd.markForCheck(); \r\n }\r\n }\r\n\r\n constructor(\r\n public fb: FormBuilder,\r\n private cd: ChangeDetectorRef\r\n\r\n ) { }\r\n registrationForm = this.fb.group({\r\n file: [null]\r\n })\r\n}\r\n","import { Component, ChangeDetectorRef } from '@angular/core';\r\nimport { FormBuilder } from '@angular/forms';\r\n@Component({\r\n selector: 'app-bgnewarrivalupload',\r\n templateUrl: './bgnewarrivalupload.component.html'\r\n})\r\nexport class BgNewarrivaluploadComponent {\r\n\r\n imageUrl: any = \"https://marnpossastorage.blob.core.windows.net/marnpos-v2-images/default-product.PNG\";\r\n editFile: boolean = true;\r\n removeUpload: boolean = false;\r\n currentFile: File = null;\r\n onFileChange(event) {\r\n let reader = new FileReader(); // HTML5 FileReader API\r\n let file = event.target.files[0];\r\n if (event.target.files && event.target.files[0]) {\r\n reader.readAsDataURL(file);\r\n\r\n // When file uploads set it to file formcontrol\r\n reader.onload = () => {\r\n this.imageUrl = reader.result;\r\n this.registrationForm.patchValue({\r\n file: reader.result\r\n });\r\n this.editFile = false;\r\n this.removeUpload = true;\r\n }\r\n // ChangeDetectorRef since file is loading outside the zone\r\n this.cd.markForCheck(); \r\n }\r\n }\r\n\r\n constructor(\r\n public fb: FormBuilder,\r\n private cd: ChangeDetectorRef\r\n\r\n ) { }\r\n registrationForm = this.fb.group({\r\n file: [null]\r\n })\r\n}\r\n","import { Component, ChangeDetectorRef } from '@angular/core';\r\nimport { FormBuilder } from '@angular/forms';\r\n@Component({\r\n selector: 'app-bgnewsletterupload',\r\n templateUrl: './bgnewsletterupload.component.html'\r\n})\r\nexport class BgNewsletteruploadComponent {\r\n\r\n imageUrl: any = \"https://marnpossastorage.blob.core.windows.net/marnpos-v2-images/default-product.PNG\";\r\n editFile: boolean = true;\r\n removeUpload: boolean = false;\r\n currentFile: File = null;\r\n onFileChange(event) {\r\n let reader = new FileReader(); // HTML5 FileReader API\r\n let file = event.target.files[0];\r\n if (event.target.files && event.target.files[0]) {\r\n reader.readAsDataURL(file);\r\n\r\n // When file uploads set it to file formcontrol\r\n reader.onload = () => {\r\n this.imageUrl = reader.result;\r\n this.registrationForm.patchValue({\r\n file: reader.result\r\n });\r\n this.editFile = false;\r\n this.removeUpload = true;\r\n }\r\n // ChangeDetectorRef since file is loading outside the zone\r\n this.cd.markForCheck(); \r\n }\r\n }\r\n\r\n constructor(\r\n public fb: FormBuilder,\r\n private cd: ChangeDetectorRef\r\n\r\n ) { }\r\n registrationForm = this.fb.group({\r\n file: [null]\r\n })\r\n}\r\n","import { Component, ChangeDetectorRef } from '@angular/core';\r\nimport { FormBuilder } from '@angular/forms';\r\n@Component({\r\n selector: 'app-bgpopularupload',\r\n templateUrl: './bgpopularupload.component.html'\r\n})\r\nexport class BgPopularuploadComponent {\r\n\r\n imageUrl: any = \"https://marnpossastorage.blob.core.windows.net/marnpos-v2-images/default-product.PNG\";\r\n editFile: boolean = true;\r\n removeUpload: boolean = false;\r\n currentFile: File = null;\r\n onFileChange(event) {\r\n let reader = new FileReader(); // HTML5 FileReader API\r\n let file = event.target.files[0];\r\n if (event.target.files && event.target.files[0]) {\r\n reader.readAsDataURL(file);\r\n\r\n // When file uploads set it to file formcontrol\r\n reader.onload = () => {\r\n this.imageUrl = reader.result;\r\n this.registrationForm.patchValue({\r\n file: reader.result\r\n });\r\n this.editFile = false;\r\n this.removeUpload = true;\r\n }\r\n // ChangeDetectorRef since file is loading outside the zone\r\n this.cd.markForCheck(); \r\n }\r\n }\r\n\r\n constructor(\r\n public fb: FormBuilder,\r\n private cd: ChangeDetectorRef\r\n\r\n ) { }\r\n registrationForm = this.fb.group({\r\n file: [null]\r\n })\r\n}\r\n","import { Component, ChangeDetectorRef } from '@angular/core';\r\nimport { FormBuilder } from '@angular/forms';\r\n@Component({\r\n selector: 'app-bgtestimonialupload',\r\n templateUrl: './bgtestimonialupload.component.html'\r\n})\r\nexport class BgTestimonialuploadComponent {\r\n\r\n imageUrl: any = \"https://marnpossastorage.blob.core.windows.net/marnpos-v2-images/default-product.PNG\";\r\n editFile: boolean = true;\r\n removeUpload: boolean = false;\r\n currentFile: File = null;\r\n onFileChange(event) {\r\n let reader = new FileReader(); // HTML5 FileReader API\r\n let file = event.target.files[0];\r\n if (event.target.files && event.target.files[0]) {\r\n reader.readAsDataURL(file);\r\n\r\n // When file uploads set it to file formcontrol\r\n reader.onload = () => {\r\n this.imageUrl = reader.result;\r\n this.registrationForm.patchValue({\r\n file: reader.result\r\n });\r\n this.editFile = false;\r\n this.removeUpload = true;\r\n }\r\n // ChangeDetectorRef since file is loading outside the zone\r\n this.cd.markForCheck(); \r\n }\r\n }\r\n\r\n constructor(\r\n public fb: FormBuilder,\r\n private cd: ChangeDetectorRef\r\n\r\n ) { }\r\n registrationForm = this.fb.group({\r\n file: [null]\r\n })\r\n}\r\n","import { Component, ChangeDetectorRef } from '@angular/core';\r\nimport { FormBuilder } from '@angular/forms';\r\n@Component({\r\n selector: 'app-bgworkflowupload',\r\n templateUrl: './bgworkflowupload.component.html'\r\n})\r\nexport class BgWorkflowuploadComponent {\r\n\r\n imageUrl: any = \"https://marnpossastorage.blob.core.windows.net/marnpos-v2-images/default-product.PNG\";\r\n editFile: boolean = true;\r\n removeUpload: boolean = false;\r\n currentFile: File = null;\r\n onFileChange(event) {\r\n let reader = new FileReader(); // HTML5 FileReader API\r\n let file = event.target.files[0];\r\n if (event.target.files && event.target.files[0]) {\r\n reader.readAsDataURL(file);\r\n\r\n // When file uploads set it to file formcontrol\r\n reader.onload = () => {\r\n this.imageUrl = reader.result;\r\n this.registrationForm.patchValue({\r\n file: reader.result\r\n });\r\n this.editFile = false;\r\n this.removeUpload = true;\r\n }\r\n // ChangeDetectorRef since file is loading outside the zone\r\n this.cd.markForCheck(); \r\n }\r\n }\r\n\r\n constructor(\r\n public fb: FormBuilder,\r\n private cd: ChangeDetectorRef\r\n\r\n ) { }\r\n registrationForm = this.fb.group({\r\n file: [null]\r\n })\r\n}\r\n","import { Component, ChangeDetectorRef } from '@angular/core';\r\nimport { FormBuilder } from '@angular/forms';\r\n@Component({\r\n selector: 'app-logoupload',\r\n templateUrl: './logoupload.component.html'\r\n})\r\nexport class logouploadComponent {\r\n\r\n imageUrl: any = \"https://marnpossastorage.blob.core.windows.net/marnpos-v2-images/default-product.PNG\";\r\n editFile: boolean = true;\r\n removeUpload: boolean = false;\r\n currentFile: File = null;\r\n onFileChange(event) {\r\n let reader = new FileReader(); // HTML5 FileReader API\r\n let file = event.target.files[0];\r\n if (event.target.files && event.target.files[0]) {\r\n reader.readAsDataURL(file);\r\n\r\n // When file uploads set it to file formcontrol\r\n reader.onload = () => {\r\n this.imageUrl = reader.result;\r\n this.registrationForm.patchValue({\r\n file: reader.result\r\n });\r\n this.editFile = false;\r\n this.removeUpload = true;\r\n }\r\n // ChangeDetectorRef since file is loading outside the zone\r\n this.cd.markForCheck(); \r\n }\r\n }\r\n\r\n constructor(\r\n public fb: FormBuilder,\r\n private cd: ChangeDetectorRef\r\n\r\n ) { }\r\n registrationForm = this.fb.group({\r\n file: [null]\r\n })\r\n}\r\n","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build ---prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = {\r\n production: false\r\n};\r\n\r\n/*\r\n * In development mode, to ignore zone related error stack frames such as\r\n * `zone.run`, `zoneDelegate.invokeTask` for easier debugging, you can\r\n * import the following file, but please comment it out in production mode\r\n * because it will have performance impact when throw error\r\n */\r\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\r\n","/***************************************************************************************************\r\n * Load `$localize` onto the global scope - used if i18n tags appear in Angular templates.\r\n */\r\nimport '@angular/localize/init';\r\nimport { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nexport function getBaseUrl() {\r\n return document.getElementsByTagName('base')[0].href;\r\n}\r\nconst providers = [\r\n { provide: 'BASE_URL', useFactory: getBaseUrl, deps: [] }\r\n];\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic(providers).bootstrapModule(AppModule)\r\n .catch(err => console.log(err));\r\n","/* (ignored) */","/* (ignored) */","/* (ignored) */"],"sourceRoot":"webpack:///"}