{"version":3,"file":"js/FAQs.ec4d583b.js","mappings":"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","sources":["webpack://landing/./src/components/EmptyPlaceholder/emptyPlaceholder.module.scss","webpack://landing/./src/components/EmptyPlaceholder/emptyPlaceholder.ts","webpack://landing/./src/services/faqs.ts","webpack://landing/./src/configs/testAutomation.ts","webpack://landing/./src/services/testAutomation.ts","webpack://landing/./src/views/FAQs/styles.module.scss","webpack://landing/./src/views/FAQs/faqs.ts","webpack://landing/./src/components/EmptyPlaceholder/emptyPlaceholder.html","webpack://landing/./src/views/FAQs/faqs.html"],"sourcesContent":["// extracted by mini-css-extract-plugin\nexport default {\"emptyPlaceholder\":\"q3q7kSpZgUfxA8BcsqMY\",\"imgPlaceholder\":\"SFPoQXrS5UsxAPxACf71\",\"img\":\"SDwrISfU5EYYukqmDBsl\",\"icon\":\"OghV45W12E2Hamkh3eUu\",\"primaryText\":\"p8hGpXQUKsY0RIpNxqd8\",\"secondaryText\":\"LgzTchq_9jcnCwOviT55\"};","import { Component, Prop, Vue } from 'vue-property-decorator';\r\nimport styles from './emptyPlaceholder.module.scss';\r\nimport WithRender from './emptyPlaceholder.html';\r\n\r\n@WithRender\r\n@Component({})\r\nexport default class EmptyPlaceholder extends Vue {\r\n public styles = styles;\r\n\r\n @Prop({ default: '' })\r\n public icon!:string;\r\n\r\n @Prop({ default: '' })\r\n public primaryText!:string;\r\n\r\n @Prop({ default: '' })\r\n public secondaryText!: string;\r\n\r\n @Prop({ default: false })\r\n public isLoading!: boolean;\r\n\r\n @Prop({ default: '' })\r\n public wrapperClass!: string;\r\n}\r\n","import HttpService from '@/services/httpService';\r\nimport { Inject, Service } from 'vue-di-container';\r\n\r\nimport { QuestionCategory, QuestionModel } from '@/models/faqs';\r\n\r\n@Service()\r\nexport default class FAQService {\r\n @Inject(HttpService) public HttpService!: HttpService;\r\n\r\n public async getCategories(): Promise {\r\n const result = await this.HttpService.httpInstance.get('api/FaqCategory/Get');\r\n\r\n return result.data;\r\n }\r\n\r\n public async getQuestions(): Promise {\r\n const result = await this.HttpService.httpInstance.get('api/FaqQuestion/GetQuestions');\r\n\r\n return result.data;\r\n }\r\n}\r\n","const prefix = 'rf';\r\n\r\nexport {\r\n prefix,\r\n};\r\n","import { prefix } from '@/configs/testAutomation';\r\n\r\nconst constructedIds = {\r\n home: {\r\n intro: {\r\n loginBtn: '',\r\n individualsLoginBtn: '',\r\n lawyersLoginBtn: '',\r\n governementalLoginBtn: '',\r\n businessLoginBtn: '',\r\n },\r\n verificationServices: {\r\n verificationLink: '',\r\n showMoreAction: '',\r\n },\r\n eServices: {\r\n category: '',\r\n card: '',\r\n cardAction: '',\r\n showMoreAction: '',\r\n },\r\n faqs: {\r\n browseAllQuestionsBtn: '',\r\n },\r\n partners: {\r\n carouselNextBtn: '',\r\n carouselPrevBtn: '',\r\n card: '',\r\n cardAction: '',\r\n },\r\n contactUs: {\r\n mail: '',\r\n phone: '',\r\n map: '',\r\n },\r\n mobileApps: {\r\n androidLink: '',\r\n iosLink: '',\r\n huaweiLink: '',\r\n },\r\n },\r\n faqs: {\r\n searchTextField: '',\r\n filterBtn: '',\r\n backBtn: '',\r\n accordionHeader: '',\r\n shareQuestionBtn: '',\r\n },\r\n licenseGuide: {\r\n licenseTypeSelect: '',\r\n },\r\n serviceDetails: {\r\n backBtn: '',\r\n menuTrigger: '',\r\n newRequestBtn: '',\r\n followUpBtn: '',\r\n authenticationOfCompletedRequestBtn: '',\r\n },\r\n eServices: {\r\n searchTextField: '',\r\n filterBtn: '',\r\n backBtn: '',\r\n card: '',\r\n cardAction: '',\r\n },\r\n smartSearch: {\r\n faqs: '',\r\n eServices: '',\r\n card: '',\r\n cardAction: '',\r\n },\r\n verificationServices: {\r\n backBtn: '',\r\n card: '',\r\n cardAction: '',\r\n },\r\n};\r\n\r\nfunction generateIds(obj: any, parentNodes: string[] = []) {\r\n const mutatedIds: any = {};\r\n\r\n Object.keys(obj).forEach((key) => {\r\n if (typeof obj[key] === 'object') {\r\n const nodes = [...parentNodes, key];\r\n mutatedIds[key] = { ...generateIds(obj[key], nodes) };\r\n } else {\r\n mutatedIds[key] = !parentNodes.length ? `${prefix}_${key}` : `${prefix}_${parentNodes.join('_')}_${key}`;\r\n }\r\n });\r\n\r\n return mutatedIds;\r\n}\r\n\r\nexport const testIds = generateIds(constructedIds);\r\n","// extracted by mini-css-extract-plugin\nexport default {\"faqsWrapper\":\"np5QWqaegwKh1ehMEQFY\",\"filterWrapper\":\"VhfgzRj72UUjgEP0nBzx\",\"sidebarBtn\":\"igqf_TRaGt4gkgyaCioT\",\"navigationBanner\":\"Z_hRfVG3q_IhYihka5tw\",\"arrowIcon\":\"B0d7HS9JRBUQp49cpIB0\",\"servicesSearchField\":\"bX2j0HccHI04cGQdDZ8M\",\"answerWrapper\":\"iHE0_xf_0J4lu4HScEUX\",\"anwer\":\"pPYDC2zQyow0HTd3vXWo\"};","import { Inject } from 'vue-di-container';\r\nimport { Component, Vue } from 'vue-property-decorator';\r\n//\r\nimport WithRender from './faqs.html';\r\nimport styles from './styles.module.scss';\r\n// Components\r\nimport EmptyPlaceholder from '@/components/EmptyPlaceholder/emptyPlaceholder';\r\n\r\n// services\r\nimport ApiService from '@/services/faqs';\r\nimport TelemetryService from '@/services/TelemetryService';\r\n// utils\r\nimport { failedEvent, successfullEvent } from '@/utils/telemetry';\r\n// Models\r\nimport { QuestionCategory, QuestionModel } from '@/models/faqs';\r\nimport { Toaster } from '@/services/toast';\r\nimport { testIds } from '@/services/testAutomation';\r\n\r\n@WithRender\r\n@Component({\r\n components: {\r\n EmptyPlaceholder,\r\n },\r\n diProvide: [\r\n ApiService,\r\n TelemetryService,\r\n ],\r\n})\r\nexport default class FAQs extends Vue {\r\n @Inject(ApiService) public apiService!: ApiService;\r\n @Inject(TelemetryService) public telemetryService!: TelemetryService;\r\n\r\n public styles = styles;\r\n public testIds = testIds.faqs;\r\n public filterBtnPrefix = testIds.faqs.filterBtn;\r\n public isLoading = true;\r\n\r\n public searchText = '';\r\n public selectedCategoryId = '0';\r\n public allCategoriesId = '0';\r\n public selectedQuestionId = -1;\r\n\r\n public questions: QuestionModel[] = [];\r\n public categories: QuestionCategory[] = [];\r\n\r\n public get viewedQuestions() {\r\n if (this.searchText) {\r\n return this.filterQuestions(this.selectedQuestionsBasedOnCategory);\r\n }\r\n\r\n return this.selectedQuestionsBasedOnCategory;\r\n }\r\n\r\n public get selectedQuestionsBasedOnCategory() {\r\n const { selectedCategoryId, allCategoriesId, questions } = this;\r\n const isAllQuestions = (selectedCategoryId === allCategoriesId);\r\n\r\n if (isAllQuestions) {\r\n return questions;\r\n }\r\n\r\n return questions.filter((question: QuestionModel) => question.categoryId?.includes(selectedCategoryId));\r\n }\r\n\r\n public async mounted() {\r\n document.title = this.$t('faqs.title') as string;\r\n\r\n await this.loadCategories();\r\n\r\n await this.loadQuestions();\r\n\r\n this.updateSelectedQuestionIfAny();\r\n\r\n this.isLoading = false;\r\n }\r\n\r\n public async loadCategories() {\r\n try {\r\n const categoriesRes = await this.apiService.getCategories();\r\n\r\n if (categoriesRes) {\r\n this.categories = this.appendWithTotalCategory(categoriesRes);\r\n\r\n this.telemetryService.trackEvent({\r\n ...successfullEvent,\r\n serviceNameAr: this.$t('services.title') as string,\r\n serviceNameEn: 'FAQs Categories',\r\n });\r\n }\r\n } catch (error) {\r\n this.telemetryService.trackEvent({\r\n ...failedEvent,\r\n serviceNameAr: this.$t('services.title') as string,\r\n serviceNameEn: 'FAQs Categories',\r\n });\r\n }\r\n }\r\n\r\n public async loadQuestions() {\r\n try {\r\n this.questions = await this.apiService.getQuestions();\r\n\r\n this.telemetryService.trackEvent({\r\n ...successfullEvent,\r\n serviceNameAr: this.$t('faqs.title') as string,\r\n serviceNameEn: 'FAQ Services',\r\n });\r\n } catch (error) {\r\n this.telemetryService.trackEvent({\r\n ...failedEvent,\r\n serviceNameAr: this.$t('faqs.title') as string,\r\n serviceNameEn: 'FAQ Services',\r\n });\r\n }\r\n }\r\n\r\n public appendWithTotalCategory(categories: QuestionCategory[]) {\r\n if (categories.length) {\r\n const allCategoriesObj = {\r\n id: String(this.allCategoriesId),\r\n name: 'الكل',\r\n numberOfQuestions: 0,\r\n iconClass: 'n-icon-element-3',\r\n } as QuestionCategory;\r\n\r\n this.selectedCategoryId = this.allCategoriesId;\r\n\r\n return [\r\n allCategoriesObj,\r\n ...categories,\r\n ];\r\n }\r\n\r\n return [];\r\n }\r\n\r\n public isActiveCategory(category: QuestionCategory) {\r\n return this.selectedCategoryId === category.id;\r\n }\r\n\r\n public generateButtonClasses(category: QuestionCategory, index: number) {\r\n let classes = 'n-justify-start n-text-body-lg';\r\n const notLastButton = index < this.categories.length;\r\n\r\n if (notLastButton) {\r\n classes += ' n-mb-5';\r\n }\r\n\r\n if (this.isActiveCategory(category)) {\r\n classes += ` ${styles.sidebarBtn} n-font-bold`;\r\n } else {\r\n classes += ' n-color-font-primary n-font-normal';\r\n }\r\n\r\n return classes;\r\n }\r\n\r\n public getPrependIconClasses(category: QuestionCategory) {\r\n let classes = '';\r\n\r\n if (this.isActiveCategory(category)) {\r\n classes += ` n-icon-arrow-left n-icon-size-24 n-color-white n-font-normal ${styles.arrowIcon}`;\r\n }\r\n\r\n return classes;\r\n }\r\n\r\n public onChangeSidebarFilter(selectedCategoryId: string) {\r\n this.onChangeCategory(selectedCategoryId);\r\n this.changeQueryString();\r\n }\r\n\r\n public filterQuestions(questions: QuestionModel[]) {\r\n return questions.filter((question: QuestionModel) => question.question.includes(this.searchText));\r\n }\r\n\r\n public onChangeCategory(selectedCategoryId: string) {\r\n if (selectedCategoryId) {\r\n this.selectedQuestionId = -1;\r\n this.selectedCategoryId = selectedCategoryId;\r\n return;\r\n }\r\n\r\n this.selectedCategoryId = this.allCategoriesId;\r\n }\r\n\r\n public changeQueryString(toggle: any = () => { }) {\r\n if (toggle && typeof toggle === 'function') {\r\n toggle();\r\n }\r\n\r\n this.searchText = '';\r\n\r\n const { category: currentCategory } = this.$route.query;\r\n const newCategory = this.categories.find((category) => category.id === this.selectedCategoryId)?.id;\r\n\r\n if (newCategory !== currentCategory) {\r\n this.$router.replace({ query: { category: newCategory } });\r\n }\r\n }\r\n\r\n public onCopyQuestionLink(id: string) {\r\n const url = `${window.location.origin}${window.location.pathname}?categoryId=${this.selectedCategoryId}&questionId=${id}`;\r\n navigator.clipboard.writeText(url);\r\n Toaster.success({ message: this.$t('faqs.questionLinkCopiedSuccessfully') as string });\r\n }\r\n\r\n public updateSelectedQuestionIfAny() {\r\n const { categoryId, questionId } = this.$route.query;\r\n\r\n if (categoryId) {\r\n this.selectedCategoryId = categoryId as string;\r\n }\r\n\r\n if (questionId && this.viewedQuestions.length) {\r\n const questionIndex = this.viewedQuestions.findIndex((question) => question.id === questionId);\r\n\r\n if (questionIndex > -1) {\r\n setTimeout(() => {\r\n this.selectedQuestionId = questionIndex;\r\n const selectedQuestion = document.getElementById(questionId as string);\r\n\r\n if (selectedQuestion) {\r\n const headerHeight = getComputedStyle(document.documentElement).getPropertyValue('--layout-header-height');\r\n const headerHeightWithoutUnit = headerHeight.split('px')[0];\r\n const topOffset = selectedQuestion.getBoundingClientRect().top;\r\n const top = topOffset - Number(headerHeightWithoutUnit);\r\n\r\n window.scrollTo({ top, behavior: 'smooth' });\r\n }\r\n }, 200);\r\n }\r\n }\r\n }\r\n}\r\n","
\r\n

{{$t('fetchingData')}}

\r\n \r\n
","
\r\n
\r\n \r\n

\r\n {{$t('faqs.howCanWeHelpYou')}}\r\n

\r\n\r\n \r\n
\r\n
\r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n changeQueryString(toggle)\"\r\n :class=\"styles.categoryWrapper\"\r\n :aria-label=\"category.name\"\r\n @keyup.enter=\"handleCategoryEnter\"\r\n >\r\n
\r\n {{ category.name }} ({{index ? category.numberOfQuestions : questions.length}})\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n \r\n {{ category.name }} ({{index ? category.numberOfQuestions : questions.length}})\r\n \r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n {{question.question}}\r\n \r\n \r\n
\r\n \r\n \r\n {{ $t('faqs.shareQuestion') }}\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n"],"names":["EmptyPlaceholder","Vue","constructor","args","_defineProperty","styles","__decorate","Prop","default","WithRender","Component","FAQService","getCategories","result","this","HttpService","httpInstance","get","data","getQuestions","Inject","Service","prefix","constructedIds","home","intro","loginBtn","individualsLoginBtn","lawyersLoginBtn","governementalLoginBtn","businessLoginBtn","verificationServices","verificationLink","showMoreAction","eServices","category","card","cardAction","faqs","browseAllQuestionsBtn","partners","carouselNextBtn","carouselPrevBtn","contactUs","mail","phone","map","mobileApps","androidLink","iosLink","huaweiLink","searchTextField","filterBtn","backBtn","accordionHeader","shareQuestionBtn","licenseGuide","licenseTypeSelect","serviceDetails","menuTrigger","newRequestBtn","followUpBtn","authenticationOfCompletedRequestBtn","smartSearch","generateIds","obj","parentNodes","mutatedIds","Object","keys","forEach","key","nodes","length","join","testIds","FAQs","viewedQuestions","searchText","filterQuestions","selectedQuestionsBasedOnCategory","selectedCategoryId","allCategoriesId","questions","isAllQuestions","filter","question","categoryId","includes","mounted","document","title","$t","loadCategories","loadQuestions","updateSelectedQuestionIfAny","isLoading","categoriesRes","apiService","categories","appendWithTotalCategory","telemetryService","trackEvent","successfullEvent","serviceNameAr","serviceNameEn","error","failedEvent","allCategoriesObj","id","String","name","numberOfQuestions","iconClass","isActiveCategory","generateButtonClasses","index","classes","notLastButton","sidebarBtn","getPrependIconClasses","arrowIcon","onChangeSidebarFilter","onChangeCategory","changeQueryString","selectedQuestionId","toggle","currentCategory","$route","query","newCategory","find","$router","replace","onCopyQuestionLink","url","window","location","origin","pathname","navigator","clipboard","writeText","Toaster","success","message","questionId","questionIndex","findIndex","setTimeout","selectedQuestion","getElementById","headerHeight","getComputedStyle","documentElement","getPropertyValue","headerHeightWithoutUnit","split","topOffset","getBoundingClientRect","top","Number","scrollTo","behavior","ApiService","TelemetryService","components","diProvide"],"sourceRoot":""}