{"version":3,"file":"1533.cf6fe765bf4bf63e.js","mappings":"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","names":["i0","ctx_r0","title","returnUrl","_r2","openHomePage","dismiss","_r3","CommunityRulesPage","_CommunityRulesPage","constructor","navCtrl","viewCtrl","route","router","this","isModal","allowClickHome","onDestroy$","Subject","ngOnInit","queryParams","pipe","takeUntil","subscribe","params","_b","_a","getCurrentNavigation","extras","state","ngOnDestroy","next","complete","navigateForward","HOMEPAGE","i1","i2","selectors","inputs","standalone","features","decls","vars","consts","template","rf","ctx","CommunityRulesPage_ion_header_0_Template","CommunityRulesPage_ng_template_1_Template","CommunityRulesPage_ion_footer_15_Template","CommunityRulesPage_ng_template_16_Template","modalHeader_r4","pageFooter_r5","NgIf","IonHeader","TopNavbarComponent","IonToolbar","IonTitle","IonButton","IonButtons","IonContent","IonFooter","FooterComponent","TranslatePipe","PrivacyPage","_PrivacyPage","paramMap","tap","get","PrivacyPage_ion_header_0_Template","PrivacyPage_ng_template_1_Template","PrivacyPage_ion_footer_15_Template","PrivacyPage_ng_template_16_Template","styles","TermsPage","_TermsPage","console","log","TermsPage_ion_header_0_Template","TermsPage_ng_template_1_Template","TermsPage_ion_footer_15_Template","TermsPage_ng_template_16_Template","_FooterComponent","theme","copyrightYear","Date","getFullYear","FooterComponent_ng_container_4_Template","FooterComponent_ng_container_5_Template","NgSwitch","NgSwitchCase","NgSwitchDefault","RouterLink","TermsPolicyModalsComponent","_TermsPolicyModalsComponent","modalCtrl","translate","agreeTo","instant","openPrivacyPolicy","_this","_asyncToGenerator","create","component","componentProps","cssClass","present","openTerms","_this2","openCommunity","_this3"],"ignoreList":[],"sourceRoot":"webpack:///","sources":["./src/app/pages/community-rules/community-rules.page.html","./src/app/pages/community-rules/community-rules.page.ts","./src/app/pages/privacy/privacy.page.html","./src/app/pages/privacy/privacy.page.ts","./src/app/pages/terms/terms.page.html","./src/app/pages/terms/terms.page.ts","./src/app/shared/components/footer/footer.component.html","./src/app/shared/components/footer/footer.component.ts","./src/app/shared/components/terms-policy-modals/terms-policy-modals.component.ts","./src/app/shared/components/terms-policy-modals/terms-policy-modals.component.html"],"sourcesContent":["<ion-header *ngIf=\"!isModal; else modalHeader;\">\n  <app-top-navbar [title]=\"title\" [backButtonReturnUrl]=\"returnUrl\">\n    <!-- SLOT: anything added here will go below the ion-navbar -->\n  </app-top-navbar>\n</ion-header>\n\n<ng-template #modalHeader>\n  <ion-header>\n    <ion-toolbar color=\"dark\">\n      <ion-title>\n        <ion-button fill=\"clear\" class=\"toolbar-title__logo\" (click)=\"openHomePage()\">\n          <img src=\"/assets/images/logos/filmstackerLogo.png\" alt=\"Filmstacker\" />\n        </ion-button>\n      </ion-title>\n      <ion-buttons slot=\"end\">\n        <ion-button fill=\"clear\" color=\"primary\" (click)=\"dismiss()\">{{ 'COMMON.CLOSE' | translate }}</ion-button>\n      </ion-buttons>\n    </ion-toolbar>\n  </ion-header>\n</ng-template>\n\n<ion-content forceOverflow=\"false\">\n  <div class=\"iframe-container\">\n    <iframe id=\"FilmstackerRules\" height=\"100%\" name=\"filmstacker-rules\" style=\"width:100%;border:none;padding:0;\"\n      title=\"Filmstacker {{ 'COMMON.COMMUNITY_RULES' | translate }}\" src=\"https://filmstacker.com/policies/rules.html\">\n      <p>{{ 'ERRORS.IFRAMES_NOT_SUPPORTED' | translate }}</p>\n      <p>\n        {{ 'COMMON.OPEN_NEW_PAGE' | translate }}: <a href=\"https://filmstacker.com/policies/rules.html\"\n          target=\"_blank\">https://filmstacker.com/policies/rules.html</a>\n      </p>\n    </iframe>\n  </div>\n</ion-content>\n\n<ion-footer *ngIf=\"isModal else pageFooter\" class=\"ion-text-center ion-padding\">\n  <ion-button (click)=\"dismiss()\">{{ 'COMMON.CLOSE' | translate }}</ion-button>\n</ion-footer>\n\n<ng-template #pageFooter>\n  <ion-footer>\n    <app-footer class=\"no-bottom-spacer\"></app-footer>\n  </ion-footer>\n</ng-template>","/** @format */\n\nimport { Component, OnInit, Input, OnDestroy } from '@angular/core';\nimport { NgIf } from '@angular/common';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport {\n  ModalController,\n  NavController,\n  IonHeader,\n  IonToolbar,\n  IonTitle,\n  IonButton,\n  IonButtons,\n  IonContent,\n  IonFooter,\n} from '@ionic/angular/standalone';\nimport { TranslatePipe } from '@ngx-translate/core';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { HOMEPAGE } from '@app/app.config';\nimport { FooterComponent } from '@app/shared/components/footer/footer.component';\nimport { TopNavbarComponent } from '@app/shared/components/top-navbar/top-navbar.component';\n\nconst DEBUG_LOGS = false;\nconst PAGE = '[CommunityRules]'; // eslint-disable-line @typescript-eslint/no-unused-vars\n\n@Component({\n  selector: 'app-community-rules',\n  templateUrl: './community-rules.page.html',\n  styleUrls: ['./community-rules.page.scss'],\n  standalone: true,\n  imports: [\n    NgIf,\n    IonHeader,\n    TopNavbarComponent,\n    IonToolbar,\n    IonTitle,\n    IonButton,\n    IonButtons,\n    IonContent,\n    IonFooter,\n    FooterComponent,\n    TranslatePipe,\n  ],\n})\nexport class CommunityRulesPage implements OnInit, OnDestroy {\n  @Input() isModal: boolean = false;\n  @Input() allowClickHome: boolean = true;\n\n  returnUrl = '';\n  title: string = 'Community Rules';\n\n  private onDestroy$ = new Subject<void>();\n\n  constructor(\n    private navCtrl: NavController,\n    private viewCtrl: ModalController,\n    private route: ActivatedRoute,\n    private router: Router\n  ) {}\n\n  ngOnInit() {\n    this.route.queryParams.pipe(takeUntil(this.onDestroy$)).subscribe((params) => {\n      DEBUG_LOGS && console.log(`queryParams route:`, this.route);\n      if (params?.returnUrl) {\n        this.returnUrl = params.returnUrl;\n        DEBUG_LOGS && console.log(`queryParams returnUrl:`, this.returnUrl);\n      } else if (this.router.getCurrentNavigation()?.extras?.state) {\n        this.returnUrl = this.router.getCurrentNavigation().extras.state.returnUrl || '';\n        DEBUG_LOGS && console.log(`navState returnUrl:`, this.returnUrl);\n      }\n    });\n  }\n\n  ngOnDestroy() {\n    this.onDestroy$.next();\n    this.onDestroy$.complete();\n  }\n\n  openHomePage() {\n    this.dismiss();\n    if (this.allowClickHome) {\n      this.navCtrl.navigateForward(`/${HOMEPAGE}`);\n    }\n  }\n\n  dismiss() {\n    this.viewCtrl.dismiss();\n  }\n}\n","<ion-header *ngIf=\"!isModal; else modalHeader;\">\n  <app-top-navbar [title]=\"title\">\n    <!-- SLOT: anything added here will go below the ion-navbar -->\n  </app-top-navbar>\n</ion-header>\n\n<ng-template #modalHeader>\n  <ion-header>\n    <ion-toolbar color=\"dark\">\n      <ion-title>\n        <ion-button fill=\"clear\" class=\"toolbar-title__logo\" (click)=\"openHomePage()\">\n          <img src=\"/assets/images/logos/filmstackerLogo.png\" alt=\"Filmstacker\" />\n        </ion-button>\n      </ion-title>\n      <ion-buttons slot=\"end\">\n        <ion-button color=\"primary\" (click)=\"dismiss()\">{{ 'COMMON.CLOSE' | translate }}</ion-button>\n      </ion-buttons>\n    </ion-toolbar>\n  </ion-header>\n</ng-template>\n\n<ion-content forceOverflow=\"false\">\n  <div class=\"iframe-container\">\n    <iframe id=\"FilmstackerPrivacyPolicy\" height=\"100%\" style=\"width:100%;border:none;padding:0px;\"\n      name=\"filmstacker-privacy-policy\" title=\"Filmstacker {{ 'POLICIES.PRIVACY_POLICY' | translate }}\"\n      src=\"https://filmstacker.com/policies/privacy.html\">\n      <p>{{ 'ERRORS.IFRAMES_NOT_SUPPORTED' | translate }}</p>\n      <p>\n        {{ 'COMMON.OPEN_NEW_PAGE' | translate }}:<a href=\"https://filmstacker.com/policies/privacy.html\"\n          target=\"_blank\">https://filmstacker.com/policies/privacy.html</a>\n      </p>\n    </iframe>\n  </div>\n</ion-content>\n\n<ion-footer *ngIf=\"isModal else pageFooter\" class=\"ion-text-center ion-padding\">\n  <ion-button (click)=\"dismiss()\">{{ 'COMMON.CLOSE' | translate }}</ion-button>\n</ion-footer>\n\n<ng-template #pageFooter>\n  <ion-footer>\n    <app-footer class=\"no-bottom-spacer\"></app-footer>\n  </ion-footer>\n</ng-template>","/** @format */\n\nimport { Component, OnInit, Input } from '@angular/core';\nimport { NgIf } from '@angular/common';\nimport { ActivatedRoute, ParamMap } from '@angular/router';\nimport { TranslatePipe } from '@ngx-translate/core';\nimport {\n  ModalController,\n  NavController,\n  IonHeader,\n  IonToolbar,\n  IonTitle,\n  IonButton,\n  IonButtons,\n  IonContent,\n  IonFooter,\n} from '@ionic/angular/standalone';\nimport { tap } from 'rxjs/operators';\nimport { HOMEPAGE } from '@app/app.config';\nimport { TopNavbarComponent } from '@app/shared/components/top-navbar/top-navbar.component';\nimport { FooterComponent } from '@app/shared/components/footer/footer.component';\n\n@Component({\n  selector: 'app-privacy',\n  templateUrl: './privacy.page.html',\n  styleUrls: ['./privacy.page.scss'],\n  standalone: true,\n  imports: [\n    NgIf,\n    IonHeader,\n    TopNavbarComponent,\n    IonToolbar,\n    IonTitle,\n    IonButton,\n    IonButtons,\n    IonContent,\n    IonFooter,\n    FooterComponent,\n    TranslatePipe,\n  ],\n})\nexport class PrivacyPage implements OnInit {\n  title: string = '';\n  @Input() isModal: boolean = false;\n  @Input() allowClickHome: boolean = true;\n\n  constructor(private navCtrl: NavController, private viewCtrl: ModalController, private route: ActivatedRoute) {}\n\n  ngOnInit() {\n    this.route.paramMap.pipe(\n      tap((params: ParamMap) => {\n        // eslint-disable-next-line eqeqeq\n        this.isModal = params.get('isModal') && params.get('isModal') == 'true' ? true : this.isModal;\n      })\n    );\n  }\n\n  openHomePage() {\n    this.dismiss();\n    if (this.allowClickHome) {\n      this.navCtrl.navigateForward(`/${HOMEPAGE}`);\n    }\n  }\n\n  dismiss() {\n    this.viewCtrl.dismiss();\n  }\n}\n","<ion-header *ngIf=\"!isModal; else modalHeader;\">\n  <app-top-navbar [title]=\"title\">\n    <!-- SLOT: anything added here will go below the ion-navbar -->\n  </app-top-navbar>\n</ion-header>\n\n<ng-template #modalHeader>\n  <ion-header>\n    <ion-toolbar color=\"dark\">\n      <ion-title>\n        <ion-button fill=\"clear\" class=\"toolbar-title__logo\" (click)=\"openHomePage()\">\n          <img src=\"/assets/images/logos/filmstackerLogo.png\" alt=\"Filmstacker\" />\n        </ion-button>\n      </ion-title>\n      <ion-buttons slot=\"end\">\n        <ion-button fill=\"clear\" color=\"primary\" (click)=\"dismiss()\">{{ 'COMMON.CLOSE' | translate }}</ion-button>\n      </ion-buttons>\n    </ion-toolbar>\n  </ion-header>\n</ng-template>\n\n<ion-content forceOverflow=\"false\">\n\n  <div class=\"iframe-container\">\n    <iframe id=\"FilmstackerTerms\" height=\"100%\" name=\"filmstacker-terms\" style=\"width:100%;border:none;padding:0;\"\n      title=\"Filmstacker {{ 'POLICIES.TERMS_SERVICE' | translate }}\" src=\"https://filmstacker.com/policies/terms.html\">\n      <p>{{ 'ERRORS.IFRAMES_NOT_SUPPORTED' | translate }}</p>\n      <p>\n        {{ 'COMMON.OPEN_NEW_PAGE' | translate }}: <a href=\"https://filmstacker.com/policies/terms.html\"\n          target=\"_blank\">https://filmstacker.com/policies/terms.html</a>\n      </p>\n    </iframe>\n  </div>\n\n</ion-content>\n\n<ion-footer *ngIf=\"isModal else pageFooter\" class=\"ion-text-center ion-padding\">\n  <ion-button (click)=\"dismiss()\">{{ 'COMMON.CLOSE' | translate }}</ion-button>\n</ion-footer>\n\n<ng-template #pageFooter>\n  <ion-footer>\n    <app-footer class=\"no-bottom-spacer\"></app-footer>\n  </ion-footer>\n</ng-template>","/** @format */\n\nimport { Component, OnInit, Input } from '@angular/core';\nimport { NgIf } from '@angular/common';\nimport { ActivatedRoute, ParamMap } from '@angular/router';\nimport { TranslatePipe } from '@ngx-translate/core';\nimport {\n  ModalController,\n  NavController,\n  IonHeader,\n  IonToolbar,\n  IonTitle,\n  IonButton,\n  IonButtons,\n  IonContent,\n  IonFooter,\n} from '@ionic/angular/standalone';\nimport { tap } from 'rxjs/operators';\nimport { HOMEPAGE } from '@app/app.config';\nimport { FooterComponent } from '@app/shared/components/footer/footer.component';\nimport { TopNavbarComponent } from '@app/shared/components/top-navbar/top-navbar.component';\n\nconst PAGE = '[TermsPage]'; // eslint-disable-line @typescript-eslint/no-unused-vars\n\n@Component({\n  selector: 'app-terms',\n  templateUrl: './terms.page.html',\n  styleUrls: ['./terms.page.scss'],\n  standalone: true,\n  imports: [\n    NgIf,\n    IonHeader,\n    TopNavbarComponent,\n    IonToolbar,\n    IonTitle,\n    IonButton,\n    IonButtons,\n    IonContent,\n    IonFooter,\n    FooterComponent,\n    TranslatePipe,\n  ],\n})\nexport class TermsPage implements OnInit {\n  title: string = '';\n  @Input() isModal: boolean = false;\n  @Input() allowClickHome: boolean = true;\n\n  constructor(private navCtrl: NavController, private viewCtrl: ModalController, private route: ActivatedRoute) {}\n\n  ngOnInit() {\n    // console.log(`${PAGE} oninit isModal`, this.isModal);\n    this.route.paramMap.pipe(\n      tap((params: ParamMap) => {\n        // eslint-disable-next-line eqeqeq\n        this.isModal = params.get('isModal') && params.get('isModal') == 'true' ? true : this.isModal;\n        console.log(`${PAGE} route.paramMap isModal`, this.isModal);\n      })\n    );\n  }\n\n  openHomePage() {\n    this.dismiss();\n    if (this.allowClickHome) {\n      this.navCtrl.navigateForward(`/${HOMEPAGE}`);\n    }\n  }\n\n  dismiss() {\n    this.viewCtrl.dismiss();\n  }\n}\n","<!-- @format -->\n\n<footer>\n  <div class=\"footer container\">\n    <div class=\"footer__side footer__side--left\">\n      <div [ngSwitch]=\"theme\">\n        <ng-container *ngSwitchCase=\"'light'\">\n          <!-- if light theme, use blue logo -->\n          <img class=\"logo\" src=\"/assets/images/logos/Filmstacker-logo-teal.png\" alt=\"Filmstacker\" />\n        </ng-container>\n        <ng-container *ngSwitchDefault>\n          <img class=\"logo\" src=\"/assets/images/filmstacker-logo.png\" alt=\"Filmstacker\" />\n        </ng-container>\n      </div>\n    </div>\n    <div class=\"footer__side\">\n      <div class=\"footer__side__item\">\n        <a routerLink=\"/about\">{{ 'COMMON.ABOUT' | translate }}</a>\n      </div>\n      <!-- <div class=\"footer__side__item\">\n        <a routerLink=\"/support\">{{ 'COMMON.SUPPORT' | translate }}</a>\n      </div> -->\n      <div class=\"footer__side__item\">\n        <a routerLink=\"/community-rules\">{{ 'COMMON.COMMUNITY_GUIDELINES' | translate }}</a>\n      </div>\n      <div class=\"footer__side__item\">\n        <a routerLink=\"/privacy\">{{ 'POLICIES.PRIVACY_POLICY' | translate }}</a>\n      </div>\n      <div class=\"footer__side__item\">\n        <a routerLink=\"/terms\">{{ 'POLICIES.TERMS_USE' | translate }}</a>\n      </div>\n      <div class=\"footer__side__item\">&copy;{{ copyrightYear }} Filmstacker Inc. {{ 'POLICIES.RIGHTS_RESERVED' | translate }}.</div>\n    </div>\n  </div>\n  <div class=\"tab-bottom-spacer\"></div>\n</footer>\n","/** @format */\n\nimport { Component, Input } from '@angular/core';\nimport { NgSwitch, NgSwitchCase, NgSwitchDefault } from '@angular/common';\nimport { RouterLink } from '@angular/router';\nimport { TranslatePipe } from '@ngx-translate/core';\n\n@Component({\n  selector: 'app-footer',\n  templateUrl: './footer.component.html',\n  styleUrls: ['./footer.component.scss'],\n  standalone: true,\n  imports: [NgSwitch, NgSwitchCase, NgSwitchDefault, RouterLink, TranslatePipe],\n})\nexport class FooterComponent {\n  /** manages which logo */\n  @Input() theme: 'light' | 'dark' = 'dark';\n\n  copyrightYear = new Date().getFullYear();\n}\n","/** @format */\n\nimport { Component, Input } from '@angular/core';\nimport { TranslateService, TranslatePipe } from '@ngx-translate/core';\nimport { ModalController, IonButton } from '@ionic/angular/standalone';\n// modals\nimport { PrivacyPage } from '@app/pages/privacy/privacy.page';\nimport { TermsPage } from '@app/pages/terms/terms.page';\nimport { CommunityRulesPage } from '@app/pages/community-rules/community-rules.page';\n\n@Component({\n  selector: 'app-terms-policy-modals',\n  templateUrl: './terms-policy-modals.component.html',\n  styleUrls: ['./terms-policy-modals.component.scss'],\n  standalone: true,\n  imports: [IonButton, TranslatePipe],\n})\nexport class TermsPolicyModalsComponent {\n  @Input() agreeTo = this.translate.instant('POLICIES.AGREE_TO_TERMS_PREFIX'); //'By capturing content';\n\n  constructor(private modalCtrl: ModalController, private translate: TranslateService) {}\n\n  async openPrivacyPolicy() {\n    const modal = await this.modalCtrl.create({\n      component: PrivacyPage,\n      componentProps: {\n        isModal: true,\n      },\n      cssClass: 'fullheight-modal policy-modal',\n    });\n    return await modal.present();\n  }\n\n  async openTerms() {\n    const modal = await this.modalCtrl.create({\n      component: TermsPage,\n      componentProps: {\n        isModal: true,\n      },\n      cssClass: 'fullheight-modal policy-modal',\n    });\n    return await modal.present();\n  }\n\n  async openCommunity() {\n    const modal = await this.modalCtrl.create({\n      component: CommunityRulesPage,\n      componentProps: {\n        isModal: true,\n      },\n      cssClass: 'fullheight-modal policy-modal',\n    });\n    return await modal.present();\n  }\n}\n","<div style=\"max-width: 280px;margin:0 auto;\">\n  <!-- Community Guidelines, terms and privacy -->\n   {{ agreeTo }} {{ 'POLICIES.AGREE_TO_TERMS_MID' | translate }}\n   <ion-button class=\"btn-link-inline\" (click)=\"openCommunity()\" type=\"button\">{{ 'POLICIES.COMMUNITY_GUIDELINES' | translate }}</ion-button>,\n   <ion-button class=\"btn-link-inline\" (click)=\"openTerms()\" type=\"button\">{{ 'POLICIES.TERMS' | translate }}</ion-button>\n   {{ 'COMMON.AND' | translate }}\n   <ion-button class=\"btn-link-inline\" (click)=\"openPrivacyPolicy()\" type=\"button\">{{ 'POLICIES.PRIVACY_POLICY' | translate }}</ion-button>\n</div>"],"x_google_ignoreList":[]}