{"version":3,"file":"src_app_pages_other_account_account_module_ts.js","mappings":"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","sources":["./src/app/core/service/stripe.service.ts","./src/app/pages/other/account/account-routing.module.ts","./src/app/pages/other/account/account.module.ts","./src/app/pages/other/account/dashboard/dashboard.component.ts","./src/app/pages/other/account/dashboard/dashboard.component.html","./src/app/pages/other/account/dashboard/dashboard.model.ts","./src/app/pages/other/account/dashboard/projects/projects.component.ts","./src/app/pages/other/account/dashboard/projects/projects.component.html","./src/app/pages/other/account/dashboard/stat-widget/stat-widget.component.ts","./src/app/pages/other/account/dashboard/stat-widget/stat-widget.component.html","./src/app/pages/other/account/settings/account-tab/account-tab.component.ts","./src/app/pages/other/account/settings/account-tab/account-tab.component.html","./src/app/pages/other/account/settings/notification-tab/notification-tab.component.ts","./src/app/pages/other/account/settings/notification-tab/notification-tab.component.html","./src/app/pages/other/account/settings/password-tab/confirm-password.validator.ts","./src/app/pages/other/account/settings/password-tab/password-tab.component.ts","./src/app/pages/other/account/settings/password-tab/password-tab.component.html","./src/app/pages/other/account/settings/settings.component.ts","./src/app/pages/other/account/settings/settings.component.html","./src/app/pages/other/account/subscriptions/active-subscriptions/active-subscriptions.component.ts","./src/app/pages/other/account/subscriptions/active-subscriptions/active-subscriptions.component.html","./src/app/pages/other/account/subscriptions/create-subscription/create-subscription.component.ts","./src/app/pages/other/account/subscriptions/create-subscription/create-subscription.component.html","./src/app/pages/other/account/subscriptions/subscriptions.component.ts","./src/app/pages/other/account/subscriptions/subscriptions.component.html"],"sourcesContent":["import { HttpClient, HttpHeaders } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { from, mergeMap, Observable } from 'rxjs';\nimport { AuthenticationService } from './auth.service';\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class StripeService {\n\n  public baseUrl = 'https://ig.instant-tokens.com';\n\nconstructor(private http: HttpClient,\n          private authenticationService: AuthenticationService) { }\n\n\npublic manageSubscription(): Observable<any> {\n\n  return from(this.authenticationService.getToken())\n          .pipe(\n                  mergeMap(token => {\n\n                    let headers = new HttpHeaders();\n                    headers = headers.set('authorization', `${token}`);\n                    return this.http.get(`${this.baseUrl}/manage-subscription`, { headers });\n                    }\n              )\n           );\n\n\n}\n\npublic startSubscription(priceId: string): Observable<any> {\n\n  return from(this.authenticationService.getToken())\n  .pipe(\n          mergeMap(token => {\n\n            let headers = new HttpHeaders();\n            headers = headers.set('authorization', `${token}`);\n            const data = { PriceId: priceId };\n            return this.http.post(`${this.baseUrl}/start-subscription`, data, { headers });\n            }\n      )\n   );\n}\n\npublic hasSubscription(): Observable<any> {\n\n  return from(this.authenticationService.getToken())\n  .pipe(\n          mergeMap(token => {\n\n            let headers = new HttpHeaders();\n            headers = headers.set('authorization', `${token}`);\n            return this.http.get(`${this.baseUrl}/has-subscription`, { headers });\n            }\n      )\n   );\n}\n\n\npublic getSubscriptions(): Observable<any> {\n\n  return from(this.authenticationService.getToken())\n  .pipe(\n          mergeMap(token => {\n\n            let headers = new HttpHeaders();\n            headers = headers.set('authorization', `${token}`);\n            return this.http.get(`${this.baseUrl}/subscriptions`, { headers });\n            }\n      )\n   );\n}\n\n\npublic getProducts(): Observable<any> {\n\n  return from(this.authenticationService.getToken())\n  .pipe(\n          mergeMap(token => {\n\n            let headers = new HttpHeaders();\n            headers = headers.set('authorization', `${token}`);\n            return this.http.get(`${this.baseUrl}/products`, { headers });\n            }\n      )\n   );\n}\n\n\n}\n","import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\n\n// component\nimport { DashboardComponent } from './dashboard/dashboard.component';\nimport { SettingsComponent } from './settings/settings.component';\nimport { SubscriptionsComponent } from './subscriptions/subscriptions.component';\n\nconst routes: Routes = [\n  { path: 'dashboard', component: DashboardComponent },\n  { path: 'subscriptions', component: SubscriptionsComponent },\n  { path: 'settings', component: SettingsComponent }\n];\n\n@NgModule({\n  imports: [RouterModule.forChild(routes)],\n  exports: [RouterModule]\n})\nexport class AccountRoutingModule { }\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { NgbDropdownModule, NgbModule, NgbNavModule, NgbProgressbarModule, NgbTooltipModule } from '@ng-bootstrap/ng-bootstrap';\n\n// module\nimport { FooterModule } from 'src/app/shared/footer/footer.module';\nimport { NavbarsModule } from 'src/app/shared/navbars/navbars.module';\nimport { AccountRoutingModule } from './account-routing.module';\n\n// component\nimport { DashboardComponent } from './dashboard/dashboard.component';\nimport { ProjectsComponent } from './dashboard/projects/projects.component';\nimport { DashboardStatWidgetComponent } from './dashboard/stat-widget/stat-widget.component';\nimport { AccountTabComponent } from './settings/account-tab/account-tab.component';\nimport { NotificationTabComponent } from './settings/notification-tab/notification-tab.component';\nimport { PasswordTabComponent } from './settings/password-tab/password-tab.component';\nimport { SettingsComponent } from './settings/settings.component';\nimport { ActiveSubscriptionsComponent } from './subscriptions/active-subscriptions/active-subscriptions.component';\nimport { CreateSubscriptionComponent } from './subscriptions/create-subscription/create-subscription.component';\nimport { SubscriptionsComponent } from './subscriptions/subscriptions.component';\nimport { SharedModule } from 'src/app/shared/shared.module';\n\n\n@NgModule({\n  declarations: [\n    DashboardComponent,\n    SettingsComponent,\n    DashboardStatWidgetComponent,\n    ProjectsComponent,\n    AccountTabComponent,\n    PasswordTabComponent,\n    NotificationTabComponent,\n    SubscriptionsComponent,\n    CreateSubscriptionComponent,\n    ActiveSubscriptionsComponent\n  ],\n  imports: [\n    CommonModule,\n    ReactiveFormsModule,\n    NgbNavModule,\n    NgbTooltipModule,\n    NgbDropdownModule,\n    NgbProgressbarModule,\n    NavbarsModule,\n    FooterModule,\n    AccountRoutingModule,\n    SharedModule,\n    NgbModule\n\n  ]\n})\nexport class AccountModule { }\n","import { Component, OnInit } from \"@angular/core\";\nimport { Title } from \"@angular/platform-browser\";\nimport * as feather from \"feather-icons\";\n\n// service\nimport { AuthenticationService } from \"src/app/core/service/auth.service\";\n\n// types\nimport { AwsUser, User } from \"src/app/core/models/auth.models\";\nimport { InstagramItem, Project, Task } from \"./dashboard.model\";\n\n// data\nimport { PROJECTS, TASKS } from \"./data\";\nimport { InstantTokensIgService } from \"src/app/core/service/instant-tokens-ig.service\";\nimport { StripeService } from \"src/app/core/service/stripe.service\";\nimport { throws } from \"assert\";\n\n@Component({\n  selector: \"app-pages-dashboard\",\n  templateUrl: \"./dashboard.component.html\",\n  styleUrls: [\"./dashboard.component.scss\"],\n})\nexport class DashboardComponent implements OnInit {\n  loggedInUser: AwsUser | null = null;\n  projects: InstagramItem[] = [];\n  tasks: Task[] = [];\n \n  isLoading = true;\n  hasErrored = false;\n  fetchDataCount = 0;\n\n  currentPage = 1;\n  itemsPerPage = 6;\n  totalItems: number;\n\n  public showSubscriptionWarning = true;\n\n  constructor(\n    private authService: AuthenticationService,\n    private dataService: InstantTokensIgService,\n    private stripeService: StripeService,\n    private titleService: Title\n  ) {}\n\n  ngOnInit(): void {\n    this.titleService.setTitle(\"Instant Tokens | Your Dashboard\");\n    this.loggedInUser = this.authService.currentUser();\n\n    this._fetchData();\n  }\n\n  ngAfterViewInit(): void {\n    feather.replace();\n  }\n\n  pageChanged(newPage: number) {\n    this.currentPage = newPage;\n    this._fetchData();\n  }\n\n  async _fetchData() {\n    this.isLoading = true;\n    this.dataService\n      .getAuthorisations(this.currentPage, this.itemsPerPage)\n      .subscribe({\n        next: (data) => {\n          this.totalItems = data?.total || 0;\n          this.projects = data?.items || [];\n          this.isLoading = false;\n          this.hasErrored = false;\n        },\n        error: (err) => {\n          if (this.fetchDataCount > 10) {\n            this.hasErrored = true;\n          } else {\n            setTimeout(() => {\n              this._fetchData();\n            }, 1000);\n          }\n          this.fetchDataCount += 1;\n        },\n      });\n\n    this.stripeService.hasSubscription().subscribe({\n      next: (data) => {\n        this.showSubscriptionWarning = !data.IsSubscribed;\n      },\n      error: (err) => {\n        this.showSubscriptionWarning = true;\n      },\n    });\n  }\n\n  // public async getSubscriptionDetails() {\n  //   const token = (await Auth.currentSession()).getAccessToken().getJwtToken();\n  //   this.stripeService.hasSubscription(token)\n  //   .subscribe({\n  //     next:(data) => {\n  //       this.showSubscriptionWarning = !data.IsSubscribed;\n  //     },\n  //     error: (err) => {\n  //       this.showSubscriptionWarning = true;\n  //     }\n  //   });\n  // }\n}\n","<!-- navbar -->\n<app-navbar-4 [fixedWidth]=\"true\" navClass=\"navbar-light shadow\"></app-navbar-4>\n<!-- page content -->\n<section class=\"position-relative d-flex flex-column justify-content-between bg-gradient2 py-3 px-3 min-vh-100 pt-5\" style=\"height: 100%\">\n    <div class=\"container\">\n        <div class=\"row\">\n            <div class=\"col-lg-12\">\n                <div class=\"page-title\">\n                    <h3 class=\"mb-0 text-primary\">Dashboard</h3>\n                    <p class=\"mt-1 fw-medium\">Welcome to Instant Tokens</p>\n                </div>\n            </div>\n        </div>\n        <ng-container *ngIf=\"isLoading\">\n\n            <div class=\"w-100 d-flex justify-content-center align-items-center\">\n\n                <div class=\"position-absolute top-0 start-0 end-0 bottom-0 bg-light cursor-none\"\n                    style=\"z-index: 20; opacity: 0.8;\">\n\n                    <div class=\"h-100 w-100 m-auto d-flex\">\n                        <h4 class=\"text-primary m-auto\">\n                            <i class=\"fa-solid fa-spinner fa-spin me-2\"></i>\n                            Loading dashboard...\n                        </h4>\n                    </div>\n\n\n                </div>\n\n            </div>\n\n\n        </ng-container>\n\n        <ng-container *ngIf=\"hasErrored\">\n\n            <div class=\"w-100 d-flex justify-content-center align-items-center\">\n\n                <div class=\"position-absolute top-0 start-0 end-0 bottom-0 bg-light cursor-none\"\n                    style=\"z-index: 20; opacity: 0.8;\">\n\n                    <div class=\"h-100 w-100 m-auto d-flex\">\n                        <h4 class=\"text-danger m-auto\">\n                            <i class=\"fa-solid fa-exclamation text-danger me-2\"></i>\n                            Sorry an errored has occured.\n                            <br />\n                            <br />\n                            <button type=\"button\" class=\"btn btn-primary\" (click)=\"this._fetchData()\">\n\n                                <i class=\"fa-solid fa-rotate-right me-2\"></i>\n                                Reload dashboard\n\n                            </button>\n                        </h4>\n                    </div>\n                </div>\n\n            </div>\n        </ng-container>\n\n        <ng-container *ngIf=\"!isLoading || hasErrored\">\n            <div class=\"row mt-2\">\n\n                <div class=\"col-md-4 col-sm-12\">\n                    <!-- stats widget -->\n                    <app-dashboard-stat-widget *ngIf=\"showSubscriptionWarning\" icon=\"circle-exclamation\"\n                        variant=\"danger\" title=\"Subscription missing\">\n                    </app-dashboard-stat-widget>\n\n                    <app-dashboard-stat-widget *ngIf=\"!showSubscriptionWarning\" icon=\"circle-check\" variant=\"success\"\n                        title=\"Subscription found\">\n                    </app-dashboard-stat-widget>\n\n                </div>\n                <div class=\"col-md-4 col-sm-12\">\n                    <div class=\"card\">\n                        <div class=\"card-body\">\n                            <app-trustbox></app-trustbox>\n                        </div>\n                    </div>\n                </div>\n            </div>\n\n            <!-- recent projects -->\n            <app-dashboard-projects [projects]=\"projects\" [loggedInUser]=\"loggedInUser\"\n                (refreshItems)=\"_fetchData()\"></app-dashboard-projects>\n            <!-- tasks -->\n        </ng-container>\n\n    </div>\n\n    <!-- Pagination -->\n    <div class=\"d-flex justify-content-center\">\n        <ngb-pagination [collectionSize]=\"totalItems\" [(page)]=\"currentPage\" [pageSize]=\"itemsPerPage\"\n            (pageChange)=\"pageChanged($event)\">\n        </ngb-pagination>\n    </div>\n</section>\n\n<!-- footer -->\n<app-footer-3></app-footer-3>","export interface Project {\n    date: string;\n    title: string;\n    state: {\n        name: string;\n        variant: string;\n    };\n    description: string;\n    progress: {\n        value: number;\n        variant: string;\n    };\n    members: string[];\n}\n\nexport interface Task {\n    id: number;\n    title: string;\n    time: string;\n    variant: string;\n    taskRatio: {\n        completedTask: number;\n        totalTask: number;\n    };\n    comment: number;\n    priority: string;\n}\n\nexport interface InstagramItem {\n    InstagramUserId: string;\n    InstagramUsername: string;\n    Nickname?: string;\n    UserSecret: string;\n}","import { outputAst } from '@angular/compiler';\nimport { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\nimport { AwsUser, User } from 'src/app/core/models/auth.models';\nimport { InstantTokensIgService } from 'src/app/core/service/instant-tokens-ig.service';\nimport { ToastService } from 'src/app/core/service/toast.service';\nimport { ConfirmModalComponent } from 'src/app/shared/modals/confirm-modal/confirm-modal.component';\nimport { ManageDomainsModalComponent } from 'src/app/shared/modals/manage-domains-modal/manage-domains-modal.component';\nimport { UpdateSingleValueModalComponent } from 'src/app/shared/modals/update-single-value-modal/update-single-value-modal.component';\n\n\n// types\nimport { InstagramItem, Project } from '../dashboard.model';\n\n@Component({\n  selector: 'app-dashboard-projects',\n  templateUrl: './projects.component.html',\n  styleUrls: ['./projects.component.scss']\n})\nexport class ProjectsComponent implements OnInit {\n\n  @Input() projects: InstagramItem[] = [];\n  @Input() loggedInUser: AwsUser;\n\n  @Output()\n  public refreshItems: EventEmitter<any> = new EventEmitter<any>();\n\n\n\n  loadingProjects: InstagramItem[] = [];\n\n  today = new Date();\n\n\n  constructor(private instantTokensService: InstantTokensIgService,\n    private toastService: ToastService,\n    private modalService: NgbModal,\n    private router: Router) {\n\n\n  }\n  loadprojectScripts() {\n    if (!this.projects || !Array.isArray(this.projects) || this.projects.length === 0) {\n      return;\n    }\n    this.loadScript(this.projects[0]);\n\n  }\n  ngAfterViewInit(): void {\n\n    this.showSamplePhotos();\n  }\n  showSamplePhotos() {\n    if (!this.projects || !Array.isArray(this.projects) || this.projects.length === 0) {\n      return;\n    }\n    const _Instafeed = (window as any).Instafeed;\n    let accessToken = (window as any).InstagramToken\n    let count = 0;\n\n\n    const samplePhotoInterval = setInterval(() => {\n      accessToken = (window as any).InstagramToken\n\n      if (count > 30 && !accessToken) {\n        clearInterval(samplePhotoInterval)\n      }\n      if (accessToken) {\n        const feed = new _Instafeed({\n          accessToken: (window as any).InstagramToken\n        })\n        feed.run();\n        clearInterval(samplePhotoInterval)\n        console.log(\"Loading sample photos\");\n      }\n      count++\n    }, 500)\n  }\n  loadScript(project: InstagramItem) {\n    let node = document.createElement('script'); // creates the script tag\n    node.src = this.getJsFile(project); // sets the source (insert url in between quotes)\n    node.type = 'text/javascript'; // set the script type\n    node.async = true; // makes script run asynchronously\n    // node.charset = 'utf-8';\n    // append to head of document\n    document.getElementsByTagName('head')[0].appendChild(node);\n  }\n  ngOnInit(): void {\n    this.loadprojectScripts();\n  }\n\n  public getJsFile(project: InstagramItem) {\n    return `https://ig.instant-tokens.com/users/${this.loggedInUser.username}/instagram/${project.InstagramUserId}/token.js?userSecret=${project.UserSecret}`;\n  }\n  public getJson(project: InstagramItem) {\n    return `https://ig.instant-tokens.com/users/${this.loggedInUser.username}/instagram/${project.InstagramUserId}/token?userSecret=${project.UserSecret}`;\n  }\n\n  public displayShareableLink() {\n    let link = this.instantTokensService.generateNewAuthorisationLink();\n\n    link = `${link}&state=${this.loggedInUser.username}`;\n    this.copyText(link);\n\n  }\n\n  private copyText(text) {\n    let listener = (e: ClipboardEvent) => {\n      let clipboard = e.clipboardData || window[\"clipboardData\"];\n      clipboard.setData(\"text\", text);\n      e.preventDefault();\n    };\n\n    document.addEventListener(\"copy\", listener, false)\n    document.execCommand(\"copy\");\n    document.removeEventListener(\"copy\", listener, false);\n\n    this.displayCopyToast();\n  }\n\n  public async addNewAuthorisation() {\n    window.location.href = this.instantTokensService.generateNewAuthorisationLink();\n  }\n\n  public displayCopyToast() {\n    this.toastService.showSuccess(\"Copied\");\n  }\n  public getCopyItem(item, isJs) {\n    if (!item) {\n      return;\n    }\n\n    const username = this.loggedInUser && this.loggedInUser.username ? this.loggedInUser.username : '';\n    const val = `https://ig.instant-tokens.com/users/${username}/instagram/${item.InstagramUserId}/token${(isJs ? '.js' : '')}?userSecret=${item.UserSecret}`;\n\n    this.copyText(val);\n  }\n\n\n  deleteItem(item) {\n\n    const name = item?.InstagramUsername ?? item?.Nickname ?? \"\";\n\n    const modalRef = this.modalService.open(ConfirmModalComponent, { centered: true });\n    modalRef.componentInstance.message = `Are you sure you want to delete the Instagram Account ${name} from your Instant Tokens account?`;\n    modalRef.result.then((result) => {\n\n      if (result.confirmationResult == true) {\n        this.loadingProjects.push(item);\n        this.instantTokensService.removeInstagramAccount(this.loggedInUser.username, item.InstagramUserId)\n          .subscribe({\n            next: (resp) => {\n              this.toastService.showSuccess(\"Your request was processed successfully\");\n              this.refreshItems.emit();\n              this.loadingProjects = this.loadingProjects.filter(item => item.InstagramUserId !== item.InstagramUserId);\n            },\n            error: (err) => {\n              this.toastService.showSuccess(\"Sorry, we could not process your request\");\n              this.loadingProjects = this.loadingProjects.filter(item => item.InstagramUserId !== item.InstagramUserId);\n            }\n          });\n      }\n\n    });\n  }\n\n\n\n  regenerateUserSecret(item) {\n\n    const name = item?.InstagramUsername ?? item?.Nickname ?? \"\";\n\n    const modalRef = this.modalService.open(ConfirmModalComponent, { centered: true });\n    modalRef.componentInstance.message = `Are you sure you want to generate a new User Secret for the Instagram Account ${name}?`;\n    modalRef.result.then((result) => {\n\n      if (result.confirmationResult == true) {\n        this.loadingProjects.push(item);\n        this.instantTokensService.regenerateUserSecret(this.loggedInUser.username, item.InstagramUserId)\n          .subscribe({\n            next: (resp) => {\n              this.toastService.showSuccess(\"Your request was processed successfully\");\n              this.refreshItems.emit();\n              this.loadingProjects = this.loadingProjects.filter(item => item.InstagramUserId !== item.InstagramUserId);\n            },\n            error: (err) => {\n              this.toastService.showSuccess(\"Sorry, we could not process your request\");\n              this.loadingProjects = this.loadingProjects.filter(item => item.InstagramUserId !== item.InstagramUserId);\n            }\n          });\n      }\n\n    });\n  }\n\n\n  refreshUserName(item) {\n\n    const name = item?.InstagramUsername ?? item?.Nickname ?? \"\";\n\n    const modalRef = this.modalService.open(ConfirmModalComponent, { centered: true });\n    modalRef.componentInstance.message = `Are you sure you want to refresh the username from Instagram for the Instagram Account ${name}?`;\n    modalRef.result.then((result) => {\n\n      if (result.confirmationResult == true) {\n        this.loadingProjects.push(item);\n        this.instantTokensService.refreshUserName(this.loggedInUser.username, item.InstagramUserId)\n          .subscribe({\n            next: (resp) => {\n              this.toastService.showSuccess(\"Your request was processed successfully\");\n              this.refreshItems.emit();\n              this.loadingProjects = this.loadingProjects.filter(item => item.InstagramUserId !== item.InstagramUserId);\n            },\n            error: (err) => {\n              this.toastService.showSuccess(\"Sorry, we could not process your request\");\n              this.loadingProjects = this.loadingProjects.filter(item => item.InstagramUserId !== item.InstagramUserId);\n            }\n          });\n      }\n\n    });\n  }\n\n\n  updateNickName(item) {\n\n    const name = item?.InstagramUsername ?? item?.Nickname ?? \"\";\n\n    const modalRef = this.modalService.open(UpdateSingleValueModalComponent, { centered: true });\n    modalRef.componentInstance.message = `Please enter a new Nickname for the Instagram Account ${name}`;\n    modalRef.result.then((result) => {\n\n      if (result.confirmationResult == true) {\n        this.loadingProjects.push(item);\n        this.instantTokensService.updateNickname(this.loggedInUser.username, item.InstagramUserId, result.newValue)\n          .subscribe({\n            next: (resp) => {\n              this.toastService.showSuccess(\"Your request was processed successfully\");\n              this.refreshItems.emit();\n              this.loadingProjects = this.loadingProjects.filter(item => item.InstagramUserId !== item.InstagramUserId);\n            },\n            error: (err) => {\n              this.toastService.showSuccess(\"Sorry, we could not process your request\");\n              this.loadingProjects = this.loadingProjects.filter(item => item.InstagramUserId !== item.InstagramUserId);\n            }\n          });\n      }\n\n    });\n  }\n\n\n  manageDomains(item) {\n\n    const name = item?.InstagramUsername ?? item?.Nickname ?? \"\";\n\n    const modalRef = this.modalService.open(ManageDomainsModalComponent, { centered: true, size: \"lg\" });\n    modalRef.componentInstance.message = `You can manage which domains have access, by default any domain will have access. Please ensure you enter the domain correctly`;\n    modalRef.componentInstance.instaUserId = item.InstagramUserId;\n    modalRef.componentInstance.userId = this.loggedInUser.username\n\n    modalRef.result.then((result) => {\n\n      if (result.confirmationResult == true) {\n        this.loadingProjects.push(item);\n        this.instantTokensService.updateDomains(this.loggedInUser.username, item.InstagramUserId, result.newValue)\n          .subscribe({\n            next: (resp) => {\n              this.toastService.showSuccess(\"Your request was processed successfully\");\n              this.refreshItems.emit();\n              this.loadingProjects = this.loadingProjects.filter(item => item.InstagramUserId !== item.InstagramUserId);\n            },\n            error: (err) => {\n              this.toastService.showSuccess(\"Sorry, we could not process your request\");\n              this.loadingProjects = this.loadingProjects.filter(item => item.InstagramUserId !== item.InstagramUserId);\n            }\n          });\n      }\n\n    });\n  }\n\n  isItemLoading(project) {\n    return this.loadingProjects.find(item => item.InstagramUserId == project.InstagramUserId);\n  }\n\n  hasExpired(ExpiresOn) {\n\n    const expires = new Date(ExpiresOn).toISOString();\n    const today = new Date().toISOString();\n\n    return expires < today;\n\n  }\n\n\n}\n","<div class=\"row\" *ngIf=\"projects.length === 0\">\n\n    <div class=\"col-12\">\n\n        <div class=\"card\">\n            <div class=\"card-body text-center\">\n                <h4>\n                    <i class=\"fa-solid fa-info-circle text-danger\">\n                    </i>\n                    No Instagram accounts to display\n                </h4>\n                \n                    <div ngbDropdown class=\"d-inline-block\">\n                        <button type=\"button\" class=\"btn btn-outline-primary\" id=\"dropdownBasic1\" ngbDropdownToggle>\n                            Add new <i class=\"ms-1 fa-solid fa-plus\"></i>\n                        </button>\n                        <div ngbDropdownMenu aria-labelledby=\"dropdownBasic1\">\n                            <button ngbDropdownItem (click)=\"addNewAuthorisation()\">Add Instagram Account</button>\n                            <button ngbDropdownItem (click)=\"displayShareableLink()\">Get shareable link </button>\n    \n                        </div>\n                    </div>\n                \n            </div>\n        </div>\n\n    </div>\n\n</div>\n\n\n<div class=\"row\" *ngIf=\"projects.length !== 0\">\n    <div class=\"col-lg-12\">\n        <div class=\"row\">\n            <div class=\"col\">\n                <h4 class=\"mb-3 mt-0 fs-16 text-primary\">\n                    <i class=\"fa-brands fa-instagram\"></i>\n                    Instagram Accounts\n                </h4>\n            </div>\n            <div class=\"col-auto text-end\">\n\n                <div ngbDropdown class=\"d-inline-block\">\n                    <button type=\"button\" class=\"btn btn-outline-primary\" id=\"dropdownBasic1\" ngbDropdownToggle>\n                        Add new <i class=\"ms-1 fa-solid fa-plus\"></i>\n                    </button>\n                    <div ngbDropdownMenu aria-labelledby=\"dropdownBasic1\">\n                        <button ngbDropdownItem (click)=\"addNewAuthorisation()\">\n                            <i class=\"fa-solid fa-plus me-2 text-primary\"></i>\n                            Add Instagram Account</button>\n                        <button ngbDropdownItem (click)=\"displayShareableLink()\">\n                            <i class=\"fa-solid fa-link me-2 text-primary\"></i>\n                            Get shareable link </button>\n\n                    </div>\n                </div>\n\n              \n            </div>\n        </div>\n\n\n        <div class=\"row my-2\">\n            <!-- project start -->\n            <div class=\"col-lg-4\" *ngFor=\"let project of projects\">\n                <div class=\"card\">\n                    <div class=\"card-body\">\n\n                        <div class=\"w-100 d-flex justify-content-center align-items-center\" *ngIf=\"isItemLoading(project)\">\n                            \n                            <div class=\"position-absolute top-0 start-0 end-0 bottom-0 bg-light cursor-none\" style=\"z-index: 20; opacity: 0.8;\">\n\n                                <div class=\"h-100 w-100 m-auto d-flex\">\n                                <h4 class=\"text-primary m-auto\">\n                                    <i class=\"fa-solid fa-spinner fa-spin me-2\"></i>\n                                    Please wait ...\n                                </h4>\n                                </div>\n                                \n\n                            </div>\n\n                        </div>\n\n\n                        <!-- action start -->\n                        <div class=\"row align-items-center\">\n                            <div class=\"col\">\n                                <p title=\"Instagram User Id\" class=\"text-muted fs-13 fw-medium mb-0\">{{project?.InstagramUserId}}</p>\n                            </div>\n                            <div class=\"col-auto text-end\">\n                                <div ngbDropdown placement=\"bottom-end\">\n                                    <a class=\"btn-link text-muted arrow-none\" href=\"javascript:void(0)\"\n                                        ngbDropdownToggle>\n                                        <i class=\"fa-solid fa-ellipsis-vertical\"></i>\n                                    </a>\n                                    <div ngbDropdownMenu>\n                                        <a ngbDropdownItem [routerLink]=\"['.']\" (click)=\"regenerateUserSecret(project)\"><i class=\"fa-solid fa-arrow-rotate-right me-2 text-primary\" ></i>Refresh User Secret</a>\n                                        <a ngbDropdownItem [routerLink]=\"['.']\" (click)=\"refreshUserName(project)\"><i class=\"fa-solid fa-user-check me-2 text-primary\" ></i>Update Username</a>\n                                        <a ngbDropdownItem [routerLink]=\"['.']\" (click)=\"updateNickName(project)\"><i class=\"fa-solid fa-user-pen me-2 text-primary\"></i>Edit Nickname</a>\n                                        <a ngbDropdownItem [routerLink]=\"['.']\" (click)=\"manageDomains(project)\"><i class=\"fa-solid fa-globe me-2 text-primary\"></i>Manage Domains</a>\n                                        <div class=\"dropdown-divider\"></div>\n                                        <a class=\"text-danger\" ngbDropdownItem [routerLink]=\"['.']\"\n                                                    (click)=\"deleteItem(project)\"\n                                                    ><i\n                                                class=\"fa-solid fa-times me-2\"></i>Delete</a>\n                                    </div>\n                                </div>\n                            </div>\n                        </div>\n                        <!-- action end -->\n\n                        <div class=\"mt-3\">\n                            <h4 class=\"mt-0 mb-1\">\n                                <a title=\"Username\" [routerLink]=\"['.']\">{{project.InstagramUsername}}</a>\n                            </h4>\n                            <label title=\"Nickname\"\n                                class=\"mb-1 badge badge-soft-primary\">{{project?.Nickname || '(not set)'}}</label>\n\n                            <!-- <p class=\"text-muted fs-14 mt-3\">{{project.description}}</p> -->\n                        </div>\n\n                        <!-- progress -->\n                        <!-- <div class=\"mt-4\">\n                            <div class=\"row\">\n                                <div class=\"col\">\n                                    <h6 class=\"mt-0\">Progress</h6>\n                                </div>\n                                <div class=\"col text-end\">\n                                    <small class=\"fw-semibold\">{{project.progress.value}}%</small>\n                                </div>\n                            </div>\n                            <ngb-progressbar [type]=\"project.progress.variant\" [value]=\"project.progress.value\"\n                                height=\"6px\"></ngb-progressbar>\n                        </div> -->\n                        <!-- progress end -->\n\n                        <!-- assignment start -->\n                        <div class=\"row mt-3\">\n                            <div class=\"col\">\n                                \n                                \n                                <!-- <i class=\"fa-brands fa-square-js fa-lg cursor-pointer text-secondary\"\n                                title=\"JavaScript File\"\n                                placement=\"end\"\n                                [ngbPopover]=\"getJsFile(project)\"\n                                popoverTitle=\"JavaScript File\"\n                                ></i> -->\n\n              \n                                <div class=\"input-group input-group-sm\">\n                                    <div class=\"input-group-prepend input-group-sm\">\n                                      <div class=\"input-group-text input-group-sm\">\n                                        <i class=\"fa-brands fa-square-js fa-lg cursor-pointer text-primary\"\n                                        placement=\"start\"\n                                        [ngbPopover]=\"jsPopContent\"\n                                        [popoverTitle]=\"JsPopTitle\"\n                                        ></i>\n                                        &nbsp;\n                                      </div>\n                                    </div>\n\n                                    <ng-template #JsPopTitle> <span class=\"text-primary\">JavaScript file response</span></ng-template>\n                                    <ng-template #jsPopContent>\n                                        This link can be used as a script file source and automatically sets a JavaScript variable named <code class=\"text-primary\">InstagramToken</code> with your Long Lived Access Token\n                                    </ng-template>\n\n                                    <input type=\"text\" class=\"form-control\" [value]=\"getJsFile(project)\" id=\"inlineFormInputGroup\" placeholder=\"JS File\">\n\n                                    <div class=\"input-group-append input-group-sm bg-light\">\n                                    <div class=\"input-group-text input-group-sm cursor-pointer\"\n                                    (click)=\"getCopyItem(project, true)\"\n                                    >\n                                      <i class=\"fa-solid fa-copy cursor-pointer text-secondary\"></i>\n                                      &nbsp;\n                                    </div>\n                                  </div>\n\n                                  </div>\n\n                                </div>  \n                        </div>\n                        <div class=\"row mt-3\">\n                            <div class=\"col\">\n\n                                <div class=\"input-group input-group-sm\">\n                                    <div class=\"input-group-prepend input-group-sm\">\n                                      <div class=\"input-group-text input-group-sm\">\n                                        <i class=\"fa-solid fa-code fa-lg cursor-pointer text-primary\"\n                                        placement=\"start\"\n                                        [ngbPopover]=\"jsonPopContent\"\n                                        [popoverTitle]=\"jsonPopTitle\"\n                                        ></i>\n                                        &nbsp;\n                                      </div>\n                                    </div>\n\n                                    <ng-template #jsonPopTitle> <span class=\"text-primary\">JSON response</span></ng-template>\n                                    <ng-template #jsonPopContent>\n                                        This will provide the access token in a JSON Response like this:\n                 \n                                        <br/>\n                                         \n                                           <code class=\"text-primary\">\n                                         {{   \"{ Token : 'Your_Long_Lived_Instagram_Token' }\" }}\n                                           </code>\n                                    </ng-template>\n\n                                    <input type=\"text\" class=\"form-control\" [value]=\"getJson(project)\" id=\"inlineFormInputGroup\" placeholder=\"JS File\">\n\n                                    <div class=\"input-group-append input-group-sm bg-light\">\n                                        <div class=\"input-group-text input-group-sm cursor-pointer\"\n                                            (click)=\"getCopyItem(project, false)\">\n                                        <i class=\"fa-solid fa-copy cursor-pointer text-secondary\"\n                                        ></i>\n                                        &nbsp;\n                                        </div>\n                                    </div>\n\n\n                                </div>\n                           </div>\n                        <!-- assignment end -->\n                        </div>\n                        <div class=\"sample-photos\">\n                            <div id=\"instafeed\">\n                            </div>\n                        </div>\n                        <div class=\"card-footer bg-white\" *ngIf=\"project.ExpiresOn\">\n\n                        <div class=\"row mt-3\">\n                            <div class=\"col-12 text-center\">\n                             \n                               <small *ngIf=\"!hasExpired(project.ExpiresOn)\"> \n                                <i class=\"fa-solid fa-check text-success me-2\"></i>\n                                Instagram Access Token expires on <br/> <span class=\"text-primary\"> {{ project.ExpiresOn | date: 'dd MMMM yyyy'}}</span></small>\n                               <small *ngIf=\"hasExpired(project.ExpiresOn)\"> \n                                <i class=\"fa-solid fa-exclamation text-danger me-2\"></i>\n                                Instagram Access Token expired on <br/> <span class=\"text-danger\"> {{ project.ExpiresOn | date: 'dd MMMM yyyy'}}</span></small>\n                            </div>\n                        </div>\n    \n                        </div>\n                    </div>\n\n                 </div>\n            <!-- project end -->\n\n            </div>\n        </div>\n    </div>\n</div>","import { Component, Input, OnInit } from '@angular/core';\n\n@Component({\n  selector: 'app-dashboard-stat-widget',\n  templateUrl: './stat-widget.component.html',\n  styleUrls: ['./stat-widget.component.scss']\n})\nexport class DashboardStatWidgetComponent implements OnInit {\n\n  @Input() icon: string = '';\n  @Input() variant: string = '';\n  @Input() stats: number = 0;\n  @Input() title: string = '';\n\n  constructor () { }\n\n  ngOnInit(): void {\n  }\n\n}\n","<div class=\"card\">\n    <div class=\"card-body\">\n        <div class=\"d-flex align-items-center\">\n            <div class=\"avatar-sm icon icon-with-bg icon-xs rounded-sm me-3 flex-shrink-0\">\n                <i class=\"fa-solid text-{{variant}} fa-lg fa-{{icon}}\"></i>\n            </div>\n            <div class=\"flex-grow-1 text-center\">\n                <h3 *ngIf=\"stats\" class=\"mt-0 mb-0\">{{stats}}</h3>\n                <p class=\"text-{{variant}} mb-0\">{{title}}</p>\n            </div>\n        </div>\n    </div>\n</div>","import { Component, OnInit } from '@angular/core';\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\n\n@Component({\n  selector: 'app-settings-account-tab',\n  templateUrl: './account-tab.component.html',\n  styleUrls: ['./account-tab.component.scss']\n})\nexport class AccountTabComponent implements OnInit {\n\n  accountForm: FormGroup = this.fb.group({\n    name: ['Greeva Navadiya', Validators.required],\n    displayName: ['Greeva N'],\n    email: ['greeva@coderthemes.com', [Validators.required, Validators.email]],\n    phone: ['+1 254 024 5400', Validators.required],\n    profileVisibility: ['public'],\n    infoVisibility: ['public'],\n  });\n\n  formSubmitted: boolean = false;\n\n  constructor (private fb: FormBuilder) { }\n\n  ngOnInit(): void {\n  }\n\n  /**\n * convenience getter for easy access to form fields\n */\n  get formValues() { return this.accountForm.controls; }\n\n  /**\n  * On submit form\n  */\n  onSubmit(): void {\n    this.formSubmitted = true;\n  }\n\n}\n","<h4 class=\"mt-3 mt-lg-0\">Account Information</h4>\n\n<form [formGroup]=\"accountForm\" (ngSubmit)=\"onSubmit()\" class=\"account-form\">\n\n    <!-- avatar start -->\n    <h6 class=\"mt-4\">Your Avatar</h6>\n    <div class=\"row align-items-center\">\n        <div class=\"col-auto\">\n            <img src=\"assets/images/avatars/img-8.jpg\" class=\"img-fluid avatar-md rounded-circle shadow\" alt=\"...\" />\n        </div>\n        <div class=\"col\">\n            <a [routerLink]=\"['.']\" class=\"btn btn-outline-primary btn-sm\">Upload</a>\n            <a [routerLink]=\"['.']\" class=\"btn btn-outline-danger btn-sm ms-2\">Remove</a>\n        </div>\n    </div>\n    <!-- avatar end -->\n\n    <hr class=\"my-4\" />\n\n    <!-- basic info start -->\n    <div class=\"row align-items-center\">\n        <div class=\"col-lg-6\">\n            <div class=\"mb-3\">\n                <label for=\"name\" class=\"form-label\">Name<small>*</small></label>\n                <input type=\"text\" class=\"form-control\" id=\"name\" placeholder=\"Your Name\" name=\"name\"\n                    formControlName=\"name\" required\n                    [ngClass]=\"{'is-invalid':formSubmitted && formValues['name'].invalid}\" />\n\n                <div *ngIf=\"formSubmitted && formValues['name'].invalid\" class=\"invalid-feedback\">\n                    <div *ngIf=\"formValues['name'].errors?.['required']\">\n                        Please enter name\n                    </div>\n                </div>\n            </div>\n\n            <div class=\"mb-3\">\n                <label for=\"email\" class=\"form-label\">Email<small>*</small></label>\n                <input type=\"email\" class=\"form-control\" id=\"email\" placeholder=\"Email\" name=\"email\"\n                    formControlName=\"email\" required\n                    [ngClass]=\"{'is-invalid':formSubmitted && formValues['email'].invalid}\" />\n\n                <div *ngIf=\"formSubmitted && formValues['email'].invalid\" class=\"invalid-feedback\">\n\n                    <div *ngIf=\"formValues['email'].errors?.['required']\">\n                        Please enter email\n                    </div>\n                    <div *ngIf=\"formValues['email'].errors?.['email']\">\n                        Email is not a valid Email Address\n                    </div>\n\n                </div>\n            </div>\n        </div>\n\n        <div class=\"col-lg-6\">\n            <div class=\"mb-3\">\n                <label for=\"display_name\" class=\"form-label\">Display name</label>\n                <input type=\"text\" class=\"form-control\" id=\"display_name\" aria-describedby=\"display_name\"\n                    placeholder=\"Display Name\" name=\"display_name\" formControlName=\"displayName\" required\n                    [ngClass]=\"{'is-invalid':formSubmitted && formValues['displayName'].invalid}\" />\n\n                <div *ngIf=\"formSubmitted && formValues['displayName'].invalid\" class=\"invalid-feedback\">\n                    <div *ngIf=\"formValues['displayName'].errors?.['required']\">\n                        Please enter display name\n                    </div>\n                </div>\n            </div>\n\n            <div class=\"mb-3\">\n                <label class=\"form-label\">Phone<small>*</small></label>\n                <input type=\"text\" class=\"form-control\" id=\"phone\" name=\"phone\" placeholder=\"Phone number\"\n                    formControlName=\"phone\" required\n                    [ngClass]=\"{'is-invalid':formSubmitted && formValues['phone'].invalid}\" />\n\n                <div *ngIf=\"formSubmitted && formValues['phone'].invalid\" class=\"invalid-feedback\">\n                    <div *ngIf=\"formValues['phone'].errors?.['required']\">\n                        Please enter phone number\n                    </div>\n                </div>\n            </div>\n        </div>\n    </div>\n    <!-- basic info end -->\n\n    <hr class=\"my-2\" />\n\n    <!-- privacy settings start -->\n    <div class=\"row my-3\">\n        <div class=\"col-lg-12\">\n            <div class=\"mb-3\">\n                <label class=\"form-label\">Profile Visibility</label>\n\n                <div class=\"mt-1\">\n                    <div class=\"form-check form-check-inline\">\n                        <input type=\"radio\" class=\"form-check-input\" id=\"visibilityPublic\" name=\"profileVisibility\"\n                            value=\"public\" formControlName=\"profileVisibility\">\n                        <label class=\"form-check-label\" for=\"visibilityPublic\">Public</label>\n                    </div>\n\n                    <div class=\"form-check form-check-inline ms-3\">\n                        <input type=\"radio\" class=\"form-check-input\" name=\"profileVisibility\" id=\"visibilityPrivate\"\n                            formControlName=\"profileVisibility\" value=\"private\">\n                        <label class=\"form-check-label\" for=\"visibilityPrivate\">Private</label>\n                    </div>\n                </div>\n\n                <small class=\"form-text text-muted mt-2\">\n                    Making your profile public means anyone can see your information\n                </small>\n            </div>\n        </div>\n        <div class=\"col-lg-12 mt-2\">\n            <div class=\"mb-3 mb-0\">\n                <label class=\"form-label\">Contact Info\n                    Visibility</label>\n\n                <div class=\"mt-1\">\n                    <div class=\"form-check form-check-inline\">\n                        <input type=\"radio\" class=\"form-check-input\" id=\"visibilityPublic1\" name=\"infoVisibility\"\n                            formControlName=\"infoVisibility\" value=\"public\">\n                        <label class=\"form-check-label\" for=\"visibilityPublic1\">Public</label>\n                    </div>\n\n                    <div class=\"form-check form-check-inline ms-3\">\n                        <input type=\"radio\" class=\"form-check-input\" name=\"infoVisibility\" id=\"visibilityPrivate1\"\n                            formControlName=\"infoVisibility\" value=\"private\">\n                        <label class=\"form-check-label\" for=\"visibilityPrivate1\">Private</label>\n                    </div>\n                </div>\n\n                <small class=\"form-text text-muted mt-2\">\n                    Making your contact info public means anyone can see your email and phone number\n                </small>\n            </div>\n        </div>\n    </div>\n    <!-- privacy settings end -->\n\n    <hr class=\"mb-2\" />\n\n    <!-- account removal start -->\n    <div class=\"row\">\n        <div class=\"col-lg-12\">\n            <div class=\"row align-items-center my-2\">\n                <div class=\"col\">\n                    <label class=\"form-label mb-0\">\n                        Remove account\n                    </label>\n                    <small class=\"form-text text-muted\">\n                        By removing your account you will lose all your data\n                    </small>\n                </div>\n                <div class=\"col-lg-auto text-end\">\n                    <button type=\"button\" class=\"btn btn-outline-danger btn-sm\">Remove Account</button>\n                </div>\n            </div>\n        </div>\n    </div>\n    <!-- account removal end -->\n\n    <hr class=\"my-4\" />\n\n    <!-- save start -->\n    <div class=\"row mt-2\">\n        <div class=\"col-lg-12\">\n            <button type=\"submit\" class=\"btn btn-primary\">Save Changes</button>\n        </div>\n    </div>\n    <!-- save end -->\n</form>","import { Component, OnInit } from '@angular/core';\n\n@Component({\n  selector: 'app-settings-notification-tab',\n  templateUrl: './notification-tab.component.html',\n  styleUrls: ['./notification-tab.component.scss']\n})\nexport class NotificationTabComponent implements OnInit {\n\n  constructor () { }\n\n  ngOnInit(): void {\n  }\n\n}\n","<div style=\"min-height: 600px;\">\n    <h4 class=\"mt-3 mt-lg-0\">Notifications</h4>\n\n    <!-- form start -->\n    <form class=\"password-form mt-4\">\n        <div class=\"mb-3\">\n            <label for=\"name\">Send me an email, when</label>\n            <ul class=\"list-unstyled\">\n                <li class=\"mt-2\">\n                    <div class=\"form-check form-switch\">\n                        <input type=\"checkbox\" class=\"form-check-input\" id=\"mention\" checked>\n                        <label class=\"form-check-label\" for=\"mention\">Someone mentions me</label>\n                    </div>\n                </li>\n                <li class=\"mt-2\">\n                    <div class=\"form-check form-switch\">\n                        <input type=\"checkbox\" class=\"form-check-input\" id=\"replies\">\n                        <label class=\"form-check-label\" for=\"replies\">Someone replies to me</label>\n                    </div>\n                </li>\n                <li class=\"mt-2\">\n                    <div class=\"form-check form-switch\">\n                        <input type=\"checkbox\" class=\"form-check-input\" id=\"share-content\" checked>\n                        <label class=\"form-check-label\" for=\"share-content\">Someone shares the content</label>\n                    </div>\n                </li>\n                <li class=\"mt-2\">\n                    <div class=\"form-check form-switch\">\n                        <input type=\"checkbox\" class=\"form-check-input\" id=\"new-content\">\n                        <label class=\"form-check-label\" for=\"new-content\">There is a new published content</label>\n                    </div>\n                </li>\n            </ul>\n        </div>\n\n        <hr class=\"my-4\" />\n        <div class=\"mb-3\">\n            <label for=\"name\">Other Subscriptions</label>\n            <ul class=\"list-unstyled\">\n                <li class=\"mt-2\">\n                    <div class=\"form-check form-switch\">\n                        <input type=\"checkbox\" class=\"form-check-input\" id=\"newsletter\" checked>\n                        <label class=\"form-check-label\" for=\"newsletter\">Weekly newsletter</label>\n                    </div>\n                </li>\n                <li class=\"mt-2\">\n                    <div class=\"form-check form-switch\">\n                        <input type=\"checkbox\" class=\"form-check-input\" id=\"weekly-jobs\">\n                        <label class=\"form-check-label\" for=\"weekly-jobs\">Weekly jobs</label>\n                    </div>\n                </li>\n                <li class=\"mt-2\">\n                    <div class=\"form-check form-switch\">\n                        <input type=\"checkbox\" class=\"form-check-input\" id=\"events\" checked>\n                        <label class=\"form-check-label\" for=\"events\">Events new me</label>\n                    </div>\n                </li>\n            </ul>\n        </div>\n        <hr class=\"my-4\" />\n\n        <!-- save start -->\n        <div class=\"row mt-3\">\n            <div class=\"col-lg-12\">\n                <button type=\"submit\" class=\"btn btn-primary\">Update Preferences</button>\n            </div>\n        </div>\n        <!-- save end -->\n    </form>\n</div>","import { AbstractControl, ValidatorFn } from '@angular/forms';\n\nexport class Validation {\n    static match(controlName: string, checkControlName: string): ValidatorFn {\n        return (controls: AbstractControl) => {\n            const control = controls.get(controlName);\n            const checkControl = controls.get(checkControlName);\n            if (checkControl?.errors && !checkControl.errors['matching']) {\n                return null;\n            }\n            if (control?.value !== checkControl?.value) {\n                controls.get(checkControlName)?.setErrors({ matching: true });\n                return { matching: true };\n            } else {\n                return null;\n            }\n        };\n    }\n}","import { Component, OnInit } from '@angular/core';\nimport { FormGroup, Validators, FormBuilder } from '@angular/forms';\nimport { Auth } from 'aws-amplify';\n\n// validaator\nimport { Validation } from './confirm-password.validator';\n\n@Component({\n  selector: 'app-settings-password-tab',\n  templateUrl: './password-tab.component.html',\n  styleUrls: ['./password-tab.component.scss']\n})\nexport class PasswordTabComponent implements OnInit {\n\n  passwordForm: FormGroup = this.fb.group({\n    currentPassword: ['', Validators.required],\n    newPassword: ['', [Validators.required, Validators.minLength(4)]],\n    confirmPassword: ['', [Validators.required]]\n  },\n    {\n      validators: [Validation.match('newPassword', 'confirmPassword')]\n    }\n  );\n\n  formSubmitted: boolean = false;\n  hasErrored = false;\n  hasCompleted = false;\n\n  constructor (private fb: FormBuilder) { }\n\n  ngOnInit(): void {\n  }\n\n  /**\n * convenience getter for easy access to form fields\n */\n  get formValues() { return this.passwordForm.controls; }\n\n  /**\n  * On submit form\n  */\n  onSubmit(): void {\n    Auth.currentAuthenticatedUser()\n    .then(user => {\n        return Auth.changePassword(user, this.passwordForm.get('currentPassword').value, this.passwordForm.get('newPassword').value);\n    })\n    .then(data => this.hasCompleted = true)\n    .catch(err => this.hasErrored = true )\n    }\n  }\n\n\n","<div style=\"min-height: 600px;\">\n    <h4 class=\"mt-3 mt-lg-0\">Password</h4>\n\n    <!-- form start -->\n    <form class=\"password-form mt-4\" [formGroup]=\"passwordForm\" (ngSubmit)=\"onSubmit()\">\n        <div class=\"mb-3\">\n            <label for=\"name\" class=\"form-label\">Current Password<small>*</small></label>\n            <input type=\"password\" class=\"form-control\" id=\"current_password\" aria-describedby=\"current_password\"\n                name=\"current_password\" formControlName=\"currentPassword\" required\n                [ngClass]=\"{'is-invalid':formSubmitted && formValues['currentPassword'].invalid}\" />\n\n            <div *ngIf=\"formSubmitted && formValues['currentPassword'].invalid\" class=\"invalid-feedback\">\n                <div *ngIf=\"formValues['currentPassword'].errors?.['required']\">\n                    Please enter Current Password\n                </div>\n            </div>\n        </div>\n\n        <div class=\"mb-3\">\n            <label for=\"name\" class=\"form-label\">New Password<small>*</small></label>\n            <input type=\"password\" class=\"form-control\" id=\"new_password\" aria-describedby=\"current_password\"\n                name=\"new_password\" formControlName=\"newPassword\" required\n                [ngClass]=\"{'is-invalid':formSubmitted && formValues['newPassword'].invalid}\" />\n\n            <div *ngIf=\"formSubmitted && formValues['newPassword'].invalid\" class=\"invalid-feedback\">\n                <div *ngIf=\"formValues['newPassword'].errors?.['required']\">\n                    Please enter New Password\n                </div>\n                <div *ngIf=\"formValues['newPassword'].errors?.['minLength']\">\n                    Your password must be longer than 4 characters.\n                </div>\n            </div>\n        </div>\n\n        <div class=\"mb-3\">\n            <label for=\"name\" class=\"form-label\">Confirm Password<small>*</small></label>\n            <input type=\"password\" class=\"form-control\" id=\"confirm_password\" aria-describedby=\"current_password\"\n                name=\"confirm_password\" formControlName=\"confirmPassword\" required\n                [ngClass]=\"{'is-invalid':formSubmitted && formValues['confirmPassword'].invalid}\" />\n\n            <div *ngIf=\"formSubmitted && formValues['confirmPassword'].invalid\" class=\"invalid-feedback\">\n                <div *ngIf=\"formValues['confirmPassword'].errors?.['required']\">\n                    Please enter Confirm Password\n                </div>\n                <div *ngIf=\"formValues['confirmPassword'].errors?.['matching']\">\n                    Passsword and Confirm Password must match.\n                </div>\n            </div>\n        </div>\n\n        <hr class=\"my-4\" />\n\n        <!-- save start -->\n        <div class=\"row mt-3\">\n            <div class=\"col-lg-12\">\n                <button type=\"submit\" [disabled]=\"!this.passwordForm.valid\" class=\"btn btn-primary\">Update Password</button>\n            </div>\n        </div>\n        <!-- save end -->\n    </form>\n\n\n    <ngb-alert type=\"danger\" *ngIf=\"hasErrored\" [dismissible]=\"false\" class=\"mt-3\">\n        <i class=\"fa-solid fa-exclamation me-2\"></i>\n        Sorry, we were unable to process your password change request.\n      </ngb-alert>\n\n\n      <ngb-alert type=\"success\" *ngIf=\"hasCompleted\" [dismissible]=\"false\" class=\"mt-3\">\n        <i class=\"fa-solid fa-check me-2\"></i>\n        Your password has been changed\n      </ngb-alert>\n\n\n</div>","import { Component, OnInit } from '@angular/core';\nimport { Title } from '@angular/platform-browser';\nimport * as feather from 'feather-icons';\n\n@Component({\n  selector: 'app-page-settings',\n  templateUrl: './settings.component.html',\n  styleUrls: ['./settings.component.scss']\n})\nexport class SettingsComponent implements OnInit {\n\n  activeTab: string = \"password\";\n\n  constructor (private titleService: Title) { }\n\n  ngOnInit(): void {\n    this.titleService.setTitle(\"Instant Tokens  | Account Settings\");\n  }\n\n  ngAfterViewInit(): void {\n    feather.replace();\n  }\n\n}\n","<!-- navbar -->\n<app-navbar-4 [fixedWidth]=\"true\" navClass=\"navbar-light shadow\"></app-navbar-4>\n<!-- page content -->\n<section class=\"position-relative p-3 bg-gradient2\">\n    <div class=\"container\">\n        <div class=\"row\">\n            <div class=\"col-lg-12\">\n                <div class=\"page-title\">\n                    <h3 class=\"my-0 text-primary\">Account Settings</h3>\n                    <p class=\"mt-1 fw-medium\">Change your account password</p>\n                </div>\n            </div>\n        </div>\n        <div class=\"row mt-2\">\n            <div class=\"col-lg-12\">\n                <div class=\"card\">\n                    <div class=\"card-body\">\n                        <div class=\"row\">\n                            <div class=\"col-lg-3\">\n                                <!-- menu start -->\n                                <ul ngbNav #nav1=\"ngbNav\" [(activeId)]=\"activeTab\"\n                                    class=\"navtab-bg nav-pills flex-column\">\n                                    <!-- <li [ngbNavItem]=\"'account'\">\n                                        <a ngbNavLink>\n                                            <span>Account</span>\n                                        </a>\n                                        <ng-template ngbNavContent>\n                                            <app-settings-account-tab></app-settings-account-tab>\n                                        </ng-template>\n                                    </li> -->\n                                    <li class=\"my-2\" [ngbNavItem]=\"'password'\">\n                                        <a ngbNavLink>\n                                            <span>Password</span>\n                                        </a>\n                                        <ng-template ngbNavContent>\n                                            <app-settings-password-tab></app-settings-password-tab>\n                                        </ng-template>\n                                    </li>\n                                    <!-- <li class=\"nav-item\" [ngbNavItem]=\"'notification'\">\n                                        <a ngbNavLink>\n                                            <span>Notifications</span>\n                                        </a>\n                                        <ng-template ngbNavContent>\n                                            <app-settings-notification-tab></app-settings-notification-tab>\n                                        </ng-template>\n                                    </li> -->\n                                </ul>\n                                <!-- menu end -->\n                            </div>\n                            <div class=\"col-lg-9\">\n                                <div [ngbNavOutlet]=\"nav1\" class=\"p-0 px-3\"></div>\n                            </div>\n                        </div>\n                    </div>\n                </div>\n            </div>\n        </div>\n    </div>\n</section>\n\n<!-- footer -->\n<app-footer-3></app-footer-3>","import { Component, OnInit } from '@angular/core';\nimport { StripeService } from 'src/app/core/service/stripe.service';\n\n@Component({\n  selector: 'app-active-subscriptions',\n  templateUrl: './active-subscriptions.component.html',\n  styleUrls: ['./active-subscriptions.component.css']\n})\nexport class ActiveSubscriptionsComponent implements OnInit {\n\n  \n  public subscriptions: any[] = [];\n  public isLoading = true;\n  public hasErrored = false;\n  public buttonClicked = false;\n\n  constructor(private stripeService: StripeService) { }\n\n  ngOnInit() {\n    this.getSubscriptions();\n  }\n\n\n  \n  public getSubscriptions() {\n    this.stripeService.getSubscriptions().subscribe({ next:(data) => {\n      this.subscriptions = data;\n      this.isLoading = false;\n      },\n      error: (err) => this.hasErrored = true\n    });\n  }\n\n  public manageSubscriptions() {\n    this.buttonClicked = true;\n    this.stripeService.manageSubscription()\n                      .subscribe({ next: (data) => {\n                        window.location.href = data.CustomerPortalUrl;\n                      },\n                    error: (err) => {\n\n                      \tthis.hasErrored = true;\n                        this.buttonClicked = false;\n\n                    }})\n    \n  }\n\n  public getDate(date) {\n    return new Date(date * 1000);\n  }\n\n}","\n\n        <div class=\"row mt-2\" *ngIf=\"hasErrored\">\n          <div class=\"col-12 text-center\">\n\n              <p>\n                  <i class=\"fa-solid fa-triangle-exclamation me-2 text-danger\"></i>\n                  Sorry, we can't load any subscription information at the moment. Please try again later.\n              </p>\n\n          </div>\n      </div>\n\n      <div class=\"row mt-2\" *ngIf=\"isLoading\">\n          <div class=\"col-12 text-center\">\n\n              <p>\n                  <i class=\"fa-solid fa-spinner fa-spin me-2 text-primary\"></i>\n                  Loading current subscriptions...\n              </p>\n\n          </div>\n      </div>\n\n      <div class=\"row mt-2\" *ngIf=\"this.subscriptions.length > 0 && hasErrored == false\">\n\n          <div class=\"col-lg-4 col-md-6 col-sm-12\" *ngFor=\"let item of subscriptions\">\n\n\n              <div class=\"card\" >\n\n                  <div class=\"card-heading\">\n                    <span class=\"badge rounded-pill px-2 py-1 text-uppercase float-end m-2\"\n                    [ngClass]=\" { 'badge-soft-success' : item.status === 'active',\n                                  'badge-soft-danger' : item.status === 'past_due',\n                                  'badge-soft-danger' : item.status === 'unpaid',\n                                  'badge-soft-danger' : item.status === 'canceled',\n                                  'badge-soft-warning' : item.status === 'incomplete',\n                                  'badge-soft-warning' : item.status === 'incomplete_expired',\n                                  'badge-soft-primary' : item.status === 'trialing',\n                                  'badge-soft-danger' : item.status === 'all',\n                                  'badge-soft-danger' : item.status === 'ended'\n                                 }\"\n                    >{{ item.status }}</span>\n                      <div class=\"card-title \">\n                        \n                          <h6 class=\"text-secondary p-2\">\n                              <i class=\"fa-solid fa-calendar me-2 fa-2x\"></i>\n                              {{ item.plan.nickname }}\n                          </h6>\n                          \n\n                          \n\n                      </div>\n                  </div>\n\n                  <div class=\"card-body\">\n                      <div class=\"row\">\n                          <div class=\"col-12 text-center\">\n                              <h2>\n                                  &pound;{{ item.plan.amount_decimal / 100.00 }} <small>per {{ item.plan.interval}}</small>\n                              </h2>\n\n                              <button class=\"btn btn-primary\"\n                          [disabled]=\"this.buttonClicked\"\n                          (click)=\"manageSubscriptions()\"\n                          >\n                      \n                          <span *ngIf=\"!this.buttonClicked\">\n                            <i class=\"fa-solid fa-cog me-2\"></i>\n                            Manage Subscription\n                          </span>\n                          \n                          <span *ngIf=\"this.buttonClicked\">\n                            <i class=\"fa-solid fa-spinner fa-spin me-2\"></i>\n                            Processing...\n                          </span>\n      \n                  </button>\n                              \n                          </div>\n                        </div>\n                         \n                        <!-- <div class=\"row mt-5\" *ngIf=\"item.current_period_start\">\n                          <div class=\"col-12 text-start\">\n                              <span class=\"fs-6\">\n                                <i class=\"fa-solid fa-circle-info text-primary me-2\"></i>\n                                  This subscription started on <span class=\"fw-medium text-secondary\">{{ getDate(item.current_period_start) | date: 'dd MMMM yyyy' }}</span>\n                                  at <span class=\"fw-medium text-secondary\">{{ getDate(item.current_period_start) | date: 'HH:mm:ss' }}</span>\n\n                                  <ng-container *ngIf=\"item.current_period_end\">\n                                    and will end on <span class=\"fw-medium text-secondary\">{{ getDate(item.current_period_end) | date: 'dd MMMM yyyy' }}</span> at\n                                    <span class=\"fw-medium text-secondary\">{{ getDate(item.current_period_end) | date: 'HH:mm:ss' }}</span>\n                                  </ng-container>\n                                  This subscription will automatically renew unless cancelled.\n\n                                  \n                              </span>\n                              \n                          </div>\n                        </div> -->\n\n                        <div class=\"row mt-5\">\n\n                          <h6 class=\"w-100 m-0 bg-secondary text-white text-center\">Subscription period</h6>\n                          <div class=\"col-5 border border-secondary border-end-0 border-top-0 border-2  text-center\">\n                            <!-- <h6 class=\"text-primary\">Started</h6> -->\n                            <div class=\"date\" ngbTooltip=\"Started on {{getDate(item.current_period_start) | date: 'dd MMMM yyyy HH:mm:ss'}}\" placement=\"start\" >\n                              <span class=\"binds\"></span>\n                              <span class=\"month bg-secondary\">{{ getDate(item.current_period_start) | date: 'MMM yyyy' }}</span>\n                              <h1 class=\"day\">{{ getDate(item.current_period_start) | date: 'dd' }}</h1>\n                            </div>\n\n                       \n\n                          </div>\n                          <div class=\"col-2 border border-secondary border-end-0 border-top-0 border-start-0 border-2  text-center\">\n                            \n                              <i style=\"margin: 25px auto;\" class=\"fa-solid fa-chevron-right fa-4x text-secondary\"></i>\n                                                        \n                          </div>\n                          <div class=\"col-5 border border-secondary border-start-0 border-top-0 border-2  text-center\">\n\n                            <!-- <h6 class=\"text-primary\">Ends on</h6> -->\n                            <div class=\"date\" ngbTooltip=\"Ends on {{ getDate(item.current_period_end) | date: 'dd MMMM yyyy HH:mm:ss'}}\" placement=\"end\" >\n                              <span class=\"binds\"></span>\n                              <span class=\"month bg-primary\">{{ getDate(item.current_period_end) | date: 'MMM yyyy' }}</span>\n                              <h1 class=\"day\">{{ getDate(item.current_period_end) | date: 'dd' }}</h1>\n                            </div>\n\n\n                          </div>\n\n                        </div>\n       \n                  </div>\n\n              </div>\n\n\n            \n          </div>\n      </div>\n   \n","import { Component, OnInit } from '@angular/core';\nimport { StripeService } from 'src/app/core/service/stripe.service';\n\n@Component({\n  selector: 'app-create-subscription',\n  templateUrl: './create-subscription.component.html',\n  styleUrls: ['./create-subscription.component.css']\n})\nexport class CreateSubscriptionComponent implements OnInit {\n\n  public products: any[] = [];\n  public isLoading = true;\n  public hasErrored = false;\n  public buttonClicked = false;\n\n  constructor(private stripeService: StripeService) { }\n\n  ngOnInit() {\n    this.getProducts();\n  }\n\n\n  \n  public getProducts() {\n    this.stripeService.getProducts().subscribe({ next:(data) => {\n      this.products = data.Products;\n      this.isLoading = false;\n      },\n      error: (err) => this.hasErrored = true\n    });\n  }\n\n  public startSubscriptionCheckout(priceId) {\n    this.buttonClicked = true;\n    this.stripeService.startSubscription(priceId)\n                      .subscribe({ next: (data) => {\n                        window.location.href = data.CheckoutUrl;\n                      },\n                    error: (err) => {\n\n                      \tthis.hasErrored = true;\n                        this.buttonClicked = false;\n\n                    }})\n    \n  }\n\n}\n","\n\n        <div class=\"row mt-2\" *ngIf=\"hasErrored\">\n            <div class=\"col-12 text-center\">\n\n                <p>\n                    <i class=\"fa-solid fa-triangle-exclamation me-2 text-danger\"></i>\n                    Sorry, we can't load any subscription information at the moment. Please try again later.\n                </p>\n\n            </div>\n        </div>\n\n        <div class=\"row mt-2\" *ngIf=\"isLoading\">\n            <div class=\"col-12 text-center\">\n\n                <p>\n                    <i class=\"fa-solid fa-spinner fa-spin me-2 text-primary\"></i>\n                    Loading available subscriptions...\n                </p>\n\n            </div>\n        </div>\n\n        <div class=\"row mt-2\" *ngIf=\"this.products.length > 0 && hasErrored == false\">\n\n            <div class=\"col-4\" *ngFor=\"let item of products\">\n \n\n                <div class=\"card\" >\n\n                    <div class=\"card-heading\">\n                        <div class=\"card-title \">\n                            <h6 class=\"text-secondary p-2\">\n                                <i class=\"fa-solid fa-calendar me-2 fa-2x\"></i>\n                                {{ item.nickname }}\n                            </h6>\n                            \n\n                        </div>\n                    </div>\n\n                    <div class=\"card-body\">\n                        <div class=\"row\">\n                            <div class=\"col-12 text-center\">\n                                <h2>\n                                    &pound;{{ item.unit_amount / 100.00 }} <small>per {{ item.recurring.interval}}</small>\n                                </h2>\n                                \n                            </div>\n                            </div>\n                            <div class=\"row mt-4\">\n                            <div class=\"col-12 text-center\">\n\n                                <button class=\"btn btn-primary\"\n                                        [disabled]=\"this.buttonClicked\"\n                                        (click)=\"startSubscriptionCheckout(item.id)\"\n                                        >\n                                    \n                                        <span *ngIf=\"!this.buttonClicked\">\n                                          <i class=\"fa-solid fa-check me-2\"></i>\n                                          Start Free Trial\n                                        </span>\n                                        \n                                        <span *ngIf=\"this.buttonClicked\">\n                                          <i class=\"fa-solid fa-spinner fa-spin me-2\"></i>\n                                          Processing...\n                                        </span>\n\n                                </button>\n                                    <br/>\n                                    <br/>\n                                <small>\n                                   After the 7 day free trial you will be charged  &pound;{{ item.unit_amount / 100 }} per {{ item.recurring.interval}} unless cancelled.\n                                </small>\n\n                            </div>\n                        </div>\n\n                       \n                        \n\n                    </div>\n\n                </div>\n\n\n              \n            </div>\n        </div>\n     \n\n","import { Component, OnInit } from '@angular/core';\nimport { StripeService } from 'src/app/core/service/stripe.service';\nimport * as feather from 'feather-icons';\nimport { Title } from '@angular/platform-browser';\n\n@Component({\n  selector: 'app-subscriptions',\n  templateUrl: './subscriptions.component.html',\n  styleUrls: ['./subscriptions.component.css']\n})\nexport class SubscriptionsComponent implements OnInit  {\n\n  public hasSubscription = false;\n\n  constructor(private stripeService: StripeService,    \n              private titleService: Title) { }\n\n  ngOnInit() {\n    this.titleService.setTitle(\"Instant Tokens | Your Subscriptions\");\n    this.stripeService.hasSubscription().subscribe({\n      next:(data) => {\n       if (data) {\n        this.hasSubscription = data.IsSubscribed;\n          }\n        }\n    }\n    );\n\n\n  }\n\n  ngAfterViewInit(): void {\n    feather.replace();\n  }\n\n\n}\n","<!-- navbar -->\n<app-navbar-4 [fixedWidth]=\"true\" navClass=\"navbar-light shadow\"></app-navbar-4>\n<!-- page content -->\n<section class=\"position-relative overflow-hidden bg-gradient2 py-3 px-3 vh-100\">\n    <div class=\"container\">\n        <div class=\"row mb-5\">\n            <div class=\"col-lg-12\">\n                <div class=\"page-title\">\n                    <h3 class=\"mb-0 text-primary\">Subscriptions</h3>\n                    <p class=\"mt-1 fw-medium\">We have partnered with Stripe to securely manage your subscriptions and payment information</p>\n                </div>\n            </div>\n        </div>\n\n        \n\n       <ng-container *ngIf=\"!hasSubscription\">\n\n        <app-create-subscription>\n\n        </app-create-subscription>\n\n       </ng-container>\n       \n       <ng-container *ngIf=\"hasSubscription\">\n\n        <app-active-subscriptions>\n            \n        </app-active-subscriptions>\n\n       </ng-container>\n       \n\n        \n     \n\n\n        <div class=\"row mt-5\">\n            <div class=\"col-12 text-center\">\n                <p style=\"font-size: 9px;\">\n                    By starting a subscription you automatically agree to our <a routerLink=\"/pages/terms-and-conditions\">Terms of Service</a>.\n                </p>\n            </div>\n        </div>\n\n    </div>\n</section>\n\n<!-- footer -->\n<app-footer-3></app-footer-3>"],"names":["feather","AwsUser","InstagramItem","Task","i0","DashboardComponent","constructor","authService","dataService","stripeService","titleService","ngOnInit","setTitle","loggedInUser","currentUser","_fetchData","ngAfterViewInit","replace","pageChanged","newPage","currentPage","isLoading","getAuthorisations","itemsPerPage","subscribe","next","data","totalItems","total","projects","items","hasErrored","error","err","fetchDataCount","setTimeout","hasSubscription","showSubscriptionWarning","IsSubscribed","selectors","decls","vars","consts","template","ctx","EventEmitter","ConfirmModalComponent","ManageDomainsModalComponent","UpdateSingleValueModalComponent","ProjectsComponent","instantTokensService","toastService","modalService","router","Date","loadprojectScripts","Array","isArray","length","loadScript","showSamplePhotos","_Instafeed","window","Instafeed","accessToken","InstagramToken","count","samplePhotoInterval","setInterval","clearInterval","feed","run","console","log","project","node","document","createElement","src","getJsFile","type","async","getElementsByTagName","appendChild","username","InstagramUserId","UserSecret","getJson","displayShareableLink","link","generateNewAuthorisationLink","copyText","text","listener","e","clipboard","clipboardData","setData","preventDefault","addEventListener","execCommand","removeEventListener","displayCopyToast","addNewAuthorisation","location","href","showSuccess","getCopyItem","item","isJs","val","deleteItem","name","InstagramUsername","Nickname","modalRef","open","centered","componentInstance","message","result","then","confirmationResult","loadingProjects","push","removeInstagramAccount","resp","refreshItems","emit","filter","regenerateUserSecret","refreshUserName","updateNickName","updateNickname","newValue","manageDomains","size","instaUserId","userId","updateDomains","isItemLoading","find","hasExpired","ExpiresOn","expires","toISOString","today","inputs","outputs"],"sourceRoot":"webpack:///","x_google_ignoreList":[]}