{"version":3,"file":"projects_desktop_src_app_app-routing_module_ts.js","mappings":"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","sources":["./projects/desktop/src/app/app-routing.module.ts","./projects/desktop/src/app/root/root-password-change/password-change-active-checker.ts","./projects/desktop/src/app/root/root-team/root-team.service.ts","./projects/lwlib/src/guard/prevent-load.guard.ts","./projects/lwlib/src/team/team-info.ts","./projects/lwlib/src/team/team-member.ts","./node_modules/ngx-sharebuttons/fesm2015/ngx-sharebuttons.js"],"sourcesContent":["import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { LZStringService } from 'ng-lz-string';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\nimport { ShareService } from 'ngx-sharebuttons';\r\nimport { AuthGuard, WaitReviewActiveChecker, FixDataActiveChecker, AdminAuthGuard, PrintGuard, TeamAuthGuard, TeamLessonAuthGuard } from 'projects/desktop/src/app/app.service';\r\nimport { PreventLoadGuard } from 'projects/lwlib/src/guard/prevent-load.guard';\r\nimport { PasswordChangeActiveChecker } from './root/root-password-change/password-change-active-checker';\r\nimport { RootTeamService } from './root/root-team/root-team.service';\r\n\r\n/**\r\n * 用loadChildren的所有module底下\r\n * 都必須要用到routing\r\n * 不然連到這網址會死迴圈\r\n */\r\nconst routes: Routes = [\r\n { path: 'login', loadChildren: () => import('./root/root-login2/root-login2.module').then(m => m.RootLogin2Module) },\r\n { path: 'logout', loadChildren: () => import('./root/root-logout-jump-page/root-logout-jump-page.module').then(m => m.RootLogoutJumpPageModule) },\r\n { path: 'register', loadChildren: () => import('./root/root-apply-member-phone/root-apply-member-phone.module').then(m => m.RootApplyMemberPhoneModule) },\r\n { path: 'guest_timeup', loadChildren: () => import('./root/root-guest-timeup/root-guest-timeup.module').then(m => m.RootGuestTimeupModule) },\r\n /** 更換密碼,需要從指定頁面進入,且持有密碼更換key */\r\n // { path: 'password_change', component: RootPasswordChangeComponent, canActivate: [PasswordChangeActiveChecker] },\r\n /** 需要登入,但不用審核通過 */\r\n { path: 'fix_data', canActivate: [FixDataActiveChecker], loadChildren: () => import('./root/root-verify-page/root-verify-page.module').then(m => m.RootVerifyPageModule) },\r\n\r\n // component: RootVerifyPageComponent\r\n { path: 'wait_review', canActivate: [WaitReviewActiveChecker], loadChildren: () => import('./root/root-verify-page/root-verify-page.module').then(m => m.RootVerifyPageModule) },\r\n\r\n // component: RootStopMobileViewComponent,\r\n { path: 'stop_mobile_view', loadChildren: () => import('./root/root-stop-mobile-view/root-stop-mobile-view.module').then(m => m.RootStopMobileViewModule) },\r\n { path: 'no_permission_execute_note', loadChildren: () => import('./root/root-no-permission-execute-note/root-no-permission-execute-note.module').then(m => m.RootNoPermissionExecuteNoteModule) },\r\n\r\n /** 舊版頁面串接 */\r\n /** 分享,為了對應舊的分享連結,必須要用share.html */\r\n // component: RootShareComponent,\r\n { path: 'share.html', loadChildren: () => import('./root/root-share/root-share.module').then(m => m.RootShareModule) },\r\n\r\n /** 分享的筆記 */\r\n // 原分享網址樣子 http://legalworks.com.tw/share.html?i=7e8da9ad-0269-4c28-a891-1644e9247e43\r\n // http://localhost:4200/share.html?i=7e8da9ad-0269-4c28-a891-1644e9247e43\r\n // { path: 'share/:share_id', loadChildren: shareRouter, },\r\n { path: 'share/:share_id', loadChildren: () => import('./root/root-share-note/root-share-note.module').then(m => m.RootShareNoteModule), },\r\n /** 筆記 */\r\n { path: 'note/judgment', canActivate: [AuthGuard], loadChildren: () => import('./root/root-note-work-judgment/root-note-work-judgment.module').then(m => m.RootNoteWorkJudgmentModule) },\r\n { path: 'note/judicial_interpret', canActivate: [AuthGuard], loadChildren: () => import('./root/root-note-work-judicial-interpret/root-note-work-judicial-interpret.module').then(m => m.RootNoteWorkJudicialInterpretModule) },\r\n { path: 'note/law_rule', canActivate: [AuthGuard], loadChildren: () => import('./root/root-note-work-law-rule/root-note-work-law-rule.module').then(m => m.RootNoteWorkLawRuleModule) },\r\n { path: 'note/indictment', canActivate: [AuthGuard], loadChildren: () => import('./root/root-note-work-indictment/root-note-work-indictment.module').then(m => m.RootNoteWorkIndictmentModule) },\r\n\r\n /** 筆記列印頁面 */\r\n { path: 'print/judgment', canLoad: [PrintGuard], loadChildren: () => import('./root/root-note-print-judgment/root-note-print-judgment.module').then(m => m.RootNotePrintJudgmentModule) },\r\n { path: 'print/indictment', canLoad: [PrintGuard], loadChildren: () => import('./root/root-note-print-indictment/root-note-print-indictment.module').then(m => m.RootNotePrintIndictmentModule) },\r\n { path: 'print/judicial_interpret', canLoad: [PrintGuard], loadChildren: () => import('./root/root-note-print-judicial-interpret/root-note-print-judicial-interpret.module').then(m => m.RootNotePrintJudicialInterpretModule) },\r\n { path: 'print/law_rule', canLoad: [PrintGuard], loadChildren: () => import('./root/root-note-print-law-rule/root-note-print-law-rule.module').then(m => m.RootNotePrintLawRuleModule) },\r\n\r\n /** 會員資料管理 */\r\n { path: 'member_profile_mang', canActivate: [AuthGuard], loadChildren: () => import('./root/root-member-profile-management-new/root-member-profile-management-new.module').then(m => m.RootMemberProfileManagementNewModule) },\r\n { path: 'member_profile_edit', canActivate: [AuthGuard], loadChildren: () => import('./root/root-member-profile-edit/root-member-profile-edit.module').then(m => m.RootMemberProfileEditModule) },\r\n { path: 'p/t/:team_id/:member_id', canActivate: [AuthGuard], data: { isTeam: true }, loadChildren: () => import('./root/root-member-profile-management-new/root-member-profile-management-new.module').then(m => m.RootMemberProfileManagementNewModule) },\r\n { path: 'p/id2/:member_id2', canActivate: [AuthGuard], data: { isId2: true }, loadChildren: () => import('./root/root-member-profile-management-new/root-member-profile-management-new.module').then(m => m.RootMemberProfileManagementNewModule) },\r\n\r\n /** 全面檢索 */\r\n { path: 'complete_search', canActivate: [AuthGuard], loadChildren: () => import('./root/root-main/root-main.module').then(m => m.RootMainModule) },\r\n\r\n /** 後台管理 */\r\n // component: RootManagementOldComponent\r\n { path: 'management_page', canActivate: [AdminAuthGuard], loadChildren: () => import('./root/root-management-old/root-management-old.module').then(m => m.RootManagementOldModule) },\r\n { path: 'management_page_new', canLoad: [AdminAuthGuard], loadChildren: () => import('./root/root-management/root-management.module').then(m => m.RootManagementModule) },\r\n\r\n /** 轉跳導向 */\r\n // component: RootRedirComponent\r\n { path: 'redir/:url', loadChildren: () => import('./root/root-redir/root-redir.module').then(m => m.RootRedirModule) },\r\n\r\n /** 團隊頁面 */\r\n { path: 'team', canActivate: [AuthGuard], loadChildren: () => import('./root/root-team/root-team.module').then(m => m.RootTeamModule) },\r\n { path: 'team_note/judgment/:team_id/:note_id', canActivate: [AuthGuard, TeamAuthGuard], loadChildren: () => import('./root/root-note-team-judgment/root-note-team-judgment.module').then(m => m.RootNoteTeamJudgmentModule) },\r\n { path: 'team_note/indictment/:team_id/:note_id', canActivate: [AuthGuard, TeamAuthGuard], loadChildren: () => import('./root/root-note-team-indictment/root-note-team-indictment.module').then(m => m.RootNoteTeamIndictmentModule) },\r\n { path: 'team_note/judicial_interpret/:team_id/:note_id', canActivate: [AuthGuard, TeamAuthGuard], loadChildren: () => import('./root/root-note-team-judicial-interpret/root-note-team-judicial-interpret.module').then(m => m.RootNoteTeamJudicialInterpretModule) },\r\n // { path: 'team_lesson/:team_id', canActivate: [AuthGuard], loadChildren: () => import('./root/root-team-lesson/root-team-lesson.module').then(m => m.RootTeamLessonModule) },\r\n // { path: 'team_lesson_course/:team_id/:lesson_number', canActivate: [AuthGuard], loadChildren: () => import('./root/root-team-lesson-course/root-team-lesson-course.module').then(m => m.RootTeamLessonCourseModule) },\r\n\r\n /** 主頁 */\r\n {\r\n path: '**',\r\n canActivate: [AuthGuard],\r\n data: { rl2: 'app-routing' },\r\n loadChildren: () => import('./root/root-main/root-main.module').then(m => m.RootMainModule)\r\n },\r\n\r\n // { path: '**', redirectTo: '' },\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n declarations: [],\r\n exports: [RouterModule],\r\n providers: [\r\n PreventLoadGuard,\r\n AuthGuard,\r\n PrintGuard,\r\n RootTeamService,\r\n TeamAuthGuard,\r\n TeamLessonAuthGuard,\r\n // TeamChildPageActivateChecker,\r\n PasswordChangeActiveChecker,\r\n WaitReviewActiveChecker,\r\n FixDataActiveChecker,\r\n AdminAuthGuard,\r\n ShareService,\r\n ]\r\n})\r\nexport class AppRoutingModule { }\r\n","import { Injectable } from '@angular/core';\r\nimport { CanActivate, Router, ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router';\r\nimport { RootPasswordChangeService } from './root-password-change.service';\r\nimport { Observable, of } from 'rxjs';\r\nimport { tap } from 'rxjs/operators';\r\n\r\n@Injectable()\r\nexport class PasswordChangeActiveChecker implements CanActivate {\r\n\r\n constructor(\r\n private router: Router,\r\n // private service: AppService,\r\n private rootPasswordChangeService: RootPasswordChangeService\r\n ) { }\r\n\r\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): boolean | Observable | Promise {\r\n return of(this.rootPasswordChangeService.key != null)\r\n .pipe(\r\n tap(result => {\r\n console.log(result, route, state);\r\n\r\n if (!result) {\r\n this.router.navigate(['/']);\r\n // location.href = '/';\r\n }\r\n })\r\n );\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable, Subject, Subscriber } from 'rxjs';\r\nimport { AppService } from 'projects/desktop/src/app/app.service';\r\nimport { TeamInfo } from 'projects/lwlib/src/team/team-info';\r\nimport { TeamBuildRequest } from 'projects/lwlib/src/team/team-build-request';\r\nimport { TeamBuildResult } from 'projects/lwlib/src/team/team-build-result';\r\nimport { LogPageId } from 'projects/lwlib/src/log-page/log-page-id.enum';\r\nimport { PersonalConfig } from 'projects/lwlib/src/personal-config-popup/personal-config-popup.service';\r\nimport { CategoryList } from 'projects/lwlib/src/category/category-list';\r\nimport { SubcategoryList } from 'projects/lwlib/src/category/subcategory-list';\r\nimport { Category } from 'projects/lwlib/src/category/category';\r\nimport { JudgmentCaseList } from '../root-main/child-content-storage-personal/judgment/judgment-case-list';\r\nimport { tap, map } from 'rxjs/operators';\r\nimport { Serializable } from 'projects/lwlib/src/serializable';\r\nimport { ActivatedRoute, ActivatedRouteSnapshot } from '@angular/router';\r\nimport { TeamMember } from 'projects/lwlib/src/team/team-member';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class RootTeamService {\r\n\r\n selectedPage$: Subject = new Subject();\r\n reloadPage$: Subject = new Subject();\r\n childPageInited$: Subject = new Subject();\r\n\r\n myTeamList: TeamInfo[] = [];\r\n currentTeamId: string;\r\n get currentTeam(): TeamInfo {\r\n return this.myTeamList.find(v => v.team_id === this.currentTeamId);\r\n }\r\n currentTeamMember: TeamMember;\r\n\r\n\r\n constructor(\r\n private service: AppService,\r\n private activatedRoute: ActivatedRoute,\r\n ) {\r\n // const routeSnapshot: ActivatedRouteSnapshot = this.activatedRoute.firstChild.snapshot;\r\n // this.currentTeamId = routeSnapshot.params.team_id;\r\n }\r\n\r\n\r\n isCurrentTeamMemberInited(): Observable {\r\n return Observable.create((subsc: Subscriber) => {\r\n\r\n const tii = setInterval(() => {\r\n if (this.currentTeamMember) {\r\n clearInterval(tii);\r\n subsc.next(true);\r\n subsc.complete();\r\n }\r\n }, 100);\r\n\r\n return () => { };\r\n });\r\n }\r\n\r\n\r\n /** ******************************************************************************* */\r\n pullJoinTeamListObserver(): Observable {\r\n return this.service.get('teamapi/my_team').pipe(\r\n map((v: TeamInfo[]) =>\r\n v.map(ti => {\r\n const tapi: TeamInfo = Serializable.extendObjectFromResponseObject(new TeamInfo(), ti);\r\n\r\n tapi.teamPictureStyle.backgroundImage = `url(${tapi.team_picture})`;\r\n tapi.founderPictureStyle.backgroundImage = `url(${tapi.founder_picture})`;\r\n\r\n return tapi;\r\n })\r\n ),\r\n tap((list: TeamInfo[]) => {\r\n this.myTeamList = list;\r\n })\r\n );\r\n }\r\n getLessonTeam(team_id): Observable {\r\n return this.service.get(`teamapi/get_lesson_team?team_id=${team_id}`).pipe(\r\n map((ti: TeamInfo) => {\r\n const tapi: TeamInfo = Serializable.extendObjectFromResponseObject(new TeamInfo(), ti);\r\n return tapi;\r\n })\r\n );\r\n }\r\n getTeamMemberList(team_id: string): Observable {\r\n return this.service.get(`teamapi/${team_id}/member_list`)\r\n .pipe(\r\n map((list: TeamMember[]) => {\r\n const l = list.map(m => Serializable.extend(new TeamMember(), m));\r\n for (const member of l) {\r\n member.pictureStyle.backgroundImage = `url(${member.picture})`;\r\n }\r\n return l;\r\n })\r\n );\r\n }\r\n pullCurrentTeamSelfTeamMember(): Observable {\r\n return this.getSelfTeamMember(this.currentTeamId)\r\n .pipe(\r\n tap(self => {\r\n this.currentTeamMember = self;\r\n console.log(self);\r\n\r\n })\r\n );\r\n }\r\n getSelfTeamMember(team_id: string): Observable {\r\n return this.service.get(`teamapi/${team_id}/self_member`)\r\n .pipe(\r\n map((self: TeamMember) => {\r\n const _self = Serializable.extend(new TeamMember(), self);\r\n _self.pictureStyle.backgroundImage = `url(${_self.picture})`;\r\n return _self;\r\n })\r\n );\r\n }\r\n getSelfTeamMemberAtNote(team_id: string, note_id: string): Observable {\r\n return this.service.get(`teamapi/${team_id}/self_member?note_id=${note_id}`)\r\n .pipe(\r\n map((self: TeamMember) => {\r\n const _self = Serializable.extend(new TeamMember(), self);\r\n _self.pictureStyle.backgroundImage = `url(${_self.picture})`;\r\n return _self;\r\n })\r\n );\r\n }\r\n // searchTeamByNameObserver(keyword: string): Observable {\r\n // return this.service.get('teamapi/search_team_by_name?keyword=' + keyword);\r\n // }\r\n // buildTeamObserver(request: TeamBuildRequest): Observable {\r\n // return this.service.post('teamapi/build_team', request);\r\n // }\r\n\r\n selectPage(pageId: LogPageId): void {\r\n this.selectedPage$.next(pageId);\r\n }\r\n reloadPage(pageId: LogPageId): void {\r\n this.reloadPage$.next(pageId);\r\n }\r\n\r\n childPageInited(): void {\r\n this.childPageInited$.next(true);\r\n }\r\n // getSharedStoragePersonalConfigObserver(): Observable {\r\n // return this.service.get('teamapi/personal_config');\r\n // }\r\n // updateSharedStoragePersonalConfigObserver(personalConfig: PersonalConfig): Observable {\r\n // return this.service.post('teamapi/personal_config', personalConfig);\r\n // }\r\n\r\n\r\n // getJudgmentCategoryListObserver(team_id: string): Observable {\r\n // return this.service.get('teamapi/category_list_judgment?team_id=' + team_id);\r\n // }\r\n // getJudgmentSubcategoryListObserver(team_id: string): Observable {\r\n // return this.service.get('teamapi/subcategory_list_judgment?team_id=' + team_id);\r\n // }\r\n // getJudgmentStorageTeamMemberList(team_id: string): Observable {\r\n // return this.service.get('teamapi/team_member_list_storage_judgment?team_id=' + team_id);\r\n // }\r\n // getJudgmentStorageNoteList(filterCondition: FilterCondition): Observable {\r\n // return this.service.post('teamapi/note_list_judgment', filterCondition);\r\n // }\r\n\r\n\r\n setTeamCommentObserver(team_id: string, comment: string): Observable {\r\n return this.service.post(`teamapi/${team_id}/team_comment`, { comment: comment });\r\n }\r\n /** type:1=judg, 2=law, 3=judi, 4=indi */\r\n notifyAuthorDownloadObserver(team_id: string, note_id: string, type: number, isOpen: number): Observable {\r\n return this.service.post(`teamapi/${team_id}/set_note_author_download?note_id=${note_id}&type=${type}&is_open=${isOpen}`, {});\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanLoad, Route, UrlSegment, ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class PreventLoadGuard implements CanLoad {\r\n canLoad(\r\n route: Route,\r\n segments: UrlSegment[]): Observable | Promise | boolean {\r\n\r\n console.log('PreventLoadGuard' + route.path);\r\n\r\n return false;\r\n }\r\n}\r\n","export class TeamInfo {\r\n team_id: string;\r\n team_picture: string;\r\n team_name: string;\r\n founder_picture: string;\r\n founder_name: string;\r\n note_count_judgment: number;\r\n note_count_judicial_interpret: number;\r\n team_announce_content: string;\r\n team_capacity_member: number;\r\n team_capacity_admin: number;\r\n team_member_count: number;\r\n team_member_type: string;\r\n team_note_point: number;\r\n team_comment: string;\r\n\r\n teamPictureStyle: CSSStyleDeclaration = {} as CSSStyleDeclaration;\r\n founderPictureStyle: CSSStyleDeclaration = {} as CSSStyleDeclaration;\r\n\r\n permission_invite_member: boolean;\r\n permission_remove_member: boolean;\r\n\r\n lesson_summary_google_spreadsheets_url: string;\r\n lesson_list_google_spreadsheets_url: string;\r\n lesson_team_name: string;\r\n\r\n is_lesson_team: boolean;\r\n\r\n isFounderOrAdmin(): boolean {\r\n return ['founder', 'admin'].some(v => v === this.team_member_type);\r\n }\r\n}\r\n","export class TeamMember {\r\n member_id: string;\r\n team_id: string;\r\n team_member_id: string;\r\n team_member_type: string;\r\n name: string;\r\n picture: string;\r\n\r\n pictureStyle: CSSStyleDeclaration = {} as CSSStyleDeclaration;\r\n\r\n permissionCopyNote: boolean;\r\n permissionShareNote: boolean;\r\n permissionEvaluateNote: boolean;\r\n permissionDeleteTeamMessage: boolean;\r\n permissionEditCategory: boolean;\r\n permissionEditNoteMeet: boolean;\r\n permissionDeleteNote: boolean;\r\n permissionRemoveMember: boolean;\r\n permissionInviteMember: boolean;\r\n permissionEditTeamNote: boolean;\r\n permissionUpdateAnnounce: boolean;\r\n permissionShortcutNote: boolean;\r\n\r\n get isFounder(): boolean {\r\n return this.team_member_type === 'founder';\r\n }\r\n get isAdmin(): boolean {\r\n return this.team_member_type === 'admin';\r\n }\r\n get isFounderOrAdmin(): boolean {\r\n return this.isFounder || this.isAdmin;\r\n }\r\n get isNormal(): boolean {\r\n return this.team_member_type === 'normal';\r\n }\r\n\r\n isLessonTeacher: boolean;\r\n}\r\n\r\n","import { InjectionToken, ɵɵdefineInjectable, ɵɵinject, Injectable, Optional, Inject, EventEmitter, Directive, ElementRef, ChangeDetectorRef, Input, Output, HostListener, NgModule } from '@angular/core';\nimport { Platform, PlatformModule } from '@angular/cdk/platform';\nimport { DOCUMENT } from '@angular/common';\nimport { Meta } from '@angular/platform-browser';\nimport { Observable, of, EMPTY, BehaviorSubject, Subject } from 'rxjs';\nimport { tap, delay, take, catchError, takeUntil } from 'rxjs/operators';\n\nimport * as ɵngcc0 from '@angular/core';\nimport * as ɵngcc1 from '@angular/platform-browser';\nimport * as ɵngcc2 from '@angular/cdk/platform';\nconst SHARE_BUTTONS_CONFIG = new InjectionToken('shareButtonsConfig');\nclass IShareButton {\n}\nvar SharerMethod;\n(function (SharerMethod) {\n SharerMethod[\"Anchor\"] = \"anchor\";\n SharerMethod[\"Window\"] = \"window\";\n})(SharerMethod || (SharerMethod = {}));\n\n/**\n * Simple object check.\n */\nfunction isObject(item) {\n return (item && typeof item === 'object' && !Array.isArray(item));\n}\n/**\n * Deep merge two objects.\n */\nfunction mergeDeep(target, ...sources) {\n if (!sources.length) {\n return target;\n }\n const source = sources.shift();\n if (isObject(target) && isObject(source)) {\n for (const key in source) {\n if (isObject(source[key])) {\n if (!target[key]) {\n Object.assign(target, { [key]: {} });\n }\n mergeDeep(target[key], source[key]);\n }\n else {\n Object.assign(target, { [key]: source[key] });\n }\n }\n }\n return mergeDeep(target, ...sources);\n}\n/** Returns a valid URL or falls back to current URL */\nfunction getValidUrl(url, fallbackUrl) {\n if (url) {\n const r = /(http|https):\\/\\/(\\w+:{0,1}\\w*@)?(\\S+)(:[0-9]+)?(\\/|\\/([\\w#!:.?+=&%@!\\-\\/]))?/;\n if (r.test(url)) {\n return url;\n }\n console.warn(`[ShareButtons]: Sharing link '${url}' is invalid!`);\n }\n return fallbackUrl;\n}\nfunction printPage() {\n return new Observable((sub) => document.defaultView.print());\n}\nfunction copyToClipboard({ params, data, platform, updater }) {\n return of(null).pipe(tap(() => {\n const textArea = document.createElement('textarea');\n textArea.value = decodeURIComponent(params.url);\n document.body.appendChild(textArea);\n // highlight TextArea to copy the sharing link\n if (platform.IOS) {\n const range = document.createRange();\n range.selectNodeContents(textArea);\n const selection = document.defaultView.getSelection();\n selection.removeAllRanges();\n selection.addRange(range);\n textArea.readOnly = true;\n textArea.setSelectionRange(0, 999999);\n }\n else {\n textArea.select();\n }\n document.execCommand('copy');\n document.body.removeChild(textArea);\n // Disable copy button\n updater.next({ icon: data.successIcon, text: data.successText, disabled: true });\n }), delay(data.delay), tap(() => updater.next({ icon: data.icon, text: data.text, disabled: false })), take(1), catchError(err => {\n console.warn('Copy link failed!', err.message);\n return EMPTY;\n }));\n}\n\nconst ɵ0 = (p) => {\n return p.description ? `${p.description}\\r\\n${p.url}` : p.url;\n};\n// Create message body that includes the sharing link used for Email, SMS and WhatsApp buttons\nconst linkInDescription = {\n description: ɵ0\n};\nconst ɵ1 = {\n text: 'Copy link',\n icon: ['fas', 'link'],\n successText: 'Copied',\n successIcon: ['fas', 'check'],\n delay: 2000\n};\nconst SHARE_BUTTONS = {\n facebook: {\n type: 'facebook',\n text: 'Facebook',\n ariaLabel: 'Share on Facebook',\n icon: ['fab', 'facebook-f'],\n color: '#4267B2',\n share: {\n desktop: 'https://www.facebook.com/sharer/sharer.php?'\n },\n params: {\n url: 'u'\n }\n },\n twitter: {\n type: 'twitter',\n text: 'Twitter',\n ariaLabel: 'Share on Twitter',\n icon: ['fab', 'twitter'],\n color: '#00acee',\n share: {\n desktop: 'https://twitter.com/intent/tweet?'\n },\n params: {\n url: 'url',\n description: 'text',\n tags: 'hashtags',\n via: 'via'\n }\n },\n linkedin: {\n type: 'linkedin',\n text: 'LinkedIn',\n ariaLabel: 'Share on LinkedIn',\n icon: ['fab', 'linkedin-in'],\n color: '#006fa6',\n share: {\n desktop: 'https://www.linkedin.com/shareArticle?'\n },\n params: {\n url: 'url',\n title: 'title',\n description: 'summary'\n }\n },\n pinterest: {\n type: 'pinterest',\n text: 'Pinterest',\n ariaLabel: 'Share on Pinterest',\n icon: ['fab', 'pinterest-p'],\n color: '#BD091D',\n share: {\n desktop: 'https://pinterest.com/pin/create/button/?'\n },\n params: {\n url: 'url',\n description: 'description',\n image: 'media'\n }\n },\n reddit: {\n type: 'reddit',\n text: 'Reddit',\n ariaLabel: 'Share on Reddit',\n icon: ['fab', 'reddit-alien'],\n color: '#FF4006',\n share: {\n desktop: 'https://www.reddit.com/submit?'\n },\n params: {\n url: 'url',\n title: 'title'\n }\n },\n tumblr: {\n type: 'tumblr',\n text: 'Tumblr',\n ariaLabel: 'Share on Tumblr',\n icon: ['fab', 'tumblr'],\n color: '#36465D',\n share: {\n desktop: 'https://tumblr.com/widgets/share/tool?'\n },\n params: {\n url: 'canonicalUrl',\n description: 'caption',\n tags: 'tags'\n }\n },\n mix: {\n type: 'mix',\n text: 'Mix',\n ariaLabel: 'Share on Mix',\n icon: ['fab', 'mix'],\n color: '#eb4924',\n share: {\n desktop: 'https://mix.com/add?'\n },\n params: {\n url: 'url'\n }\n },\n vk: {\n type: 'vk',\n text: 'VKontakte',\n ariaLabel: 'Share on VKontakte',\n icon: ['fab', 'vk'],\n color: '#4C75A3',\n share: {\n desktop: 'https://vk.com/share.php?'\n },\n params: {\n url: 'url'\n }\n },\n telegram: {\n type: 'telegram',\n text: 'Telegram',\n ariaLabel: 'Share on Telegram',\n icon: ['fab', 'telegram-plane'],\n color: '#0088cc',\n share: {\n desktop: 'https://t.me/share/url?'\n },\n params: {\n url: 'url',\n description: 'text'\n }\n },\n messenger: {\n type: 'messenger',\n text: 'Messenger',\n ariaLabel: 'Share on Messenger',\n icon: ['fab', 'facebook-messenger'],\n color: '#0080FF',\n share: {\n android: 'fb-messenger://share/?',\n ios: 'fb-messenger://share/?'\n },\n params: {\n url: 'link'\n }\n },\n whatsapp: {\n type: 'whatsapp',\n text: 'WhatsApp',\n ariaLabel: 'Share on WhatsApp',\n icon: ['fab', 'whatsapp'],\n color: '#25D366',\n share: {\n desktop: 'https://web.whatsapp.com/send?',\n android: 'whatsapp://send?',\n ios: 'https://api.whatsapp.com/send?'\n },\n params: {\n description: 'text'\n },\n paramsFunc: linkInDescription\n },\n xing: {\n type: 'xing',\n text: 'Xing',\n ariaLabel: 'Share on Xing',\n icon: ['fab', 'xing'],\n color: '#006567',\n share: {\n desktop: 'https://www.xing.com/app/user?op=share&'\n },\n params: {\n url: 'url'\n }\n },\n line: {\n type: 'line',\n text: 'Line',\n ariaLabel: 'Share on Line',\n icon: ['fab', 'line'],\n color: '#00b900',\n share: {\n desktop: 'https://social-plugins.line.me/lineit/share?'\n },\n params: {\n url: 'url'\n }\n },\n sms: {\n type: 'sms',\n text: 'SMS',\n ariaLabel: 'Share link via SMS',\n icon: ['fas', 'sms'],\n color: '#20c16c',\n share: {\n desktop: 'sms:?',\n ios: 'sms:&'\n },\n params: {\n description: 'body'\n },\n paramsFunc: linkInDescription\n },\n email: {\n type: 'email',\n text: 'Email',\n ariaLabel: 'Share link via email',\n icon: ['fas', 'envelope'],\n color: '#FF961C',\n share: {\n desktop: 'mailto:?'\n },\n params: {\n title: 'subject',\n description: 'body'\n },\n paramsFunc: linkInDescription\n },\n print: {\n type: 'print',\n text: 'Print',\n ariaLabel: 'Print page',\n icon: ['fas', 'print'],\n color: '#765AA2',\n func: printPage\n },\n copy: {\n type: 'copy',\n text: 'Copy link',\n ariaLabel: 'Copy link',\n icon: ['fas', 'link'],\n color: '#607D8B',\n data: ɵ1,\n func: copyToClipboard\n }\n};\n\nclass ShareService {\n constructor(config, _document) {\n this._document = _document;\n /** Global config that applies on all share buttons in the app */\n this.config = {\n sharerMethod: SharerMethod.Anchor,\n sharerTarget: '_blank',\n windowObj: this._document.defaultView,\n windowFuncName: 'open',\n prop: SHARE_BUTTONS,\n theme: 'default',\n include: [],\n exclude: [],\n size: 0,\n autoSetMeta: true,\n windowWidth: 800,\n windowHeight: 500,\n moreButtonIcon: 'ellipsis-h',\n lessButtonIcon: 'minus'\n };\n /** Stream that emits when config changes */\n this.config$ = new BehaviorSubject(this.config);\n if (config) {\n this.setConfig(config);\n }\n }\n /**\n * Share buttons properties, used to get the text, color and icon of each button.\n */\n get prop() {\n return this.config.prop;\n }\n get windowSize() {\n return `width=${this.config.windowWidth}, height=${this.config.windowHeight}`;\n }\n setConfig(config) {\n this.config = mergeDeep(this.config, config);\n this.config$.next(this.config);\n }\n addButton(name, props) {\n this.setConfig({\n prop: {\n [name]: props\n }\n });\n }\n}\nShareService.ɵfac = function ShareService_Factory(t) { return new (t || ShareService)(ɵngcc0.ɵɵinject(SHARE_BUTTONS_CONFIG, 8), ɵngcc0.ɵɵinject(DOCUMENT)); };\nShareService.ɵprov = ɵɵdefineInjectable({ factory: function ShareService_Factory() { return new ShareService(ɵɵinject(SHARE_BUTTONS_CONFIG, 8), ɵɵinject(DOCUMENT)); }, token: ShareService, providedIn: \"root\" });\nShareService.ctorParameters = () => [\n { type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [SHARE_BUTTONS_CONFIG,] }] },\n { type: undefined, decorators: [{ type: Inject, args: [DOCUMENT,] }] }\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(ShareService, [{\n type: Injectable,\n args: [{\n providedIn: 'root'\n }]\n }], function () { return [{ type: undefined, decorators: [{\n type: Optional\n }, {\n type: Inject,\n args: [SHARE_BUTTONS_CONFIG]\n }] }, { type: undefined, decorators: [{\n type: Inject,\n args: [DOCUMENT]\n }] }]; }, null); })();\n\nclass ShareDirective {\n constructor(_el, _meta, _platform, _share, _cd, _document) {\n this._meta = _meta;\n this._platform = _platform;\n this._share = _share;\n this._cd = _cd;\n this._document = _document;\n /** Stream that emits when button is destroyed */\n this._destroyed = new Subject();\n /** Stream that emit when share button need to be updated */\n this._updater = new Subject();\n /** Set meta tags from document head, useful when SEO is supported */\n this.autoSetMeta = this._share.config.autoSetMeta;\n /** Sharing link */\n this.url = this._share.config.url;\n /** Sets the title parameter */\n this.title = this._share.config.title;\n /** Sets the description parameter */\n this.description = this._share.config.description;\n /** Sets the image parameter for sharing on Pinterest */\n this.image = this._share.config.image;\n /** Sets the tags parameter for sharing on Twitter and Tumblr */\n this.tags = this._share.config.tags;\n /** Stream that emits when share dialog is opened */\n this.opened = new EventEmitter();\n /** Stream that emits when share dialog is closed */\n this.closed = new EventEmitter();\n this._el = _el.nativeElement;\n }\n /**\n * Share the link\n */\n share() {\n // Avoid SSR error\n if (this._platform.isBrowser && this.shareButton) {\n // Prepare sharer url params\n const params = this.autoSetMeta ? this.getParamsFromMetaTags() : this.getParamsFromInputs();\n // Prepare share button click\n const click = this.shareButton.share ? this.open(params) : this.shareButton.func({\n params,\n data: this.shareButton.data,\n platform: this._platform,\n updater: this._updater\n });\n click.pipe(takeUntil(this._destroyed)).subscribe();\n }\n else {\n console.warn(`${this.text} button is not compatible on this Platform`);\n }\n }\n ngOnInit() {\n // This stream is mainly used to update the copy button text and icon when it is being clicked\n this._updater.pipe(tap((data) => {\n this.icon = data.icon;\n this.text = data.text;\n this._el.style.pointerEvents = data.disabled ? 'none' : 'auto';\n this._cd.markForCheck();\n }), takeUntil(this._destroyed)).subscribe();\n }\n ngOnChanges(changes) {\n // Avoid SSR error\n if (this._platform.isBrowser) {\n // Create share button\n if (this._shareButtonChanged(changes.shareButtonName)) {\n this._createShareButton();\n }\n // Prepare share url\n if (this._urlChanged(changes.url)) {\n this.url = getValidUrl(this.autoSetMeta\n ? this.url || this._getMetaTagContent('og:url')\n : this.url, this._document.defaultView.location.href);\n }\n }\n }\n ngOnDestroy() {\n this._destroyed.next();\n this._destroyed.complete();\n }\n _createShareButton() {\n const button = this._share.config.prop[this.shareButtonName];\n if (button) {\n // Set share button properties\n this.shareButton = button;\n // Remove previous button class\n this._el.classList.remove(`sb-${this._buttonClass}`);\n // Add new button class\n this._el.classList.add(`sb-${this.shareButtonName}`);\n // Set button css color variable\n this._el.style.setProperty('--button-color', this.shareButton.color);\n // Keep a copy of the class for future replacement\n this._buttonClass = this.shareButtonName;\n this.color = this.shareButton.color;\n this.text = this.shareButton.text;\n this.icon = this.shareButton.icon;\n // Set aria-label attribute\n this._el.setAttribute('aria-label', button.ariaLabel);\n }\n else {\n console.error(`[ShareButtons]: The share button '${this.shareButtonName}' does not exist!`);\n }\n }\n /**\n * Get meta tag content\n */\n _getMetaTagContent(key) {\n const metaUsingProperty = this._meta.getTag(`property=\"${key}\"`);\n if (metaUsingProperty) {\n return metaUsingProperty.getAttribute('content');\n }\n const metaUsingName = this._meta.getTag(`name=\"${key}\"`);\n if (metaUsingName) {\n return metaUsingName.getAttribute('content');\n }\n }\n _shareButtonChanged(change) {\n return change && (change.firstChange || change.previousValue !== change.currentValue);\n }\n _urlChanged(change) {\n return !this.url || (change && change.previousValue !== change.currentValue);\n }\n /**\n * Get share params from meta tags first and fallback to user inputs\n */\n getParamsFromMetaTags() {\n return {\n url: this.url,\n title: this.title || this._getMetaTagContent('og:title'),\n description: this.description || this._getMetaTagContent('og:description'),\n image: this.image || this._getMetaTagContent('og:image'),\n via: this._share.config.twitterAccount,\n tags: this.tags\n };\n }\n /**\n * Get share params from user inputs\n */\n getParamsFromInputs() {\n return {\n url: this.url,\n title: this.title,\n description: this.description,\n image: this.image,\n tags: this.tags,\n via: this._share.config.twitterAccount,\n };\n }\n open(params) {\n // Set sharer link based on user's device\n let sharerLink;\n if (this._platform.IOS && this.shareButton.share.ios) {\n sharerLink = this.shareButton.share.ios;\n }\n else if (this._platform.ANDROID && this.shareButton.share.android) {\n sharerLink = this.shareButton.share.android;\n }\n else {\n sharerLink = this.shareButton.share.desktop;\n }\n if (sharerLink) {\n // Set sharer link params\n const finalUrl = sharerLink + this._serializeParams(params);\n // Log the sharer link in debug mode\n if (this._share.config.debug) {\n console.log('[DEBUG SHARE BUTTON]: ', finalUrl);\n }\n // Open the share window\n // There are two methods available for opening the share window:\n // 1. Using a real anchor\n // 2. Using window.open\n const sharerMethod = this.shareButton.method || this._share.config.sharerMethod;\n const sharerTarget = this.shareButton.target || this._share.config.sharerTarget;\n switch (sharerMethod) {\n case SharerMethod.Anchor:\n const linkElement = this._document.createElement('a');\n // Make it open in a new tab/window (depends on user's browser configuration)\n linkElement.setAttribute('target', sharerTarget);\n // Prevent security vulnerability https://medium.com/@jitbit/target-blank-the-most-underestimated-vulnerability-ever-96e328301f4c\n linkElement.setAttribute('rel', 'noopener noreferrer');\n linkElement.href = finalUrl;\n linkElement.click();\n linkElement.remove();\n break;\n case SharerMethod.Window:\n // Open link using Window object\n const openWindow = this._share.config.windowObj[this._share.config.windowFuncName];\n const popUpWindow = openWindow(finalUrl, sharerTarget, this._share.windowSize);\n // Prevent security vulnerability https://medium.com/@jitbit/target-blank-the-most-underestimated-vulnerability-ever-96e328301f4c\n this._share.config.windowObj.opener = null;\n // Resolve when share dialog is closed\n if (popUpWindow) {\n return new Observable((sub) => {\n const pollTimer = this._document.defaultView.setInterval(() => {\n if (popUpWindow.closed) {\n this._document.defaultView.clearInterval(pollTimer);\n // Emit when share windows is closed\n this.closed.emit(this.shareButtonName);\n sub.next();\n sub.complete();\n }\n }, 200);\n });\n }\n break;\n }\n // Emit when share window is opened\n this.opened.emit(this.shareButtonName);\n }\n return EMPTY;\n }\n _serializeParams(params) {\n return Object.entries(this.shareButton.params)\n .map(([key, value]) => {\n // Check if share button param has a map function\n const paramFunc = this.shareButton.paramsFunc ? this.shareButton.paramsFunc[key] : null;\n if (params[key] || paramFunc) {\n const paramValue = paramFunc ? paramFunc(params) : params[key];\n return `${value}=${encodeURIComponent(paramValue)}`;\n }\n return '';\n })\n .filter(urlParam => urlParam !== '')\n .join('&');\n }\n}\nShareDirective.ɵfac = function ShareDirective_Factory(t) { return new (t || ShareDirective)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc1.Meta), ɵngcc0.ɵɵdirectiveInject(ɵngcc2.Platform), ɵngcc0.ɵɵdirectiveInject(ShareService), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ChangeDetectorRef), ɵngcc0.ɵɵdirectiveInject(DOCUMENT)); };\nShareDirective.ɵdir = /*@__PURE__*/ ɵngcc0.ɵɵdefineDirective({ type: ShareDirective, selectors: [[\"\", \"shareButton\", \"\"]], hostBindings: function ShareDirective_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"click\", function ShareDirective_click_HostBindingHandler() { return ctx.share(); });\n } }, inputs: { autoSetMeta: \"autoSetMeta\", url: \"url\", title: \"title\", description: \"description\", image: \"image\", tags: \"tags\", shareButtonName: [\"shareButton\", \"shareButtonName\"] }, outputs: { opened: \"opened\", closed: \"closed\" }, exportAs: [\"shareButton\"], features: [ɵngcc0.ɵɵNgOnChangesFeature] });\nShareDirective.ctorParameters = () => [\n { type: ElementRef },\n { type: Meta },\n { type: Platform },\n { type: ShareService },\n { type: ChangeDetectorRef },\n { type: undefined, decorators: [{ type: Inject, args: [DOCUMENT,] }] }\n];\nShareDirective.propDecorators = {\n shareButtonName: [{ type: Input, args: ['shareButton',] }],\n autoSetMeta: [{ type: Input }],\n url: [{ type: Input }],\n title: [{ type: Input }],\n description: [{ type: Input }],\n image: [{ type: Input }],\n tags: [{ type: Input }],\n opened: [{ type: Output }],\n closed: [{ type: Output }],\n share: [{ type: HostListener, args: ['click',] }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(ShareDirective, [{\n type: Directive,\n args: [{\n selector: '[shareButton]',\n exportAs: 'shareButton'\n }]\n }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc1.Meta }, { type: ɵngcc2.Platform }, { type: ShareService }, { type: ɵngcc0.ChangeDetectorRef }, { type: undefined, decorators: [{\n type: Inject,\n args: [DOCUMENT]\n }] }]; }, { autoSetMeta: [{\n type: Input\n }], url: [{\n type: Input\n }], title: [{\n type: Input\n }], description: [{\n type: Input\n }], image: [{\n type: Input\n }], tags: [{\n type: Input\n }], opened: [{\n type: Output\n }], closed: [{\n type: Output\n }], \n /**\n * Share the link\n */\n share: [{\n type: HostListener,\n args: ['click']\n }], shareButtonName: [{\n type: Input,\n args: ['shareButton']\n }] }); })();\n\nclass ShareModule {\n static withConfig(config) {\n return {\n ngModule: ShareModule,\n providers: [\n { provide: SHARE_BUTTONS_CONFIG, useValue: config }\n ]\n };\n }\n}\nShareModule.ɵfac = function ShareModule_Factory(t) { return new (t || ShareModule)(); };\nShareModule.ɵmod = /*@__PURE__*/ ɵngcc0.ɵɵdefineNgModule({ type: ShareModule });\nShareModule.ɵinj = /*@__PURE__*/ ɵngcc0.ɵɵdefineInjector({ imports: [[\n PlatformModule\n ]] });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(ShareModule, [{\n type: NgModule,\n args: [{\n imports: [\n PlatformModule\n ],\n declarations: [\n ShareDirective\n ],\n exports: [\n ShareDirective\n ]\n }]\n }], null, null); })();\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(ShareModule, { declarations: function () { return [ShareDirective]; }, imports: function () { return [PlatformModule]; }, exports: function () { return [ShareDirective]; } }); })();\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { IShareButton, SHARE_BUTTONS, SHARE_BUTTONS_CONFIG, ShareDirective, ShareModule, ShareService, SharerMethod, ɵ0, ɵ1 };\n\n"],"names":["RouterModule","ShareService","AuthGuard","WaitReviewActiveChecker","FixDataActiveChecker","AdminAuthGuard","PrintGuard","TeamAuthGuard","TeamLessonAuthGuard","PreventLoadGuard","PasswordChangeActiveChecker","RootTeamService","routes","path","loadChildren","then","m","RootLogin2Module","RootLogoutJumpPageModule","RootApplyMemberPhoneModule","RootGuestTimeupModule","canActivate","RootVerifyPageModule","RootStopMobileViewModule","RootNoPermissionExecuteNoteModule","RootShareModule","RootShareNoteModule","RootNoteWorkJudgmentModule","RootNoteWorkJudicialInterpretModule","RootNoteWorkLawRuleModule","RootNoteWorkIndictmentModule","canLoad","RootNotePrintJudgmentModule","RootNotePrintIndictmentModule","RootNotePrintJudicialInterpretModule","RootNotePrintLawRuleModule","RootMemberProfileManagementNewModule","RootMemberProfileEditModule","data","isTeam","isId2","RootMainModule","RootManagementOldModule","RootManagementModule","RootRedirModule","RootTeamModule","RootNoteTeamJudgmentModule","RootNoteTeamIndictmentModule","RootNoteTeamJudicialInterpretModule","rl2","AppRoutingModule","imports","forChild","exports","of","tap","constructor","router","rootPasswordChangeService","route","state","key","pipe","result","console","log","navigate","i0","factory","Observable","Subject","TeamInfo","map","Serializable","TeamMember","service","activatedRoute","currentTeam","myTeamList","find","v","team_id","currentTeamId","isCurrentTeamMemberInited","create","subsc","tii","setInterval","currentTeamMember","clearInterval","next","complete","pullJoinTeamListObserver","get","ti","tapi","extendObjectFromResponseObject","teamPictureStyle","backgroundImage","team_picture","founderPictureStyle","founder_picture","list","getLessonTeam","getTeamMemberList","l","extend","member","pictureStyle","picture","pullCurrentTeamSelfTeamMember","getSelfTeamMember","self","_self","getSelfTeamMemberAtNote","note_id","selectPage","pageId","selectedPage$","reloadPage","reloadPage$","childPageInited","childPageInited$","setTeamCommentObserver","comment","post","notifyAuthorDownloadObserver","type","isOpen","providedIn","segments","isFounderOrAdmin","some","team_member_type","isFounder","isAdmin","isNormal","InjectionToken","ɵɵdefineInjectable","ɵɵinject","Injectable","Optional","Inject","EventEmitter","Directive","ElementRef","ChangeDetectorRef","Input","Output","HostListener","NgModule","Platform","PlatformModule","DOCUMENT","Meta","EMPTY","BehaviorSubject","delay","take","catchError","takeUntil","ɵngcc0","ɵngcc1","ɵngcc2","SHARE_BUTTONS_CONFIG","IShareButton","SharerMethod","isObject","item","Array","isArray","mergeDeep","target","sources","length","source","shift","Object","assign","getValidUrl","url","fallbackUrl","r","test","warn","printPage","sub","document","defaultView","print","copyToClipboard","params","platform","updater","textArea","createElement","value","decodeURIComponent","body","appendChild","IOS","range","createRange","selectNodeContents","selection","getSelection","removeAllRanges","addRange","readOnly","setSelectionRange","select","execCommand","removeChild","icon","successIcon","text","successText","disabled","err","message","ɵ0","p","description","linkInDescription","ɵ1","SHARE_BUTTONS","facebook","ariaLabel","color","share","desktop","twitter","tags","via","linkedin","title","pinterest","image","reddit","tumblr","mix","vk","telegram","messenger","android","ios","whatsapp","paramsFunc","xing","line","sms","email","func","copy","config","_document","sharerMethod","Anchor","sharerTarget","windowObj","windowFuncName","prop","theme","include","exclude","size","autoSetMeta","windowWidth","windowHeight","moreButtonIcon","lessButtonIcon","config$","setConfig","windowSize","addButton","name","props","ɵfac","ShareService_Factory","t","ɵprov","token","ngDevMode","ShareDirective","_el","_meta","_platform","_share","_cd","_destroyed","_updater","opened","closed","nativeElement","isBrowser","shareButton","getParamsFromMetaTags","getParamsFromInputs","click","open","subscribe","ngOnInit","style","pointerEvents","markForCheck","ngOnChanges","changes","_shareButtonChanged","shareButtonName","_createShareButton","_urlChanged","_getMetaTagContent","location","href","ngOnDestroy","button","classList","remove","_buttonClass","add","setProperty","setAttribute","error","metaUsingProperty","getTag","getAttribute","metaUsingName","change","firstChange","previousValue","currentValue","twitterAccount","sharerLink","ANDROID","finalUrl","_serializeParams","debug","method","linkElement","Window","openWindow","popUpWindow","opener","pollTimer","emit","entries","paramFunc","paramValue","encodeURIComponent","filter","urlParam","join","ShareDirective_Factory","ɵɵdirectiveInject","ɵdir","ɵɵdefineDirective","selectors","hostBindings","ShareDirective_HostBindings","rf","ctx","ɵɵlistener","ShareDirective_click_HostBindingHandler","inputs","outputs","exportAs","features","ɵɵNgOnChangesFeature","ShareModule","withConfig","ngModule","providers","provide","useValue","ShareModule_Factory","ɵmod","ɵɵdefineNgModule","ɵinj","ɵɵdefineInjector","ngJitMode","ɵɵsetNgModuleScope","declarations"],"sourceRoot":"webpack:///"}