{"version":3,"file":"js/app.152f9f82.js","mappings":"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BA,KACpC,MAAM++B,EAAYT,EAASh8C,MAAUI,IAAI,iBACzC,OAAOq8C,EAAUp6C,gCACf,2BACD,C,wBC3CH,IAAIuO,EAAM,CACT,UAAW,CACV,MACA,KAED,WAAY,CACX,MACA,MAED,WAAY,CACX,MACA,MAED,WAAY,CACX,MACA,MAED,WAAY,CACX,MACA,MAED,WAAY,CACX,MACA,MAED,WAAY,CACX,MACA,MAED,WAAY,CACX,MACA,MAED,WAAY,CACX,KACA,MAED,WAAY,CACX,MACA,MAED,WAAY,CACX,MACA,MAED,UAAW,CACV,MACA,MAED,WAAY,CACX,MACA,MAED,WAAY,CACX,MACA,IAED,WAAY,CACX,MACA,MAED,WAAY,CACX,MACA,MAED,WAAY,CACX,MACA,MAED,WAAY,CACX,MACA,MAED,UAAW,CACV,MACA,MAED,UAAW,CACV,KACA,MAED,UAAW,CACV,MACA,MAED,UAAW,CACV,MACA,MAED,UAAW,CACV,MACA,KAED,UAAW,CACV,MACA,MAED,UAAW,CACV,MACA,OAGF,SAAS8rC,EAAoBC,GAC5B,IAAIC,EAAoB/pB,EAAEjiB,EAAK+rC,GAC9B,OAAOv3C,QAAQ4U,UAAUnZ,MAAK,WAC7B,IAAIkJ,EAAI,IAAIzE,MAAM,uBAAyBq3C,EAAM,KAEjD,MADA5yC,EAAErI,KAAO,mBACHqI,CACP,IAGD,IAAI0N,EAAM7G,EAAI+rC,GAAM9tD,EAAK4oB,EAAI,GAC7B,OAAOmlC,EAAoB7yC,EAAE0N,EAAI,IAAI5W,MAAK,WACzC,OAAO+7C,EAAoBjjC,EAAE9qB,EAAI,GAClC,GACD,CACA6tD,EAAoB7/B,KAAO,WAAa,OAAOvT,OAAOuT,KAAKjM,EAAM,EACjE8rC,EAAoB7tD,GAAK,MACzBguD,EAAOC,QAAUJ,C,wBCtHjB,IAAI9rC,EAAM,CACT,iBAAkB,CACjB,MACA,MAED,kBAAmB,CAClB,MACA,MAED,kBAAmB,CAClB,MACA,MAED,kBAAmB,CAClB,MACA,KAED,kBAAmB,CAClB,MACA,MAED,kBAAmB,CAClB,MACA,KAED,iBAAkB,CACjB,MACA,MAED,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","sources":["webpack://l2qr-app-backoffice/./src/constants/account.js","webpack://l2qr-app-backoffice/./src/constants/manage.js","webpack://l2qr-app-backoffice/./src/constants/organizations.js","webpack://l2qr-app-backoffice/./src/constants/page-header-images.js","webpack://l2qr-app-backoffice/./src/constants/plans.js","webpack://l2qr-app-backoffice/./src/constants/qr-codes-content.js","webpack://l2qr-app-backoffice/./src/assets/img/qr-types/website.svg","webpack://l2qr-app-backoffice/./src/assets/img/qr-types/envelope.svg","webpack://l2qr-app-backoffice/./src/assets/img/qr-types/vcard.svg","webpack://l2qr-app-backoffice/./src/assets/img/qr-types/text.svg","webpack://l2qr-app-backoffice/./src/assets/img/qr-types/chat-with-dots.svg","webpack://l2qr-app-backoffice/./src/assets/img/qr-types/social-media.svg","webpack://l2qr-app-backoffice/./src/assets/img/qr-types/coupons.svg","webpack://l2qr-app-backoffice/./src/assets/img/qr-types/business-page.svg","webpack://l2qr-app-backoffice/./src/assets/img/qr-types/feedback.svg","webpack://l2qr-app-backoffice/./src/assets/img/qr-types/rating.svg","webpack://l2qr-app-backoffice/./src/assets/img/qr-types/video.svg","webpack://l2qr-app-backoffice/./src/assets/img/qr-types/event.svg","webpack://l2qr-app-backoffice/./src/assets/img/qr-types/pdf.svg","webpack://l2qr-app-backoffice/./src/assets/img/qr-types/app.svg","webpack://l2qr-app-backoffice/./src/assets/img/qr-types/images.svg","webpack://l2qr-app-backoffice/./src/assets/img/qr-types/menu.svg","webpack://l2qr-app-backoffice/./src/assets/img/qr-types/instagram.svg","webpack://l2qr-app-backoffice/./src/constants/qr-codes.js","webpack://l2qr-app-backoffice/./src/App.vue","webpack://l2qr-app-backoffice/src/App.vue","webpack://l2qr-app-backoffice/./src/App.vue?8f58","webpack://l2qr-app-backoffice/./src/App.vue?0e40","webpack://l2qr-app-backoffice/./src/plugins/apollo/index.js","webpack://l2qr-app-backoffice/./src/plugins/locale/index.js","webpack://l2qr-app-backoffice/./src/plugins/screen-detection.client.js","webpack://l2qr-app-backoffice/./src/plugins/element-ui.js","webpack://l2qr-app-backoffice/./src/utils/loader.js","webpack://l2qr-app-backoffice/./src/plugins/directives.js","webpack://l2qr-app-backoffice/./src/main.js","webpack://l2qr-app-backoffice/./src/plugins/apollo/apollo-account.js","webpack://l2qr-app-backoffice/./src/plugins/apollo/apollo-anonymous.js","webpack://l2qr-app-backoffice/./src/plugins/axios.js","webpack://l2qr-app-backoffice/./src/plugins/i18n.js","webpack://l2qr-app-backoffice/./src/plugins/locale/locales.js","webpack://l2qr-app-backoffice/./src/services/locales.js","webpack://l2qr-app-backoffice/./src/plugins/locale/messages.js","webpack://l2qr-app-backoffice/./src/router/index.js","webpack://l2qr-app-backoffice/./src/store/modules/notification.js","webpack://l2qr-app-backoffice/./src/services/help-center.js","webpack://l2qr-app-backoffice/./src/store/modules/help-center.js","webpack://l2qr-app-backoffice/./src/services/account.js","webpack://l2qr-app-backoffice/./src/store/modules/account.js","webpack://l2qr-app-backoffice/./src/services/manage.js","webpack://l2qr-app-backoffice/./src/store/modules/manage.js","webpack://l2qr-app-backoffice/./src/services/news.js","webpack://l2qr-app-backoffice/./src/store/modules/news.js","webpack://l2qr-app-backoffice/./src/services/auth.js","webpack://l2qr-app-backoffice/./src/store/modules/auth.js","webpack://l2qr-app-backoffice/./src/services/files.js","webpack://l2qr-app-backoffice/./src/store/modules/files.js","webpack://l2qr-app-backoffice/./src/services/qrCode.js","webpack://l2qr-app-backoffice/./src/constants/backoffice/apollo-client.js","webpack://l2qr-app-backoffice/./src/store/modules/qrCode.js","webpack://l2qr-app-backoffice/./src/store/modules/device.js","webpack://l2qr-app-backoffice/./src/services/qrCodeDetails.js","webpack://l2qr-app-backoffice/./src/store/modules/qrCodeDetails.js","webpack://l2qr-app-backoffice/./src/services/qrDesign.js","webpack://l2qr-app-backoffice/./src/store/mainNewGenerator.js","webpack://l2qr-app-backoffice/./src/store/modules/qrDesign.js","webpack://l2qr-app-backoffice/./src/services/payment.js","webpack://l2qr-app-backoffice/./src/store/modules/payment.js","webpack://l2qr-app-backoffice/./src/store/modules/generator.js","webpack://l2qr-app-backoffice/./src/services/organizations.js","webpack://l2qr-app-backoffice/./src/store/modules/organizations.js","webpack://l2qr-app-backoffice/./src/services/accountOrganizations.js","webpack://l2qr-app-backoffice/./src/store/modules/accountOrganizations.js","webpack://l2qr-app-backoffice/./src/services/settings/account.js","webpack://l2qr-app-backoffice/./src/store/modules/settings/account.js","webpack://l2qr-app-backoffice/./src/services/settings/user.js","webpack://l2qr-app-backoffice/./src/store/modules/settings/user.js","webpack://l2qr-app-backoffice/./src/services/settings/api.js","webpack://l2qr-app-backoffice/./src/store/modules/settings/api.js","webpack://l2qr-app-backoffice/./src/services/billing.js","webpack://l2qr-app-backoffice/./src/store/modules/settings/billing.js","webpack://l2qr-app-backoffice/./src/store/modules/backoffice/panel.js","webpack://l2qr-app-backoffice/./src/services/backoffice/account.js","webpack://l2qr-app-backoffice/./src/store/modules/backoffice/account.js","webpack://l2qr-app-backoffice/./src/services/backoffice/helpdesk.js","webpack://l2qr-app-backoffice/./src/services/backoffice/files.js","webpack://l2qr-app-backoffice/./src/store/modules/backoffice/helpdesk.js","webpack://l2qr-app-backoffice/./src/services/backoffice/manager.js","webpack://l2qr-app-backoffice/./src/store/modules/backoffice/manager.js","webpack://l2qr-app-backoffice/./src/store/modules/backoffice/files.js","webpack://l2qr-app-backoffice/./src/services/backoffice/internationalization.js","webpack://l2qr-app-backoffice/./src/store/modules/backoffice/internationalization.js","webpack://l2qr-app-backoffice/./src/services/backoffice/articles.js","webpack://l2qr-app-backoffice/./src/store/modules/backoffice/articles.js","webpack://l2qr-app-backoffice/./src/services/backoffice/dashboard.js","webpack://l2qr-app-backoffice/./src/store/modules/backoffice/dashboard.js","webpack://l2qr-app-backoffice/./src/services/wallet.js","webpack://l2qr-app-backoffice/./src/store/modules/wallet.js","webpack://l2qr-app-backoffice/./src/services/walletPass/files.js","webpack://l2qr-app-backoffice/./src/store/modules/wallet-pass/files.js","webpack://l2qr-app-backoffice/./src/store/index.js","webpack://l2qr-app-backoffice/./src/utils/blog-translations.js","webpack://l2qr-app-backoffice/./src/utils/files.js","webpack://l2qr-app-backoffice/./src/utils/generator.js","webpack://l2qr-app-backoffice/./src/utils/string-to-element.js","webpack://l2qr-app-backoffice/./src/utils/images-formats.js","webpack://l2qr-app-backoffice/./src/utils/qr-code-templates.js","webpack://l2qr-app-backoffice/./src/utils/token.js","webpack://l2qr-app-backoffice/./node_modules/l2qr-generator-api/src/assets/img/frames/ ./node_modules/l2qr-generator-api/src/assets/img/frames/ ","webpack://l2qr-app-backoffice/./node_modules/l2qr-generator-api/src/assets/img/markers/ ./node_modules/l2qr-generator-api/src/assets/img/markers/ ","webpack://l2qr-app-backoffice/./node_modules/moment/locale/ sync ^\\.\\/.*$","webpack://l2qr-app-backoffice/./src/assets/img/logo.svg?6896","webpack://l2qr-app-backoffice/./src/assets/img/qr-types/wi-fi.svg","webpack://l2qr-app-backoffice/webpack/bootstrap","webpack://l2qr-app-backoffice/webpack/runtime/amd options","webpack://l2qr-app-backoffice/webpack/runtime/chunk loaded","webpack://l2qr-app-backoffice/webpack/runtime/compat get default export","webpack://l2qr-app-backoffice/webpack/runtime/create fake namespace object","webpack://l2qr-app-backoffice/webpack/runtime/define property getters","webpack://l2qr-app-backoffice/webpack/runtime/ensure chunk","webpack://l2qr-app-backoffice/webpack/runtime/get javascript chunk filename","webpack://l2qr-app-backoffice/webpack/runtime/get mini-css chunk filename","webpack://l2qr-app-backoffice/webpack/runtime/global","webpack://l2qr-app-backoffice/webpack/runtime/harmony module decorator","webpack://l2qr-app-backoffice/webpack/runtime/hasOwnProperty shorthand","webpack://l2qr-app-backoffice/webpack/runtime/load script","webpack://l2qr-app-backoffice/webpack/runtime/make namespace object","webpack://l2qr-app-backoffice/webpack/runtime/node module decorator","webpack://l2qr-app-backoffice/webpack/runtime/publicPath","webpack://l2qr-app-backoffice/webpack/runtime/css loading","webpack://l2qr-app-backoffice/webpack/runtime/jsonp chunk loading","webpack://l2qr-app-backoffice/webpack/startup"],"sourcesContent":["export const COMPANY_NAME_INPUT_ID = \"company-name-input\";\n\nexport const getDefaultAccountContact = () => ({\n first_name: \"\",\n last_name: \"\",\n company: \"\",\n country: null,\n website: \"\",\n street: \"\",\n phone: \"\",\n city: \"\",\n zip: \"\",\n});\n","export const qrCodesOrders = {\n last_created: {\n name: \"manage:filters:stats:order:last_created\",\n query: { created_at: \"desc\" },\n },\n name: {\n name: \"manage:filters:stats:order:name\",\n query: { name: \"asc\" },\n },\n most_scanned: {\n name: \"manage:filters:stats:order:most_scans\",\n query: { scans_aggregate: { count: \"asc\" } },\n },\n};\n\nexport const qrCodesStatuses = {\n all: {\n name: \"manage:filters:stats:all_qr_codes\",\n },\n active: {\n name: \"manage:filters:stats:active_qr_codes\",\n },\n paused: {\n name: \"manage:filters:stats:paused_qr_codes\",\n },\n};\n","export const userRolesOptions = [\n { value: \"ADMIN\", label: \"organization_user_role:admin\" },\n { value: \"EDITOR\", label: \"organization_user_role:editor\" },\n { value: \"READ_ONLY\", label: \"organization_user_role:read_only\" },\n];\n\nexport const ownerRole = {\n value: \"OWNER\",\n label: \"organization_user_role:owner\",\n};\n","export const businessPageHeaderImages = [\n \"pages_images/business_page/business_page1.jpg\",\n \"pages_images/business_page/business_page2.jpg\",\n \"pages_images/business_page/business_page3.jpg\",\n \"pages_images/business_page/business_page4.jpg\",\n \"pages_images/business_page/business_page5.jpg\",\n \"pages_images/business_page/business_page6.jpg\",\n \"pages_images/business_page/business_page7.jpg\",\n];\n\nexport const couponsHeaderImages = [\n \"pages_images/coupons/coupons1.jpg\",\n \"pages_images/coupons/coupons2.jpg\",\n \"pages_images/coupons/coupons3.jpg\",\n \"pages_images/coupons/coupons4.jpg\",\n \"pages_images/coupons/coupons5.jpg\",\n \"pages_images/coupons/coupons6.jpg\",\n \"pages_images/coupons/coupons7.jpg\",\n \"pages_images/coupons/coupons8.jpg\",\n \"pages_images/coupons/coupons9.jpg\",\n \"pages_images/coupons/coupons10.jpg\",\n \"pages_images/coupons/coupons11.jpg\",\n];\n\nexport const eventHeaderImages = [\n \"pages_images/event/event1.jpg\",\n \"pages_images/event/event2.jpg\",\n \"pages_images/event/event3.jpg\",\n \"pages_images/event/event4.jpg\",\n \"pages_images/event/event5.jpg\",\n \"pages_images/event/event6.jpg\",\n];\n\nexport const feedbackHeaderImages = [\n \"pages_images/feedback/feedback1.jpg\",\n \"pages_images/feedback/feedback2.jpg\",\n \"pages_images/feedback/feedback3.jpg\",\n \"pages_images/feedback/feedback4.jpg\",\n \"pages_images/feedback/feedback5.jpg\",\n \"pages_images/feedback/feedback6.jpg\",\n \"pages_images/feedback/feedback7.jpg\",\n \"pages_images/feedback/feedback8.jpg\",\n \"pages_images/feedback/feedback9.jpg\",\n \"pages_images/feedback/feedback10.jpg\",\n \"pages_images/feedback/feedback11.jpg\",\n];\n\nexport const ratesHeaderImages = [\n \"pages_images/rates/rates1.jpg\",\n \"pages_images/rates/rates2.jpg\",\n \"pages_images/rates/rates3.jpg\",\n \"pages_images/rates/rates4.jpg\",\n \"pages_images/rates/rates5.jpg\",\n \"pages_images/rates/rates6.jpg\",\n \"pages_images/rates/rates7.jpg\",\n \"pages_images/rates/rates8.jpg\",\n \"pages_images/rates/rates9.jpg\",\n \"pages_images/rates/rates10.jpg\",\n \"pages_images/rates/rates11.jpg\",\n];\n\nexport const menuHeaderImages = [\n \"pages_images/menu/menu1.jpg\",\n \"pages_images/menu/menu2.jpg\",\n \"pages_images/menu/menu3.jpg\",\n \"pages_images/menu/menu4.jpg\",\n \"pages_images/menu/menu5.jpg\",\n \"pages_images/menu/menu6.jpg\",\n];\n\nexport const vcardHeaderImages = [\n \"pages_images/vcard/vcard1.jpg\",\n \"pages_images/vcard/vcard2.jpg\",\n \"pages_images/vcard/vcard3.jpg\",\n \"pages_images/vcard/vcard4.jpg\",\n \"pages_images/vcard/vcard5.jpg\",\n \"pages_images/vcard/vcard6.jpg\",\n];\n\nexport const SocMediaHeaderImages = [\n \"pages_images/social_media/social_media1.svg\",\n \"pages_images/social_media/social_media2.svg\",\n \"pages_images/social_media/social_media3.svg\",\n \"pages_images/social_media/social_media4.svg\",\n \"pages_images/social_media/social_media5.svg\",\n \"pages_images/social_media/social_media6.svg\",\n];\n","export const PRICE_TABLE_ID = \"pricing-table\";\n\nexport const paymentFrequencyOptions = [\n { value: \"monthly\", label: \"pricing:payment_frequency_switch:monthly\" },\n { value: \"yearly\", label: \"pricing:payment_frequency_switch:yearly\" },\n];\n\nexport const FREE_PLAN_ID = `FREE WITH ADS`;\n\nexport const PRICE_PER_EXTRA_USER = 500;\nexport const DEFAULT_CURRENCY = \"EUR\";\nexport const PLANS_WITH_MULTI_USERS = [\"PRO\", \"ENTERPRISE\"];\n\nexport const plansOrder = [\n // \"FREE WITH ADS\",\n \"LIGHT FARE AND NO ADS\",\n \"LIGHT PRO\",\n \"PRO\",\n \"ENTERPRISE\",\n];\n\nexport const individualPlansMonthly = [\n // {\n // value: \"FREE WITH ADS\",\n // popular: false,\n // label: \"FREE WITH ADS\",\n // price: 0,\n // has_sale: false,\n // has_toggle: false,\n // no_credit_card: true,\n // multi_users: {\n // enabled: false,\n // },\n // description: \"pricing:plan:FREE WITH ADS:description\",\n // qr_codes: \"pricing:plan:dynamic_qr_code_with_ads\",\n // qr_codes_count: 1,\n // included: [\n // \"pricing:plan:FREE WITH ADS:included1\",\n // \"pricing:plan:FREE WITH ADS:included2\",\n // ],\n // not_included: [\"pricing:plan:FREE WITH ADS:not_included1\"],\n // button: {\n // type: \"link\",\n // label: \"pricing:get_started\",\n // },\n // },\n {\n value: \"LIGHT FARE AND NO ADS\",\n popular: false,\n label: \"LIGHT FARE AND NO ADS\",\n price: 0,\n no_credit_card: true,\n has_sale: false,\n has_toggle: false,\n multi_users: {\n enabled: false,\n },\n description: \"pricing:plan:LIGHT FARE AND NO ADS:description\",\n qr_codes: \"pricing:plan:dynamic_qr_code\",\n qr_codes_count: 3,\n included: [\n \"pricing:plan:LIGHT FARE AND NO ADS:included1\",\n \"pricing:plan:LIGHT FARE AND NO ADS:included2\",\n ],\n not_included: [\"pricing:plan:LIGHT FARE AND NO ADS:not_included1\"],\n button: {\n type: \"link\",\n label: \"pricing:get_started\",\n },\n },\n {\n value: \"LIGHT PRO\",\n popular: true,\n label: \"LIGHT PRO\",\n price: 30,\n has_sale: false,\n has_toggle: false,\n multi_users: {\n enabled: false,\n },\n description: \"pricing:plan:LIGHT PRO:description\",\n qr_codes: \"pricing:plan:dynamic_qr_code\",\n qr_codes_count: 50,\n included: [\n \"pricing:plan:LIGHT PRO:included1\",\n \"pricing:plan:LIGHT PRO:included2\",\n \"pricing:plan:LIGHT PRO:included3\",\n ],\n not_included: [],\n button: {\n type: \"link\",\n label: \"pricing:get_started\",\n },\n },\n {\n value: \"PRO\",\n popular: false,\n label: \"PRO\",\n price: 99,\n has_sale: false,\n has_toggle: false,\n multi_users: {\n enabled: true,\n custom: false,\n min: 3,\n max: 150,\n },\n description: \"pricing:plan:PRO:description\",\n qr_codes: \"pricing:plan:dynamic_qr_code\",\n qr_codes_count: 250,\n included: [\n \"pricing:plan:PRO:included1\",\n \"pricing:plan:PRO:included2\",\n \"pricing:plan:PRO:included3\",\n \"pricing:plan:PRO:included4\",\n ],\n not_included: [],\n button: {\n type: \"link\",\n label: \"pricing:get_started\",\n },\n },\n];\n\nexport const individualPlansYearly = [\n // {\n // value: \"FREE WITH ADS\",\n // popular: false,\n // label: \"FREE WITH ADS\",\n // price: 0,\n // has_sale: false,\n // has_toggle: false,\n // no_credit_card: true,\n // multi_users: {\n // enabled: false,\n // },\n // description: \"pricing:plan:FREE WITH ADS:description\",\n // qr_codes: \"pricing:plan:dynamic_qr_code_with_ads\",\n // qr_codes_count: 1,\n // included: [\n // \"pricing:plan:FREE WITH ADS:included1\",\n // \"pricing:plan:FREE WITH ADS:included2\",\n // ],\n // not_included: [\"pricing:plan:FREE WITH ADS:not_included1\"],\n // button: {\n // type: \"link\",\n // label: \"pricing:get_started\",\n // },\n // },\n {\n value: \"LIGHT FARE AND NO ADS\",\n popular: false,\n label: \"LIGHT FARE AND NO ADS\",\n price: 0,\n no_credit_card: true,\n has_sale: true,\n sale: 12,\n has_toggle: false,\n multi_users: {\n enabled: false,\n },\n description: \"pricing:plan:LIGHT FARE AND NO ADS:description\",\n qr_codes: \"pricing:plan:dynamic_qr_code\",\n qr_codes_count: 3,\n included: [\n \"pricing:plan:LIGHT FARE AND NO ADS:included1\",\n \"pricing:plan:LIGHT FARE AND NO ADS:included2\",\n ],\n not_included: [\"pricing:plan:LIGHT FARE AND NO ADS:not_included1\"],\n button: {\n type: \"link\",\n label: \"pricing:get_started\",\n },\n },\n {\n value: \"LIGHT PRO\",\n popular: true,\n label: \"LIGHT PRO\",\n price: 15,\n has_sale: false,\n has_toggle: false,\n multi_users: {\n enabled: false,\n },\n description: \"pricing:plan:LIGHT PRO:description\",\n qr_codes: \"pricing:plan:dynamic_qr_code\",\n qr_codes_count: 50,\n included: [\n \"pricing:plan:LIGHT PRO:included1\",\n \"pricing:plan:LIGHT PRO:included2\",\n \"pricing:plan:LIGHT PRO:included3\",\n ],\n not_included: [],\n button: {\n type: \"link\",\n label: \"pricing:get_started\",\n },\n },\n {\n value: \"PRO\",\n popular: false,\n label: \"PRO\",\n price: 49,\n has_sale: false,\n has_toggle: false,\n multi_users: {\n enabled: true,\n custom: false,\n min: 3,\n max: 150,\n },\n description: \"pricing:plan:PRO:description\",\n qr_codes: \"pricing:plan:dynamic_qr_code\",\n qr_codes_count: 250,\n included: [\n \"pricing:plan:PRO:included1\",\n \"pricing:plan:PRO:included2\",\n \"pricing:plan:PRO:included3\",\n \"pricing:plan:PRO:included4\",\n ],\n not_included: [],\n button: {\n type: \"link\",\n label: \"pricing:get_started\",\n },\n },\n];\n\nexport const businessPlansMonthly = [\n {\n value: \"LIGHT FARE AND NO ADS\",\n popular: false,\n label: \"LIGHT FARE AND NO ADS\",\n price: 0,\n no_credit_card: true,\n has_sale: false,\n has_toggle: false,\n multi_users: {\n enabled: false,\n },\n description: \"pricing:plan:LIGHT FARE AND NO ADS:description\",\n qr_codes: \"pricing:plan:dynamic_qr_code\",\n qr_codes_count: 3,\n included: [\n \"pricing:plan:LIGHT FARE AND NO ADS:included1\",\n \"pricing:plan:LIGHT FARE AND NO ADS:included2\",\n ],\n not_included: [\"pricing:plan:LIGHT FARE AND NO ADS:not_included1\"],\n button: {\n type: \"link\",\n label: \"pricing:get_started\",\n },\n },\n {\n value: \"LIGHT PRO\",\n popular: true,\n label: \"LIGHT PRO\",\n price: 15,\n has_sale: false,\n has_toggle: false,\n multi_users: {\n enabled: false,\n },\n description: \"pricing:plan:LIGHT PRO:description\",\n qr_codes: \"pricing:plan:dynamic_qr_code\",\n qr_codes_count: 50,\n included: [\n \"pricing:plan:LIGHT PRO:included1\",\n \"pricing:plan:LIGHT PRO:included2\",\n \"pricing:plan:LIGHT PRO:included3\",\n ],\n not_included: [],\n button: {\n type: \"link\",\n label: \"pricing:get_started\",\n },\n },\n {\n value: \"PRO\",\n popular: false,\n label: \"PRO\",\n price: 49,\n has_sale: false,\n has_toggle: false,\n multi_users: {\n enabled: true,\n custom: false,\n min: 3,\n max: 150,\n },\n description: \"pricing:plan:PRO:description\",\n qr_codes: \"pricing:plan:dynamic_qr_code\",\n qr_codes_count: 250,\n included: [\n \"pricing:plan:PRO:included1\",\n \"pricing:plan:PRO:included2\",\n \"pricing:plan:PRO:included3\",\n \"pricing:plan:PRO:included4\",\n ],\n not_included: [],\n button: {\n type: \"link\",\n label: \"pricing:get_started\",\n },\n },\n {\n value: \"ENTERPRISE\",\n enterprise: true,\n popular: false,\n label: \"ENTERPRISE\",\n price: null,\n has_sale: false,\n has_toggle: false,\n multi_users: {\n enabled: true,\n custom: true,\n },\n description: \"pricing:plan:ENTERPRISE:description\",\n qr_codes: \"pricing:plan:unlimited_qr_codes\",\n included: [\n \"pricing:plan:ENTERPRISE:included1\",\n \"pricing:plan:ENTERPRISE:included2\",\n \"pricing:plan:ENTERPRISE:included3\",\n \"pricing:plan:ENTERPRISE:included4\",\n \"pricing:plan:ENTERPRISE:included5\",\n ],\n not_included: [],\n button: {\n type: \"popup\",\n prop: \"helpCenter\",\n label: \"button:contact_us\",\n },\n },\n];\n\nexport const businessPlansYearly = [\n {\n value: \"LIGHT FARE AND NO ADS\",\n popular: false,\n label: \"LIGHT FARE AND NO ADS\",\n price: 0,\n has_sale: true,\n sale: 12,\n no_credit_card: true,\n has_toggle: false,\n multi_users: {\n enabled: false,\n },\n description: \"pricing:plan:LIGHT FARE AND NO ADS:description\",\n qr_codes: \"pricing:plan:dynamic_qr_code\",\n qr_codes_count: 3,\n included: [\n \"pricing:plan:LIGHT FARE AND NO ADS:included1\",\n \"pricing:plan:LIGHT FARE AND NO ADS:included2\",\n ],\n not_included: [\"pricing:plan:LIGHT FARE AND NO ADS:not_included1\"],\n button: {\n type: \"link\",\n label: \"pricing:get_started\",\n },\n },\n {\n value: \"LIGHT PRO\",\n popular: true,\n label: \"LIGHT PRO\",\n price: 15,\n has_sale: false,\n has_toggle: false,\n multi_users: {\n enabled: false,\n },\n description: \"pricing:plan:LIGHT PRO:description\",\n qr_codes: \"pricing:plan:dynamic_qr_code\",\n qr_codes_count: 50,\n included: [\n \"pricing:plan:LIGHT PRO:included1\",\n \"pricing:plan:LIGHT PRO:included2\",\n \"pricing:plan:LIGHT PRO:included3\",\n ],\n not_included: [],\n button: {\n type: \"link\",\n label: \"pricing:get_started\",\n },\n },\n {\n value: \"PRO\",\n popular: false,\n label: \"PRO\",\n price: 49,\n has_sale: false,\n has_toggle: false,\n multi_users: {\n enabled: true,\n custom: false,\n min: 3,\n max: 150,\n },\n description: \"pricing:plan:PRO:description\",\n qr_codes: \"pricing:plan:dynamic_qr_code\",\n qr_codes_count: 250,\n included: [\n \"pricing:plan:PRO:included1\",\n \"pricing:plan:PRO:included2\",\n \"pricing:plan:PRO:included3\",\n \"pricing:plan:PRO:included4\",\n ],\n not_included: [],\n button: {\n type: \"link\",\n label: \"pricing:get_started\",\n },\n },\n {\n value: \"ENTERPRISE\",\n enterprise: true,\n popular: false,\n label: \"ENTERPRISE\",\n price: null,\n has_sale: false,\n has_toggle: false,\n multi_users: {\n enabled: true,\n custom: true,\n },\n description: \"pricing:plan:ENTERPRISE:description\",\n qr_codes: \"pricing:plan:unlimited_qr_codes\",\n included: [\n \"pricing:plan:ENTERPRISE:included1\",\n \"pricing:plan:ENTERPRISE:included2\",\n \"pricing:plan:ENTERPRISE:included3\",\n \"pricing:plan:ENTERPRISE:included4\",\n \"pricing:plan:ENTERPRISE:included5\",\n ],\n not_included: [],\n button: {\n type: \"popup\",\n prop: \"helpCenter\",\n label: \"button:contact_us\",\n },\n },\n];\n\nexport const plansTable = [\n {\n title: \"pricing:table:group1:title\",\n rows: [\n {\n title: \"pricing:table:group1:item1:title\",\n description: \"pricing:table:group1:item1:description\",\n prop: \"dynamic_qr_codes\",\n // checked|number|size\n type: \"number\",\n },\n {\n title: \"pricing:table:group1:item2:title\",\n description: \"pricing:table:group1:item2:description\",\n prop: \"static_qr_codes\",\n // checked|number|\n type: \"limited-number\",\n },\n {\n title: \"pricing:table:group1:item3:title\",\n description: \"pricing:table:group1:item3:description\",\n prop: \"scans\",\n // checked|number|\n type: \"number\",\n },\n {\n title: \"pricing:table:group1:item4:title\",\n description: \"pricing:table:group1:item4:description\",\n prop: \"qr_templates\",\n // checked|number|\n type: \"checked\",\n },\n {\n title: \"pricing:table:group1:item5:title\",\n description: \"pricing:table:group1:item5:description\",\n prop: \"multiple_download_formats\",\n // checked|number|\n type: \"checked\",\n },\n {\n title: \"pricing:table:group1:item6:title\",\n description: \"pricing:table:group1:item6:description\",\n prop: \"limit_space\",\n // checked|number|\n type: \"size\",\n },\n ],\n },\n {\n title: \"pricing:table:group2:title\",\n rows: [\n {\n title: \"pricing:table:group2:item1:title\",\n description: \"pricing:table:group2:item1:description\",\n prop: \"tracking_date\",\n // checked|number|size\n type: \"checked\",\n },\n {\n title: \"pricing:table:group2:item2:title\",\n description: \"pricing:table:group2:item2:description\",\n prop: \"tracking_device\",\n // checked|number|\n type: \"checked\",\n },\n {\n title: \"pricing:table:group2:item3:title\",\n description: \"pricing:table:group2:item3:description\",\n prop: \"tracking_gps\",\n // checked|number|\n type: \"checked\",\n },\n ],\n },\n {\n title: \"pricing:table:group3:title\",\n rows: [\n {\n title: \"pricing:table:group3:item1:title\",\n description: \"pricing:table:group3:item1:description\",\n prop: \"gdpr\",\n // checked|number|size\n type: \"checked\",\n },\n {\n title: \"pricing:table:group3:item2:title\",\n description: \"pricing:table:group3:item2:description\",\n prop: \"sso\",\n // checked|number|\n type: \"checked\",\n },\n ],\n },\n {\n title: \"pricing:table:group4:title\",\n rows: [\n {\n title: \"pricing:table:group4:item1:title\",\n description: \"pricing:table:group4:item1:description\",\n prop: \"qr_design_customization\",\n // checked|number|size\n type: \"checked\",\n },\n {\n title: \"pricing:table:group4:item2:title\",\n description: \"pricing:table:group4:item2:description\",\n prop: \"page_templates\",\n // checked|number|size|template_amount\n type: \"template_amount\",\n },\n ],\n },\n {\n title: \"pricing:table:group5:title\",\n rows: [\n {\n title: \"pricing:table:group5:item1:title\",\n description: \"pricing:table:group5:item1:description\",\n prop: \"knowledge_base\",\n // checked|number|size\n type: \"checked\",\n },\n {\n title: \"pricing:table:group5:item2:title\",\n description: \"pricing:table:group5:item2:description\",\n prop: \"email_support\",\n // checked|number|\n type: \"checked\",\n },\n {\n title: \"pricing:table:group5:item3:title\",\n description: \"pricing:table:group5:item3:description\",\n prop: \"customer_manager\",\n // checked|number|\n type: \"checked\",\n },\n ],\n },\n];\n","import shortid from \"shortid\";\nimport moment from \"moment/moment\";\nimport {\n businessPageHeaderImages,\n SocMediaHeaderImages,\n vcardHeaderImages,\n couponsHeaderImages,\n eventHeaderImages,\n feedbackHeaderImages,\n ratesHeaderImages,\n menuHeaderImages,\n} from \"@/constants/page-header-images\";\n\nexport const getStaticQrContent = () => ({\n URL: { url: \"\" },\n vcard: {\n firstName: \"\",\n lastName: \"\",\n company: \"\",\n jobTitle: \"\",\n street: \"\",\n city: \"\",\n state: \"\",\n zip: \"\",\n country: \"\",\n phone: \"\",\n mobilePhone: \"\",\n fax: \"\",\n email: \"\",\n url: \"\",\n },\n email: {\n email: \"\",\n subject: \"\",\n message: \"\",\n },\n sms: {\n phone: \"\",\n message: \"\",\n },\n text: {\n text: \"\",\n },\n wifi: {\n type: \"WPA\",\n network: \"\",\n password: \"\",\n hidden: false,\n },\n});\nexport const contentLoader = {\n image_key: null,\n background_color: \"#ffffff\",\n image_width: 50,\n};\nexport const contentAddress = {\n street: \"\",\n city: \"\",\n state: \"\",\n zip: \"\",\n country: \"\",\n};\n\n// todo loading preview\n// todo dialogs\nexport const getDynamicQrContent = (context) => ({\n URL: { url: \"\" },\n soc_media: {\n template: \"1\",\n customizations: {\n primary_color: \"#CAD5F3\",\n button_color: \"#FF6996\",\n header_image: {\n image_key: null,\n background_color: \"#ffffff\",\n image_width: 100,\n },\n is_used_template_image: true,\n header_template_image_key: SocMediaHeaderImages[0],\n },\n basic: {\n title: context.$t(\"soc_media:def:headline\"),\n text: context.$t(\"soc_media:def:text\"),\n },\n soc_media_channels: [\n // { type: \"website\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"facebook\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"youtube\", value: \"\", text: \"\", id: shortid.generate() },\n ],\n loader: contentLoader,\n advanced: {\n has_share_button: true,\n },\n },\n coupons: {\n template: \"1\",\n customizations: {\n primary_color: \"#401941\",\n button_color: \"#FF6996\",\n header_image: {\n // todo low quality (ask to create replace def images)\n image_key: \"pages_images/def_coupon.png\",\n background_color: \"#ffffff\",\n image_width: 100,\n },\n is_used_template_image: true,\n header_template_image_key: couponsHeaderImages[0],\n },\n basic: {\n company: context.$t(\"coupon:def:company\"),\n title: context.$t(\"coupon:def:headline\"),\n text: context.$t(\"coupon:def:text\"),\n sale: context.$t(\"coupon:def:sale\"),\n },\n coupon: {\n name: \"SALE50OFF\",\n use_barcode: false,\n barcode_image: {\n image_key: null,\n background_color: \"#ffffff\",\n image_width: 100,\n },\n expired_at: moment().add(1, \"day\").toDate(),\n terms_and_conditions: \"\",\n website_url: \"https://link-to-qr.com\",\n website_name: context.$t(\"coupon:def:button_name\"),\n address: contentAddress,\n },\n loader: contentLoader,\n advanced: {\n has_share_button: true,\n },\n },\n vcard_plus: {\n template: \"1\",\n customizations: {\n button_color: \"#000000\",\n header_image: {\n image_key: null,\n background_color: \"#ffffff\",\n image_width: 100,\n },\n is_used_template_image: true,\n header_template_image_key: vcardHeaderImages[0],\n },\n vcard: {\n avatar: {\n image_key: \"pages_images/def_vcard_avatar.jpg\",\n background_color: \"#ffffff\",\n image_width: 100,\n },\n firstName: context.$t(\"vcard_plus:def:first_name\"),\n lastName: context.$t(\"vcard_plus:def:last_name\"),\n company: \"\",\n jobTitle: context.$t(\"vcard_plus:def:job_title\"),\n phone: \"\",\n mobilePhone: context.$t(\"vcard_plus:def:mobile\"),\n fax: \"\",\n email: context.$t(\"vcard_plus:def:email\"),\n address: contentAddress,\n website: context.$t(\"vcard_plus:def:website\"),\n about: context.$t(\"vcard_plus:def:about\"),\n },\n soc_media_channels: [\n // {type: 'website', value: '', text: '', id: shortid.generate()},\n ],\n loader: contentLoader,\n // advanced: {\n // has_share_button: true,\n // },\n },\n business_page: {\n template: \"1\",\n customizations: {\n // primary_color: '#127003',\n button_color: \"#127003\",\n header_image: {\n image_key: \"pages_images/business_page/v1/background-img.jpg\",\n // image_key: 'pages_images/def_business_page.png',\n // image_key: 'pages_images/business_page/business_page1.jpg',\n background_color: \"#ffffff\",\n image_width: 100,\n },\n is_used_template_image: false,\n header_template_image_key: businessPageHeaderImages[0],\n },\n basic: {\n company: context.$t(\"business_page:def:company\"),\n title: context.$t(\"business_page:def:title\"),\n text: context.$t(\"business_page:def:text\"),\n },\n button: {\n button_text: context.$t(\"qr_manage:business_page:button_name1\"),\n button_url: \"\",\n has_button: true,\n has_button_file: false,\n button_file_key: null,\n },\n opening_hours: {\n Mon: {\n is_open: true,\n hours: [\n { start: \"09:00\", end: \"14:00\" },\n { start: \"15:00\", end: \"18:00\" },\n ],\n },\n Tue: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Wen: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Thu: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Fri: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Sat: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Sun: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n },\n address: contentAddress,\n features: [],\n contacts: {\n about: \"\",\n name: \"\",\n phone: \"\",\n email: \"\",\n website: \"\",\n },\n soc_media_channels: [\n // {type: 'website', value: '', text: '', id: shortid.generate()},\n ],\n loader: contentLoader,\n },\n feedback: {\n template: \"1\",\n customizations: {\n primary_color: \"#BB89FC\",\n header_image: {\n image_key: \"pages_images/def_feedback.png\",\n background_color: \"#ffffff\",\n image_width: 100,\n },\n is_used_template_image: true,\n header_template_image_key: feedbackHeaderImages[0],\n },\n basic: {\n name: context.$t(\"feedback:def:name\"),\n title: context.$t(\"feedback:def:headline\"),\n website: \"\",\n email: \"\",\n },\n categories: [\n { icon: \"circle\", value: \"\", subcategories: [], id: shortid.generate() },\n ],\n loader: contentLoader,\n },\n rating: {\n template: \"1\",\n customizations: {\n primary_color: \"#8433C3\",\n button_color: \"#FF9A02\",\n header_image: {\n image_key: \"pages_images/def_rating.png\",\n background_color: \"#ffffff\",\n image_width: 100,\n },\n is_used_template_image: true,\n header_template_image_key: ratesHeaderImages[0],\n },\n rating: {\n question: context.$t(\"rating:def:question\"),\n type: \"star\",\n },\n basic: {\n company: context.$t(\"rating:def:company\"),\n website: context.$t(\"rating:def:website\"),\n email: \"\",\n },\n soc_media_channels: [],\n loader: contentLoader,\n },\n video: {\n template: \"1\",\n customizations: {\n primary_color: \"#772400\",\n button_color: \"#FF9A02\",\n },\n basic: {\n company: context.$t(\"video:def:company\"),\n title: context.$t(\"video:def:headline\"),\n text: context.$t(\"video:def:text\"),\n },\n button: {\n button_text: context.$t(\"qr_manage:video:button_name1\"),\n button_url: \"\",\n has_button: true,\n has_button_file: false,\n button_file_key: null,\n },\n video: {\n highlight_the_first_video: false,\n videos: [\n // {\n // video_id: '',\n // description: '',\n // preview_url: '',\n // id: shortid.generate()\n // },\n // {\n // video_id: 'YCGIj7KmwyI',\n // description: 'Disturbed - Hey You [Official Music Video]',\n // preview_url: 'https://i.ytimg.com/vi/YCGIj7KmwyI/mqdefault.jpg',\n // id: 1,\n // },\n ],\n },\n soc_media_channels: [\n // {type: 'website', value: '', text: '', id: shortid.generate()},\n ],\n loader: contentLoader,\n advanced: {\n has_share_button: true,\n },\n },\n event: {\n template: \"1\",\n customizations: {\n // primary_color: '#0A4701',\n button_color: \"#FF9A02\",\n header_image: {\n image_key: \"pages_images/def_event.jpg\",\n background_color: \"#ffffff\",\n image_width: 100,\n },\n is_used_template_image: true,\n header_template_image_key: eventHeaderImages[0],\n },\n button: {\n button_text: context.$t(\"qr_manage:event:button_name1\"),\n button_url: \"\",\n has_button: true,\n has_button_file: false,\n button_file_key: null,\n },\n basic: {\n company: \"\",\n title: context.$t(\"event:def:headline\"),\n text: context.$t(\"event:def:text\"),\n features: [],\n about: \"\",\n all_day: true,\n start_date: moment(),\n start_time: \"00:00\",\n end_date: moment(),\n end_time: \"00:00\",\n time_format: \"\",\n // todo realize time zone and format\n timezone: null,\n venue_name: \"\",\n address: contentAddress,\n },\n contacts: {\n name: \"\",\n phone: \"\",\n email: \"\",\n website: \"\",\n },\n loader: contentLoader,\n // advanced: {\n // has_share_button: true,\n // },\n },\n pdf: {\n template: \"1\",\n customizations: {\n primary_color: \"#083800\",\n button_color: \"#FF8F0F\",\n },\n pdf: {\n direct_link: false,\n pdf_key: null,\n preview_image: {\n image_key: \"pages_images/def_pdf.png\",\n },\n },\n basic: {\n company: \"\",\n title: \"\",\n text: \"\",\n website: \"\",\n button_text: context.$t(\"pdf:def:button_name\"),\n },\n loader: contentLoader,\n },\n // facebook: {\n // template: '1',\n // customizations: {\n // primary_color: '#0E0065',\n // button_color: '#82B1FF',\n // header_image: {\n // image_key: 'pages_images/def_facebook.png',\n // background_color: '#ffffff',\n // image_width: 100,\n // },\n // },\n // basic: {\n // facebook_url: '',\n // name: '',\n // title: 'Click on the Like button to follow us on Facebook',\n // website: '',\n // },\n // loader: contentLoader,\n // },\n app: {\n template: \"1\",\n customizations: {\n primary_color: \"#BB89FC\",\n },\n basic: {\n title: \"\",\n text: \"\",\n website: \"\",\n },\n button: {\n button_text: context.$t(\"qr_manage:app:button_name1\"),\n button_url: \"\",\n has_button: true,\n has_button_file: false,\n button_file_key: null,\n },\n app: {\n name: \"\",\n developer: \"\",\n app_image: {\n image_key: \"pages_images/def_app.png\",\n },\n },\n app_links: {\n app_store: { url: \"\" },\n google_play: { url: \"\" },\n },\n loader: contentLoader,\n },\n // mp3: {\n // template: '1',\n // customizations: {\n // primary_color: '#BB89FC',\n // button_color: '#BB89FC',\n // header_image: {\n // image_key: 'pages_images/def_mp3.png',\n // background_color: '#ffffff',\n // image_width: 100,\n // },\n // },\n // basic: {\n // title: 'Absorption',\n // text: 'Jane Cooper',\n // website: '',\n // },\n // button: {\n // button_text: 'Buy now',\n // button_url: '',\n // has_button: true,\n // has_button_file: false,\n // button_file_key: null,\n // },\n // mp3: {\n // mp3_url: '',\n // can_download: true,\n // },\n // loader: contentLoader,\n // },\n images: {\n template: \"1\",\n customizations: {\n primary_color: \"#3C261F\",\n },\n basic: {\n title: \"\",\n text: \"\",\n website: \"\",\n },\n button: {\n button_text: context.$t(\"qr_manage:images:button_name1\"),\n button_url: \"\",\n has_button: true,\n has_button_file: false,\n button_file_key: null,\n },\n images: {\n shown_in_grid: true,\n },\n images_links: [\n // { id: shortid.generate(), caption: 'caption1', key: 'pages_images/def_app.png' },\n ],\n loader: contentLoader,\n },\n instagram: { username: \"\" },\n menu: {\n template: \"1\",\n customizations: {\n button_color: \"#FF9A02\",\n header_image: {\n image_key: \"pages_images/def_menu.png\",\n },\n is_used_template_image: true,\n header_template_image_key: menuHeaderImages[0],\n },\n basic: {\n title: \"\",\n text: \"\",\n website: \"\",\n },\n categories: [\n {\n id: shortid.generate(),\n visible: true,\n title: context.$t(\"menu:def:breakfast\"),\n all_day: false,\n start_time: \"07:00\",\n end_time: \"11:00\",\n all_week: true,\n week_days: [],\n pdf_key: null,\n },\n {\n id: shortid.generate(),\n visible: true,\n title: context.$t(\"menu:def:lunch\"),\n all_day: false,\n start_time: \"12:00\",\n end_time: \"17:00\",\n all_week: true,\n week_days: [],\n pdf_key: null,\n },\n {\n id: shortid.generate(),\n visible: true,\n title: context.$t(\"menu:def:dinner\"),\n all_day: false,\n start_time: \"18:00\",\n end_time: \"23:00\",\n all_week: true,\n week_days: [],\n pdf_key: null,\n },\n ],\n soc_media_channels: [],\n loader: contentLoader,\n },\n});\n\nexport const templateRefs = {\n soc_media: \"socialMediaTemplates\",\n coupons: \"couponTemplates\",\n vcard_plus: \"vCardTemplates\",\n business_page: \"businessPageTemplates\",\n feedback: \"feedbackTemplates\",\n rating: \"ratingTemplates\",\n video: \"videoTemplates\",\n event: \"eventTemplates\",\n pdf: \"pdfTemplates\",\n app: \"appTemplates\",\n images: \"imagesTemplates\",\n menu: \"menuTemplates\",\n};\n\nexport const dynamicTemplates = (context) => ({\n URL: { url: \"\" },\n soc_media: {\n template: \"1\",\n templates: [\n {\n id: \"1\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n primary_color: \"#CAD5F3\",\n header_image: {\n image_key: \"pages_images/social-media/v1/background-img.jpg\",\n image_width: 100,\n },\n is_used_template_image: false,\n header_template_image_key: SocMediaHeaderImages[0],\n },\n basic: {\n title: \"Connect with us on Social Media\",\n text: \"Follow us and get updates delivered to your favorite social networks\",\n },\n soc_media_channels: [\n {\n type: \"facebook\",\n value: \"\",\n text: \"Facebook\",\n id: shortid.generate(),\n },\n {\n type: \"youtube\",\n value: \"\",\n text: \"Youtube\",\n id: shortid.generate(),\n },\n ],\n loader: contentLoader,\n advanced: {\n has_share_button: true,\n },\n },\n {\n id: \"2\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n primary_color: \"#010313\",\n text_color: \"#fff301\",\n // button_color: '#FF6996',\n header_image: {\n image_key: null,\n image_width: 90,\n },\n is_used_template_image: null,\n header_template_image_key: \"pages_images/coupons/coupons3.jpg\",\n },\n basic: {\n title: \"connect with us\",\n text: \"Follow us and get updates delivered to your favorite social networks\",\n },\n soc_media_channels: [\n {\n type: \"instagram\",\n value: \"\",\n text: \"Instagram\",\n id: shortid.generate(),\n },\n {\n type: \"telegram\",\n value: \"\",\n text: \"Telegram\",\n id: shortid.generate(),\n },\n {\n type: \"youtube\",\n value: \"\",\n text: \"Youtube\",\n id: shortid.generate(),\n },\n ],\n loader: contentLoader,\n advanced: {\n has_share_button: true,\n },\n },\n {\n id: \"3\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n primary_color: \"#E2EBDE\",\n text_color: \"#335029\",\n header_image: {\n image_key: null,\n image_width: 90,\n },\n is_used_template_image: null,\n header_template_image_key: \"pages_images/coupons/coupons3.jpg\",\n },\n basic: {\n title: \"connect with us.\",\n text: \"follow us and get updates delivered to your favorite social networks\",\n },\n soc_media_channels: [\n {\n type: \"instagram\",\n value: \"\",\n text: \"Instagram\",\n id: shortid.generate(),\n },\n {\n type: \"telegram\",\n value: \"\",\n text: \"Telegram\",\n id: shortid.generate(),\n },\n {\n type: \"youtube\",\n value: \"\",\n text: \"Youtube\",\n id: shortid.generate(),\n },\n ],\n loader: contentLoader,\n advanced: {\n has_share_button: true,\n },\n },\n {\n id: \"4\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n primary_color: \"#F7EFD6\",\n text_color: \"#463A3B\",\n header_image: {\n image_key: null,\n image_width: 90,\n },\n is_used_template_image: null,\n header_template_image_key: \"pages_images/coupons/coupons3.jpg\",\n },\n basic: {\n title: \"Connect with us on Social Media\",\n text: \"Follow us and get updates delivered to your favorite social networks\",\n },\n soc_media_channels: [\n {\n type: \"instagram\",\n value: \"\",\n text: \"Instagram\",\n id: shortid.generate(),\n },\n {\n type: \"telegram\",\n value: \"\",\n text: \"Telegram\",\n id: shortid.generate(),\n },\n {\n type: \"youtube\",\n value: \"\",\n text: \"Youtube\",\n id: shortid.generate(),\n },\n ],\n loader: contentLoader,\n advanced: {\n has_share_button: true,\n },\n },\n {\n id: \"5\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n primary_color: \"#4D3E67\",\n text_color: \"#fff\",\n header_image: {\n image_key: null,\n image_width: 90,\n },\n is_used_template_image: null,\n header_template_image_key: \"pages_images/coupons/coupons3.jpg\",\n },\n basic: {\n title: \"Connect with us\",\n text: \"Follow us and get updates delivered to your favorite social networks\",\n },\n soc_media_channels: [\n {\n type: \"instagram\",\n value: \"\",\n text: \"Instagram\",\n id: shortid.generate(),\n },\n {\n type: \"telegram\",\n value: \"\",\n text: \"Telegram\",\n id: shortid.generate(),\n },\n {\n type: \"youtube\",\n value: \"\",\n text: \"Youtube\",\n id: shortid.generate(),\n },\n ],\n loader: contentLoader,\n advanced: {\n has_share_button: true,\n },\n },\n {\n id: \"6\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n primary_color: \"#ffffff\",\n text_color: \"#000000\",\n header_image: {\n image_key: \"pages_images/menu/template_menu_4.png\",\n background_color: \"#ffffff\",\n image_width: 90,\n },\n is_used_template_image: false,\n header_template_image_key: \"pages_images/coupons/coupons3.jpg\",\n },\n basic: {\n title: \"Connect with us on social media\",\n text: \"Follow us and get updates delivered to your favorite social networks\",\n },\n soc_media_channels: [\n { type: \"tiktok\", value: \"\", text: \"Tiktok\", id: shortid.generate() },\n {\n type: \"telegram\",\n value: \"\",\n text: \"Telegram\",\n id: shortid.generate(),\n },\n {\n type: \"instagram\",\n value: \"\",\n text: \"Instagram\",\n id: shortid.generate(),\n },\n ],\n loader: contentLoader,\n advanced: {\n has_share_button: true,\n },\n },\n ],\n },\n coupons: {\n template: \"1\",\n templates: [\n {\n id: \"1\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n primary_color: \"#401941\",\n button_color: \"#FF6996\",\n // button_color: '#66ff66',\n header_image: {\n image_key: \"pages_images/coupons/coupons3.jpg\",\n background_color: \"#aaffaa\",\n image_width: 100,\n },\n is_used_template_image: false,\n header_template_image_key: \"pages_images/coupons/coupons3.jpg\",\n },\n basic: {\n company: \"Mary`s shop\",\n title: \"Black Friday\",\n text: \"Only the best discounts of up to 50% on absolutely all products for you this Black Friday, take your friends and give yourself the best day, hurry up and go shopping.\",\n sale: \"50% Off\",\n },\n coupon: {\n name: \"SALE50OFF\",\n use_barcode: false,\n barcode_image: {\n image_key: \"pages_images/coupons/default_barcode.png\",\n background_color: \"#ffffff\",\n image_width: 70,\n },\n expired_at: new Date(),\n terms_and_conditions:\n \"Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.\",\n website_url: \"https://link-to-qr.com\",\n website_name: \"Show now\",\n address: contentAddress,\n },\n loader: contentLoader,\n advanced: {\n has_share_button: true,\n },\n },\n {\n id: \"2\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n primary_color: \"#FFDC27\",\n button_color: \"#DCC2FF\",\n // button_color: '#66ff66',\n header_image: {\n image_key: null,\n background_color: \"#aaffaa\",\n image_width: 70,\n },\n },\n basic: {\n company: \"Mary`s shop\",\n title: \"Black Friday\",\n text: \"Only the best discounts of up to 50% on absolutely all products for you this Black Friday, take your friends and give yourself the best day, hurry up and go shopping.\",\n sale: \"50% Off\",\n },\n coupon: {\n name: \"SALE50OFF\",\n use_barcode: false,\n barcode_image: {\n image_key: \"pages_images/coupons/default_barcode.png\",\n background_color: \"#ffffff\",\n image_width: 70,\n },\n expired_at: new Date(),\n terms_and_conditions:\n \"Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.\",\n website_url: \"https://link-to-qr.com\",\n website_name: \"Show now\",\n address: contentAddress,\n },\n loader: contentLoader,\n advanced: {\n has_share_button: true,\n },\n },\n {\n id: \"3\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n button_color: \"#FF9A02\",\n text_color: \"#ffffff\",\n // button_color: '#66ff66',\n header_image: {\n image_key: \"pages_images/coupons/v3/background-img.jpg\",\n background_color: \"#000200\",\n image_width: 70,\n },\n is_used_template_image: false,\n header_template_image_key: \"pages_images/coupons/coupons3.jpg\",\n },\n basic: {\n company: \"Mary`s shop\",\n title: \"Black Friday\",\n text: \"Only the best discounts of up to 50% on absolutely all products for you this Black Friday, take your friends and give yourself the best day, hurry up and go shopping.\",\n sale: \"50% OFF\",\n },\n coupon: {\n name: \"SALE50OFF\",\n use_barcode: false,\n barcode_image: {\n image_key: \"pages_images/coupons/default_barcode.png\",\n background_color: \"#ffffff\",\n image_width: 70,\n },\n expired_at: new Date(),\n terms_and_conditions:\n \"Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.\",\n website_url: \"https://link-to-qr.com\",\n website_name: \"Show now\",\n address: contentAddress,\n },\n loader: contentLoader,\n advanced: {\n has_share_button: true,\n },\n },\n {\n id: \"4\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n primary_color: \"#FF8E0E\",\n button_color: \"#f6f6f6\",\n text_color: \"#ffffff\",\n // button_color: '#66ff66',\n header_image: {\n image_key: null,\n background_color: \"#aaffaa\",\n image_width: 70,\n },\n },\n basic: {\n company: \"Mary`s shop\",\n title: \"Black Friday\",\n text: \"Only the best discounts of up to 50% on absolutely all products for you this Black Friday, take your friends and give yourself the best day, hurry up and go shopping.\",\n sale: \"50% OFF\",\n },\n coupon: {\n name: \"SALE50OFF\",\n use_barcode: false,\n barcode_image: {\n image_key: \"pages_images/coupons/default_barcode.png\",\n background_color: \"#ffffff\",\n image_width: 70,\n },\n expired_at: new Date(),\n terms_and_conditions:\n \"Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.\",\n website_url: \"https://link-to-qr.com\",\n website_name: \"Show now\",\n address: contentAddress,\n },\n loader: contentLoader,\n advanced: {\n has_share_button: true,\n },\n },\n {\n id: \"5\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n primary_color: \"#363636\",\n button_color: \"#FFDC27\",\n // button_color: '#66ff66',\n text_color: \"#ffffff\",\n secondary_color: \"#FFDC27\",\n header_image: {\n image_key: null,\n background_color: \"#aaffaa\",\n image_width: 70,\n },\n },\n basic: {\n company: \"Mary`s shop\",\n title: \"Black Friday\",\n text: \"Only the best discounts of up to 50% on absolutely all products for you this Black Friday, take your friends and give yourself the best day, hurry up and go shopping.\",\n sale: \"50% OFF\",\n },\n coupon: {\n name: \"SALE50OFF\",\n use_barcode: false,\n barcode_image: {\n image_key: \"pages_images/coupons/default_barcode.png\",\n background_color: \"#ffffff\",\n image_width: 70,\n },\n expired_at: new Date(),\n terms_and_conditions:\n \"Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.\",\n website_url: \"https://link-to-qr.com\",\n website_name: \"Show now\",\n address: contentAddress,\n },\n loader: contentLoader,\n advanced: {\n has_share_button: true,\n },\n },\n {\n id: \"6\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n background_color: \"#434343\",\n primary_color: \"#EA4956\",\n button_color: \"#B12934\",\n text_color: \"#ffffff\",\n secondary_color: \"#B12934\",\n // button_color: '#66ff66',\n header_image: {\n image_key: null,\n background_color: \"#aaffaa\",\n image_width: 70,\n },\n },\n basic: {\n company: \"Mary`s shop\",\n title: \"Black Friday\",\n text: \"Only the best discounts of up to 50% on absolutely all products for you this Black Friday, take your friends and give yourself the best day, hurry up and go shopping.\",\n sale: \"50% OFF\",\n },\n coupon: {\n name: \"SALE50OFF\",\n use_barcode: false,\n barcode_image: {\n image_key: \"pages_images/coupons/default_barcode.png\",\n background_color: \"#ffffff\",\n image_width: 70,\n },\n expired_at: new Date(),\n terms_and_conditions:\n \"Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad fuga id, ipsa molestias nam natus perferendis quibusdam. Adipisci, at distinctio facilis hic magni maxime mollitia, perspiciatis placeat possimus quia repellendus.\",\n website_url: \"https://link-to-qr.com\",\n website_name: \"Show now\",\n address: contentAddress,\n },\n loader: contentLoader,\n advanced: {\n has_share_button: true,\n },\n },\n ],\n },\n feedback: {\n template: \"1\",\n templates: [\n {\n id: \"1\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n primary_color: \"#BB89FC\",\n header_image: {\n image_key: \"pages_images/feedback/v1/background-img.jpg\",\n background_color: \"#000000\",\n image_width: 100,\n },\n is_used_template_image: false,\n header_template_image_key: \"pages_images/feedback/feedback1.jpg\",\n },\n dialog_basic: {\n title:\n \"Please enter your contact information if you want us to get back to you.\",\n email_placeholder: \"Email\",\n phone_placeholder: \"Phone\",\n send_button: \"Send now\",\n },\n basic: {\n name: \"Hotel Blange\",\n title: \"Give us your feedback\",\n text: \"Please select the category you want to leave feedback in\",\n second_step_title: \"Please evaluate using the stars\",\n second_step_placeholder: \"Add a comment...\",\n save_button_text: \"Save and rate more\",\n send_button_text: \"Send feedback\",\n gratitude_title: \"Thank you!\",\n third_step_title: \"Your feedback has been submitted\",\n third_step_text:\n \"Thank you for taking the time to share your opinion\",\n // popup_title: 'popup-title',\n website: \"google.com\",\n },\n categories: [\n {\n icon: \"restaurant\",\n value: \"Restaurant\",\n subcategories: [],\n id: shortid.generate(),\n },\n {\n icon: \"room\",\n value: \"Room\",\n subcategories: [],\n id: shortid.generate(),\n },\n {\n icon: \"spa\",\n value: \"Spa\",\n subcategories: [],\n id: shortid.generate(),\n },\n {\n icon: \"gym\",\n value: \"Gym\",\n subcategories: [],\n id: shortid.generate(),\n },\n {\n icon: \"bar\",\n value: \"Bar\",\n subcategories: [],\n id: shortid.generate(),\n },\n ],\n loader: contentLoader,\n },\n {\n id: \"2\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n primary_color: \"#BB89FC\",\n header_image: {\n image_key: \"pages_images/feedback/v2/background-img.jpg\",\n background_color: \"#000000\",\n image_width: 100,\n },\n is_used_template_image: false,\n header_template_image_key: \"pages_images/feedback/feedback1.jpg\",\n },\n dialog_basic: {\n title:\n \"Please enter your contact information if you want us to get back to you.\",\n email_placeholder: \"Email\",\n phone_placeholder: \"Phone\",\n send_button: \"Send now\",\n },\n basic: {\n name: \"Hotel Blange\",\n title: \"Give us your feedback\",\n text: \"Please select the category you want to leave feedback in\",\n second_step_title: \"Please evaluate using the stars\",\n second_step_placeholder: \"Add a comment...\",\n save_button_text: \"Save and rate more\",\n send_button_text: \"Send feedback\",\n gratitude_title: \"Thank you!\",\n third_step_title: \"Your feedback has been submitted\",\n third_step_text:\n \"Thank you for taking the time to share your opinion\",\n // popup_title: 'popup-title',\n website: \"google.com\",\n },\n categories: [\n {\n icon: \"restaurant\",\n value: \"Restaurant\",\n subcategories: [],\n id: shortid.generate(),\n },\n {\n icon: \"room\",\n value: \"Room\",\n subcategories: [],\n id: shortid.generate(),\n },\n {\n icon: \"spa\",\n value: \"Spa\",\n subcategories: [],\n id: shortid.generate(),\n },\n {\n icon: \"gym\",\n value: \"Gym\",\n subcategories: [],\n id: shortid.generate(),\n },\n {\n icon: \"bar\",\n value: \"Bar\",\n subcategories: [],\n id: shortid.generate(),\n },\n ],\n loader: contentLoader,\n },\n {\n id: \"3\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n primary_color: \"#DB627D\",\n star_color: \"#f6c503\",\n header_image: {\n image_key: \"pages_images/feedback/v3/background-img.jpg\",\n background_color: \"#ffffff\",\n image_width: 100,\n },\n is_used_template_image: false,\n header_template_image_key: \"pages_images/feedback/feedback1.jpg\",\n },\n dialog_basic: {\n title:\n \"Please enter your contact information if you want us to get back to you.\",\n email_placeholder: \"Email\",\n phone_placeholder: \"Phone\",\n send_button: \"Send now\",\n },\n basic: {\n name: \"Hotel Blange\",\n title: \"Give us your feedback\",\n text: \"Please select the category you want to leave feedback in\",\n second_step_title: \"Please evaluate using the stars\",\n second_step_placeholder: \"Add a comment...\",\n save_button_text: \"Save and rate more\",\n send_button_text: \"Send feedback\",\n gratitude_title: \"Thank you!\",\n third_step_title: \"Your feedback has been submitted\",\n third_step_text:\n \"Thank you for taking the time to share your opinion\",\n // popup_title: 'popup-title',\n website: \"google.com\",\n },\n categories: [\n {\n icon: \"restaurant\",\n value: \"Restaurant\",\n subcategories: [],\n id: shortid.generate(),\n },\n {\n icon: \"room\",\n value: \"Room\",\n subcategories: [],\n id: shortid.generate(),\n },\n {\n icon: \"spa\",\n value: \"Spa\",\n subcategories: [],\n id: shortid.generate(),\n },\n {\n icon: \"gym\",\n value: \"Gym\",\n subcategories: [],\n id: shortid.generate(),\n },\n {\n icon: \"bar\",\n value: \"Bar\",\n subcategories: [],\n id: shortid.generate(),\n },\n ],\n loader: contentLoader,\n },\n {\n id: \"4\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n star_color: \"#f6c503\",\n header_image: {\n image_key: \"pages_images/feedback/v4/background-img.jpg\",\n background_color: \"#000000\",\n image_width: 100,\n },\n is_used_template_image: false,\n header_template_image_key: \"pages_images/feedback/feedback1.jpg\",\n },\n dialog_basic: {\n title:\n \"Please enter your contact information if you want us to get back to you.\",\n email_placeholder: \"Email\",\n phone_placeholder: \"Phone\",\n send_button: \"Send now\",\n },\n basic: {\n name: \"Hotel Blange\",\n title: \"Give us your feedback\",\n text: \"Please select the category you want to leave feedback in\",\n second_step_title: \"Please evaluate using the stars\",\n second_step_placeholder: \"Add a comment...\",\n save_button_text: \"Save and rate more\",\n send_button_text: \"Send feedback\",\n gratitude_title: \"Thank you!\",\n third_step_title: \"Your feedback has been submitted\",\n third_step_text:\n \"Thank you for taking the time to share your opinion\",\n // popup_title: 'popup-title',\n website: \"google.com\",\n },\n categories: [\n {\n icon: \"restaurant\",\n value: \"Restaurant\",\n subcategories: [],\n id: shortid.generate(),\n },\n {\n icon: \"room\",\n value: \"Room\",\n subcategories: [],\n id: shortid.generate(),\n },\n {\n icon: \"spa\",\n value: \"Spa\",\n subcategories: [],\n id: shortid.generate(),\n },\n {\n icon: \"gym\",\n value: \"Gym\",\n subcategories: [],\n id: shortid.generate(),\n },\n {\n icon: \"bar\",\n value: \"Bar\",\n subcategories: [],\n id: shortid.generate(),\n },\n ],\n loader: contentLoader,\n },\n {\n id: \"5\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n primary_color: \"#282536\",\n star_color: \"#f6c503\",\n header_image: {\n image_key: null,\n background_color: \"#ffffff\",\n image_width: 100,\n },\n },\n dialog_basic: {\n title:\n \"Please enter your contact information if you want us to get back to you.\",\n email_placeholder: \"Email\",\n phone_placeholder: \"Phone\",\n send_button: \"Send now\",\n },\n basic: {\n name: \"Hotel Blange\",\n title: \"Give us your feedback\",\n text: \"Please select the category you want to leave feedback in\",\n second_step_title: \"Please evaluate using the stars\",\n second_step_placeholder: \"Add a comment...\",\n save_button_text: \"Save and rate more\",\n send_button_text: \"Send feedback\",\n gratitude_title: \"Thank you!\",\n third_step_title: \"Your feedback has been submitted\",\n third_step_text:\n \"Thank you for taking the time to share your opinion\",\n // popup_title: 'popup-title',\n website: \"google.com\",\n },\n categories: [\n {\n icon: \"restaurant\",\n value: \"Restaurant\",\n subcategories: [],\n id: shortid.generate(),\n },\n {\n icon: \"room\",\n value: \"Room\",\n subcategories: [],\n id: shortid.generate(),\n },\n {\n icon: \"spa\",\n value: \"Spa\",\n subcategories: [],\n id: shortid.generate(),\n },\n {\n icon: \"gym\",\n value: \"Gym\",\n subcategories: [],\n id: shortid.generate(),\n },\n {\n icon: \"bar\",\n value: \"Bar\",\n subcategories: [],\n id: shortid.generate(),\n },\n ],\n loader: contentLoader,\n },\n {\n id: \"6\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n primary_color: \"#010313\",\n secondary_color: \"#EDC7FD\",\n star_color: \"#FFF301\",\n header_image: {\n image_key: null,\n background_color: \"#ffffff\",\n image_width: 100,\n },\n },\n dialog_basic: {\n title:\n \"Please enter your contact information if you want us to get back to you.\",\n email_placeholder: \"Email\",\n phone_placeholder: \"Phone\",\n send_button: \"Send now\",\n },\n basic: {\n name: \"meri tattoo\",\n title: \"Give us your feedback\",\n text: \"Please select the category you want to leave feedback in\",\n second_step_title: \"Please evaluate using the stars\",\n second_step_placeholder: \"Add a comment...\",\n save_button_text: \"Save and rate more\",\n send_button_text: \"Send feedback\",\n gratitude_title: \"Thank you!\",\n third_step_title: \"Your feedback has been submitted\",\n third_step_text:\n \"Thank you for taking the time to share your opinion\",\n // popup_title: 'popup-title',\n website: \"google.com\",\n },\n categories: [\n {\n icon: \"restaurant\",\n value: \"Restaurant\",\n subcategories: [],\n id: shortid.generate(),\n },\n {\n icon: \"room\",\n value: \"Room\",\n subcategories: [],\n id: shortid.generate(),\n },\n {\n icon: \"spa\",\n value: \"Spa\",\n subcategories: [],\n id: shortid.generate(),\n },\n ],\n loader: contentLoader,\n },\n ],\n },\n rating: {\n template: \"1\",\n templates: [\n {\n id: \"1\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n primary_color: \"#8433C3\",\n button_color: \"#FF9A02\",\n header_image: {\n image_key: \"pages_images/rating/v1/background-img.jpg\",\n background_color: \"#ffffff\",\n image_width: 100,\n },\n is_used_template_image: false,\n header_template_image_key: ratesHeaderImages[0],\n },\n rating: {\n question: \"How would you rate your time in our hotel?\",\n placeholder: \"Add a comment...\",\n send_button_text: \"Send rating\",\n gratitude_title: \"Thank you!\",\n title: \"Your feedback has been submitted\",\n text: \"Thank you for taking the time to share your opinion\",\n type: \"star\",\n },\n dialog_basic: {\n title:\n \"Please enter your contact information if you want us to get back to you.\",\n email_placeholder: \"Email\",\n phone_placeholder: \"Phone\",\n send_button: \"Send now\",\n },\n basic: {\n company: \"Hotel Blange\",\n website: \"www.hotelblange.com\",\n },\n soc_media_channels: [\n { type: \"instagram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"telegram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"youtube\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"facebook\", value: \"\", text: \"\", id: shortid.generate() },\n ],\n loader: contentLoader,\n },\n {\n id: \"2\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n primary_color: \"#F7C558\",\n button_color: \"#FF9A02\",\n star_color: \"#8433C3\",\n header_image: {\n image_key: null,\n background_color: \"#F7C558\",\n image_width: 100,\n },\n },\n rating: {\n question: \"How would you rate your time in our hotel?\",\n placeholder: \"Add a comment...\",\n send_button_text: \"Send rating\",\n gratitude_title: \"Thank you!\",\n title: \"Your feedback has been submitted\",\n text: \"Thank you for taking the time to share your opinion\",\n type: \"star\",\n },\n dialog_basic: {\n title:\n \"Please enter your contact information if you want us to get back to you.\",\n email_placeholder: \"Email\",\n phone_placeholder: \"Phone\",\n send_button: \"Send now\",\n },\n basic: {\n company: \"Hotel Blange\",\n website: \"www.hotelblange.com\",\n },\n soc_media_channels: [\n { type: \"instagram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"telegram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"youtube\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"facebook\", value: \"\", text: \"\", id: shortid.generate() },\n ],\n loader: contentLoader,\n },\n {\n id: \"3\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n primary_color: \"#FF1744\",\n button_color: \"#C2002D\",\n header_image: {\n image_key: \"pages_images/rating/v3/background-img.jpg\",\n background_color: \"#ffffff\",\n image_width: 100,\n },\n is_used_template_image: false,\n header_template_image_key: ratesHeaderImages[0],\n },\n rating: {\n question: \"How would you rate your time in our hotel?\",\n placeholder: \"Add a comment...\",\n send_button_text: \"Send rating\",\n gratitude_title: \"Thank you!\",\n title: \"Your feedback has been submitted\",\n text: \"Thank you for taking the time to share your opinion\",\n type: \"star\",\n },\n dialog_basic: {\n title:\n \"Please enter your contact information if you want us to get back to you.\",\n email_placeholder: \"Email\",\n phone_placeholder: \"Phone\",\n send_button: \"Send now\",\n },\n basic: {\n company: \"Hotel Blange\",\n website: \"www.hotelblange.com\",\n },\n soc_media_channels: [\n { type: \"instagram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"telegram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"youtube\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"facebook\", value: \"\", text: \"\", id: shortid.generate() },\n ],\n loader: contentLoader,\n },\n {\n id: \"4\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n button_color: \"#C8B39C\",\n header_image: {\n image_key: \"pages_images/rating/v4/background-img.jpg\",\n background_color: \"#ffffff\",\n image_width: 100,\n },\n is_used_template_image: false,\n header_template_image_key: ratesHeaderImages[0],\n },\n rating: {\n question: \"How would you rate your time in our hotel?\",\n placeholder: \"Add a comment...\",\n send_button_text: \"Send rating\",\n gratitude_title: \"Thank you!\",\n title: \"Your feedback has been submitted\",\n text: \"Thank you for taking the time to share your opinion\",\n type: \"star\",\n },\n dialog_basic: {\n title:\n \"Please enter your contact information if you want us to get back to you.\",\n email_placeholder: \"Email\",\n phone_placeholder: \"Phone\",\n send_button: \"Send now\",\n },\n basic: {\n company: \"Hotel Blange\",\n website: \"www.hotelblange.com\",\n },\n soc_media_channels: [\n { type: \"instagram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"telegram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"youtube\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"facebook\", value: \"\", text: \"\", id: shortid.generate() },\n ],\n loader: contentLoader,\n },\n {\n id: \"5\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n primary_color: \"#010313\",\n secondary_color: \"#EDC7FD\",\n star_color: \"#FFF301\",\n header_image: {\n image_key: null,\n background_color: \"#F7C558\",\n image_width: 100,\n },\n },\n rating: {\n question: \"How would you rate your time in our hotel?\",\n placeholder: \"Add a comment...\",\n send_button_text: \"Send rating\",\n gratitude_title: \"Thank you!\",\n title: \"Your feedback has been submitted\",\n text: \"Thank you for taking the time to share your opinion\",\n type: \"star\",\n },\n dialog_basic: {\n title:\n \"Please enter your contact information if you want us to get back to you.\",\n email_placeholder: \"Email\",\n phone_placeholder: \"Phone\",\n send_button: \"Send now\",\n },\n basic: {\n company: \"Hotel Blange\",\n website: \"www.hotelblange.com\",\n },\n soc_media_channels: [\n { type: \"instagram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"telegram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"youtube\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"facebook\", value: \"\", text: \"\", id: shortid.generate() },\n ],\n loader: contentLoader,\n },\n {\n id: \"6\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n primary_color: \"#010313\",\n secondary_color: \"#80CE00\",\n star_color: \"#FFF301\",\n header_image: {\n image_key: null,\n background_color: \"#F7C558\",\n image_width: 100,\n },\n },\n rating: {\n question: \"How would you rate your time in our hotel?\",\n placeholder: \"Add a comment...\",\n send_button_text: \"Send rating\",\n gratitude_title: \"Thank you!\",\n title: \"Your feedback has been submitted\",\n text: \"Thank you for taking the time to share your opinion\",\n type: \"star\",\n },\n dialog_basic: {\n title:\n \"Please enter your contact information if you want us to get back to you.\",\n email_placeholder: \"Email\",\n phone_placeholder: \"Phone\",\n send_button: \"Send now\",\n },\n basic: {\n company: \"Hotel Blange\",\n website: \"www.hotelblange.com\",\n },\n soc_media_channels: [\n { type: \"instagram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"telegram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"youtube\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"facebook\", value: \"\", text: \"\", id: shortid.generate() },\n ],\n loader: contentLoader,\n },\n ],\n },\n event: {\n template: \"1\",\n templates: [\n {\n id: \"1\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n // primary_color: '#0A4701',\n button_color: \"#FF9A02\",\n header_image: {\n image_key: \"pages_images/event/v1/background-img.jpg\",\n background_color: \"#ffffff\",\n image_width: 100,\n },\n is_used_template_image: false,\n header_template_image_key: eventHeaderImages[3],\n },\n button: {\n button_text: \"Get Tickets\",\n button_url: \"\",\n has_button: true,\n has_button_file: false,\n button_file_key: true,\n },\n basic: {\n company: \"company\",\n title: \"Personal growth training\",\n text: \"By attending our training you will become more confident, learn to be leaders and lead people\",\n button_text: \"Get tickets\",\n button_url: \"https://gogole.com\",\n has_button: true,\n features: [\"wifi\", \"cocktails\", \"parking\"],\n about: \"about about, about about about.\",\n all_day: false,\n start_date: new Date(),\n start_time: \"03:30\",\n multiple_days: false,\n end_date: new Date(),\n end_time: \"04:30\",\n time_format: \"\",\n timezone: null,\n venue_name: \"venue name\",\n address: contentAddress,\n },\n contacts: {\n name: \"contact name\",\n phone: \"0 (000) 000-0000\",\n email: \"some@email.com\",\n website: \"example.com\",\n },\n loader: contentLoader,\n // advanced: {\n // has_share_button: true,\n // },\n },\n {\n id: \"2\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n // primary_color: '#0A4701',\n button_color: \"#101A20\",\n header_image: {\n image_key: \"pages_images/event/v2/background-img.jpg\",\n background_color: \"#ffffff\",\n image_width: 100,\n },\n is_used_template_image: false,\n header_template_image_key: eventHeaderImages[2],\n },\n button: {\n button_text: \"Get Tickets\",\n button_url: \"\",\n has_button: true,\n has_button_file: false,\n button_file_key: null,\n },\n basic: {\n company: \"company\",\n title: \"Personal growth training\",\n text: \"By attending our training you will become more confident, learn to be leaders and lead people\",\n button_text: \"Get tickets\",\n button_url: \"https://gogole.com\",\n has_button: true,\n features: [\"wifi\", \"cocktails\", \"parking\"],\n about: \"about about, about about about.\",\n all_day: false,\n start_date: new Date(),\n start_time: \"03:30\",\n multiple_days: false,\n end_date: new Date(),\n end_time: \"04:30\",\n time_format: \"\",\n timezone: null,\n venue_name: \"venue name\",\n address: contentAddress,\n },\n contacts: {\n name: \"contact name\",\n phone: \"0 (000) 000-0000\",\n email: \"some@email.com\",\n website: \"example.com\",\n },\n loader: contentLoader,\n // advanced: {\n // has_share_button: true,\n // },\n },\n {\n id: \"3\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n primary_color: \"#FADDBF\",\n button_color: \"#393A3F\",\n header_image: {\n image_key: null,\n background_color: \"#ffffff\",\n image_width: 100,\n },\n },\n button: {\n button_text: \"Get Tickets\",\n button_url: \"\",\n has_button: true,\n has_button_file: false,\n button_file_key: null,\n },\n basic: {\n company: \"company\",\n title: \"Personal growth training\",\n text: \"By attending our training you will become more confident, learn to be leaders and lead people\",\n button_text: \"Get tickets\",\n button_url: \"https://gogole.com\",\n has_button: true,\n features: [\"wifi\", \"cocktails\", \"parking\"],\n about: \"about about, about about about.\",\n all_day: false,\n start_date: new Date(),\n start_time: \"03:30\",\n multiple_days: false,\n end_date: new Date(),\n end_time: \"04:30\",\n time_format: \"\",\n timezone: null,\n venue_name: \"venue name\",\n address: contentAddress,\n },\n contacts: {\n name: \"contact name\",\n phone: \"0 (000) 000-0000\",\n email: \"some@email.com\",\n website: \"example.com\",\n },\n loader: contentLoader,\n // advanced: {\n // has_share_button: true,\n // },\n },\n {\n id: \"4\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n button_color: \"#9B64FE\",\n text_color: \"#F69462\",\n header_image: {\n image_key: \"pages_images/event/v4/background-img.jpg\",\n background_color: \"#ffffff\",\n image_width: 100,\n },\n is_used_template_image: false,\n header_template_image_key: eventHeaderImages[1],\n },\n button: {\n button_text: \"Get Tickets\",\n button_url: \"\",\n has_button: true,\n has_button_file: false,\n button_file_key: null,\n },\n basic: {\n company: \"company\",\n title: \"Personal growth training\",\n text: \"By attending our training you will become more confident, learn to be leaders and lead people\",\n button_text: \"Get tickets\",\n button_url: \"https://gogole.com\",\n has_button: true,\n features: [\"wifi\", \"food\", \"hot_drinks\", \"parking\"],\n about: \"about about, about about about.\",\n all_day: false,\n start_date: new Date(),\n start_time: \"03:30\",\n multiple_days: false,\n end_date: new Date(),\n end_time: \"04:30\",\n time_format: \"\",\n timezone: null,\n venue_name: \"venue name\",\n address: contentAddress,\n },\n contacts: {\n name: \"contact name\",\n phone: \"0 (000) 000-0000\",\n email: \"some@email.com\",\n website: \"example.com\",\n },\n loader: contentLoader,\n // advanced: {\n // has_share_button: true,\n // },\n },\n {\n id: \"5\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n button_color: \"#ffffff\",\n text_color: \"#E8EBF4\",\n header_image: {\n image_key: \"pages_images/event/v5/background-img.jpg\",\n background_color: \"#ffffff\",\n image_width: 100,\n },\n is_used_template_image: false,\n header_template_image_key: eventHeaderImages[3],\n },\n button: {\n button_text: \"Get Tickets\",\n button_url: \"\",\n has_button: true,\n has_button_file: false,\n button_file_key: null,\n },\n basic: {\n company: \"company\",\n title: \"POOL PARTY\",\n text: \"Clean pool, sun, delicious cocktails and loud music - it's all about our pool party\",\n button_text: \"Get tickets\",\n button_url: \"https://google.com\",\n has_button: true,\n features: [\"wifi\", \"food\", \"cocktails\", \"parking\"],\n about: \"about about, about about about.\",\n all_day: false,\n start_date: new Date(),\n start_time: \"03:30\",\n multiple_days: false,\n end_date: new Date(),\n end_time: \"04:30\",\n time_format: \"\",\n timezone: null,\n venue_name: \"venue name\",\n address: contentAddress,\n },\n contacts: {\n name: \"contact name\",\n phone: \"0 (000) 000-0000\",\n email: \"some@email.com\",\n website: \"example.com\",\n },\n loader: contentLoader,\n // advanced: {\n // has_share_button: true,\n // },\n },\n {\n id: \"6\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n button_color: \"#DE544C\",\n header_image: {\n image_key: \"pages_images/event/v6/background-img.jpg\",\n background_color: \"#030000\",\n image_width: 100,\n },\n is_used_template_image: false,\n header_template_image_key: eventHeaderImages[3],\n },\n button: {\n button_text: \"Get Tickets\",\n button_url: \"\",\n has_button: true,\n has_button_file: false,\n button_file_key: null,\n },\n basic: {\n company: \"company\",\n title: \"Dance festival\",\n text: \"We have gathered the best dancers from all over the world in order for you to experience unforgettable emotions and sensations. Enjoy bright performances and take part in our competitions. It's an event you won't want to miss!\",\n button_text: \"Get tickets\",\n button_url: \"https://gogole.com\",\n has_button: true,\n features: [\"wifi\", \"food\", \"cocktails\", \"parking\"],\n about: \"about about, about about about.\",\n all_day: false,\n start_date: new Date(),\n start_time: \"03:30\",\n multiple_days: false,\n end_date: new Date(),\n end_time: \"04:30\",\n time_format: \"\",\n timezone: null,\n venue_name: \"venue name\",\n address: contentAddress,\n },\n contacts: {\n name: \"contact name\",\n phone: \"0 (000) 000-0000\",\n email: \"some@email.com\",\n website: \"example.com\",\n },\n loader: contentLoader,\n // advanced: {\n // has_share_button: true,\n // },\n },\n ],\n },\n vcard_plus: {\n template: \"1\",\n templates: [\n {\n id: \"1\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n button_color: \"#000000\",\n header_image: {\n image_key: \"pages_images/vcard/v1/header-img.jpg\",\n background_color: \"#e3ffb6\",\n image_width: 100,\n is_header_image: true,\n },\n is_used_template_image: false,\n header_template_image_key: vcardHeaderImages[1],\n },\n vcard: {\n avatar: {\n image_key: \"pages_images/vcard/v1/avatar.jpg\",\n background_color: \"#ffffff\",\n image_width: 100,\n },\n firstName: context.$t(\"vcard_plus:def:first_name\"),\n lastName: \"Howard\",\n company: \"\",\n jobTitle: \"UI/UX designer\",\n phone: \"\",\n mobilePhone: \"(603) 555-0123\",\n fax: \"\",\n email: \"easterhowarduiux@gmail.com\",\n address: contentAddress,\n website: \"\",\n about:\n \"Experience of more than three years, I will make you the best visual\",\n },\n soc_media_channels: [\n { type: \"instagram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"telegram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"youtube\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"facebook\", value: \"\", text: \"\", id: shortid.generate() },\n ],\n loader: contentLoader,\n // advanced: {\n // has_share_button: true,\n // },\n },\n {\n id: \"2\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n button_text: \"Save contact\",\n button_color: \"#000000\",\n header_image: {\n image_key: \"pages_images/vcard/v2/header-img.jpg\",\n background_color: \"#e3ffb6\",\n image_width: 100,\n is_header_image: true,\n },\n is_used_template_image: false,\n header_template_image_key: vcardHeaderImages[1],\n },\n vcard: {\n avatar: {\n image_key: \"pages_images/vcard/v2/avatar.jpg\",\n background_color: \"#ffffff\",\n image_width: 100,\n },\n firstName: \"Esther\",\n lastName: \"Howard\",\n company: \"\",\n jobTitle: \"UI/UX designer\",\n phone: \"\",\n mobilePhone: \"(603) 555-0123\",\n fax: \"\",\n email: \"easterhowarduiux@gmail.com\",\n address: contentAddress,\n website: \"\",\n about:\n \"Experience of more than three years, I will make you the best visual\",\n },\n soc_media_channels: [\n { type: \"instagram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"telegram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"youtube\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"facebook\", value: \"\", text: \"\", id: shortid.generate() },\n ],\n loader: contentLoader,\n // advanced: {\n // has_share_button: true,\n // },\n },\n {\n id: \"3\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n button_text: \"Save contact\",\n button_color: \"#145509\",\n header_image: {\n image_key: \"pages_images/vcard/v2/header-img.jpg\",\n background_color: \"#e3ffb6\",\n image_width: 100,\n is_header_image: false,\n },\n is_used_template_image: false,\n header_template_image_key: \"pages_images/coupons/coupons2.jpg\",\n },\n vcard: {\n avatar: {\n image_key: \"pages_images/vcard/v3/avatar.jpg\",\n background_color: \"#ffffff\",\n image_width: 100,\n },\n firstName: \"Esther\",\n lastName: \"Howard\",\n company: \"\",\n jobTitle: \"UI/UX designer\",\n phone: \"\",\n mobilePhone: \"(603) 555-0123\",\n fax: \"\",\n email: \"easterhowarduiux@gmail.com\",\n address: contentAddress,\n website: \"\",\n about:\n \"Experience of more than three years, I will make you the best visual\",\n },\n soc_media_channels: [\n { type: \"instagram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"telegram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"youtube\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"facebook\", value: \"\", text: \"\", id: shortid.generate() },\n ],\n loader: contentLoader,\n // advanced: {\n // has_share_button: true,\n // },\n },\n {\n id: \"4\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n button_color: \"#6A0A5B\",\n header_image: {\n image_key: \"pages_images/vcard/v2/header-img.jpg\",\n background_color: \"#e3ffb6\",\n image_width: 100,\n is_header_image: false,\n },\n is_used_template_image: false,\n header_template_image_key: \"pages_images/coupons/coupons2.jpg\",\n },\n vcard: {\n avatar: {\n image_key: \"pages_images/vcard/v4/avatar.jpg\",\n background_color: \"#ffffff\",\n image_width: 100,\n },\n firstName: \"Esther\",\n lastName: \"Howard\",\n company: \"\",\n jobTitle: \"UI/UX designer\",\n phone: \"\",\n mobilePhone: \"(603) 555-0123\",\n fax: \"\",\n email: \"easterhowarduiux@gmail.com\",\n address: contentAddress,\n website: \"\",\n about:\n \"Experience of more than three years, I will make you the best visual\",\n },\n soc_media_channels: [\n { type: \"instagram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"telegram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"youtube\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"facebook\", value: \"\", text: \"\", id: shortid.generate() },\n ],\n loader: contentLoader,\n // advanced: {\n // has_share_button: true,\n // },\n },\n {\n id: \"5\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n button_color: \"#BB89FC\",\n header_image: {\n image_key: \"pages_images/vcard/v2/header-img.jpg\",\n background_color: \"#e3ffb6\",\n image_width: 100,\n is_header_image: false,\n },\n is_used_template_image: false,\n header_template_image_key: \"pages_images/menu/menu1.jpg\",\n },\n vcard: {\n avatar: {\n image_key: \"pages_images/vcard/v5/avatar.jpg\",\n background_color: \"#ffffff\",\n image_width: 100,\n },\n firstName: \"Darlene\",\n lastName: \"Robertson\",\n company: \"\",\n jobTitle: \"UI/UX designer\",\n phone: \"\",\n mobilePhone: \"(603) 555-0123\",\n fax: \"\",\n email: \"easterhowarduiux@gmail.com\",\n address: contentAddress,\n website: \"\",\n about:\n \"Experience of more than three years, I will make you the best visual\",\n },\n soc_media_channels: [\n { type: \"instagram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"telegram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"youtube\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"facebook\", value: \"\", text: \"\", id: shortid.generate() },\n ],\n loader: contentLoader,\n // advanced: {\n // has_share_button: true,\n // },\n },\n {\n id: \"6\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n button_color: \"#6A0A5B\",\n header_image: {\n image_key: \"pages_images/vcard/v2/header-img.jpg\",\n background_color: \"#e3ffb6\",\n image_width: 100,\n is_header_image: false,\n },\n is_used_template_image: false,\n header_template_image_key: \"pages_images/menu/menu1.jpg\",\n },\n vcard: {\n avatar: {\n image_key: \"pages_images/vcard/v6/avatar.jpg\",\n background_color: \"#ffffff\",\n image_width: 100,\n },\n firstName: \"Darlene\",\n lastName: \"Robertson\",\n company: \"\",\n jobTitle: \"UI/UX designer\",\n phone: \"\",\n mobilePhone: \"(603) 555-0123\",\n fax: \"\",\n email: \"easterhowarduiux@gmail.com\",\n address: contentAddress,\n website: \"\",\n about:\n \"Experience of more than three years, I will make you the best visual\",\n },\n soc_media_channels: [\n { type: \"instagram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"telegram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"youtube\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"facebook\", value: \"\", text: \"\", id: shortid.generate() },\n ],\n loader: contentLoader,\n // advanced: {\n // has_share_button: true,\n // },\n },\n {\n id: \"7\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n button_color: \"#FFC6D7\",\n header_image: {\n image_key: \"pages_images/vcard/v2/header-img.jpg\",\n background_color: \"#e3ffb6\",\n image_width: 100,\n is_header_image: false,\n },\n is_used_template_image: false,\n header_template_image_key: \"pages_images/menu/menu1.jpg\",\n },\n vcard: {\n avatar: {\n image_key: \"pages_images/vcard/v7/avatar.jpg\",\n background_color: \"#ffffff\",\n image_width: 100,\n },\n firstName: \"Kathryn\",\n lastName: \"Murphy\",\n company: \"\",\n jobTitle: \"UI/UX designer\",\n phone: \"\",\n mobilePhone: \"(603) 555-0123\",\n fax: \"\",\n email: \"easterhowarduiux@gmail.com\",\n address: contentAddress,\n website: \"\",\n about:\n \"Experience of more than three years, I will make you the best visual\",\n },\n soc_media_channels: [\n { type: \"instagram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"telegram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"youtube\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"facebook\", value: \"\", text: \"\", id: shortid.generate() },\n ],\n loader: contentLoader,\n // advanced: {\n // has_share_button: true,\n // },\n },\n {\n id: \"8\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n button_color: \"#FF9494\",\n header_image: {\n image_key: \"pages_images/vcard/v2/header-img.jpg\",\n background_color: \"#e3ffb6\",\n image_width: 100,\n is_header_image: false,\n },\n is_used_template_image: false,\n header_template_image_key: \"pages_images/menu/menu1.jpg\",\n },\n vcard: {\n avatar: {\n image_key: \"pages_images/vcard/v8/avatar.jpg\",\n background_color: \"#ffffff\",\n image_width: 100,\n },\n firstName: \"Kathryn\",\n lastName: \"Murphy\",\n company: \"\",\n jobTitle: \"UI/UX designer\",\n phone: \"\",\n mobilePhone: \"(603) 555-0123\",\n fax: \"\",\n email: \"easterhowarduiux@gmail.com\",\n address: contentAddress,\n website: \"\",\n about:\n \"Experience of more than three years, I will make you the best visual\",\n },\n soc_media_channels: [\n { type: \"instagram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"telegram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"youtube\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"facebook\", value: \"\", text: \"\", id: shortid.generate() },\n ],\n loader: contentLoader,\n // advanced: {\n // has_share_button: true,\n // },\n },\n ],\n },\n business_page: {\n template: \"1\",\n templates: [\n {\n id: \"1\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n // primary_color: '#127003',\n button_color: \"#F299B4\",\n header_image: {\n image_key: \"pages_images/bussines-page/v1/background-img.jpg\",\n // image_key: 'pages_images/def_business_page.png',\n // image_key: 'pages_images/business_page/business_page1.jpg',\n background_color: \"#000000\",\n image_width: 100,\n },\n is_used_template_image: false,\n header_template_image_key: businessPageHeaderImages[0],\n },\n basic: {\n company: \"Curly Chris\",\n title: \"Salon for curly hair\",\n text: \"It's time to put your curls in order, and our sorceress fairies will help you with this\",\n },\n button: {\n button_text: context.$t(\"qr_manage:business_page:button_name1\"),\n button_url: \"\",\n has_button: true,\n has_button_file: false,\n button_file_key: null,\n },\n opening_hours: {\n Mon: {\n is_open: true,\n hours: [\n { start: \"09:00\", end: \"14:00\" },\n { start: \"15:00\", end: \"18:00\" },\n ],\n },\n Tue: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Wen: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Thu: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Fri: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Sat: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Sun: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n },\n address: contentAddress,\n features: [],\n contacts: {\n about: \"\",\n name: \"\",\n phone: \"\",\n email: \"\",\n website: \"\",\n },\n soc_media_channels: [\n // {type: 'website', value: '', text: '', id: shortid.generate()},\n ],\n loader: contentLoader,\n },\n {\n id: \"2\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n // primary_color: '#127003',\n button_color: \"#F299B4\",\n header_image: {\n image_key: \"pages_images/bussines-page/v2/background-img.jpg\",\n // image_key: 'pages_images/def_business_page.png',\n // image_key: 'pages_images/business_page/business_page1.jpg',\n background_color: \"#000000\",\n image_width: 100,\n },\n is_used_template_image: false,\n header_template_image_key: businessPageHeaderImages[4],\n },\n basic: {\n company: \"Curly Chris\",\n title: \"Salon for curly hair\",\n text: \"It's time to put your curls in order, and our sorceress fairies will help you with this\",\n },\n button: {\n button_text: context.$t(\"qr_manage:business_page:button_name1\"),\n button_url: \"\",\n has_button: true,\n has_button_file: false,\n button_file_key: null,\n },\n opening_hours: {\n Mon: {\n is_open: true,\n hours: [\n { start: \"09:00\", end: \"14:00\" },\n { start: \"15:00\", end: \"18:00\" },\n ],\n },\n Tue: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Wen: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Thu: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Fri: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Sat: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Sun: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n },\n address: contentAddress,\n features: [],\n contacts: {\n about: \"\",\n name: \"\",\n phone: \"\",\n email: \"\",\n website: \"\",\n },\n soc_media_channels: [\n // {type: 'website', value: '', text: '', id: shortid.generate()},\n ],\n loader: contentLoader,\n },\n {\n id: \"3\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n // primary_color: '#127003',\n button_color: \"#000000\",\n text_color: \"#000000\",\n secondary_color: \"#818181\",\n header_image: {\n image_key: \"pages_images/bussines-page/v3/background-img.jpg\",\n // image_key: 'pages_images/def_business_page.png',\n // image_key: 'pages_images/business_page/business_page1.jpg',\n background_color: \"#ffffff\",\n image_width: 100,\n },\n is_used_template_image: false,\n header_template_image_key: businessPageHeaderImages[2],\n },\n basic: {\n company: \"Smile House\",\n title: \"Salon for curly hair\",\n text: \"Only modern and high-quality equipment and the best specialists who will make your smile incredible\",\n },\n button: {\n button_text: context.$t(\"qr_manage:business_page:button_name1\"),\n button_url: \"\",\n has_button: true,\n has_button_file: false,\n button_file_key: null,\n },\n opening_hours: {\n Mon: {\n is_open: true,\n hours: [\n { start: \"09:00\", end: \"14:00\" },\n { start: \"15:00\", end: \"18:00\" },\n ],\n },\n Tue: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Wen: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Thu: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Fri: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Sat: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Sun: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n },\n address: contentAddress,\n features: [],\n contacts: {\n about: \"\",\n name: \"\",\n phone: \"\",\n email: \"\",\n website: \"\",\n },\n soc_media_channels: [\n // {type: 'website', value: '', text: '', id: shortid.generate()},\n ],\n loader: contentLoader,\n },\n {\n id: \"4\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n // primary_color: '#127003',\n button_color: \"#F65774\",\n text_color: \"#F65774\",\n secondary_color: \"#F65774\",\n header_image: {\n image_key: \"pages_images/bussines-page/v4/background-img.jpg\",\n // image_key: 'pages_images/def_business_page.png',\n // image_key: 'pages_images/business_page/business_page1.jpg',\n background_color: \"#ffffff\",\n image_width: 100,\n },\n is_used_template_image: false,\n header_template_image_key: businessPageHeaderImages[3],\n },\n basic: {\n company: \"MANICURE HOUSE\",\n title: \"Salon for curly hair\",\n text: \"Only modern and high-quality equipment and the best specialists who will make your smile incredible\",\n },\n button: {\n button_text: context.$t(\"qr_manage:business_page:button_name1\"),\n button_url: \"\",\n has_button: true,\n has_button_file: false,\n button_file_key: null,\n },\n opening_hours: {\n Mon: {\n is_open: true,\n hours: [\n { start: \"09:00\", end: \"14:00\" },\n { start: \"15:00\", end: \"18:00\" },\n ],\n },\n Tue: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Wen: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Thu: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Fri: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Sat: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Sun: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n },\n address: contentAddress,\n features: [],\n contacts: {\n about: \"\",\n name: \"\",\n phone: \"\",\n email: \"\",\n website: \"\",\n },\n soc_media_channels: [\n // {type: 'website', value: '', text: '', id: shortid.generate()},\n ],\n loader: contentLoader,\n },\n {\n id: \"5\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n // primary_color: '#127003',\n button_color: \"#A45615\",\n text_color: \"#FFF\",\n secondary_color: \"#DDD\",\n background_color: \"#1A1A1A\",\n header_image: {\n image_key: \"pages_images/bussines-page/v5/background-img.jpg\",\n // image_key: 'pages_images/def_business_page.png',\n // image_key: 'pages_images/business_page/business_page1.jpg',\n background_color: \"#ffffff\",\n image_width: 100,\n },\n is_used_template_image: false,\n header_template_image_key: businessPageHeaderImages[4],\n },\n basic: {\n company: \"The best burgers\",\n title: \"Salon for curly hair\",\n text: \"Only modern and high-quality equipment and the best specialists who will make your smile incredible\",\n },\n button: {\n button_text: context.$t(\"qr_manage:business_page:button_name1\"),\n button_url: \"\",\n has_button: true,\n has_button_file: false,\n button_file_key: null,\n },\n opening_hours: {\n Mon: {\n is_open: true,\n hours: [\n { start: \"09:00\", end: \"14:00\" },\n { start: \"15:00\", end: \"18:00\" },\n ],\n },\n Tue: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Wen: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Thu: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Fri: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Sat: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Sun: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n },\n address: contentAddress,\n features: [],\n contacts: {\n about: \"\",\n name: \"\",\n phone: \"\",\n email: \"\",\n website: \"\",\n },\n soc_media_channels: [\n // {type: 'website', value: '', text: '', id: shortid.generate()},\n ],\n loader: contentLoader,\n },\n {\n id: \"6\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n // primary_color: '#127003',\n button_color: \"#e3e3e3\",\n text_color: \"#FFF\",\n secondary_color: \"#DDD\",\n header_image: {\n image_key: \"pages_images/bussines-page/v6/background-img.jpg\",\n // image_key: 'pages_images/def_business_page.png',\n // image_key: 'pages_images/business_page/business_page1.jpg',\n background_color: \"#ffffff\",\n image_width: 100,\n },\n is_used_template_image: false,\n header_template_image_key: businessPageHeaderImages[5],\n },\n basic: {\n company: \"Warm bread\",\n title: \"Salon for curly hair\",\n text: \"Only modern and high-quality equipment and the best specialists who will make your smile incredible\",\n },\n button: {\n button_text: context.$t(\"qr_manage:business_page:button_name1\"),\n button_url: \"\",\n has_button: true,\n has_button_file: false,\n button_file_key: null,\n },\n opening_hours: {\n Mon: {\n is_open: true,\n hours: [\n { start: \"09:00\", end: \"14:00\" },\n { start: \"15:00\", end: \"18:00\" },\n ],\n },\n Tue: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Wen: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Thu: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Fri: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Sat: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n Sun: { is_open: false, hours: [{ start: \"09:00\", end: \"18:00\" }] },\n },\n address: contentAddress,\n features: [],\n contacts: {\n about: \"\",\n name: \"\",\n phone: \"\",\n email: \"\",\n website: \"\",\n },\n soc_media_channels: [\n // {type: 'website', value: '', text: '', id: shortid.generate()},\n ],\n loader: contentLoader,\n },\n ],\n },\n pdf: {\n template: \"1\",\n templates: [\n {\n id: \"1\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n primary_color: \"#083800\",\n button_color: \"#FFDC27\",\n },\n pdf: {\n direct_link: false,\n pdf_key: \"pages/test-pdf.pdf\",\n preview_image: {\n image_key: \"pages_images/def_pdf.png\",\n background_color: \"transparent\",\n },\n },\n basic: {\n company: \"company\",\n title: \"This summer's bestseller\",\n text: \"A book that will tell you a life story. A story that will touch you to the core and motivate you to work on yourself\",\n website: \"google.com\",\n button_text: \"View PDF\",\n },\n loader: contentLoader,\n },\n {\n id: \"2\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n button_color: \"#000000\",\n },\n pdf: {\n direct_link: false,\n pdf_key: \"pages/test-pdf.pdf\",\n preview_image: {\n image_key: \"pages_images/pdf/v2/background-img.jpg\",\n background_color: \"transparent\",\n },\n },\n basic: {\n company: \"company\",\n title: \"Secrets of space\",\n text: \"Inside, you'll find fascinating information about unknown planets, stars, black holes, asteroids, and other objects in the universe that still remain a mystery to scientists. This file is intended for anyone who is interested in the cosmos and wants to learn more about its mysteries.\",\n website: \"google.com\",\n button_text: \"View PDF\",\n },\n loader: contentLoader,\n },\n {\n id: \"3\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n primary_color: \"#000000\",\n button_color: \"#ffffff\",\n },\n pdf: {\n direct_link: false,\n pdf_key: \"pages/test-pdf.pdf\",\n preview_image: {\n image_key: \"pages_images/pdf/v3/background-img.jpg\",\n background_color: \"transparent\",\n image_width: 100,\n },\n },\n basic: {\n company: \"Tattoo care rules\",\n title: \"From Inkline Tattoo Studio\",\n text: \"This file contains the rules that should be followed before, as well as after the session for better healing of your tattoo\",\n website: \"google.com\",\n button_text: \"View PDF\",\n },\n loader: contentLoader,\n },\n {\n id: \"4\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n button_color: \"#6257FF\",\n },\n pdf: {\n direct_link: false,\n pdf_key: \"pages/test-pdf.pdf\",\n preview_image: {\n image_key: \"pages_images/pdf/v4/background-img.jpg\",\n background_color: \"transparent\",\n image_width: 100,\n },\n },\n basic: {\n company: \"Anatomy Exam \\n\" + \"Preparation\",\n title: \"Anatomy Exam Preparation\",\n text:\n \"Anatomy Exam \\n\" +\n \"Preparation contains a large amount of theoretical material, articles on anatomy, detailed images and diagrams that will help you in preparing for the exam.\",\n website: \"google.com\",\n button_text: \"View PDF\",\n },\n loader: contentLoader,\n },\n {\n id: \"5\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n button_color: \"#ffffff\",\n text_color: \"#000000\",\n header_image: {\n image_key: \"pages_images/menu/template_menu_4.png\",\n background_color: \"transparent\",\n image_width: 100,\n },\n is_used_template_image: false,\n header_template_image_key: businessPageHeaderImages[5],\n },\n pdf: {\n direct_link: false,\n pdf_key: \"pages/test-pdf.pdf\",\n preview_image: {\n image_key: \"pages_images/pdf/v5/background-img.jpg\",\n background_color: \"transparent\",\n image_width: 100,\n },\n },\n basic: {\n company: \"Guide to cooking macaroons\",\n title: \"From Marie Gilbert\",\n text:\n \"In this guide, you'll find step-by-step instructions for making dough and fillings, as well as recommendations for choosing ingredients and preparing tools. In addition, the guide also contains useful tips and tricks to help you achieve perfect results.\\n\" +\n \"\\n\" +\n 'The PDF file \"Guide to cooking macaroons\" can be useful for both novice cooks and experienced professionals who want to improve their skills in cooking macaroons.',\n website: \"google.com\",\n button_text: \"View PDF\",\n },\n loader: contentLoader,\n },\n {\n id: \"6\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n text_color: \"#F69462\",\n button_color: \"#9B64FE\",\n },\n pdf: {\n direct_link: false,\n pdf_key: \"pages/test-pdf.pdf\",\n preview_image: {\n image_key: \"pages_images/pdf/v6/background-img.jpg\",\n background_color: \"transparent\",\n image_width: 100,\n },\n },\n basic: {\n company: \"Step-by-step drawings\",\n title: \"Detailed instructions for pictures\",\n text: 'Can\\'t draw? Not a problem! With our step-by-step guide, you or your child will be able to learn to draw in one evening, you will only need a piece of paper, a pencil and our \"Step-by-step drawings\"',\n website: \"google.com\",\n button_text: \"View PDF\",\n },\n loader: contentLoader,\n },\n ],\n },\n images: {\n template: \"1\",\n templates: [\n {\n id: \"1\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n primary_color: \"#3C261F\",\n },\n basic: {\n title: \"New collection of knitted clothes\",\n text: \"Hurry up and pre-order the sweaters from our new collection\",\n website: \"google.com\",\n },\n button: {\n button_text: \"Shop Now\",\n button_url: \"\",\n has_button: true,\n has_button_file: false,\n button_file_key: null,\n },\n images: {\n shown_in_grid: true,\n },\n images_links: [\n {\n id: 1,\n caption: \"caption1\",\n key: \"pages_images/images/v1/image1.jpg\",\n },\n {\n id: 2,\n caption: \"caption2\",\n key: \"pages_images/images/v1/image2.jpg\",\n },\n {\n id: 3,\n caption: \"caption3\",\n key: \"pages_images/images/v1/image3.jpg\",\n },\n {\n id: 4,\n caption: \"caption4\",\n key: \"pages_images/images/v1/image4.jpg\",\n },\n {\n id: 5,\n caption: \"caption5\",\n key: \"pages_images/images/v1/image5.jpg\",\n },\n {\n id: 6,\n caption: \"caption6\",\n key: \"pages_images/images/v1/image6.jpg\",\n },\n ],\n loader: contentLoader,\n },\n {\n id: \"2\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n primary_color: \"#056068\",\n },\n basic: {\n title: \"Ceramic Artisan\",\n text: \"Welcome to Ceramic Artisan — a handmade shop where every piece of ceramic tableware is unique and lovingly created. Our craftsmen use only high-quality materials to create functional and beautiful tableware for your home.\",\n website: \"google.com\",\n },\n button: {\n button_text: \"Shop Now\",\n button_url: \"\",\n has_button: true,\n has_button_file: false,\n button_file_key: null,\n },\n images: {\n shown_in_grid: true,\n },\n images_links: [\n {\n id: 1,\n caption: \"caption1\",\n key: \"pages_images/images/v2/image1.jpg\",\n },\n {\n id: 2,\n caption: \"caption2\",\n key: \"pages_images/images/v2/image2.jpg\",\n },\n {\n id: 3,\n caption: \"caption3\",\n key: \"pages_images/images/v2/image3.jpg\",\n },\n {\n id: 4,\n caption: \"caption4\",\n key: \"pages_images/images/v2/image4.jpg\",\n },\n {\n id: 5,\n caption: \"caption5\",\n key: \"pages_images/images/v2/image5.jpg\",\n },\n {\n id: 6,\n caption: \"caption6\",\n key: \"pages_images/images/v2/image6.jpg\",\n },\n ],\n loader: contentLoader,\n },\n {\n id: \"3\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n primary_color: \"#000000\",\n button_color: \"#ffffff\",\n },\n basic: {\n title: \"inkline tattoo studio\",\n text: \"Introducing our catalog of free thumbnails, browse and choose your\",\n website: \"google.com\",\n },\n button: {\n button_text: \"I want a tattoo\",\n button_url: \"\",\n has_button: true,\n has_button_file: false,\n button_file_key: null,\n },\n images: {\n shown_in_grid: false,\n },\n images_links: [\n {\n id: 1,\n caption: \"caption1\",\n key: \"pages_images/images/v3/image1.png\",\n },\n {\n id: 2,\n caption: \"caption2\",\n key: \"pages_images/images/v3/image2.png\",\n },\n {\n id: 3,\n caption: \"caption3\",\n key: \"pages_images/images/v3/image3.png\",\n },\n ],\n loader: contentLoader,\n },\n {\n id: \"4\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n button_color: \"#72F6E9\",\n },\n basic: {\n title: \"3D Mastermind School\",\n text: \"Do you want to learn the same way?\",\n website: \"google.com\",\n },\n button: {\n button_text: \"Get started\",\n button_url: \"\",\n has_button: true,\n has_button_file: false,\n button_file_key: null,\n },\n images: {\n shown_in_grid: true,\n },\n images_links: [\n {\n id: 1,\n caption: \"caption1\",\n key: \"pages_images/images/v4/image1.png\",\n },\n {\n id: 2,\n caption: \"caption2\",\n key: \"pages_images/images/v4/image2.png\",\n },\n {\n id: 3,\n caption: \"caption3\",\n key: \"pages_images/images/v4/image3.png\",\n },\n {\n id: 4,\n caption: \"caption4\",\n key: \"pages_images/images/v4/image4.png\",\n },\n {\n id: 5,\n caption: \"caption5\",\n key: \"pages_images/images/v4/image5.png\",\n },\n {\n id: 6,\n caption: \"caption6\",\n key: \"pages_images/images/v4/image6.png\",\n },\n {\n id: 7,\n caption: \"caption7\",\n key: \"pages_images/images/v4/image7.png\",\n },\n {\n id: 8,\n caption: \"caption8\",\n key: \"pages_images/images/v4/image8.png\",\n },\n {\n id: 9,\n caption: \"caption9\",\n key: \"pages_images/images/v4/image9.png\",\n },\n ],\n loader: contentLoader,\n },\n {\n id: \"5\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n primary_color: \"#F7EFD6\",\n button_color: \"#463A3B\",\n },\n basic: {\n title: \"Playtopia\",\n text: '\"Playtopia\" is a unique toy store that offers a wide selection of educational games and toys for children of all ages. Here you will find everything from classic board games to the latest innovations in the world of toys. The Playtopia store is designed to allow children to enjoy the game and develop their skills and imagination.',\n website: \"google.com\",\n },\n button: {\n button_text: \"Shop Now\",\n button_url: \"\",\n has_button: true,\n has_button_file: false,\n button_file_key: null,\n },\n images: {\n shown_in_grid: false,\n },\n images_links: [\n {\n id: 1,\n caption: \"caption1\",\n key: \"pages_images/images/v5/image1.png\",\n },\n {\n id: 2,\n caption: \"caption2\",\n key: \"pages_images/images/v5/image2.png\",\n },\n ],\n loader: contentLoader,\n },\n {\n id: \"6\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n primary_color: \"#E2EBDE\",\n button_color: \"#335029\",\n },\n basic: {\n title: \"green haven.\",\n text: '\"green haven\" is a houseplant store where you will find a large selection of green plants that will help you transform your home into a beautiful corner of nature. Here you will find many different types of plants - from miniature shrubs to large ficus and palm trees',\n website: \"google.com\",\n },\n button: {\n button_text: \"go to the store\",\n button_url: \"\",\n has_button: true,\n has_button_file: false,\n button_file_key: null,\n },\n images: {\n shown_in_grid: false,\n },\n images_links: [\n {\n id: 1,\n caption: \"caption1\",\n key: \"pages_images/images/v6/image1.png\",\n },\n {\n id: 2,\n caption: \"caption2\",\n key: \"pages_images/images/v6/image2.png\",\n },\n {\n id: 3,\n caption: \"caption3\",\n key: \"pages_images/images/v6/image3.png\",\n },\n ],\n loader: contentLoader,\n },\n ],\n },\n video: {\n template: \"1\",\n templates: [\n {\n id: \"1\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n primary_color: \"#772400\",\n button_color: \"#FFDC27\",\n },\n basic: {\n company: \"Juicy burgers\",\n title: \"The aesthetics of our burgers\",\n text: \"Enjoy the process of making juicy burgers and their aesthetics\",\n },\n button: {\n button_text: \"Order Now\",\n button_url: \"\",\n has_button: true,\n has_button_file: false,\n button_file_key: null,\n },\n video: {\n highlight_the_first_video: false,\n videos: [\n // {\n // video_id: '',\n // description: '',\n // preview_url: '',\n // id: shortid.generate()\n // }\n {\n video_id: \"dA0VGEbbw4g\",\n description: \"Food Film | Cinematic Burger\",\n preview_url: \"https://i.ytimg.com/vi/dA0VGEbbw4g/mqdefault.jpg\",\n id: 1,\n },\n {\n video_id: \"V5w1OGknhlc\",\n description: \"The Heavy Hitting Burger - Promo Video\",\n preview_url: \"https://i.ytimg.com/vi/V5w1OGknhlc/mqdefault.jpg\",\n id: 2,\n },\n ],\n },\n soc_media_channels: [\n { type: \"instagram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"telegram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"youtube\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"facebook\", value: \"\", text: \"\", id: shortid.generate() },\n ],\n loader: contentLoader,\n advanced: {\n has_share_button: true,\n },\n },\n {\n id: \"2\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n button_color: \"#000000\",\n },\n basic: {\n company: \"Juicy burgers\",\n title: \"The aesthetics of our burgers\",\n text: \"Enjoy the process of making juicy burgers and their aesthetics\",\n },\n button: {\n button_text: \"Order Now\",\n button_url: \"\",\n has_button: true,\n has_button_file: false,\n button_file_key: null,\n },\n video: {\n highlight_the_first_video: false,\n videos: [\n {\n video_id: \"dA0VGEbbw4g\",\n description: \"Food Film | Cinematic Burger\",\n preview_url: \"https://i.ytimg.com/vi/dA0VGEbbw4g/mqdefault.jpg\",\n id: 1,\n },\n {\n video_id: \"V5w1OGknhlc\",\n description: \"The Heavy Hitting Burger - Promo Video\",\n preview_url: \"https://i.ytimg.com/vi/V5w1OGknhlc/mqdefault.jpg\",\n id: 2,\n },\n ],\n },\n soc_media_channels: [\n { type: \"instagram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"telegram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"youtube\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"facebook\", value: \"\", text: \"\", id: shortid.generate() },\n ],\n loader: contentLoader,\n advanced: {\n has_share_button: true,\n },\n },\n {\n id: \"3\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n primary_color: \"#000000\",\n },\n basic: {\n company: \"\",\n title: \"White Tiger\",\n text: \"The video covers topics such as the origin of this subspecies, their behavior in the wild, the modern threats that white tigers face, and measures to preserve their numbers in nature.\",\n },\n button: {\n button_text: \"Order Now\",\n button_url: \"\",\n has_button: true,\n has_button_file: false,\n button_file_key: null,\n },\n video: {\n highlight_the_first_video: true,\n videos: [\n {\n video_id: \"dOMAT8fOr0Q\",\n description: \"Tigers 101 | Nat Geo Wild\",\n preview_url: \"https://i.ytimg.com/vi/dOMAT8fOr0Q/mqdefault.jpg\",\n id: 1,\n },\n ],\n },\n soc_media_channels: [\n { type: \"instagram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"telegram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"youtube\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"facebook\", value: \"\", text: \"\", id: shortid.generate() },\n ],\n loader: contentLoader,\n advanced: {\n has_share_button: true,\n },\n },\n {\n id: \"4\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n primary_color: \"#000000\",\n button_color: \"#EDC7FD\",\n text_color: \"#FFF301\",\n },\n basic: {\n company: \"Meri tattoo\",\n title: \"The clearest lines from our masters\",\n text: \"Welcome to Meri Tattoo - your best choice for high-quality and reliable tattoos. In our video, we will show you our tattoo parlor and tell you about our services, our talented masters, as well as show examples of our works.\",\n },\n button: {\n button_text: \"I want a tattoo\",\n button_url: \"\",\n has_button: true,\n has_button_file: false,\n button_file_key: null,\n },\n video: {\n highlight_the_first_video: true,\n videos: [\n {\n video_id: \"oyn3rTo_gVs\",\n description: \"Aesthetic tattoos | Small aesthetic tattoos\",\n preview_url: \"https://i.ytimg.com/vi/oyn3rTo_gVs/mqdefault.jpg\",\n id: 1,\n },\n ],\n },\n soc_media_channels: [\n { type: \"instagram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"telegram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"youtube\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"facebook\", value: \"\", text: \"\", id: shortid.generate() },\n ],\n loader: contentLoader,\n advanced: {\n has_share_button: true,\n },\n },\n {\n id: \"5\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n button_color: \"#DE544C\",\n },\n basic: {\n company: \"Danse festival\",\n title: \"The result of the dance festival\",\n text: \"This is a fascinating report from an event where dance groups from different parts of the world gathered to showcase their talents and skills. The video shows the unique atmosphere of the festival, bright costumes, energetic movements and unforgettable performances\",\n },\n button: {\n button_text: \"View results table\",\n button_url: \"\",\n has_button: true,\n has_button_file: false,\n button_file_key: null,\n },\n video: {\n highlight_the_first_video: true,\n videos: [\n {\n video_id: \"HjBXLCjvE0Q\",\n description:\n \"THE ROYAL FAMILY - Nationals 2018 (Guest Performance)\",\n preview_url: \"https://i.ytimg.com/vi/HjBXLCjvE0Q/mqdefault.jpg\",\n id: 1,\n },\n ],\n },\n soc_media_channels: [\n { type: \"instagram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"telegram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"youtube\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"facebook\", value: \"\", text: \"\", id: shortid.generate() },\n ],\n loader: contentLoader,\n advanced: {\n has_share_button: true,\n },\n },\n {\n id: \"6\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n button_color: \"#9B64FE\",\n },\n basic: {\n company: \"Children's show\",\n title:\n \"We invite you to a children's master class on making figurines from balloons\",\n text: \"This is a fascinating report from an event where dance groups from different parts of the world gathered to showcase their talents and skills. The video shows the unique atmosphere of the festival, bright costumes, energetic movements and unforgettable performances\",\n },\n button: {\n button_text: \"Get tickets\",\n button_url: \"\",\n has_button: true,\n has_button_file: false,\n button_file_key: null,\n },\n video: {\n highlight_the_first_video: false,\n videos: [\n {\n video_id: \"dmDTQe0h7Sk\",\n description: \"How to Make a Balloon Flower\",\n preview_url: \"https://i.ytimg.com/vi/dmDTQe0h7Sk/mqdefault.jpg\",\n id: 1,\n },\n ],\n },\n soc_media_channels: [\n { type: \"instagram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"telegram\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"youtube\", value: \"\", text: \"\", id: shortid.generate() },\n { type: \"facebook\", value: \"\", text: \"\", id: shortid.generate() },\n ],\n loader: contentLoader,\n advanced: {\n has_share_button: true,\n },\n },\n ],\n },\n menu: {\n template: \"1\",\n templates: [\n {\n id: \"1\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n header_image: {\n image_key: \"pages_images/menu/menu1.jpg\",\n },\n primary_color: \"#BB89FC\",\n is_used_template_image: false,\n header_template_image_key: menuHeaderImages[0],\n },\n basic: {\n title: \"Maria's Vegetarian Restaurant\",\n text: \"Good food and caring for animals\",\n description: \"Only the most delicious vegan food\",\n website: \"google.com\",\n },\n categories_options: {\n id_color_category: 1,\n is_color_all_categories: false,\n // color_all_categories: \"#000000\",\n },\n categories: [\n {\n id: 1,\n visible: true,\n title: \"Breakfast\",\n all_day: false,\n start_time: \"07:00\",\n end_time: \"11:00\",\n all_week: true,\n week_days: [],\n pdf_key: null,\n },\n {\n id: 2,\n visible: true,\n title: \"Lunch\",\n all_day: false,\n start_time: \"12:00\",\n end_time: \"17:00\",\n all_week: true,\n week_days: [],\n pdf_key: null,\n },\n {\n id: 3,\n visible: true,\n title: \"Dinner\",\n all_day: false,\n start_time: \"18:00\",\n end_time: \"23:00\",\n all_week: true,\n week_days: [],\n pdf_key: null,\n },\n ],\n soc_media_channels: [],\n loader: contentLoader,\n },\n {\n id: \"2\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n header_image: {\n image_key: \"pages_images/coupons/coupons3.jpg\",\n },\n primary_color: \"#BB89FC\",\n is_used_template_image: true,\n header_template_image_key: menuHeaderImages[0],\n },\n basic: {\n title: \"Maria's Vegetarian Restaurant\",\n text: \"Good food and caring for animals\",\n description: \"Only the most delicious vegan food\",\n website: \"google.com\",\n },\n categories_options: {\n id_color_category: 1,\n is_color_all_categories: false,\n // color_all_categories: \"#000000\",\n },\n categories: [\n {\n id: 1,\n visible: true,\n title: \"Breakfast\",\n all_day: false,\n start_time: \"07:00\",\n end_time: \"11:00\",\n all_week: true,\n week_days: [],\n pdf_key: null,\n },\n {\n id: 2,\n visible: true,\n title: \"Lunch\",\n all_day: false,\n start_time: \"12:00\",\n end_time: \"17:00\",\n all_week: true,\n week_days: [],\n pdf_key: null,\n },\n {\n id: 3,\n visible: true,\n title: \"Dinner\",\n all_day: false,\n start_time: \"18:00\",\n end_time: \"23:00\",\n all_week: true,\n week_days: [],\n pdf_key: null,\n },\n ],\n soc_media_channels: [],\n loader: contentLoader,\n },\n {\n id: \"3\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n template_basic_color: \"#00AE11\",\n primary_color: \"#BB89FC\",\n background_color: \"#ffffff\",\n },\n basic: {\n title: \"Maria's Vegetarian Restaurant\",\n text: \"Good food and caring for animals\",\n description:\n \"Welcome to Maria's restaurant - the perfect place for vegetarians and everyone who loves delicious and healthy food! Our kitchen offers a wide range of dishes, exclusively from natural ingredients, without the use of meat and fish. Try our fresh salads, delicious pizzas and pasta, our soups and side dishes will not leave you indifferent either. Enjoy your taste and health at Maria's Vegetarian Restaurant!\",\n website: \"google.com\",\n },\n categories_options: {\n id_color_category: 1,\n is_color_all_categories: false,\n color_all_categories: \"#000000\",\n },\n categories: [\n {\n id: 1,\n visible: true,\n title: \"Breakfast\",\n all_day: false,\n start_time: \"07:00\",\n end_time: \"11:00\",\n all_week: true,\n week_days: [],\n pdf_key: null,\n background_color: \"#ffffff\",\n is_all_background_color: false,\n },\n {\n id: 2,\n visible: true,\n title: \"Lunch\",\n all_day: false,\n start_time: \"12:00\",\n end_time: \"17:00\",\n all_week: true,\n week_days: [],\n pdf_key: null,\n background_color: \"#00AE11\",\n is_all_background_color: false,\n },\n {\n id: 3,\n visible: true,\n title: \"Dinner\",\n all_day: false,\n start_time: \"18:00\",\n end_time: \"23:00\",\n all_week: true,\n week_days: [],\n pdf_key: null,\n background_color: \"#ffffff\",\n is_all_background_color: false,\n },\n ],\n soc_media_channels: [],\n loader: contentLoader,\n },\n {\n id: \"4\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n button_color: \"#FF9A02\",\n header_image: {\n image_key: \"pages_images/menu/template_menu_4.png\",\n background_color: \"#ffffff\",\n image_width: 100,\n },\n primary_color: \"#BB89FC\",\n is_used_template_image: false,\n header_template_image_key: menuHeaderImages[0],\n },\n basic: {\n title: \"Sweet House\",\n text: \"The best goodies in your city\",\n description:\n \"Welcome to sweet house confectionery! We are ready to please you with the most delicious sweets that have been created with love and care.\\n\" +\n \"\\n\" +\n \"Here you will find a large selection of cakes, pastries, biscuits and other confectionery, each of which is freshly prepared and original to taste. We use only the finest ingredients to provide our customers with high quality products.\",\n website: \"google.com\",\n },\n categories_options: {\n id_color_category: 1,\n is_color_all_categories: false,\n color_all_categories: \"#000000\",\n },\n categories: [\n {\n id: 1,\n visible: true,\n title: \"Breakfast\",\n all_day: false,\n start_time: \"07:00\",\n end_time: \"11:00\",\n all_week: true,\n week_days: [],\n pdf_key: null,\n background_color: \"#ffffff\",\n is_all_background_color: false,\n },\n {\n id: 2,\n visible: true,\n title: \"Lunch\",\n all_day: false,\n start_time: \"12:00\",\n end_time: \"17:00\",\n all_week: true,\n week_days: [],\n pdf_key: null,\n background_color: \"#ffffff\",\n is_all_background_color: false,\n },\n {\n id: 3,\n visible: true,\n title: \"Dinner\",\n all_day: false,\n start_time: \"18:00\",\n end_time: \"23:00\",\n all_week: true,\n week_days: [],\n pdf_key: null,\n background_color: \"#ffffff\",\n is_all_background_color: false,\n },\n ],\n soc_media_channels: [],\n loader: contentLoader,\n },\n {\n id: \"5\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n header_image: {\n image_key: \"pages_images/menu/template_menu_5.png\",\n background_color: \"#000000\",\n image_width: 100,\n },\n primary_color: \"#BB89FC\",\n },\n basic: {\n title: \"Sea breeze\",\n text: \"Seafood restaurant on the waterfront\",\n description:\n \"Welcome to sea breeze restaurant – an oasis of fresh seafood in the heart of the city!\\n\" +\n \"\\n\" +\n \"Our menu is rich in a variety of dishes prepared in accordance with the highest quality standards and care for every detail. Enjoy an exquisite range of fresh seafood such as oysters, mussels, shrimps, langoustines, as well as a variety of dishes that emphasize their unique taste.\",\n website: \"google.com\",\n },\n categories_options: {\n id_color_category: 1,\n is_color_all_categories: false,\n color_all_categories: \"#000000\",\n },\n categories: [\n {\n id: 1,\n visible: true,\n title: \"Breakfast\",\n all_day: false,\n start_time: \"07:00\",\n end_time: \"11:00\",\n all_week: true,\n week_days: [],\n pdf_key: null,\n background_color: \"#dddddd\",\n is_all_background_color: false,\n },\n {\n id: 2,\n visible: true,\n title: \"Lunch\",\n all_day: false,\n start_time: \"12:00\",\n end_time: \"17:00\",\n all_week: true,\n week_days: [],\n pdf_key: null,\n background_color: \"#dddddd\",\n is_all_background_color: false,\n },\n {\n id: 3,\n visible: true,\n title: \"Dinner\",\n all_day: false,\n start_time: \"18:00\",\n end_time: \"23:00\",\n all_week: true,\n week_days: [],\n pdf_key: null,\n background_color: \"#dddddd\",\n is_all_background_color: false,\n },\n ],\n soc_media_channels: [],\n loader: contentLoader,\n },\n {\n id: \"6\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n template_basic_color: \"#57527E\",\n primary_color: \"#E58923\",\n },\n basic: {\n title: \"Sea breeze\",\n text: \"Seafood restaurant on the waterfront\",\n description:\n \"Welcome to sea breeze restaurant – an oasis of fresh seafood in the heart of the city!\\n\" +\n \"\\n\" +\n \"Our menu is rich in a variety of dishes prepared in accordance with the highest quality standards and care for every detail. Enjoy an exquisite range of fresh seafood such as oysters, mussels, shrimps, langoustines, as well as a variety of dishes that emphasize their unique taste.\",\n website: \"google.com\",\n },\n categories_options: {\n id_color_category: 1,\n is_color_all_categories: false,\n // color_all_categories: \"#000000\",\n },\n categories: [\n {\n id: 1,\n visible: true,\n title: \"Breakfast\",\n all_day: false,\n start_time: \"07:00\",\n end_time: \"11:00\",\n all_week: true,\n week_days: [],\n pdf_key: null,\n },\n {\n id: 2,\n visible: true,\n title: \"Lunch\",\n all_day: false,\n start_time: \"12:00\",\n end_time: \"17:00\",\n all_week: true,\n week_days: [],\n pdf_key: null,\n },\n {\n id: 3,\n visible: true,\n title: \"Dinner\",\n all_day: false,\n start_time: \"18:00\",\n end_time: \"23:00\",\n all_week: true,\n week_days: [],\n pdf_key: null,\n },\n ],\n soc_media_channels: [],\n loader: contentLoader,\n },\n ],\n },\n app: {\n template: \"1\",\n templates: [\n {\n id: \"1\",\n logo_image: {\n image_key: \"project_files/generator/default_company_logo.jpeg\",\n visible_logo: true,\n },\n customizations: {\n primary_color: \"#BB89FC\",\n },\n basic: {\n title: \"\",\n text: \"\",\n website: \"\",\n },\n button: {\n button_text: context.$t(\"qr_manage:app:button_name1\"),\n button_url: \"\",\n has_button: true,\n has_button_file: false,\n button_file_key: null,\n },\n app: {\n name: \"\",\n developer: \"\",\n app_image: {\n image_key: \"pages_images/def_app.png\",\n },\n },\n app_links: {\n app_store: { url: \"\" },\n google_play: { url: \"\" },\n },\n loader: contentLoader,\n },\n ],\n },\n instagram: { username: \"\" },\n});\n\nexport const proTemplates = () => ({\n soc_media: [\"2\", \"3\", \"4\", \"5\", \"6\"],\n coupons: [\"2\", \"3\", \"4\", \"5\", \"6\"],\n feedback: [\"2\", \"3\", \"4\", \"5\", \"6\"],\n rating: [\"2\", \"3\", \"4\", \"5\", \"6\"],\n event: [\"2\", \"3\", \"4\", \"5\", \"6\"],\n vcard_plus: [\"2\", \"3\", \"4\", \"5\", \"6\", \"7\", \"8\"],\n business_page: [\"2\", \"3\", \"4\", \"5\", \"6\"],\n pdf: [\"2\", \"3\", \"4\", \"5\", \"6\"],\n images: [\"2\", \"3\", \"4\", \"5\", \"6\"],\n video: [\"2\", \"3\", \"4\", \"5\", \"6\"],\n menu: [\"2\", \"3\", \"4\", \"5\", \"6\"],\n app: [],\n});\n","import SpriteSymbol from \"../../../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-website--sprite\",\n \"use\": \"icon-website--sprite-usage\",\n \"viewBox\": \"0 0 25 25\",\n \"content\": \"\\n\\n\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-envelope--sprite\",\n \"use\": \"icon-envelope--sprite-usage\",\n \"viewBox\": \"0 0 25 25\",\n \"content\": \"\\n\\n\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-vcard--sprite-sprite\",\n \"use\": \"icon-vcard--sprite-sprite-usage\",\n \"viewBox\": \"0 0 25 25\",\n \"content\": \"\\n\\n\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-text--sprite\",\n \"use\": \"icon-text--sprite-usage\",\n \"viewBox\": \"0 0 25 25\",\n \"content\": \"\\n\\n\\n\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-chat-with-dots--sprite\",\n \"use\": \"icon-chat-with-dots--sprite-usage\",\n \"viewBox\": \"0 0 25 25\",\n \"content\": \"\\n\\n\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-social-media--sprite\",\n \"use\": \"icon-social-media--sprite-usage\",\n \"viewBox\": \"0 0 25 26\",\n \"content\": \"\\n\\n\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-coupons--sprite\",\n \"use\": \"icon-coupons--sprite-usage\",\n \"viewBox\": \"0 0 25 26\",\n \"content\": \"\\n\\n\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-business-page--sprite\",\n \"use\": \"icon-business-page--sprite-usage\",\n \"viewBox\": \"0 0 25 26\",\n \"content\": \"\\n\\n\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-feedback--sprite\",\n \"use\": \"icon-feedback--sprite-usage\",\n \"viewBox\": \"0 0 25 26\",\n \"content\": \"\\n\\n\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-rating--sprite\",\n \"use\": \"icon-rating--sprite-usage\",\n \"viewBox\": \"0 0 25 26\",\n \"content\": \"\\n\\n\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-video--sprite\",\n \"use\": \"icon-video--sprite-usage\",\n \"viewBox\": \"0 0 25 26\",\n \"content\": \"\\n\\n\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-event--sprite\",\n \"use\": \"icon-event--sprite-usage\",\n \"viewBox\": \"0 0 25 26\",\n \"content\": \"\\n\\n\\n\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-pdf--sprite\",\n \"use\": \"icon-pdf--sprite-usage\",\n \"viewBox\": \"0 0 25 25\",\n \"content\": \"\\n\\n\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-app--sprite\",\n \"use\": \"icon-app--sprite-usage\",\n \"viewBox\": \"0 0 25 25\",\n \"content\": \"\\n\\n\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-images--sprite\",\n \"use\": \"icon-images--sprite-usage\",\n \"viewBox\": \"0 0 25 25\",\n \"content\": \"\\n\\n\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-menu--sprite\",\n \"use\": \"icon-menu--sprite-usage\",\n \"viewBox\": \"0 0 25 25\",\n \"content\": \"\\n\\n\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","import SpriteSymbol from \"../../../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-instagram--sprite\",\n \"use\": \"icon-instagram--sprite-usage\",\n \"viewBox\": \"0 0 25 26\",\n \"content\": \"\\n\\n\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","// todo create default links pages for preview\n// static\nimport L2qrWebsiteIcon from \"@/assets/img/qr-types/website.svg?sprite\";\nimport L2qrEnvelopeIcon from \"@/assets/img/qr-types/envelope.svg?sprite\";\nimport L2qrVcardIcon from \"@/assets/img/qr-types/vcard.svg?sprite?sprite\";\nimport L2qrTextIcon from \"@/assets/img/qr-types/text.svg?sprite\";\nimport L2qrChatWithDotsIcon from \"@/assets/img/qr-types/chat-with-dots.svg?sprite\";\nimport L2qrWifiIcon from \"@/assets/img/qr-types/wi-fi.svg?sprite\";\n\n// dynamic\nimport L2qrSocMediaIcon from \"@/assets/img/qr-types/social-media.svg?sprite\";\nimport L2qrCouponsIcon from \"@/assets/img/qr-types/coupons.svg?sprite\";\nimport L2qrBusinessPageIcon from \"@/assets/img/qr-types/business-page.svg?sprite\";\nimport L2qrFeedbackIcon from \"@/assets/img/qr-types/feedback.svg?sprite\";\nimport L2qrRatingIcon from \"@/assets/img/qr-types/rating.svg?sprite\";\nimport L2qrVideoIcon from \"@/assets/img/qr-types/video.svg?sprite\";\nimport L2qrEventIcon from \"@/assets/img/qr-types/event.svg?sprite\";\nimport L2qrPdfIcon from \"@/assets/img/qr-types/pdf.svg?sprite\";\n// import L2qrFacebookIcon from \"@/assets/img/qr-types/facebook.svg?sprite\";\nimport L2qrAppIcon from \"@/assets/img/qr-types/app.svg?sprite\";\n// import L2qrMp3Icon from '@/assets/img/qr-types/mp3.svg?sprite'\nimport L2qrImagesIcon from \"@/assets/img/qr-types/images.svg?sprite\";\nimport L2qrMenuIcon from \"@/assets/img/qr-types/menu.svg?sprite\";\nimport L2qrInstagramIcon from \"@/assets/img/qr-types/instagram.svg?sprite\";\nimport { getFileUrl } from \"@/utils/files\";\n\nexport const staticQrCodes = [\n {\n name: \"qr_manage:static_qr_formats:url:title\",\n data_format: \"URL\",\n type: \"static\",\n description: \"qr_manage:static_qr_formats:url:description\",\n spriteIcon: L2qrWebsiteIcon,\n configsComponent: \"qr-account-qr-configs-static-url\",\n previewImage: getFileUrl(\"pages_previews/stat_website.png\"),\n },\n {\n name: \"qr_manage:static_qr_formats:vcard:title\",\n data_format: \"vcard\",\n type: \"static\",\n description: \"qr_manage:static_qr_formats:vcard:description\",\n spriteIcon: L2qrVcardIcon,\n configsComponent: \"qr-account-qr-configs-static-vcard\",\n previewImage: getFileUrl(\"pages_previews/stat_vcard.png\"),\n },\n {\n name: \"qr_manage:static_qr_formats:email:title\",\n data_format: \"email\",\n type: \"static\",\n description: \"qr_manage:static_qr_formats:email:description\",\n spriteIcon: L2qrEnvelopeIcon,\n configsComponent: \"qr-account-qr-configs-static-email\",\n previewImage: getFileUrl(\"pages_previews/stat_email.png\"),\n },\n {\n name: \"qr_manage:static_qr_formats:sms:title\",\n data_format: \"sms\",\n type: \"static\",\n description: \"qr_manage:static_qr_formats:sms:description\",\n spriteIcon: L2qrChatWithDotsIcon,\n configsComponent: \"qr-account-qr-configs-static-sms\",\n previewImage: getFileUrl(\"pages_previews/stat_sms.png\"),\n },\n\n {\n name: \"qr_manage:static_qr_formats:text:title\",\n data_format: \"text\",\n type: \"static\",\n description: \"qr_manage:static_qr_formats:text:description\",\n spriteIcon: L2qrTextIcon,\n configsComponent: \"qr-account-qr-configs-static-text\",\n previewImage: getFileUrl(\"pages_previews/stat_text.png\"),\n },\n {\n name: \"qr_manage:static_qr_formats:wifi:title\",\n data_format: \"wifi\",\n type: \"static\",\n description: \"qr_manage:static_qr_formats:wifi:description\",\n spriteIcon: L2qrWifiIcon,\n configsComponent: \"qr-account-qr-configs-static-wifi\",\n previewImage: getFileUrl(\"pages_previews/stat_wifi.png\"),\n },\n];\n\nexport const creationQrCodeSteps = [\n \"qr-type\",\n \"page-template\",\n \"page-configs\",\n // \"customize-qr\"\n];\n\nexport const updateQrCodeWalletPassSteps = [\n \"page-configs\",\n // \"customize-qr\"\n];\n\nexport const dynamicQrCodeWebsite = {\n name: \"qr_manage:dynamic_qr_formats:url:title\",\n data_format: \"URL\",\n type: \"dynamic\",\n description: \"qr_manage:dynamic_qr_formats:url:description\",\n spriteIcon: L2qrWebsiteIcon,\n configsComponent: \"qr-account-qr-configs-dynamic-url\",\n previewImage: getFileUrl(\"pages_previews/dyn_website.png\"),\n};\n\nexport const dynamicQrCodes = [\n dynamicQrCodeWebsite,\n {\n name: \"qr_manage:dynamic_qr_formats:menu:title\",\n data_format: \"menu\",\n type: \"dynamic\",\n description: \"qr_manage:dynamic_qr_formats:menu:description\",\n spriteIcon: L2qrMenuIcon,\n configsComponent: \"qr-account-qr-configs-dynamic-menu\",\n previewImage: getFileUrl(\"pages_previews/dyn_menu.png\"),\n },\n {\n // name: 'vCard Plus',\n name: \"qr_manage:dynamic_qr_formats:vcard_plus:title\",\n data_format: \"vcard_plus\",\n type: \"dynamic\",\n description: \"qr_manage:dynamic_qr_formats:vcard_plus:description\",\n spriteIcon: L2qrVcardIcon,\n configsComponent: \"qr-account-qr-configs-dynamic-vcard-plus\",\n previewImage: getFileUrl(\"pages_previews/dyn_vcard_plus.png\"),\n },\n {\n name: \"qr_manage:dynamic_qr_formats:business_page:title\",\n data_format: \"business_page\",\n type: \"dynamic\",\n description: \"qr_manage:dynamic_qr_formats:business_page:description\",\n spriteIcon: L2qrBusinessPageIcon,\n configsComponent: \"qr-account-qr-configs-dynamic-business-page\",\n previewImage: getFileUrl(\"pages_previews/dyn_business_page.png\"),\n },\n {\n name: \"qr_manage:dynamic_qr_formats:soc_media:title\",\n data_format: \"soc_media\",\n type: \"dynamic\",\n description: \"qr_manage:dynamic_qr_formats:soc_media:description\",\n spriteIcon: L2qrSocMediaIcon,\n configsComponent: \"qr-account-qr-configs-dynamic-social-medial\",\n previewImage: getFileUrl(\"pages_previews/dyn_soc_media.png\"),\n },\n {\n name: \"qr_manage:dynamic_qr_formats:coupon:title\",\n data_format: \"coupons\",\n type: \"dynamic\",\n description: \"qr_manage:dynamic_qr_formats:coupon:description\",\n spriteIcon: L2qrCouponsIcon,\n configsComponent: \"qr-account-qr-configs-dynamic-coupons\",\n previewImage: getFileUrl(\"pages_previews/dyn_coupons.png\"),\n },\n {\n name: \"qr_manage:dynamic_qr_formats:feedback:title\",\n data_format: \"feedback\",\n type: \"dynamic\",\n description: \"qr_manage:dynamic_qr_formats:feedback:description\",\n spriteIcon: L2qrFeedbackIcon,\n configsComponent: \"qr-account-qr-configs-dynamic-feedback\",\n previewImage: getFileUrl(\"pages_previews/dyn_feedback.png\"),\n },\n {\n name: \"qr_manage:dynamic_qr_formats:rating:title\",\n data_format: \"rating\",\n type: \"dynamic\",\n description: \"qr_manage:dynamic_qr_formats:rating:description\",\n spriteIcon: L2qrRatingIcon,\n configsComponent: \"qr-account-qr-configs-dynamic-rating\",\n previewImage: getFileUrl(\"pages_previews/dyn_rating.png\"),\n },\n {\n name: \"qr_manage:dynamic_qr_formats:video:title\",\n data_format: \"video\",\n type: \"dynamic\",\n description: \"qr_manage:dynamic_qr_formats:video:description\",\n spriteIcon: L2qrVideoIcon,\n configsComponent: \"qr-account-qr-configs-dynamic-video\",\n previewImage: getFileUrl(\"pages_previews/dyn_video.png\"),\n },\n {\n name: \"qr_manage:dynamic_qr_formats:event:title\",\n data_format: \"event\",\n type: \"dynamic\",\n description: \"qr_manage:dynamic_qr_formats:event:description\",\n spriteIcon: L2qrEventIcon,\n configsComponent: \"qr-account-qr-configs-dynamic-event\",\n previewImage: getFileUrl(\"pages_previews/dyn_event.png\"),\n },\n {\n name: \"qr_manage:dynamic_qr_formats:pdf:title\",\n data_format: \"pdf\",\n type: \"dynamic\",\n description: \"qr_manage:dynamic_qr_formats:pdf:description\",\n spriteIcon: L2qrPdfIcon,\n configsComponent: \"qr-account-qr-configs-dynamic-pdf\",\n previewImage: getFileUrl(\"pages_previews/dyn_pdf.png\"),\n },\n // {\n // name: 'Facebook',\n // data_format: 'facebook',\n // type: 'dynamic',\n // description: 'Get more Likes for your page',\n // spriteIcon: L2qrFacebookIcon,\n // configsComponent: 'qr-account-qr-configs-dynamic-facebook',\n // previewImage: getFileUrl('pages_previews/dyn_facebook.png'),\n // },\n {\n name: \"qr_manage:dynamic_qr_formats:app:title\",\n data_format: \"app\",\n type: \"dynamic\",\n description: \"qr_manage:dynamic_qr_formats:app:description\",\n spriteIcon: L2qrAppIcon,\n configsComponent: \"qr-account-qr-configs-dynamic-app\",\n previewImage: getFileUrl(\"pages_previews/dyn_app.png\"),\n },\n // {\n // name: 'MP3',\n // data_format: 'mp3',\n // type: 'dynamic',\n // description: 'Play an audio file',\n // spriteIcon: L2qrMp3Icon,\n // configsComponent: 'qr-account-qr-configs-dynamic-mp3',\n // previewImage: getFileUrl('pages_previews/dyn_mp3.png'),\n // },\n {\n name: \"qr_manage:dynamic_qr_formats:images:title\",\n data_format: \"images\",\n type: \"dynamic\",\n description: \"qr_manage:dynamic_qr_formats:images:description\",\n spriteIcon: L2qrImagesIcon,\n configsComponent: \"qr-account-qr-configs-dynamic-images\",\n previewImage: getFileUrl(\"pages_previews/dyn_images.png\"),\n },\n {\n name: \"qr_manage:dynamic_qr_formats:instagram:title\",\n data_format: \"instagram\",\n type: \"dynamic\",\n description: \"qr_manage:dynamic_qr_formats:instagram:description\",\n spriteIcon: L2qrInstagramIcon,\n configsComponent: \"qr-account-qr-configs-dynamic-instagram\",\n previewImage: getFileUrl(\"pages_previews/dyn_instagram.png\"),\n },\n];\n\nexport const staticQrCodesComponents = {\n \"qr-account-qr-configs-static-url\": () =>\n import(\n /* webpackChunkName: \"Static Url\" */ \"@/components/account/qr/configs/static/Url\"\n ),\n \"qr-account-qr-configs-static-vcard\": () =>\n import(\n /* webpackChunkName: \"Static Vcard\" */ \"@/components/account/qr/configs/static/Vcard\"\n ),\n \"qr-account-qr-configs-static-email\": () =>\n import(\n /* webpackChunkName: \"Static Email\" */ \"@/components/account/qr/configs/static/Email\"\n ),\n \"qr-account-qr-configs-static-sms\": () =>\n import(\n /* webpackChunkName: \"Static Sms\" */ \"@/components/account/qr/configs/static/Sms\"\n ),\n \"qr-account-qr-configs-static-text\": () =>\n import(\n /* webpackChunkName: \"Static Text\" */ \"@/components/account/qr/configs/static/Text\"\n ),\n \"qr-account-qr-configs-static-wifi\": () =>\n import(\n /* webpackChunkName: \"Static Wifi\" */ \"@/components/account/qr/configs/static/Wifi\"\n ),\n};\nexport const dynamicQrCodesComponents = {\n \"qr-account-qr-configs-dynamic-url\": () =>\n import(\n /* webpackChunkName: \"Dynamic Url\" */ \"@/components/account/qr/configs/dynamic/Url\"\n ),\n \"qr-account-qr-configs-dynamic-menu\": () =>\n import(\n /* webpackChunkName: \"Dynamic Menu\" */ \"@/components/account/qr/configs/dynamic/Menu\"\n ),\n \"qr-account-qr-configs-dynamic-vcard-plus\": () =>\n import(\n /* webpackChunkName: \"Dynamic VcardPlus\" */ \"@/components/account/qr/configs/dynamic/VcardPlus\"\n ),\n \"qr-account-qr-configs-dynamic-business-page\": () =>\n import(\n /* webpackChunkName: \"Dynamic BusinessPage\" */ \"@/components/account/qr/configs/dynamic/BusinessPage\"\n ),\n \"qr-account-qr-configs-dynamic-social-medial\": () =>\n import(\n /* webpackChunkName: \"Dynamic SocialMedial\" */ \"@/components/account/qr/configs/dynamic/SocialMedial\"\n ),\n \"qr-account-qr-configs-dynamic-coupons\": () =>\n import(\n /* webpackChunkName: \"Dynamic Coupons\" */ \"@/components/account/qr/configs/dynamic/Coupons\"\n ),\n \"qr-account-qr-configs-dynamic-feedback\": () =>\n import(\n /* webpackChunkName: \"Dynamic Feedback\" */ \"@/components/account/qr/configs/dynamic/Feedback\"\n ),\n \"qr-account-qr-configs-dynamic-rating\": () =>\n import(\n /* webpackChunkName: \"Dynamic Rating\" */ \"@/components/account/qr/configs/dynamic/Rating\"\n ),\n \"qr-account-qr-configs-dynamic-video\": () =>\n import(\n /* webpackChunkName: \"Dynamic Video\" */ \"@/components/account/qr/configs/dynamic/Video\"\n ),\n \"qr-account-qr-configs-dynamic-event\": () =>\n import(\n /* webpackChunkName: \"Dynamic Event\" */ \"@/components/account/qr/configs/dynamic/Event\"\n ),\n \"qr-account-qr-configs-dynamic-pdf\": () =>\n import(\n /* webpackChunkName: \"Dynamic Pdf\" */ \"@/components/account/qr/configs/dynamic/Pdf\"\n ),\n \"qr-account-qr-configs-dynamic-facebook\": () =>\n import(\n /* webpackChunkName: \"Dynamic Facebook\" */ \"@/components/account/qr/configs/dynamic/Facebook\"\n ),\n \"qr-account-qr-configs-dynamic-app\": () =>\n import(\n /* webpackChunkName: \"Dynamic App\" */ \"@/components/account/qr/configs/dynamic/App\"\n ),\n \"qr-account-qr-configs-dynamic-mp3\": () =>\n import(\n /* webpackChunkName: \"Dynamic Mp3\" */ \"@/components/account/qr/configs/dynamic/Mp3\"\n ),\n \"qr-account-qr-configs-dynamic-images\": () =>\n import(\n /* webpackChunkName: \"Dynamic Images\" */ \"@/components/account/qr/configs/dynamic/Images\"\n ),\n \"qr-account-qr-configs-dynamic-instagram\": () =>\n import(\n /* webpackChunkName: \"Dynamic Instagram\" */ \"@/components/account/qr/configs/dynamic/Instagram\"\n ),\n};\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{attrs:{\"id\":\"app\"}},[_c('transition',{attrs:{\"name\":\"fade\"}},[_c(_vm.layout,{tag:\"component\"},[_c('router-view')],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js??clonedRuleSet-39.use[1]!../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js??clonedRuleSet-39.use[1]!../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=3525678a\"\nimport script from \"./App.vue?vue&type=script&lang=js\"\nexport * from \"./App.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import Vue from \"vue\";\nimport VueApollo from \"vue-apollo\";\nimport { anonymousClient } from \"./apollo-anonymous\";\nimport { defaultClient } from \"./apollo-account\";\n\nVue.use(VueApollo);\n\nexport default new VueApollo({\n defaultClient,\n clients: {\n anonymousClient,\n },\n});\n","import { getFirstLanguage, setLanguage } from \"@/plugins/locale/locales\";\nimport { addRoutesLocaleHook } from \"@/plugins/locale/messages\";\n\nexport default async () => {\n // 1. Отримання локалі з query або cookie\n const locale = getFirstLanguage();\n // 2. Збереження локалі в cookie та store\n setLanguage(locale);\n // 3. Router Hook - beforeEach\n addRoutesLocaleHook();\n};\n","import store from \"@/store\";\n\nconst mobileWidth = store.getters[\"device/MOBILE_WIDTH\"];\nconst toggleIsMobile = () => {\n const isMobile = window.matchMedia(`(max-width: ${mobileWidth}px)`).matches;\n store.commit(\"device/toggleIsMobile\", isMobile);\n};\n\ntoggleIsMobile();\nwindow.addEventListener(\"resize\", () => {\n toggleIsMobile();\n});\n","import Vue from \"vue\";\nimport lang from \"element-ui/lib/locale/lang/en\"; // ? імпорт мови для element-ui\nimport locale from \"element-ui/lib/locale\"; // ? імпорт обєкта для підключення мови\nimport {\n Drawer,\n Avatar,\n Autocomplete,\n Button,\n Checkbox,\n Col,\n Container,\n DatePicker,\n Form,\n FormItem,\n Switch,\n Input,\n InputNumber,\n Option,\n OptionGroup,\n Radio,\n RadioButton,\n RadioGroup,\n Row,\n Select,\n // Tabs,\n // TabPane,\n Dropdown,\n DropdownMenu,\n DropdownItem,\n TimeSelect,\n Dialog,\n Slider,\n Breadcrumb,\n BreadcrumbItem,\n Badge,\n Tooltip,\n Collapse,\n Table,\n TableColumn,\n Popover,\n CollapseItem,\n Upload,\n Skeleton,\n SkeletonItem,\n} from \"element-ui\";\n\nconst components = [\n Drawer,\n Avatar,\n Autocomplete,\n Button,\n Checkbox,\n Col,\n Container,\n DatePicker,\n Form,\n FormItem,\n Switch,\n Input,\n InputNumber,\n Option,\n OptionGroup,\n Radio,\n RadioButton,\n RadioGroup,\n Row,\n Select,\n // Tabs,\n // TabPane,\n Dropdown,\n DropdownMenu,\n DropdownItem,\n TimeSelect,\n Dialog,\n Slider,\n Breadcrumb,\n BreadcrumbItem,\n Badge,\n Tooltip,\n Collapse,\n Table,\n TableColumn,\n Popover,\n CollapseItem,\n Upload,\n Skeleton,\n SkeletonItem,\n];\n\nlocale.use(lang);\ncomponents.forEach((c) => {\n Vue.component(c.name, c);\n});\n\n// const components = {\n// ElDrawer: () =>\n// import(/* webpackChunkName: \"ElDrawer\" */ \"element-ui/lib/drawer\"),\n// ElAvatar: () =>\n// import(/* webpackChunkName: \"ElAvatar\" */ \"element-ui/lib/avatar\"),\n// ElAutocomplete: () =>\n// import(\n// /* webpackChunkName: \"ElAutocomplete\" */ \"element-ui/lib/autocomplete\"\n// ),\n// ElButton: () =>\n// import(/* webpackChunkName: \"ElButton\" */ \"element-ui/lib/button\"),\n// ElCheckbox: () =>\n// import(/* webpackChunkName: \"ElCheckbox\" */ \"element-ui/lib/checkbox\"),\n// ElCol: () => import(/* webpackChunkName: \"ElCol\" */ \"element-ui/lib/col\"),\n// ElContainer: () =>\n// import(/* webpackChunkName: \"ElContainer\" */ \"element-ui/lib/container\"),\n// ElDatePicker: () =>\n// import(/* webpackChunkName: \"ElDatePicker\" */ \"element-ui/lib/date-picker\"),\n// ElForm: () => import(/* webpackChunkName: \"ElForm\" */ \"element-ui/lib/form\"),\n// ElFormItem: () =>\n// import(/* webpackChunkName: \"ElFormItem\" */ \"element-ui/lib/form-item\"),\n// ElSwitch: () =>\n// import(/* webpackChunkName: \"ElSwitch\" */ \"element-ui/lib/switch\"),\n// ElInput: () =>\n// import(/* webpackChunkName: \"ElInput\" */ \"element-ui/lib/input\"),\n// ElInputNumber: () =>\n// import(\n// /* webpackChunkName: \"ElInputNumber\" */ \"element-ui/lib/input-number\"\n// ),\n// ElOption: () =>\n// import(/* webpackChunkName: \"ElOption\" */ \"element-ui/lib/option\"),\n// ElOptionGroup: () =>\n// import(\n// /* webpackChunkName: \"ElOptionGroup\" */ \"element-ui/lib/option-group\"\n// ),\n// ElRadio: () =>\n// import(/* webpackChunkName: \"ElRadio\" */ \"element-ui/lib/radio\"),\n// ElRadioButton: () =>\n// import(\n// /* webpackChunkName: \"ElRadioButton\" */ \"element-ui/lib/radio-button\"\n// ),\n// ElRadioGroup: () =>\n// import(/* webpackChunkName: \"ElRadioGroup\" */ \"element-ui/lib/radio-group\"),\n// ElRow: () => import(/* webpackChunkName: \"ElRow\" */ \"element-ui/lib/row\"),\n// ElSelect: () =>\n// import(/* webpackChunkName: \"ElSelect\" */ \"element-ui/lib/select\"),\n// ElTabs: () => import(/* webpackChunkName: \"ElTabs\" */ \"element-ui/lib/tabs\"),\n// ElTabPane: () =>\n// import(/* webpackChunkName: \"ElTabPane\" */ \"element-ui/lib/tab-pane\"),\n// ElDropdown: () =>\n// import(/* webpackChunkName: \"ElDropdown\" */ \"element-ui/lib/dropdown\"),\n// ElDropdownMenu: () =>\n// import(\n// /* webpackChunkName: \"ElDropdownMenu\" */ \"element-ui/lib/dropdown-menu\"\n// ),\n// ElDropdownItem: () =>\n// import(\n// /* webpackChunkName: \"ElDropdownItem\" */ \"element-ui/lib/dropdown-item\"\n// ),\n// ElTimeSelect: () =>\n// import(/* webpackChunkName: \"ElTimeSelect\" */ \"element-ui/lib/time-select\"),\n// ElDialog: () =>\n// import(/* webpackChunkName: \"ElDialog\" */ \"element-ui/lib/dialog\"),\n// ElSlider: () =>\n// import(/* webpackChunkName: \"ElSlider\" */ \"element-ui/lib/slider\"),\n// ElBreadcrumb: () =>\n// import(/* webpackChunkName: \"ElBreadcrumb\" */ \"element-ui/lib/breadcrumb\"),\n// ElBreadcrumbItem: () =>\n// import(\n// /* webpackChunkName: \"ElBreadcrumbItem\" */ \"element-ui/lib/breadcrumb-item\"\n// ),\n// ElBadge: () =>\n// import(/* webpackChunkName: \"ElBadge\" */ \"element-ui/lib/badge\"),\n// ElTooltip: () =>\n// import(/* webpackChunkName: \"ElTooltip\" */ \"element-ui/lib/tooltip\"),\n// ElCollapse: () =>\n// import(/* webpackChunkName: \"ElCollapse\" */ \"element-ui/lib/collapse\"),\n// // todo customize\n// ElTable: () =>\n// import(/* webpackChunkName: \"ElTable\" */ \"element-ui/lib/table\"),\n// ElTableColumn: () =>\n// import(\n// /* webpackChunkName: \"ElTableColumn\" */ \"element-ui/lib/table-column\"\n// ),\n// ElPopover: () =>\n// import(/* webpackChunkName: \"ElPopover\" */ \"element-ui/lib/popover\"),\n// ElCollapseItem: () =>\n// import(\n// /* webpackChunkName: \"ElCollapseItem\" */ \"element-ui/lib/collapse-item\"\n// ),\n// ElUpload: () =>\n// import(/* webpackChunkName: \"ElUpload\" */ \"element-ui/lib/upload\"),\n// ElSkeleton: () =>\n// import(/* webpackChunkName: \"ElSkeleton\" */ \"element-ui/lib/skeleton\"),\n// ElSkeletonItem: () =>\n// import(\n// /* webpackChunkName: \"ElSkeletonItem\" */ \"element-ui/lib/skeleton-item\"\n// ), // color / icons-font\n// };\n\n// locale.use(lang);\n// Object.keys(components).forEach((key) => {\n// Vue.component(key, components[key]);\n// });\n","import L2QrLogoIcon from \"@/assets/img/logo.svg?raw\";\n\nexport const createLoader = () => {\n const loader = document.createElement(\"div\");\n const loaderLink = document.createElement(\"div\");\n\n loaderLink.innerHTML = L2QrLogoIcon;\n\n loaderLink.classList.add(\"l2qr-loader__link\");\n loader.classList.add(\"l2qr-loader\");\n\n loader.append(loaderLink);\n return loader;\n};\n","import Vue from \"vue\";\nimport { createLoader } from \"@/utils/loader\";\n\nVue.directive(\"loader\", {\n update: (el, binding) => {\n const loading = binding.value;\n if (loading) {\n let oldLoader = el.querySelector(\".l2qr-loader\");\n if (oldLoader) return;\n el.style.position = \"relative\";\n\n const loader = createLoader();\n el.append(loader);\n } else {\n const loader = el.querySelector(\".l2qr-loader\");\n loader?.remove?.();\n }\n },\n});\n\nVue.directive(\"intersection-observer\", {\n bind: (el, binding) => {\n const callback = binding.value;\n const observer = new IntersectionObserver(\n (entries) => {\n entries.forEach((entry) => {\n if (entry.isIntersecting) callback();\n });\n },\n { threshold: 1 }\n );\n observer.observe(el);\n },\n // unbind: (el) => {\n // console.log(el)\n // }\n});\n","import Vue from \"vue\";\nimport App from \"./App.vue\";\nimport router from \"./router\";\nimport store from \"./store\";\nimport apolloProvider from \"@/plugins/apollo/index\";\nimport i18n from \"@/plugins/i18n\";\nimport initLocale from \"@/plugins/locale/index\";\nimport \"@/plugins/screen-detection.client\";\nimport \"@/plugins/element-ui\";\nimport \"@/plugins/directives\";\nimport \"@/assets/css/main.css\";\nimport \"@/assets/icons-font/icons.css\";\n\nVue.config.productionTip = false;\n\ninitLocale();\n\nnew Vue({\n i18n,\n router,\n store,\n apolloProvider,\n render: (h) => h(App),\n}).$mount(\"#app\");\n","import { onError } from \"apollo-link-error\";\nimport { ApolloLink, Observable } from \"apollo-link\";\nimport { createHttpLink } from \"apollo-link-http\";\nimport { WebSocketLink } from \"apollo-link-ws\";\nimport { ApolloClient, InMemoryCache, split } from \"apollo-boost\";\nimport { getMainDefinition } from \"apollo-utilities\";\nimport Cookie from \"cookie-universal\";\n\nconst cookies = Cookie();\n\nconst getHeaders = () => {\n const token = cookies.get(\"access-token\");\n return token ? { Authorization: `Bearer ${token}` } : {};\n};\n\nconst EXPIRED_TOKEN_MESSAGE = \"Could not verify JWT: JWTExpired\";\nconst ERROR_TOKEN_MESSAGE = \"Could not verify JWT: JWSError\";\nlet refreshingPromise = null;\n\nconst promiseToObservable = (promise) => {\n return new Observable((subscriber) => {\n promise.then(\n (value) => {\n refreshingPromise = null;\n if (subscriber.closed) return;\n subscriber.next(value);\n subscriber.complete();\n },\n (err) => subscriber.error(err)\n );\n return subscriber;\n });\n};\n\nconst errorHandler = ({ graphQLErrors, networkError, operation, forward }) => {\n const store = require(\"@/store\").default;\n // todo can add network errors or gql error handlers\n\n if (networkError) {\n if (process.env.NODE_ENV === \"development\")\n console.log(`[Network error]: ${networkError}`);\n return;\n }\n\n for (let { message, extensions } of graphQLErrors) {\n if (\n extensions.code === \"invalid-jwt\" &&\n (message === EXPIRED_TOKEN_MESSAGE ||\n message.includes(ERROR_TOKEN_MESSAGE))\n ) {\n if (!refreshingPromise)\n refreshingPromise = store.dispatch(\"auth/refreshToken\");\n\n return promiseToObservable(refreshingPromise).flatMap(() => {\n const oldHeaders = operation.getContext().headers;\n operation.setContext({\n headers: {\n ...oldHeaders,\n ...getHeaders(),\n },\n });\n\n return forward(operation);\n });\n }\n }\n};\n\n// HTTP link\nconst httpLink = createHttpLink({\n uri: process.env.VUE_APP_DB_URL,\n headers: getHeaders(),\n});\n\n// WebSocket link\nexport const wsLink = new WebSocketLink({\n uri: process.env.VUE_APP_DB_URL.replace(/^http?s/g, \"wss\"),\n // headers: getHeaders(),\n options: {\n reconnect: true,\n connectionParams() {\n return {\n headers: getHeaders(),\n };\n },\n },\n});\n\n// export const reconnectWS = () => {\n// wsLink.subscriptionClient.close();\n// wsLink.subscriptionClient.connect();\n// };\n\n// handle reconnecting\n// todo change use cases login/logout\nwsLink.subscriptionClient.onReconnected(() => {\n wsLink.subscriptionClient.connectionParams = {\n ...wsLink.subscriptionClient.connectionParams,\n headers: getHeaders(),\n };\n});\n\n// Split link for HTTP and WebSocket\nconst splitLink = split(\n (options) => {\n const { kind, operation } = getMainDefinition(options.query);\n if (operation !== \"subscription\") {\n options.setContext({\n headers: { ...options.getContext().headers, ...getHeaders() },\n });\n }\n return kind === \"OperationDefinition\" && operation === \"subscription\";\n },\n wsLink,\n httpLink\n);\n\n// Error link\nconst errorLink = onError(errorHandler);\n\n// Concatenate links\nconst link = ApolloLink.from([errorLink, splitLink]);\n\n// Create the Apollo Client instance\nexport const defaultClient = new ApolloClient({\n link,\n cache: new InMemoryCache({\n addTypename: false,\n }),\n defaultOptions: {\n query: {\n fetchPolicy: \"no-cache\",\n },\n },\n});\n","import { ApolloLink } from \"apollo-link\";\nimport { ApolloClient, InMemoryCache } from \"apollo-boost\";\nimport { createHttpLink } from \"apollo-link-http\";\n\nconst link = new ApolloLink((operation, forward) => {\n operation.setContext(() => ({ headers: {} }));\n return forward(operation);\n});\n\nconst httpLink = createHttpLink({\n uri: process.env.VUE_APP_DB_URL,\n});\n\nexport const anonymousClient = new ApolloClient({\n link: link.concat(httpLink),\n cache: new InMemoryCache({\n addTypename: false,\n }),\n // defaultOptions: {\n // query: {\n // fetchPolicy: \"no-cache\",\n // },\n // },\n});\n","import axios from \"axios\";\nconst TOKEN_ERRORS_MESSAGE = \"Token expired!\";\nconst REFRESH_TOKEN_URL = \"/refresh_tokens\";\nimport cookies from \"cookie-universal\";\n\nconst instance = axios.create({\n baseURL: process.env.VUE_APP_AUTH_SERVER_URL,\n});\n\ninstance.interceptors.request.use((configs) => {\n const accessToken = cookies().get(\"access-token\");\n configs.headers[\"Authorization\"] = `Bearer ${accessToken}`;\n return configs;\n});\n\ninstance.interceptors.response.use(\n (config) => config,\n async (error) => {\n const store = require(\"../store\").default;\n const originalRequest = error.config;\n\n // todo single error handler\n if (\n error.response?.data?.message === TOKEN_ERRORS_MESSAGE &&\n !originalRequest._retry &&\n originalRequest.url !== REFRESH_TOKEN_URL\n ) {\n originalRequest._retry = true;\n await store.dispatch(\"auth/refreshToken\");\n return instance(originalRequest);\n }\n\n const serverErrorMessage =\n error.response?.data?.message || error.response?.data?.error;\n if (serverErrorMessage)\n return Promise.reject(new Error(serverErrorMessage));\n return Promise.reject(error);\n }\n);\n\nexport default instance;\n","import Vue from \"vue\";\nimport VueI18n from \"vue-i18n\";\n\nVue.use(VueI18n);\n\nexport default new VueI18n({\n locale: \"en\",\n messages: {},\n});\n","import cookie from \"cookie-universal\";\nimport i18n from \"@/plugins/i18n\";\nimport store from \"@/store\";\nimport moment from \"moment\";\nimport enLang from \"element-ui/lib/locale/lang/en\"; // ? імпорт мови для element-ui\nimport elementUiLocale from \"element-ui/lib/locale\"; // ? імпорт обєкта для підключення мови\n\nexport const FAILBACK_LANGUAGE = \"en\";\nexport const getFirstLanguage = () => {\n const queryLocale = new URLSearchParams(window.location.search).get(\"locale\");\n const queryLang = queryLocale?.split?.(\"-\")?.[0];\n const cookieLang = cookie().get(\"lang\");\n const lang = queryLang || cookieLang || FAILBACK_LANGUAGE;\n\n // Забрати locale query з URL\n if (queryLocale) {\n const url = new URL(window.location.href);\n url.searchParams.delete(\"locale\");\n window.history.replaceState({}, \"\", url);\n }\n\n return lang;\n};\n\nexport const setLanguage = (lang) => {\n cookie().set(\"lang\", lang);\n // Збереження локалі в сторі\n store.commit(\"SET_LANGUAGE\", lang);\n i18n.locales = [...(i18n.locales || []), { code: lang }];\n i18n.defaultLocale = lang;\n i18n.locale = lang;\n // realize language for date\n\n // todo check moment and element ui codes for langs\n moment.locale(lang);\n elementUiLocale.use(enLang);\n};\n","import gql from \"graphql-tag\";\n\nexport const GET_TRANSLATIONS = gql`\n query GetTranslations($page: String!, $language: String!) {\n translations(\n where: {\n page_translations: { page: { name: { _eq: $page } } }\n language_code: { _eq: $language }\n }\n ) {\n key\n value\n }\n }\n`;\n","import router from \"@/router\";\nimport i18n from \"@/plugins/i18n\";\nimport store from \"@/store\";\nimport { GET_TRANSLATIONS } from \"@/services/locales\";\nimport { anonymousClient } from \"@/plugins/apollo/apollo-anonymous\";\nimport { setLanguage } from \"@/plugins/locale/locales\";\n\nexport const fetchMessages = async (language, routeName) => {\n const { data } = await anonymousClient.query({\n query: GET_TRANSLATIONS,\n variables: {\n page: routeName || \"error\",\n language,\n },\n });\n const translations = data?.translations || [];\n return translations.reduce((acc, cur) => {\n acc[cur.key] = cur.value;\n return acc;\n }, {});\n};\n\nexport const addRoutesLocaleHook = () => {\n router.beforeEach(async (to, from, next) => {\n const language = store.getters[\"language\"];\n\n const messages = await fetchMessages(language, to.name); // Передача route.name\n i18n.mergeLocaleMessage(language, messages);\n // Продовження навігації\n next();\n });\n};\n\nexport const updateLocale = async (language, routerName) => {\n setLanguage(language);\n const messages = await fetchMessages(language, routerName);\n i18n.mergeLocaleMessage(language, messages);\n};\n","import Vue from \"vue\";\nimport VueRouter from \"vue-router\";\n\nVue.use(VueRouter);\n\nconst routes = [\n {\n path: \"/\",\n name: \"home\",\n redirect: { name: \"manage\" },\n // component: () =>\n // import(/* webpackChunkName: \"home view\" */ \"../views/HomeView.vue\"),\n },\n {\n path: \"/login\",\n name: \"login\",\n meta: { layout: \"Auth\" },\n component: () =>\n import(/* webpackChunkName: \"login view\" */ \"../views/LoginView.vue\"),\n },\n {\n path: \"/signup\",\n name: \"signup\",\n meta: { layout: \"Auth\" },\n component: () =>\n import(/* webpackChunkName: \"signup view\" */ \"../views/SignupView.vue\"),\n },\n {\n path: \"/auth/callback\",\n name: \"auth-callback\",\n meta: { layout: \"Empty\" },\n component: () =>\n import(\n /* webpackChunkName: \"auth callback view\" */ \"../views/auth/callback\"\n ),\n },\n {\n path: \"/reset-password\",\n name: \"reset-password\",\n meta: { layout: \"Auth\" },\n component: () =>\n import(\n /* webpackChunkName: \"ResetPassword view\" */ \"../views/reset-password/index.vue\"\n ),\n },\n {\n path: \"/reset-password/change\",\n name: \"reset-password-change\",\n meta: { layout: \"Auth\" },\n component: () =>\n import(\n /* webpackChunkName: \"ResetPasswordChange view\" */ \"../views/reset-password/change.vue\"\n ),\n },\n {\n path: \"/manage\",\n name: \"manage\",\n meta: { layout: \"Account\" },\n component: () =>\n import(/* webpackChunkName: \"Manage view\" */ \"../views/manage/index.vue\"),\n },\n {\n path: \"/settings\",\n name: \"settings\",\n meta: { layout: \"Account\" },\n component: () =>\n import(/* webpackChunkName: \"Settings view\" */ \"../views/settings\"),\n children: [\n {\n path: \"account\",\n name: \"settings-account\",\n meta: { layout: \"Account\" },\n component: () =>\n import(\n /* webpackChunkName: \"SettingsAccount view\" */ \"../views/settings/account\"\n ),\n },\n {\n path: \"user\",\n name: \"settings-user\",\n meta: { layout: \"Account\" },\n component: () =>\n import(\n /* webpackChunkName: \"SettingsUser view\" */ \"../views/settings/user\"\n ),\n },\n {\n path: \"api\",\n name: \"settings-api\",\n meta: { layout: \"Account\" },\n component: () =>\n import(/* webpackChunkName: \"SettingsApi\" */ \"../views/settings/api\"),\n },\n {\n path: \"api/:id\",\n name: \"settings-api-key\",\n meta: { layout: \"Account\" },\n component: () =>\n import(\n /* webpackChunkName: \"SettingsApiKey\" */ \"../views/settings/apiKey\"\n ),\n },\n {\n path: \"billing\",\n name: \"settings-billing\",\n meta: { layout: \"Account\" },\n component: () =>\n import(\n /* webpackChunkName: \"SettingsBilling view\" */ \"../views/settings/billing\"\n ),\n },\n ],\n },\n {\n path: \"/change-password\",\n name: \"change-password\",\n meta: { layout: \"Account\" },\n component: () =>\n import(\n /* webpackChunkName: \"changePassword view\" */ \"../views/change-password\"\n ),\n },\n {\n path: \"/change-email\",\n name: \"change-email\",\n meta: { layout: \"Account\" },\n component: () =>\n import(\n /* webpackChunkName: \"changeEmail view\" */ \"../views/change-email\"\n ),\n },\n {\n path: \"/close-account\",\n name: \"close-account\",\n meta: { layout: \"Account\" },\n component: () =>\n import(\n /* webpackChunkName: \"SettingsBilling view\" */ \"../views/close-account\"\n ),\n },\n {\n path: \"/features-and-pricing\",\n name: \"features-and-pricing\",\n meta: { layout: \"Account\" },\n component: () =>\n import(\n /* webpackChunkName: \"FeaturesAndPricing view\" */ \"../views/features-and-pricing\"\n ),\n },\n {\n path: \"/payment\",\n name: \"payment\",\n meta: { layout: \"Empty\" },\n component: () =>\n import(/* webpackChunkName: \"Payment view\" */ \"../views/payment\"),\n },\n {\n path: \"/payment-upgrade\",\n name: \"paymentUpgrade\",\n meta: { layout: \"Account\" },\n component: () =>\n import(\n /* webpackChunkName: \"Payment upgrade view\" */ \"../views/PaymentUpgrade\"\n ),\n },\n {\n path: \"/payment-success\",\n name: \"paymentSuccess\",\n meta: { layout: \"Account\" },\n component: () =>\n import(\n /* webpackChunkName: \"Payment success view\" */ \"../views/PaymentSuccess\"\n ),\n },\n {\n path: \"/payment-fail\",\n name: \"paymentFail\",\n meta: { layout: \"Account\" },\n component: () =>\n import(\n /* webpackChunkName: \"Payment fail view\" */ \"../views/PaymentFail\"\n ),\n },\n {\n path: \"/qr/create\",\n name: \"qr-create\",\n meta: { layout: \"Account\" },\n component: () =>\n import(/* webpackChunkName: \"QrCreate view\" */ \"../views/qr/create\"),\n },\n {\n path: \"/qr/edit/:key\",\n name: \"qr-edit-key\",\n meta: { layout: \"Account\" },\n component: () =>\n import(/* webpackChunkName: \"QrEdit view\" */ \"../views/qr/edit/_key\"),\n },\n {\n path: \"/qr/design/:key\",\n name: \"qr-design-key\",\n meta: { layout: \"Account\" },\n component: () =>\n import(/* webpackChunkName: \"QrDesign view\" */ \"../views/qr/design/_key\"),\n },\n {\n path: \"/qr/details/:key\",\n name: \"qr-details-key\",\n meta: { layout: \"Account\" },\n component: () =>\n import(\n /* webpackChunkName: \"QrDetails view\" */ \"../views/qr/details/_key\"\n ),\n },\n {\n path: \"/backoffice\",\n name: \"backoffice\",\n meta: { layout: \"Auth\" },\n component: () =>\n import(\n /* webpackChunkName: \"Backoffice view\" */ \"../views/backoffice/index.vue\"\n ),\n },\n {\n path: \"/backoffice/panel\",\n name: \"backoffice-panel\",\n meta: { layout: \"Backoffice\" },\n redirect: { name: \"backoffice-panel-dashboard\" },\n component: () =>\n import(\n /* webpackChunkName: \"Backoffice Panel view\" */ \"../views/backoffice/panel.vue\"\n ),\n children: [\n {\n path: \"dashboard\",\n name: \"backoffice-panel-dashboard\",\n meta: { layout: \"Backoffice\" },\n component: () =>\n import(\n /* webpackChunkName: \"Backoffice dashboard view\" */ \"../views/backoffice/panel/dashboard.vue\"\n ),\n },\n {\n path: \"internationalization\",\n name: \"backoffice-panel-internationalization\",\n meta: { layout: \"Backoffice\" },\n component: () =>\n import(\n /* webpackChunkName: \"Backoffice internationalization view\" */ \"../views/backoffice/panel/internationalization.vue\"\n ),\n },\n {\n path: \"helpdesk\",\n name: \"backoffice-panel-helpdesk\",\n meta: { layout: \"Backoffice\" },\n component: () =>\n import(\n /* webpackChunkName: \"Backoffice help center view\" */ \"../views/backoffice/panel/helpdesk/index.vue\"\n ),\n },\n {\n path: \"helpdesk/:ticket\",\n name: \"backoffice-panel-helpdesk-ticket\",\n meta: { layout: \"Backoffice\" },\n component: () =>\n import(\n /* webpackChunkName: \"Backoffice help center ticket view\" */ \"../views/backoffice/panel/helpdesk/_ticket.vue\"\n ),\n },\n {\n path: \"articles\",\n name: \"backoffice-panel-articles\",\n meta: { layout: \"Backoffice\" },\n component: () =>\n import(\n /* webpackChunkName: \"Backoffice articles view\" */ \"../views/backoffice/panel/articles/index.vue\"\n ),\n },\n {\n path: \"articles/create\",\n name: \"backoffice-panel-articles-create\",\n meta: { layout: \"Backoffice\" },\n component: () =>\n import(\n /* webpackChunkName: \"Backoffice articles create view\" */ \"../views/backoffice/panel/articles/create.vue\"\n ),\n },\n {\n path: \"articles/:id\",\n name: \"backoffice-panel-articles-id\",\n meta: { layout: \"Backoffice\" },\n component: () =>\n import(\n /* webpackChunkName: \"Backoffice articles id view\" */ \"../views/backoffice/panel/articles/_id.vue\"\n ),\n },\n ],\n },\n // {\n // path: \"/test-generator\",\n // name: \"test\",\n // meta: { layout: \"Auth\" },\n // component: () =>\n // import(/* webpackChunkName: \"test view\" */ \"../views/Test.vue\"),\n // },\n // ORGANIZATIONS\n {\n path: \"/organizations\",\n name: \"organizations\",\n meta: { layout: \"Account\" },\n component: () =>\n import(\n /* webpackChunkName: \"organizations view\" */ \"../views/Organizations.vue\"\n ),\n },\n {\n path: \"/organizations/:id/users\",\n name: \"organization-id-users\",\n meta: { layout: \"Account\" },\n component: () =>\n import(\n /* webpackChunkName: \"organization users view\" */ \"../views/OrganizationUsers.vue\"\n ),\n },\n {\n path: \"/organization-invitation\",\n name: \"organization-invitation\",\n meta: { layout: \"Auth\" },\n component: () =>\n import(\n /* webpackChunkName: \"Organization Invitation view\" */ \"../views/OrganizationInvitation.vue\"\n ),\n },\n // wallet pass\n {\n path: \"/wallet-pass/:token\",\n name: \"wallet-pass-token\",\n meta: { layout: \"Wallet\" },\n component: () =>\n import(\n /* webpackChunkName: \"Wallet pass token view\" */ \"../views/walletPass/_token.vue\"\n ),\n },\n {\n path: \"/wallet-pass/:type/:qrCodeKey\",\n name: \"wallet-pass-generate\",\n meta: { layout: \"empty\" },\n component: () =>\n import(\n /* webpackChunkName: \"Wallet pass generate view\" */ \"../views/walletPass/_generate.vue\"\n ),\n },\n {\n path: \"*\",\n redirect: { name: \"manage\" },\n },\n];\n\nconst router = new VueRouter({\n mode: \"history\",\n base: process.env.BASE_URL,\n routes,\n});\n\nexport default router;\n","export default {\n namespaced: true,\n state: {\n timeoutId: null,\n isShown: false,\n type: null,\n message: \"\",\n },\n getters: {\n type: ({ type }) => type,\n message: ({ message }) => message,\n isShown: ({ isShown }) => isShown,\n },\n mutations: {\n setMessage(state, message) {\n state.message = message;\n },\n setVisibility(state, isShown) {\n state.isShown = isShown;\n },\n setType(state, type) {\n state.type = type;\n },\n setTimeoutId(state, timeoutId) {\n state.timeoutId = timeoutId;\n },\n },\n actions: {\n hideNotification({ commit }) {\n commit(\"setVisibility\", false);\n setTimeout(() => {\n commit(\"setMessage\", \"\");\n }, 500);\n },\n showNotification({ commit, getters }, { type = null, message = \"\" } = {}) {\n if (getters.isShown) {\n commit(\"setVisibility\", false);\n if (getters.timeoutId) clearTimeout(getters.timeoutId);\n const timeoutId = setTimeout(() => {\n commit(\"setMessage\", message);\n commit(\"setType\", type);\n commit(\"setVisibility\", true);\n }, 1000);\n commit(\"setTimeoutId\", timeoutId);\n } else {\n commit(\"setMessage\", message);\n commit(\"setType\", type);\n commit(\"setVisibility\", true);\n }\n },\n },\n};\n","import axios from \"@/plugins/axios\";\n\nconst sendHelpCenterRequest = (request) => {\n return axios.post(\"/help-center-request\", request);\n};\n\nexport default {\n sendHelpCenterRequest,\n};\n","import helpCenterService from \"@/services/help-center\";\n\nconst initState = () => ({\n email: \"\",\n name: \"\",\n type: null,\n subject: \"\",\n description: \"\",\n\n error: null,\n loading: false,\n});\n\nexport default {\n namespaced: true,\n state: initState(),\n getters: {\n email: ({ email }) => email,\n name: ({ name }) => name,\n type: ({ type }) => type,\n subject: ({ subject }) => subject,\n description: ({ description }) => description,\n\n error: ({ error }) => error,\n loading: ({ loading }) => loading,\n },\n mutations: {\n reset(state) {\n Object.assign(state, initState());\n },\n\n setEmail(state, email) {\n state.email = email;\n },\n setName(state, name) {\n state.name = name;\n },\n setType(state, type) {\n state.type = type;\n },\n setSubject(state, subject) {\n state.subject = subject;\n },\n setDescription(state, description) {\n state.description = description;\n },\n\n sendHelpCenterRequestStart(state) {\n state.loading = true;\n state.error = null;\n },\n sendHelpCenterRequestSuccess(state) {\n state.loading = true;\n },\n sendHelpCenterRequestFailure(state, e) {\n state.loading = false;\n state.error = e;\n },\n },\n actions: {\n async sendHelpCenterRequest(\n { commit, getters, rootGetters },\n recaptchaToken\n ) {\n try {\n commit(\"sendHelpCenterRequestStart\");\n const { email, name, type, subject, description } = getters;\n await helpCenterService.sendHelpCenterRequest({\n helpCenterRequest: { email, name, type, subject, description },\n language: rootGetters[\"language\"],\n recaptchaToken,\n });\n commit(\"sendHelpCenterRequestSuccess\");\n } catch (e) {\n commit(\"sendHelpCenterRequestFailure\", e);\n return Promise.reject(e);\n }\n },\n },\n};\n","import gql from \"graphql-tag\";\n\nexport const GET_ACCOUNTS = gql`\n fragment planFields on plans {\n id\n label\n dynamic_qr_codes\n dynamic_business_card\n static_qr_codes\n scans\n qr_templates\n multiple_download_formats\n limit_space\n tracking_date\n tracking_device\n tracking_gps\n gdpr\n sso\n qr_design_customization\n page_templates\n knowledge_base\n email_support\n customer_manager\n advertising\n }\n\n query getAccounts($userId: uuid!) {\n users(where: { id: { _eq: $userId } }) {\n email\n avatar_url\n }\n accounts {\n id\n owner_id\n status\n customer_id\n used_resources {\n used_business_cards\n used_dynamic_qr_codes\n used_static_qr_codes\n used_scans\n used_storage\n }\n account_plan {\n expiry_date\n is_paid\n is_trial\n plan {\n ...planFields\n }\n organization_users_limit\n stripe_customer_id\n current_subscription {\n recurring_interval\n current_period_start\n current_period_end\n }\n }\n software_preferences {\n language\n }\n contacts {\n first_name\n last_name\n company\n }\n }\n }\n`;\n","import { GET_ACCOUNTS } from \"@/services/account\";\nimport { defaultClient as apollo } from \"@/plugins/apollo/apollo-account\";\nimport { PLANS_WITH_MULTI_USERS } from \"@/constants/plans\";\nimport { getTokenUserId } from \"@/utils/token\";\nimport { FREE_PLAN_ID } from \"@/constants/plans\";\n\nconst serializeMyAccount = (data) => {\n const account = data?.accounts?.[0];\n const user = data?.users?.[0] ?? {};\n if (!account) throw Error(\"Account is not fount\");\n\n return {\n ...account,\n ...(account.contacts?.[0] ?? {}),\n ...user,\n };\n};\n\nexport default {\n namespaced: true,\n state: {\n account: null,\n error: null,\n loading: false,\n\n accountPlan: null,\n\n headerSearch: \"\",\n shownHeaderSearch: false,\n },\n getters: {\n headerSearch: ({ headerSearch }) => headerSearch,\n shownHeaderSearch: ({ shownHeaderSearch }) => shownHeaderSearch,\n\n account: ({ account }) => account,\n errors: ({ errors }) => errors,\n loading: ({ loading }) => loading,\n accountPlan: ({ accountPlan }) => accountPlan,\n allowedMultiUsers: ({ accountPlan }) =>\n PLANS_WITH_MULTI_USERS?.includes?.(accountPlan?.plan?.id),\n accountName: ({ account }) =>\n account?.company ||\n (account?.first_name && `${account?.first_name} ${account?.last_name}`) ||\n account?.email,\n usedDynamicQrCodes: ({ account }) =>\n account?.used_resources?.used_dynamic_qr_codes,\n usedStaticQrCodes: ({ account }) =>\n account?.used_resources?.used_static_qr_codes,\n usedBusinessCards: ({ account }) =>\n account?.used_resources?.used_business_cards,\n usedScans: ({ account }) => account?.used_resources?.used_scans,\n availableDynamicQrCodes: ({ accountPlan }) =>\n accountPlan?.plan?.dynamic_qr_codes,\n availableBusinessCards: ({ accountPlan }) =>\n accountPlan?.plan?.dynamic_business_card,\n availableStaticQrCodes: ({ accountPlan }) =>\n accountPlan?.plan?.static_qr_codes,\n availableScans: ({ accountPlan }) => accountPlan?.plan?.scans,\n userLanguage: ({ account }) => account?.software_preferences?.language,\n isOwner: ({ account }) => account.owner_id === getTokenUserId(),\n isFreePlan: ({ accountPlan }) => accountPlan?.plan?.id === FREE_PLAN_ID,\n isPaid: ({ accountPlan }, { isFreePlan }) =>\n isFreePlan || accountPlan?.is_paid,\n isTrial: ({ accountPlan }, { isFreePlan }) =>\n isFreePlan || accountPlan?.is_trial,\n reachedDynamicQrCodesLimit: (\n state,\n { usedDynamicQrCodes, availableDynamicQrCodes }\n ) => {\n const unlimitedDynamicQrCodes = availableDynamicQrCodes === null;\n return (\n !unlimitedDynamicQrCodes &&\n usedDynamicQrCodes >= availableDynamicQrCodes\n );\n },\n reachedBusinessCardsLimit: (\n state,\n { usedBusinessCards, availableBusinessCards }\n ) => {\n const unlimitedBusinessCards = availableBusinessCards === null;\n return (\n !unlimitedBusinessCards && usedBusinessCards >= availableBusinessCards\n );\n },\n reachedStaticQrCodesLimit: (\n state,\n { usedStaticQrCodes, availableStaticQrCodes }\n ) => {\n const unlimitedStaticQrCodes = availableStaticQrCodes === null;\n return (\n !unlimitedStaticQrCodes && usedStaticQrCodes >= availableStaticQrCodes\n );\n },\n reachedScansLimit: (state, { usedScans, availableScans }) => {\n const unlimitedStaticQrCodes = availableScans === null;\n return !unlimitedStaticQrCodes && usedScans >= availableScans;\n },\n advertising: ({ accountPlan }) => accountPlan?.plan?.advertising,\n },\n mutations: {\n showHeaderSearch(state, bool) {\n if (!bool) state.headerSearch = \"\";\n state.shownHeaderSearch = bool;\n },\n updateHeaderSearch(state, value) {\n state.headerSearch = value;\n },\n getAccountsStart(state) {\n state.account = null;\n state.error = null;\n state.loading = true;\n },\n getAccountsSuccess(state, payload) {\n state.account = payload.account;\n state.accountPlan = payload.account.account_plan;\n state.loading = false;\n },\n getAccountsFailure(state, e) {\n state.account = null;\n state.error = e;\n state.loading = false;\n },\n },\n actions: {\n async getAccounts({ commit }) {\n try {\n commit(\"getAccountsStart\");\n\n const { data } = await apollo.query({\n query: GET_ACCOUNTS,\n variables: { userId: getTokenUserId() },\n });\n\n const account = serializeMyAccount(data);\n\n if (!account) throw Error(\"The account is not found\");\n commit(\"getAccountsSuccess\", { account });\n } catch (e) {\n commit(\"getAccountsFailure\", e);\n return Promise.reject(e);\n }\n },\n async getUpdatedAccount({ commit }) {\n try {\n const { data } = await apollo.query({\n query: GET_ACCOUNTS,\n variables: { userId: getTokenUserId() },\n });\n const account = serializeMyAccount(data);\n commit(\"getAccountsSuccess\", { account });\n } catch (e) {\n console.log(e);\n }\n },\n },\n};\n","import gql from \"graphql-tag\";\n\nexport const GET_FOLDERS = gql`\n query getFolders($accountId: uuid!) {\n all_qr_codes: qr_codes_aggregate(\n where: { account_id: { _eq: $accountId } }\n ) {\n aggregate {\n count\n }\n }\n active_qr_codes: qr_codes_aggregate(\n where: { account_id: { _eq: $accountId }, status: { _eq: \"active\" } }\n ) {\n aggregate {\n count\n }\n }\n paused_qr_codes: qr_codes_aggregate(\n where: { account_id: { _eq: $accountId }, status: { _eq: \"paused\" } }\n ) {\n aggregate {\n count\n }\n }\n folders(\n where: { account_id: { _eq: $accountId } }\n order_by: { created_at: asc }\n ) {\n id\n name\n qr_codes_aggregate {\n aggregate {\n count\n }\n }\n }\n }\n`;\n\nexport const GET_QR_CODES_LIST = gql`\n query getQrCodesList(\n $where: qr_codes_bool_exp!\n $orderBy: [qr_codes_order_by!]!\n $limit: Int = 20\n $offset: Int = 0\n ) {\n qr_codes_aggregate(where: $where) {\n aggregate {\n count\n }\n }\n qr_codes(\n # account_id\n # folder_id?\n # status?\n where: $where\n order_by: $orderBy\n limit: $limit\n offset: $offset\n ) {\n id\n name\n created_at\n type\n key\n data_format\n status\n templateId: content(path: \"template\")\n organization {\n id\n name\n }\n content(path: \"url\")\n scans_aggregate {\n aggregate {\n count\n }\n }\n folder {\n id\n name\n }\n preview {\n key\n }\n }\n }\n`;\n\nexport const CREATE_FOLDER = gql`\n mutation createFolder($id: uuid!, $name: String!, $accountId: uuid!) {\n insert_folders(objects: { id: $id, name: $name, account_id: $accountId }) {\n affected_rows\n }\n }\n`;\n\nexport const RENAME_FOLDER = gql`\n mutation renameFolder($id: uuid!, $name: String!) {\n update_folders(where: { id: { _eq: $id } }, _set: { name: $name }) {\n affected_rows\n }\n }\n`;\n\nexport const DELETE_FOLDER = gql`\n mutation deleteFolder($id: uuid!) {\n delete_folders(where: { id: { _eq: $id } }) {\n affected_rows\n }\n update_qr_codes(\n where: { folder_id: { _eq: $id } }\n _set: { folder_id: null }\n ) {\n affected_rows\n }\n }\n`;\n\nexport const UPDATE_QR_CODE_NAME = gql`\n mutation updateQrCodeName($id: uuid!, $name: String!) {\n update_qr_codes(where: { id: { _eq: $id } }, _set: { name: $name }) {\n affected_rows\n }\n }\n`;\n\nexport const CHANGE_QR_CODES_STATUS = gql`\n mutation changeQrCodesStatus($ids: [uuid!]!, $status: String!) {\n update_qr_codes(\n where: { id: { _in: $ids }, type: { _eq: \"dynamic\" } }\n _set: { status: $status }\n ) {\n affected_rows\n }\n }\n`;\n\nexport const MOVE_QR_CODES_TO_FOLDER = gql`\n mutation moveQrCodesToFolder($ids: [uuid!]!, $folderId: uuid = null) {\n update_qr_codes(\n where: { id: { _in: $ids } }\n _set: { folder_id: $folderId }\n ) {\n affected_rows\n }\n }\n`;\n\nexport const REMOVE_QR_CODES = gql`\n mutation removeQrCodes($ids: [uuid!]!) {\n update_files(\n where: { qr_code_id: { _in: $ids } }\n _set: { unsaved: true }\n ) {\n affected_rows\n }\n delete_qr_code_scans(where: { qr_code_id: { _in: $ids } }) {\n affected_rows\n }\n delete_qr_code_designs(where: { qr_code: { id: { _in: $ids } } }) {\n affected_rows\n }\n delete_qr_codes(where: { id: { _in: $ids } }) {\n affected_rows\n }\n }\n`;\n","import {\n CREATE_FOLDER,\n DELETE_FOLDER,\n GET_FOLDERS,\n GET_QR_CODES_LIST,\n RENAME_FOLDER,\n UPDATE_QR_CODE_NAME,\n CHANGE_QR_CODES_STATUS,\n MOVE_QR_CODES_TO_FOLDER,\n REMOVE_QR_CODES,\n} from \"@/services/manage\";\nimport { v4 as uuidv4 } from \"uuid\";\nimport { qrCodesOrders } from \"@/constants/manage\";\nimport { defaultClient as apollo } from \"@/plugins/apollo/apollo-account\";\n\nconst serializeFolders = (folders) => {\n return {\n allQrCodesCount: folders.all_qr_codes?.aggregate?.count || 0,\n activeQrCodesCount: folders.active_qr_codes?.aggregate?.count || 0,\n pausedQrCodesCount: folders.paused_qr_codes?.aggregate?.count || 0,\n folders: folders.folders.map((f) => ({\n ...f,\n count: f?.qr_codes_aggregate?.aggregate?.count || 0,\n })),\n };\n};\n\nconst serializeQrCodesListVariables = (rootGetters, getters) => {\n const accountId = rootGetters[\"account/account\"]?.id;\n const { qrCodeNameFilter, folderIdFilter, statusFilter } = getters;\n\n const where = { account_id: { _eq: accountId } };\n const orderBy = [qrCodesOrders[getters[\"orderBy\"]]?.query ?? {}];\n const limit = getters[\"limit\"];\n const offset = getters[\"offset\"];\n\n if (qrCodeNameFilter) where.name = { _ilike: `%${qrCodeNameFilter}%` };\n if (folderIdFilter) where.folder_id = { _eq: folderIdFilter };\n if (statusFilter && statusFilter !== \"all\")\n where.status = { _eq: statusFilter };\n\n return { where, orderBy, limit, offset };\n};\n\nconst initState = () => ({\n // folders\n allQrCodesCount: 0,\n activeQrCodesCount: 0,\n pausedQrCodesCount: 0,\n foldersLoading: false,\n foldersError: null,\n folders: [],\n\n folderCreatingLoading: false,\n folderCreatingError: null,\n folderRenamingLoading: false,\n folderRenamingError: null,\n folderDeletingLoading: false,\n folderDeletingError: null,\n updatingQrCodeError: null,\n\n // qr codes list\n currentFolderQrCodesCount: 0,\n qrCodes: [],\n loadedAll: false,\n qrCodesLoading: false,\n qrCodesMoreLoading: false,\n qrCodesError: null,\n qrCodeNameFilter: \"\",\n folderIdFilter: null,\n statusFilter: \"all\",\n orderBy: \"last_created\",\n offset: 0,\n limit: 20,\n\n isOpenSidebar: false,\n\n selectedQrCodes: [],\n});\n\nexport default {\n namespaced: true,\n state: initState(),\n getters: {\n allQrCodesCount: ({ allQrCodesCount }) => allQrCodesCount,\n activeQrCodesCount: ({ activeQrCodesCount }) => activeQrCodesCount,\n pausedQrCodesCount: ({ pausedQrCodesCount }) => pausedQrCodesCount,\n foldersLoading: ({ foldersLoading }) => foldersLoading,\n foldersError: ({ foldersError }) => foldersError,\n folders: ({ folders }) => folders,\n qrCodes: ({ qrCodes }) => qrCodes,\n loadedAll: ({ loadedAll }) => loadedAll,\n qrCodesLoading: ({ qrCodesLoading }) => qrCodesLoading,\n qrCodesMoreLoading: ({ qrCodesMoreLoading }) => qrCodesMoreLoading,\n qrCodesError: ({ qrCodesError }) => qrCodesError,\n qrCodeNameFilter: ({ qrCodeNameFilter }) => qrCodeNameFilter,\n folderIdFilter: ({ folderIdFilter }) => folderIdFilter,\n statusFilter: ({ statusFilter }) => statusFilter,\n orderBy: ({ orderBy }) => orderBy,\n activeFolder: ({ folderIdFilter, folders }) =>\n folders?.find?.((f) => f.id === folderIdFilter),\n folderCreatingLoading: ({ folderCreatingLoading }) => folderCreatingLoading,\n folderRenamingLoading: ({ folderRenamingLoading }) => folderRenamingLoading,\n isOpenSidebar: ({ isOpenSidebar }) => isOpenSidebar,\n foldersNames: ({ folders }) => folders.map((f) => f.name),\n selectedQrCodes: ({ selectedQrCodes }) => selectedQrCodes,\n currentFolderQrCodesCount: ({ currentFolderQrCodesCount }) =>\n currentFolderQrCodesCount,\n offset: ({ offset }) => offset,\n limit: ({ limit }) => limit,\n },\n mutations: {\n reset(state) {\n Object.assign(state, initState());\n },\n updateQrCodeListItem(state, qrCode) {\n const qrCodeIdx = state.qrCodes.findIndex((qr) => qr.id === qrCode.id);\n if (qrCodeIdx === -1) return;\n state.qrCodes.splice(qrCodeIdx, 1, {\n ...state.qrCodes[qrCodeIdx],\n ...qrCode,\n });\n },\n toggleSidebar(state, bool = false) {\n state.isOpenSidebar = bool;\n },\n setSelectedQrCodes(state, list = []) {\n state.selectedQrCodes = list;\n },\n setQrCodeNameFilter(state, name) {\n state.qrCodeNameFilter = name;\n },\n setFolderIdFilter(state, folderId) {\n state.folderIdFilter = folderId;\n },\n setStatusFilter(state, status) {\n console.log(status);\n state.statusFilter = status;\n },\n setOrderBy(state, orderBy) {\n state.orderBy = orderBy;\n },\n // get folders\n getFoldersStart(state) {\n state.foldersLoading = true;\n state.allQrCodesCount = 0;\n state.activeQrCodesCount = 0;\n state.pausedQrCodesCount = 0;\n state.foldersError = null;\n state.folders = [];\n },\n getFoldersSuccess(state, payload) {\n state.foldersLoading = false;\n state.allQrCodesCount = payload.allQrCodesCount;\n state.activeQrCodesCount = payload.activeQrCodesCount;\n state.pausedQrCodesCount = payload.pausedQrCodesCount;\n state.folders = payload.folders;\n },\n getFoldersFailure(state, e) {\n state.foldersLoading = false;\n state.foldersError = e;\n },\n // get qr codes list\n getQrCodesListStart(state) {\n state.loadedAll = false;\n state.offset = 0;\n\n state.qrCodesLoading = true;\n state.qrCodesError = null;\n state.qrCodes = [];\n },\n getQrCodesListSuccess(state, payload) {\n state.qrCodesLoading = false;\n state.qrCodes = payload.qr_codes;\n state.currentFolderQrCodesCount =\n payload.qr_codes_aggregate?.aggregate?.count ?? 0;\n },\n getQrCodesListFailure(state, e) {\n state.qrCodesLoading = false;\n state.qrCodesError = e;\n },\n // get more qr code list\n getMoreQrCodesListStart(state) {\n state.qrCodesMoreLoading = true;\n state.qrCodesError = null;\n state.offset += state.limit;\n },\n getMoreQrCodesListSuccess(state, qrCodes) {\n state.qrCodesMoreLoading = false;\n state.qrCodes = [...state.qrCodes, ...(qrCodes ?? [])];\n if (qrCodes.length < state.limit) state.loadedAll = true;\n },\n getMoreQrCodesListFailure(state, e) {\n state.offset = Math.max(0, state.offset - state.limit);\n state.qrCodesMoreLoading = false;\n state.qrCodesError = e;\n },\n // create folder\n createFolderStart(state) {\n state.folderCreatingLoading = true;\n state.folderCreatingError = null;\n },\n createFolderSuccess(state, newFolder) {\n state.folderCreatingLoading = false;\n state.folders.push(newFolder);\n },\n createFolderFailure(state, e) {\n state.folderCreatingLoading = false;\n state.folderCreatingError = e;\n },\n // rename folder\n renameFolderStart(state) {\n state.folderRenamingLoading = true;\n state.folderRenamingError = null;\n },\n renameFolderSuccess(state, { id, name }) {\n state.folders.forEach((f) => f.id === id && (f.name = name));\n state.qrCodes.forEach(\n (qr) => qr?.folder?.id === id && (qr.folder.name = name)\n );\n state.folderRenamingLoading = false;\n },\n renameFolderFailure(state, e) {\n state.folderRenamingLoading = false;\n state.folderRenamingError = e;\n },\n // delete folder\n deleteFolderStart(state) {\n state.folderDeletingLoading = true;\n state.folderDeletingError = null;\n },\n deleteFolderSuccess(state, { id }) {\n state.folders = state.folders.filter((f) => f.id !== id);\n state.folderDeletingLoading = false;\n },\n deleteFolderFailure(state, e) {\n state.folderDeletingLoading = false;\n state.folderDeletingError = e;\n },\n selectQrCode(state, qrCode) {\n const qrCodeIdx = state.selectedQrCodes.findIndex(\n (code) => code === qrCode\n );\n if (qrCodeIdx === -1) state.selectedQrCodes.push(qrCode);\n else\n state.selectedQrCodes = state.selectedQrCodes.filter(\n (code) => code !== qrCode\n );\n },\n setQrCodeParams(state, { qrCode, prop, value }) {\n if (!qrCode || !prop) return;\n const qr = state.qrCodes.find((code) => code === qrCode);\n qr[prop] = value;\n },\n updateQrCodeNameStart(state) {\n state.updatingQrCodeError = null;\n },\n updateQrCodeNameFailure(state, e) {\n state.updatingQrCodeError = e;\n },\n moveQrCodesToFolderSuccess(state, { qrCodes, folder }) {\n qrCodes.forEach((qr) => {\n const prevFolder = qr.folder?.id || null;\n const nextFolder = folder?.id || null;\n state.folders.forEach((f) => {\n if (f.id === prevFolder) f.count -= 1;\n if (f.id === nextFolder) f.count += 1;\n });\n qr.folder = folder;\n });\n\n if (state.folderIdFilter && state.folderIdFilter !== folder?.id) {\n state.qrCodes = state.qrCodes.filter((qr) => !qrCodes.includes(qr));\n state.currentFolderQrCodesCount -= qrCodes.length;\n state.selectedQrCodes = state.selectedQrCodes.filter(\n (qr) => !qrCodes.includes(qr)\n );\n }\n },\n },\n actions: {\n async getFolders({ commit, rootGetters }) {\n try {\n commit(\"getFoldersStart\");\n const accountId = rootGetters[\"account/account\"]?.id;\n const { data } = await apollo.query({\n query: GET_FOLDERS,\n variables: { accountId: accountId },\n });\n commit(\"getFoldersSuccess\", serializeFolders(data));\n } catch (e) {\n commit(\"getFoldersFailure\", e);\n }\n },\n async getQrCodesList({ commit, rootGetters, getters }) {\n try {\n commit(\"getQrCodesListStart\");\n const { data } = await apollo.query({\n query: GET_QR_CODES_LIST,\n variables: serializeQrCodesListVariables(rootGetters, getters),\n });\n commit(\"getQrCodesListSuccess\", data);\n } catch (e) {\n console.log(e);\n commit(\"getQrCodesListFailure\", e);\n }\n },\n async getMoreQrCodesList({ commit, rootGetters, getters }) {\n try {\n if (getters[\"loadedAll\"]) return;\n commit(\"getMoreQrCodesListStart\");\n const { data } = await apollo.query({\n query: GET_QR_CODES_LIST,\n variables: serializeQrCodesListVariables(rootGetters, getters),\n });\n commit(\"getMoreQrCodesListSuccess\", data.qr_codes);\n } catch (e) {\n commit(\"getMoreQrCodesListFailure\", e);\n }\n },\n async createFolder({ commit, rootGetters }, newFolder) {\n try {\n commit(\"createFolderStart\");\n newFolder.accountId = rootGetters[\"account/account\"]?.id;\n newFolder.id = uuidv4();\n\n await apollo.query({\n query: CREATE_FOLDER,\n variables: newFolder,\n });\n\n newFolder.count = 0;\n commit(\"createFolderSuccess\", newFolder);\n } catch (e) {\n console.log(e);\n commit(\"createFolderFailure\", e);\n }\n },\n async renameFolder({ commit }, folderToRename) {\n try {\n commit(\"renameFolderStart\");\n await apollo.query({\n query: RENAME_FOLDER,\n variables: folderToRename,\n });\n\n commit(\"renameFolderSuccess\", folderToRename);\n } catch (e) {\n console.log(e);\n commit(\"renameFolderFailure\", e);\n }\n },\n async deleteFolder({ commit }, folderToDelete) {\n try {\n commit(\"deleteFolderStart\");\n\n await apollo.mutate({\n mutation: DELETE_FOLDER,\n variables: folderToDelete,\n });\n\n commit(\"deleteFolderSuccess\", folderToDelete);\n } catch (e) {\n console.log(e);\n commit(\"deleteFolderFailure\", e);\n }\n },\n async updateQrCodeName({ commit }, qrCode) {\n try {\n commit(\"updateQrCodeNameStart\");\n\n await apollo.mutate({\n mutation: UPDATE_QR_CODE_NAME,\n variables: { id: qrCode.id, name: qrCode.name },\n });\n } catch (e) {\n console.log(e);\n commit(\"updateQrCodeNameFailure\", e);\n }\n },\n\n async removeQrCodes({ dispatch, commit }, qrCodes) {\n const ids = qrCodes?.map((qr) => qr.id) ?? [];\n\n await apollo.query({\n query: REMOVE_QR_CODES,\n variables: { ids },\n });\n\n dispatch(\"getFolders\");\n dispatch(\"getQrCodesList\");\n commit(\"setSelectedQrCodes\");\n },\n async moveQrCodesToFolder(\n { dispatch, commit },\n { qrCodes = [], folder } = {}\n ) {\n const ids = qrCodes?.map((qr) => qr.id) ?? [];\n\n await apollo.query({\n query: MOVE_QR_CODES_TO_FOLDER,\n variables: { ids, folderId: folder?.id || null },\n });\n\n dispatch(\"getFolders\");\n dispatch(\"getQrCodesList\");\n commit(\"setSelectedQrCodes\");\n },\n async changeQrCodesStatus({ dispatch, commit }, { qrCodes = [], status }) {\n const ids = qrCodes?.map((qr) => qr.id) ?? [];\n\n await apollo.query({\n query: CHANGE_QR_CODES_STATUS,\n variables: { ids, status },\n });\n dispatch(\"getFolders\");\n dispatch(\"getQrCodesList\");\n commit(\"setSelectedQrCodes\");\n },\n },\n};\n","import gql from \"graphql-tag\";\n\nexport const GET_NEWS = gql`\n query getNews($accountId: uuid!, $limit: Int = 10, $offset: Int = 0) {\n news(\n where: {\n _or: [{ account_id: { _eq: $accountId } }, { is_public: { _eq: true } }]\n }\n order_by: { created_at: desc }\n limit: $limit\n offset: $offset\n ) {\n id\n created_at\n content\n link_title\n link_url\n is_public\n viewed_at\n }\n }\n`;\n\nexport const MARK_AS_VIEWED_NEWS = gql`\n mutation markAsViewedNews {\n update_news(where: {}, _set: { viewed_at: now }) {\n affected_rows\n }\n }\n`;\n","import { GET_NEWS, MARK_AS_VIEWED_NEWS } from \"@/services/news\";\nimport { defaultClient as apollo } from \"@/plugins/apollo/apollo-account\";\n\nconst initState = () => ({\n news: [],\n loadedAll: false,\n newsLoading: false,\n newsMoreLoading: false,\n newsError: null,\n offset: 0,\n limit: 10,\n});\n\nexport default {\n namespaced: true,\n state: initState(),\n getters: {\n news: ({ news }) => news,\n loadedAll: ({ loadedAll }) => loadedAll,\n newsLoading: ({ newsLoading }) => newsLoading,\n newsMoreLoading: ({ newsMoreLoading }) => newsMoreLoading,\n newsError: ({ newsError }) => newsError,\n offset: ({ offset }) => offset,\n limit: ({ limit }) => limit,\n notViewedNewsCount: ({ news }) =>\n news.reduce((acc, n) => {\n if (!n?.is_public && !n?.viewed_at) acc += 1;\n return acc;\n }, 0),\n },\n mutations: {\n reset(state) {\n Object.assign(state, initState());\n },\n // get news list\n getNewsStart(state) {\n state.loadedAll = false;\n state.offset = 0;\n\n state.newsLoading = true;\n state.newsError = null;\n state.news = [];\n },\n getNewsSuccess(state, news) {\n state.newsLoading = false;\n state.news = news;\n },\n getNewsFailure(state, e) {\n state.newsLoading = false;\n state.newsError = e;\n },\n // get more news list\n getMoreNewsStart(state) {\n state.newsMoreLoading = true;\n state.newsError = null;\n state.offset += state.limit;\n },\n getMoreNewsSuccess(state, news) {\n state.newsMoreLoading = false;\n state.news = [...state.news, ...(news ?? [])];\n if (news.length < state.limit) state.loadedAll = true;\n },\n getMoreNewsFailure(state, e) {\n state.offset = Math.max(0, state.offset - state.limit);\n state.newsMoreLoading = false;\n state.newsError = e;\n },\n markAsViewed(state) {\n const now = new Date();\n state.news.forEach((n) => (n.viewed_at = now));\n },\n },\n actions: {\n async getNews({ commit, rootGetters, getters }) {\n try {\n commit(\"getNewsStart\");\n const accountId = rootGetters[\"account/account\"]?.id;\n const { data } = await apollo.query({\n query: GET_NEWS,\n variables: {\n accountId: accountId,\n limit: getters[\"limit\"],\n offset: getters[\"offset\"],\n },\n });\n commit(\"getNewsSuccess\", data.news);\n } catch (e) {\n console.log(e);\n commit(\"getNewsFailure\", e);\n }\n },\n async getMoreNews({ commit, rootGetters, getters }) {\n try {\n if (getters[\"loadedAll\"]) return;\n commit(\"getMoreNewsStart\");\n const accountId = rootGetters[\"account/account\"]?.id;\n const { data } = await apollo.query({\n query: GET_NEWS,\n variables: {\n accountId: accountId,\n limit: getters[\"limit\"],\n offset: getters[\"offset\"],\n },\n });\n\n commit(\"getMoreNewsSuccess\", data.news);\n } catch (e) {\n commit(\"getMoreNewsFailure\", e);\n }\n },\n async markAsViewed({ getters, commit }) {\n try {\n if (!getters[\"notViewedNewsCount\"]) return;\n\n await apollo.query({ query: MARK_AS_VIEWED_NEWS });\n commit(\"markAsViewed\");\n } catch (e) {\n console.log(e);\n }\n },\n },\n};\n","import axios from \"@/plugins/axios\";\n\nconst signup = (credentials) => {\n return axios.post(\"/register\", credentials);\n};\nconst login = (credentials) => {\n return axios.post(\"/login\", credentials);\n};\nconst resetPassword = (credentials) => {\n return axios.post(\"/reset_password\", credentials);\n};\nconst changePassword = (credentials) => {\n return axios.post(\"/change-password\", credentials);\n};\nconst refreshTokens = (credentials) => {\n return axios.post(\"/refresh_tokens\", credentials);\n};\nconst logout = () => {\n return axios.post(\"/logout\");\n};\n\nexport default {\n signup,\n login,\n logout,\n resetPassword,\n refreshTokens,\n changePassword,\n};\n","import AuthService from \"@/services/auth\";\nimport cookies from \"cookie-universal\";\nimport i18n from \"@/plugins/i18n\";\n// import {defaultClient as apollo} from \"@/plugins/apollo/apollo-account\";\nimport { wsLink } from \"@/plugins/apollo/apollo-account\";\nlet refreshingPromise = null;\n\nexport default {\n namespaced: true,\n state: {},\n getters: {},\n mutations: {},\n actions: {\n async login({ dispatch }, { credentials, keepSignedIn } = {}) {\n try {\n const { data } = await AuthService.login(credentials);\n await dispatch(\"setTokens\", { ...data, keepSignedIn });\n // await this.$apolloHelpers.onLogin(data.accessToken)\n } catch (e) {\n console.log(e);\n dispatch(\n \"notification/showNotification\",\n {\n message: i18n.t(e.message || \"notifications:error:something_wrong\"),\n type: \"error\",\n },\n { root: true }\n );\n return Promise.reject(e);\n }\n },\n logout({ dispatch }) {\n return Promise.all([dispatch(\"setTokens\"), AuthService.logout()]);\n },\n signup(context, credentials) {\n try {\n return AuthService.signup(credentials);\n } catch (e) {\n return Promise.reject(e);\n }\n },\n async refreshToken({ dispatch }) {\n if (refreshingPromise) return refreshingPromise;\n // eslint-disable-next-line no-async-promise-executor\n refreshingPromise = new Promise(async (resolve) => {\n try {\n const refreshToken = cookies().get(\"refresh-token\");\n const res = await AuthService.refreshTokens({ refreshToken });\n await dispatch(\"setTokens\", { ...res.data, keepSignedIn: true });\n\n refreshingPromise = false;\n resolve(res.data?.accessToken);\n // todo need to refresh add http clients access tokens\n } catch (e) {\n console.log(\"e\", e);\n await dispatch(\"setTokens\");\n const url = new URL(\"login\", process.env.VUE_APP_BASE_URL);\n url.searchParams.set(\n \"redirect\",\n location.href.replace(process.env.VUE_APP_BASE_URL, \"\")\n );\n location.href = url;\n }\n });\n\n return refreshingPromise;\n },\n async resetPassword({ dispatch }, credentials) {\n try {\n await AuthService.resetPassword(credentials);\n } catch (e) {\n dispatch(\n \"notification/showNotification\",\n {\n message: i18n.t(e.message || \"notifications:error:something_wrong\"),\n type: \"error\",\n },\n { root: true }\n );\n return Promise.reject(e);\n }\n },\n async changePassword({ dispatch }, credentials) {\n try {\n await AuthService.changePassword(credentials);\n } catch (e) {\n dispatch(\n \"notification/showNotification\",\n {\n message: i18n.t(e.message || \"notifications:error:something_wrong\"),\n type: \"error\",\n },\n { root: true }\n );\n return Promise.reject(e);\n }\n },\n async setTokens(context, tokens = {}) {\n const c = cookies();\n const options = {\n maxAge: 24 * 60 * 60 * 1000,\n path: \"/\",\n };\n const { accessToken, refreshToken } = tokens;\n if (!accessToken || !refreshToken) {\n c.remove(\"access-token\");\n c.remove(\"refresh-token\");\n await wsLink?.subscriptionClient?.tryReconnect?.();\n return;\n }\n\n c.set(\"access-token\", accessToken, options);\n if (tokens.keepSignedIn) c.set(\"refresh-token\", refreshToken, options);\n wsLink?.subscriptionClient?.tryReconnect?.();\n },\n loginWithSocialLink({ dispatch, rootGetters }, network) {\n return new Promise((resolve, reject) => {\n try {\n const authURL = new URL(network, process.env.VUE_APP_AUTH_SERVER_URL);\n authURL.searchParams.set(\"language\", rootGetters[\"language\"]);\n const windowSize = \"width=700,height=700\";\n\n window.open(authURL, network, windowSize);\n window.loginCallBack = async (result) => {\n await dispatch(\"loginWithSocialLinkCallback\", result);\n // await this.$apolloHelpers.onLogin(result?.['access-token'])\n resolve(result);\n };\n } catch (error) {\n // todo catch errors in new window from server\n reject(new Error(\"Oops... Something went wrong!\"));\n }\n });\n },\n async loginWithSocialLinkCallback({ dispatch }, result) {\n await dispatch(\"setTokens\", {\n keepSignedIn: true,\n accessToken: result?.[\"access-token\"],\n refreshToken: result?.[\"refresh-token\"],\n });\n },\n loginWithSocialLinkSameWindow({ rootGetters }, network) {\n return new Promise((resolve, reject) => {\n try {\n const url = new URL(network, process.env.VUE_APP_AUTH_SERVER_URL);\n url.searchParams.set(\"language\", rootGetters[\"language\"]);\n window.location.href = url.toString();\n } catch (error) {\n // todo catch errors in new window from server\n reject(new Error(\"Oops... Something went wrong!\"));\n }\n });\n },\n },\n};\n","import axios from \"@/plugins/axios\";\nimport gql from \"graphql-tag\";\n\nconst uploadFile = (formData, onUploadProgress) => {\n const configs = {};\n if (onUploadProgress) configs.onUploadProgress = onUploadProgress;\n return axios.post(\"/upload\", formData, configs);\n};\n\nconst deleteFile = (variables) => {\n return axios.post(\"/delete\", variables);\n};\n\nexport const UPDATE_FILES_PARAMS = gql`\n mutation updateFilesParams(\n $filesKeysToRemove: [String!] = []\n $filesKeysToAdd: [String!] = []\n $qrCodeId: uuid = null\n ) {\n saved_files: update_files(\n where: { key: { _in: $filesKeysToAdd } }\n _set: { qr_code_id: $qrCodeId, unsaved: false }\n ) {\n affected_rows\n }\n unsaved_files: update_files(\n where: { key: { _in: $filesKeysToRemove } }\n _set: { unsaved: true }\n ) {\n affected_rows\n }\n }\n`;\n\nexport default {\n uploadFile,\n deleteFile,\n};\n","import FilesService, { UPDATE_FILES_PARAMS } from \"@/services/files\";\nimport { defaultClient as apollo } from \"@/plugins/apollo/apollo-account\";\n\nconst initState = () => ({\n uploadingFilesCount: 0,\n loading: false,\n filesKeysToAdd: [],\n filesKeysToRemove: [],\n});\n\nexport default {\n namespaced: true,\n state: initState(),\n getters: {\n filesKeysToAdd: ({ filesKeysToAdd }) => filesKeysToAdd,\n filesKeysToRemove: ({ filesKeysToRemove }) => filesKeysToRemove,\n uploading: ({ uploadingFilesCount }) => Boolean(uploadingFilesCount),\n loading: ({ loading }) => loading,\n },\n mutations: {\n reset(state) {\n Object.assign(state, initState());\n },\n uploadFileStart(state) {\n state.uploadingFilesCount += 1;\n },\n uploadFileSuccess(state) {\n state.uploadingFilesCount = Math.max(0, state.uploadingFilesCount + 1);\n },\n uploadFileFailure(state) {\n state.uploadingFilesCount = Math.max(0, state.uploadingFilesCount - 1);\n },\n deleteFilesStart(state) {\n state.loading = true;\n },\n deleteFilesSuccess(state) {\n state.loading = false;\n },\n deleteFilesFailure(state) {\n state.loading = false;\n },\n setFilesKeysToAdd(state, key = []) {\n state.filesKeysToAdd = key;\n },\n addFilesKeysToAdd(state, key = []) {\n state.filesKeysToAdd.push(key);\n console.log(\"filesKeysToAdd\", key);\n },\n setFilesKeysToRemove(state, key = []) {\n state.filesKeysToRemove = key;\n },\n addFilesKeysToRemove(state, key) {\n state.filesKeysToRemove.push(key);\n },\n },\n actions: {\n // unsaved === true - file will be removed when the next files cron job runs\n // ? we have two ways\n // first - upload file and immediately save check it as used\n // second - upload file and check as unsaved until the customer clicks save button after the click dispatch \"updateFileParams\"\n // then \"filesKeyToAdd\" will be checked as used; \"filesKeyToDelete\" will be checked as unsaved\n async uploadFile({ commit, rootGetters }, variables = {}) {\n try {\n if (!variables.file) return;\n\n commit(\"uploadFileStart\");\n const accountId = rootGetters[\"account/account\"]?.id;\n const formData = new FormData();\n formData.append(\"accountId\", accountId);\n formData.append(\"directory\", variables.directory);\n if (variables.name) formData.append(\"name\", variables.name);\n if (variables.unsaved) formData.append(\"unsaved\", variables.unsaved);\n formData.append(\"upload\", variables.file, variables.file.name);\n\n const { data } = await FilesService.uploadFile(\n formData,\n variables.onUploadProgress\n );\n\n const isSaved =\n variables.unsaved !== false || variables.unsaved !== \"false\";\n if (isSaved) commit(\"addFilesKeysToAdd\", data.key);\n commit(\"uploadFileSuccess\");\n return data;\n } catch (e) {\n console.log(e);\n commit(\"uploadFileFailure\");\n return Promise.reject(e);\n }\n },\n async deleteFiles({ commit }, keys) {\n try {\n commit(\"deleteFilesStart\");\n await FilesService.deleteFile({ keys });\n commit(\"deleteFilesSuccess\");\n } catch (e) {\n console.log(e);\n commit(\"deleteFilesFailure\");\n return Promise.reject(e);\n }\n },\n async updateFileParams({ commit, getters }, { qrCodeId = null } = {}) {\n try {\n const { filesKeysToAdd, filesKeysToRemove } = getters;\n await apollo.mutate({\n mutation: UPDATE_FILES_PARAMS,\n variables: { filesKeysToAdd, filesKeysToRemove, qrCodeId },\n });\n commit(\"setFilesKeysToAdd\");\n commit(\"setFilesKeysToRemove\");\n } catch (e) {\n console.log(e);\n }\n },\n },\n};\n","import gql from \"graphql-tag\";\nimport axios from \"axios\";\n\nexport const INSERT_QR_CODE = gql`\n mutation insertQrCode(\n $account_id: uuid!\n $organization_id: uuid = null\n $design_id: uuid!\n $preview_id: uuid = null\n $data_format: String!\n $type: String!\n $name: String!\n $status: String = \"temporary\"\n $content: jsonb!\n $key: String!\n $id: uuid!\n ) {\n insert_qr_codes(\n objects: {\n id: $id\n data_format: $data_format\n preview_id: $preview_id\n type: $type\n name: $name\n content: $content\n account_id: $account_id\n organization_id: $organization_id\n design_id: $design_id\n key: $key\n status: $status\n }\n on_conflict: {\n constraint: qr_codes_pkey\n update_columns: [content, name, preview_id, status]\n }\n ) {\n affected_rows\n }\n insert_qr_code_designs(\n objects: { id: $design_id, account_id: $account_id }\n on_conflict: { constraint: qr_code_designs_pkey, update_columns: [] }\n ) {\n affected_rows\n }\n }\n`;\n\nexport const UPDATE_QR_CODE = gql`\n mutation updateQrCode(\n $name: String!\n $content: jsonb!\n $id: uuid! # $status: String = \"paused\"\n ) {\n update_qr_codes(\n where: { id: { _eq: $id } }\n _set: {\n content: $content\n name: $name\n # status: $status\n }\n ) {\n affected_rows\n }\n }\n`;\n\nexport const GET_QR_CODE_DETAILS = gql`\n query getQrCodeDetails($key: String!) {\n qr_codes(where: { key: { _eq: $key } }) {\n data_format\n id\n key\n content\n preview_id\n design_id\n type\n name\n # status\n }\n files(where: { qr_code: { key: { _eq: $key } } }) {\n key\n size\n original_name\n }\n }\n`;\n\nexport const GET_ALL_QR_CODE_TYPES = gql`\n query getAllQrCodeTypes {\n qr_codes {\n type\n }\n }\n`;\nconst getYouTubeVideoDetails = (videoId) => {\n const url = new URL(\"videos\", \"https://content.googleapis.com/youtube/v3/\");\n url.searchParams.set(\"id\", videoId);\n url.searchParams.set(\"part\", \"snippet,contentDetails,statistics\");\n url.searchParams.set(\"key\", process.env.VUE_APP_GOOGLE_API_KEY);\n\n return axios.get(url);\n};\n\nexport default {\n getYouTubeVideoDetails,\n};\n","import { getTokenOrganizationId } from \"@/utils/token\";\n\nexport const MANAGER_APOLLO_CONTEXT = {\n headers: {\n \"x-hasura-role\": \"manager\",\n },\n};\n\nexport const getOrganizationHeader = (rootGetters) => {\n const activeOrganizationId =\n rootGetters[\"accountOrganizations/activeOrganization\"]?.id;\n return {\n \"x-hasura-organization-id\":\n activeOrganizationId || getTokenOrganizationId(),\n };\n};\n","import {\n creationQrCodeSteps,\n dynamicQrCodeWebsite,\n} from \"@/constants/qr-codes\";\nimport { defaultQrCodeName, getPageUrl } from \"@/utils/qr-code-templates\";\nimport { generateQrCodeSvg } from \"l2qr-generator-api/dist/client/index\";\nimport QrCodeService, {\n INSERT_QR_CODE,\n GET_QR_CODE_DETAILS,\n UPDATE_QR_CODE,\n GET_ALL_QR_CODE_TYPES,\n} from \"@/services/qrCode\";\nimport { svgToPngBlob } from \"@/utils/images-formats\";\nimport { defaultClient as apollo } from \"@/plugins/apollo/apollo-account\";\nimport { getOrganizationHeader } from \"@/constants/backoffice/apollo-client\";\n\nconst serializeNewQrCode = (rootGetters, getters, variables) => {\n const account_id = rootGetters[\"account/account\"]?.id;\n const organization_id =\n rootGetters[\"accountOrganizations/activeOrganization\"]?.id || null;\n\n const newQrCode = {\n ...getters.qrCode,\n name: getters.qrCode?.name || defaultQrCodeName(getters.qrCode),\n account_id,\n organization_id,\n ...variables,\n };\n\n delete newQrCode.__typename;\n\n return newQrCode;\n};\nconst serializeUpdatedQrCode = (getters) => ({\n id: getters.qrCode.id,\n content: getters.qrCode.content,\n name: getters.qrCode?.name || defaultQrCodeName(getters.qrCode),\n // status: getters.qrCode?.status || \"paused\",\n});\n\nconst initState = () => ({\n PREVIEW_WIDTH: 300,\n // qr-type | page-configs\n creationQrCodeStep: creationQrCodeSteps[0],\n activeQrCodeTemplate: dynamicQrCodeWebsite,\n qrCode: null,\n loading: false,\n error: null,\n shownPreviewLoader: false,\n shownPreviewMobile: false,\n shownQrCodeMobile: false,\n qrCodeConfigsRules: {},\n validationErrors: null,\n qrCodeForm: null,\n qrPreview: null,\n qrCodeFiles: [],\n qrCodeTypes: [],\n qrCodeTemplates: [],\n activeQrCodeConfig: null,\n});\n\nexport default {\n namespaced: true,\n state: initState(),\n getters: {\n PREVIEW_WIDTH: ({ PREVIEW_WIDTH }) => PREVIEW_WIDTH,\n activeQrCodeTemplate: ({ activeQrCodeTemplate }) => activeQrCodeTemplate,\n qrCode: ({ qrCode }) => qrCode,\n qrCodeConfigsRules: ({ qrCodeConfigsRules }) => qrCodeConfigsRules,\n creationQrCodeStep: ({ creationQrCodeStep }) => creationQrCodeStep,\n loading: ({ loading }) => loading,\n shownPreviewMobile: ({ shownPreviewMobile }) => shownPreviewMobile,\n shownQrCodeMobile: ({ shownQrCodeMobile }) => shownQrCodeMobile,\n validationErrors: ({ validationErrors }) => validationErrors,\n qrCodeForm: ({ qrCodeForm }) => qrCodeForm,\n qrCodeContent: ({ qrCode }) => qrCode?.content,\n qrPreview: ({ qrPreview }) => qrPreview,\n qrCodeFiles: ({ qrCodeFiles }) => qrCodeFiles,\n shownPreviewLoader: ({ shownPreviewLoader }) => shownPreviewLoader,\n qrCodeTypes: ({ qrCodeTypes }) => qrCodeTypes,\n qrCodeTemplates: ({ qrCodeTemplates }) => qrCodeTemplates,\n activeQrCodeConfig: ({ activeQrCodeConfig }) => activeQrCodeConfig,\n },\n mutations: {\n reset(state) {\n Object.assign(state, initState());\n },\n showPreviewLoader(state, bool) {\n state.shownPreviewLoader = bool;\n },\n setActiveQrCodeTemplate(state, qrCode) {\n state.activeQrCodeTemplate = qrCode;\n },\n setQrCodeConfigsRules(state, configsRules) {\n state.qrCodeConfigsRules = configsRules;\n },\n setQrCode(state, qrCode) {\n state.qrCode = qrCode;\n },\n updateQrCodeProps(state, { prop, value } = {}) {\n state.qrCode[prop] = value;\n },\n updateQrCodeConfigs(state, { prop, value } = {}) {\n state.activeQrCodeConfig[prop] = value;\n },\n updateCreationQrCodeStep(state, step) {\n state.creationQrCodeStep = step;\n },\n showPreviewMobile(state, bool = false) {\n state.shownPreviewMobile = bool;\n },\n showQrCodeMobile(state, bool = false) {\n state.shownQrCodeMobile = bool;\n },\n setValidationErrors(state, errors = null) {\n state.validationErrors = errors;\n },\n setQrCodeForm(state, form = null) {\n state.qrCodeForm = form;\n },\n generateQrPreview(state, qrPreview) {\n state.qrPreview = qrPreview;\n },\n createQrCodeStart(state) {\n state.loading = true;\n state.error = null;\n },\n createQrCodeSuccess(state) {\n state.loading = false;\n },\n createQrCodeFailure(state, e) {\n state.loading = false;\n state.error = e;\n },\n setQrCodeFiles(state, files = []) {\n state.qrCodeFiles = files;\n },\n addQrCodeFiles(state, file) {\n state.qrCodeFiles.push(file);\n },\n removeQrCodeFiles(state, file) {\n state.qrCodeFiles = state.qrCodeFiles.filter((f) => f.key !== file.key);\n },\n getQrCodeDetailsStart(state) {\n state.loading = true;\n state.error = null;\n state.qrCode = null;\n state.qrCodeFiles = null;\n },\n getQrCodeDetailsSuccess(state, { files, qrCode }) {\n state.loading = false;\n state.qrCode = qrCode;\n state.qrCodeFiles = files;\n },\n getQrCodeDetailsFailure(state, e) {\n state.loading = false;\n state.error = e;\n state.qrCode = null;\n state.qrCodeFiles = null;\n },\n setQrCodeTypes(state, types) {\n state.qrCodeTypes = types;\n },\n setQrCodeTemplates(state, templates = []) {\n state.qrCodeTemplates = templates;\n },\n setActiveQrCodeConfig(state, activeQrCodeConfig) {\n state.activeQrCodeConfig = activeQrCodeConfig;\n },\n },\n actions: {\n generateQrPreview({ getters, commit }) {\n let content = getters.qrCodeContent;\n let format = getters.qrCode.data_format;\n if (getters.qrCode.type === \"dynamic\") {\n content = getPageUrl(getters.qrCode.key);\n format = \"URL\";\n }\n if (\n getters.qrCode.type === \"static\" &&\n getters.qrCode.data_format === \"URL\"\n )\n content = getters.qrCodeContent.url;\n if (\n getters.qrCode.type === \"static\" &&\n getters.qrCode.data_format === \"text\"\n )\n content = getters.qrCodeContent.text;\n if (getters.validationErrors) {\n format = \"URL\";\n content = \"\";\n }\n\n const qrPreview = generateQrCodeSvg(content, {\n size: \"100%\",\n format,\n });\n\n commit(\"generateQrPreview\", qrPreview);\n },\n async createQrCode(\n { getters, dispatch, rootGetters, commit },\n variables = {}\n ) {\n try {\n commit(\"createQrCodeStart\");\n\n const qrCode = serializeNewQrCode(rootGetters, getters, variables);\n await apollo.mutate({\n mutation: INSERT_QR_CODE,\n context: {\n headers: {\n ...getOrganizationHeader(rootGetters),\n },\n },\n variables: qrCode,\n });\n await dispatch(\n \"files/updateFileParams\",\n { qrCodeId: qrCode.id },\n { root: true }\n );\n\n commit(\"createQrCodeSuccess\");\n commit(\"setQrCodeFiles\");\n } catch (e) {\n commit(\"createQrCodeFailure\", e);\n console.log(e);\n return Promise.reject(e);\n }\n },\n async updateQrCode({ getters, dispatch, commit }) {\n try {\n commit(\"createQrCodeStart\");\n\n const qrCode = serializeUpdatedQrCode(getters);\n await apollo.mutate({\n mutation: UPDATE_QR_CODE,\n variables: qrCode,\n });\n await dispatch(\n \"files/updateFileParams\",\n { qrCodeId: qrCode.id },\n { root: true }\n );\n\n commit(\"createQrCodeSuccess\");\n commit(\"setQrCodeFiles\");\n } catch (e) {\n commit(\"createQrCodeFailure\", e);\n console.log(e);\n return Promise.reject(e);\n }\n },\n async uploadQrPreview({ getters, dispatch }, { preview, filename } = {}) {\n // create file\n const previewBlob = await svgToPngBlob(preview || getters.qrPreview, {\n width: getters.PREVIEW_WIDTH,\n });\n const previewFile = new File(\n [previewBlob],\n `${filename || getters.qrCode.key}.png`,\n {\n type: \"image/png\",\n }\n );\n\n // upload file\n return dispatch(\n \"files/uploadFile\",\n {\n directory: \"preview\",\n file: previewFile,\n },\n { root: true }\n );\n },\n async getQrCodeDetails({ commit }, key) {\n try {\n commit(\"getQrCodeDetailsStart\");\n const { data } = await apollo.query({\n query: GET_QR_CODE_DETAILS,\n variables: { key },\n });\n\n const qrCode = data.qr_codes?.[0];\n if (!qrCode) throw Error(\"Qr code is not found\");\n\n commit(\"getQrCodeDetailsSuccess\", { qrCode, files: data.files });\n } catch (e) {\n commit(\"getQrCodeDetailsFailure\", e);\n console.log(e);\n return Promise.reject(e);\n }\n },\n async getAllQrCodeTypes({ commit }) {\n try {\n const { data } = await apollo.query({\n query: GET_ALL_QR_CODE_TYPES,\n });\n\n const types = data.qr_codes.map((qrCode) => qrCode.type);\n commit(\"setQrCodeTypes\", types);\n } catch (error) {\n console.error(error);\n }\n },\n async getYouTubeVideoDetails(context, videoId) {\n try {\n const { data } = await QrCodeService.getYouTubeVideoDetails(videoId);\n return data;\n } catch (e) {\n console.log(e);\n return new Error(\"Oops... Something went wrong.\");\n }\n },\n },\n};\n","export default {\n namespaced: true,\n state: {\n MOBILE_WIDTH: 990,\n isMobile: false,\n },\n getters: {\n MOBILE_WIDTH: ({ MOBILE_WIDTH }) => MOBILE_WIDTH,\n isMobile: ({ isMobile }) => isMobile,\n },\n mutations: {\n toggleIsMobile(state, bool) {\n state.isMobile = bool;\n },\n },\n // actions: {}\n};\n","import gql from \"graphql-tag\";\n\nexport const GET_QR_CODE_DETAILS = gql`\n query getQrCodeDetails($key: String!, $scansFilter: qr_code_scans_bool_exp!) {\n qr_codes(where: { key: { _eq: $key } }) {\n id\n name\n created_at\n type\n key\n data_format\n status\n content\n folder {\n id\n name\n }\n preview {\n key\n }\n # scans counters\n unique_scans: scans_aggregate(distinct_on: [ip_address, user_agent]) {\n aggregate {\n count\n }\n }\n all_scans: scans_aggregate {\n aggregate {\n count\n }\n }\n # campaign\n campaign_medium\n campaign_start\n campaign_end\n print_run\n # scans\n scans(where: $scansFilter) {\n created_at\n city\n country\n user_agent\n }\n }\n }\n`;\n\nexport const UPDATE_QR_CAMPAIGN_INFO = gql`\n mutation updateQrCampaignInfo(\n $id: uuid!\n $campaign_medium: String\n $print_run: Int\n $campaign_start: timestamptz\n $campaign_end: timestamptz\n ) {\n update_qr_codes(\n where: { id: { _eq: $id } }\n _set: {\n campaign_medium: $campaign_medium\n print_run: $print_run\n campaign_start: $campaign_start\n campaign_end: $campaign_end\n }\n ) {\n affected_rows\n }\n }\n`;\n\nexport const RESET_QR_CODE_SCANS = gql`\n mutation resetQrCodeScans($qrCodeId: uuid!) {\n delete_qr_code_scans(where: { qr_code_id: { _eq: $qrCodeId } }) {\n affected_rows\n }\n }\n`;\nexport const GET_QR_CODE_SCANS = gql`\n query getQrCodeScans($scansFilter: qr_code_scans_bool_exp!) {\n qr_code_scans(where: $scansFilter) {\n created_at\n city\n country\n user_agent\n }\n }\n`;\n","import {\n GET_QR_CODE_DETAILS,\n UPDATE_QR_CAMPAIGN_INFO,\n RESET_QR_CODE_SCANS,\n GET_QR_CODE_SCANS,\n} from \"@/services/qrCodeDetails\";\nimport moment from \"moment\";\nimport { defaultClient as apollo } from \"@/plugins/apollo/apollo-account\";\n\nconst serializeScansFilter = (getters) => {\n return {\n created_at: {\n _gte: getters.filters.start,\n _lte: getters.filters.end,\n },\n };\n};\n\nconst initState = () => ({\n qrCode: null,\n loading: false,\n errors: false,\n filters: {\n start: moment().subtract(14, \"days\").format(\"MM-DD-YYYY\"),\n end: moment().add(1, \"day\").format(\"MM-DD-YYYY\"),\n periodType: \"day\",\n },\n});\n\nexport default {\n namespaced: true,\n state: initState(),\n getters: {\n qrCode: ({ qrCode }) => qrCode,\n loading: ({ loading }) => loading,\n errors: ({ errors }) => errors,\n filters: ({ filters }) => filters,\n allScans: ({ qrCode }) => qrCode?.all_scans?.aggregate?.count ?? 0,\n uniqueScans: ({ qrCode }) => qrCode?.unique_scans?.aggregate?.count ?? 0,\n },\n mutations: {\n reset(state) {\n Object.assign(state, initState());\n },\n setFilters(state, filters) {\n state.filters = { ...state.filters, ...filters };\n },\n setQrCodeParams(state, { prop, value }) {\n if (!prop) return;\n state.qrCode[prop] = value;\n },\n getQrCodeDetailsStart(state) {\n state.loading = true;\n state.error = null;\n state.qrCode = null;\n },\n getQrCodeDetailsSuccess(state, qrCode) {\n state.loading = false;\n state.qrCode = qrCode;\n },\n getQrCodeDetailsFailure(state, e) {\n state.loading = false;\n state.error = e;\n state.qrCode = null;\n },\n updateQrCampaignInfo(state, qrCode) {\n Object.assign(state.qrCode, qrCode);\n },\n resetQrCodeScans(state) {\n Object.assign(state.qrCode, {\n unique_scans: { aggregate: { count: 0 } },\n all_scans: { aggregate: { count: 0 } },\n scans: [],\n });\n },\n getQrCodeScans(state, scans) {\n state.qrCode.scans = scans ?? [];\n },\n },\n actions: {\n async getQrCodeDetails({ commit, getters }, key) {\n try {\n commit(\"getQrCodeDetailsStart\");\n const { data } = await apollo.query({\n query: GET_QR_CODE_DETAILS,\n variables: { key, scansFilter: serializeScansFilter(getters) },\n });\n\n const qrCode = data.qr_codes?.[0];\n if (!qrCode) throw Error(\"Qr code is not found\");\n if (qrCode.type === \"static\") throw Error(\"Qr code is not found\");\n\n commit(\"getQrCodeDetailsSuccess\", qrCode);\n } catch (e) {\n commit(\"getQrCodeDetailsFailure\", e);\n console.log(e);\n return Promise.reject(e);\n }\n },\n async updateQrCampaignInfo({ commit }, variables) {\n try {\n await apollo.mutate({\n mutation: UPDATE_QR_CAMPAIGN_INFO,\n variables,\n });\n\n commit(\"updateQrCampaignInfo\", variables);\n } catch (e) {\n console.log(e);\n return Promise.reject(\"Whoops... Something went wrong.\");\n }\n },\n async resetQrCodeScans({ commit, getters }, variables) {\n try {\n const qrCodeId = getters[\"qrCode\"]?.id;\n if (!qrCodeId) throw Error();\n\n await apollo.mutate({\n mutation: RESET_QR_CODE_SCANS,\n variables: { qrCodeId },\n });\n\n commit(\"resetQrCodeScans\", variables);\n } catch (e) {\n console.log(e);\n return Promise.reject(\"notifications:error:something_wrong\");\n }\n },\n async getQrCodeScans({ commit, getters }) {\n try {\n const { data } = await apollo.query({\n query: GET_QR_CODE_SCANS,\n variables: {\n scansFilter: {\n ...serializeScansFilter(getters),\n qr_code: { key: { _eq: getters.qrCode?.key } },\n },\n },\n });\n\n const scans = data.qr_code_scans;\n\n commit(\"getQrCodeScans\", scans);\n } catch (e) {\n console.log(e);\n }\n },\n },\n};\n","import gql from \"graphql-tag\";\n\nexport const GET_QR_CODE_DESIGN = gql`\n query getQrCodeDesign($key: String!) {\n qr_code_designs(where: { qr_code: { key: { _eq: $key } } }) {\n id\n background_color\n foreground_color\n foreground_color_2\n\n is_gradient\n gradient_angle\n is_radial_gradient\n\n # patterns\n version\n\n # frame\n frame_name\n frame_text\n frame_color\n frame_svg\n frame_color_2\n frame_font\n\n # marker\n custom_marker_color\n marker_left_inner_color\n marker_right_inner_color\n marker_bottom_inner_color\n marker_left_outer_color\n marker_right_outer_color\n marker_bottom_outer_color\n marker_left_template\n marker_right_template\n marker_bottom_template\n # marker_left_svg\n # marker_right_svg\n # marker_bottom_svg\n\n # images\n # image_url\n # background_image_url\n image_key\n background_image_key\n\n # shapes\n # shapes\n\n # logo\n # logo_name\n logo_type\n # logo_url\n logo_key\n\n qr_code {\n id\n content\n data_format\n preview_id\n status\n type\n key\n }\n }\n }\n`;\n\nexport const UPDATE_QR_CODE_KEY = gql`\n mutation updateQrCodeKey($id: uuid!, $key: String!) {\n update_qr_codes(where: { id: { _eq: $id } }, _set: { key: $key }) {\n affected_rows\n }\n }\n`;\n\nexport const UPDATE_QR_CODE_DESIGN = gql`\n mutation updateQrCodeDesign(\n $id: uuid!\n $oldPreviewId: uuid = null\n $qrCodePreviewId: uuid!\n $newDesign: qr_code_designs_set_input!\n ) {\n remove_old_preview: update_files(\n where: { id: { _eq: $oldPreviewId } }\n _set: { unsaved: true }\n ) {\n affected_rows\n }\n update_qr_codes(\n where: { design_id: { _eq: $id } }\n _set: { preview_id: $qrCodePreviewId }\n ) {\n affected_rows\n }\n update_qr_code_designs(where: { id: { _eq: $id } }, _set: $newDesign) {\n affected_rows\n }\n }\n`;\n","import qrDesignOptions from \"l2qr-generator-api/src/constants/options\";\nimport { qrCodeMarkers } from \"l2qr-generator-api/src/constants/assets\";\nimport { defaultClient as apollo } from \"@/plugins/apollo/apollo-account\";\nimport {\n GET_QR_CODE_DESIGN,\n UPDATE_QR_CODE_DESIGN,\n UPDATE_QR_CODE_KEY,\n} from \"@/services/qrDesign\";\nimport {\n getColorType,\n getFrameSvg,\n getMarkersSvg,\n getQrDesignImageUrl,\n} from \"@/utils/generator\";\n\nconst getInitialState = () => ({\n shownDownloadPopup: false,\n shownVectorPopup: false,\n qrDataFormat: \"URL\",\n activeStep: 1,\n\n disabledToggles: false,\n\n isEditingSwitch: false,\n isScanTrackingSwitch: false,\n disabledIsEditingSwitch: false,\n disabledScanTrackingSwitch: false,\n\n svgText: null,\n isLoadingQr: false,\n hadInput: false,\n loadingTimerId: null,\n LOADING_DELAY: 1200,\n\n content: \"\",\n qrCodeInstance: null,\n qrCodeDesign: { ...qrDesignOptions },\n markers: qrCodeMarkers[0]?.value,\n logoName: null,\n frameName: null,\n colorType: \"solid\",\n // frame_name: null,\n // shapes: 'squares',\n // markers: 'square-square',\n // logo_name: null,\n // foreground_color: '#000000',\n qrCode: null,\n});\n\nexport const serializeQrCodeDesign = async (qrCodeDesign) => {\n const [markerSvg, frameSvg, backgroundImageUrl, imageUrl, logoUrl] =\n await Promise.all([\n getMarkersSvg(qrCodeDesign.marker_left_template),\n getFrameSvg(qrCodeDesign.frame_name),\n getQrDesignImageUrl(qrCodeDesign.background_image_key),\n getQrDesignImageUrl(qrCodeDesign.image_key),\n getQrDesignImageUrl(qrCodeDesign.logo_key),\n ]);\n\n return {\n ...qrCodeDesign,\n frame_svg: frameSvg,\n marker_left_svg: markerSvg,\n marker_right_svg: markerSvg,\n marker_bottom_svg: markerSvg,\n background_image_url: backgroundImageUrl,\n image_url: imageUrl,\n logo_url: logoUrl,\n };\n};\n\nconst serializeUpdateQrCodeDesign = (getters, fileDetails) => {\n const {\n qrCodeDesign,\n frameName,\n markers,\n backgroundImageKey,\n imageKey,\n logoKey,\n } = getters;\n\n return {\n id: qrCodeDesign.id,\n oldPreviewId: qrCodeDesign.qr_code.preview_id,\n qrCodePreviewId: fileDetails.id,\n newDesign: {\n background_color: qrCodeDesign.background_color,\n foreground_color: qrCodeDesign.foreground_color,\n foreground_color_2: qrCodeDesign.foreground_color_2,\n is_gradient: qrCodeDesign.is_gradient,\n gradient_angle: qrCodeDesign.gradient_angle,\n is_radial_gradient: qrCodeDesign.is_radial_gradient,\n version: qrCodeDesign.version,\n frame_svg: null,\n frame_name: frameName,\n frame_text: qrCodeDesign.frame_text,\n frame_color: qrCodeDesign.frame_color,\n frame_color_2: qrCodeDesign.frame_color_2,\n frame_font: qrCodeDesign.frame_font,\n custom_marker_color: qrCodeDesign.custom_marker_color,\n marker_left_inner_color: qrCodeDesign.marker_left_inner_color,\n marker_right_inner_color: qrCodeDesign.marker_right_inner_color,\n marker_bottom_inner_color: qrCodeDesign.marker_bottom_inner_color,\n marker_left_outer_color: qrCodeDesign.marker_left_outer_color,\n marker_right_outer_color: qrCodeDesign.marker_right_outer_color,\n marker_bottom_outer_color: qrCodeDesign.marker_bottom_outer_color,\n marker_left_template: markers,\n marker_right_template: markers,\n marker_bottom_template: markers,\n marker_left_svg: null,\n marker_right_svg: null,\n marker_bottom_svg: null,\n image_url: null,\n background_image_url: null,\n background_image_key: backgroundImageKey,\n image_key: imageKey,\n shapes: qrCodeDesign.shapes,\n // logo_name: qrCodeDesign.logo_name,\n logo_url: null,\n logo_type: qrCodeDesign.logo_type,\n logo_key: logoKey,\n },\n };\n};\n\nexport default {\n namespaced: true,\n state: {\n shownDownloadPopup: false,\n shownVectorPopup: false,\n qrDataFormat: \"URL\",\n activeStep: 1,\n\n disabledToggles: false,\n\n isEditingSwitch: false,\n isScanTrackingSwitch: false,\n disabledIsEditingSwitch: false,\n disabledScanTrackingSwitch: false,\n\n qrCodeSvg: null,\n isLoadingQr: false,\n hadInput: false,\n loadingTimerId: null,\n LOADING_DELAY: 1200,\n\n content: \"\",\n qrCodeInstance: null,\n qrCodeDesign: { ...qrDesignOptions },\n\n markers: qrCodeMarkers[0]?.value,\n logoName: null,\n frameName: null,\n colorType: \"solid\",\n backgroundImageKey: null,\n imageKey: null,\n logoKey: null,\n\n // frame_name: null,\n // shapes: 'squares',\n // markers: 'square-square',\n // logo_name: null,\n // foreground_color: '#000000',\n qrCode: null,\n },\n getters: {\n translations: ({ translations }) => translations,\n shownDownloadPopup: ({ shownDownloadPopup }) => shownDownloadPopup,\n shownVectorPopup: ({ shownVectorPopup }) => shownVectorPopup,\n shownScanTrackingPopup: ({ shownScanTrackingPopup }) =>\n shownScanTrackingPopup,\n shownUploadFileMessage: ({ shownUploadFileMessage }) =>\n shownUploadFileMessage,\n activeStep: ({ activeStep }) => activeStep,\n\n isEditingSwitch: ({ isEditingSwitch }) => isEditingSwitch,\n isScanTrackingSwitch: ({ isScanTrackingSwitch }) => isScanTrackingSwitch,\n disabledIsEditingSwitch: ({ disabledIsEditingSwitch }) =>\n disabledIsEditingSwitch,\n disabledScanTrackingSwitch: ({ disabledScanTrackingSwitch }) =>\n disabledScanTrackingSwitch,\n isDynamicQrCode: ({ isScanTrackingSwitch, isEditingSwitch }) =>\n isScanTrackingSwitch || isEditingSwitch,\n\n isLoadingQr: ({ isLoadingQr }) => isLoadingQr,\n hadInput: ({ hadInput }) => hadInput,\n disabledPreview: ({ isLoadingQr, hadInput }) => !hadInput || isLoadingQr,\n loadingTimerId: ({ loadingTimerId }) => loadingTimerId,\n qrDataFormat: ({ qrDataFormat }) => qrDataFormat,\n qrCodeSvg: ({ qrCodeSvg }) => qrCodeSvg,\n\n LOADING_DELAY: ({ LOADING_DELAY }) => LOADING_DELAY,\n\n // frame_name: ({frame_name}) => frame_name,\n // shapes: ({shapes}) => shapes,\n // markers: ({markers}) => markers,\n // logo_name: ({logo_name}) => logo_name,\n // foreground_color: ({foreground_color}) => foreground_color,\n markers: ({ markers }) => markers,\n logoName: ({ logoName }) => logoName,\n frameName: ({ frameName }) => frameName,\n backgroundImageKey: ({ backgroundImageKey }) => backgroundImageKey,\n imageKey: ({ imageKey }) => imageKey,\n logoKey: ({ logoKey }) => logoKey,\n\n colorType: ({ colorType }) => colorType,\n getQrCodeToDesignKey: ({ qrCodeToDesignKey }) => qrCodeToDesignKey,\n\n qrCodeInstance: ({ qrCodeInstance }) => qrCodeInstance,\n qrCodeDesign: ({ qrCodeDesign }) => qrCodeDesign,\n qrCode: ({ qrCode }) => qrCode,\n },\n mutations: {\n reset(state) {\n Object.assign(state, getInitialState());\n },\n\n showDownloadPopup(state, bool) {\n state.shownDownloadPopup = bool;\n },\n showVectorPopup(state, bool) {\n state.shownVectorPopup = bool;\n },\n showScanTrackingPopup(state, bool) {\n state.shownScanTrackingPopup = bool;\n },\n showUploadFileMessage(state, bool) {\n state.shownUploadFileMessage = bool;\n },\n\n generateQrStart(state, timerId) {\n state.isLoadingQr = true;\n state.loadingTimerId = timerId;\n },\n generateQrSuccess(state, qrCodeInstance) {\n state.isLoadingQr = false;\n state.loadingTimerId = null;\n state.qrCodeInstance = qrCodeInstance;\n state.hadInput = true;\n },\n generateQrFailure(state) {\n state.isLoadingQr = false;\n state.loadingTimerId = null;\n },\n setSvgText(state, svgText) {\n state.svgText = svgText;\n },\n\n setQrDataFormat(state, qrDataFormat = \"URL\") {\n state.qrDataFormat = qrDataFormat;\n },\n\n setContent(state, { content = \"\", type } = {}) {\n state[type || state.qrDataFormat] = content;\n },\n setFrameName(state, frame) {\n state.frameName = frame;\n },\n setBackgroundImageKey(state, backgroundImageKey) {\n state.backgroundImageKey = backgroundImageKey;\n },\n setImageKey(state, imageKey) {\n state.imageKey = imageKey;\n },\n setLogoKey(state, logoKey) {\n state.logoKey = logoKey;\n },\n // setShapes(state, shapes) {\n // state.shapes = shapes\n // },\n setMarkers(state, markers) {\n state.markers = markers;\n },\n setForegroundColor(state, color) {\n state.foreground_color = color;\n },\n setLogoName(state, logo) {\n state.logoName = logo;\n },\n setIsDynamicQrCode(state, bool) {\n state.isDynamicQrCode = bool;\n },\n setColorType(state, color) {\n state.colorType = color;\n },\n setIsEditingSwitch(state, bool) {\n state.isEditingSwitch = bool;\n },\n setIsScanTrackingSwitch(state, bool) {\n state.isScanTrackingSwitch = bool;\n },\n setDisabledIsEditingSwitch(state, bool) {\n state.disabledIsEditingSwitch = bool;\n },\n setDisabledScanTrackingSwitch(state, bool) {\n state.disabledScanTrackingSwitch = bool;\n },\n setActiveStep(state, step) {\n state.activeStep = step;\n },\n updateQrCode(state, qrCode) {\n state.qrCode = qrCode;\n },\n setDisabledToggles(state, bool) {\n state.disabledToggles = bool;\n },\n setQrCodeDesign(state, qrCodeDesign = { ...qrDesignOptions }) {\n const newDesign = {};\n for (const prop in qrCodeDesign) {\n // if (!(prop in state.qrCodeDesign)) continue;\n newDesign[prop] = qrCodeDesign[prop];\n }\n Object.assign(state.qrCodeDesign, newDesign);\n },\n setQrCodeDesignKey(state, qrCodeToDesignKey = null) {\n state.shownDesignPopup = Boolean(qrCodeToDesignKey);\n state.qrCodeToDesignKey = qrCodeToDesignKey;\n state.qrCodeDesignStep = \"main\";\n state.setQrCodeInstance = null;\n },\n setQrCodeInstance(state, qrCodeInstance) {\n state.qrCodeInstance = qrCodeInstance;\n },\n setQrCodeSvg(state, qrCodeSvg) {\n state.qrCodeSvg = qrCodeSvg;\n },\n getQrCodeDesignStart(state) {\n state.loadingQrCodeDesign = true;\n state.qrCodeDesign = null;\n },\n getQrCodeDesignSuccess(state, qrCodeDesign) {\n state.loadingQrCodeDesign = false;\n state.qrCodeDesign = qrCodeDesign;\n state.frameName = qrCodeDesign.frame_name;\n state.markers = qrCodeDesign.marker_left_template;\n state.backgroundImageKey = qrCodeDesign.background_image_key;\n state.imageKey = qrCodeDesign.image_key;\n state.logoKey = qrCodeDesign.logo_key;\n state.colorType = getColorType(qrCodeDesign);\n },\n getQrCodeDesignFailure(state, e) {\n state.loadingQrCodeDesign = false;\n state.qrCodeDesignError = e;\n },\n },\n actions: {\n async getQrCodeDesign({ commit }, key) {\n try {\n commit(\"getQrCodeDesignStart\");\n const { data } = await apollo.query({\n query: GET_QR_CODE_DESIGN,\n variables: { key },\n });\n const qrCodeDesign = await serializeQrCodeDesign(\n data.qr_code_designs?.[0]\n );\n commit(\"getQrCodeDesignSuccess\", qrCodeDesign);\n } catch (e) {\n commit(\"getQrCodeDesignFailure\", e);\n }\n },\n async updateQrCodeKey({ commit }, variables) {\n try {\n await apollo.mutate({\n mutation: UPDATE_QR_CODE_KEY,\n variables,\n });\n commit(\"updateQrCodeKeySuccess\", variables);\n commit(\"manage/updateQrCodeListItem\", variables, { root: true });\n } catch (e) {\n console.log(e);\n return Promise.reject(\"popup:design_qr_code:error:already_taken\");\n }\n },\n async updateQrCodeDesign({ getters, dispatch }) {\n // upload file\n const fileDetails = await dispatch(\n \"qrCode/uploadQrPreview\",\n {\n preview: getters.qrCodeSvg,\n filename: getters.qrCodeDesign.qr_code.key,\n },\n { root: true }\n );\n\n const variables = serializeUpdateQrCodeDesign(getters, fileDetails);\n\n await apollo.mutate({\n mutation: UPDATE_QR_CODE_DESIGN,\n variables,\n });\n\n await dispatch(\n \"files/updateFileParams\",\n { qrCodeId: getters.qrCodeDesign.qr_code.id },\n { root: true }\n );\n\n return {\n previewKey: fileDetails.key,\n qrCodeId: getters.qrCodeDesign.qr_code.id,\n };\n },\n },\n};\n","import {\n GET_QR_CODE_DESIGN,\n UPDATE_QR_CODE_KEY,\n UPDATE_QR_CODE_DESIGN,\n} from \"@/services/qrDesign\";\nimport { defaultClient as apollo } from \"@/plugins/apollo/apollo-account\";\nimport { serializeQrCodeDesign } from \"@/store/mainNewGenerator\";\n\nconst serializeUpdateQrCodeDesign = (qrCodeDesign, fileDetails) => {\n return {\n id: qrCodeDesign.id,\n oldPreviewId: qrCodeDesign.qr_code.preview_id,\n qrCodePreviewId: fileDetails.id,\n newDesign: {\n background_color: qrCodeDesign.background_color,\n foreground_color: qrCodeDesign.foreground_color,\n foreground_color_2: qrCodeDesign.foreground_color_2,\n is_gradient: qrCodeDesign.is_gradient,\n gradient_angle: qrCodeDesign.gradient_angle,\n is_radial_gradient: qrCodeDesign.is_radial_gradient,\n logo_url: qrCodeDesign.logo_url,\n version: qrCodeDesign.version,\n size: qrCodeDesign.size,\n frame_svg: qrCodeDesign.frame_svg,\n frame_name: qrCodeDesign.frame_name,\n frame_text: qrCodeDesign.frame_text,\n frame_color: qrCodeDesign.frame_color,\n frame_color_2: qrCodeDesign.frame_color_2,\n frame_font: qrCodeDesign.frame_font,\n custom_marker_color: qrCodeDesign.custom_marker_color,\n marker_left_inner_color: qrCodeDesign.marker_left_inner_color,\n marker_right_inner_color: qrCodeDesign.marker_right_inner_color,\n marker_bottom_inner_color: qrCodeDesign.marker_bottom_inner_color,\n marker_left_outer_color: qrCodeDesign.marker_left_outer_color,\n marker_right_outer_color: qrCodeDesign.marker_right_outer_color,\n marker_bottom_outer_color: qrCodeDesign.marker_bottom_outer_color,\n marker_left_template: qrCodeDesign.marker_left_template,\n marker_right_template: qrCodeDesign.marker_right_template,\n marker_bottom_template: qrCodeDesign.marker_bottom_template,\n marker_left_svg: qrCodeDesign.marker_left_svg,\n marker_right_svg: qrCodeDesign.marker_right_svg,\n marker_bottom_svg: qrCodeDesign.marker_bottom_svg,\n image_url: qrCodeDesign.image_url,\n background_image_url: qrCodeDesign.background_image_url,\n shapes: qrCodeDesign.shapes,\n logo_name: qrCodeDesign.logo_name,\n logo_type: qrCodeDesign.logo_type,\n },\n };\n};\n\nconst initState = () => ({\n shownDesignPopup: false,\n qrCodeToDesignKey: null,\n loadingQrCodeDesign: false,\n qrCodeDesign: null,\n qrCodeDesignError: null,\n qrCodeDesignStep: \"main\",\n qrCodeInstance: null,\n qrCodeSvg: null,\n});\n\nexport default {\n namespaced: true,\n state: initState(),\n getters: {\n shownDesignPopup: ({ shownDesignPopup }) => shownDesignPopup,\n qrCodeToDesignKey: ({ qrCodeToDesignKey }) => qrCodeToDesignKey,\n loadingQrCodeDesign: ({ loadingQrCodeDesign }) => loadingQrCodeDesign,\n qrCodeDesign: ({ qrCodeDesign }) => qrCodeDesign,\n qrCodeDesignError: ({ qrCodeDesignError }) => qrCodeDesignError,\n qrCodeDesignStep: ({ qrCodeDesignStep }) => qrCodeDesignStep,\n qrCodeInstance: ({ qrCodeInstance }) => qrCodeInstance,\n qrCodeSvg: ({ qrCodeSvg }) => qrCodeSvg,\n },\n mutations: {\n reset(state) {\n Object.assign(state, initState());\n },\n\n designQrCode(state, qrCodeToDesignKey = null) {\n state.shownDesignPopup = Boolean(qrCodeToDesignKey);\n state.qrCodeToDesignKey = qrCodeToDesignKey;\n state.qrCodeDesignStep = \"main\";\n state.qrCodeInstance = null;\n },\n changeQrCodeDesignStep(state, step) {\n state.qrCodeDesignStep = step;\n },\n updateQrDesign(state, newDesign) {\n state.qrCodeDesign = { ...state.qrCodeDesign, ...newDesign };\n },\n // get qr code design\n getQrCodeDesignStart(state) {\n state.loadingQrCodeDesign = true;\n state.qrCodeDesign = null;\n },\n getQrCodeDesignSuccess(state, qrCodeDesign) {\n state.loadingQrCodeDesign = false;\n state.qrCodeDesign = qrCodeDesign;\n },\n getQrCodeDesignFailure(state, e) {\n state.loadingQrCodeDesign = false;\n state.qrCodeDesignError = e;\n },\n updateQrCodeKeySuccess(state, { key }) {\n state.qrCodeDesign.qr_code.key = key;\n },\n setQrCodeInstance(state, qrCodeInstance) {\n state.qrCodeInstance = qrCodeInstance;\n },\n setQrCodeSvg(state, qrCodeSvg) {\n state.qrCodeSvg = qrCodeSvg;\n },\n },\n actions: {\n async getQrCodeDesign({ commit, getters }) {\n if (!getters.qrCodeToDesignKey) return;\n try {\n commit(\"getQrCodeDesignStart\");\n const { data } = await apollo.query({\n query: GET_QR_CODE_DESIGN,\n variables: { key: getters.qrCodeToDesignKey },\n });\n const qrCodeDesign = await serializeQrCodeDesign(\n data.qr_code_designs?.[0]\n );\n commit(\"getQrCodeDesignSuccess\", qrCodeDesign);\n } catch (e) {\n console.log(e);\n commit(\"getQrCodeDesignFailure\", e);\n }\n },\n async updateQrCodeKey({ commit }, variables) {\n try {\n await apollo.mutate({\n mutation: UPDATE_QR_CODE_KEY,\n variables,\n });\n commit(\"updateQrCodeKeySuccess\", variables);\n commit(\"manage/updateQrCodeListItem\", variables, { root: true });\n } catch (e) {\n console.log(e);\n return Promise.reject(\"popup:design_qr_code:error:already_taken\");\n }\n },\n async updateQrCodeDesign({ getters, dispatch }) {\n // upload file\n const fileDetails = await dispatch(\n \"qrCode/uploadQrPreview\",\n {\n preview: getters.qrCodeSvg,\n filename: getters.qrCodeDesign.qr_code.key,\n },\n { root: true }\n );\n\n const variables = serializeUpdateQrCodeDesign(\n getters.qrCodeDesign,\n fileDetails\n );\n\n await apollo.mutate({\n mutation: UPDATE_QR_CODE_DESIGN,\n variables,\n });\n\n await dispatch(\n \"files/updateFileParams\",\n { qrCodeId: getters.qrCodeDesign.qr_code.id },\n { root: true }\n );\n\n return {\n previewKey: fileDetails.key,\n qrCodeId: getters.qrCodeDesign.qr_code.id,\n };\n },\n },\n};\n","import gql from \"graphql-tag\";\n\nexport const createSignature = (variables) => {\n const axios = require(\"@/plugins/axios\").default;\n return axios.post(\"/signature\", variables);\n};\n\nexport const createOrder = (variables) => {\n const axios = require(\"@/plugins/axios\").default;\n return axios.post(\"/order\", variables);\n};\nexport const createOrderLink = (variables) => {\n const axios = require(\"@/plugins/axios\").default;\n return axios.post(\"/order-link\", variables);\n};\n\nexport const createCheckoutSession = (variables) => {\n console.log(variables);\n const axios = require(\"@/plugins/axios\").default;\n return axios.post(\"/subscriptions/create\", variables);\n};\nexport const updateSubscription = (variables) => {\n const axios = require(\"@/plugins/axios\").default;\n return axios.post(\"/subscriptions/upgrade\", variables);\n};\nexport const getUpcomingInvoice = (variables) => {\n const axios = require(\"@/plugins/axios\").default;\n return axios.get(\"/subscriptions/upcoming-invoice\", {\n params: { priceId: variables.priceId },\n });\n};\nexport const getBillingPortalSession = (variables) => {\n const axios = require(\"@/plugins/axios\").default;\n return axios.post(\"/billing-portal\", variables);\n};\n\nexport const GET_PLANS = gql`\n query getPlans {\n plans(where: { visibility: { _eq: true } }) {\n id\n label\n prices {\n amount\n currency\n payment_frequency\n stripe_price_id\n }\n dynamic_qr_codes\n dynamic_business_card\n static_qr_codes\n scans\n qr_templates\n multiple_download_formats\n limit_space\n tracking_date\n tracking_device\n tracking_gps\n gdpr\n sso\n qr_design_customization\n page_templates\n knowledge_base\n email_support\n customer_manager\n stripe_product_id\n }\n }\n`;\n\nexport const GET_ACCOUNT_BILLING_ADDRESS = gql`\n query getAccountBillingAddress {\n account_billing_address {\n email\n company_name\n vat\n country\n city\n zip_code\n address\n first_name\n last_name\n }\n }\n`;\n","import {\n GET_ACCOUNT_BILLING_ADDRESS,\n GET_PLANS,\n createSignature,\n createOrder,\n createOrderLink,\n createCheckoutSession,\n updateSubscription,\n getUpcomingInvoice,\n getBillingPortalSession,\n} from \"@/services/payment\";\nimport { plansOrder } from \"@/constants/plans\";\nimport { defaultClient as apollo } from \"@/plugins/apollo/apollo-account\";\n\nconst initState = () => ({\n accountBillingAddress: {},\n paymentFrequency: \"monthly\",\n currency: \"EUR\",\n userSeats: 3,\n plans: [],\n isPlanUpgrading: false,\n planPrice: 0,\n discount: 0,\n totalPrice: 0,\n formCreditCard: {\n payment_system: \"card\",\n card_number: \"\",\n expiry_date: \"\",\n cvv2: \"\",\n },\n formBillingAddress: {\n email: \"\",\n phone: \"\",\n // notes: '',\n company_name: \"\",\n vat: \"\",\n country: \"\",\n city: \"\",\n zip_code: \"\",\n address: \"\",\n first_name: \"\",\n last_name: \"\",\n },\n formRef: null,\n orderDate: null,\n requestedPlanId: null,\n upcomingInvoice: null,\n exchangeRates: { EUR: 1 },\n});\n\nexport default {\n namespaced: true,\n state: initState(),\n getters: {\n plans: ({ plans }) => plans,\n paymentFrequency: ({ paymentFrequency }) => paymentFrequency,\n currency: ({ currency }) => currency,\n userSeats: ({ userSeats }) => userSeats,\n accountBillingAddress: ({ accountBillingAddress }) => accountBillingAddress,\n isPlanUpgrading: ({ isPlanUpgrading }) => isPlanUpgrading,\n planPrice: ({ planPrice }) => planPrice,\n discount: ({ discount }) => discount,\n totalPrice: ({ totalPrice }) => totalPrice,\n orderDate: ({ orderDate }) => orderDate,\n requestedPlanId: ({ requestedPlanId }) => requestedPlanId,\n formCreditCard: ({ formCreditCard }) => formCreditCard,\n formBillingAddress: ({ formBillingAddress }) => formBillingAddress,\n formRef: ({ formRef }) => formRef,\n upcomingInvoice: ({ upcomingInvoice }) => upcomingInvoice,\n exchangeRates: ({ exchangeRates }) => exchangeRates,\n requestedPlan: ({ plans, requestedPlanId, currency }) => {\n return plans?.find?.(\n (p) =>\n p.id === requestedPlanId &&\n p.prices.some((pr) => pr.currency === currency)\n );\n },\n planLabel: (state, { requestedPlan }) => {\n return requestedPlan?.label;\n },\n },\n mutations: {\n reset(state) {\n Object.assign(state, initState());\n },\n getAccountBillingAddress(state, billingAddress) {\n state.accountBillingAddress = billingAddress;\n },\n getPlans(state, plans = []) {\n state.plans = plans.sort(\n (a, b) => plansOrder.indexOf(a.id) - plansOrder.indexOf(b.id)\n );\n },\n setPaymentFrequency(state, paymentFrequency = \"yearly\") {\n state.paymentFrequency = paymentFrequency;\n },\n setRequestedPlanId(state, requestedPlanId) {\n state.requestedPlanId = requestedPlanId;\n },\n setCurrency(state, currency = \"EUR\") {\n state.currency = currency;\n },\n setIsPlanUpgrading(state, bool) {\n state.isPlanUpgrading = bool;\n },\n setPlanPrice(state, planPrice) {\n state.planPrice = planPrice;\n },\n setDiscount(state, discount) {\n state.discount = discount;\n },\n setTotalPrice(state, totalPrice) {\n state.totalPrice = totalPrice;\n },\n setOrderDate(state, orderDate) {\n state.orderDate = orderDate;\n },\n updateFormBillingAddress(state, formBillingAddress) {\n Object.assign(state.formBillingAddress, formBillingAddress);\n },\n updateFormCreditCard(state, formCreditCard) {\n Object.assign(state.formCreditCard, formCreditCard);\n },\n initFormRef(state, formRef) {\n state.formRef = formRef;\n },\n setUpcomingInvoice(state, invoice) {\n state.upcomingInvoice = invoice;\n },\n setUserSeats(state, userSeats) {\n state.userSeats = userSeats;\n },\n setExchangeRates(state, exchangeRates) {\n state.exchangeRates = exchangeRates;\n },\n },\n actions: {\n async createOrder(context, variables) {\n try {\n const { data } = await createOrder(variables);\n return data;\n } catch (e) {\n console.log(e);\n return Promise.reject(\"Oops... Something went wrong.\");\n }\n },\n async createOrderLink(context, variables) {\n try {\n const { data } = await createOrderLink(variables);\n console.log(data);\n return data;\n } catch (e) {\n console.log(e);\n return Promise.reject(\"Oops... Something went wrong.\");\n }\n },\n async createSignature(context, variables) {\n try {\n const { data } = await createSignature(variables);\n return data;\n } catch (e) {\n console.log(e);\n return Promise.reject(\"Oops... Something went wrong.\");\n }\n },\n async getAccountBillingAddress({ commit }) {\n try {\n const { data } = await apollo.query({\n query: GET_ACCOUNT_BILLING_ADDRESS,\n });\n const billingAddress = data?.account_billing_address?.[0] ?? {};\n commit(\"getAccountBillingAddress\", billingAddress);\n } catch (e) {\n console.log(e);\n return Promise.reject(\"Oops... Something went wrong.\");\n }\n },\n async getPlans({ commit }) {\n try {\n const { data } = await apollo.query({\n query: GET_PLANS,\n });\n commit(\"getPlans\", data?.plans);\n } catch (e) {\n console.log(e);\n return Promise.reject(\"Oops... Something went wrong.\");\n }\n },\n getCheckoutSessionUrl(context, variables) {\n return createCheckoutSession(variables);\n },\n getUpdatingSubscriptionUrl(context, variables) {\n return updateSubscription(variables);\n },\n async getUpcomingInvoice({ commit }, priceId) {\n try {\n const { data } = await getUpcomingInvoice({ priceId });\n commit(\"setUpcomingInvoice\", data);\n } catch (e) {\n console.log(e);\n }\n },\n async getBillingPortalSession(context, type) {\n return getBillingPortalSession(type);\n },\n },\n};\n","import { createQrCode } from \"l2qr-generator-api/dist/client/index\";\n\nconst getInitialState = () => ({\n shownDownloadPopup: false,\n shownVectorPopup: false,\n shownScanTrackingPopup: false,\n shownUploadFileMessage: false,\n mobilePanel: \"form\",\n qrDataFormat: \"URL\",\n\n svgText: null,\n isLoadingQr: false,\n hadInput: false,\n loadingTimerId: null,\n LOADING_DELAY: 1200,\n\n content: \"\",\n qrMatrix: null,\n frame_name: null,\n shapes: \"squares\",\n logo_name: null,\n foreground_color: \"#000000\",\n\n URL: \"\",\n text: \"\",\n vcard: {\n firstName: \"\",\n lastName: \"\",\n company: \"\",\n jobTitle: \"\",\n street: \"\",\n city: \"\",\n state: \"\",\n zip: \"\",\n country: \"\",\n phone: \"\",\n mobilePhone: \"\",\n fax: \"\",\n email: \"\",\n url: \"\",\n },\n email: {\n email: \"\",\n subject: \"\",\n message: \"\",\n },\n sms: {\n phone: \"\",\n message: \"\",\n },\n wifi: {\n type: \"WPA\",\n network: \"\",\n password: \"\",\n hidden: false,\n },\n});\n\nexport default {\n namespaced: true,\n state: getInitialState(),\n getters: {\n shownDownloadPopup: ({ shownDownloadPopup }) => shownDownloadPopup,\n shownVectorPopup: ({ shownVectorPopup }) => shownVectorPopup,\n shownScanTrackingPopup: ({ shownScanTrackingPopup }) =>\n shownScanTrackingPopup,\n shownUploadFileMessage: ({ shownUploadFileMessage }) =>\n shownUploadFileMessage,\n mobilePanel: ({ mobilePanel }) => mobilePanel,\n\n isLoadingQr: ({ isLoadingQr }) => isLoadingQr,\n hadInput: ({ hadInput }) => hadInput,\n disabledPreview: ({ isLoadingQr, hadInput }) => !hadInput || isLoadingQr,\n loadingTimerId: ({ loadingTimerId }) => loadingTimerId,\n qrDataFormat: ({ qrDataFormat }) => qrDataFormat,\n svgText: ({ svgText }) => svgText,\n\n LOADING_DELAY: ({ LOADING_DELAY }) => LOADING_DELAY,\n\n frame_name: ({ frame_name }) => frame_name,\n shapes: ({ shapes }) => shapes,\n logo_name: ({ logo_name }) => logo_name,\n foreground_color: ({ foreground_color }) => foreground_color,\n\n qrMatrix: ({ qrMatrix }) => qrMatrix,\n\n URL: ({ URL }) => URL,\n text: ({ text }) => text,\n vcard: ({ vcard }) => vcard,\n email: ({ email }) => email,\n sms: ({ sms }) => sms,\n wifi: ({ wifi }) => wifi,\n },\n mutations: {\n reset(state) {\n Object.assign(state, getInitialState());\n },\n\n showDownloadPopup(state, bool) {\n state.shownDownloadPopup = bool;\n },\n showVectorPopup(state, bool) {\n state.shownVectorPopup = bool;\n },\n showScanTrackingPopup(state, bool) {\n state.shownScanTrackingPopup = bool;\n },\n showUploadFileMessage(state, bool) {\n state.shownUploadFileMessage = bool;\n },\n\n generateQrStart(state, timerId) {\n state.isLoadingQr = true;\n state.loadingTimerId = timerId;\n },\n generateQrSuccess(state, qrMatrix) {\n state.isLoadingQr = false;\n state.loadingTimerId = null;\n state.qrMatrix = qrMatrix;\n state.hadInput = true;\n },\n generateQrFailure(state) {\n state.isLoadingQr = false;\n state.loadingTimerId = null;\n },\n setSvgText(state, svgText) {\n state.svgText = svgText;\n },\n\n setQrDataFormat(state, qrDataFormat = \"URL\") {\n state.qrDataFormat = qrDataFormat;\n },\n\n setContent(state, { content = \"\", type } = {}) {\n state[type || state.qrDataFormat] = content;\n },\n setFrameName(state, frame) {\n state.frame_name = frame;\n },\n setShapes(state, shapes) {\n state.shapes = shapes;\n },\n setForegroundColor(state, color) {\n state.foreground_color = color;\n },\n setLogoName(state, logo) {\n state.logo_name = logo;\n },\n setMobilePanel(state, panel = \"form\") {\n state.mobilePanel = panel;\n },\n },\n actions: {\n generateQr({ commit, getters }, { content, type } = {}) {\n if (getters.loadingTimerId) clearTimeout(getters.loadingTimerId);\n\n const timerId = setTimeout(() => {\n try {\n const qrMatrix = createQrCode(content, type || getters.qrDataFormat);\n commit(\"generateQrSuccess\", qrMatrix);\n } catch (e) {\n console.log(e);\n commit(\"generateQrFailure\");\n }\n }, getters.LOADING_DELAY);\n\n commit(\"generateQrStart\", timerId);\n },\n },\n};\n","import gql from \"graphql-tag\";\nimport axios from \"@/plugins/axios\";\n\nexport const GET_ORGANIZATIONS = gql`\n query getOrganizations {\n organizations(\n where: { is_default: { _neq: true } }\n order_by: { created_at: desc }\n ) {\n id\n short_id\n name\n organization_limits {\n vcards_limit\n qr_codes_limit\n }\n }\n }\n`;\n\nexport const CREATE_ORGANIZATION = gql`\n mutation createOrganization(\n $accountId: uuid!\n $name: String!\n $qr_codes_limit: Int = 0\n $vcards_limit: Int = 0\n ) {\n insert_organizations(\n objects: {\n account_id: $accountId\n name: $name\n organization_limits: {\n data: { vcards_limit: $vcards_limit, qr_codes_limit: $qr_codes_limit }\n }\n }\n ) {\n affected_rows\n returning {\n id\n short_id\n name\n organization_limits {\n vcards_limit\n qr_codes_limit\n }\n }\n }\n }\n`;\n\nexport const UPDATE_ORGANIZATION = gql`\n mutation updateOrganization(\n $id: uuid!\n $name: String!\n $qr_codes_limit: Int = 0\n $vcards_limit: Int = 0\n ) {\n update_organization_limits(\n where: { organization_id: { _eq: $id } }\n _set: { qr_codes_limit: $qr_codes_limit, vcards_limit: $vcards_limit }\n ) {\n affected_rows\n }\n update_organizations(where: { id: { _eq: $id } }, _set: { name: $name }) {\n affected_rows\n returning {\n id\n short_id\n name\n organization_limits {\n vcards_limit\n qr_codes_limit\n }\n }\n }\n }\n`;\n\nexport const DELETE_ORGANIZATION = gql`\n mutation deleteOrganization($organizationId: uuid!) {\n remove_organization_users: delete_users(\n where: {\n organizations_roles: { organization_id: { _eq: $organizationId } }\n }\n ) {\n affected_rows\n }\n delete_with_qr_codes: update_files(\n where: { qr_code_id: { _eq: $organizationId } }\n _set: { unsaved: true }\n ) {\n affected_rows\n }\n delete_qr_code_scans(\n where: { qr_code: { organization_id: { _eq: $organizationId } } }\n ) {\n affected_rows\n }\n delete_qr_code_designs(\n where: { qr_code: { organization_id: { _eq: $organizationId } } }\n ) {\n affected_rows\n }\n delete_qr_codes(where: { organization_id: { _eq: $organizationId } }) {\n affected_rows\n }\n delete_organization_limits(\n where: { organization_id: { _eq: $organizationId } }\n ) {\n affected_rows\n }\n delete_organizations_roles_users(\n where: { organization_id: { _eq: $organizationId } }\n ) {\n affected_rows\n }\n delete_organizations(where: { id: { _eq: $organizationId } }) {\n affected_rows\n }\n }\n`;\n\nexport const GET_ORGANIZATION_USERS = gql`\n query getOrganizationUsers($shortOrganizationId: Int!) {\n accounts {\n owner {\n id\n email\n }\n }\n organizations_roles_users(\n where: { organization: { short_id: { _eq: $shortOrganizationId } } }\n ) {\n id\n organization {\n id\n name\n }\n role_id\n user {\n id\n email\n }\n }\n }\n`;\n\nexport const inviteOrganizationUser = (credentials) => {\n return axios.post(\"/invite-organization-user\", credentials);\n};\nexport const setOrganizationUserPassword = (credentials) => {\n return axios.post(\"/set-organization-user-password\", credentials);\n};\n\nexport const UPDATE_ORGANIZATION_USER = gql`\n mutation updateOrganizationUser($id: uuid!, $roleId: String!) {\n update_organizations_roles_users(\n where: { id: { _eq: $id } }\n _set: { role_id: $roleId }\n ) {\n affected_rows\n returning {\n id\n organization {\n id\n name\n }\n role_id\n user {\n id\n email\n }\n }\n }\n }\n`;\nexport const DELETE_ORGANIZATION_USER = gql`\n mutation deleteOrganizationUser($id: uuid!) {\n delete_users(where: { organizations_roles: { id: { _eq: $id } } }) {\n affected_rows\n }\n delete_organizations_roles_users(where: { id: { _eq: $id } }) {\n affected_rows\n }\n }\n`;\n","import {\n GET_ORGANIZATIONS,\n CREATE_ORGANIZATION,\n UPDATE_ORGANIZATION,\n DELETE_ORGANIZATION,\n GET_ORGANIZATION_USERS,\n UPDATE_ORGANIZATION_USER,\n DELETE_ORGANIZATION_USER,\n inviteOrganizationUser,\n setOrganizationUserPassword,\n} from \"@/services/organizations\";\nimport { defaultClient as apollo } from \"@/plugins/apollo/apollo-account\";\nimport i18n from \"@/plugins/i18n\";\n\nconst initState = () => ({\n organizationsSearch: \"\",\n organizationUsersSearch: \"\",\n userRolesFilter: null,\n\n organizations: [],\n organizationsLoading: false,\n organizationsError: null,\n\n organizationUsers: [],\n organizationOwner: null,\n organizationUsersLoading: false,\n organizationUsersError: null,\n // loadedAll: false,\n // organizationsMoreLoading: false,\n // offset: 0,\n // limit: 10,\n});\n\nexport default {\n namespaced: true,\n state: initState(),\n getters: {\n organizationsSearch: ({ organizationsSearch }) => organizationsSearch,\n organizationUsersSearch: ({ organizationUsersSearch }) =>\n organizationUsersSearch,\n userRolesFilter: ({ userRolesFilter }) => userRolesFilter,\n\n organizations: ({ organizations }) => organizations,\n organizationsLoading: ({ organizationsLoading }) => organizationsLoading,\n organizationsError: ({ organizationsError }) => organizationsError,\n organizationUsers: ({ organizationUsers }) => organizationUsers,\n organizationOwner: ({ organizationOwner }) => organizationOwner,\n organizationUsersLoading: ({ organizationUsersLoading }) =>\n organizationUsersLoading,\n organizationUsersError: ({ organizationUsersError }) =>\n organizationUsersError,\n },\n mutations: {\n reset(state) {\n Object.assign(state, initState());\n },\n searchOrganizations(state, value = \"\") {\n state.organizationsSearch = value;\n },\n searchOrganizationUsers(state, value = \"\") {\n state.organizationUsersSearch = value;\n },\n filterUserRoles(state, value) {\n state.userRolesFilter = value;\n },\n // get organization list\n getOrganizationsStart(state) {\n // state.loadedAll = false;\n // state.offset = 0;\n\n state.organizationsLoading = true;\n state.organizationsError = null;\n state.organizations = [];\n },\n getOrganizationsSuccess(state, organizations) {\n state.organizationsLoading = false;\n state.organizations = organizations;\n },\n getOrganizationsFailure(state, e) {\n state.organizationsLoading = false;\n state.organizationsError = e;\n state.organizations = [];\n },\n // get more organization list\n // getMoreOrganizationStart(state) {\n // state.organizationMoreLoading = true;\n // state.organizationError = null;\n // state.offset += state.limit;\n // },\n // getMoreOrganizationSuccess(state, organization) {\n // state.organizationMoreLoading = false;\n // state.organization = [...state.organization, ...(organization ?? [])];\n // if (organization.length < state.limit) state.loadedAll = true;\n // },\n // getMoreOrganizationFailure(state, e) {\n // state.offset = Math.max(0, state.offset - state.limit);\n // state.organizationMoreLoading = false;\n // state.organizationError = e;\n // },\n createOrganizationsSuccess(state, payload) {\n if (!payload) return;\n state.organizations = [payload, ...state.organizations];\n },\n updateOrganizationsSuccess(state, payload) {\n if (!payload) return;\n const idx = state.organizations.findIndex((o) => o.id === payload.id);\n if (idx === -1) return;\n state.organizations.splice(idx, 1, payload);\n },\n deleteOrganizationsSuccess(state, payload) {\n if (!payload) return;\n const idx = state.organizations.findIndex(\n (o) => o.id === payload.organizationId\n );\n if (idx === -1) return;\n state.organizations.splice(idx, 1);\n },\n // users\n // get organization list\n getOrganizationUsersStart(state) {\n // state.loadedAll = false;\n // state.offset = 0;\n\n state.organizationUsersLoading = true;\n state.organizationUsersError = null;\n state.organizationUsers = [];\n state.organizationOwner = null;\n },\n getOrganizationUsersSuccess(state, { owner, organizationUsers }) {\n state.organizationUsersLoading = false;\n state.organizationUsers = organizationUsers;\n state.organizationOwner = owner;\n },\n getOrganizationUsersFailure(state, e) {\n state.organizationUsersLoading = false;\n state.organizationUsersError = e;\n state.organizationUsers = [];\n state.organizationOwner = null;\n },\n createOrganizationUsersSuccess(state, payload) {\n if (!payload) return;\n state.organizationUsers = [payload, ...state.organizationUsers];\n },\n updateOrganizationUsersSuccess(state, payload) {\n if (!payload) return;\n const idx = state.organizationUsers.findIndex((o) => o.id === payload.id);\n if (idx === -1) return;\n state.organizationUsers.splice(idx, 1, payload);\n },\n deleteOrganizationUsersSuccess(state, payload) {\n if (!payload) return;\n const idx = state.organizationUsers.findIndex((o) => o.id === payload.id);\n if (idx === -1) return;\n state.organizationUsers.splice(idx, 1);\n },\n },\n actions: {\n async getOrganizations({ commit }) {\n try {\n commit(\"getOrganizationsStart\");\n const { data } = await apollo.query({\n query: GET_ORGANIZATIONS,\n });\n commit(\"getOrganizationsSuccess\", data.organizations);\n } catch (e) {\n console.log(e);\n commit(\"getOrganizationsFailure\", e);\n }\n },\n // async getMoreOrganizations({ commit, rootGetters, getters }) {\n // try {\n // // if (getters[\"loadedAll\"]) return;\n // commit(\"getMoreOrganizationsStart\");\n // const { data } = await apollo.query({\n // query: GET_ORGANIZATIONS,\n // // variables: {\n // // accountId,\n // // limit: getters[\"limit\"],\n // // offset: getters[\"offset\"],\n // // },\n // });\n //\n // commit(\"getMoreOrganizationsSuccess\", data.organizations);\n // } catch (e) {\n // commit(\"getMoreOrganizationsFailure\", e);\n // }\n // },\n async createOrganizations({ commit, rootGetters }, variables) {\n const accountId = rootGetters[\"account/account\"]?.id;\n try {\n const { data } = await apollo.query({\n query: CREATE_ORGANIZATION,\n variables: { accountId, ...variables },\n });\n commit(\n \"createOrganizationsSuccess\",\n data.insert_organizations?.returning?.[0]\n );\n } catch (e) {\n console.log(e);\n }\n },\n async updateOrganization({ commit }, variables) {\n try {\n const { data } = await apollo.query({\n query: UPDATE_ORGANIZATION,\n variables,\n });\n commit(\n \"updateOrganizationsSuccess\",\n data.update_organizations?.returning?.[0]\n );\n } catch (e) {\n console.log(e);\n }\n },\n async deleteOrganizations({ commit }, variables) {\n try {\n await apollo.query({\n query: DELETE_ORGANIZATION,\n variables,\n });\n commit(\"deleteOrganizationsSuccess\", variables);\n } catch (e) {\n console.log(e);\n }\n },\n // users\n async getOrganizationUsers({ commit }, variables) {\n try {\n commit(\"getOrganizationUsersStart\");\n const { data } = await apollo.query({\n query: GET_ORGANIZATION_USERS,\n variables,\n });\n let owner = { ...(data?.accounts[0]?.owner || {}), isOwner: true };\n if (owner) owner = { user: owner, isOwner: true };\n const organizationUsers = data.organizations_roles_users;\n commit(\"getOrganizationUsersSuccess\", { owner, organizationUsers });\n } catch (e) {\n console.log(e);\n commit(\"getOrganizationUsersFailure\", e);\n }\n },\n async createOrganizationUser({ commit, rootGetters }, variables) {\n const accountId = rootGetters[\"account/account\"]?.id;\n try {\n const { data } = await inviteOrganizationUser({\n accountId,\n ...variables,\n });\n commit(\"createOrganizationUsersSuccess\", data);\n } catch (e) {\n console.log(e);\n return Promise.reject(e);\n }\n },\n async updateOrganizationUser({ commit }, variables) {\n try {\n const { data } = await apollo.query({\n query: UPDATE_ORGANIZATION_USER,\n variables,\n });\n commit(\n \"updateOrganizationUsersSuccess\",\n data.update_organizations_roles_users?.returning?.[0]\n );\n } catch (e) {\n console.log(e);\n }\n },\n async deleteOrganizationUser({ commit }, variables) {\n try {\n await apollo.query({\n query: DELETE_ORGANIZATION_USER,\n variables,\n });\n commit(\"deleteOrganizationUsersSuccess\", variables);\n } catch (e) {\n console.log(e);\n }\n },\n async setOrganizationUserPassword({ dispatch }, credentials) {\n try {\n await setOrganizationUserPassword(credentials);\n } catch (e) {\n dispatch(\n \"notification/showNotification\",\n {\n message: i18n.t(e.message || \"notifications:error:something_wrong\"),\n type: \"error\",\n },\n { root: true }\n );\n return Promise.reject(e);\n }\n },\n },\n};\n","import gql from \"graphql-tag\";\n\nexport const GET_ORGANIZATIONS = gql`\n fragment org on organizations {\n id\n name\n is_default\n organization_resources {\n available_qr_codes\n available_users\n available_vcards\n used_vcards\n used_qr_codes\n used_users\n }\n }\n\n query getAccountOrganizations($organizationId: uuid!) {\n organizations_by_pk(id: $organizationId) {\n ...org\n roles_users {\n role_id\n user_id\n }\n }\n organizations {\n ...org\n }\n organization_roles {\n id\n create_qr\n delete_qr\n manage_organization\n update_qr\n read_qr\n }\n }\n`;\n","import { GET_ORGANIZATIONS } from \"@/services/accountOrganizations\";\nimport { defaultClient as apollo } from \"@/plugins/apollo/apollo-account\";\nimport { getTokenOrganizationId } from \"@/utils/token\";\nimport { ownerRole } from \"@/constants/organizations\";\n\nconst serializeOrganizations = (data) => {\n const organizations = data.organizations || [];\n const defaultOrganizationId = organizations?.findIndex((o) => o.is_default);\n if (defaultOrganizationId !== -1) {\n const defaultOrganization = organizations.splice(defaultOrganizationId, 1);\n organizations.splice(0, 0, defaultOrganization[0]);\n }\n return {\n organizations,\n activeOrganization: data.organizations_by_pk,\n organizationsRoles: data.organization_roles || [],\n };\n};\n\nconst initState = () => ({\n organizations: [],\n organizationsLoading: false,\n organizationsErrors: null,\n\n activeOrganization: null,\n organizationsRoles: [],\n});\n\nexport default {\n namespaced: true,\n state: initState(),\n getters: {\n organizations: ({ organizations }) => organizations,\n organizationsLoading: ({ organizationsLoading }) => organizationsLoading,\n organizationsErrors: ({ organizationsErrors }) => organizationsErrors,\n\n activeOrganization: ({ activeOrganization }) => activeOrganization,\n organizationsRoles: ({ organizationsRoles }) => organizationsRoles,\n\n // permissions\n activeRoleId: ({ activeOrganization }, getters, rootState, rootGetters) => {\n if (rootGetters[\"account/isOwner\"]) return ownerRole.value;\n return activeOrganization?.roles_users?.[0]?.role_id;\n },\n activeRole: ({ organizationsRoles }, { activeRoleId }) => {\n return organizationsRoles?.find?.((r) => r.id === activeRoleId);\n },\n canCreateQr: (state, { activeRole }, rootState, rootGetters) => {\n if (rootGetters[\"account/isOwner\"]) return true;\n return activeRole?.create_qr;\n },\n canReadQr: (state, { activeRole }, rootState, rootGetters) => {\n if (rootGetters[\"account/isOwner\"]) return true;\n return activeRole?.read_qr;\n },\n canUpdateQr: (state, { activeRole }, rootState, rootGetters) => {\n if (rootGetters[\"account/isOwner\"]) return true;\n return activeRole?.update_qr;\n },\n canDeleteQr: (state, { activeRole }, rootState, rootGetters) => {\n if (rootGetters[\"account/isOwner\"]) return true;\n return activeRole?.delete_qr;\n },\n canManageOrganizations: (state, { activeRole }, rootState, rootGetters) => {\n if (rootGetters[\"account/isOwner\"]) return true;\n return activeRole?.manage_organization;\n },\n isDefaultOrganization: (state, { activeOrganization }) =>\n activeOrganization?.is_default,\n // limits\n availableOrganizationQrCodes: (state, { activeOrganization }) =>\n activeOrganization?.organization_resources?.available_qr_codes || 0,\n availableOrganizationVCards: (state, { activeOrganization }) =>\n activeOrganization?.organization_resources?.available_vcards || 0,\n availableOrganizationUsers: (state, getters, rootState, rootGetters) =>\n rootGetters?.[\"account/accountPlan\"]?.organization_users_limit || 0,\n usedOrganizationQrCodes: (state, { activeOrganization }) =>\n activeOrganization?.organization_resources?.used_qr_codes || 0,\n usedOrganizationVCards: (state, { activeOrganization }) =>\n activeOrganization?.organization_resources?.used_vcards || 0,\n reachedOrganizationQrCodesLimit: (state, getters) => {\n console.log(\"1234\", getters.isDefaultOrganization);\n if (!getters.activeOrganization || getters.isDefaultOrganization)\n return false;\n return (\n getters.availableOrganizationQrCodes <= getters.usedOrganizationQrCodes\n );\n },\n reachedOrganizationVCardsLimit: (state, getters) => {\n if (!getters.activeOrganization || getters.isDefaultOrganization)\n return false;\n return (\n getters.availableOrganizationVCards <= getters.usedOrganizationVCards\n );\n },\n },\n mutations: {\n reset(state) {\n Object.assign(state);\n },\n getOrganizationsStart(state) {\n state.organizations = [];\n state.organizationsLoading = true;\n state.organizationsErrors = null;\n\n state.activeOrganization = null;\n state.organizationsRoles = [];\n },\n getOrganizationsSuccess(state, payload) {\n state.organizations = payload.organizations || [];\n state.organizationsLoading = false;\n state.organizationsErrors = null;\n\n state.activeOrganization = payload.activeOrganization;\n state.organizationsRoles = payload.organizationsRoles;\n },\n getOrganizationsFailure(state, errors) {\n state.organizations = [];\n state.organizationsLoading = false;\n state.organizationsErrors = errors;\n\n state.activeOrganization = null;\n state.organizationsRoles = [];\n },\n setActiveOrganization(state, organization = null) {\n state.activeOrganization = organization;\n },\n },\n actions: {\n async getOrganizations({ commit }) {\n try {\n commit(\"getOrganizationsStart\");\n const { data, error } = await apollo.query({\n query: GET_ORGANIZATIONS,\n variables: { organizationId: getTokenOrganizationId() },\n });\n if (error) throw Error(error);\n commit(\"getOrganizationsSuccess\", serializeOrganizations(data));\n } catch (e) {\n commit(\"getOrganizationsFailure\", e);\n }\n },\n async getUpdatedOrganizations({ commit }) {\n try {\n const { data, error } = await apollo.query({\n query: GET_ORGANIZATIONS,\n variables: { organizationId: getTokenOrganizationId() },\n });\n if (error) throw Error(error);\n commit(\"getOrganizationsSuccess\", serializeOrganizations(data));\n } catch (e) {\n console.log(e);\n }\n },\n },\n};\n","import gql from \"graphql-tag\";\n\nexport const GET_ACCOUNT_SETTINGS = gql`\n query getAccountSettings {\n accounts {\n # account info\n id\n created_at\n customer_id\n account_plan {\n expiry_date\n plan {\n label\n # usage\n dynamic_qr_codes\n static_qr_codes\n dynamic_business_card\n limit_space\n scans\n api_requests\n }\n }\n used_resources {\n used_scans\n used_storage\n used_static_qr_codes\n used_business_cards\n used_dynamic_qr_codes\n used_api_requests\n }\n\n # account contact\n owner {\n email\n }\n contacts {\n phone\n first_name\n last_name\n company\n country\n street\n zip\n city\n website\n }\n }\n }\n`;\n\nexport const UPDATE_ACCOUNT_CONTACTS = gql`\n mutation updateAccountContacts(\n $first_name: String = \"\"\n $last_name: String = \"\"\n $company: String = \"\"\n $website: String = \"\"\n $country: String = \"\"\n $phone: String = \"\"\n $street: String = \"\"\n $city: String = \"\"\n $zip: String = \"\"\n ) {\n update_account_contacts(\n where: {}\n _set: {\n first_name: $first_name\n last_name: $last_name\n company: $company\n website: $website\n country: $country\n phone: $phone\n street: $street\n city: $city\n zip: $zip\n }\n ) {\n affected_rows\n }\n }\n`;\n","import {\n GET_ACCOUNT_SETTINGS,\n UPDATE_ACCOUNT_CONTACTS,\n} from \"@/services/settings/account\";\nimport { getDefaultAccountContact } from \"@/constants/account\";\nimport { defaultClient as apollo } from \"@/plugins/apollo/apollo-account\";\n\nconst serializeAccountSettings = (account) => {\n if (!account) throw Error(\"Oops... something went wrong!\");\n const info = {\n id: account.id,\n created_at: account.created_at,\n customer_id: account.customer_id,\n expiry_date: account.account_plan?.expiry_date,\n plan_name: account.account_plan?.plan?.label,\n email: account.owner?.email,\n };\n const usage = {\n limits: account.account_plan?.plan,\n used: {\n dynamic_qr_codes_used: account.used_resources?.used_dynamic_qr_codes || 0,\n static_qr_codes_used: account.used_resources?.used_static_qr_codes || 0,\n scans_used: account.used_resources?.used_scans || 0,\n storage_used: account.used_resources?.used_storage || 0,\n used_business_cards: account.used_resources?.used_business_cards || 0,\n used_api_requests: account.used_resources?.used_api_requests || 0,\n // api_requests_used: account.static_qr_codes_aggregate?.aggregate?.count || 0,\n },\n };\n const contact = account.contacts?.[0] ?? getDefaultAccountContact();\n delete contact.__typename;\n\n return { info, usage, contact };\n};\n\nconst initState = () => ({\n info: null,\n usage: null,\n contact: null,\n\n contactLoading: null,\n errorLoading: null,\n loading: false,\n error: null,\n});\n\nexport default {\n namespaced: true,\n state: initState(),\n getters: {\n info: ({ info }) => info,\n usage: ({ usage }) => usage,\n contact: ({ contact }) => contact,\n loading: ({ loading }) => loading,\n error: ({ error }) => error,\n contactLoading: ({ contactLoading }) => contactLoading,\n errorLoading: ({ errorLoading }) => errorLoading,\n },\n mutations: {\n reset(state) {\n Object.assign(state, initState());\n },\n\n setContactField(state, { prop, value }) {\n state.contact[prop] = value;\n },\n\n getAccountSettingsStart(state) {\n state.loading = true;\n state.error = null;\n state.info = null;\n state.usage = null;\n state.contact = null;\n },\n getAccountSettingsSuccess(state, payload) {\n state.loading = false;\n state.info = payload.info;\n state.usage = payload.usage;\n state.contact = payload.contact;\n },\n getAccountSettingsFailure(state, e) {\n state.loading = true;\n state.error = e;\n },\n updateAccountContactStart(state) {\n state.contactLoading = true;\n state.errorLoading = null;\n },\n updateAccountContactSuccess(state) {\n state.contactLoading = false;\n },\n updateAccountContactFailure(state, e) {\n state.contactLoading = false;\n state.errorLoading = e;\n },\n },\n actions: {\n async getAccountSettings({ commit }) {\n try {\n commit(\"getAccountSettingsStart\");\n const { data } = await apollo.query({ query: GET_ACCOUNT_SETTINGS });\n commit(\n \"getAccountSettingsSuccess\",\n serializeAccountSettings(data.accounts?.[0])\n );\n } catch (e) {\n commit(\"getAccountSettingsFailure\", e);\n }\n },\n async updateAccountContact({ commit, getters, dispatch }) {\n try {\n commit(\"updateAccountContactStart\");\n const contact = getters[\"contact\"];\n await apollo.query({\n query: UPDATE_ACCOUNT_CONTACTS,\n variables: contact,\n });\n commit(\"updateAccountContactSuccess\");\n } catch (e) {\n commit(\"updateAccountContactFailure\", e);\n dispatch(\"getAccountSettings\");\n }\n },\n },\n};\n","import axios from \"@/plugins/axios\";\nimport gql from \"graphql-tag\";\n\nconst changePassword = (passwords) => {\n return axios.post(\"/settings-change-password\", passwords);\n};\nconst changeEmail = (credentials) => {\n return axios.post(\"/settings-change-email\", credentials);\n};\nconst closeAccount = (credentials) => {\n return axios.post(\"/close-account\", credentials);\n};\n\nexport const GET_USER_SETTINGS = gql`\n query getUserSettings($userId: uuid!) {\n users(where: { id: { _eq: $userId } }) {\n email\n }\n accounts {\n software_preferences {\n time_zone\n language\n }\n contacts {\n first_name\n last_name\n }\n }\n locales(distinct_on: language_code) {\n language\n language_code\n }\n }\n`;\n\nexport const UPDATE_SOFTWARE_PREFERENCES = gql`\n mutation updateSoftwarePreferences($time_zone: String!, $language: String!) {\n update_software_preferences(\n where: {}\n _set: { time_zone: $time_zone, language: $language }\n ) {\n affected_rows\n }\n }\n`;\n\nexport const UPDATE_USER_INFO = gql`\n mutation updateUserInfo($first_name: String = \"\", $last_name: String = \"\") {\n update_account_contacts(\n where: {}\n _set: { first_name: $first_name, last_name: $last_name }\n ) {\n affected_rows\n }\n }\n`;\n\nexport default {\n changePassword,\n changeEmail,\n closeAccount,\n};\n","import UserSettingsService, {\n GET_USER_SETTINGS,\n UPDATE_SOFTWARE_PREFERENCES,\n UPDATE_USER_INFO,\n} from \"@/services/settings/user\";\nimport { defaultClient as apollo } from \"@/plugins/apollo/apollo-account\";\nimport { FAILBACK_LANGUAGE } from \"@/plugins/locale/locales\";\nimport { getTokenUserId } from \"@/utils/token\";\n\nconst serializeUserSettings = (data, languages) => {\n const account = data.accounts?.[0];\n const user = data.users?.[0];\n if (!account) throw Error(\"Oops... something went wrong!\");\n const softwarePreferences = {\n time_zone: account.software_preferences.time_zone || null,\n language: account.software_preferences.language || FAILBACK_LANGUAGE,\n };\n\n const info = {\n email: user?.email,\n first_name: account.contacts?.[0]?.first_name || \"\",\n last_name: account.contacts?.[0]?.last_name || \"\",\n };\n\n const languagesOptions = languages.map(({ language_code, language }) => ({\n value: language_code,\n label: language,\n }));\n\n return { softwarePreferences, info, languages: languagesOptions };\n};\n\nconst initState = () => ({\n loading: false,\n error: null,\n softwarePreferencesLoading: false,\n softwarePreferencesError: null,\n infoLoading: false,\n infoError: null,\n closingAccountLoading: false,\n closingAccountError: null,\n\n languages: [],\n softwarePreferences: null,\n info: null,\n});\n\nexport default {\n namespaced: true,\n state: initState(),\n getters: {\n loading: ({ loading }) => loading,\n error: ({ error }) => error,\n softwarePreferencesLoading: ({ softwarePreferencesLoading }) =>\n softwarePreferencesLoading,\n softwarePreferencesError: ({ softwarePreferencesError }) =>\n softwarePreferencesError,\n infoLoading: ({ infoLoading }) => infoLoading,\n infoError: ({ infoError }) => infoError,\n closingAccountLoading: ({ closingAccountLoading }) => closingAccountLoading,\n closingAccountError: ({ closingAccountError }) => closingAccountError,\n\n languages: ({ languages }) => languages,\n softwarePreferences: ({ softwarePreferences }) => softwarePreferences,\n info: ({ info }) => info,\n },\n mutations: {\n reset(state) {\n Object.assign(state, initState());\n },\n\n setPreferencesField(state, { prop, value }) {\n state.softwarePreferences[prop] = value;\n },\n setInfoField(state, { prop, value }) {\n state.info[prop] = value;\n },\n\n getUserSettingsStart(state) {\n state.loading = true;\n state.error = null;\n state.softwarePreferences = null;\n state.info = null;\n state.languages = null;\n },\n getUserSettingsSuccess(state, payload) {\n state.loading = false;\n state.softwarePreferences = payload.softwarePreferences;\n state.info = payload.info;\n state.languages = payload.languages;\n },\n getUserSettingsFailure(state, e) {\n state.loading = true;\n state.error = e;\n },\n\n changeUserPasswordStart(state) {\n state.loading = true;\n state.error = null;\n },\n changeUserPasswordSuccess(state) {\n state.loading = false;\n },\n changeUserPasswordFailure(state, e) {\n state.loading = false;\n state.error = e;\n },\n\n changeUserEmailStart(state) {\n state.loading = true;\n state.error = null;\n },\n changeUserEmailSuccess(state) {\n state.loading = false;\n },\n changeUserEmailFailure(state, e) {\n state.loading = false;\n state.error = e;\n },\n updateSoftwarePreferencesStart(state) {\n state.softwarePreferencesLoading = true;\n state.softwarePreferencesError = null;\n },\n updateSoftwarePreferencesSuccess(state) {\n state.softwarePreferencesLoading = false;\n },\n updateSoftwarePreferencesFailure(state, e) {\n state.softwarePreferencesLoading = false;\n state.softwarePreferencesError = e;\n },\n updateUserInfoStart(state) {\n state.infoLoading = true;\n state.infoError = null;\n },\n updateUserInfoSuccess(state) {\n state.infoLoading = false;\n },\n updateUserInfoFailure(state, e) {\n state.infoLoading = false;\n state.infoError = e;\n },\n closeAccountStart(state) {\n state.closingAccountLoading = true;\n state.closingAccountError = null;\n },\n closeAccountSuccess(state) {\n state.closingAccountLoading = false;\n },\n closeAccountFailure(state, e) {\n state.closingAccountLoading = false;\n state.closingAccountError = e;\n },\n },\n actions: {\n async updateSoftwarePreferences({ commit, getters, dispatch }) {\n try {\n commit(\"updateSoftwarePreferencesStart\");\n const softwarePreferences = getters[\"softwarePreferences\"];\n await apollo.query({\n query: UPDATE_SOFTWARE_PREFERENCES,\n variables: softwarePreferences,\n });\n commit(\"updateSoftwarePreferencesSuccess\");\n } catch (e) {\n commit(\"updateSoftwarePreferencesFailure\", e);\n dispatch(\"getUserSettings\");\n }\n },\n async updateUserInfo({ commit, getters, dispatch }) {\n try {\n commit(\"updateUserInfoStart\");\n const info = { ...getters[\"info\"] };\n delete info.email;\n\n await apollo.query({\n query: UPDATE_USER_INFO,\n variables: info,\n });\n commit(\"updateUserInfoSuccess\");\n } catch (e) {\n commit(\"updateUserInfoFailure\", e);\n dispatch(\"getUserSettings\");\n }\n },\n async getUserSettings({ commit }) {\n try {\n commit(\"getUserSettingsStart\");\n const { data } = await apollo.query({\n query: GET_USER_SETTINGS,\n variables: { userId: getTokenUserId() },\n });\n\n commit(\n \"getUserSettingsSuccess\",\n serializeUserSettings(data, data.locales)\n );\n } catch (e) {\n commit(\"getUserSettingsFailure\", e);\n }\n },\n async closeAccount({ commit }, credentials) {\n try {\n commit(\"closeAccountStart\");\n await UserSettingsService.closeAccount(credentials);\n commit(\"closeAccountSuccess\");\n } catch (e) {\n commit(\"closeAccountFailure\", e);\n return Promise.reject(e);\n }\n },\n async changeUserPassword({ commit }, passwords) {\n try {\n commit(\"changeUserPasswordStart\");\n await UserSettingsService.changePassword(passwords);\n commit(\"changeUserPasswordSuccess\");\n } catch (e) {\n commit(\"changeUserPasswordFailure\", e);\n return Promise.reject(e);\n }\n },\n async changeUserEmail({ commit }, credentials) {\n try {\n commit(\"changeUserEmailStart\");\n await UserSettingsService.changeEmail(credentials);\n commit(\"changeUserEmailSuccess\");\n } catch (e) {\n commit(\"changeUserEmailFailure\", e);\n return Promise.reject(e);\n }\n },\n },\n};\n","import gql from \"graphql-tag\";\n\nexport const GET_API_INFO = gql`\n query getApiKeys {\n api_keys {\n id\n key\n name\n }\n }\n`;\nexport const CREATE_API_KEY = gql`\n mutation ($apiKeyName: String = null) {\n insert_api_keys(objects: { name: $apiKeyName }) {\n affected_rows\n }\n }\n`;\nexport const REMOVE_API_KEY = gql`\n mutation ($key: uuid!) {\n delete_api_keys(where: { key: { _eq: $key } }) {\n affected_rows\n }\n }\n`;\n\nexport const GET_API_KEY_DETAILS = gql`\n query getApiKeyDetails($apiKeyId: uuid!) {\n api_keys(where: { id: { _eq: $apiKeyId } }) {\n id\n key\n name\n origins {\n id\n origin\n }\n }\n }\n`;\n\nexport const UPDATE_API_KEY_DETAILS = gql`\n mutation updateApiKeyDetails(\n $apiKeyId: uuid!\n $apiKeyName: String!\n $origins: [api_key_origins_insert_input!]!\n ) {\n update_api_keys(\n where: { id: { _eq: $apiKeyId } }\n _set: { name: $apiKeyName }\n ) {\n affected_rows\n }\n delete_api_key_origins(where: { api_key_id: { _eq: $apiKeyId } }) {\n affected_rows\n }\n insert_api_key_origins(objects: $origins) {\n affected_rows\n }\n }\n`;\n","import { defaultClient as apollo } from \"@/plugins/apollo/apollo-account\";\nimport {\n GET_API_INFO,\n CREATE_API_KEY,\n REMOVE_API_KEY,\n GET_API_KEY_DETAILS,\n UPDATE_API_KEY_DETAILS,\n} from \"@/services/settings/api\";\n\nconst serializeApiKeyDetailsToUpdate = (apiKeyDetails) => {\n if (!apiKeyDetails) return {};\n console.log(apiKeyDetails.name, apiKeyDetails);\n const origins = apiKeyDetails.origins.map((o) => ({\n ...o,\n api_key_id: apiKeyDetails.id,\n }));\n return {\n apiKeyId: apiKeyDetails.id,\n apiKeyName: apiKeyDetails.name,\n origins,\n };\n};\n\nconst initState = () => ({\n apiKeysLoading: false,\n apiKeysError: null,\n apiKeys: null,\n apiKeyDetails: null,\n});\n\nexport default {\n namespaced: true,\n state: initState(),\n getters: {\n apiKeysLoading: ({ apiKeysLoading }) => apiKeysLoading,\n apiKeysError: ({ apiKeysError }) => apiKeysError,\n apiKeys: ({ apiKeys }) => apiKeys,\n apiKeyDetails: ({ apiKeyDetails }) => apiKeyDetails,\n apiKeyOrigins: ({ apiKeyDetails }) => apiKeyDetails?.origins ?? [],\n },\n mutations: {\n reset(state) {\n Object.assign(state, initState());\n },\n getApiSettingsStart(state) {\n state.apiKeysLoading = true;\n state.apiKeysError = null;\n state.apiKeys = null;\n },\n getApiSettingsSuccess(state, apiKeys) {\n state.apiKeysLoading = false;\n state.apiKeysError = null;\n state.apiKeys = apiKeys;\n },\n getApiSettingsFailure(state, error) {\n state.apiKeysLoading = false;\n state.apiKeysError = error;\n state.apiKeys = null;\n },\n setApiKeyDetails(state, apiKeyDetails = null) {\n state.apiKeyDetails = apiKeyDetails;\n },\n },\n actions: {\n async getApiSettings({ commit }) {\n try {\n commit(\"getApiSettingsStart\");\n const { data } = await apollo.query({\n query: GET_API_INFO,\n });\n\n commit(\"getApiSettingsSuccess\", data.api_keys);\n } catch (e) {\n commit(\"getApiSettingsFailure\", e);\n }\n },\n async createApiKey({ commit, dispatch }, { apiKeyName }) {\n try {\n await apollo.mutate({\n mutation: CREATE_API_KEY,\n variables: { apiKeyName },\n });\n return dispatch(\"getApiSettings\");\n } catch (e) {\n commit(\"getApiSettingsFailure\", e);\n }\n },\n async removeApiKey({ commit, dispatch }, key) {\n try {\n await apollo.mutate({\n mutation: REMOVE_API_KEY,\n variables: { key },\n });\n return dispatch(\"getApiSettings\");\n } catch (e) {\n commit(\"getApiSettingsFailure\", e);\n }\n },\n async getApiKeyDetails({ commit }, apiKeyId) {\n try {\n const { data } = await apollo.query({\n query: GET_API_KEY_DETAILS,\n variables: { apiKeyId },\n });\n\n commit(\"setApiKeyDetails\", data.api_keys[0]);\n } catch (e) {\n console.log(e);\n commit(\"setApiKeyDetails\");\n throw Error(e.message);\n }\n },\n async updateApiKeyOrigin({ commit, dispatch, getters }) {\n try {\n const apiKeyDetails = getters[\"apiKeyDetails\"];\n console.log(\"apiKeyDetails\", apiKeyDetails);\n await apollo.mutate({\n mutation: UPDATE_API_KEY_DETAILS,\n variables: serializeApiKeyDetailsToUpdate(apiKeyDetails),\n });\n return dispatch(\"getApiKeyDetails\", apiKeyDetails.id);\n } catch (e) {\n console.log(e);\n commit(\"getApiKeyDetails\");\n throw Error(e.message);\n }\n },\n },\n};\n","import gql from \"graphql-tag\";\nimport axios from \"@/plugins/axios\";\n\nexport const GET_BILLING_SETTINGS = gql`\n query getBillingSettings($accountId: uuid!) {\n accounts_plans(where: { account: { id: { _eq: $accountId } } }) {\n account {\n customer_id\n }\n is_subscribed\n expiry_date\n masked_card\n rectoken_lifetime\n plan {\n id\n label\n }\n }\n account_billing_address(where: { account_id: { _eq: $accountId } }) {\n address\n zip_code\n city\n country\n email\n first_name\n last_name\n company_name\n vat\n }\n }\n`;\nexport const GET_ORDERS = gql`\n query getOrders(\n $accountId: uuid!\n $limit: Int = 20\n $offset: Int = 0\n $orderBy: [orders_order_by!]! = { created_at: desc }\n ) {\n orders(\n where: { account_id: { _eq: $accountId } }\n order_by: $orderBy\n limit: $limit\n offset: $offset\n ) {\n id\n created_at\n order_status\n payment_url\n period_start\n currency\n amount\n plan {\n id\n label\n }\n invoice_file {\n key\n }\n }\n }\n`;\n\nexport const SUBSCRIBE_PLAN = gql`\n mutation subscribePlan($accountId: uuid!, $isSubscribed: Boolean!) {\n update_accounts_plans(\n where: { account: { id: { _eq: $accountId } } }\n _set: { is_subscribed: $isSubscribed }\n ) {\n affected_rows\n }\n }\n`;\n\nexport const UPDATE_BILLING_ADDRESS = gql`\n mutation updateBillingAddress(\n $accountId: uuid!\n $billingAddress: account_billing_address_set_input!\n ) {\n update_account_billing_address(\n where: { account_id: { _eq: $accountId } }\n _set: $billingAddress\n ) {\n affected_rows\n }\n }\n`;\n\nexport const GET_PAID_ORDER_BY_ID = gql`\n query getPaidOrderById($orderId: String!) {\n orders(\n where: { id: { _eq: $orderId }, order_status: { _eq: \"approved\" } }\n ) {\n id\n amount\n currency\n email\n masked_card\n payment_frequency\n plan {\n id\n label\n }\n }\n }\n`;\n\nexport const verifyCard = (variables) => {\n return axios.post(\"/verify-card\", variables);\n};\n\n// export const GET_CURRENT_PLAN_ID = gql`\n// query getCurrentPlanId($accountId: uuid!) {\n// account_plan: accounts_plans(\n// where: { account: { id: { _eq: $accountId } } }\n// limit: 1\n// order_by: { created_at: desc }\n// ) {\n// plan {\n// id\n// }\n// }\n// }\n// `;\n","import {\n UPDATE_BILLING_ADDRESS,\n GET_BILLING_SETTINGS,\n SUBSCRIBE_PLAN,\n GET_ORDERS,\n verifyCard,\n GET_PAID_ORDER_BY_ID,\n // GET_CURRENT_PLAN_ID,\n} from \"@/services/billing\";\nimport { defaultClient as apollo } from \"@/plugins/apollo/apollo-account\";\n\nconst serializeOrderVariables = (rootGetters, getters) => {\n const accountId = rootGetters[\"account/account\"]?.id;\n const limit = getters[\"ordersLimit\"];\n const offset = getters[\"ordersOffset\"];\n\n return { accountId, limit, offset };\n};\n\nconst initState = () => ({\n orders: [],\n accountPlan: null,\n billingAddress: null,\n loading: false,\n errors: null,\n // pagination\n ordersOffset: 0,\n ordersLimit: 50,\n ordersLoading: false,\n ordersMoreLoading: false,\n ordersError: false,\n loadedAll: false,\n paidOrder: null,\n // currentPlanId: null,\n});\n\nexport default {\n namespaced: true,\n state: initState(),\n getters: {\n orders: ({ orders }) => orders,\n accountPlan: ({ accountPlan }) => accountPlan,\n billingAddress: ({ billingAddress }) => billingAddress,\n loading: ({ loading }) => loading,\n errors: ({ errors }) => errors,\n ordersOffset: ({ ordersOffset }) => ordersOffset,\n ordersMoreLoading: ({ ordersMoreLoading }) => ordersMoreLoading,\n ordersLimit: ({ ordersLimit }) => ordersLimit,\n loadedAll: ({ loadedAll }) => loadedAll,\n paidOrder: ({ paidOrder }) => paidOrder,\n // currentPlanId: ({ currentPlanId }) => currentPlanId,\n },\n mutations: {\n reset(state) {\n Object.assign(state, initState());\n },\n // get billing settings\n getBillingSettingsStart(state) {\n state.loading = true;\n state.errors = null;\n state.accountPlan = null;\n state.billingAddress = null;\n },\n getBillingSettingsSuccess(state, payload) {\n state.loading = false;\n state.accountPlan = payload.accounts_plans?.[0];\n state.billingAddress = payload.account_billing_address?.[0];\n },\n getBillingSettingsFailure(state, e) {\n state.loading = false;\n state.ordersError = e;\n state.accountPlan = null;\n state.billingAddress = null;\n },\n // get orders\n getOrdersStart(state) {\n state.loadedAll = false;\n state.ordersOffset = 0;\n\n state.ordersLoading = true;\n state.ordersError = null;\n state.orders = [];\n },\n getOrdersSuccess(state, orders) {\n state.ordersLoading = false;\n state.orders = orders;\n },\n getOrdersFailure(state, e) {\n state.ordersLoading = false;\n state.ordersError = e;\n },\n // get more orders\n getMoreOrdersStart(state) {\n state.ordersMoreLoading = true;\n state.ordersError = null;\n state.ordersOffset += state.ordersLimit;\n },\n getMoreOrdersSuccess(state, orders) {\n state.ordersMoreLoading = false;\n state.orders = [...state.orders, ...(orders ?? [])];\n if (orders.length < state.ordersLimit) state.loadedAll = true;\n },\n getMoreOrdersFailure(state, e) {\n state.ordersOffset = Math.max(0, state.ordersOffset - state.ordersLimit);\n state.ordersMoreLoading = false;\n state.ordersError = e;\n },\n subscribePlan(state, isSubscribed) {\n state.accountPlan.is_subscribed = isSubscribed;\n },\n updateBillingAddress(state, billingAddress) {\n Object.assign(state.billingAddress, billingAddress);\n },\n updateAccountPlan(state, accountPlan) {\n Object.assign(state.accountPlan, accountPlan);\n },\n getPaidOrderByIdSuccess(state, paidOrder) {\n state.paidOrder = paidOrder;\n },\n getPaidOrderByIdStart(state) {\n state.paidOrder = null;\n },\n // setCurrentPlanId(state, currentPlanId) {\n // state.currentPlanId = currentPlanId;\n // },\n },\n actions: {\n async getPaidOrderById({ commit }, orderId) {\n try {\n commit(\"getPaidOrderByIdStart\");\n\n const { data } = await apollo.query({\n query: GET_PAID_ORDER_BY_ID,\n variables: { orderId },\n });\n commit(\"getPaidOrderByIdSuccess\", data.orders[0]);\n } catch (e) {\n console.log(e);\n commit(\"getPaidOrderByIdStart\");\n }\n },\n async getBillingSettings({ commit, rootGetters }) {\n try {\n commit(\"getBillingSettingsStart\");\n const accountId = rootGetters[\"account/account\"]?.id;\n\n const { data } = await apollo.query({\n query: GET_BILLING_SETTINGS,\n variables: { accountId },\n });\n commit(\"getBillingSettingsSuccess\", data);\n } catch (e) {\n console.log(e);\n commit(\"getBillingSettingsFailure\", e);\n }\n },\n async getOrders({ commit, rootGetters, getters }) {\n try {\n commit(\"getOrdersStart\");\n const { data } = await apollo.query({\n query: GET_ORDERS,\n variables: serializeOrderVariables(rootGetters, getters),\n });\n commit(\"getOrdersSuccess\", data.orders);\n } catch (e) {\n console.log(e);\n commit(\"getOrdersFailure\", e);\n }\n },\n async getMoreOrders({ commit, rootGetters, getters }) {\n try {\n if (getters[\"loadedAll\"]) return;\n commit(\"getMoreOrdersStart\");\n const { data } = await apollo.query({\n query: GET_ORDERS,\n variables: serializeOrderVariables(rootGetters, getters),\n });\n commit(\"getMoreOrdersSuccess\", data.orders);\n } catch (e) {\n commit(\"getMoreOrdersFailure\", e);\n }\n },\n async subscribePlan({ commit, rootGetters }, isSubscribed) {\n try {\n const accountId = rootGetters[\"account/account\"]?.id;\n await apollo.mutate({\n mutation: SUBSCRIBE_PLAN,\n variables: { isSubscribed, accountId },\n });\n commit(\"subscribePlan\", isSubscribed);\n } catch (e) {\n console.log(e);\n }\n },\n async updateBillingAddress({ commit, rootGetters }, billingAddress) {\n try {\n const accountId = rootGetters[\"account/account\"]?.id;\n await apollo.mutate({\n mutation: UPDATE_BILLING_ADDRESS,\n variables: { billingAddress, accountId },\n });\n commit(\"updateBillingAddress\", billingAddress);\n } catch (e) {\n console.log(e);\n }\n },\n async verifyCary(context, variables) {\n try {\n await verifyCard(variables);\n } catch (e) {\n console.log(e);\n }\n },\n // async getCurrentPlanId({ commit, rootGetters }) {\n // try {\n // const accountId = rootGetters[\"account/account\"]?.id;\n //\n // const { data } = await apollo.query({\n // query: GET_CURRENT_PLAN_ID,\n // variables: { accountId },\n // });\n //\n // commit(\"setCurrentPlanId\", data.account_plan?.[0]?.plan?.id || null);\n // } catch (e) {\n // console.log(e);\n // }\n // },\n },\n};\n","const initState = () => ({\n isOpenSidebar: false,\n});\n\nexport default {\n namespaced: true,\n state: initState(),\n getters: {\n isOpenSidebar: ({ isOpenSidebar }) => isOpenSidebar,\n },\n mutations: {\n toggleSidebar(state, bool = false) {\n state.isOpenSidebar = bool;\n },\n },\n actions: {},\n};\n","import gql from \"graphql-tag\";\n\nexport const GET_ACCOUNTS = gql`\n query getManagerAccount($ownerId: uuid!) {\n accounts(where: { owner_id: { _eq: $ownerId } }) {\n id\n contacts {\n first_name\n last_name\n company\n }\n owner {\n id\n email\n avatar_url\n manager_roles {\n role {\n id\n label\n }\n }\n }\n }\n }\n`;\n","import { GET_ACCOUNTS } from \"@/services/backoffice/account\";\nimport { MANAGER_APOLLO_CONTEXT } from \"@/constants/backoffice/apollo-client\";\nimport { getTokenUserId } from \"@/utils/token\";\nimport { defaultClient as apollo } from \"@/plugins/apollo/apollo-account\";\n\nconst serializeMyAccount = (account) => {\n if (!account) throw Error(\"Account is not fount\");\n return {\n ...account,\n ...(account.contacts?.[0] ?? {}),\n ...(account.owner ?? {}),\n };\n};\n\nconst initState = () => ({\n account: null,\n error: null,\n loading: false,\n});\n\nexport default {\n namespaced: true,\n state: initState(),\n getters: {\n account: ({ account }) => account,\n errors: ({ errors }) => errors,\n loading: ({ loading }) => loading,\n accountPlan: ({ accountPlan }) => accountPlan,\n accountName: ({ account }) =>\n account?.company ||\n (account?.first_name && `${account?.first_name} ${account?.last_name}`) ||\n account?.email,\n },\n mutations: {\n reset(state) {\n Object.assign(state);\n },\n getAccountsStart(state) {\n state.account = null;\n state.error = null;\n state.loading = true;\n },\n getAccountsSuccess(state, account) {\n state.account = account;\n state.loading = false;\n },\n getAccountsFailure(state, e) {\n state.account = null;\n state.error = e;\n state.loading = false;\n },\n },\n actions: {\n async getAccount({ commit }) {\n try {\n commit(\"getAccountsStart\");\n\n const { data } = await apollo.query({\n context: MANAGER_APOLLO_CONTEXT,\n query: GET_ACCOUNTS,\n variables: { ownerId: getTokenUserId() },\n });\n const account = serializeMyAccount(data.accounts[0]);\n\n if (!account) throw Error(\"The account is not found\");\n commit(\"getAccountsSuccess\", account);\n } catch (e) {\n commit(\"getAccountsFailure\", e);\n return Promise.reject(e);\n }\n },\n async getUpdatedAccount({ commit }) {\n try {\n const { data } = await apollo.query({\n context: MANAGER_APOLLO_CONTEXT,\n query: GET_ACCOUNTS,\n });\n const account = serializeMyAccount(data.accounts[0]);\n commit(\"getAccountsSuccess\", account);\n } catch (e) {\n console.log(e);\n }\n },\n },\n};\n","import gql from \"graphql-tag\";\nimport axios from \"@/plugins/axios\";\n\nexport const GET_TICKETS_LIST = gql`\n query getTicketsList(\n $where: help_center_tickets_bool_exp!\n $limit: Int = 20\n $offset: Int = 0\n ) {\n help_center_tickets(\n order_by: { created_at: desc }\n limit: $limit\n offset: $offset\n where: $where\n ) {\n id\n ticket\n type\n email\n status\n assigned_to_id\n }\n }\n`;\n\nexport const GET_TICKET_DETAILS = gql`\n query getTicketsDetails($ticket: Int!) {\n help_center_tickets(where: { ticket: { _eq: $ticket } }) {\n ticket\n created_at\n email\n name\n subject\n description\n type\n status\n assigned_to_id\n }\n }\n`;\n\nexport const GET_TICKET_REPLIES = gql`\n query getTicketReplies($ticket: Int!) {\n help_center_messages(\n where: { ticket: { _eq: $ticket } }\n order_by: { created_at: asc }\n ) {\n id\n content\n manager_id\n created_at\n type\n attachments {\n file {\n key\n original_name\n mime_type\n }\n }\n }\n }\n`;\n\nexport const SAVE_TICKET = gql`\n mutation saveTicket($ticket: Int!, $assigned_to_id: uuid!, $status: String!) {\n update_help_center_tickets(\n where: { ticket: { _eq: $ticket } }\n _set: { status: $status, assigned_to_id: $assigned_to_id }\n ) {\n affected_rows\n }\n }\n`;\n\nexport const DELETE_OLD_TICKET_REPLIES = gql`\n mutation deleteOldTicketReplies($repliesToDeleteIds: [uuid!]!) {\n update_files(\n where: {\n _or: [\n {\n attachments_help_center_messages: {\n message_id: { _in: $repliesToDeleteIds }\n }\n }\n {\n files_help_center_messages: {\n message_id: { _in: $repliesToDeleteIds }\n }\n }\n ]\n }\n _set: { unsaved: true }\n ) {\n affected_rows\n }\n delete_files_help_center_messages(\n where: { message_id: { _in: $repliesToDeleteIds } }\n ) {\n affected_rows\n }\n delete_attachments_help_center_messages(\n where: { message_id: { _in: $repliesToDeleteIds } }\n ) {\n affected_rows\n }\n delete_help_center_messages(where: { id: { _in: $repliesToDeleteIds } }) {\n affected_rows\n }\n }\n`;\n\nexport const DELETE_TICKETS = gql`\n mutation deleteTickets($tickets: [Int!]!) {\n update_files(\n where: {\n _or: [\n {\n attachments_help_center_messages: {\n help_center_message: { ticket: { _in: $tickets } }\n }\n }\n {\n files_help_center_messages: {\n help_center_message: { ticket: { _in: $tickets } }\n }\n }\n ]\n }\n _set: { unsaved: true }\n ) {\n affected_rows\n }\n delete_files_help_center_messages(\n where: { help_center_message: { ticket: { _in: $tickets } } }\n ) {\n affected_rows\n }\n delete_attachments_help_center_messages(\n where: { help_center_message: { ticket: { _in: $tickets } } }\n ) {\n affected_rows\n }\n delete_help_center_messages(where: { ticket: { _in: $tickets } }) {\n affected_rows\n }\n delete_help_center_tickets(where: { ticket: { _in: $tickets } }) {\n affected_rows\n }\n }\n`;\n\nexport const ASSIGN_TICKETS = gql`\n mutation assignRequests($tickets: [Int!]!, $assignedToId: uuid) {\n update_help_center_tickets(\n where: { ticket: { _in: $tickets } }\n _set: { assigned_to_id: $assignedToId }\n ) {\n affected_rows\n }\n }\n`;\nexport const REPLY_TICKETS = gql`\n mutation replyTickets($replyObjects: [help_center_messages_insert_input!]!) {\n insert_help_center_messages(objects: $replyObjects) {\n affected_rows\n }\n }\n`;\n\nexport const sendReplyTicketEmails = (repliesIds) => {\n return axios.post(\"/send-reply-tickets-emails\", { ids: repliesIds });\n};\n","import axios from \"@/plugins/axios\";\nimport gql from \"graphql-tag\";\nexport const copyFiles = (credentials) => {\n return axios.post(\"/backoffice-copy\", credentials);\n};\nconst uploadFile = (formData, onUploadProgress) => {\n const configs = {};\n if (onUploadProgress) configs.onUploadProgress = onUploadProgress;\n return axios.post(\"/backoffice-upload\", formData, configs);\n};\n\nconst deleteFile = (variables) => {\n return axios.post(\"/backoffice-delete\", variables);\n};\n\nexport const UPDATE_FILES_PARAMS = gql`\n mutation updateFilesParams(\n $filesKeysToRemove: [String!] = []\n $filesKeysToAdd: [String!] = []\n ) {\n saved_files: update_files(\n where: { key: { _in: $filesKeysToAdd } }\n _set: { unsaved: false }\n ) {\n affected_rows\n }\n unsaved_files: update_files(\n where: { key: { _in: $filesKeysToRemove } }\n _set: { unsaved: true }\n ) {\n affected_rows\n }\n }\n`;\n\nexport const GET_FILES_BY_KEYS = gql`\n query getFilesByKeys($filesKeys: [String!] = []) {\n files(where: { key: { _in: $filesKeys } }) {\n id\n key\n }\n }\n`;\n\nexport default {\n uploadFile,\n deleteFile,\n};\n","import {\n GET_TICKETS_LIST,\n GET_TICKET_DETAILS,\n GET_TICKET_REPLIES,\n DELETE_OLD_TICKET_REPLIES,\n SAVE_TICKET,\n DELETE_TICKETS,\n ASSIGN_TICKETS,\n REPLY_TICKETS,\n sendReplyTicketEmails,\n} from \"@/services/backoffice/helpdesk\";\nimport { MANAGER_APOLLO_CONTEXT } from \"@/constants/backoffice/apollo-client\";\nimport { v4 as uuidv4 } from \"uuid\";\n// import { uploadHTMLImages } from \"@/utils/files\";\nimport { GET_FILES_BY_KEYS } from \"@/services/backoffice/files\";\nimport { defaultClient as apollo } from \"@/plugins/apollo/apollo-account\";\n\n// todo add order by column\nconst serializeTickets = (getters, filters) => {\n const where = {};\n const limit = getters[\"limit\"];\n const offset = getters[\"offset\"];\n\n const { ticket, email, status, type, assigned_to_id } = filters;\n\n if (email) where.email = { _ilike: `%${email}%` };\n if (ticket) where.ticket = { _eq: ticket };\n if (status) where.status = { _eq: status };\n if (type) where.type = { _eq: type };\n if (assigned_to_id === \"not assigned\")\n where.assigned_to_id = { _is_null: true };\n else if (assigned_to_id) where.assigned_to_id = { _eq: assigned_to_id };\n\n return {\n where,\n limit,\n offset,\n };\n};\n\nconst serializeReplyObjects = async (rootGetters, dispatch, reply, tickets) => {\n const manager_id = rootGetters[\"backofficeAccount/account\"]?.owner?.id;\n reply.description = reply.editor.root.innerHTML;\n const filesKeys = rootGetters[\"backofficeFiles/filesKeysToAdd\"];\n\n const { data } = await apollo.query({\n query: GET_FILES_BY_KEYS,\n context: MANAGER_APOLLO_CONTEXT,\n variables: { filesKeys },\n });\n const imageFiles = data.files || [];\n const files = { data: imageFiles.map((f) => ({ file_id: f.id })) };\n\n return tickets.map((ticket) => ({\n id: uuidv4(),\n created_at: new Date().toISOString(),\n content: reply.description,\n ticket: ticket.ticket,\n type: \"response\",\n manager_id,\n files,\n }));\n};\n\nconst serializeTicketToSave = (getters) => ({\n ticket: getters.ticketDetails?.ticket,\n status: getters.ticketDetails?.status,\n assigned_to_id: getters.ticketDetails?.assigned_to_id,\n});\n\nexport const initState = () => ({\n limit: 50,\n offset: 0,\n loadedAll: false,\n tickets: [],\n ticketsLoading: false,\n ticketsMoreLoading: false,\n ticketsError: null,\n\n isLoadingTicketDetails: false,\n ticketDetails: null,\n ticketReplies: [],\n\n selectedTickets: [],\n repliesToDelete: [],\n});\n\nexport default {\n namespaced: true,\n state: initState(),\n getters: {\n limit: ({ limit }) => limit,\n offset: ({ offset }) => offset,\n loadedAll: ({ loadedAll }) => loadedAll,\n tickets: ({ tickets }) => tickets,\n ticketsLoading: ({ ticketsLoading }) => ticketsLoading,\n ticketsMoreLoading: ({ ticketsMoreLoading }) => ticketsMoreLoading,\n ticketsError: ({ ticketsError }) => ticketsError,\n\n selectedTickets: ({ selectedTickets }) => selectedTickets,\n repliesToDelete: ({ repliesToDelete }) => repliesToDelete,\n\n ticketDetails: ({ ticketDetails }) => ticketDetails,\n ticketReplies: ({ ticketReplies }) => ticketReplies,\n },\n mutations: {\n reset(state) {\n Object.assign(state, initState());\n },\n selectTickets(state, tickets = []) {\n state.selectedTickets = tickets;\n },\n\n // get tickets list\n getTicketsListStart(state) {\n state.loadedAll = false;\n state.offset = 0;\n\n state.ticketsLoading = true;\n state.ticketsError = null;\n state.tickets = [];\n },\n getTicketsListSuccess(state, tickets) {\n state.ticketsLoading = false;\n state.tickets = tickets;\n },\n getTicketsListFailure(state, e) {\n state.ticketsLoading = false;\n state.ticketsError = e;\n },\n // get more tickets list\n getMoreTicketsListStart(state) {\n state.ticketsMoreLoading = true;\n state.ticketsError = null;\n state.offset += state.limit;\n },\n getMoreTicketsListSuccess(state, tickets) {\n state.ticketsMoreLoading = false;\n state.tickets = [...state.tickets, ...(tickets ?? [])];\n if (tickets.length < state.limit) state.loadedAll = true;\n },\n getMoreTicketsListFailure(state, e) {\n state.offset = Math.max(0, state.offset - state.limit);\n state.ticketsMoreLoading = false;\n state.ticketsError = e;\n },\n // ticket details\n getTicketDetailsStart(state) {\n state.isLoadingTicketDetails = true;\n },\n getTicketDetailsSuccess(state, payload) {\n state.isLoadingTicketDetails = false;\n state.ticketDetails = payload;\n },\n getTicketDetailsFailure(state) {\n state.isLoadingTicketDetails = false;\n state.ticketDetails = null;\n },\n getTicketReplies(state, ticketReplies) {\n state.ticketReplies = ticketReplies;\n },\n setRepliesToDelete(state, replies = []) {\n state.repliesToDelete = replies;\n if (!state.ticketReplies) return;\n state.ticketReplies = state.ticketReplies.filter(\n (c) => !replies.some((reply) => reply.id === c.id)\n );\n },\n setTicketDetails(state, { prop, value } = {}) {\n if (!prop) return;\n state.ticketDetails[prop] = value;\n },\n deleteSelectedTicketsSuccess(state) {\n state.tickets = state.tickets.filter((d) => {\n return !state.selectedTickets.some((s) => s.ticket === d.ticket);\n });\n state.selectedTickets = [];\n },\n deleteSelectedTicketsFailure(state) {\n state.selectedTickets = [];\n },\n assignSelectedTickets(state, assignToId) {\n state.selectedTickets.forEach((d) => (d.assigned_to_id = assignToId));\n },\n replySelectedTickets(state, replies) {\n if (state.ticketReplies) state.ticketReplies.push(...replies);\n },\n },\n actions: {\n async getTicketsList({ commit, getters }, { filters = {} } = {}) {\n try {\n commit(\"getTicketsListStart\");\n const { data } = await apollo.query({\n query: GET_TICKETS_LIST,\n context: MANAGER_APOLLO_CONTEXT,\n variables: serializeTickets(getters, filters),\n });\n commit(\"getTicketsListSuccess\", data.help_center_tickets);\n } catch (e) {\n console.log(e);\n commit(\"getTicketsListFailure\", e);\n }\n },\n async getMoreTicketsList({ commit, getters }, { filters = {} } = {}) {\n try {\n if (getters[\"loadedAll\"]) return;\n commit(\"getMoreTicketsListStart\");\n const { data } = await apollo.query({\n query: GET_TICKETS_LIST,\n context: MANAGER_APOLLO_CONTEXT,\n variables: serializeTickets(getters, filters),\n });\n commit(\"getMoreTicketsListSuccess\", data.help_center_tickets);\n } catch (e) {\n commit(\"getMoreTicketsListFailure\", e);\n }\n },\n async getTicketDetails({ commit }, variables = {}) {\n commit(\"getTicketDetailsStart\");\n try {\n const { data } = await apollo.query({\n query: GET_TICKET_DETAILS,\n context: MANAGER_APOLLO_CONTEXT,\n variables,\n });\n const ticketDetails = data.help_center_tickets[0];\n if (!ticketDetails) throw Error(\"The ticket doesn't exist\");\n commit(\"getTicketDetailsSuccess\", ticketDetails);\n } catch (result) {\n commit(\"getTicketDetailsFailure\");\n console.log(result);\n return Promise.reject(result);\n }\n },\n async getTicketReplies({ commit }, variables = {}) {\n try {\n const { data } = await apollo.query({\n query: GET_TICKET_REPLIES,\n context: MANAGER_APOLLO_CONTEXT,\n variables,\n });\n const ticketReplies = data.help_center_messages;\n if (!ticketReplies) throw Error(\"The ticket doesn't exist\");\n commit(\"getTicketReplies\", ticketReplies);\n } catch (result) {\n commit(\"getTicketReplies\");\n console.log(result);\n return Promise.reject(result);\n }\n },\n async saveTicket({ getters }) {\n try {\n await apollo.mutate({\n mutation: SAVE_TICKET,\n context: MANAGER_APOLLO_CONTEXT,\n variables: serializeTicketToSave(getters),\n });\n } catch (result) {\n console.log(result);\n }\n },\n async deleteOldTicketReplies({ commit, getters }) {\n try {\n const repliesToDeleteIds = getters.repliesToDelete.map((c) => c.id);\n\n await apollo.mutate({\n mutation: DELETE_OLD_TICKET_REPLIES,\n context: MANAGER_APOLLO_CONTEXT,\n variables: { repliesToDeleteIds },\n });\n commit(\"setRepliesToDelete\");\n } catch (result) {\n console.log(result);\n throw Error(result.message);\n }\n },\n async deleteTicket({ getters }) {\n try {\n await apollo.mutate({\n mutation: DELETE_TICKETS,\n context: MANAGER_APOLLO_CONTEXT,\n variables: {\n tickets: [getters.ticketDetails.ticket],\n },\n });\n } catch (result) {\n console.log(result);\n throw Error(result.message);\n }\n },\n async deleteSelectedTickets({ commit, getters }) {\n try {\n const tickets = getters.selectedTickets.map((ticket) => ticket.ticket);\n await apollo.mutate({\n mutation: DELETE_TICKETS,\n context: MANAGER_APOLLO_CONTEXT,\n variables: { tickets },\n });\n commit(\"deleteSelectedTicketsSuccess\");\n } catch (result) {\n commit(\"deleteSelectedTicketsFailure\");\n console.log(result);\n throw Error(result.message);\n }\n },\n async assignSelectedTickets({ commit, getters }, assignedToId) {\n try {\n const tickets = getters.selectedTickets.map((ticket) => ticket.ticket);\n await apollo.mutate({\n mutation: ASSIGN_TICKETS,\n context: MANAGER_APOLLO_CONTEXT,\n variables: { tickets, assignedToId },\n });\n commit(\"assignSelectedTickets\", assignedToId);\n } catch (result) {\n console.log(result);\n throw Error(result.message);\n }\n },\n async replySelectedTickets(\n { rootGetters, commit, dispatch },\n { reply, tickets }\n ) {\n try {\n const replyObjects = await serializeReplyObjects(\n rootGetters,\n dispatch,\n reply,\n tickets\n );\n\n // save email reply\n await apollo.mutate({\n mutation: REPLY_TICKETS,\n context: MANAGER_APOLLO_CONTEXT,\n variables: { replyObjects },\n });\n // save images\n await dispatch(\"backofficeFiles/updateFileParams\", {}, { root: true });\n\n // send email\n await sendReplyTicketEmails(replyObjects.map((r) => r.id));\n commit(\"replySelectedTickets\", replyObjects);\n } catch (result) {\n console.log(result);\n throw Error(result.message);\n }\n },\n },\n};\n","import gql from \"graphql-tag\";\n\nexport const GET_MANAGERS_NAMES = gql`\n query getManagers {\n users(where: { manager_roles: {} }) {\n id\n email\n own_account {\n contacts {\n first_name\n last_name\n company\n }\n }\n }\n }\n`;\n","import { GET_MANAGERS_NAMES } from \"@/services/backoffice/manager\";\nimport { MANAGER_APOLLO_CONTEXT } from \"@/constants/backoffice/apollo-client\";\nimport { defaultClient as apollo } from \"@/plugins/apollo/apollo-account\";\n\nconst serializeManagerNames = (users) => {\n return users.map((u) => {\n const id = u.id;\n const email = u.email;\n const firstName = u.own_account?.contacts?.[0]?.first_name;\n const lastName = u.own_account?.contacts?.[0]?.last_name;\n const company = u.own_account?.contacts?.[0]?.company;\n const fullName = firstName && lastName && `${firstName} ${lastName}`;\n return {\n name: fullName || firstName || lastName || company || email,\n id,\n };\n });\n};\n\nconst initState = () => ({\n managerNames: [],\n});\n\nexport default {\n namespaced: true,\n state: initState(),\n getters: {\n managerNames: ({ managerNames }) => managerNames,\n },\n mutations: {\n reset(state) {\n Object.assign(state, initState());\n },\n getManagersNamesSuccess(state, payload) {\n state.managerNames = payload;\n },\n },\n actions: {\n async getManagersNames({ commit }) {\n try {\n const { data } = await apollo.query({\n query: GET_MANAGERS_NAMES,\n context: MANAGER_APOLLO_CONTEXT,\n });\n commit(\"getManagersNamesSuccess\", serializeManagerNames(data.users));\n } catch (e) {\n console.log(e);\n }\n },\n },\n};\n","import FilesService, { UPDATE_FILES_PARAMS } from \"@/services/backoffice/files\";\nimport { MANAGER_APOLLO_CONTEXT } from \"@/constants/backoffice/apollo-client\";\nimport { defaultClient as apollo } from \"@/plugins/apollo/apollo-account\";\nimport { copyFiles } from \"@/services/backoffice/files\";\n\nconst initState = () => ({\n uploadingFilesCount: 0,\n loading: false,\n filesKeysToAdd: [],\n filesKeysToRemove: [],\n});\n\nexport default {\n namespaced: true,\n state: initState(),\n getters: {\n filesKeysToAdd: ({ filesKeysToAdd }) => filesKeysToAdd,\n filesKeysToRemove: ({ filesKeysToRemove }) => filesKeysToRemove,\n uploading: ({ uploadingFilesCount }) => Boolean(uploadingFilesCount),\n loading: ({ loading }) => loading,\n },\n mutations: {\n reset(state) {\n Object.assign(state, initState());\n },\n uploadFileStart(state) {\n state.uploadingFilesCount += 1;\n },\n uploadFileSuccess(state) {\n state.uploadingFilesCount = Math.max(0, state.uploadingFilesCount + 1);\n },\n uploadFileFailure(state) {\n state.uploadingFilesCount = Math.max(0, state.uploadingFilesCount - 1);\n },\n deleteFilesStart(state) {\n state.loading = true;\n },\n deleteFilesSuccess(state) {\n state.loading = false;\n },\n deleteFilesFailure(state) {\n state.loading = false;\n },\n setFilesKeysToAdd(state, key = []) {\n state.filesKeysToAdd = key;\n },\n addFilesKeysToAdd(state, key = []) {\n state.filesKeysToAdd.push(key);\n },\n setFilesKeysToRemove(state, key = []) {\n state.filesKeysToRemove = key;\n },\n addFilesKeysToRemove(state, key) {\n state.filesKeysToRemove.push(key);\n },\n },\n actions: {\n // unsaved === true - file will be removed when the next files cron job runs\n // ? we have two ways\n // first - upload file and immediately save check it as used\n // second - upload file and check as unsaved until the customer clicks save button after the click dispatch \"updateFileParams\"\n // then \"filesKeyToAdd\" will be checked as used; \"filesKeyToDelete\" will be checked as unsaved\n async uploadFile({ commit }, variables = {}) {\n try {\n if (!variables.file) return;\n\n commit(\"uploadFileStart\");\n const formData = new FormData();\n formData.append(\"directory\", variables.directory);\n if (variables.name) formData.append(\"name\", variables.name);\n if (variables.unsaved) formData.append(\"unsaved\", variables.unsaved);\n formData.append(\"upload\", variables.file, variables.file.name);\n\n const { data } = await FilesService.uploadFile(\n formData,\n variables.onUploadProgress\n );\n\n const isSaved =\n variables.unsaved !== false || variables.unsaved !== \"false\";\n if (isSaved) commit(\"addFilesKeysToAdd\", data.key);\n commit(\"uploadFileSuccess\");\n return data;\n } catch (e) {\n console.log(e);\n commit(\"uploadFileFailure\");\n return Promise.reject(e);\n }\n },\n async deleteFiles({ commit }, keys) {\n try {\n commit(\"deleteFilesStart\");\n await FilesService.deleteFile({ keys });\n commit(\"deleteFilesSuccess\");\n } catch (e) {\n console.log(e);\n commit(\"deleteFilesFailure\");\n return Promise.reject(e);\n }\n },\n async updateFileParams({ commit, getters }) {\n try {\n const { filesKeysToAdd, filesKeysToRemove } = getters;\n console.log(\"updateFileParams\", filesKeysToAdd, filesKeysToRemove);\n await apollo.mutate({\n mutation: UPDATE_FILES_PARAMS,\n context: MANAGER_APOLLO_CONTEXT,\n variables: { filesKeysToAdd, filesKeysToRemove },\n });\n commit(\"setFilesKeysToAdd\");\n commit(\"setFilesKeysToRemove\");\n } catch (e) {\n console.log(e);\n }\n },\n async copyFiles(context, { sourceKeys, keys, unsaved = true } = {}) {\n const { data } = await copyFiles({ sourceKeys, keys, unsaved });\n return data;\n },\n },\n};\n","import axios from \"@/plugins/axios\";\nimport gql from \"graphql-tag\";\n\nexport const GET_ALL_TRANSLATIONS = gql`\n query getTranslations {\n translations {\n key\n value\n language_code\n }\n }\n`;\n\nexport const SET_ALL_TRANSITIONS = gql`\n mutation setTransitions($translations: [translations_insert_input!]!) {\n insert_translations(\n objects: $translations\n on_conflict: {\n constraint: translations_key_language_code_key\n update_columns: [value]\n }\n ) {\n affected_rows\n }\n }\n`;\n\nexport const GET_LANGUAGES = gql`\n query getLanguages {\n locales(distinct_on: language_code) {\n language_code\n }\n }\n`;\n\nexport const translateTexts = (credentials) => {\n return axios.post(\"/translations\", credentials);\n};\n","import {\n GET_ALL_TRANSLATIONS,\n SET_ALL_TRANSITIONS,\n translateTexts,\n} from \"@/services/backoffice/internationalization\";\nimport { MANAGER_APOLLO_CONTEXT } from \"@/constants/backoffice/apollo-client\";\nimport { defaultClient as apollo } from \"@/plugins/apollo/apollo-account\";\nimport { GET_LANGUAGES } from \"@/services/backoffice/internationalization\";\n\nconst initState = () => ({\n translations: [],\n languages: [],\n});\n\nexport default {\n namespaced: true,\n state: initState(),\n getters: {\n translations: ({ translations }) => translations,\n languages: ({ languages }) => languages,\n },\n mutations: {\n reset(state) {\n Object.assign(state, initState());\n },\n setTranslations(state, translations = []) {\n state.translations = translations;\n },\n setLanguages(state, languages = []) {\n state.languages = languages;\n },\n },\n actions: {\n async getTranslations({ commit }) {\n try {\n const { data } = await apollo.query({\n query: GET_ALL_TRANSLATIONS,\n context: MANAGER_APOLLO_CONTEXT,\n });\n commit(\"setTranslations\", data.translations);\n } catch (result) {\n console.log(result);\n throw Error(result.message);\n }\n },\n async setTranslations(context, translations) {\n try {\n await apollo.mutate({\n mutation: SET_ALL_TRANSITIONS,\n context: MANAGER_APOLLO_CONTEXT,\n variables: { translations },\n });\n } catch (result) {\n console.log(result);\n throw Error(result.message);\n }\n },\n async getLanguages({ commit }) {\n try {\n const { data } = await apollo.query({\n query: GET_LANGUAGES,\n context: MANAGER_APOLLO_CONTEXT,\n });\n commit(\n \"setLanguages\",\n data.locales?.map((l) => ({ code: l.language_code }))\n );\n } catch (result) {\n console.log(result);\n throw Error(result.message);\n }\n },\n async translateTexts(context, { texts, languages } = {}) {\n const { data } = await translateTexts({ texts, languages });\n return data;\n },\n },\n};\n","import gql from \"graphql-tag\";\n\nexport const DELETE_ARTICLES = gql`\n mutation deleteArticles($ids: [uuid!]!) {\n update_files(\n where: { articles_files: { article_id: { _in: $ids } } }\n _set: { unsaved: true }\n ) {\n affected_rows\n }\n delete_article_blocks(where: { article_id: { _in: $ids } }) {\n affected_rows\n }\n delete_articles_files(where: { article_id: { _in: $ids } }) {\n affected_rows\n }\n delete_articles(where: { id: { _in: $ids } }) {\n affected_rows\n }\n }\n`;\nexport const GET_ARTICLE_DETAILS = gql`\n query getArticleDetails($id: uuid!) {\n articles(where: { id: { _eq: $id } }) {\n id\n created_at\n author_id\n blocks(order_by: { order: asc }) {\n id\n type\n created_at\n anchor_enabled\n anchor_key\n anchor_value\n content\n order\n show\n }\n visibility\n meta_title\n meta_description\n meta_image_key\n meta_language_code\n meta_category\n meta_path\n # meta_keywords\n card_title\n card_description\n card_image_key\n content_header_title\n content_header_description\n content_header_background_image_key\n content_header_button_text\n content_header_button_type\n }\n }\n`;\nexport const GET_ARTICLES_LIST = gql`\n query getArticlesList(\n $where: articles_bool_exp!\n $limit: Int = 20\n $offset: Int = 0\n ) {\n articles(limit: $limit, offset: $offset, where: $where) {\n id\n meta_path\n author_id\n visibility\n meta_category\n meta_language_code\n }\n }\n`;\n\nexport const GET_TRANSLATED_ARTICLES_BY_PATH = gql`\n query getTranslatedArticlesByPath($path: String!, $languageCode: String!) {\n articles(\n where: {\n meta_path: { _eq: $path }\n meta_language_code: { _neq: $languageCode }\n }\n ) {\n id\n meta_language_code\n meta_path\n meta_title\n }\n }\n`;\n\nexport const SAVE_ARTICLE = gql`\n mutation saveArticle(\n $object: articles_insert_input!\n $blocks: [article_blocks_insert_input!]!\n $articleBlocksToDelete: [uuid!]!\n $articleFilesToDelete: [String!]!\n ) {\n insert_articles(\n objects: [$object]\n on_conflict: {\n constraint: articles_pkey\n update_columns: [\n visibility\n meta_title\n meta_description\n meta_image_key\n meta_language_code\n meta_category\n meta_path\n # meta_keywords\n card_title\n card_description\n card_image_key\n content_header_title\n content_header_description\n content_header_background_image_key\n content_header_button_text\n content_header_button_type\n ]\n }\n ) {\n affected_rows\n }\n insert_article_blocks(\n objects: $blocks\n on_conflict: {\n constraint: article_blocks_pkey\n update_columns: [\n anchor_enabled\n anchor_key\n anchor_value\n type\n content\n order\n show\n ]\n }\n ) {\n affected_rows\n }\n delete_article_blocks(where: { id: { _in: $articleBlocksToDelete } }) {\n affected_rows\n }\n delete_articles_files(\n where: { file: { key: { _in: $articleFilesToDelete } } }\n ) {\n affected_rows\n }\n }\n`;\n","import { defaultClient as apollo } from \"@/plugins/apollo/apollo-account\";\nimport {\n DELETE_ARTICLES,\n GET_ARTICLE_DETAILS,\n GET_ARTICLES_LIST,\n SAVE_ARTICLE,\n GET_TRANSLATED_ARTICLES_BY_PATH,\n} from \"@/services/backoffice/articles\";\nimport { MANAGER_APOLLO_CONTEXT } from \"@/constants/backoffice/apollo-client\";\nimport { GET_FILES_BY_KEYS } from \"@/services/backoffice/files\";\nimport { v4 as uuidv4 } from \"uuid\";\nimport shortid from \"shortid\";\nimport {\n getCopiedArticleImages,\n getTranslatedArticle,\n serializeArticleImages,\n serializeArticleToTranslate,\n} from \"@/utils/blog-translations\";\n\n// todo add order by column\nconst serializeArticles = (getters, filters) => {\n const where = {};\n const limit = getters[\"limit\"];\n const offset = getters[\"offset\"];\n\n const { visibility, meta_path, category, author_id, language } = filters;\n\n if (meta_path) where.meta_path = { _ilike: `%${meta_path}%` };\n if (visibility !== null) where.visibility = { _eq: visibility };\n // if (status) where.status = { _eq: status };\n if (category) where.category = { _eq: category };\n // if (author_id === \"not assigned\") where.author_id = { _is_null: true };\n // else\n if (author_id) where.author_id = { _eq: author_id };\n if (language) where.meta_language_code = { _eq: language };\n\n return {\n where,\n limit,\n offset,\n };\n};\n\nconst serializeArticleDetails = async (filesKeys, articleDetails) => {\n const { data } = await apollo.query({\n query: GET_FILES_BY_KEYS,\n context: MANAGER_APOLLO_CONTEXT,\n variables: { filesKeys },\n });\n const files = data.files || [];\n const article_files = { data: files.map((f) => ({ file_id: f.id })) };\n\n return {\n id: articleDetails.id || uuidv4(),\n visibility: articleDetails.visibility,\n meta_title: articleDetails.meta_title,\n meta_description: articleDetails.meta_description,\n meta_image_key: articleDetails.meta_image_key,\n meta_language_code: articleDetails.meta_language_code,\n meta_category: articleDetails.meta_category,\n meta_path: articleDetails.meta_path,\n // meta_keywords: articleDetails.meta_keywords,\n card_title: articleDetails.card_title,\n card_description: articleDetails.card_description,\n card_image_key: articleDetails.card_image_key,\n content_header_title: articleDetails.content_header_title,\n content_header_description: articleDetails.content_header_description,\n content_header_background_image_key:\n articleDetails.content_header_background_image_key,\n content_header_button_text: articleDetails.content_header_button_text,\n content_header_button_type: articleDetails.content_header_button_type,\n article_files,\n };\n};\n\nconst serializeArticleDetailsBlocks = (object, articleDetails) => {\n return articleDetails.blocks?.map((b) => ({\n id: b.id || uuidv4(),\n article_id: object.id,\n anchor_enabled: b.anchor_enabled,\n anchor_value: b.anchor_value,\n anchor_key: b.anchor_key,\n content: b.content,\n type: b.type,\n order: b.order,\n show: b.show,\n }));\n};\n\nconst serializeDuplicateArticleDetails = (articleDetails) => ({\n id: uuidv4(),\n visibility: articleDetails.visibility,\n meta_title: articleDetails.meta_title,\n meta_description: articleDetails.meta_description,\n meta_image_key: null,\n meta_language_code: articleDetails.meta_language_code,\n meta_category: articleDetails.meta_category,\n meta_path: shortid(),\n // meta_keywords: articleDetails.meta_keywords,\n card_title: articleDetails.card_title,\n card_description: articleDetails.card_description,\n card_image_key: null,\n content_header_title: articleDetails.content_header_title,\n content_header_description: articleDetails.content_header_description,\n content_header_background_image_key: null,\n content_header_button_text: articleDetails.content_header_button_text,\n content_header_button_type: articleDetails.content_header_button_type,\n article_files: { data: [] },\n});\n\nconst serializeArticleDuplicateDetailsBlocks = (object, articleDetails) => {\n return articleDetails.blocks?.map((b) => ({\n id: uuidv4(),\n article_id: object.id,\n anchor_enabled: b.anchor_enabled,\n anchor_value: b.anchor_value,\n anchor_key: b.anchor_key,\n content: b.type === \"images\" ? [] : b.content,\n type: b.type,\n order: b.order,\n show: b.show,\n }));\n};\n\nconst serializeArticleVariablesToSave = async (filesKeys, articleDetails) => {\n const object = await serializeArticleDetails(filesKeys, articleDetails);\n const blocks = serializeArticleDetailsBlocks(object, articleDetails);\n return { blocks, object };\n};\n\nconst serializeArticleVariablesToDuplicate = (articleDetails) => {\n const object = serializeDuplicateArticleDetails(articleDetails);\n const blocks = serializeArticleDuplicateDetailsBlocks(object, articleDetails);\n return { object, blocks };\n};\n\nconst initState = () => ({\n limit: 50,\n offset: 0,\n loadedAll: false,\n articles: [],\n articlesLoading: false,\n articlesMoreLoading: false,\n articlesError: null,\n\n isLoadingArticleDetails: false,\n articleDetails: null,\n\n selectedArticles: [],\n articleBlocksToDelete: [],\n\n duplicatedPath: null,\n\n languagesToTranslate: [],\n\n translatedArticles: [],\n translatedArticlesLoading: false,\n translatedArticlesError: null,\n});\n\nexport default {\n namespaced: true,\n state: initState(),\n getters: {\n limit: ({ limit }) => limit,\n offset: ({ offset }) => offset,\n loadedAll: ({ loadedAll }) => loadedAll,\n articles: ({ articles }) => articles,\n articlesLoading: ({ articlesLoading }) => articlesLoading,\n articlesMoreLoading: ({ articlesMoreLoading }) => articlesMoreLoading,\n articlesError: ({ articlesError }) => articlesError,\n isLoadingArticleDetails: ({ isLoadingArticleDetails }) =>\n isLoadingArticleDetails,\n articleDetails: ({ articleDetails }) => articleDetails,\n selectedArticles: ({ selectedArticles }) => selectedArticles,\n articleBlocksToDelete: ({ articleBlocksToDelete }) => articleBlocksToDelete,\n duplicatedPath: ({ duplicatedPath }) => duplicatedPath,\n\n languagesToTranslate: ({ languagesToTranslate }) => languagesToTranslate,\n translatedArticles: ({ translatedArticles }) => translatedArticles,\n translatedArticlesLoading: ({ translatedArticlesLoading }) =>\n translatedArticlesLoading,\n translatedArticlesError: ({ translatedArticlesError }) =>\n translatedArticlesError,\n },\n mutations: {\n reset(state) {\n Object.assign(state, initState());\n },\n selectArticles(state, articles = []) {\n state.selectedArticles = articles;\n },\n\n // get articles list\n getArticlesListStart(state) {\n state.loadedAll = false;\n state.offset = 0;\n\n state.articlesLoading = true;\n state.articlesError = null;\n state.articles = [];\n },\n getArticlesListSuccess(state, articles) {\n state.articlesLoading = false;\n state.articles = articles;\n },\n getArticlesListFailure(state, e) {\n state.articlesLoading = false;\n state.articlesError = e;\n },\n // get more articles list\n getMoreArticlesListStart(state) {\n state.articlesMoreLoading = true;\n state.articlesError = null;\n state.offset += state.limit;\n },\n getMoreArticlesListSuccess(state, articles) {\n state.articlesMoreLoading = false;\n state.articles = [...state.articles, ...(articles ?? [])];\n if (articles.length < state.limit) state.loadedAll = true;\n },\n getMoreArticlesListFailure(state, e) {\n state.offset = Math.max(0, state.offset - state.limit);\n state.articlesMoreLoading = false;\n state.articlesError = e;\n },\n // article details\n getArticleDetailsStart(state) {\n state.isLoadingArticleDetails = true;\n },\n getArticleDetailsSuccess(state, payload) {\n state.isLoadingArticleDetails = false;\n state.articleDetails = payload;\n },\n getArticleDetailsFailure(state) {\n state.isLoadingArticleDetails = false;\n state.articleDetails = null;\n },\n\n // delete selected articles\n deleteSelectedArticlesSuccess(state) {\n state.articles = state.articles.filter((d) => {\n return !state.selectedArticles.some((s) => s.id === d.id);\n });\n state.selectedArticles = [];\n },\n deleteSelectedArticlesFailure(state) {\n state.selectedArticles = [];\n },\n setArticleBlocksToDelete(state, ids = []) {\n state.articleBlocksToDelete = ids;\n },\n setDuplicatedPath(state, ids = []) {\n state.duplicatedPath = ids;\n },\n setLanguagesToTranslate(state, languagesToTranslate = []) {\n state.languagesToTranslate = languagesToTranslate;\n },\n // get translated articles\n getTranslatedArticlesStart(state) {\n state.translatedArticlesLoading = true;\n state.translatedArticlesError = null;\n state.translatedArticles = [];\n },\n getTranslatedArticlesSuccess(state, articles) {\n state.translatedArticlesLoading = false;\n state.translatedArticles = articles;\n },\n getTranslatedArticlesFailure(state, e) {\n state.translatedArticlesLoading = false;\n state.translatedArticlesError = e;\n },\n },\n actions: {\n async getArticlesList({ commit, getters }, { filters = {} } = {}) {\n try {\n commit(\"getArticlesListStart\");\n const { data } = await apollo.query({\n query: GET_ARTICLES_LIST,\n context: MANAGER_APOLLO_CONTEXT,\n variables: serializeArticles(getters, filters),\n });\n commit(\"getArticlesListSuccess\", data.articles);\n } catch (e) {\n console.log(e);\n commit(\"getArticlesListFailure\", e);\n }\n },\n async getMoreArticlesList({ commit, getters }, { filters = {} } = {}) {\n try {\n if (getters[\"loadedAll\"]) return;\n commit(\"getMoreArticlesListStart\");\n const { data } = await apollo.query({\n query: GET_ARTICLES_LIST,\n context: MANAGER_APOLLO_CONTEXT,\n variables: serializeArticles(getters, filters),\n });\n commit(\"getMoreArticlesListSuccess\", data.articles);\n } catch (e) {\n commit(\"getMoreArticlesListFailure\", e);\n }\n },\n async getArticleDetails({ commit }, variables = {}) {\n commit(\"getArticleDetailsStart\");\n try {\n const { data } = await apollo.query({\n query: GET_ARTICLE_DETAILS,\n context: MANAGER_APOLLO_CONTEXT,\n variables,\n });\n const articleDetails = data.articles[0];\n if (!articleDetails) throw Error(\"The article doesn't exist\");\n commit(\"getArticleDetailsSuccess\", articleDetails);\n } catch (result) {\n commit(\"getArticleDetailsFailure\");\n console.log(result);\n return Promise.reject(result);\n }\n },\n async deleteSelectedArticles({ commit, getters }) {\n try {\n const ids = getters.selectedArticles.map((article) => article.id);\n await apollo.mutate({\n mutation: DELETE_ARTICLES,\n context: MANAGER_APOLLO_CONTEXT,\n variables: { ids },\n });\n commit(\"deleteSelectedArticlesSuccess\");\n } catch (result) {\n commit(\"deleteSelectedArticlesFailure\");\n console.log(result);\n throw Error(result.message);\n }\n },\n async deleteArticle(context, { id }) {\n try {\n await apollo.mutate({\n mutation: DELETE_ARTICLES,\n context: MANAGER_APOLLO_CONTEXT,\n variables: {\n ids: [id],\n },\n });\n } catch (result) {\n console.log(result);\n throw Error(result.message);\n }\n },\n async saveArticle({ rootGetters, dispatch, getters, commit }) {\n try {\n const articleBlocksToDelete = getters[\"articleBlocksToDelete\"];\n const filesKeys = rootGetters[\"backofficeFiles/filesKeysToAdd\"];\n const articleFilesToDelete =\n rootGetters[\"backofficeFiles/filesKeysToRemove\"];\n\n const articleDetails = getters[\"articleDetails\"];\n const { object, blocks } = await serializeArticleVariablesToSave(\n filesKeys,\n articleDetails\n );\n\n // save email reply\n const { error } = await apollo.mutate({\n mutation: SAVE_ARTICLE,\n context: MANAGER_APOLLO_CONTEXT,\n variables: {\n articleFilesToDelete,\n articleBlocksToDelete,\n object,\n blocks,\n },\n });\n\n if (error) return Promise.reject(error);\n // save images\n commit(\"setArticleBlocksToDelete\");\n await dispatch(\"backofficeFiles/updateFileParams\", {}, { root: true });\n } catch (result) {\n console.log(result);\n return Promise.reject(result);\n }\n },\n async duplicateArticle({ getters, commit }) {\n try {\n const articleDetails = getters[\"articleDetails\"];\n const { object, blocks } =\n serializeArticleVariablesToDuplicate(articleDetails);\n\n // save email reply\n const { error } = await apollo.mutate({\n mutation: SAVE_ARTICLE,\n context: MANAGER_APOLLO_CONTEXT,\n variables: {\n articleFilesToDelete: [],\n articleBlocksToDelete: [],\n object,\n blocks,\n },\n });\n\n if (error) return Promise.reject(error);\n // save images\n commit(\"setDuplicatedPath\", object.meta_path);\n } catch (result) {\n console.log(result);\n return Promise.reject(result);\n }\n },\n\n async getTranslatedArticles({ commit }, { path, languageCode }) {\n try {\n commit(\"getTranslatedArticlesStart\");\n const { data } = await apollo.query({\n query: GET_TRANSLATED_ARTICLES_BY_PATH,\n context: MANAGER_APOLLO_CONTEXT,\n variables: { path, languageCode },\n });\n commit(\"getTranslatedArticlesSuccess\", data.articles);\n } catch (e) {\n console.log(e);\n commit(\"getTranslatedArticlesFailure\", e);\n }\n },\n async createTranslatedArticles(\n { dispatch },\n { articleDetails, languages } // filesKeys articleBlocks\n ) {\n try {\n // serialize to translate\n const dataToTranslate = serializeArticleToTranslate(articleDetails);\n const textsToTranslate = dataToTranslate.map((i) => i.value);\n\n const filesToCopy = serializeArticleImages(articleDetails);\n const sourceKeys = filesToCopy.map((i) => i.value);\n\n // translate\n const { translatedTexts } = await dispatch(\n \"backofficeInternationalization/translateTexts\",\n { texts: textsToTranslate, languages },\n { root: true }\n );\n\n // articles by languages\n for (const l of languages) {\n // clone files\n const { files: copiedFiles } = await dispatch(\n \"backofficeFiles/copyFiles\",\n {\n sourceKeys,\n unsaved: true,\n },\n { root: true }\n );\n\n const copiedFilesKeys = copiedFiles.map((i) => i.key);\n\n // map translated text\n const translatedData = dataToTranslate.map((i, idx) => ({\n ...i,\n value: translatedTexts[l][idx],\n }));\n\n const translatedArticle = getTranslatedArticle(\n articleDetails,\n translatedData\n );\n\n // update images\n const copiedFilesToUpdate = filesToCopy.map((i, idx) => ({\n ...i,\n value: copiedFilesKeys[idx],\n }));\n getCopiedArticleImages(translatedArticle, copiedFilesToUpdate);\n\n // update unique props\n translatedArticle.id = uuidv4();\n translatedArticle.meta_language_code = l;\n\n // map variables\n const { object, blocks } = await serializeArticleVariablesToSave(\n copiedFilesKeys,\n translatedArticle\n );\n\n blocks.forEach((b) => (b.id = uuidv4()));\n\n const { error } = await apollo.mutate({\n mutation: SAVE_ARTICLE,\n context: MANAGER_APOLLO_CONTEXT,\n variables: {\n articleFilesToDelete: [],\n articleBlocksToDelete: [],\n object,\n blocks,\n },\n });\n if (error) return Promise.reject(error);\n }\n } catch (e) {\n console.log(e);\n }\n },\n },\n};\n","import gql from \"graphql-tag\";\n\nexport const GET_CHARTS_DATA = gql`\n query getChartsData(\n $usersFilters: users_bool_exp!\n $qrCodesFilters: qr_codes_bool_exp!\n $scansFilters: qr_code_scans_bool_exp!\n ) {\n users(where: $usersFilters) {\n created_at\n google_id\n last_login_at\n own_account {\n account_plan {\n current_plan_id\n }\n }\n }\n qr_codes(where: $qrCodesFilters) {\n created_at\n data_format\n }\n qr_code_scans(where: $scansFilters) {\n created_at\n qr_code {\n data_format\n }\n }\n }\n`;\n\nexport const GET_QR_CODE_SCANS_RATING = gql`\n query getQrCodeScansRating($filters: qr_codes_bool_exp!) {\n qr_codes(\n where: $filters\n order_by: { scans_aggregate: { count: desc } }\n limit: 50\n ) {\n account {\n owner {\n email\n }\n }\n data_format\n key\n scans_aggregate {\n aggregate {\n count\n }\n }\n }\n }\n`;\n\nexport const GET_QR_CODE_DETAILS = gql`\n query getQrCodeDetails($filters: qr_codes_bool_exp!) {\n qr_codes(where: $filters) {\n account {\n owner {\n email\n }\n }\n key\n data_format\n scans {\n created_at\n }\n }\n }\n`;\n","import { defaultClient as apollo } from \"@/plugins/apollo/apollo-account\";\nimport { MANAGER_APOLLO_CONTEXT } from \"@/constants/backoffice/apollo-client\";\nimport {\n GET_CHARTS_DATA,\n GET_QR_CODE_SCANS_RATING,\n GET_QR_CODE_DETAILS,\n} from \"@/services/backoffice/dashboard\";\nimport moment from \"moment/moment\";\n\nconst serializeChartData = (data) => {\n const users = data.users;\n const qrCodes = data.qr_codes;\n const scans = data.qr_code_scans;\n return { users, qrCodes, scans };\n};\n\nconst serializeQrCodesScansRating = (data) => {\n return (\n data.qr_codes?.map((qr) => ({\n email: qr.account?.owner?.email,\n type: qr.data_format,\n scans: qr.scans_aggregate?.aggregate?.count,\n shortId: qr.key,\n })) ?? []\n );\n};\n\nconst serializeChartDataFilter = (getters) => {\n return {\n created_at: {\n _gte: getters.filters.start,\n _lte: getters.filters.end,\n },\n };\n};\n\nconst initState = () => ({\n filters: {\n start: moment().subtract(14, \"days\").format(\"MM-DD-YYYY\"),\n end: moment().add(1, \"day\").format(\"MM-DD-YYYY\"),\n periodType: \"day\",\n },\n users: [],\n qrCodes: [],\n scans: [],\n chartsDataLoading: false,\n chartsDataError: null,\n\n qrCodesScansRating: null,\n qrCodesScansRatingLoading: false,\n qrCodesScansRatingError: null,\n qrCodeDetails: null,\n qrCodeDetailsLoading: false,\n qrCodeDetailsError: null,\n});\n\nexport default {\n namespaced: true,\n state: initState(),\n getters: {\n filters: ({ filters }) => filters,\n users: ({ users }) => users,\n qrCodes: ({ qrCodes }) => qrCodes,\n scans: ({ scans }) => scans,\n chartsDataLoading: ({ chartsDataLoading }) => chartsDataLoading,\n chartsDataError: ({ chartsDataError }) => chartsDataError,\n qrCodesScansRating: ({ qrCodesScansRating }) => qrCodesScansRating,\n qrCodesScansRatingLoading: ({ qrCodesScansRatingLoading }) =>\n qrCodesScansRatingLoading,\n qrCodesScansRatingError: ({ qrCodesScansRatingError }) =>\n qrCodesScansRatingError,\n qrCodeDetails: ({ qrCodeDetails }) => qrCodeDetails,\n qrCodeDetailsLoading: ({ qrCodeDetailsLoading }) => qrCodeDetailsLoading,\n qrCodeDetailsError: ({ qrCodeDetailsError }) => qrCodeDetailsError,\n },\n mutations: {\n reset(state) {\n Object.assign(state, initState());\n },\n setFilters(state, filters) {\n state.filters = { ...state.filters, ...filters };\n },\n getChartsDataStart(state) {\n state.users = [];\n state.qrCodes = [];\n state.scans = [];\n state.chartsDataLoading = true;\n state.chartsDataError = null;\n },\n getChartsDataFailure(state, error) {\n state.users = [];\n state.qrCodes = [];\n state.scans = [];\n state.chartsDataLoading = false;\n state.chartsDataError = error;\n },\n getChartsDataSuccess(state, payload) {\n state.users = payload.users ?? [];\n state.qrCodes = payload.qrCodes ?? [];\n state.scans = payload.scans ?? [];\n state.chartsDataLoading = false;\n state.chartsDataError = null;\n },\n // getQrCodesScansRating\n getQrCodesScansRatingStart(state) {\n state.qrCodesScansRating = [];\n state.qrCodesScansRatingLoading = true;\n state.qrCodesScansRatingError = null;\n },\n getQrCodesScansRatingFailure(state, error) {\n state.qrCodesScansRating = [];\n state.qrCodesScansRatingLoading = false;\n state.qrCodesScansRatingError = error;\n },\n getQrCodesScansRatingSuccess(state, payload) {\n state.qrCodesScansRating = payload;\n state.qrCodesScansRatingLoading = false;\n state.qrCodesScansRatingError = null;\n },\n // getQrCodesDetails\n getQrCodesDetailsStart(state) {\n state.qrCodeDetails = null;\n state.qrCodeDetailsLoading = true;\n state.qrCodeDetailsError = null;\n },\n getQrCodesDetailsFailure(state, error) {\n state.qrCodeDetails = null;\n state.qrCodeDetailsLoading = false;\n state.qrCodeDetailsError = error;\n },\n getQrCodesDetailsSuccess(state, payload) {\n console.log(\"payload\", payload);\n state.qrCodeDetails = payload;\n state.qrCodeDetailsLoading = false;\n state.qrCodeDetailsError = null;\n },\n },\n actions: {\n async getChartsData({ commit, getters }) {\n try {\n commit(\"getChartsDataStart\");\n const filters = serializeChartDataFilter(getters);\n\n const { data } = await apollo.query({\n query: GET_CHARTS_DATA,\n context: MANAGER_APOLLO_CONTEXT,\n variables: {\n usersFilters: filters,\n qrCodesFilters: { type: { _eq: \"dynamic\" }, ...filters },\n scansFilters: { qr_code: { type: { _eq: \"dynamic\" } }, ...filters },\n },\n });\n\n commit(\"getChartsDataSuccess\", serializeChartData(data));\n } catch (e) {\n console.log(e);\n commit(\"getChartsDataFailure\", e);\n }\n },\n async getQrCodesScansRating({ commit, getters }) {\n try {\n commit(\"getQrCodesScansRatingStart\");\n const filters = serializeChartDataFilter(getters);\n\n const { data } = await apollo.query({\n query: GET_QR_CODE_SCANS_RATING,\n context: MANAGER_APOLLO_CONTEXT,\n variables: { filters },\n });\n\n commit(\n \"getQrCodesScansRatingSuccess\",\n serializeQrCodesScansRating(data)\n );\n } catch (e) {\n console.log(e);\n commit(\"getQrCodesScansRatingFailure\", e);\n }\n },\n async getQrCodesDetails({ commit, getters }, shortId) {\n try {\n commit(\"getQrCodesDetailsStart\");\n const filters = serializeChartDataFilter(getters);\n\n const { data } = await apollo.query({\n query: GET_QR_CODE_DETAILS,\n context: MANAGER_APOLLO_CONTEXT,\n variables: {\n filters: {\n key: { _eq: shortId },\n ...filters,\n },\n },\n });\n\n commit(\"getQrCodesDetailsSuccess\", data.qr_codes?.[0]);\n } catch (e) {\n console.log(e);\n commit(\"getQrCodesDetailsFailure\", e);\n }\n },\n },\n};\n","import gql from \"graphql-tag\";\nimport axios from \"@/plugins/axios\";\n\nexport const GET_WALLET_PASS_DETAILS = gql`\n query getWalletPassDetails($key: String!) {\n qr_codes(where: { key: { _eq: $key } }) {\n key\n content\n }\n }\n`;\n\nconst sendWalletPassEmail = (variables) => {\n return axios.post(\"/send-wallet-pass-email\", variables);\n};\nconst generateWalletPass = (variables) => {\n return axios.post(\"/wallet-pass\", variables);\n};\nconst getWalletPassDetails = (token) => {\n const config = {\n headers: {\n \"X-Wallet-Pass-Token\": `Bearer ${token}`,\n },\n };\n\n return axios.get(\"/wallet-pass-details\", config);\n};\nconst updateWalletPassDetails = (variables, token) => {\n const config = {\n headers: {\n \"X-Wallet-Pass-Token\": `Bearer ${token}`,\n },\n };\n return axios.post(\"/wallet-pass-details\", variables, config);\n};\n\nexport default {\n sendWalletPassEmail,\n generateWalletPass,\n getWalletPassDetails,\n updateWalletPassDetails,\n};\n","import { defaultClient as apollo } from \"@/plugins/apollo/apollo-account\";\nimport walletService, { GET_WALLET_PASS_DETAILS } from \"@/services/wallet\";\n\nconst initState = () => ({\n walletType: null,\n cardDetails: null,\n cardDetailsLoading: false,\n cardDetailsError: null,\n shownWalletPassPopup: null,\n backgroundColor: null,\n textColor: null,\n email: \"\",\n token: null,\n});\n\nexport default {\n namespaced: true,\n state: initState(),\n getters: {\n walletType: ({ walletType }) => walletType,\n cardDetails: ({ cardDetails }) => cardDetails,\n cardDetailsLoading: ({ cardDetailsLoading }) => cardDetailsLoading,\n cardDetailsError: ({ cardDetailsError }) => cardDetailsError,\n shownWalletPassPopup: ({ shownWalletPassPopup }) => shownWalletPassPopup,\n backgroundColor: ({ backgroundColor }) => backgroundColor,\n textColor: ({ textColor }) => textColor,\n email: ({ email }) => email,\n token: ({ token }) => token,\n addToWalletUrl: ({\n walletType,\n cardDetails,\n backgroundColor,\n textColor,\n }) => {\n const qrCodeKey = cardDetails?.key;\n if (!walletType || !qrCodeKey) return \"\";\n const url = new URL(\n `wallet-pass/${walletType}/${qrCodeKey}`,\n process.env.VUE_APP_BASE_URL\n );\n if (backgroundColor)\n url.searchParams.set(\"background\", backgroundColor.slice(1));\n if (textColor) url.searchParams.set(\"foreground\", textColor.slice(1));\n return url.toString();\n },\n },\n mutations: {\n reset(state) {\n Object.assign(state, initState());\n },\n setWalletType(state, type) {\n state.walletType = type;\n },\n showWalletPassPopup(state, bool = true) {\n state.shownWalletPassPopup = bool;\n },\n setBackgroundColor(state, backgroundColor) {\n state.backgroundColor = backgroundColor;\n },\n setTextColor(state, textColor) {\n state.textColor = textColor;\n },\n setEmail(state, email) {\n state.email = email;\n },\n getCardDetailsStart(state) {\n state.cardDetails = null;\n state.cardDetailsLoading = true;\n state.cardDetailsError = null;\n },\n getCardDetailsSuccess(state, card) {\n state.cardDetails = card;\n state.cardDetailsLoading = false;\n state.cardDetailsError = null;\n },\n getCardDetailsFailure(state, error) {\n state.cardDetails = null;\n state.cardDetailsLoading = false;\n state.cardDetailsError = error;\n },\n setToken(state, token) {\n state.token = token;\n },\n },\n actions: {\n async getCardDetails({ commit }, key) {\n try {\n commit(\"getCardDetailsStart\");\n const { data } = await apollo.query({\n query: GET_WALLET_PASS_DETAILS,\n variables: { key },\n });\n\n const walletPass = data.qr_codes[0];\n if (!walletPass) throw Error();\n commit(\"getCardDetailsSuccess\", walletPass);\n } catch (e) {\n commit(\"getCardDetailsFailure\", e.message);\n return Promise.reject(e.message);\n }\n },\n async sendWalletPassEmail({ getters }) {\n try {\n const variables = {\n email: getters[\"email\"],\n backgroundColor: getters[\"backgroundColor\"]?.slice?.(1),\n foregroundColor: getters[\"textColor\"]?.slice?.(1),\n qrCodeKey: getters[\"cardDetails\"]?.key,\n };\n const { data } = await walletService.sendWalletPassEmail(variables);\n if (!data.success) throw Error();\n } catch (e) {\n console.log(e);\n return Promise.reject(e);\n }\n },\n async generateWalletPass(context, variables) {\n try {\n const { data } = await walletService.generateWalletPass(variables);\n return data?.addToWalletUrl;\n } catch (e) {\n console.log(e);\n return Promise.reject(e);\n }\n },\n async getWalletPassDetails({ commit, getters }) {\n try {\n commit(\"getCardDetailsStart\");\n commit(\"qrCode/getQrCodeDetailsStart\", null, { root: true });\n const token = getters[\"token\"];\n if (!token) throw Error();\n\n const { data } = await walletService.getWalletPassDetails(token);\n if (!data.success) throw Error();\n const qrCodeDetails = data.qrCodeDetails;\n commit(\n \"qrCode/getQrCodeDetailsSuccess\",\n { qrCode: qrCodeDetails.qr_codes?.[0], files: qrCodeDetails.files },\n { root: true }\n );\n commit(\"getCardDetailsSuccess\", qrCodeDetails.qr_codes?.[0]);\n } catch (e) {\n commit(\"getCardDetailsFailure\", e);\n commit(\"qrCode/getQrCodeDetailsFailure\", e, { root: true });\n console.log(e);\n return Promise.reject(e);\n }\n },\n async updateWalletPassDetails({ commit, getters, rootGetters }) {\n try {\n const token = getters[\"token\"];\n const filesKeysToAdd = rootGetters[\"walletPassFiles/filesKeysToAdd\"];\n const filesKeysToRemove =\n rootGetters[\"walletPassFiles/filesKeysToRemove\"];\n const newContent = rootGetters[\"qrCode/qrCode\"]?.content;\n if (!token || !newContent) throw Error();\n\n console.log(\"filesKeysToAdd\", filesKeysToAdd);\n console.log(\"filesKeysToRemove\", filesKeysToRemove);\n\n const { data } = await walletService.updateWalletPassDetails(\n { newContent, filesKeysToAdd, filesKeysToRemove },\n token\n );\n commit(\"walletPassFiles/setFilesKeysToAdd\", [], { root: true });\n commit(\"walletPassFiles/setFilesKeysToRemove\", [], { root: true });\n if (!data.success) throw Error();\n } catch (e) {\n console.log(e);\n return Promise.reject(e);\n }\n },\n },\n};\n\n// walletService.sendWalletPassEmail\n// walletService.generateWalletPass\n// walletService.getWalletPassDetails\n// walletService.updateWalletPassDetails\n","import axios from \"@/plugins/axios\";\n\nconst uploadFile = (formData, onUploadProgress, token) => {\n const configs = {\n headers: {\n \"X-Wallet-Pass-Token\": `Bearer ${token}`,\n },\n };\n if (onUploadProgress) configs.onUploadProgress = onUploadProgress;\n return axios.post(\"/wallet-pass-upload\", formData, configs);\n};\n\n// const deleteFile = (variables) => {\n// return axios.post(\"/delete\", variables);\n// };\n\nexport default {\n uploadFile,\n // deleteFile,\n};\n","import FilesService from \"@/services/walletPass/files\";\n\nconst initState = () => ({\n uploadingFilesCount: 0,\n loading: false,\n filesKeysToAdd: [],\n filesKeysToRemove: [],\n});\n\nexport default {\n namespaced: true,\n state: initState(),\n getters: {\n filesKeysToAdd: ({ filesKeysToAdd }) => filesKeysToAdd,\n filesKeysToRemove: ({ filesKeysToRemove }) => filesKeysToRemove,\n uploading: ({ uploadingFilesCount }) => Boolean(uploadingFilesCount),\n loading: ({ loading }) => loading,\n },\n mutations: {\n reset(state) {\n Object.assign(state, initState());\n },\n uploadFileStart(state) {\n state.uploadingFilesCount += 1;\n },\n uploadFileSuccess(state) {\n state.uploadingFilesCount = Math.max(0, state.uploadingFilesCount + 1);\n },\n uploadFileFailure(state) {\n state.uploadingFilesCount = Math.max(0, state.uploadingFilesCount - 1);\n },\n // deleteFilesStart(state) {\n // state.loading = true;\n // },\n // deleteFilesSuccess(state) {\n // state.loading = false;\n // },\n // deleteFilesFailure(state) {\n // state.loading = false;\n // },\n setFilesKeysToAdd(state, key = []) {\n state.filesKeysToAdd = key;\n },\n addFilesKeysToAdd(state, key = []) {\n state.filesKeysToAdd.push(key);\n },\n setFilesKeysToRemove(state, key = []) {\n state.filesKeysToRemove = key;\n },\n addFilesKeysToRemove(state, key) {\n state.filesKeysToRemove.push(key);\n },\n },\n actions: {\n // unsaved === true - file will be removed when the next files cron job runs\n // ? we have two ways\n // first - upload file and immediately save check it as used\n // second - upload file and check as unsaved until the customer clicks save button after the click dispatch \"updateFileParams\"\n // then \"filesKeyToAdd\" will be checked as used; \"filesKeyToDelete\" will be checked as unsaved\n async uploadFile({ commit, rootGetters }, variables = {}) {\n try {\n if (!variables.file) return;\n\n const token = rootGetters[\"wallet/token\"];\n commit(\"uploadFileStart\");\n const formData = new FormData();\n formData.append(\"directory\", variables.directory);\n if (variables.name) formData.append(\"name\", variables.name);\n if (variables.unsaved) formData.append(\"unsaved\", variables.unsaved);\n formData.append(\"upload\", variables.file, variables.file.name);\n\n const { data } = await FilesService.uploadFile(\n formData,\n variables.onUploadProgress,\n token\n );\n\n const isSaved =\n variables.unsaved !== false || variables.unsaved !== \"false\";\n if (isSaved) commit(\"addFilesKeysToAdd\", data.key);\n commit(\"uploadFileSuccess\");\n return data;\n } catch (e) {\n console.log(e);\n commit(\"uploadFileFailure\");\n return Promise.reject(e);\n }\n },\n // async deleteFiles({ commit }, keys) {\n // try {\n // commit(\"deleteFilesStart\");\n // await FilesService.deleteFile({ keys });\n // commit(\"deleteFilesSuccess\");\n // } catch (e) {\n // console.log(e);\n // commit(\"deleteFilesFailure\");\n // return Promise.reject(e);\n // }\n // },\n },\n};\n","import Vue from \"vue\";\nimport Vuex from \"vuex\";\n\nimport notification from \"@/store/modules/notification\";\nimport helpCenter from \"@/store/modules/help-center\";\nimport account from \"@/store/modules/account\";\nimport manage from \"@/store/modules/manage\";\nimport news from \"@/store/modules/news\";\nimport auth from \"@/store/modules/auth\";\nimport files from \"@/store/modules/files\";\nimport qrCode from \"@/store/modules/qrCode\";\nimport device from \"@/store/modules/device\";\nimport qrCodeDetails from \"@/store/modules/qrCodeDetails\";\nimport qrDesign from \"@/store/modules/qrDesign\";\nimport payment from \"@/store/modules/payment\";\nimport generator from \"@/store/modules/generator\";\nimport organizations from \"@/store/modules/organizations\";\nimport accountOrganizations from \"@/store/modules/accountOrganizations\";\n\nimport accountSettings from \"@/store/modules/settings/account\";\nimport userSettings from \"@/store/modules/settings/user\";\nimport apiSettings from \"@/store/modules/settings/api\";\nimport billingSettings from \"@/store/modules/settings/billing\";\n\n// backoffice\nimport backofficePanel from \"@/store/modules/backoffice/panel\";\nimport backofficeAccount from \"@/store/modules/backoffice/account\";\nimport backofficeHelpdesk from \"@/store/modules/backoffice/helpdesk\";\nimport backofficeManager from \"@/store/modules/backoffice/manager\";\nimport backofficeFiles from \"@/store/modules/backoffice/files\";\nimport backofficeInternationalization from \"@/store/modules/backoffice/internationalization\";\nimport backofficeArticles from \"@/store/modules/backoffice/articles\";\nimport backofficeDashboard from \"@/store/modules/backoffice/dashboard\";\n\n//\nimport mainNewGenerator from \"@/store/mainNewGenerator\";\n\n// walletPass\nimport wallet from \"@/store/modules/wallet\";\nimport walletPassFiles from \"@/store/modules/wallet-pass/files\";\n\nVue.use(Vuex);\n\nexport default new Vuex.Store({\n modules: {\n notification,\n helpCenter,\n account,\n manage,\n news,\n auth,\n files,\n device,\n qrCode,\n qrDesign,\n qrCodeDetails,\n accountSettings,\n userSettings,\n apiSettings,\n billingSettings,\n payment,\n generator,\n organizations,\n accountOrganizations,\n // backoffice\n backofficePanel,\n backofficeAccount,\n backofficeHelpdesk,\n backofficeManager,\n backofficeFiles,\n backofficeInternationalization,\n mainNewGenerator,\n backofficeArticles,\n backofficeDashboard,\n // walletPass\n wallet,\n walletPassFiles,\n },\n state: {\n language: \"en\",\n },\n getters: {\n language: ({ language }) => language,\n },\n mutations: {\n SET_LANGUAGE(state, language) {\n state.language = language;\n },\n },\n});\n","const divider = \"\";\nconst metaProps = [\n \"meta_title\",\n \"meta_description\",\n \"card_title\",\n \"card_description\",\n \"content_header_title\",\n \"content_header_description\",\n \"content_header_button_text\",\n];\n\nconst addMeta = (article, result) => {\n metaProps.forEach((prop) => {\n result.push({\n path: prop,\n value: article[prop],\n });\n });\n};\n\nconst getDeltaText = (delta) => {\n return delta.ops?.map((op) => op.insert)?.join(divider);\n};\n\nconst addFaqBlock = (article, blockIdx, result) => {\n const content = article.blocks[blockIdx].content;\n if (!content) return;\n content.forEach((i, idx) => {\n const questionPath = `blocks[${blockIdx}].content[${idx}].question`;\n const answerPath = `blocks[${blockIdx}].content[${idx}].answer`;\n if (i.question)\n result.push({\n path: questionPath,\n value: eval(`article.${questionPath}`),\n });\n if (i.answer?.ops)\n result.push({\n path: answerPath,\n value: getDeltaText(eval(`article.${answerPath}`)),\n delta: true,\n });\n });\n};\nconst addTextBlock = (article, blockIdx, result) => {\n const content = article.blocks[blockIdx].content;\n const textPath = `blocks[${blockIdx}].content`;\n if (!content) return;\n result.push({\n path: textPath,\n value: getDeltaText(eval(`article.${textPath}`)),\n delta: true,\n });\n};\nconst addLogoAndTextBlock = (article, blockIdx, result) => {\n const content = article.blocks[blockIdx].content;\n const textPath = `blocks[${blockIdx}].content[0].content_text`;\n if (!content[0].content_text?.ops) return;\n result.push({\n path: textPath,\n value: getDeltaText(eval(`article.${textPath}`)),\n delta: true,\n });\n};\nconst addContentAndImage = (article, blockIdx, result) => {\n const content = article.blocks[blockIdx].content;\n const textPath = `blocks[${blockIdx}].content[0].content_text`;\n const buttonTextPath = `blocks[${blockIdx}].content[0].button_text`;\n if (!content[0].content_text?.ops) return;\n result.push({\n path: textPath,\n value: getDeltaText(eval(`article.${textPath}`)),\n delta: true,\n });\n if (!content[0].button_text) return;\n result.push({\n path: buttonTextPath,\n value: eval(`article.${buttonTextPath}`),\n });\n};\n\nconst addBlocks = (article, result) => {\n const blocks = article.blocks;\n blocks.forEach((b, idx) => {\n const anchorValuePath = `blocks[${idx}].anchor_value`;\n if (b.anchor_value)\n result.push({\n path: anchorValuePath,\n value: eval(`article.${anchorValuePath}`),\n });\n if (b.type === \"faq\") addFaqBlock(article, idx, result);\n if (b.type === \"text\") addTextBlock(article, idx, result);\n if (b.type === \"logo_and_text\") addLogoAndTextBlock(article, idx, result);\n if (b.type === \"content_and_image\")\n addContentAndImage(article, idx, result);\n });\n};\n\nexport const serializeArticleToTranslate = (article) => {\n const result = [];\n addMeta(article, result);\n addBlocks(article, result);\n return result;\n};\n\nexport const getTranslatedDelta = (content, value) => {\n const translatedInserts = value.split(divider);\n\n content.ops.forEach((i, idx) => {\n i.insert = translatedInserts[idx];\n });\n};\n\nexport const getTranslatedArticle = (article, translations) => {\n // eslint-disable-next-line\n const cloneArticle = JSON.parse(JSON.stringify(article));\n\n translations.forEach((t) => {\n if (t.delta)\n return getTranslatedDelta(eval(`cloneArticle.${t.path}`), t.value);\n eval(`cloneArticle.${t.path} = '${t.value.replace(/'/g, \"\\\\'\")}'`);\n });\n return cloneArticle;\n};\n\n// cloned images\nconst metaImagesProps = [\n \"meta_image_key\",\n \"card_image_key\",\n \"content_header_background_image_key\",\n];\n\nconst addMetaImages = (article, result) => {\n metaImagesProps.forEach((prop) => {\n if (!article[prop]) return;\n result.push({\n path: prop,\n value: article[prop],\n });\n });\n};\nconst addBlocksImages = (article, result) => {\n const blocks = article.blocks;\n blocks.forEach((b, blockIdx) => {\n b.content.forEach((i, idx) => {\n const hasImageKey = article.blocks[blockIdx].content[idx]?.image_key;\n if (!hasImageKey) return;\n const imageKeyPath = `blocks[${blockIdx}].content[${idx}].image_key`;\n const imageKey = eval(`article.${imageKeyPath}`);\n result.push({\n path: imageKeyPath,\n value: imageKey,\n });\n });\n });\n};\nexport const serializeArticleImages = (article) => {\n const result = [];\n addMetaImages(article, result);\n addBlocksImages(article, result);\n return result;\n};\n\nexport const getCopiedArticleImages = (article, files) => {\n files.forEach((f) => {\n eval(`article.${f.path} = '${f.value}'`);\n });\n};\n","import { isDataURI } from \"validator\";\n\nexport const getFileUrl = (key) => {\n try {\n return new URL(key, process.env.VUE_APP_STORAGE_CDN_URL).toString();\n } catch (e) {\n return \"\";\n }\n};\n\nexport const normalizeFileSize = (bytes) => {\n if (!bytes) return \"0 Bytes\";\n const k = 1024;\n\n const sizes = [\"Bytes\", \"KB\", \"MB\", \"GB\", \"TB\", \"PB\", \"EB\", \"ZB\", \"YB\"];\n const i = Math.floor(Math.log(bytes) / Math.log(k));\n return parseFloat((bytes / Math.pow(k, i)).toFixed(2)) + \" \" + sizes[i];\n};\n\nexport const urlToDataUrl = (url) => {\n return new Promise((resolve, reject) => {\n const canModify = isDataURI(url) || url.startsWith(\"blob:\");\n const urlToFetch = canModify ? url : `${url}?not-from-cache-please`;\n fetch(urlToFetch, {\n mode: \"cors\",\n })\n .then((response) => response.blob())\n .then((blob) => {\n const reader = new FileReader();\n reader.onloadend = () => {\n resolve(reader.result);\n };\n reader.readAsDataURL(blob);\n })\n .catch((error) => {\n reject(error);\n });\n });\n};\n","import {\n qrCodeFrames,\n qrCodeMarkers,\n} from \"l2qr-generator-api/src/constants/assets\";\nimport { getFileUrl, urlToDataUrl } from \"@/utils/files\";\nimport qrCodeVersions from \"l2qr-generator-api/src/constants/versions\";\n\nexport const DEFAULT_IMAGE_KEY = \"project_files/generator/def_image-min.png\";\n\nexport const getFrameSvg = async (frameName) => {\n const frameSvgName = qrCodeFrames.find(\n (f) => f.value === frameName\n )?.template;\n\n if (!frameSvgName) return null;\n\n return (\n await import(`l2qr-generator-api/src/assets/img/frames/${frameSvgName}?raw`)\n ).default;\n};\n\nexport const getMarkersSvg = async (markersName) => {\n const markerSvgName = qrCodeMarkers.find(\n (m) => m.value === markersName\n )?.template;\n\n if (!markerSvgName) return null;\n\n return (\n await import(\n `l2qr-generator-api/src/assets/img/markers/${markerSvgName}?raw`\n )\n ).default;\n};\n\nexport const getQrDesignImageUrl = async (key) => {\n try {\n if (!key) return null;\n return urlToDataUrl(getFileUrl(key));\n } catch (e) {\n return null;\n }\n};\n\nexport const hasBgImage = (version) => {\n return [qrCodeVersions.IMAGE].includes(version);\n};\n\nexport const allowedImage = (version) => {\n return qrCodeVersions.IMAGE !== version;\n};\n\nexport const allowedGradient = (version) => {\n return qrCodeVersions.IMAGE !== version;\n};\n\nexport const getColorType = (qrCodeDesign) => {\n if (qrCodeDesign.is_gradient) return \"gradient\";\n if (qrCodeDesign.image_key) return \"image\";\n return \"solid\";\n};\n","export const stringToElement = (string, tagName) => {\n const doc = new DOMParser().parseFromString(string, \"text/html\");\n return doc.querySelector(tagName);\n};\n","import { stringToElement } from \"@/utils/string-to-element\";\n\nconst DEFAULT_SVG_HEIGHT = 200;\nconst DEFAULT_SVG_WIDTH = 200;\n\nconst parseSvgSize = (svgText) => {\n const matchWidth = svgText.match(/width=\"(\\d+)/m);\n const matchHeight = svgText.match(/height=\"(\\d+)/m);\n\n const width = matchWidth?.[1] ? parseInt(matchWidth[1]) : DEFAULT_SVG_WIDTH;\n const height = matchHeight?.[1]\n ? parseInt(matchHeight[1])\n : DEFAULT_SVG_HEIGHT;\n return { width, height };\n};\n\nconst updateSvgSize = (svgText, options) => {\n let { width, height } = parseSvgSize(svgText);\n\n let svgEl;\n if (options.width) {\n const scale = options.width / width;\n width = options.width;\n height = scale * height;\n // svgText.replace(/width=\\\"(\\d+)/m, String(width));\n // svgText.replace(/height=\\\"(\\d+)/m, String(height));\n svgEl = stringToElement(svgText, \"svg\");\n svgEl.setAttribute(\"width\", String(width));\n svgEl.setAttribute(\"height\", String(height));\n }\n return { width, height, svgText: svgEl?.outerHTML || svgText };\n};\n\nconst removeSvgSize = (svgText) => {\n const svgEl = stringToElement(svgText, \"svg\");\n svgEl.removeAttribute(\"width\");\n svgEl.removeAttribute(\"height\");\n return svgEl?.outerHTML;\n};\n\nexport const setWhiteBackground = (svgText) => {\n const { width, height } = parseSvgSize(svgText);\n const svgEl = stringToElement(svgText, \"svg\");\n const rect = document.createElement(\"rect\");\n rect.setAttribute(\"width\", String(width));\n rect.setAttribute(\"height\", String(height));\n rect.setAttribute(\"fill\", \"#ffffff\");\n svgEl.prepend(rect);\n return svgEl?.outerHTML;\n};\n\n/**\n * converts an svg string to base64 png using the domUrl\n * @param {string} svgText the svgtext\n * @param {Object} options width | mimetype\n * @return {Promise} a promise to the bas64 png image\n */\nexport const svgToRasterImageLink = (svgText, options = {}) => {\n return new Promise(function (resolve, reject) {\n try {\n const domUrl = window.URL || window.webkitURL || window;\n if (!domUrl) {\n throw new Error(\"(browser doesnt support this)\");\n }\n\n let {\n width,\n height,\n svgText: _svgText,\n } = updateSvgSize(svgText, options);\n if (options.mimetype === \"image/jpeg\")\n _svgText = setWhiteBackground(_svgText);\n\n const canvas = document.createElement(\"canvas\");\n canvas.width = width;\n canvas.height = height;\n const ctx = canvas.getContext(\"2d\");\n\n const svg = new Blob([_svgText], { type: \"image/svg+xml;charset=utf-8\" });\n\n const url = domUrl.createObjectURL(svg);\n const img = new Image();\n img.src = url;\n\n img.addEventListener(\"load\", () => {\n setTimeout(() => {\n ctx.drawImage(img, 0, 0, width, height);\n resolve(canvas.toDataURL(options.mimetype || \"image/png\"));\n // domUrl.revokeObjectURL(url);\n }, 100);\n });\n } catch (err) {\n reject(\"failed to convert svg to png \" + err);\n }\n });\n};\n\nexport const dataUrlToBlob = (dataURL, mimeType = \"image/png\") => {\n const blobBin = atob(dataURL.split(\",\")[1]);\n const array = [];\n for (let i = 0; i < blobBin.length; i++) {\n array.push(blobBin.charCodeAt(i));\n }\n return new Blob([new Uint8Array(array)], { type: mimeType });\n};\n\nexport const svgToPngBlob = async (svgText, options = {}) => {\n const dataUrl = await svgToRasterImageLink(svgText, options);\n return dataUrlToBlob(dataUrl);\n};\n\nexport const svgToBlob = async (svgText) => {\n const _svgText = removeSvgSize(svgText);\n return new Blob([_svgText]);\n};\n","import { v4 as uuidv4 } from \"uuid\";\nimport shortid from \"shortid\";\nimport {\n dynamicTemplates,\n getStaticQrContent,\n} from \"@/constants/qr-codes-content\";\n\nexport const getPageUrl = (key, domain) => {\n try {\n return new URL(key, domain || process.env.VUE_APP_PAGES_URL).toString();\n } catch (e) {\n return \"\";\n }\n};\n\nconst getQrContentTemplates = (tmp, context) => {\n const contentTmp = (\n tmp.type === \"static\"\n ? getStaticQrContent(context)\n : dynamicTemplates(context)\n )?.[tmp.data_format];\n\n if (!contentTmp) throw Error(\"format is not found\");\n return JSON.parse(JSON.stringify(contentTmp));\n};\n\nexport const createQrFromTemplate = (tmp, context) => {\n const qr = {\n data_format: tmp.data_format,\n key: shortid.generate(),\n design_id: uuidv4(),\n preview_id: null,\n type: tmp.type,\n id: uuidv4(),\n name: \"\",\n };\n\n if (!qr.content) qr.content = getQrContentTemplates(tmp, context);\n return qr;\n};\n\nexport const defaultQrCodeName = (qrCode) => {\n // static\n if (qrCode.data_format === \"URL\") return qrCode.content.url;\n if (qrCode.data_format === \"vcard\") {\n const { firstName, lastName, company } = qrCode.content;\n if (firstName && lastName) return `${firstName} ${lastName}`;\n if (firstName || lastName) return firstName || lastName;\n return company;\n }\n if (qrCode.data_format === \"email\")\n return qrCode.content.subject || qrCode.content.email;\n if (qrCode.data_format === \"sms\") return qrCode.content.phone;\n if (qrCode.data_format === \"text\")\n return qrCode.content.text.length > 50\n ? qrCode.content.text.slice(0, 50) + \"...\"\n : qrCode.content.text;\n if (qrCode.data_format === \"wifi\") return qrCode.content.network;\n\n // dynamic\n if (qrCode.data_format === \"soc_media\") return \"My Social Media Page\";\n if (qrCode.data_format === \"coupons\") return \"My Coupons Code\";\n if (qrCode.data_format === \"vcard_plus\") return \"My VCard Plus\";\n if (qrCode.data_format === \"business_page\") return \"My Business Page\";\n if (qrCode.data_format === \"feedback\") return \"My Feedback Code\";\n if (qrCode.data_format === \"rating\") return \"My Rating Code\";\n if (qrCode.data_format === \"video\") return \"My Video\";\n if (qrCode.data_format === \"event\") return \"My Event\";\n if (qrCode.data_format === \"pdf\") return \"My PDF Code\";\n // if (qrCode.data_format === 'facebook') return 'My Facebook Code'\n if (qrCode.data_format === \"app\") return \"My App\";\n // if (qrCode.data_format === 'mp3') return 'My MP3 Code'\n if (qrCode.data_format === \"images\") return \"My Gallery\";\n if (qrCode.data_format === \"instagram\") return \"My Instagram Code\";\n if (qrCode.data_format === \"menu\") return \"My Menu Code\";\n};\n","import moment from \"moment\";\nimport cookies from \"cookie-universal\";\n\nexport const parseJwt = (token) => {\n try {\n const base64Url = token.split(\".\")[1];\n const base64 = base64Url.replace(/-/g, \"+\").replace(/_/g, \"/\");\n const jsonPayload = decodeURIComponent(\n window\n .atob(base64)\n .split(\"\")\n .map(function (c) {\n return \"%\" + (\"00\" + c.charCodeAt(0).toString(16)).slice(-2);\n })\n .join(\"\")\n );\n\n return JSON.parse(jsonPayload);\n } catch (e) {\n console.log();\n }\n};\n\nexport const isExpiredToken = (token) => {\n const payload = parseJwt(token);\n const expiredAtTimestamp = payload.exp * 1000;\n return moment(expiredAtTimestamp).isBefore(moment());\n};\n\nexport const getTokenUserId = () => {\n const tokenData = parseJwt(cookies().get(\"access-token\"));\n return tokenData[process.env.VUE_APP_HASURA_NAMESPACE][\"x-hasura-user-id\"];\n};\n\nexport const getTokenAccountId = () => {\n const tokenData = parseJwt(cookies().get(\"access-token\"));\n return tokenData[process.env.VUE_APP_HASURA_NAMESPACE][\"x-hasura-account-id\"];\n};\n\nexport const getTokenOrganizationId = () => {\n const tokenData = parseJwt(cookies().get(\"access-token\"));\n return tokenData[process.env.VUE_APP_HASURA_NAMESPACE][\n \"x-hasura-organization-id\"\n ];\n};\n","var map = {\n\t\"./1.svg\": [\n\t\t80358,\n\t\t358\n\t],\n\t\"./10.svg\": [\n\t\t73692,\n\t\t3692\n\t],\n\t\"./11.svg\": [\n\t\t56529,\n\t\t6529\n\t],\n\t\"./12.svg\": [\n\t\t54726,\n\t\t4726\n\t],\n\t\"./13.svg\": [\n\t\t12699,\n\t\t2699\n\t],\n\t\"./14.svg\": [\n\t\t24104,\n\t\t4104\n\t],\n\t\"./15.svg\": [\n\t\t28525,\n\t\t8525\n\t],\n\t\"./16.svg\": [\n\t\t29602,\n\t\t9602\n\t],\n\t\"./17.svg\": [\n\t\t9783,\n\t\t9783\n\t],\n\t\"./18.svg\": [\n\t\t86852,\n\t\t6852\n\t],\n\t\"./19.svg\": [\n\t\t68281,\n\t\t8281\n\t],\n\t\"./2.svg\": [\n\t\t52945,\n\t\t2945\n\t],\n\t\"./20.svg\": [\n\t\t77757,\n\t\t7757\n\t],\n\t\"./21.svg\": [\n\t\t40024,\n\t\t24\n\t],\n\t\"./22.svg\": [\n\t\t15335,\n\t\t5335\n\t],\n\t\"./23.svg\": [\n\t\t46002,\n\t\t6002\n\t],\n\t\"./24.svg\": [\n\t\t25761,\n\t\t5761\n\t],\n\t\"./25.svg\": [\n\t\t36396,\n\t\t6396\n\t],\n\t\"./3.svg\": [\n\t\t75740,\n\t\t5740\n\t],\n\t\"./4.svg\": [\n\t\t6487,\n\t\t6487\n\t],\n\t\"./5.svg\": [\n\t\t83490,\n\t\t3490\n\t],\n\t\"./6.svg\": [\n\t\t75405,\n\t\t5405\n\t],\n\t\"./7.svg\": [\n\t\t90184,\n\t\t184\n\t],\n\t\"./8.svg\": [\n\t\t52579,\n\t\t2579\n\t],\n\t\"./9.svg\": [\n\t\t45998,\n\t\t5998\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(function() {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn __webpack_require__.e(ids[1]).then(function() {\n\t\treturn __webpack_require__.t(id, 7 | 16);\n\t});\n}\nwebpackAsyncContext.keys = function() { return Object.keys(map); };\nwebpackAsyncContext.id = 87460;\nmodule.exports = webpackAsyncContext;","var map = {\n\t\"./marker-1.svg\": [\n\t\t57436,\n\t\t7436\n\t],\n\t\"./marker-10.svg\": [\n\t\t86830,\n\t\t6830\n\t],\n\t\"./marker-11.svg\": [\n\t\t26563,\n\t\t6563\n\t],\n\t\"./marker-12.svg\": [\n\t\t90724,\n\t\t724\n\t],\n\t\"./marker-13.svg\": [\n\t\t86105,\n\t\t6105\n\t],\n\t\"./marker-14.svg\": [\n\t\t70890,\n\t\t890\n\t],\n\t\"./marker-2.svg\": [\n\t\t96443,\n\t\t6443\n\t],\n\t\"./marker-3.svg\": [\n\t\t38470,\n\t\t8470\n\t],\n\t\"./marker-4.svg\": [\n\t\t12269,\n\t\t2269\n\t],\n\t\"./marker-5.svg\": [\n\t\t7848,\n\t\t7848\n\t],\n\t\"./marker-6.svg\": [\n\t\t93527,\n\t\t3527\n\t],\n\t\"./marker-7.svg\": [\n\t\t13346,\n\t\t3346\n\t],\n\t\"./marker-8.svg\": [\n\t\t52025,\n\t\t2025\n\t],\n\t\"./marker-9.svg\": [\n\t\t54244,\n\t\t4244\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(function() {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn __webpack_require__.e(ids[1]).then(function() {\n\t\treturn __webpack_require__.t(id, 7 | 16);\n\t});\n}\nwebpackAsyncContext.keys = function() { return Object.keys(map); };\nwebpackAsyncContext.id = 70246;\nmodule.exports = webpackAsyncContext;","var map = {\n\t\"./af\": 96682,\n\t\"./af.js\": 96682,\n\t\"./ar\": 43366,\n\t\"./ar-dz\": 101,\n\t\"./ar-dz.js\": 101,\n\t\"./ar-kw\": 41845,\n\t\"./ar-kw.js\": 41845,\n\t\"./ar-ly\": 66644,\n\t\"./ar-ly.js\": 66644,\n\t\"./ar-ma\": 49237,\n\t\"./ar-ma.js\": 49237,\n\t\"./ar-ps\": 52618,\n\t\"./ar-ps.js\": 52618,\n\t\"./ar-sa\": 58799,\n\t\"./ar-sa.js\": 58799,\n\t\"./ar-tn\": 50921,\n\t\"./ar-tn.js\": 50921,\n\t\"./ar.js\": 43366,\n\t\"./az\": 95822,\n\t\"./az.js\": 95822,\n\t\"./be\": 30648,\n\t\"./be.js\": 30648,\n\t\"./bg\": 19106,\n\t\"./bg.js\": 19106,\n\t\"./bm\": 11344,\n\t\"./bm.js\": 11344,\n\t\"./bn\": 86825,\n\t\"./bn-bd\": 89188,\n\t\"./bn-bd.js\": 89188,\n\t\"./bn.js\": 86825,\n\t\"./bo\": 48122,\n\t\"./bo.js\": 48122,\n\t\"./br\": 57117,\n\t\"./br.js\": 57117,\n\t\"./bs\": 30846,\n\t\"./bs.js\": 30846,\n\t\"./ca\": 19613,\n\t\"./ca.js\": 19613,\n\t\"./cs\": 73451,\n\t\"./cs.js\": 73451,\n\t\"./cv\": 83576,\n\t\"./cv.js\": 83576,\n\t\"./cy\": 65285,\n\t\"./cy.js\": 65285,\n\t\"./da\": 64766,\n\t\"./da.js\": 64766,\n\t\"./de\": 63922,\n\t\"./de-at\": 81898,\n\t\"./de-at.js\": 81898,\n\t\"./de-ch\": 49836,\n\t\"./de-ch.js\": 49836,\n\t\"./de.js\": 63922,\n\t\"./dv\": 98927,\n\t\"./dv.js\": 98927,\n\t\"./el\": 34044,\n\t\"./el.js\": 34044,\n\t\"./en-au\": 77077,\n\t\"./en-au.js\": 77077,\n\t\"./en-ca\": 85631,\n\t\"./en-ca.js\": 85631,\n\t\"./en-gb\": 19078,\n\t\"./en-gb.js\": 19078,\n\t\"./en-ie\": 39661,\n\t\"./en-ie.js\": 39661,\n\t\"./en-il\": 74918,\n\t\"./en-il.js\": 74918,\n\t\"./en-in\": 41212,\n\t\"./en-in.js\": 41212,\n\t\"./en-nz\": 55519,\n\t\"./en-nz.js\": 55519,\n\t\"./en-sg\": 92077,\n\t\"./en-sg.js\": 92077,\n\t\"./eo\": 63781,\n\t\"./eo.js\": 63781,\n\t\"./es\": 1153,\n\t\"./es-do\": 26335,\n\t\"./es-do.js\": 26335,\n\t\"./es-mx\": 14243,\n\t\"./es-mx.js\": 14243,\n\t\"./es-us\": 47526,\n\t\"./es-us.js\": 47526,\n\t\"./es.js\": 1153,\n\t\"./et\": 16084,\n\t\"./et.js\": 16084,\n\t\"./eu\": 80379,\n\t\"./eu.js\": 80379,\n\t\"./fa\": 92144,\n\t\"./fa.js\": 92144,\n\t\"./fi\": 68920,\n\t\"./fi.js\": 68920,\n\t\"./fil\": 31870,\n\t\"./fil.js\": 31870,\n\t\"./fo\": 65422,\n\t\"./fo.js\": 65422,\n\t\"./fr\": 39417,\n\t\"./fr-ca\": 70574,\n\t\"./fr-ca.js\": 70574,\n\t\"./fr-ch\": 69509,\n\t\"./fr-ch.js\": 69509,\n\t\"./fr.js\": 39417,\n\t\"./fy\": 82984,\n\t\"./fy.js\": 82984,\n\t\"./ga\": 67225,\n\t\"./ga.js\": 67225,\n\t\"./gd\": 54838,\n\t\"./gd.js\": 54838,\n\t\"./gl\": 74142,\n\t\"./gl.js\": 74142,\n\t\"./gom-deva\": 29903,\n\t\"./gom-deva.js\": 29903,\n\t\"./gom-latn\": 98720,\n\t\"./gom-latn.js\": 98720,\n\t\"./gu\": 3557,\n\t\"./gu.js\": 3557,\n\t\"./he\": 67894,\n\t\"./he.js\": 67894,\n\t\"./hi\": 44722,\n\t\"./hi.js\": 44722,\n\t\"./hr\": 50215,\n\t\"./hr.js\": 50215,\n\t\"./hu\": 30534,\n\t\"./hu.js\": 30534,\n\t\"./hy-am\": 15297,\n\t\"./hy-am.js\": 15297,\n\t\"./id\": 44712,\n\t\"./id.js\": 44712,\n\t\"./is\": 71501,\n\t\"./is.js\": 71501,\n\t\"./it\": 79064,\n\t\"./it-ch\": 98274,\n\t\"./it-ch.js\": 98274,\n\t\"./it.js\": 79064,\n\t\"./ja\": 91980,\n\t\"./ja.js\": 91980,\n\t\"./jv\": 36489,\n\t\"./jv.js\": 36489,\n\t\"./ka\": 22053,\n\t\"./ka.js\": 22053,\n\t\"./kk\": 30219,\n\t\"./kk.js\": 30219,\n\t\"./km\": 38321,\n\t\"./km.js\": 38321,\n\t\"./kn\": 40344,\n\t\"./kn.js\": 40344,\n\t\"./ko\": 84271,\n\t\"./ko.js\": 84271,\n\t\"./ku\": 43193,\n\t\"./ku-kmr\": 83682,\n\t\"./ku-kmr.js\": 83682,\n\t\"./ku.js\": 43193,\n\t\"./ky\": 60029,\n\t\"./ky.js\": 60029,\n\t\"./lb\": 2851,\n\t\"./lb.js\": 2851,\n\t\"./lo\": 4984,\n\t\"./lo.js\": 4984,\n\t\"./lt\": 49305,\n\t\"./lt.js\": 49305,\n\t\"./lv\": 37975,\n\t\"./lv.js\": 37975,\n\t\"./me\": 84371,\n\t\"./me.js\": 84371,\n\t\"./mi\": 74527,\n\t\"./mi.js\": 74527,\n\t\"./mk\": 93345,\n\t\"./mk.js\": 93345,\n\t\"./ml\": 79476,\n\t\"./ml.js\": 79476,\n\t\"./mn\": 67678,\n\t\"./mn.js\": 67678,\n\t\"./mr\": 53146,\n\t\"./mr.js\": 53146,\n\t\"./ms\": 23657,\n\t\"./ms-my\": 25956,\n\t\"./ms-my.js\": 25956,\n\t\"./ms.js\": 23657,\n\t\"./mt\": 49020,\n\t\"./mt.js\": 49020,\n\t\"./my\": 1839,\n\t\"./my.js\": 1839,\n\t\"./nb\": 23345,\n\t\"./nb.js\": 23345,\n\t\"./ne\": 42692,\n\t\"./ne.js\": 42692,\n\t\"./nl\": 47587,\n\t\"./nl-be\": 36253,\n\t\"./nl-be.js\": 36253,\n\t\"./nl.js\": 47587,\n\t\"./nn\": 90725,\n\t\"./nn.js\": 90725,\n\t\"./oc-lnc\": 9189,\n\t\"./oc-lnc.js\": 9189,\n\t\"./pa-in\": 24064,\n\t\"./pa-in.js\": 24064,\n\t\"./pl\": 23381,\n\t\"./pl.js\": 23381,\n\t\"./pt\": 13517,\n\t\"./pt-br\": 64310,\n\t\"./pt-br.js\": 64310,\n\t\"./pt.js\": 13517,\n\t\"./ro\": 92938,\n\t\"./ro.js\": 92938,\n\t\"./ru\": 83640,\n\t\"./ru.js\": 83640,\n\t\"./sd\": 25858,\n\t\"./sd.js\": 25858,\n\t\"./se\": 27921,\n\t\"./se.js\": 27921,\n\t\"./si\": 11653,\n\t\"./si.js\": 11653,\n\t\"./sk\": 52163,\n\t\"./sk.js\": 52163,\n\t\"./sl\": 32122,\n\t\"./sl.js\": 32122,\n\t\"./sq\": 99101,\n\t\"./sq.js\": 99101,\n\t\"./sr\": 77684,\n\t\"./sr-cyrl\": 35915,\n\t\"./sr-cyrl.js\": 35915,\n\t\"./sr.js\": 77684,\n\t\"./ss\": 51035,\n\t\"./ss.js\": 51035,\n\t\"./sv\": 18888,\n\t\"./sv.js\": 18888,\n\t\"./sw\": 53503,\n\t\"./sw.js\": 53503,\n\t\"./ta\": 91086,\n\t\"./ta.js\": 91086,\n\t\"./te\": 6338,\n\t\"./te.js\": 6338,\n\t\"./tet\": 9492,\n\t\"./tet.js\": 9492,\n\t\"./tg\": 94584,\n\t\"./tg.js\": 94584,\n\t\"./th\": 90021,\n\t\"./th.js\": 90021,\n\t\"./tk\": 60284,\n\t\"./tk.js\": 60284,\n\t\"./tl-ph\": 6101,\n\t\"./tl-ph.js\": 6101,\n\t\"./tlh\": 39245,\n\t\"./tlh.js\": 39245,\n\t\"./tr\": 64091,\n\t\"./tr.js\": 64091,\n\t\"./tzl\": 80623,\n\t\"./tzl.js\": 80623,\n\t\"./tzm\": 17464,\n\t\"./tzm-latn\": 49624,\n\t\"./tzm-latn.js\": 49624,\n\t\"./tzm.js\": 17464,\n\t\"./ug-cn\": 23875,\n\t\"./ug-cn.js\": 23875,\n\t\"./uk\": 92889,\n\t\"./uk.js\": 92889,\n\t\"./ur\": 43426,\n\t\"./ur.js\": 43426,\n\t\"./uz\": 66042,\n\t\"./uz-latn\": 51322,\n\t\"./uz-latn.js\": 51322,\n\t\"./uz.js\": 66042,\n\t\"./vi\": 67784,\n\t\"./vi.js\": 67784,\n\t\"./x-pseudo\": 54748,\n\t\"./x-pseudo.js\": 54748,\n\t\"./yo\": 31753,\n\t\"./yo.js\": 31753,\n\t\"./zh-cn\": 68765,\n\t\"./zh-cn.js\": 68765,\n\t\"./zh-hk\": 47377,\n\t\"./zh-hk.js\": 47377,\n\t\"./zh-mo\": 36772,\n\t\"./zh-mo.js\": 36772,\n\t\"./zh-tw\": 51657,\n\t\"./zh-tw.js\": 51657\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 35358;","module.exports = \"\\n\\n\\n\\n\";","import SpriteSymbol from \"../../../../node_modules/svg-baker-runtime/browser-symbol.js\";\nimport sprite from \"../../../../node_modules/svg-sprite-loader/runtime/browser-sprite.build.js\";\nvar symbol = new SpriteSymbol({\n \"id\": \"icon-wi-fi--sprite\",\n \"use\": \"icon-wi-fi--sprite-usage\",\n \"viewBox\": \"0 0 25 25\",\n \"content\": \"\\n\\n\"\n});\nvar result = sprite.add(symbol);\nexport default symbol","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","__webpack_require__.amdO = {};","var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","var getProto = Object.getPrototypeOf ? function(obj) { return Object.getPrototypeOf(obj); } : function(obj) { return obj.__proto__; };\nvar leafPrototypes;\n// create a fake namespace object\n// mode & 1: value is a module id, require it\n// mode & 2: merge all properties of value into the ns\n// mode & 4: return value when already ns object\n// mode & 16: return value when it's Promise-like\n// mode & 8|1: behave like require\n__webpack_require__.t = function(value, mode) {\n\tif(mode & 1) value = this(value);\n\tif(mode & 8) return value;\n\tif(typeof value === 'object' && value) {\n\t\tif((mode & 4) && value.__esModule) return value;\n\t\tif((mode & 16) && typeof value.then === 'function') return value;\n\t}\n\tvar ns = Object.create(null);\n\t__webpack_require__.r(ns);\n\tvar def = {};\n\tleafPrototypes = leafPrototypes || [null, getProto({}), getProto([]), getProto(getProto)];\n\tfor(var current = mode & 2 && value; typeof current == 'object' && !~leafPrototypes.indexOf(current); current = getProto(current)) {\n\t\tObject.getOwnPropertyNames(current).forEach(function(key) { def[key] = function() { return value[key]; }; });\n\t}\n\tdef['default'] = function() { return value; };\n\t__webpack_require__.d(ns, def);\n\treturn ns;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = function(chunkId) {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce(function(promises, key) {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"js/\" + ({\"75\":\"Dynamic App\",\"175\":\"QrPagesText\",\"469\":\"Backoffice view\",\"515\":\"QrPagesCoupons\",\"600\":\"SettingsAccount view\",\"633\":\"Dynamic Rating\",\"860\":\"Static Wifi\",\"999\":\"Dynamic Menu\",\"1008\":\"changeEmail view\",\"1128\":\"Dynamic Pdf\",\"1133\":\"QrPagesBusinessPage\",\"1285\":\"QrPagesRating\",\"1307\":\"Settings view\",\"1409\":\"QrEdit view\",\"1510\":\"QrPagesVCardPlus\",\"1589\":\"login view\",\"1734\":\"Backoffice articles view\",\"1780\":\"SettingsBilling view\",\"2037\":\"SettingsApiKey\",\"2282\":\"signup view\",\"2390\":\"Dynamic Instagram\",\"2447\":\"QrPagesVideo\",\"2778\":\"Dynamic VcardPlus\",\"2827\":\"QrPagesMenu\",\"2849\":\"Manage view\",\"2919\":\"QrPagesApp\",\"3015\":\"Dynamic Coupons\",\"3443\":\"Dynamic Feedback\",\"3638\":\"QrPagesEmail\",\"3720\":\"SettingsApi\",\"3803\":\"QrDetails view\",\"3939\":\"Dynamic Video\",\"3958\":\"Organization Invitation view\",\"4044\":\"Dynamic Images\",\"4338\":\"Dynamic Event\",\"4456\":\"FeaturesAndPricing view\",\"4646\":\"Static Url\",\"4676\":\"SettingsUser view\",\"4706\":\"Payment view\",\"5082\":\"ResetPasswordChange view\",\"5094\":\"Static Text\",\"5111\":\"Wallet pass token view\",\"5297\":\"organization users view\",\"5339\":\"rating thumbs\",\"5670\":\"QrPagesEvent\",\"5965\":\"Backoffice articles id view\",\"5977\":\"auth callback view\",\"6171\":\"Dynamic SocialMedial\",\"6279\":\"QrDesign view\",\"6472\":\"QrPagesImages\",\"6591\":\"Backoffice Panel view\",\"6643\":\"Wallet pass generate view\",\"6681\":\"Backoffice help center view\",\"6789\":\"rating smiley\",\"6928\":\"Backoffice articles create view\",\"6985\":\"QrCreate view\",\"7068\":\"Dynamic Mp3\",\"7203\":\"changePassword view\",\"7209\":\"QrPagesWifi\",\"7362\":\"QrPagesInstagram\",\"7545\":\"Backoffice help center ticket view\",\"7553\":\"Backoffice dashboard view\",\"7649\":\"QrPagesWebsite\",\"7729\":\"Dynamic BusinessPage\",\"8233\":\"Payment success view\",\"8377\":\"Dynamic Url\",\"8500\":\"organizations view\",\"8778\":\"Payment upgrade view\",\"8818\":\"Static Sms\",\"8826\":\"ResetPassword view\",\"8881\":\"QrPagesSocialMedia\",\"9031\":\"QrPagesFeedback\",\"9092\":\"QrPagesPdf\",\"9150\":\"QrPagesFacebook\",\"9197\":\"QrPagesSms\",\"9293\":\"Static Vcard\",\"9513\":\"Static Email\",\"9754\":\"QrPagesVcard\",\"9840\":\"Payment fail view\",\"9866\":\"Dynamic Facebook\",\"9909\":\"Backoffice internationalization view\"}[chunkId] || chunkId) + \".\" + {\"24\":\"687980df\",\"75\":\"889a0e0f\",\"175\":\"49467981\",\"184\":\"62eecdfb\",\"358\":\"d03d5222\",\"360\":\"b4bb96c4\",\"417\":\"24bfea42\",\"469\":\"36e7fd81\",\"515\":\"8852f36d\",\"600\":\"24b16b3a\",\"633\":\"982f0276\",\"724\":\"4c894b83\",\"860\":\"be4134ea\",\"890\":\"057c5cfd\",\"999\":\"366c315b\",\"1008\":\"e2d91867\",\"1078\":\"bf9d8006\",\"1128\":\"fa5bb468\",\"1133\":\"b4529478\",\"1285\":\"46626f13\",\"1307\":\"ebeab076\",\"1409\":\"e513110d\",\"1456\":\"c3227456\",\"1510\":\"a3d08e16\",\"1589\":\"21d8a4e9\",\"1734\":\"6bfa7edf\",\"1780\":\"80e4de05\",\"2006\":\"c434f0b4\",\"2025\":\"6924ada0\",\"2037\":\"f632ed11\",\"2094\":\"b9827d6c\",\"2108\":\"41bf0f84\",\"2130\":\"2cc699ff\",\"2186\":\"0dbb141d\",\"2269\":\"1047e734\",\"2282\":\"5eb82562\",\"2315\":\"536e2612\",\"2390\":\"6df33f56\",\"2447\":\"68221b2d\",\"2461\":\"c2743a7d\",\"2579\":\"b3e0b85f\",\"2585\":\"587619a6\",\"2699\":\"7d1f4c02\",\"2778\":\"16936e56\",\"2779\":\"488d024d\",\"2827\":\"3b970bc0\",\"2849\":\"5ed8f0ca\",\"2919\":\"e56680c3\",\"2945\":\"5ce9ce54\",\"2997\":\"2d9c6b19\",\"3015\":\"86821287\",\"3093\":\"6976cf85\",\"3346\":\"28e9d7a5\",\"3380\":\"51faf76e\",\"3443\":\"cd40b422\",\"3490\":\"9da663a5\",\"3511\":\"6ec6ef6d\",\"3527\":\"c170f782\",\"3633\":\"6502b7d6\",\"3638\":\"9c93ebed\",\"3665\":\"3790b297\",\"3692\":\"4aa9b03d\",\"3720\":\"3bf8a189\",\"3803\":\"a3d5b0e4\",\"3847\":\"ef22f2c2\",\"3895\":\"966be27c\",\"3939\":\"89e05649\",\"3958\":\"075a1735\",\"4044\":\"a95b2f5c\",\"4104\":\"ac8230f6\",\"4244\":\"16e9e8c1\",\"4327\":\"ef762ce3\",\"4329\":\"627bb437\",\"4338\":\"c188eeca\",\"4456\":\"bc279ec8\",\"4457\":\"99982402\",\"4551\":\"44613d09\",\"4563\":\"85bee4a8\",\"4610\":\"d849780b\",\"4646\":\"aef40ded\",\"4676\":\"0d95f8c2\",\"4706\":\"59238cf1\",\"4726\":\"3cf0bf62\",\"4867\":\"1298d637\",\"4915\":\"3d74a8b6\",\"4940\":\"c616f621\",\"4981\":\"0e74ecc3\",\"5027\":\"617a247a\",\"5055\":\"5bb8f392\",\"5082\":\"95e5c4f2\",\"5094\":\"30c21e9a\",\"5097\":\"070d0eeb\",\"5111\":\"14fc4134\",\"5138\":\"2af6389a\",\"5297\":\"8ca9d0db\",\"5304\":\"690e0c1d\",\"5335\":\"b0b81586\",\"5339\":\"e20765de\",\"5374\":\"979b9b89\",\"5405\":\"de0cf757\",\"5508\":\"98e1ef86\",\"5670\":\"74948e60\",\"5740\":\"8a7ee032\",\"5761\":\"4c5a947b\",\"5800\":\"c7dad8e5\",\"5885\":\"fc0edb93\",\"5965\":\"662ae640\",\"5977\":\"f8b9e955\",\"5998\":\"43c3bc26\",\"6002\":\"6eb55518\",\"6103\":\"7f3a78b0\",\"6105\":\"994e4852\",\"6171\":\"ec311f28\",\"6223\":\"ca627f00\",\"6279\":\"e99642b2\",\"6396\":\"969cda50\",\"6443\":\"c82ff1fb\",\"6469\":\"09e50b77\",\"6472\":\"d94313f0\",\"6487\":\"cc96c6b8\",\"6529\":\"105aad4b\",\"6563\":\"6be6ab7f\",\"6587\":\"1e1b5751\",\"6591\":\"a821abe5\",\"6610\":\"e47e0a29\",\"6643\":\"1005d9f7\",\"6681\":\"b7d88d6d\",\"6789\":\"c93fe750\",\"6830\":\"35ee1445\",\"6852\":\"a979112c\",\"6856\":\"06406487\",\"6862\":\"d4530a08\",\"6904\":\"6558e00d\",\"6928\":\"f794e114\",\"6946\":\"ab545168\",\"6985\":\"573e45b5\",\"7067\":\"509493f5\",\"7068\":\"1228c533\",\"7203\":\"cbb51ac8\",\"7209\":\"d4c014a9\",\"7282\":\"aec6d4d2\",\"7361\":\"405bb652\",\"7362\":\"98c11b5a\",\"7436\":\"ad7611eb\",\"7545\":\"c253d25e\",\"7553\":\"83825f29\",\"7623\":\"f9b1cc42\",\"7634\":\"6028404d\",\"7649\":\"a45759fc\",\"7672\":\"c4d3d37d\",\"7729\":\"03193889\",\"7757\":\"e799a3d1\",\"7848\":\"f79f3f93\",\"8007\":\"d68768d7\",\"8056\":\"7eb49d07\",\"8200\":\"d1f3f38b\",\"8233\":\"bd7cbe44\",\"8246\":\"1f5b48d8\",\"8281\":\"b75a3481\",\"8377\":\"324a62d9\",\"8470\":\"158a62e1\",\"8490\":\"9aa63772\",\"8500\":\"9a358447\",\"8525\":\"ab3c40d0\",\"8527\":\"e2571669\",\"8735\":\"cb2a244a\",\"8778\":\"5b505d04\",\"8818\":\"c32b62fb\",\"8826\":\"0b29e83e\",\"8881\":\"be76bfeb\",\"8981\":\"a2432ec2\",\"9031\":\"82d2b006\",\"9057\":\"ac508051\",\"9092\":\"0b757816\",\"9116\":\"a176388d\",\"9150\":\"20135540\",\"9197\":\"79a1e433\",\"9264\":\"f9b4a239\",\"9269\":\"f6bc4d39\",\"9293\":\"ed3e43f2\",\"9483\":\"5cca5d05\",\"9513\":\"beda91df\",\"9602\":\"c3239958\",\"9711\":\"fbff040d\",\"9715\":\"e992fe78\",\"9749\":\"b3b6efa9\",\"9754\":\"b244aee9\",\"9783\":\"d888b1e7\",\"9785\":\"653c30ec\",\"9840\":\"b238d194\",\"9866\":\"de4838a9\",\"9909\":\"ea439cbe\",\"9910\":\"a8e59812\"}[chunkId] + \".js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"css/\" + ({\"75\":\"Dynamic App\",\"175\":\"QrPagesText\",\"469\":\"Backoffice view\",\"515\":\"QrPagesCoupons\",\"600\":\"SettingsAccount view\",\"633\":\"Dynamic Rating\",\"860\":\"Static Wifi\",\"999\":\"Dynamic Menu\",\"1008\":\"changeEmail view\",\"1128\":\"Dynamic Pdf\",\"1133\":\"QrPagesBusinessPage\",\"1285\":\"QrPagesRating\",\"1307\":\"Settings view\",\"1409\":\"QrEdit view\",\"1510\":\"QrPagesVCardPlus\",\"1589\":\"login view\",\"1734\":\"Backoffice articles view\",\"1780\":\"SettingsBilling view\",\"2037\":\"SettingsApiKey\",\"2282\":\"signup view\",\"2390\":\"Dynamic Instagram\",\"2447\":\"QrPagesVideo\",\"2778\":\"Dynamic VcardPlus\",\"2827\":\"QrPagesMenu\",\"2849\":\"Manage view\",\"2919\":\"QrPagesApp\",\"3015\":\"Dynamic Coupons\",\"3443\":\"Dynamic Feedback\",\"3638\":\"QrPagesEmail\",\"3720\":\"SettingsApi\",\"3803\":\"QrDetails view\",\"3939\":\"Dynamic Video\",\"3958\":\"Organization Invitation view\",\"4044\":\"Dynamic Images\",\"4338\":\"Dynamic Event\",\"4456\":\"FeaturesAndPricing view\",\"4646\":\"Static Url\",\"4676\":\"SettingsUser view\",\"5082\":\"ResetPasswordChange view\",\"5094\":\"Static Text\",\"5111\":\"Wallet pass token view\",\"5297\":\"organization users view\",\"5339\":\"rating thumbs\",\"5670\":\"QrPagesEvent\",\"5965\":\"Backoffice articles id view\",\"6171\":\"Dynamic SocialMedial\",\"6279\":\"QrDesign view\",\"6472\":\"QrPagesImages\",\"6591\":\"Backoffice Panel view\",\"6681\":\"Backoffice help center view\",\"6789\":\"rating smiley\",\"6928\":\"Backoffice articles create view\",\"6985\":\"QrCreate view\",\"7068\":\"Dynamic Mp3\",\"7203\":\"changePassword view\",\"7209\":\"QrPagesWifi\",\"7362\":\"QrPagesInstagram\",\"7545\":\"Backoffice help center ticket view\",\"7553\":\"Backoffice dashboard view\",\"7649\":\"QrPagesWebsite\",\"7729\":\"Dynamic BusinessPage\",\"8233\":\"Payment success view\",\"8377\":\"Dynamic Url\",\"8500\":\"organizations view\",\"8818\":\"Static Sms\",\"8826\":\"ResetPassword view\",\"8881\":\"QrPagesSocialMedia\",\"9031\":\"QrPagesFeedback\",\"9092\":\"QrPagesPdf\",\"9197\":\"QrPagesSms\",\"9293\":\"Static Vcard\",\"9513\":\"Static Email\",\"9754\":\"QrPagesVcard\",\"9840\":\"Payment fail view\",\"9866\":\"Dynamic Facebook\",\"9909\":\"Backoffice internationalization view\"}[chunkId] || chunkId) + \".\" + {\"75\":\"32b977fd\",\"175\":\"5f19435b\",\"469\":\"2df22531\",\"515\":\"7a19bc91\",\"600\":\"4a297fc0\",\"633\":\"bafda14d\",\"860\":\"145cea40\",\"999\":\"5f1bccc7\",\"1008\":\"9155bf2a\",\"1128\":\"4b5cf048\",\"1133\":\"34537fe5\",\"1285\":\"50d3fa30\",\"1307\":\"a33cbd65\",\"1409\":\"7f7ff814\",\"1510\":\"7a19bc91\",\"1589\":\"fb9786b0\",\"1734\":\"b2b35ed7\",\"1780\":\"027d4e01\",\"2037\":\"848521c2\",\"2282\":\"fb311f8f\",\"2390\":\"c616d340\",\"2447\":\"58d7d50c\",\"2778\":\"64ee8bee\",\"2827\":\"7a19bc91\",\"2849\":\"7556faad\",\"2919\":\"e7a8f9e9\",\"3015\":\"0700baaa\",\"3443\":\"bc83ed6d\",\"3638\":\"5f19435b\",\"3720\":\"8c50a331\",\"3803\":\"3e4d385b\",\"3939\":\"e9b2b2a6\",\"3958\":\"a91301d9\",\"4044\":\"fb21911d\",\"4338\":\"8503eb49\",\"4456\":\"c00e180a\",\"4646\":\"c616d340\",\"4676\":\"4e2fb659\",\"4867\":\"8c64cb90\",\"4915\":\"a91a46f6\",\"4981\":\"e49aff17\",\"5082\":\"bf3f7035\",\"5094\":\"c616d340\",\"5111\":\"e9f252d3\",\"5297\":\"aa6cbc77\",\"5339\":\"cff0fc34\",\"5374\":\"48f03ed3\",\"5508\":\"6439e609\",\"5670\":\"e88022db\",\"5965\":\"a1b79ef1\",\"6171\":\"f7d871ba\",\"6279\":\"3cd6d671\",\"6472\":\"1cc7536c\",\"6591\":\"331fd56b\",\"6681\":\"8d6e90c7\",\"6789\":\"6db1c616\",\"6928\":\"ef59fcad\",\"6946\":\"3ed2a78f\",\"6985\":\"9980ec48\",\"7068\":\"9bd00fe3\",\"7203\":\"40df9984\",\"7209\":\"abbc4f1c\",\"7362\":\"df135b8f\",\"7545\":\"e29724a8\",\"7553\":\"9feec112\",\"7649\":\"df135b8f\",\"7672\":\"8ab9d576\",\"7729\":\"8b7329a7\",\"8233\":\"402347af\",\"8377\":\"c616d340\",\"8490\":\"c5850034\",\"8500\":\"5577625a\",\"8818\":\"c616d340\",\"8826\":\"d8d06072\",\"8881\":\"7a19bc91\",\"9031\":\"4d57dd5a\",\"9092\":\"4ddaea21\",\"9197\":\"4da6e4d9\",\"9293\":\"3357a90e\",\"9513\":\"c616d340\",\"9754\":\"5f19435b\",\"9840\":\"a9214a6b\",\"9866\":\"a578d891\",\"9909\":\"28daff7d\"}[chunkId] + \".css\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.hmd = function(module) {\n\tmodule = Object.create(module);\n\tif (!module.children) module.children = [];\n\tObject.defineProperty(module, 'exports', {\n\t\tenumerable: true,\n\t\tset: function() {\n\t\t\tthrow new Error('ES Modules may not assign module.exports or exports.*, Use ESM export syntax, instead: ' + module.id);\n\t\t}\n\t});\n\treturn module;\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","var inProgress = {};\nvar dataWebpackPrefix = \"l2qr-app-backoffice:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = function(url, done, key, chunkId) {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = function(prev, event) {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach(function(fn) { return fn(event); });\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = function(module) {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.p = \"/\";","if (typeof document === \"undefined\") return;\nvar createStylesheet = function(chunkId, fullhref, oldTag, resolve, reject) {\n\tvar linkTag = document.createElement(\"link\");\n\n\tlinkTag.rel = \"stylesheet\";\n\tlinkTag.type = \"text/css\";\n\tif (__webpack_require__.nc) {\n\t\tlinkTag.nonce = __webpack_require__.nc;\n\t}\n\tvar onLinkComplete = function(event) {\n\t\t// avoid mem leaks.\n\t\tlinkTag.onerror = linkTag.onload = null;\n\t\tif (event.type === 'load') {\n\t\t\tresolve();\n\t\t} else {\n\t\t\tvar errorType = event && event.type;\n\t\t\tvar realHref = event && event.target && event.target.href || fullhref;\n\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + errorType + \": \" + realHref + \")\");\n\t\t\terr.name = \"ChunkLoadError\";\n\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n\t\t\terr.type = errorType;\n\t\t\terr.request = realHref;\n\t\t\tif (linkTag.parentNode) linkTag.parentNode.removeChild(linkTag)\n\t\t\treject(err);\n\t\t}\n\t}\n\tlinkTag.onerror = linkTag.onload = onLinkComplete;\n\tlinkTag.href = fullhref;\n\n\n\tif (oldTag) {\n\t\toldTag.parentNode.insertBefore(linkTag, oldTag.nextSibling);\n\t} else {\n\t\tdocument.head.appendChild(linkTag);\n\t}\n\treturn linkTag;\n};\nvar findStylesheet = function(href, fullhref) {\n\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n\tfor(var i = 0; i < existingLinkTags.length; i++) {\n\t\tvar tag = existingLinkTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return tag;\n\t}\n\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n\tfor(var i = 0; i < existingStyleTags.length; i++) {\n\t\tvar tag = existingStyleTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\");\n\t\tif(dataHref === href || dataHref === fullhref) return tag;\n\t}\n};\nvar loadStylesheet = function(chunkId) {\n\treturn new Promise(function(resolve, reject) {\n\t\tvar href = __webpack_require__.miniCssF(chunkId);\n\t\tvar fullhref = __webpack_require__.p + href;\n\t\tif(findStylesheet(href, fullhref)) return resolve();\n\t\tcreateStylesheet(chunkId, fullhref, null, resolve, reject);\n\t});\n}\n// object to store loaded CSS chunks\nvar installedCssChunks = {\n\t3524: 0\n};\n\n__webpack_require__.f.miniCss = function(chunkId, promises) {\n\tvar cssChunks = {\"75\":1,\"175\":1,\"469\":1,\"515\":1,\"600\":1,\"633\":1,\"860\":1,\"999\":1,\"1008\":1,\"1128\":1,\"1133\":1,\"1285\":1,\"1307\":1,\"1409\":1,\"1510\":1,\"1589\":1,\"1734\":1,\"1780\":1,\"2037\":1,\"2282\":1,\"2390\":1,\"2447\":1,\"2778\":1,\"2827\":1,\"2849\":1,\"2919\":1,\"3015\":1,\"3443\":1,\"3638\":1,\"3720\":1,\"3803\":1,\"3939\":1,\"3958\":1,\"4044\":1,\"4338\":1,\"4456\":1,\"4646\":1,\"4676\":1,\"4867\":1,\"4915\":1,\"4981\":1,\"5082\":1,\"5094\":1,\"5111\":1,\"5297\":1,\"5339\":1,\"5374\":1,\"5508\":1,\"5670\":1,\"5965\":1,\"6171\":1,\"6279\":1,\"6472\":1,\"6591\":1,\"6681\":1,\"6789\":1,\"6928\":1,\"6946\":1,\"6985\":1,\"7068\":1,\"7203\":1,\"7209\":1,\"7362\":1,\"7545\":1,\"7553\":1,\"7649\":1,\"7672\":1,\"7729\":1,\"8233\":1,\"8377\":1,\"8490\":1,\"8500\":1,\"8818\":1,\"8826\":1,\"8881\":1,\"9031\":1,\"9092\":1,\"9197\":1,\"9293\":1,\"9513\":1,\"9754\":1,\"9840\":1,\"9866\":1,\"9909\":1};\n\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n\t\tpromises.push(installedCssChunks[chunkId] = loadStylesheet(chunkId).then(function() {\n\t\t\tinstalledCssChunks[chunkId] = 0;\n\t\t}, function(e) {\n\t\t\tdelete installedCssChunks[chunkId];\n\t\t\tthrow e;\n\t\t}));\n\t}\n};\n\n// no hmr\n\n// no prefetching\n\n// no preloaded","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t3524: 0\n};\n\n__webpack_require__.f.j = function(chunkId, promises) {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(4981 != chunkId) {\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise(function(resolve, reject) { installedChunkData = installedChunks[chunkId] = [resolve, reject]; });\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = function(event) {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t} else installedChunks[chunkId] = 0;\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkl2qr_app_backoffice\"] = self[\"webpackChunkl2qr_app_backoffice\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [504], function() { return __webpack_require__(30742); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["COMPANY_NAME_INPUT_ID","getDefaultAccountContact","first_name","last_name","company","country","website","street","phone","city","zip","qrCodesOrders","last_created","name","query","created_at","most_scanned","scans_aggregate","count","qrCodesStatuses","all","active","paused","userRolesOptions","value","label","ownerRole","businessPageHeaderImages","couponsHeaderImages","eventHeaderImages","feedbackHeaderImages","ratesHeaderImages","menuHeaderImages","vcardHeaderImages","SocMediaHeaderImages","PRICE_TABLE_ID","FREE_PLAN_ID","PRICE_PER_EXTRA_USER","DEFAULT_CURRENCY","PLANS_WITH_MULTI_USERS","plansOrder","individualPlansMonthly","popular","price","no_credit_card","has_sale","has_toggle","multi_users","enabled","description","qr_codes","qr_codes_count","included","not_included","button","type","custom","min","max","individualPlansYearly","sale","businessPlansMonthly","enterprise","prop","businessPlansYearly","plansTable","title","rows","getStaticQrContent","URL","url","vcard","firstName","lastName","jobTitle","state","mobilePhone","fax","email","subject","message","sms","text","wifi","network","password","hidden","contentLoader","image_key","background_color","image_width","contentAddress","templateRefs","soc_media","coupons","vcard_plus","business_page","feedback","rating","video","event","pdf","app","images","menu","dynamicTemplates","context","template","templates","id","logo_image","visible_logo","customizations","primary_color","header_image","is_used_template_image","header_template_image_key","basic","soc_media_channels","shortid","loader","advanced","has_share_button","text_color","button_color","coupon","use_barcode","barcode_image","expired_at","Date","terms_and_conditions","website_url","website_name","address","secondary_color","dialog_basic","email_placeholder","phone_placeholder","send_button","second_step_title","second_step_placeholder","save_button_text","send_button_text","gratitude_title","third_step_title","third_step_text","categories","icon","subcategories","star_color","question","placeholder","button_text","button_url","has_button","has_button_file","button_file_key","features","about","all_day","start_date","start_time","multiple_days","end_date","end_time","time_format","timezone","venue_name","contacts","is_header_image","avatar","$t","opening_hours","Mon","is_open","hours","start","end","Tue","Wen","Thu","Fri","Sat","Sun","direct_link","pdf_key","preview_image","shown_in_grid","images_links","caption","key","highlight_the_first_video","videos","video_id","preview_url","categories_options","id_color_category","is_color_all_categories","visible","all_week","week_days","template_basic_color","color_all_categories","is_all_background_color","developer","app_image","app_links","app_store","google_play","instagram","username","proTemplates","symbol","staticQrCodes","data_format","spriteIcon","L2qrWebsiteIcon","configsComponent","previewImage","getFileUrl","L2qrVcardIcon","L2qrEnvelopeIcon","L2qrChatWithDotsIcon","L2qrTextIcon","L2qrWifiIcon","creationQrCodeSteps","updateQrCodeWalletPassSteps","dynamicQrCodeWebsite","dynamicQrCodes","L2qrMenuIcon","L2qrBusinessPageIcon","L2qrSocMediaIcon","L2qrCouponsIcon","L2qrFeedbackIcon","L2qrRatingIcon","L2qrVideoIcon","L2qrEventIcon","L2qrPdfIcon","L2qrAppIcon","L2qrImagesIcon","L2qrInstagramIcon","staticQrCodesComponents","qr-account-qr-configs-static-url","qr-account-qr-configs-static-vcard","qr-account-qr-configs-static-email","qr-account-qr-configs-static-sms","qr-account-qr-configs-static-text","qr-account-qr-configs-static-wifi","dynamicQrCodesComponents","qr-account-qr-configs-dynamic-url","qr-account-qr-configs-dynamic-menu","qr-account-qr-configs-dynamic-vcard-plus","qr-account-qr-configs-dynamic-business-page","qr-account-qr-configs-dynamic-social-medial","qr-account-qr-configs-dynamic-coupons","qr-account-qr-configs-dynamic-feedback","qr-account-qr-configs-dynamic-rating","qr-account-qr-configs-dynamic-video","qr-account-qr-configs-dynamic-event","qr-account-qr-configs-dynamic-pdf","qr-account-qr-configs-dynamic-facebook","qr-account-qr-configs-dynamic-app","qr-account-qr-configs-dynamic-mp3","qr-account-qr-configs-dynamic-images","qr-account-qr-configs-dynamic-instagram","render","_vm","this","_c","_self","attrs","layout","tag","staticRenderFns","components","AuthLayout","BackofficeLayout","AccountLayout","WalletLayout","EmptyLayout","computed","$route","meta","component","Vue","use","VueApollo","defaultClient","clients","anonymousClient","locale","getFirstLanguage","setLanguage","addRoutesLocaleHook","mobileWidth","store","getters","toggleIsMobile","isMobile","window","matchMedia","matches","commit","addEventListener","_Drawer","_Avatar","_Autocomplete","_Button","_Checkbox","_Col","_Container","_DatePicker","_Form","_FormItem","_Switch","_Input","_InputNumber","_Option","_OptionGroup","_Radio","_RadioButton","_RadioGroup","_Row","_Select","_Dropdown","_DropdownMenu","_DropdownItem","_TimeSelect","_Dialog","_Slider","_Breadcrumb","_BreadcrumbItem","_Badge","_Tooltip","_Collapse","_Table","_TableColumn","_Popover","_CollapseItem","_Upload","_Skeleton","_SkeletonItem","lang","forEach","c","createLoader","document","createElement","loaderLink","innerHTML","L2QrLogoIcon","classList","add","append","directive","update","el","binding","loading","oldLoader","querySelector","style","position","_loader$remove","remove","call","bind","callback","observer","IntersectionObserver","entries","entry","isIntersecting","threshold","observe","config","productionTip","initLocale","i18n","router","apolloProvider","h","App","$mount","cookies","Cookie","getHeaders","token","get","Authorization","EXPIRED_TOKEN_MESSAGE","ERROR_TOKEN_MESSAGE","refreshingPromise","promiseToObservable","promise","Observable","subscriber","then","closed","next","complete","err","error","errorHandler","graphQLErrors","networkError","operation","forward","require","extensions","code","includes","dispatch","flatMap","oldHeaders","getContext","headers","setContext","httpLink","createHttpLink","uri","process","wsLink","WebSocketLink","replace","options","reconnect","connectionParams","subscriptionClient","onReconnected","splitLink","split","kind","getMainDefinition","errorLink","onError","link","ApolloLink","from","ApolloClient","cache","InMemoryCache","addTypename","defaultOptions","fetchPolicy","concat","TOKEN_ERRORS_MESSAGE","REFRESH_TOKEN_URL","instance","axios","create","baseURL","interceptors","request","configs","accessToken","response","async","_error$response","_error$response$data","_error$response2","_error$response2$data","_error$response3","_error$response3$data","originalRequest","data","_retry","serverErrorMessage","Promise","reject","Error","VueI18n","messages","FAILBACK_LANGUAGE","_queryLocale$split","_queryLocale$split$ca","queryLocale","URLSearchParams","location","search","queryLang","cookieLang","cookie","href","searchParams","delete","history","replaceState","set","locales","defaultLocale","moment","elementUiLocale","enLang","GET_TRANSLATIONS","gql","fetchMessages","language","routeName","variables","page","translations","reduce","acc","cur","beforeEach","to","mergeLocaleMessage","updateLocale","routerName","VueRouter","routes","path","redirect","children","mode","base","namespaced","timeoutId","isShown","mutations","setMessage","setVisibility","setType","setTimeoutId","actions","hideNotification","setTimeout","showNotification","clearTimeout","sendHelpCenterRequest","post","initState","reset","Object","assign","setEmail","setName","setSubject","setDescription","sendHelpCenterRequestStart","sendHelpCenterRequestSuccess","sendHelpCenterRequestFailure","e","rootGetters","recaptchaToken","helpCenterService","helpCenterRequest","GET_ACCOUNTS","serializeMyAccount","_data$accounts","_data$users$","_data$users","_account$contacts$","_account$contacts","account","accounts","user","users","accountPlan","headerSearch","shownHeaderSearch","errors","allowedMultiUsers","_PLANS_WITH_MULTI_USE","_accountPlan$plan","plan","accountName","usedDynamicQrCodes","_account$used_resourc","used_resources","used_dynamic_qr_codes","usedStaticQrCodes","_account$used_resourc2","used_static_qr_codes","usedBusinessCards","_account$used_resourc3","used_business_cards","usedScans","_account$used_resourc4","used_scans","availableDynamicQrCodes","_accountPlan$plan2","dynamic_qr_codes","availableBusinessCards","_accountPlan$plan3","dynamic_business_card","availableStaticQrCodes","_accountPlan$plan4","static_qr_codes","availableScans","_accountPlan$plan5","scans","userLanguage","_account$software_pre","software_preferences","isOwner","owner_id","getTokenUserId","isFreePlan","_accountPlan$plan6","isPaid","is_paid","isTrial","is_trial","reachedDynamicQrCodesLimit","unlimitedDynamicQrCodes","reachedBusinessCardsLimit","unlimitedBusinessCards","reachedStaticQrCodesLimit","unlimitedStaticQrCodes","reachedScansLimit","advertising","_accountPlan$plan7","showHeaderSearch","bool","updateHeaderSearch","getAccountsStart","getAccountsSuccess","payload","account_plan","getAccountsFailure","getAccounts","apollo","userId","getUpdatedAccount","console","log","GET_FOLDERS","GET_QR_CODES_LIST","CREATE_FOLDER","RENAME_FOLDER","DELETE_FOLDER","UPDATE_QR_CODE_NAME","CHANGE_QR_CODES_STATUS","MOVE_QR_CODES_TO_FOLDER","REMOVE_QR_CODES","serializeFolders","folders","_folders$all_qr_codes","_folders$all_qr_codes2","_folders$active_qr_co","_folders$active_qr_co2","_folders$paused_qr_co","_folders$paused_qr_co2","allQrCodesCount","all_qr_codes","aggregate","activeQrCodesCount","active_qr_codes","pausedQrCodesCount","paused_qr_codes","map","f","_f$qr_codes_aggregate","_f$qr_codes_aggregate2","qr_codes_aggregate","serializeQrCodesListVariables","_rootGetters$account","_qrCodesOrders$getter","_qrCodesOrders$getter2","accountId","qrCodeNameFilter","folderIdFilter","statusFilter","where","account_id","_eq","orderBy","limit","offset","_ilike","folder_id","status","foldersLoading","foldersError","folderCreatingLoading","folderCreatingError","folderRenamingLoading","folderRenamingError","folderDeletingLoading","folderDeletingError","updatingQrCodeError","currentFolderQrCodesCount","qrCodes","loadedAll","qrCodesLoading","qrCodesMoreLoading","qrCodesError","isOpenSidebar","selectedQrCodes","activeFolder","_folders$find","find","foldersNames","updateQrCodeListItem","qrCode","qrCodeIdx","findIndex","qr","splice","toggleSidebar","setSelectedQrCodes","list","setQrCodeNameFilter","setFolderIdFilter","folderId","setStatusFilter","setOrderBy","getFoldersStart","getFoldersSuccess","getFoldersFailure","getQrCodesListStart","getQrCodesListSuccess","_payload$qr_codes_agg","_payload$qr_codes_agg2","_payload$qr_codes_agg3","getQrCodesListFailure","getMoreQrCodesListStart","getMoreQrCodesListSuccess","length","getMoreQrCodesListFailure","Math","createFolderStart","createFolderSuccess","newFolder","push","createFolderFailure","renameFolderStart","renameFolderSuccess","_qr$folder","folder","renameFolderFailure","deleteFolderStart","deleteFolderSuccess","filter","deleteFolderFailure","selectQrCode","setQrCodeParams","updateQrCodeNameStart","updateQrCodeNameFailure","moveQrCodesToFolderSuccess","_qr$folder2","prevFolder","nextFolder","getFolders","_rootGetters$account2","getQrCodesList","getMoreQrCodesList","createFolder","_rootGetters$account3","uuidv4","renameFolder","folderToRename","deleteFolder","folderToDelete","mutate","mutation","updateQrCodeName","removeQrCodes","_qrCodes$map","ids","moveQrCodesToFolder","_qrCodes$map2","changeQrCodesStatus","_qrCodes$map3","GET_NEWS","MARK_AS_VIEWED_NEWS","news","newsLoading","newsMoreLoading","newsError","notViewedNewsCount","n","is_public","viewed_at","getNewsStart","getNewsSuccess","getNewsFailure","getMoreNewsStart","getMoreNewsSuccess","getMoreNewsFailure","markAsViewed","now","getNews","getMoreNews","signup","credentials","login","resetPassword","changePassword","refreshTokens","logout","keepSignedIn","AuthService","t","root","refreshToken","_res$data","res","resolve","setTokens","tokens","_wsLink$subscriptionC3","_wsLink$subscriptionC4","maxAge","_wsLink$subscriptionC","_wsLink$subscriptionC2","tryReconnect","loginWithSocialLink","authURL","windowSize","open","loginCallBack","result","loginWithSocialLinkCallback","loginWithSocialLinkSameWindow","toString","uploadFile","formData","onUploadProgress","deleteFile","UPDATE_FILES_PARAMS","uploadingFilesCount","filesKeysToAdd","filesKeysToRemove","uploading","Boolean","uploadFileStart","uploadFileSuccess","uploadFileFailure","deleteFilesStart","deleteFilesSuccess","deleteFilesFailure","setFilesKeysToAdd","addFilesKeysToAdd","setFilesKeysToRemove","addFilesKeysToRemove","file","FormData","directory","unsaved","FilesService","isSaved","deleteFiles","keys","updateFileParams","qrCodeId","INSERT_QR_CODE","UPDATE_QR_CODE","GET_QR_CODE_DETAILS","GET_ALL_QR_CODE_TYPES","getYouTubeVideoDetails","videoId","MANAGER_APOLLO_CONTEXT","getOrganizationHeader","_rootGetters$accountO","activeOrganizationId","getTokenOrganizationId","serializeNewQrCode","_getters$qrCode","organization_id","newQrCode","defaultQrCodeName","__typename","serializeUpdatedQrCode","_getters$qrCode2","content","PREVIEW_WIDTH","creationQrCodeStep","activeQrCodeTemplate","shownPreviewLoader","shownPreviewMobile","shownQrCodeMobile","qrCodeConfigsRules","validationErrors","qrCodeForm","qrPreview","qrCodeFiles","qrCodeTypes","qrCodeTemplates","activeQrCodeConfig","qrCodeContent","showPreviewLoader","setActiveQrCodeTemplate","setQrCodeConfigsRules","configsRules","setQrCode","updateQrCodeProps","updateQrCodeConfigs","updateCreationQrCodeStep","step","showPreviewMobile","showQrCodeMobile","setValidationErrors","setQrCodeForm","form","generateQrPreview","createQrCodeStart","createQrCodeSuccess","createQrCodeFailure","setQrCodeFiles","files","addQrCodeFiles","removeQrCodeFiles","getQrCodeDetailsStart","getQrCodeDetailsSuccess","getQrCodeDetailsFailure","setQrCodeTypes","types","setQrCodeTemplates","setActiveQrCodeConfig","format","getPageUrl","generateQrCodeSvg","size","createQrCode","updateQrCode","uploadQrPreview","preview","filename","previewBlob","svgToPngBlob","width","previewFile","File","getQrCodeDetails","_data$qr_codes","getAllQrCodeTypes","QrCodeService","MOBILE_WIDTH","UPDATE_QR_CAMPAIGN_INFO","RESET_QR_CODE_SCANS","GET_QR_CODE_SCANS","serializeScansFilter","_gte","filters","_lte","subtract","periodType","allScans","_qrCode$all_scans$agg","_qrCode$all_scans","_qrCode$all_scans$agg2","all_scans","uniqueScans","_qrCode$unique_scans$","_qrCode$unique_scans","_qrCode$unique_scans$2","unique_scans","setFilters","updateQrCampaignInfo","resetQrCodeScans","getQrCodeScans","scansFilter","qr_code","qr_code_scans","GET_QR_CODE_DESIGN","UPDATE_QR_CODE_KEY","UPDATE_QR_CODE_DESIGN","getInitialState","_qrCodeMarkers$","shownDownloadPopup","shownVectorPopup","qrDataFormat","activeStep","disabledToggles","isEditingSwitch","isScanTrackingSwitch","disabledIsEditingSwitch","disabledScanTrackingSwitch","svgText","isLoadingQr","hadInput","loadingTimerId","LOADING_DELAY","qrCodeInstance","qrCodeDesign","qrDesignOptions","markers","qrCodeMarkers","logoName","frameName","colorType","serializeQrCodeDesign","markerSvg","frameSvg","backgroundImageUrl","imageUrl","logoUrl","getMarkersSvg","marker_left_template","getFrameSvg","frame_name","getQrDesignImageUrl","background_image_key","logo_key","frame_svg","marker_left_svg","marker_right_svg","marker_bottom_svg","background_image_url","image_url","logo_url","serializeUpdateQrCodeDesign","fileDetails","backgroundImageKey","imageKey","logoKey","oldPreviewId","preview_id","qrCodePreviewId","newDesign","foreground_color","foreground_color_2","is_gradient","gradient_angle","is_radial_gradient","version","frame_text","frame_color","frame_color_2","frame_font","custom_marker_color","marker_left_inner_color","marker_right_inner_color","marker_bottom_inner_color","marker_left_outer_color","marker_right_outer_color","marker_bottom_outer_color","marker_right_template","marker_bottom_template","shapes","logo_type","qrCodeSvg","_qrCodeMarkers$2","shownScanTrackingPopup","shownUploadFileMessage","isDynamicQrCode","disabledPreview","getQrCodeToDesignKey","qrCodeToDesignKey","showDownloadPopup","showVectorPopup","showScanTrackingPopup","showUploadFileMessage","generateQrStart","timerId","generateQrSuccess","generateQrFailure","setSvgText","setQrDataFormat","setContent","setFrameName","frame","setBackgroundImageKey","setImageKey","setLogoKey","setMarkers","setForegroundColor","color","setLogoName","logo","setIsDynamicQrCode","setColorType","setIsEditingSwitch","setIsScanTrackingSwitch","setDisabledIsEditingSwitch","setDisabledScanTrackingSwitch","setActiveStep","setDisabledToggles","setQrCodeDesign","setQrCodeDesignKey","shownDesignPopup","qrCodeDesignStep","setQrCodeInstance","setQrCodeSvg","getQrCodeDesignStart","loadingQrCodeDesign","getQrCodeDesignSuccess","getColorType","getQrCodeDesignFailure","qrCodeDesignError","getQrCodeDesign","_data$qr_code_designs","qr_code_designs","updateQrCodeKey","updateQrCodeDesign","previewKey","logo_name","designQrCode","changeQrCodeDesignStep","updateQrDesign","updateQrCodeKeySuccess","createSignature","createOrder","createOrderLink","createCheckoutSession","updateSubscription","getUpcomingInvoice","params","priceId","getBillingPortalSession","GET_PLANS","GET_ACCOUNT_BILLING_ADDRESS","accountBillingAddress","paymentFrequency","currency","userSeats","plans","isPlanUpgrading","planPrice","discount","totalPrice","formCreditCard","payment_system","card_number","expiry_date","cvv2","formBillingAddress","company_name","vat","zip_code","formRef","orderDate","requestedPlanId","upcomingInvoice","exchangeRates","EUR","requestedPlan","_plans$find","p","prices","some","pr","planLabel","getAccountBillingAddress","billingAddress","getPlans","sort","a","b","indexOf","setPaymentFrequency","setRequestedPlanId","setCurrency","setIsPlanUpgrading","setPlanPrice","setDiscount","setTotalPrice","setOrderDate","updateFormBillingAddress","updateFormCreditCard","initFormRef","setUpcomingInvoice","invoice","setUserSeats","setExchangeRates","_data$account_billing","_data$account_billing2","account_billing_address","getCheckoutSessionUrl","getUpdatingSubscriptionUrl","mobilePanel","qrMatrix","setShapes","setMobilePanel","panel","generateQr","GET_ORGANIZATIONS","CREATE_ORGANIZATION","UPDATE_ORGANIZATION","DELETE_ORGANIZATION","GET_ORGANIZATION_USERS","inviteOrganizationUser","setOrganizationUserPassword","UPDATE_ORGANIZATION_USER","DELETE_ORGANIZATION_USER","organizationsSearch","organizationUsersSearch","userRolesFilter","organizations","organizationsLoading","organizationsError","organizationUsers","organizationOwner","organizationUsersLoading","organizationUsersError","searchOrganizations","searchOrganizationUsers","filterUserRoles","getOrganizationsStart","getOrganizationsSuccess","getOrganizationsFailure","createOrganizationsSuccess","updateOrganizationsSuccess","idx","o","deleteOrganizationsSuccess","organizationId","getOrganizationUsersStart","getOrganizationUsersSuccess","owner","getOrganizationUsersFailure","createOrganizationUsersSuccess","updateOrganizationUsersSuccess","deleteOrganizationUsersSuccess","getOrganizations","createOrganizations","_data$insert_organiza","_data$insert_organiza2","insert_organizations","returning","updateOrganization","_data$update_organiza","_data$update_organiza2","update_organizations","deleteOrganizations","getOrganizationUsers","_data$accounts$","organizations_roles_users","createOrganizationUser","updateOrganizationUser","_data$update_organiza3","_data$update_organiza4","update_organizations_roles_users","deleteOrganizationUser","serializeOrganizations","defaultOrganizationId","is_default","defaultOrganization","activeOrganization","organizations_by_pk","organizationsRoles","organization_roles","organizationsErrors","activeRoleId","rootState","_activeOrganization$r","_activeOrganization$r2","roles_users","role_id","activeRole","_organizationsRoles$f","r","canCreateQr","create_qr","canReadQr","read_qr","canUpdateQr","update_qr","canDeleteQr","delete_qr","canManageOrganizations","manage_organization","isDefaultOrganization","availableOrganizationQrCodes","_activeOrganization$o","organization_resources","available_qr_codes","availableOrganizationVCards","_activeOrganization$o2","available_vcards","availableOrganizationUsers","organization_users_limit","usedOrganizationQrCodes","_activeOrganization$o3","used_qr_codes","usedOrganizationVCards","_activeOrganization$o4","used_vcards","reachedOrganizationQrCodesLimit","reachedOrganizationVCardsLimit","setActiveOrganization","organization","getUpdatedOrganizations","GET_ACCOUNT_SETTINGS","UPDATE_ACCOUNT_CONTACTS","serializeAccountSettings","_account$account_plan","_account$account_plan2","_account$account_plan3","_account$owner","_account$account_plan4","_account$used_resourc5","_account$used_resourc6","info","customer_id","plan_name","usage","limits","used","dynamic_qr_codes_used","static_qr_codes_used","scans_used","storage_used","used_storage","used_api_requests","contact","contactLoading","errorLoading","setContactField","getAccountSettingsStart","getAccountSettingsSuccess","getAccountSettingsFailure","updateAccountContactStart","updateAccountContactSuccess","updateAccountContactFailure","getAccountSettings","updateAccountContact","passwords","changeEmail","closeAccount","GET_USER_SETTINGS","UPDATE_SOFTWARE_PREFERENCES","UPDATE_USER_INFO","serializeUserSettings","languages","_account$contacts2","_account$contacts2$","softwarePreferences","time_zone","languagesOptions","language_code","softwarePreferencesLoading","softwarePreferencesError","infoLoading","infoError","closingAccountLoading","closingAccountError","setPreferencesField","setInfoField","getUserSettingsStart","getUserSettingsSuccess","getUserSettingsFailure","changeUserPasswordStart","changeUserPasswordSuccess","changeUserPasswordFailure","changeUserEmailStart","changeUserEmailSuccess","changeUserEmailFailure","updateSoftwarePreferencesStart","updateSoftwarePreferencesSuccess","updateSoftwarePreferencesFailure","updateUserInfoStart","updateUserInfoSuccess","updateUserInfoFailure","closeAccountStart","closeAccountSuccess","closeAccountFailure","updateSoftwarePreferences","updateUserInfo","getUserSettings","UserSettingsService","changeUserPassword","changeUserEmail","GET_API_INFO","CREATE_API_KEY","REMOVE_API_KEY","GET_API_KEY_DETAILS","UPDATE_API_KEY_DETAILS","serializeApiKeyDetailsToUpdate","apiKeyDetails","origins","api_key_id","apiKeyId","apiKeyName","apiKeysLoading","apiKeysError","apiKeys","apiKeyOrigins","_apiKeyDetails$origin","getApiSettingsStart","getApiSettingsSuccess","getApiSettingsFailure","setApiKeyDetails","getApiSettings","api_keys","createApiKey","removeApiKey","getApiKeyDetails","updateApiKeyOrigin","GET_BILLING_SETTINGS","GET_ORDERS","SUBSCRIBE_PLAN","UPDATE_BILLING_ADDRESS","GET_PAID_ORDER_BY_ID","verifyCard","serializeOrderVariables","orders","ordersOffset","ordersLimit","ordersLoading","ordersMoreLoading","ordersError","paidOrder","getBillingSettingsStart","getBillingSettingsSuccess","_payload$accounts_pla","_payload$account_bill","accounts_plans","getBillingSettingsFailure","getOrdersStart","getOrdersSuccess","getOrdersFailure","getMoreOrdersStart","getMoreOrdersSuccess","getMoreOrdersFailure","subscribePlan","isSubscribed","is_subscribed","updateBillingAddress","updateAccountPlan","getPaidOrderByIdSuccess","getPaidOrderByIdStart","getPaidOrderById","orderId","getBillingSettings","getOrders","getMoreOrders","_rootGetters$account4","verifyCary","getAccount","ownerId","GET_TICKETS_LIST","GET_TICKET_DETAILS","GET_TICKET_REPLIES","SAVE_TICKET","DELETE_OLD_TICKET_REPLIES","DELETE_TICKETS","ASSIGN_TICKETS","REPLY_TICKETS","sendReplyTicketEmails","repliesIds","copyFiles","GET_FILES_BY_KEYS","serializeTickets","ticket","assigned_to_id","_is_null","serializeReplyObjects","reply","tickets","_rootGetters$backoffi","_rootGetters$backoffi2","manager_id","editor","filesKeys","imageFiles","file_id","toISOString","serializeTicketToSave","_getters$ticketDetail","_getters$ticketDetail2","_getters$ticketDetail3","ticketDetails","ticketsLoading","ticketsMoreLoading","ticketsError","isLoadingTicketDetails","ticketReplies","selectedTickets","repliesToDelete","selectTickets","getTicketsListStart","getTicketsListSuccess","getTicketsListFailure","getMoreTicketsListStart","getMoreTicketsListSuccess","getMoreTicketsListFailure","getTicketDetailsStart","getTicketDetailsSuccess","getTicketDetailsFailure","getTicketReplies","setRepliesToDelete","replies","setTicketDetails","deleteSelectedTicketsSuccess","d","s","deleteSelectedTicketsFailure","assignSelectedTickets","assignToId","replySelectedTickets","getTicketsList","help_center_tickets","getMoreTicketsList","getTicketDetails","help_center_messages","saveTicket","deleteOldTicketReplies","repliesToDeleteIds","deleteTicket","deleteSelectedTickets","assignedToId","replyObjects","GET_MANAGERS_NAMES","serializeManagerNames","u","_u$own_account","_u$own_account$contac","_u$own_account$contac2","_u$own_account2","_u$own_account2$conta","_u$own_account2$conta2","_u$own_account3","_u$own_account3$conta","_u$own_account3$conta2","own_account","fullName","managerNames","getManagersNamesSuccess","getManagersNames","sourceKeys","GET_ALL_TRANSLATIONS","SET_ALL_TRANSITIONS","GET_LANGUAGES","translateTexts","setTranslations","setLanguages","getTranslations","getLanguages","_data$locales","l","texts","DELETE_ARTICLES","GET_ARTICLE_DETAILS","GET_ARTICLES_LIST","GET_TRANSLATED_ARTICLES_BY_PATH","SAVE_ARTICLE","serializeArticles","visibility","meta_path","category","author_id","meta_language_code","serializeArticleDetails","articleDetails","article_files","meta_title","meta_description","meta_image_key","meta_category","card_title","card_description","card_image_key","content_header_title","content_header_description","content_header_background_image_key","content_header_button_text","content_header_button_type","serializeArticleDetailsBlocks","object","_articleDetails$block","blocks","article_id","anchor_enabled","anchor_value","anchor_key","order","show","serializeDuplicateArticleDetails","serializeArticleDuplicateDetailsBlocks","_articleDetails$block2","serializeArticleVariablesToSave","serializeArticleVariablesToDuplicate","articles","articlesLoading","articlesMoreLoading","articlesError","isLoadingArticleDetails","selectedArticles","articleBlocksToDelete","duplicatedPath","languagesToTranslate","translatedArticles","translatedArticlesLoading","translatedArticlesError","selectArticles","getArticlesListStart","getArticlesListSuccess","getArticlesListFailure","getMoreArticlesListStart","getMoreArticlesListSuccess","getMoreArticlesListFailure","getArticleDetailsStart","getArticleDetailsSuccess","getArticleDetailsFailure","deleteSelectedArticlesSuccess","deleteSelectedArticlesFailure","setArticleBlocksToDelete","setDuplicatedPath","setLanguagesToTranslate","getTranslatedArticlesStart","getTranslatedArticlesSuccess","getTranslatedArticlesFailure","getArticlesList","getMoreArticlesList","getArticleDetails","deleteSelectedArticles","article","deleteArticle","saveArticle","articleFilesToDelete","duplicateArticle","getTranslatedArticles","languageCode","createTranslatedArticles","dataToTranslate","serializeArticleToTranslate","textsToTranslate","i","filesToCopy","serializeArticleImages","translatedTexts","copiedFiles","copiedFilesKeys","translatedData","translatedArticle","getTranslatedArticle","copiedFilesToUpdate","getCopiedArticleImages","GET_CHARTS_DATA","GET_QR_CODE_SCANS_RATING","serializeChartData","serializeQrCodesScansRating","_data$qr_codes$map","_qr$account","_qr$account$owner","_qr$scans_aggregate","_qr$scans_aggregate$a","shortId","serializeChartDataFilter","chartsDataLoading","chartsDataError","qrCodesScansRating","qrCodesScansRatingLoading","qrCodesScansRatingError","qrCodeDetails","qrCodeDetailsLoading","qrCodeDetailsError","getChartsDataStart","getChartsDataFailure","getChartsDataSuccess","_payload$users","_payload$qrCodes","_payload$scans","getQrCodesScansRatingStart","getQrCodesScansRatingFailure","getQrCodesScansRatingSuccess","getQrCodesDetailsStart","getQrCodesDetailsFailure","getQrCodesDetailsSuccess","getChartsData","usersFilters","qrCodesFilters","scansFilters","getQrCodesScansRating","getQrCodesDetails","_data$qr_codes2","GET_WALLET_PASS_DETAILS","sendWalletPassEmail","generateWalletPass","getWalletPassDetails","updateWalletPassDetails","walletType","cardDetails","cardDetailsLoading","cardDetailsError","shownWalletPassPopup","backgroundColor","textColor","addToWalletUrl","qrCodeKey","slice","setWalletType","showWalletPassPopup","setBackgroundColor","setTextColor","getCardDetailsStart","getCardDetailsSuccess","card","getCardDetailsFailure","setToken","getCardDetails","walletPass","_getters$backgroundCo","_getters$backgroundCo2","_getters$textColor","_getters$textColor$sl","_getters$cardDetails","foregroundColor","walletService","success","_qrCodeDetails$qr_cod","_qrCodeDetails$qr_cod2","_rootGetters$qrCodeQ","newContent","Vuex","modules","notification","helpCenter","manage","auth","device","qrDesign","accountSettings","userSettings","apiSettings","billingSettings","payment","generator","accountOrganizations","backofficePanel","backofficeAccount","backofficeHelpdesk","backofficeManager","backofficeFiles","backofficeInternationalization","mainNewGenerator","backofficeArticles","backofficeDashboard","wallet","walletPassFiles","SET_LANGUAGE","divider","metaProps","addMeta","getDeltaText","delta","_delta$ops","_delta$ops$map","ops","op","insert","join","addFaqBlock","blockIdx","_i$answer","questionPath","answerPath","eval","answer","addTextBlock","textPath","addLogoAndTextBlock","_content$0$content_te","content_text","addContentAndImage","_content$0$content_te2","buttonTextPath","addBlocks","anchorValuePath","getTranslatedDelta","translatedInserts","cloneArticle","JSON","parse","stringify","metaImagesProps","addMetaImages","addBlocksImages","_article$blocks$block","hasImageKey","imageKeyPath","normalizeFileSize","bytes","k","sizes","floor","parseFloat","pow","toFixed","urlToDataUrl","canModify","isDataURI","startsWith","urlToFetch","fetch","blob","reader","FileReader","onloadend","readAsDataURL","catch","DEFAULT_IMAGE_KEY","_qrCodeFrames$find","frameSvgName","qrCodeFrames","default","_qrCodeMarkers$find","markerSvgName","m","markersName","hasBgImage","qrCodeVersions","allowedImage","allowedGradient","stringToElement","string","tagName","doc","DOMParser","parseFromString","DEFAULT_SVG_HEIGHT","DEFAULT_SVG_WIDTH","parseSvgSize","matchWidth","match","matchHeight","parseInt","height","updateSvgSize","_svgEl","svgEl","scale","setAttribute","String","outerHTML","removeSvgSize","removeAttribute","setWhiteBackground","rect","prepend","svgToRasterImageLink","domUrl","webkitURL","_svgText","mimetype","canvas","ctx","svg","Blob","createObjectURL","img","Image","src","drawImage","toDataURL","dataUrlToBlob","dataURL","mimeType","blobBin","atob","array","charCodeAt","Uint8Array","dataUrl","svgToBlob","domain","getQrContentTemplates","tmp","_ref","contentTmp","createQrFromTemplate","design_id","parseJwt","base64Url","base64","jsonPayload","decodeURIComponent","isExpiredToken","expiredAtTimestamp","exp","isBefore","tokenData","webpackAsyncContext","req","__webpack_require__","module","exports","webpackContext","webpackContextResolve","__webpack_module_cache__","moduleId","cachedModule","undefined","loaded","__webpack_modules__","amdO","deferred","O","chunkIds","fn","priority","notFulfilled","Infinity","fulfilled","j","every","getter","__esModule","leafPrototypes","getProto","getPrototypeOf","obj","__proto__","ns","def","current","getOwnPropertyNames","definition","defineProperty","enumerable","chunkId","promises","miniCssF","g","globalThis","Function","hmd","prototype","hasOwnProperty","inProgress","dataWebpackPrefix","done","script","needAttach","scripts","getElementsByTagName","getAttribute","charset","timeout","nc","onScriptComplete","prev","onerror","onload","doneFns","parentNode","removeChild","target","head","appendChild","Symbol","toStringTag","nmd","paths","createStylesheet","fullhref","oldTag","linkTag","rel","nonce","onLinkComplete","errorType","realHref","insertBefore","nextSibling","findStylesheet","existingLinkTags","dataHref","existingStyleTags","loadStylesheet","installedCssChunks","miniCss","cssChunks","installedChunks","installedChunkData","loadingEnded","realSrc","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","self","__webpack_exports__"],"sourceRoot":""}