@myclub_se/data-access 2.2.2 → 2.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/api-models/api-booking-calendar-slot-session.mjs +1 -1
- package/esm2020/lib/api-models/api-booking-calendar-slot.mjs +1 -1
- package/esm2020/lib/api-models/api-member-team.mjs +1 -1
- package/esm2020/lib/models/booking-calendar-slot-session.mjs +5 -3
- package/esm2020/lib/models/booking-calendar-slot.mjs +4 -2
- package/esm2020/lib/models/member-team.mjs +3 -2
- package/esm2020/lib/services/factories/booking-calendar-slot-factory.mjs +2 -2
- package/esm2020/lib/services/factories/booking-calendar-slot-session-factory.mjs +2 -2
- package/esm2020/lib/services/factories/member-team-factory.mjs +2 -2
- package/fesm2015/myclub_se-data-access.mjs +12 -7
- package/fesm2015/myclub_se-data-access.mjs.map +1 -1
- package/fesm2020/myclub_se-data-access.mjs +12 -7
- package/fesm2020/myclub_se-data-access.mjs.map +1 -1
- package/lib/api-models/api-booking-calendar-slot-session.d.ts +1 -0
- package/lib/api-models/api-booking-calendar-slot.d.ts +1 -0
- package/lib/api-models/api-member-team.d.ts +1 -0
- package/lib/models/booking-calendar-slot-session.d.ts +3 -1
- package/lib/models/booking-calendar-slot.d.ts +3 -1
- package/lib/models/member-team.d.ts +2 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"myclub_se-data-access.mjs","sources":["../../../projects/data-access/src/lib/models/activity.ts","../../../projects/data-access/src/lib/models/activity-extra-member.ts","../../../projects/data-access/src/lib/models/activity-invite.ts","../../../projects/data-access/src/lib/models/activity-location.ts","../../../projects/data-access/src/lib/models/activity-location-group.ts","../../../projects/data-access/src/lib/models/activity-settings.ts","../../../projects/data-access/src/lib/models/activity-type.ts","../../../projects/data-access/src/lib/models/auth/auth.ts","../../../projects/data-access/src/lib/models/auth/auth-member.ts","../../../projects/data-access/src/lib/models/auth/auth-section.ts","../../../projects/data-access/src/lib/models/auth/auth-team.ts","../../../projects/data-access/src/lib/models/auth/auth-team-section.ts","../../../projects/data-access/src/lib/models/authentication.ts","../../../projects/data-access/src/lib/models/booking-calendar.ts","../../../projects/data-access/src/lib/models/booking-calendar-slot.ts","../../../projects/data-access/src/lib/models/booking-calendar-slot-session.ts","../../../projects/data-access/src/lib/models/calendar.ts","../../../projects/data-access/src/lib/models/calendar-event.ts","../../../projects/data-access/src/lib/models/card/card.ts","../../../projects/data-access/src/lib/models/card/card-deal.ts","../../../projects/data-access/src/lib/models/card/card-logo.ts","../../../projects/data-access/src/lib/models/card/card-logo-urls.ts","../../../projects/data-access/src/lib/models/card/card-member-ticket.ts","../../../projects/data-access/src/lib/models/card/card-ticket.ts","../../../projects/data-access/src/lib/models/card/card-ticket-location.ts","../../../projects/data-access/src/lib/models/card/card-theme.ts","../../../projects/data-access/src/lib/models/card/home-team.ts","../../../projects/data-access/src/lib/models/card/member-card.ts","../../../projects/data-access/src/lib/models/card/search-member-card.ts","../../../projects/data-access/src/lib/models/club.ts","../../../projects/data-access/src/lib/models/club-image.ts","../../../projects/data-access/src/lib/models/club-section.ts","../../../projects/data-access/src/lib/models/collection.ts","../../../projects/data-access/src/lib/models/contact.ts","../../../projects/data-access/src/lib/models/directory.ts","../../../projects/data-access/src/lib/models/email.ts","../../../projects/data-access/src/lib/models/event.ts","../../../projects/data-access/src/lib/models/external-link.ts","../../../projects/data-access/src/lib/models/file-object.ts","../../../projects/data-access/src/lib/models/general-image.ts","../../../projects/data-access/src/lib/models/image-urls.ts","../../../projects/data-access/src/lib/models/invoice/member-fee.ts","../../../projects/data-access/src/lib/models/invoice/member-invoice.ts","../../../projects/data-access/src/lib/models/invoice/member-invoice-row.ts","../../../projects/data-access/src/lib/models/invoice/payment-attempt.ts","../../../projects/data-access/src/lib/models/invoice/payment-types/credit-card.ts","../../../projects/data-access/src/lib/models/invoice/payment-types/giro.ts","../../../projects/data-access/src/lib/models/invoice/payment-types/swish.ts","../../../projects/data-access/src/lib/models/invoice/payment-types/zimpler.ts","../../../projects/data-access/src/lib/models/invoice/search-member-invoice.ts","../../../projects/data-access/src/lib/models/invoice/swish-qr-code.ts","../../../projects/data-access/src/lib/models/invoice/unpaid-member-invoice.ts","../../../projects/data-access/src/lib/models/member/member.ts","../../../projects/data-access/src/lib/models/member/member-attribute.ts","../../../projects/data-access/src/lib/models/member/member-contact.ts","../../../projects/data-access/src/lib/models/member/member-function.ts","../../../projects/data-access/src/lib/models/member/member-validation-settings.ts","../../../projects/data-access/src/lib/models/member/search-member.ts","../../../projects/data-access/src/lib/models/member-activity-invite.ts","../../../projects/data-access/src/lib/models/member-public-form.ts","../../../projects/data-access/src/lib/models/member-team.ts","../../../projects/data-access/src/lib/models/member-team-through.ts","../../../projects/data-access/src/lib/models/news.ts","../../../projects/data-access/src/lib/models/partner.ts","../../../projects/data-access/src/lib/models/role.ts","../../../projects/data-access/src/lib/models/search-club.ts","../../../projects/data-access/src/lib/models/search-team.ts","../../../projects/data-access/src/lib/models/section.ts","../../../projects/data-access/src/lib/models/token.ts","../../../projects/data-access/src/lib/models/user.ts","../../../projects/data-access/src/lib/models/user-notification.ts","../../../projects/data-access/src/lib/services/api.service.ts","../../../projects/data-access/src/lib/services/factories/search-member-factory.ts","../../../projects/data-access/src/lib/services/factories/member-attribute-factory.ts","../../../projects/data-access/src/lib/services/factories/contact-factory.ts","../../../projects/data-access/src/lib/services/factories/member-contact-factory.ts","../../../projects/data-access/src/lib/services/factories/member-function-factory.ts","../../../projects/data-access/src/lib/services/factories/member-validation-settings-factory.ts","../../../projects/data-access/src/lib/services/factories/member-factory.ts","../../../projects/data-access/src/lib/services/factories/activity-extra-member-factory.ts","../../../projects/data-access/src/lib/services/factories/member-invite-factory.ts","../../../projects/data-access/src/lib/services/factories/activity-factory.ts","../../../projects/data-access/src/lib/services/factories/unpaid-invoice-factory.ts","../../../projects/data-access/src/lib/services/factories/activity-invite-factory.ts","../../../projects/data-access/src/lib/services/factories/activity-location-factory.ts","../../../projects/data-access/src/lib/services/factories/activity-settings-factory.ts","../../../projects/data-access/src/lib/services/factories/activity-type-factory.ts","../../../projects/data-access/src/lib/services/factories/auth-section-factory.ts","../../../projects/data-access/src/lib/services/factories/auth-member-factory.ts","../../../projects/data-access/src/lib/services/factories/auth-team-section-factory.ts","../../../projects/data-access/src/lib/services/factories/auth-team-factory.ts","../../../projects/data-access/src/lib/services/factories/auth-factory.ts","../../../projects/data-access/src/lib/services/factories/image-urls-factory.ts","../../../projects/data-access/src/lib/services/factories/general-image-factory.ts","../../../projects/data-access/src/lib/services/factories/partner-factory.ts","../../../projects/data-access/src/lib/services/factories/card-deal-factory.ts","../../../projects/data-access/src/lib/services/factories/card-logo-urls-factory.ts","../../../projects/data-access/src/lib/services/factories/card-logo-factory.ts","../../../projects/data-access/src/lib/services/factories/card-theme-factory.ts","../../../projects/data-access/src/lib/services/factories/card-factory.ts","../../../projects/data-access/src/lib/services/factories/card-member-ticket-factory.ts","../../../projects/data-access/src/lib/services/factories/home-team-factory.ts","../../../projects/data-access/src/lib/services/factories/card-ticket-location-factory.ts","../../../projects/data-access/src/lib/services/factories/card-ticket-factory.ts","../../../projects/data-access/src/lib/services/factories/club-factory.ts","../../../projects/data-access/src/lib/services/factories/club-image-factory.ts","../../../projects/data-access/src/lib/services/factories/club-section-factory.ts","../../../projects/data-access/src/lib/services/factories/credit-card-factory.ts","../../../projects/data-access/src/lib/services/factories/file-factory.ts","../../../projects/data-access/src/lib/services/factories/directory-factory.ts","../../../projects/data-access/src/lib/services/factories/event-factory.ts","../../../projects/data-access/src/lib/services/factories/external-link-factory.ts","../../../projects/data-access/src/lib/services/factories/giro-factory.ts","../../../projects/data-access/src/lib/services/factories/member-card-factory.ts","../../../projects/data-access/src/lib/services/factories/member-fee-factory.ts","../../../projects/data-access/src/lib/services/factories/swish-factory.ts","../../../projects/data-access/src/lib/services/factories/zimpler-factory.ts","../../../projects/data-access/src/lib/services/factories/member-invoice-row-factory.ts","../../../projects/data-access/src/lib/services/factories/member-invoice-factory.ts","../../../projects/data-access/src/lib/services/factories/member-public-form-factory.ts","../../../projects/data-access/src/lib/services/factories/section-factory.ts","../../../projects/data-access/src/lib/services/factories/member-team-factory.ts","../../../projects/data-access/src/lib/services/factories/member-team-through-factory.ts","../../../projects/data-access/src/lib/services/factories/news-factory.ts","../../../projects/data-access/src/lib/services/factories/payment-attempt-factory.ts","../../../projects/data-access/src/lib/services/factories/search-club-factory.ts","../../../projects/data-access/src/lib/services/factories/search-member-card-factory.ts","../../../projects/data-access/src/lib/services/factories/search-member-invoice-factory.ts","../../../projects/data-access/src/lib/services/factories/search-member-team-through-factory.ts","../../../projects/data-access/src/lib/services/factories/token-factory.ts","../../../projects/data-access/src/lib/services/factories/user-factory.ts","../../../projects/data-access/src/lib/services/factories/user-notification-factory.ts","../../../projects/data-access/src/lib/services/auth.service.ts","../../../projects/data-access/src/lib/services/factories/activity-location-group-factory.ts","../../../projects/data-access/src/lib/services/activity.service.ts","../../../projects/data-access/src/lib/services/factories/booking-calendar-factory.ts","../../../projects/data-access/src/lib/services/factories/booking-calendar-slot-session-factory.ts","../../../projects/data-access/src/lib/services/factories/booking-calendar-slot-factory.ts","../../../projects/data-access/src/lib/services/booking-calendar.service.ts","../../../projects/data-access/src/lib/services/club.service.ts","../../../projects/data-access/src/lib/services/constant.service.ts","../../../projects/data-access/src/lib/services/email.service.ts","../../../projects/data-access/src/lib/services/external-link.service.ts","../../../projects/data-access/src/lib/services/file.service.ts","../../../projects/data-access/src/lib/services/invoice/invoice.service.ts","../../../projects/data-access/src/lib/api-models/api-invoice/api-payment-attempt-create.ts","../../../projects/data-access/src/lib/services/invoice/payment-attempt.service.ts","../../../projects/data-access/src/lib/services/member.service.ts","../../../projects/data-access/src/lib/services/member-card.service.ts","../../../projects/data-access/src/lib/services/member-public-form.service.ts","../../../projects/data-access/src/lib/services/news.service.ts","../../../projects/data-access/src/lib/services/section.service.ts","../../../projects/data-access/src/lib/services/factories/search-team-factory.ts","../../../projects/data-access/src/lib/services/team.service.ts","../../../projects/data-access/src/lib/services/token.service.ts","../../../projects/data-access/src/lib/services/user.service.ts","../../../projects/data-access/src/lib/services/user-notification.service.ts","../../../projects/data-access/src/lib/authentication/authentication.service.ts","../../../projects/data-access/src/lib/authentication/authentication.interceptor.ts","../../../projects/data-access/src/lib/authentication/authentication.config.ts","../../../projects/data-access/src/lib/authentication/guards/authenticated.guard.ts","../../../projects/data-access/src/lib/authentication/guards/handle-grant-token.guard.ts","../../../projects/data-access/src/lib/data-access.module.ts","../../../projects/data-access/src/index.ts","../../../projects/data-access/src/myclub_se-data-access.ts"],"sourcesContent":["import { MemberActivityInvite } from \"./member-activity-invite\";\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\n\nexport class Activity {\n static asFormGroup(activity: Activity | null = null): FormGroup {\n return new FormGroup(\n {\n id: new FormControl<string>(activity?.id || ''),\n activity_group_id: new FormControl<string | null>(activity?.activity_group_id || null, {nonNullable: false}),\n activity_type_id: new FormControl<string>(activity?.activity_type_id || '', [Validators.required]),\n club_id: new FormControl<string>(activity?.club_id || ''),\n location_id: new FormControl<string>(activity?.location_id || '', [Validators.required]),\n team_id: new FormControl<string>(activity?.team_id || ''),\n activity_location: new FormControl<string>(activity?.activity_location || '', [Validators.required]),\n activity_type_name: new FormControl<string>(activity?.activity_type_name || ''),\n allow_maybe: new FormControl<boolean>(typeof activity?.allow_maybe !== 'undefined' ? activity.allow_maybe : false),\n day: new FormControl<string>(activity?.day || '', [Validators.required]),\n description: new FormControl<string>(activity?.description || ''),\n end_time: new FormControl<string>(activity?.end_time || '', [Validators.required]),\n file: new FormControl<string>(''),\n invitation_text: new FormControl<string>(activity?.invitation_text || ''),\n invite_first_days: new FormControl<number>(activity?.invite_first_days || 7),\n invite_groups: new FormControl<Array<string>>(activity?.invite_groups || []),\n invite_hide_before_sent: new FormControl<boolean>(typeof activity?.invite_hide_before_sent !== 'undefined' ? activity?.invite_hide_before_sent : false),\n invite_last_response_date: new FormControl<string>(activity?.invite_last_response_date || ''),\n invite_remind: new FormControl<number>(activity?.invite_remind || 0),\n invite_remind_receivers: new FormControl<string>(activity?.invite_remind_receivers || ''),\n invite_second_days: new FormControl<number>(activity?.invite_second_days || 2),\n invite_settings: new FormControl<string>(activity?.invite_settings || ''),\n last_response_date: new FormControl<string>(activity?.last_response_date || ''),\n max_num_attendants: new FormControl<number>(activity?.max_num_attendants || 0),\n max_num_attendants_type: new FormControl<string>(activity?.max_num_attendants_type || 'only_participants'),\n meet_up_place: new FormControl<string>(activity?.meet_up_place || ''),\n meet_up_time: new FormControl<number>(activity?.meet_up_time || 0),\n repeat: new FormControl<string>(activity?.repeat || 'none'),\n repeat_num: new FormControl<number>(activity?.repeat_num || 6),\n repeat_to_day: new FormControl<string>(activity?.repeat_to_day || ''),\n repeat_type: new FormControl<string>(activity?.repeat_type || ''),\n show_other_invited: new FormControl<string>(activity?.show_other_invited || 'all'),\n start_time: new FormControl<string>(activity?.start_time ||'', [Validators.required]),\n title: new FormControl<string>(activity?.title || '', [Validators.required]),\n use_invite: new FormControl<boolean>(typeof activity?.use_invite !== 'undefined' ? activity?.use_invite : false),\n update_repeating: new FormControl<boolean>(typeof activity?.update_repeating !== 'undefined' ? activity?.update_repeating : false)\n }\n );\n }\n\n constructor(public id: string, public activity_group_id: string | null, public activity_type_id: string,\n public club_id: string, public location_id: string, public team_id: string,\n public activity_location: string, public activity_type_name: string,\n public allow_maybe: boolean, public calendar_name: string, public created: string,\n public current_num_attendants: number, public day: string, public description: string,\n public end_time: string, public file: string | null, public invitation_text: string,\n public invite_first_days: number, public invite_groups: Array<string>,\n public invite_hide_before_sent: boolean, public invite_last_response_date: string | null,\n public invite_remind: number, public invite_remind_receivers: string, public invite_second_days: number,\n public invite_settings: string, public invited_members: Array<MemberActivityInvite>,\n public last_response_date: string, public max_num_attendants: number,\n public max_num_attendants_type: string, public meet_up_place: string, public meet_up_time: number,\n public meet_up_time_display: string, public repeat: string, public repeat_num: number,\n public repeat_to_day: string, public repeat_type: string, public show_other_invited: string,\n public start_time: string, public title: string, public updated: string,\n public use_invite: boolean, public update_repeating: boolean) {\n }\n}\n","import { Member, SearchMember } from './member';\n\nexport class ActivityExtraMember {\n constructor(public id: string, public member_id: string, public team_id: string, public created: string,\n public leader: boolean, public member: SearchMember | Member, public member_name: string) {\n }\n}\n","import { Activity } from './activity';\nimport { SearchMember } from './member';\nimport { UnpaidMemberInvoice } from './invoice';\n\nexport class ActivityInvite {\n\n constructor(public id: string, public activity: Activity, public comment: string, public created: string,\n public readonly has_unpaid_invoices: boolean, public last_invite: string, public readonly leader:boolean,\n public member: SearchMember, public next_invite: string | null, public reminded: string,\n public response_date: string, public status: string, public token: string,\n public unpaid_invoices: Array<UnpaidMemberInvoice>, public updated: string) {\n }\n\n}\n","export class ActivityLocation {\n constructor(public id: string, public club_id: string, public section_id: string | null, public active: boolean,\n public mun_location_city_area: string, public mun_location_name: string, public name: string) {\n }\n}\n","import {ActivityLocation} from \"./activity-location\";\n\nexport class ActivityLocationGroup {\n constructor(\n public id: string,\n public club_id: string,\n public section_id: string | null,\n public active: boolean,\n public name: string,\n public locations: Array<ActivityLocation> | null,\n ) {\n }\n}\n","import { OptionInterface } from '../interfaces';\n\nexport class ActivitySettings {\n constructor(public dayOptions: Array<OptionInterface>, public hourOptions: Array<OptionInterface>,\n public inviteGroupOptions: Array<OptionInterface>, public inviteSettingsOptions: Array<OptionInterface>,\n public maxAttendanceOptions: Array<OptionInterface>, public meetUpTimeOptions: Array<OptionInterface>,\n public remindReceiverOptions: Array<OptionInterface>, public repeatOptions: Array<OptionInterface>,\n public repeatTypeOptions: Array<OptionInterface>) {\n }\n}\n","export class ActivityType {\n constructor(public id: string, public club_id: string, public section_id: string | null,\n public active: boolean, public base_type: string, public name: string) {\n }\n}\n","import { AuthMember } from './auth-member';\nimport { AuthSection } from './auth-section';\nimport { AuthTeam } from './auth-team';\n\nexport class Auth {\n constructor(\n public id: string,\n public name: string,\n public clubAdmin: boolean,\n public isSectionClub: boolean,\n public members: AuthMember[],\n public registrationEnabled: boolean,\n public sections: AuthSection[],\n public siteEnabled: boolean,\n public teams: AuthTeam[],\n public user_name: string\n ) {}\n}\n","\n\nexport class AuthMember {\n public eventColor = '';\n public eventBackgroundColor = '';\n\n constructor(public id: string, public name: string, public calendar_url: string) {}\n}\n","export class AuthSection {\n constructor(public id: string, public name: string) {}\n}\n","import { AuthTeamSection } from './auth-team-section';\n\nexport class AuthTeam {\n constructor(public id: string, public readonly calendar_url: string, public readonly name: string,\n public section: AuthTeamSection | null) {}\n}\n","export class AuthTeamSection {\n constructor(public id: string, public name: string) {}\n}\n","export class Authentication {\n constructor(public accessToken: string, public refreshToken: string) {}\n}\n","import {FormControl, FormGroup, Validators} from \"@angular/forms\";\n\nexport class BookingCalendar {\n static asFormGroup(calendar?: BookingCalendar) {\n return new FormGroup({\n id: new FormControl<string>(calendar?.id || ''),\n club_id: new FormControl<string>(calendar?.club_id || ''),\n section_id: new FormControl<string | null>(calendar?.section_id || ''),\n team_id: new FormControl<string | null>(calendar?.team_id || ''),\n club_name: new FormControl<string>(calendar?.club_name || ''),\n color: new FormControl<string>(calendar?.color || '', Validators.required),\n name: new FormControl<string>(calendar?.name || '', Validators.required),\n section_name: new FormControl<string | null>(calendar?.section_name || ''),\n team_name: new FormControl<string | null>(calendar?.team_name || '')\n });\n }\n\n constructor(\n public id: string,\n public club_id: string,\n public section_id: string | null,\n public team_id: string | null,\n public club_name: string,\n public color: string,\n public name: string,\n public section_name: string | null,\n public team_name: string | null\n ) { }\n}\n","import {BookingCalendarSlotSession} from \"./booking-calendar-slot-session\";\nimport {BookingCalendarSlotType} from \"../types/booking-calendar-slot-type\";\nimport {FormControl, FormGroup, Validators} from \"@angular/forms\";\nimport {BookingCalendarSlotReservedTimeType} from \"../types/booking-calendar-slot-reserved-time-type\";\nimport {BookingCalendarSlotReservedTimePosition} from \"../types/booking-calendar-slot-reserved-time-position\";\n\nexport class BookingCalendarSlot {\n static asFormGroup(slot?: BookingCalendarSlot) {\n return new FormGroup({\n id: new FormControl<string>(slot?.id || ''),\n calendar_id: new FormControl<string>(slot?.calendar_id || ''),\n location_id: new FormControl<string>(slot?.location_id || '', Validators.required),\n day: new FormControl<string | null>(slot?.day || '', Validators.required),\n end_time: new FormControl<string>(slot?.end_time || '', Validators.required),\n group_id: new FormControl<string | null>(slot?.group_id || null, {nonNullable: false}),\n number_of_available_sessions: new FormControl<number>(slot?.number_of_available_sessions || 0, Validators.required),\n start_time: new FormControl<string>(slot?.start_time || '', Validators.required),\n type: new FormControl<string>(slot?.type || '', Validators.required),\n repeat: new FormControl<string>(slot?.repeat || 'none'),\n repeat_num: new FormControl<number | null>(slot?.repeat_num || 6, Validators.max(24)),\n repeat_to_day: new FormControl<string | null>(slot?.repeat_to_day || ''),\n repeat_type: new FormControl<string | null>(slot?.repeat_type || ''),\n update_repeating: new FormControl<boolean>(typeof slot?.update_repeating !== 'undefined' ? slot?.update_repeating : false),\n reserved_time_enabled: new FormControl<boolean>(typeof slot?.reserved_time_enabled !== 'undefined' ? slot?.reserved_time_enabled : false),\n reserved_time: new FormControl<string>(slot?.reserved_time || '00:00'),\n reserved_time_type: new FormControl<string>(slot?.reserved_time_type || ''),\n reserved_time_position: new FormControl<string>(slot?.reserved_time_position || ''),\n });\n }\n\n constructor(\n public id: string,\n public calendar_id: string,\n public location_id: string,\n public color: string,\n public day: string,\n public end_time: string,\n public group_id: string | null,\n public location_name: string,\n public number_of_available_sessions: number,\n public sessions: Array<BookingCalendarSlotSession>,\n public open_sessions: Array<BookingCalendarSlotSession>,\n public start_time: string,\n public type: BookingCalendarSlotType,\n public repeat: string,\n public update_repeating: boolean,\n public reserved_time_enabled: boolean,\n public repeat_num?: number | null,\n public repeat_to_day?: string | null,\n public repeat_type?: string | null,\n public reserved_time?: string | null,\n public reserved_time_type?: BookingCalendarSlotReservedTimeType | null,\n public reserved_time_position?: BookingCalendarSlotReservedTimePosition | null,\n ) {\n }\n}\n","import {FormControl, FormGroup, Validators} from \"@angular/forms\";\n\nexport class BookingCalendarSlotSession {\n static asFormGroup(session?: BookingCalendarSlotSession) {\n return new FormGroup({\n id: new FormControl<string>(session?.id || ''),\n section_id: new FormControl<string | null>(session?.section_id || ''),\n slot_id: new FormControl<string>(session?.slot_id || '', Validators.required),\n team_id: new FormControl<string | null>(session?.team_id || '', Validators.required),\n end_time: new FormControl<string>(session?.end_time || '', Validators.required),\n section_name: new FormControl<string | null>(session?.section_name || ''),\n start_time: new FormControl<string>(session?.start_time || '', Validators.required),\n team_name: new FormControl<string | null>(session?.team_name || ''),\n is_overbooked: new FormControl<boolean>(session?.is_overbooked || false),\n type: new FormControl<string>(session?.type || '')\n });\n }\n\n constructor(\n public id: string,\n public section_id: string | null,\n public slot_id: string,\n public team_id: string | null,\n public end_time: string,\n public section_name: string | null,\n public start_time: string,\n public team_name: string | null,\n public is_overbooked: boolean,\n public type: string\n ) { }\n}\n","export class Calendar {\n constructor(\n public id: string,\n public club_id: string,\n public section_id: string | null,\n public name: string,\n public types_to_show: string\n ) { }\n}\n","import { Calendar } from \"./calendar\";\n\nexport class CalendarEvent {\n constructor(\n public id: string,\n public calendar: Calendar,\n public readonly created: string,\n public day: string,\n public description: string,\n public end_time: string,\n public location: string,\n public meet_up_place: string,\n public meet_up_time: number,\n public meet_up_time_display: string,\n public push_to_all: boolean,\n public sequence: number,\n public start_time: string,\n public title: string,\n public readonly updated: string\n ) {\n }\n}\n","import { CardLogo } from './card-logo';\nimport { CardTheme } from './card-theme';\n\nexport class Card {\n constructor(public id: string, public deals_count: number, public header_1: string, public name: string,\n public logo: CardLogo, public theme: CardTheme, public ticket_count: number, public use_pdf_version: boolean) { }\n}\n","import { Partner } from '..';\n\nexport class CardDeal {\n constructor(public id: string, public partner: Partner, public text: string, public title: string,\n public url: string) {\n }\n}\n","import { CardLogoUrls } from './card-logo-urls';\n\nexport class CardLogo {\n constructor(public id: string, public name: string, public urls: CardLogoUrls) { }\n}\n","export class CardLogoUrls {\n constructor(public lg: string, public md: string, public sm: string, public w16: string, public w32: string,\n public w64: string, public w180: string, public w192: string) { }\n}\n","export class CardMemberTicket {\n constructor(public id: string, public member_id: string, public ticket_id: string, public member_name: string,\n public readonly ticket_image_url: string | null, public ticket_number: number) {\n }\n}\n","import { CardMemberTicket, CardTicketLocation, HomeTeam } from '.';\nimport { GeneralImage } from '..';\n\nexport class CardTicket {\n constructor(public id: string, public activation_end_hours: number, public readonly activation_end_time: string,\n public activation_start_hours: number, public readonly activation_start_time: string,\n public away_team: string, public card_member_ticket: CardMemberTicket | null, public description: string,\n public event_time: string, public home_team: HomeTeam | null, public image: GeneralImage | null,\n public location: CardTicketLocation, public name: string, public ticket_type: string,\n public readonly ticket_type_nice: string, public readonly uses_pin: boolean) {\n }\n}\n","export class CardTicketLocation {\n constructor(public id: string, public club_id: string, public section_id: string, public location: string) {\n }\n}\n","import { ImageUrls } from '../image-urls';\n\nexport class CardTheme {\n constructor(public id: string, public background_color: string, public background_image_urls: ImageUrls,\n public name: string, public text_color: string) { }\n}\n","import { GeneralImage } from '..';\n\nexport class HomeTeam {\n constructor(public id: string, public logo: GeneralImage | null, public name: string) {\n }\n}\n","import { Card } from './card';\n\nexport class MemberCard {\n constructor(public id: string, public card: Card, public header_2: string, public member_name: string,\n public membership_text: string, public name: string, public pdf_url: string) { }\n}\n","export class SearchMemberCard {\n constructor(public id: string, public name: string, public notification_count: number, public pdf_url: string | null) {\n }\n}\n","export class Club {\n constructor(public id: string, public name: string) {\n }\n}\n","export class ClubImage {\n constructor(public clubId: string, public sectionId: string, public comment: string, public created: string,\n public image: string, public imageSmPath: string, public imageLgPath: string, public inUse: boolean,\n public isLogo: boolean, public originalHeight: number, public originalWidth: number,\n public title: string, public updated: string) {\n }\n}\n","export class ClubSection {\n constructor(public id: string, public name: string) {}\n}\n","export class Collection<T> {\n constructor(public count: number, public next: string | null, public previous: string | null,\n private resources: T[]) {}\n\n [Symbol.iterator]() {\n return this.resources.values();\n }\n\n public toArray(): T[] {\n return this.resources;\n }\n}\n","import { FormControl, FormGroup, Validators } from '@angular/forms';\n\nexport class Contact {\n static asFormGroup(contact?: Contact): FormGroup {\n return new FormGroup({\n id: new FormControl<string>(contact?.id || ''),\n club_id: new FormControl<string>(contact?.club_id || ''),\n member_id: new FormControl<string>(contact?.member_id || ''),\n address1: new FormControl<string>(contact?.address1 || ''),\n address2: new FormControl<string>(contact?.address2 || ''),\n address3: new FormControl<string>(contact?.address3 || ''),\n country: new FormControl<string>(contact?.country || ''),\n district: new FormControl<string>(contact?.district || ''),\n email: new FormControl<string>(contact?.email || '', Validators.email),\n first_name: new FormControl<string>(contact?.first_name || '', Validators.required),\n home_phone: new FormControl<string>(contact?.home_phone || ''),\n last_name: new FormControl<string>(contact?.last_name || '', Validators.required),\n mobile_phone: new FormControl<string>(contact?.mobile_phone || ''),\n work_phone: new FormControl<string>(contact?.work_phone || ''),\n zip: new FormControl<string>(contact?.zip || '')\n });\n }\n\n get name(): string {\n if (this.first_name) {\n return [this.first_name, this.last_name].join(' ');\n }\n\n return this.email;\n }\n\n constructor(public id: string, public club_id: string, public member_id: string, public address1: string,\n public address2: string, public address3: string, public country: string, public district: string,\n public email: string, public first_name: string, public home_phone: string, public last_name: string,\n public mobile_phone: string, public work_phone: string, public zip: string) { }\n}\n","import { FileObject } from './file-object';\n\nexport class Directory {\n constructor(public id: string, public club_id: string, public section_id: string | null, public team_id: string | null,\n public readonly created: string, public files: Array<FileObject>, public name: string,\n public readonly location_name: string, public readonly updated: string) { }\n\n public belongsToTeam(teamId: string | null = null) {\n if (teamId) {\n return this.team_id === teamId;\n }\n return this.team_id !== null;\n }\n\n public belongsToSection(sectionId: string | null = null) {\n if (sectionId) {\n return this.section_id === sectionId;\n }\n return this.section_id !== null;\n }\n}\n","import { EmailRecipientInterface } from '../interfaces';\n\nexport class Email {\n constructor(public body: string, public subject: string, public recipients: Array<EmailRecipientInterface> = []) {\n }\n}\n","export class Event {\n constructor(public id: string, public activity_id: string | null, public activity_type: string | null,\n public base_background_color: string | null, public base_color: string | null, public base_name: string | null,\n public calendar_name: string, public description: string | null, public end: string,\n public invitation_id: string | null, public invitation_response: string | null, public location: string,\n public meet_up_place: string | null, public meet_up_time: string, public member_id: string,\n public start: string, public title: string, public type: string) { }\n}\n","export class ExternalLink {\n constructor(public text: string, public value: string) {\n }\n}\n","export class FileObject {\n constructor(public id: string, public readonly created: string, public file: File | null,\n public member: boolean | null, public name: string, public section: boolean | null,\n public team: boolean | null, public readonly updated: string, public readonly url: string) { }\n}\n","import { ImageUrls } from './image-urls';\n\nexport class GeneralImage {\n constructor(public id: string, public name: string, public urls: ImageUrls) {\n }\n}\n","export class ImageUrls {\n constructor(public lg: string, public md: string, public raw: string, public sm: string, public xs: string) { }\n}\n","export class MemberFee {\n constructor(public id: string, public clubId: string, public sectionId: string | null, public name: string) {}\n}\n","import { CreditCard, Giro, Swish, Zimpler } from './payment-types';\nimport { MemberInvoiceRow } from './member-invoice-row';\n\nexport class MemberInvoice {\n constructor(public id: string, public amount: number, public amountPaid: number, public balance: number,\n public clubBillId: number, public clubName: string, public creditCard: CreditCard | null,\n public datePaid: string, public dueDate: string, public giro: Giro | null,\n public invoiceRows: Array<MemberInvoiceRow>, public invoiceText: string,\n public isPaid: boolean, public memberId: string, public payee: string,\n public paymentUrl: string, public reference: string, public swish: Swish | null,\n public zimpler: Zimpler | null) { }\n}\n","import { MemberFee } from './member-fee';\n\nexport class MemberInvoiceRow {\n constructor(public id: string, public amount: number, public amountPaid: number,\n public balance: number, public created: string, public datePaid: string,\n public fee: MemberFee, public hasCreditType: string, public invoice: string,\n public isCredit: boolean, public isPaid: boolean, public updated: string) {}\n}\n","import {\n PaymentAttemptStatusType,\n PaymentAttemptType\n} from '../../types';\nimport {\n PaymentAttemptCreditCardDataType,\n PaymentAttemptSwishDataType,\n PaymentAttemptZimplerDataType\n} from './payment-attempt-data-types';\n\n\nexport class PaymentAttempt {\n constructor(public readonly id: number, public readonly amount: number, public readonly error: unknown,\n public invoiceId: string, public paidDate: string,\n public readonly paymentData: PaymentAttemptCreditCardDataType | PaymentAttemptSwishDataType | PaymentAttemptZimplerDataType,\n public status: PaymentAttemptStatusType, public readonly type: PaymentAttemptType) {}\n}\n","export class CreditCard {\n constructor(public clubId: string, public sectionId: string,\n public defaultActivated: boolean, public merchantId: number, public name: string,\n public paymentTermsName: string, public paymentTermsOrganisationId: string,\n public paymentTermsUrl: string, public rsaKey: string, public status: string,\n public testAccount: boolean\n ) {}\n}\n","export class Giro {\n constructor(public clubId: string, public sectionId: string, public giroType: string,\n public name: string, public number: string, public ocr: boolean) {}\n}\n","export class Swish {\n constructor(public clubId: string, public sectionId: string,\n public certificateValidUntil: string, public defaultActivated: boolean, public name: string,\n public paymentTermsName: string, public paymentTermsOrganisationId: string, public paymentTermsUrl: string,\n public status: string, public swishPayeeAlias: string, public testAccount: boolean, public usePaymentTerms: boolean,\n public usesMyClubCertificate: boolean) {}\n}\n","export class Zimpler {\n constructor(public clubId: string, public sectionId: string,\n public defaultActivated: boolean, public merchantId: string, public name: string,\n public status: string, public testAccount: boolean) {}\n}\n","export class SearchMemberInvoice {\n constructor(public id: string, public amount: number, public amountPaid: number, public balance: number,\n public clubBillId: string, public datePaid: string, public dueDate: string, public isPaid: boolean,\n public member: string) {}\n\n is_due() {\n return new Date().toISOString() > this.dueDate;\n }\n}\n","export class SwishQrCode {\n constructor(public qrCode: string) {}\n}\n","export class UnpaidMemberInvoice {\n constructor(public id: string, public club_bill_id: string, public member_id: string, public token: string) {\n }\n}\n","import { MemberAttribute, MemberContact, MemberFunction, MemberValidationSettings } from '.';\nimport { SexType } from '../../types';\nimport { FormArray, FormControl, FormGroup, Validators } from '@angular/forms';\n\nexport class Member {\n static asFormGroup(member: Member | null = null): FormGroup {\n const attributes: Array<FormGroup> = [];\n const contacts: Array<FormGroup> = [];\n const functions: Array<FormGroup> = [];\n\n if (member?.attributes) {\n member.attributes.forEach((attribute: MemberAttribute) => attributes.push(MemberAttribute.asFormGroup(attribute)));\n }\n\n if (member?.contacts) {\n member.contacts.forEach((memberContact: MemberContact) => contacts.push(MemberContact.asFormGroup(memberContact)));\n }\n\n if (member?.functions) {\n member.functions.forEach((memberFunction: MemberFunction) => functions.push(MemberFunction.asFormGroup(memberFunction)));\n }\n\n return new FormGroup(\n {\n id: new FormControl<string>(member?.id || ''),\n club_id: new FormControl<string>(member?.club_id || ''),\n address1: new FormControl<string>(member?.address1 || ''),\n address2: new FormControl<string>(member?.address2 || ''),\n attributes: new FormArray(attributes),\n birth_date: new FormControl<string>(member?.birth_date || ''),\n comment: new FormControl<string | null>(member?.comment || ''),\n contacts: new FormArray(contacts),\n country: new FormControl<string>(member?.country || ''),\n district: new FormControl<string>(member?.district || ''),\n email: new FormControl<string>(member?.email || '', Validators.email),\n first_name: new FormControl<string>(member?.first_name || '', Validators.required),\n functions: new FormArray(functions),\n home_phone: new FormControl<string>(member?.home_phone || ''),\n last_name: new FormControl<string>(member?.last_name || '', Validators.required),\n mobile_phone: new FormControl<string>(member?.mobile_phone || ''),\n public_member_id: new FormControl<number>(member?.public_member_id || 0),\n sex: new FormControl<string>(member?.sex || ''),\n work_phone: new FormControl<string>(member?.work_phone || ''),\n zip: new FormControl<string>(member?.zip || '')\n }\n );\n }\n\n get name(): string {\n if (this.first_name) {\n return [this.first_name, this.last_name].join(' ');\n }\n\n return this.email;\n }\n\n constructor(public id: string, public readonly club_id: string, public address1: string, public address2: string,\n public address_field: string, public attributes: Array<MemberAttribute>, public birth_date: string,\n public readonly calendar_url: string, public readonly comment: string | null,\n public contacts: Array<MemberContact>, public country: string, public readonly created: string,\n public district: string, public email: string, public first_name: string,\n public readonly functions: Array<MemberFunction>, public home_phone: string,\n public image: string, public last_name: string, public mobile_phone: string, public public_member_id: number,\n public sex: SexType, public readonly updated: string,\n public readonly validation_settings: MemberValidationSettings, public work_phone: string,\n public zip: string) {\n }\n}\n","import { AttributeType } from '../../types';\nimport { OptionInterface } from '../../interfaces';\nimport { FormArray, FormControl, FormGroup } from '@angular/forms';\n\nexport class MemberAttribute {\n static asFormGroup(attribute: MemberAttribute | null = null) {\n const attributeOptions = new FormArray(attribute?.options?.map((option: OptionInterface) => new FormGroup({\n text: new FormControl<string>(option.text),\n value: new FormControl<string>(option.value)\n })) || []);\n\n return new FormGroup({\n field_id: new FormControl<string>(attribute?.field_id || ''),\n member_id: new FormControl<string>(attribute?.member_id || ''),\n leader_editable: new FormControl<boolean>(attribute?.leader_editable || false),\n member_editable: new FormControl<boolean>(attribute?.member_editable || false),\n name: new FormControl<string>(attribute?.name || ''),\n options: attributeOptions,\n type: new FormControl<string>(attribute?.type || 'text'),\n value: new FormControl<string | boolean | null>(attribute?.type === 'bool' ? attribute?.value : attribute?.value || '')\n });\n }\n\n constructor(public display_value: string, public field_id: string, public leader_editable: boolean,\n public member_id: string, public member_editable: boolean, public name: string,\n public options: Array<OptionInterface>, public order: number, public section_id: string | null,\n public type: AttributeType, public value: string | boolean | null) { }\n}\n","import { Contact } from '..';\nimport { ContactType } from '../../types';\nimport { FormControl, FormGroup } from '@angular/forms';\n\nexport class MemberContact {\n static asFormGroup(memberContact?: MemberContact): FormGroup {\n return new FormGroup({\n id: new FormControl<string>(memberContact?.id || ''),\n club_id: new FormControl(memberContact?.club_id || ''),\n member_id: new FormControl<string>(memberContact?.member_id || ''),\n contact: Contact.asFormGroup(memberContact?.contact),\n contact_type: new FormControl<string>(memberContact?.contact_type || '')\n })\n }\n\n constructor(public id: string, public club_id: string, public member_id: string, public contact: Contact,\n public contact_type: ContactType) {\n }\n}\n","import { FormControl, FormGroup } from '@angular/forms';\n\nexport class MemberFunction {\n static asFormGroup(memberFunction: MemberFunction | null = null): FormGroup {\n return new FormGroup({\n id: new FormControl<string>(memberFunction?.id || ''),\n comment: new FormControl<string>(memberFunction?.comment || ''),\n start_date: new FormControl<string>(memberFunction?.start_date || ''),\n end_date: new FormControl<string>(memberFunction?.end_date || ''),\n });\n }\n\n constructor(public id: string, public comment: string, public end_date: string, public name: string, public start_date: string) {\n }\n}\n","export class MemberValidationSettings {\n constructor(public readonly address: boolean, public readonly birth_date: number,\n public readonly district: boolean, public readonly email: boolean,\n public readonly home_phone: boolean, public readonly mobile_phone: boolean,\n public readonly work_phone: boolean, public readonly zip: boolean) { }\n}\n","export class SearchMember {\n constructor(public id: string, public club_id: string | null, public team_id: string | null, public address1: string,\n public address2: string, public readonly calendar_url: string, public country: string,\n public district: string, public email: string, public first_name: string, public image: string,\n public last_name: string, public mobile_phone: string, public name: string, public zip: string) {\n }\n}\n","export class MemberActivityInvite {\n constructor(public id: string, public comment: string, public current_num_attendants: number,\n public last_invite: string | null, public leader: boolean, public member_email: string | null,\n public member_id: string, public member_name: string, public next_invite: string | null,\n public response_date: string, public status: string) {\n }\n\n getColorByStatus(): string {\n let color = 'none';\n\n switch (this.status) {\n case 'accepted':\n color = 'myclub-accepted';\n break;\n case 'denied':\n color = 'myclub-denied';\n break;\n case 'maybe':\n color = 'myclub-maybe';\n break;\n }\n return color;\n }\n}\n","export class MemberPublicForm {\n constructor(public id: string, public active_form: string | null, public active_to: string | null,\n public userToken: string | null, public name: string, public url: string) { }\n}\n","import { Club, Section } from '.';\n\nexport class MemberTeam {\n constructor(public club: Club, public section: Section | null, public id: string, public email: string, public name: string,\n public phone: string, public section_name: string | undefined) {\n }\n}\n","import { Member, SearchMember } from './member';\n\n\nexport class MemberTeamThrough {\n constructor(public id: string, public readonly created: string, public readonly dateHidden: string, public image: string,\n public leader: boolean, public member: SearchMember | Member, public roleId: string, public showOnWeb: boolean,\n public readonly updated: string) {\n }\n}\n","import { FormControl, FormGroup, Validators } from '@angular/forms';\nimport { ImageUrls } from './image-urls';\n\nexport class News {\n static asFormGroup(news: News | null = null): FormGroup {\n let show_on_my_pages = false;\n let show_on_webpage = false;\n\n if (typeof news?.show_on_my_pages !== 'undefined') {\n show_on_my_pages = news.show_on_my_pages;\n }\n\n if (typeof news?.show_on_webpage !== 'undefined') {\n show_on_webpage = news.show_on_webpage;\n }\n\n return new FormGroup(\n {\n id: new FormControl<string>(news?.id || ''),\n active_to: new FormControl<string>(news?.active_to || ''),\n ingress: new FormControl<string>(news?.ingress || '', [Validators.required, Validators.minLength(1)]),\n news_image: new FormControl<string>((news?.news_image as string) || ''),\n news_image_text: new FormControl<string>(news?.news_image_text || ''),\n published_date: new FormControl<string>(news?.published_date || ''),\n show_on_my_pages: new FormControl<boolean>(show_on_my_pages),\n show_on_webpage: new FormControl<boolean>(show_on_webpage),\n text: new FormControl<string>(news?.text || '', [Validators.required, Validators.minLength(1)]),\n title: new FormControl<string>(news?.title || '', [Validators.required, Validators.minLength(1)])\n }\n )\n }\n\n constructor(public id: string, public readonly club_id: string, public readonly created: string,\n public readonly created_by_id: string, public readonly section_id: string | null,\n public readonly team_id: string | null, public active_to: string | null, public author: string,\n public ingress: string, public news_image: string | File | null, public news_image_text: string,\n public published_date: string | null, public readonly read: boolean, public show_on_my_pages: boolean,\n public show_on_webpage: boolean, public text: string, public title: string,\n public readonly updated: string, public urls: ImageUrls | null) {\n }\n}\n","import { GeneralImage } from '.';\n\nexport class Partner {\n constructor(public id: string, public image: GeneralImage | null, public name: string, public url: string) {\n }\n}\n","export enum Role {\n ClubAdmin,\n SectionAdmin,\n TeamAdmin,\n MemberAdmin,\n Public,\n None\n}\n","export class SearchClub {\n constructor(public id: string, public leader_member_search: boolean, public member_search: boolean,\n public name: string) {\n }\n}\n","import { Club } from './club';\nimport { Section } from './section';\n\nexport class SearchTeam {\n constructor(public club: Club | undefined, public section: Section | undefined, public id: string,\n public name: string, public section_name: string | undefined) {}\n}\n","export class Section {\n constructor(public id: string, public name: string) {\n }\n}\n","export class Token {\n constructor(public accessToken: string, public refreshToken: string) {}\n}\n","import { FormControl, FormGroup, Validators } from '@angular/forms';\n\nexport class User {\n static asFormGroup(user: User | null = null): FormGroup {\n return new FormGroup({\n email: new FormControl<string>(user?.email || '', [Validators.required, Validators.email]),\n firstName: new FormControl<string>(user?.firstName || ''),\n language: new FormControl<string>(user?.language || 'sv'),\n lastName: new FormControl<string>(user?.lastName || ''),\n newEmail: new FormControl<string>(user?.newEmail || ''),\n newPassword: new FormControl<string>(''),\n verifyPassword: new FormControl<string>(''),\n password: new FormControl<string>('')\n });\n }\n\n constructor(public deviceToken: string | null, public email: string,\n public firstName: string, public isStaff: boolean, public language: string,\n public lastName: string, public newEmail: string | null, public newPassword: string = '',\n public verifyPassword: string = '', public password: string = '') {}\n\n name(): string {\n return `${this.firstName} ${this.lastName}`;\n }\n}\n","export class UserNotification {\n constructor(public id: string, public club_id: string, public member_id: string, public object_id: string,\n public created: string, public message: string, public title: string, public type: string) {\n }\n}\n","import { HttpClient, HttpResponse } from '@angular/common/http';\nimport { Inject, Injectable, InjectionToken } from '@angular/core';\nimport { map } from 'rxjs/operators';\nimport { ApiCollection } from '../api-models';\nimport { Collection, Role } from '../models';\n\nexport const DOMAIN = new InjectionToken<string>('domain');\n\nconst API_PATH = 'api/v3/';\n\nconst ROLE_PATH = {\n [Role.ClubAdmin]: 'club-admin/',\n [Role.SectionAdmin]: 'section-admin/',\n [Role.TeamAdmin]: 'team-admin/',\n [Role.MemberAdmin]: 'member-admin/',\n [Role.Public]: 'public/',\n [Role.None]: ''\n};\n\ninterface Factory<A, T> {\n (apiResource: A): T;\n}\n\ninterface PathParams {\n [key: string]: string;\n}\n\ninterface Options {\n params?: { [key: string]: string | Array<string>};\n body?: any;\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ApiService {\n constructor(\n private http: HttpClient,\n @Inject(DOMAIN) private domain: string\n ) {}\n\n deleteResource(\n role: Role,\n path: string,\n pathParams: PathParams = {},\n options: Options = {}\n ) {\n return this.delete(role, path, pathParams, options)\n .pipe(\n map((response: HttpResponse<unknown>) => response.status === 204)\n );\n }\n\n getCollection<A, T>(\n factory: Factory<A, T>,\n role: Role,\n path: string,\n pathParams: PathParams = {},\n options: Options = { }\n ) {\n return this.get<ApiCollection<A>>(role, path, pathParams, options).pipe(\n map((apiCollection) => {\n const resources = apiCollection.results.map((resource) => factory(resource));\n return new Collection<T>(apiCollection.count, apiCollection.next, apiCollection.previous, resources);\n })\n );\n }\n\n getResource<A, T>(\n factory: Factory<A, T>,\n role: Role,\n path: string,\n pathParams: PathParams = {},\n options: Options = {}\n ) {\n return this.get<A>(role, path, pathParams, options).pipe(\n map((apiResource) => factory(apiResource))\n );\n }\n\n postFormData<A, T>(\n factory: Factory<A, T>,\n role: Role,\n path: string,\n pathParams: PathParams = {},\n data: { [key: string]: string } | FormData) {\n return this.http.post<A>(this.url(this.path(role, path, pathParams)), this.getFormData(data))\n .pipe(map((apiResource) => factory(apiResource)));\n }\n\n postResource<A, T>(\n factory: Factory<A, T>,\n role: Role,\n path: string,\n pathParams: PathParams = {},\n data: unknown,\n options: Options = {}) {\n return this.post<A>(role, path, pathParams, data, options).pipe(\n map((apiResource) => factory(apiResource))\n );\n }\n\n updateResource<A, T>(\n responseFactory: Factory<A, T>,\n role: Role,\n path: string,\n pathParams: PathParams = {},\n data: unknown,\n options: Options = {}) {\n return this.patch<A>(role, path, pathParams, data, options).pipe(\n map((apiResource) => responseFactory(apiResource))\n );\n }\n\n private delete(role: Role, path: string, pathParams: PathParams, options: Options) {\n if (options.body) {\n return this.http.request<any>('delete', this.url(this.path(role, path, pathParams)), options);\n }\n\n return this.http.delete(this.url(this.path(role, path, pathParams)), {...options, observe: 'response'});\n }\n\n private get<T>(role: Role, path: string, pathParams: PathParams, options: Options) {\n return this.http.get<T>(this.url(this.path(role, path, pathParams)), options);\n }\n\n private getFormData(data: { [key: string]: string } | FormData) {\n if (data instanceof FormData) {\n return data;\n }\n\n const formData = new FormData();\n for (const [key, value] of Object.entries(data)) {\n formData.append(key, value);\n }\n\n return formData;\n }\n\n private patch<T>(role: Role, path: string, pathParams: PathParams, data: unknown, options: Options) {\n return this.http.patch<T>(this.url(this.path(role, path, pathParams)), data, options);\n }\n\n private path(role: Role, path: string, params: PathParams) {\n for (const [key, value] of Object.entries(params)) {\n const regexp = new RegExp(':' + key, 'g');\n path = path.replace(regexp, value);\n }\n\n return ROLE_PATH[role] + path;\n }\n\n private post<T>(role: Role, path: string, pathParams: PathParams, data: unknown, options: Options) {\n return this.http.post<T>(this.url(this.path(role, path, pathParams)), data, options);\n }\n\n private url(path: string) {\n return this.domain + API_PATH + path;\n }\n}\n","import { ApiSearchMember } from '../../api-models';\nimport { SearchMember } from '../../models';\n\nexport const searchMemberFactory = (apiSearchMember: ApiSearchMember) =>\n new SearchMember(\n apiSearchMember.id,\n apiSearchMember.club_id,\n apiSearchMember.team_id,\n apiSearchMember.address1,\n apiSearchMember.address2,\n apiSearchMember.calendar_url,\n apiSearchMember.country,\n apiSearchMember.district,\n apiSearchMember.email,\n apiSearchMember.first_name,\n apiSearchMember.image,\n apiSearchMember.last_name,\n apiSearchMember.mobile_phone,\n apiSearchMember.name,\n apiSearchMember.zip\n );\n","import { ApiMemberAttribute } from '../../api-models';\nimport { MemberAttribute } from '../../models';\n\nexport const memberAttributeFactory = (attribute: ApiMemberAttribute) =>\n new MemberAttribute(\n attribute.display_value,\n attribute.field_id,\n attribute.leader_editable,\n attribute.member_id,\n attribute.member_editable,\n attribute.name,\n attribute.options,\n attribute.order,\n attribute.section_id,\n attribute.type,\n attribute.value\n );\n","import { ApiContact } from '../../api-models';\nimport { Contact } from '../../models';\n\nexport const contactFactory = (contact: ApiContact) =>\n new Contact(\n contact.id,\n contact.club_id,\n contact.member_id,\n contact.address1,\n contact.address2,\n contact.address3,\n contact.country,\n contact.district,\n contact.email,\n contact.first_name,\n contact.home_phone,\n contact.last_name,\n contact.mobile_phone,\n contact.work_phone,\n contact.zip\n );\n","import { ApiMemberContact } from '../../api-models';\nimport { MemberContact } from '../../models';\nimport { contactFactory } from './contact-factory';\n\nexport const memberContactFactory = (memberContact: ApiMemberContact) =>\n new MemberContact(\n memberContact.id,\n memberContact.club_id,\n memberContact.member_id,\n contactFactory(memberContact.contact),\n memberContact.contact_type\n );\n","import { ApiMemberFunction } from '../../api-models';\nimport { MemberFunction } from '../../models';\n\nexport const memberFunctionFactory = (memberFunction: ApiMemberFunction) =>\n new MemberFunction(\n memberFunction.id,\n memberFunction.comment,\n memberFunction.end_date,\n memberFunction.name,\n memberFunction.start_date\n );\n","import { ApiMemberValidationSettings } from '../../api-models';\nimport { MemberValidationSettings } from '../../models';\n\nexport const memberValidationSettingsFactory = (apiMemberValidationSettings: ApiMemberValidationSettings) =>\n new MemberValidationSettings(\n apiMemberValidationSettings.address,\n apiMemberValidationSettings.birth_date,\n apiMemberValidationSettings.district,\n apiMemberValidationSettings.email,\n apiMemberValidationSettings.home_phone,\n apiMemberValidationSettings.mobile_phone,\n apiMemberValidationSettings.work_phone,\n apiMemberValidationSettings.zip\n );\n","import { ApiMember, ApiMemberAttribute, ApiMemberContact, ApiMemberFunction } from '../../api-models';\nimport { Member } from '../../models';\nimport { memberAttributeFactory } from './member-attribute-factory';\nimport { memberContactFactory } from './member-contact-factory';\nimport { memberFunctionFactory } from './member-function-factory';\nimport { memberValidationSettingsFactory } from './member-validation-settings-factory';\n\nexport const memberFactory = (apiMember: ApiMember) =>\n new Member(\n apiMember.id,\n apiMember.club_id,\n apiMember.address1,\n apiMember.address2,\n apiMember.address_field,\n apiMember.attributes.map((attribute: ApiMemberAttribute) => memberAttributeFactory(attribute)),\n apiMember.birth_date,\n apiMember.calendar_url,\n apiMember.comment,\n apiMember.contacts.map((contactMember: ApiMemberContact) => memberContactFactory(contactMember)),\n apiMember.country,\n apiMember.created,\n apiMember.district,\n apiMember.email,\n apiMember.first_name,\n apiMember.functions ?\n apiMember.functions.map((memberFunction: ApiMemberFunction) => memberFunctionFactory(memberFunction)) : [],\n apiMember.home_phone,\n apiMember.image,\n apiMember.last_name,\n apiMember.mobile_phone,\n apiMember.public_member_id,\n apiMember.sex,\n apiMember.updated,\n memberValidationSettingsFactory(apiMember.validation_settings),\n apiMember.work_phone,\n apiMember.zip\n );\n","import { ApiActivityExtraMember, ApiMember, ApiSearchMember } from '../../api-models';\nimport { ActivityExtraMember } from '../../models';\nimport { searchMemberFactory } from './search-member-factory';\nimport { memberFactory } from './member-factory';\n\nexport const activityExtraMemberFactory = (apiActivityExtraMember: ApiActivityExtraMember) =>\n new ActivityExtraMember(\n apiActivityExtraMember.id,\n apiActivityExtraMember.member_id,\n apiActivityExtraMember.team_id,\n apiActivityExtraMember.created,\n apiActivityExtraMember.leader,\n (apiActivityExtraMember.member as ApiMember).birth_date ?\n memberFactory(apiActivityExtraMember.member as ApiMember) : searchMemberFactory(apiActivityExtraMember.member as ApiSearchMember),\n apiActivityExtraMember.member_name\n );\n","import { ApiMemberActivityInvite } from '../../api-models';\nimport { MemberActivityInvite } from '../../models';\n\nexport const memberActivityInviteFactory = (invitedMember: ApiMemberActivityInvite) =>\n new MemberActivityInvite(\n invitedMember.id,\n invitedMember.comment,\n invitedMember.current_num_attendants,\n invitedMember.last_invite,\n invitedMember.leader,\n invitedMember.member_email,\n invitedMember.member_id,\n invitedMember.member_name,\n invitedMember.next_invite,\n invitedMember.response_date,\n invitedMember.status\n );\n","import { ApiActivity, ApiMemberActivityInvite } from '../../api-models';\nimport { Activity } from '../../models';\nimport { memberActivityInviteFactory } from './member-invite-factory';\nimport { format } from 'date-fns';\n\nexport const activityFactory = (apiActivity: ApiActivity) =>\n new Activity(\n apiActivity.id,\n apiActivity.activity_group_id,\n apiActivity.activity_type_id,\n apiActivity.club_id,\n apiActivity.location_id,\n apiActivity.team_id,\n apiActivity.activity_location,\n apiActivity.activity_type_name,\n apiActivity.allow_maybe,\n apiActivity.calendar_name,\n apiActivity.created,\n apiActivity.current_num_attendants,\n apiActivity.day,\n apiActivity.description,\n apiActivity.end_time,\n apiActivity.file,\n apiActivity.invitation_text,\n apiActivity.invite_first_days,\n [],\n apiActivity.invite_hide_before_sent,\n apiActivity.invite_last_response_date,\n apiActivity.invite_remind,\n apiActivity.invite_remind_receivers,\n apiActivity.invite_second_days,\n 'same_as_last',\n (apiActivity.invited_members && apiActivity.invited_members.length) ? apiActivity.invited_members.map(\n (invitedMember: ApiMemberActivityInvite) => memberActivityInviteFactory(invitedMember)\n ) : [],\n apiActivity.last_response_date,\n apiActivity.max_num_attendants,\n apiActivity.max_num_attendants_type,\n apiActivity.meet_up_place,\n apiActivity.meet_up_time,\n apiActivity.meet_up_time_display,\n 'none',\n 6,\n format(new Date(), 'yyyy-MM-dd'),\n 'repeat_until',\n apiActivity.show_other_invited,\n apiActivity.start_time,\n apiActivity.title,\n apiActivity.updated,\n apiActivity.use_invite,\n false\n );\n","import { ApiUnpaidMemberInvoice } from '../../api-models';\nimport { UnpaidMemberInvoice } from '../../models';\n\nexport const unpaidInvoiceFactory = (apiUnpaidInvoice: ApiUnpaidMemberInvoice) =>\n new UnpaidMemberInvoice(\n apiUnpaidInvoice.id,\n apiUnpaidInvoice.club_bill_id,\n apiUnpaidInvoice.member_id,\n apiUnpaidInvoice.token\n );\n","import { ApiActivityInvite, ApiUnpaidMemberInvoice } from '../../api-models';\nimport { ActivityInvite } from '../../models';\nimport { activityFactory } from './activity-factory';\nimport { searchMemberFactory } from './search-member-factory';\nimport { unpaidInvoiceFactory } from './unpaid-invoice-factory';\n\nexport const activityInviteFactory = (apiActivityInvite: ApiActivityInvite) =>\n new ActivityInvite(\n apiActivityInvite.id,\n activityFactory(apiActivityInvite.activity),\n apiActivityInvite.comment,\n apiActivityInvite.created,\n apiActivityInvite.has_unpaid_invoices,\n apiActivityInvite.last_invite,\n apiActivityInvite.leader,\n searchMemberFactory(apiActivityInvite.member),\n apiActivityInvite.next_invite,\n apiActivityInvite.reminded,\n apiActivityInvite.response_date,\n apiActivityInvite.status,\n apiActivityInvite.token,\n apiActivityInvite.unpaid_invoices && apiActivityInvite.unpaid_invoices.length ? apiActivityInvite.unpaid_invoices.map(\n (apiUnpaidInvoice: ApiUnpaidMemberInvoice) => unpaidInvoiceFactory(apiUnpaidInvoice)\n ) : [],\n apiActivityInvite.updated\n );\n","import { ApiActivityLocation } from '../../api-models';\nimport { ActivityLocation } from '../../models';\n\nexport const activityLocationFactory = (apiActivityLocation: ApiActivityLocation) =>\n new ActivityLocation(\n apiActivityLocation.id,\n apiActivityLocation.club_id,\n apiActivityLocation.section_id,\n apiActivityLocation.active,\n apiActivityLocation.mun_location_city_area,\n apiActivityLocation.mun_location_name,\n apiActivityLocation.name\n );\n","import { ApiActivitySettings } from '../../api-models/api-activity-settings';\nimport { ActivitySettings } from '../../models';\n\nexport const activitySettingsFactory = (apiActivitySettings: ApiActivitySettings) =>\n new ActivitySettings(\n apiActivitySettings.day_options,\n apiActivitySettings.hour_options,\n apiActivitySettings.invite_group_options,\n apiActivitySettings.invite_settings_options,\n apiActivitySettings.max_attendance_options,\n apiActivitySettings.meet_up_time_options,\n apiActivitySettings.remind_receiver_options,\n apiActivitySettings.repeat_options,\n apiActivitySettings.repeat_type_options\n );\n","import { ApiActivityType } from '../../api-models';\nimport { ActivityType } from '../../models';\n\nexport const activityTypeFactory = (apiActivityType: ApiActivityType) =>\n new ActivityType(\n apiActivityType.id,\n apiActivityType.club_id,\n apiActivityType.section_id,\n apiActivityType.active,\n apiActivityType.base_type,\n apiActivityType.name\n );\n","import { AuthSection } from '../../models';\nimport { ApiAuthSection } from '../../api-models';\n\nexport const authSectionFactory = (apiAuthSection: ApiAuthSection) =>\n new AuthSection(apiAuthSection.id, apiAuthSection.name);\n","import { AuthMember } from '../../models';\nimport { ApiAuthMember } from '../../api-models';\n\nexport const authMemberFactory = (apiAuthMember: ApiAuthMember) =>\n new AuthMember(apiAuthMember.id, apiAuthMember.name, apiAuthMember.calendar_url);\n","import { ApiAuthTeamSection } from '../../api-models';\nimport { AuthTeamSection } from '../../models';\n\nexport const authTeamSectionFactory = (apiAuthTeamSection: ApiAuthTeamSection) =>\n new AuthTeamSection(apiAuthTeamSection.id, apiAuthTeamSection.name);\n","import { AuthTeam } from '../../models';\nimport { ApiAuthTeam } from '../../api-models';\nimport { authTeamSectionFactory } from './auth-team-section-factory';\n\nexport const authTeamFactory = (apiAuthTeam: ApiAuthTeam) =>\n new AuthTeam(\n apiAuthTeam.id,\n apiAuthTeam.calendar_url,\n apiAuthTeam.name,\n apiAuthTeam.section ? authTeamSectionFactory(apiAuthTeam.section) : null\n );\n","import { ApiAuth, ApiAuthMember, ApiAuthSection, ApiAuthTeam } from '../../api-models';\nimport { Auth } from '../../models';\nimport { authSectionFactory } from './auth-section-factory';\nimport { authMemberFactory } from './auth-member-factory';\nimport { authTeamFactory } from './auth-team-factory';\n\nexport const authFactory = (apiAuth: ApiAuth) =>\n new Auth(\n apiAuth.id,\n apiAuth.name,\n apiAuth.club_admin,\n apiAuth.is_section_club,\n apiAuth.members.map((apiAuthMember: ApiAuthMember) => authMemberFactory(apiAuthMember)),\n apiAuth.registration_enabled,\n apiAuth.sections.map((apiAuthSection: ApiAuthSection) => authSectionFactory(apiAuthSection)),\n apiAuth.site_enabled,\n apiAuth.teams.map((apiAuthTeam: ApiAuthTeam) => authTeamFactory(apiAuthTeam)),\n apiAuth.user_name\n );\n","import { ApiImageUrls } from '../../api-models';\nimport { ImageUrls } from '../../models';\n\nexport const imageUrlsFactory = (apiImageUrls: ApiImageUrls) =>\n new ImageUrls(\n apiImageUrls.lg,\n apiImageUrls.md,\n apiImageUrls.raw,\n apiImageUrls.sm,\n apiImageUrls.xs\n )\n","import { ApiGeneralImage } from '../../api-models';\nimport { GeneralImage } from '../../models';\nimport { imageUrlsFactory } from './image-urls-factory';\n\nexport const generalImageFactory = (image: ApiGeneralImage | null) =>\n image ? new GeneralImage(\n image.id,\n image.name,\n imageUrlsFactory(image.urls)\n ) : null;\n","import { ApiPartner } from '../../api-models';\nimport { Partner } from '../../models';\nimport { generalImageFactory } from './general-image-factory';\n\nexport const partnerFactory = (apiPartner: ApiPartner) =>\n new Partner(\n apiPartner.id,\n apiPartner.image ? generalImageFactory(apiPartner.image) : null,\n apiPartner.name,\n apiPartner.url\n );\n","import { ApiCardDeal } from '../../api-models';\nimport { CardDeal } from '../../models';\nimport { partnerFactory } from './partner-factory';\n\nexport const cardDealFactory = (apiCardDeal: ApiCardDeal) =>\n new CardDeal(\n apiCardDeal.id,\n partnerFactory(apiCardDeal.partner),\n apiCardDeal.text,\n apiCardDeal.title,\n apiCardDeal.url\n );\n","import { ApiCardLogoUrls } from '../../api-models';\nimport { CardLogoUrls } from '../../models';\n\nexport const cardLogoUrlsFactory = (apiCardLogoUrls: ApiCardLogoUrls) =>\n new CardLogoUrls(\n apiCardLogoUrls.lg,\n apiCardLogoUrls.md,\n apiCardLogoUrls.sm,\n apiCardLogoUrls.w16,\n apiCardLogoUrls.w32,\n apiCardLogoUrls.w64,\n apiCardLogoUrls.w180,\n apiCardLogoUrls.w192\n );\n","import { ApiCardLogo } from '../../api-models';\nimport { CardLogo } from '../../models';\nimport { cardLogoUrlsFactory } from './card-logo-urls-factory';\n\nexport const cardLogoFactory = (apiCardLogo: ApiCardLogo) =>\n new CardLogo(\n apiCardLogo.id,\n apiCardLogo.name,\n cardLogoUrlsFactory(apiCardLogo.urls)\n );\n","import { ApiCardTheme } from '../../api-models';\nimport { CardTheme } from '../../models';\nimport { imageUrlsFactory } from './image-urls-factory';\n\nexport const cardThemeFactory = (apiCardTheme: ApiCardTheme) =>\n new CardTheme(\n apiCardTheme.id,\n apiCardTheme.background_color,\n imageUrlsFactory(apiCardTheme.background_image_urls),\n apiCardTheme.name,\n apiCardTheme.text_color\n );\n","import { ApiCard } from '../../api-models';\nimport { cardLogoFactory } from './card-logo-factory';\nimport { Card } from '../../models';\nimport { cardThemeFactory } from './card-theme-factory';\n\nexport const cardFactory = (apiCard: ApiCard) =>\n new Card(\n apiCard.id,\n apiCard.deals_count,\n apiCard.header_1,\n apiCard.name,\n cardLogoFactory(apiCard.logo),\n cardThemeFactory(apiCard.theme),\n apiCard.ticket_count,\n apiCard.use_pdf_version\n );\n","import { ApiCardMemberTicket } from '../../api-models';\nimport { CardMemberTicket } from '../../models';\n\nexport const cardMemberTicketFactory = (apiCardMemberTicket: ApiCardMemberTicket) =>\n new CardMemberTicket(\n apiCardMemberTicket.id,\n apiCardMemberTicket.member_id,\n apiCardMemberTicket.ticket_id,\n apiCardMemberTicket.member_name,\n apiCardMemberTicket.ticket_image_url,\n apiCardMemberTicket.ticket_number\n );\n","import { ApiHomeTeam } from '../../api-models';\nimport { HomeTeam } from '../../models';\nimport { generalImageFactory } from './general-image-factory';\n\nexport const homeTeamFactory = (apiHomeTeam: ApiHomeTeam) =>\n new HomeTeam(\n apiHomeTeam.id,\n apiHomeTeam.logo ? generalImageFactory(apiHomeTeam.logo) : null,\n apiHomeTeam.name\n )\n","import { ApiCardTicketLocation } from '../../api-models';\nimport { CardTicketLocation } from '../../models';\n\nexport const cardTicketLocationFactory = (apiCardTicketLocation: ApiCardTicketLocation) =>\n new CardTicketLocation(\n apiCardTicketLocation.id,\n apiCardTicketLocation.club_id,\n apiCardTicketLocation.section_id,\n apiCardTicketLocation.location\n );\n","import { ApiCardTicket } from '../../api-models';\nimport { CardTicket } from '../../models';\nimport { cardMemberTicketFactory } from './card-member-ticket-factory';\nimport { homeTeamFactory } from './home-team-factory';\nimport { generalImageFactory } from './general-image-factory';\nimport { cardTicketLocationFactory } from './card-ticket-location-factory';\n\nexport const cardTicketFactory = (apiCardTicket: ApiCardTicket) =>\n new CardTicket(\n apiCardTicket.id,\n apiCardTicket.activation_end_hours,\n apiCardTicket.activation_end_time,\n apiCardTicket.activation_start_hours,\n apiCardTicket.activation_start_time,\n apiCardTicket.away_team,\n apiCardTicket.card_member_ticket ? cardMemberTicketFactory(apiCardTicket.card_member_ticket) : null,\n apiCardTicket.description,\n apiCardTicket.event_time,\n apiCardTicket.home_team ? homeTeamFactory(apiCardTicket.home_team) : null,\n apiCardTicket.image ? generalImageFactory(apiCardTicket.image) : null,\n cardTicketLocationFactory(apiCardTicket.location),\n apiCardTicket.name,\n apiCardTicket.ticket_type,\n apiCardTicket.ticket_type_nice,\n apiCardTicket.uses_pin\n );\n","import { ApiClub } from '../../api-models';\nimport { Club } from '../../models';\n\nexport const clubFactory = (apiClub: ApiClub) =>\n new Club(apiClub.id, apiClub.name);\n","import { ApiClubImage } from '../../api-models';\nimport { ClubImage } from '../../models';\n\nexport const clubImageFactory = (apiClubImage: ApiClubImage) =>\n new ClubImage(\n apiClubImage.club_id,\n apiClubImage.section_id,\n apiClubImage.comment,\n apiClubImage.created,\n apiClubImage.image,\n apiClubImage.image_sm_path,\n apiClubImage.image_lg_path,\n apiClubImage.in_use,\n apiClubImage.is_logo,\n apiClubImage.original_height,\n apiClubImage.original_width,\n apiClubImage.title,\n apiClubImage.updated\n );\n","import { ApiClubSection } from '../../api-models';\nimport { ClubSection } from '../../models';\n\nexport const clubSectionFactory = (apiSection: ApiClubSection) =>\n new ClubSection(apiSection.id, apiSection.name);\n","import { ApiCreditCard } from '../../api-models';\nimport { CreditCard } from '../../models';\n\nexport const creditCardFactory = (apiCreditCard: ApiCreditCard) =>\n new CreditCard(\n apiCreditCard.club_id,\n apiCreditCard.section_id,\n apiCreditCard.default_activated,\n apiCreditCard.merchant_id,\n apiCreditCard.name,\n apiCreditCard.payment_terms_name,\n apiCreditCard.payment_terms_organisation_id,\n apiCreditCard.payment_terms_url,\n apiCreditCard.rsa_key,\n apiCreditCard.status,\n apiCreditCard.test_account\n );\n","import { ApiFileObject } from '../../api-models';\nimport { FileObject } from '../../models';\n\nexport const fileFactory = (file: ApiFileObject) =>\n new FileObject(\n file.id,\n file.created,\n null,\n typeof file.member === 'undefined' ? null : file.member,\n file.name,\n typeof file.section === 'undefined' ? null : file.section,\n typeof file.team === 'undefined' ? null : file.team,\n file.updated,\n file.url\n );\n","import { ApiDirectory, ApiFileObject } from '../../api-models';\nimport { Directory } from '../../models';\nimport { fileFactory } from './file-factory';\n\nexport const directoryFactory = (directory: ApiDirectory) =>\n new Directory(\n directory.id,\n directory.club_id,\n directory.section_id,\n directory.team_id,\n directory.created,\n directory.files.map((file: ApiFileObject) => fileFactory(file)),\n directory.name,\n directory.location_name,\n directory.updated\n );\n","import { ApiEvent } from '../../api-models';\nimport { Event } from '../../models';\n\nexport const eventFactory = (apiEvent: ApiEvent) =>\n new Event(\n apiEvent.id,\n apiEvent.activity_id,\n apiEvent.activity_type,\n apiEvent.base_background_color,\n apiEvent.base_color,\n apiEvent.base_name,\n apiEvent.calendar_name,\n apiEvent.description,\n apiEvent.end,\n apiEvent.invitation_id,\n apiEvent.invitation_response,\n apiEvent.location,\n apiEvent.meet_up_place,\n apiEvent.meet_up_time,\n apiEvent.member_id,\n apiEvent.start,\n apiEvent.title,\n apiEvent.type\n );\n","import { ApiExternalLink } from '../../api-models';\nimport { ExternalLink } from '../../models';\n\nexport const externalLinkFactory = (apiExternalLink: ApiExternalLink) =>\n new ExternalLink(\n apiExternalLink.text,\n apiExternalLink.value\n );\n","import { ApiGiro } from '../../api-models';\nimport { Giro } from '../../models';\n\nexport const giroFactory = (apiGiro: ApiGiro) =>\n new Giro(\n apiGiro.club_id,\n apiGiro.section_id,\n apiGiro.giro_type,\n apiGiro.name,\n apiGiro.number,\n apiGiro.ocr\n );\n","import { ApiMemberCard } from '../../api-models';\nimport { MemberCard } from '../../models';\nimport { cardFactory } from './card-factory';\n\nexport const memberCardFactory = (apiMemberCard: ApiMemberCard) =>\n new MemberCard(\n apiMemberCard.id,\n cardFactory(apiMemberCard.card),\n apiMemberCard.header_2,\n apiMemberCard.member_name,\n apiMemberCard.membership_text,\n apiMemberCard.name,\n apiMemberCard.pdf_url\n );\n","import { ApiMemberFee } from '../../api-models';\nimport { MemberFee } from '../../models';\n\nexport const memberFeeFactory = (apiMemberFee: ApiMemberFee) =>\n new MemberFee(\n apiMemberFee.id,\n apiMemberFee.club_id,\n apiMemberFee.section_id,\n apiMemberFee.name\n );\n","import { ApiSwish } from '../../api-models';\nimport { Swish } from '../../models';\n\nexport const swishFactory = (apiSwish: ApiSwish) =>\n new Swish(\n apiSwish.club_id,\n apiSwish.section_id,\n apiSwish.certificate_valid_until,\n apiSwish.default_activated,\n apiSwish.name,\n apiSwish.payment_terms_name,\n apiSwish.payment_terms_organisation_id,\n apiSwish.payment_terms_url,\n apiSwish.status,\n apiSwish.swish_payee_alias,\n apiSwish.test_account,\n apiSwish.use_payment_terms,\n apiSwish.uses_myclub_certificate\n );\n","import { ApiZimpler } from '../../api-models';\nimport { Zimpler } from '../../models';\n\nexport const zimplerFactory = (apiZimpler: ApiZimpler) =>\n new Zimpler(\n apiZimpler.club_id,\n apiZimpler.section_id,\n apiZimpler.default_activated,\n apiZimpler.merchant_id,\n apiZimpler.name,\n apiZimpler.status,\n apiZimpler.test_account\n )\n","import { ApiMemberInvoiceRow } from '../../api-models';\nimport { MemberInvoiceRow } from '../../models';\nimport { memberFeeFactory } from './member-fee-factory';\n\nexport const memberInvoiceRowFactory = (apiMemberInvoiceRow: ApiMemberInvoiceRow) =>\n new MemberInvoiceRow(\n apiMemberInvoiceRow.id,\n apiMemberInvoiceRow.amount,\n apiMemberInvoiceRow.amount_paid,\n apiMemberInvoiceRow.balance,\n apiMemberInvoiceRow.created,\n apiMemberInvoiceRow.date_paid,\n memberFeeFactory(apiMemberInvoiceRow.fee),\n apiMemberInvoiceRow.has_credit_type,\n apiMemberInvoiceRow.invoice,\n apiMemberInvoiceRow.is_credit,\n apiMemberInvoiceRow.is_paid,\n apiMemberInvoiceRow.updated\n );\n","import { ApiMemberInvoice, ApiMemberInvoiceRow } from '../../api-models';\nimport { MemberInvoice } from '../../models';\nimport { creditCardFactory } from './credit-card-factory';\nimport { giroFactory } from './giro-factory';\nimport { swishFactory } from './swish-factory';\nimport { zimplerFactory } from './zimpler-factory';\nimport { memberInvoiceRowFactory } from './member-invoice-row-factory';\n\nexport const memberInvoiceFactory = (apiMemberInvoice: ApiMemberInvoice) =>\n new MemberInvoice(\n apiMemberInvoice.id,\n apiMemberInvoice.amount,\n apiMemberInvoice.amount_paid,\n apiMemberInvoice.balance,\n apiMemberInvoice.club_bill_id,\n apiMemberInvoice.club_name,\n apiMemberInvoice.credit_card ? creditCardFactory(apiMemberInvoice.credit_card) : null,\n apiMemberInvoice.date_paid,\n apiMemberInvoice.due_date,\n apiMemberInvoice.giro ? giroFactory(apiMemberInvoice.giro) : null,\n apiMemberInvoice.invoice_rows.map((row: ApiMemberInvoiceRow) => memberInvoiceRowFactory(row)),\n apiMemberInvoice.invoice_text,\n apiMemberInvoice.is_paid,\n apiMemberInvoice.member_id,\n apiMemberInvoice.payee,\n apiMemberInvoice.payment_url,\n apiMemberInvoice.reference,\n apiMemberInvoice.swish ? swishFactory(apiMemberInvoice.swish) : null,\n apiMemberInvoice.zimpler ? zimplerFactory(apiMemberInvoice.zimpler) : null\n );\n","import { ApiMemberPublicForm } from '../../api-models';\nimport { MemberPublicForm } from '../../models';\n\nexport const memberPublicFormFactory = (apiMemberPublicForm: ApiMemberPublicForm) =>\n new MemberPublicForm(\n apiMemberPublicForm.id,\n apiMemberPublicForm.active_from,\n apiMemberPublicForm.active_to,\n apiMemberPublicForm.user_token,\n apiMemberPublicForm.name,\n apiMemberPublicForm.url\n );\n","import { ApiSection } from '../../api-models';\nimport { Section } from '../../models';\n\nexport const sectionFactory = (apiSection: ApiSection) =>\n new Section(apiSection.id, apiSection.name)\n","import { ApiMemberTeam } from '../../api-models';\nimport { MemberTeam } from '../../models';\nimport { clubFactory } from './club-factory';\nimport { sectionFactory } from './section-factory';\n\nexport const memberTeamFactory = (apiMemberTeam: ApiMemberTeam) =>\n new MemberTeam(\n clubFactory(apiMemberTeam.club),\n apiMemberTeam.section ? sectionFactory(apiMemberTeam.section) : null,\n apiMemberTeam.id,\n apiMemberTeam.email,\n apiMemberTeam.name,\n apiMemberTeam.phone,\n apiMemberTeam.section_name\n );\n","import { ApiMember, ApiMemberTeamThrough } from '../../api-models';\nimport { MemberTeamThrough } from '../../models';\nimport { memberFactory } from './member-factory';\n\nexport const memberTeamThroughFactory = (apiMemberTeamThrough: ApiMemberTeamThrough) =>\n new MemberTeamThrough(\n apiMemberTeamThrough.id,\n apiMemberTeamThrough.created,\n apiMemberTeamThrough.date_hidden,\n apiMemberTeamThrough.image,\n apiMemberTeamThrough.leader,\n memberFactory(apiMemberTeamThrough.member as ApiMember),\n apiMemberTeamThrough.role_id,\n apiMemberTeamThrough.show_on_web,\n apiMemberTeamThrough.updated\n );\n","import { ApiNews } from '../../api-models';\nimport { News } from '../../models';\nimport { imageUrlsFactory } from './image-urls-factory';\n\nexport const newsFactory = (apiNews: ApiNews) =>\n new News(\n apiNews.id,\n apiNews.club_id,\n apiNews.created,\n apiNews.created_by_id,\n apiNews.section_id,\n apiNews.team_id,\n apiNews.active_to,\n apiNews.author,\n apiNews.ingress,\n apiNews.news_image,\n apiNews.news_image_text,\n apiNews.published_date,\n apiNews.read,\n apiNews.show_on_my_pages,\n apiNews.show_on_webpage,\n apiNews.text,\n apiNews.title,\n apiNews.updated,\n apiNews.urls ? imageUrlsFactory(apiNews.urls) : null\n );\n","import {\n ApiPaymentAttempt,\n ApiPaymentAttemptCreditCardDataType,\n ApiPaymentAttemptSwishDataType,\n ApiPaymentAttemptZimplerDataType\n} from '../../api-models';\nimport { PaymentAttempt } from '../../models';\n\nexport const paymentAttemptFactory = (apiPaymentAttempt: ApiPaymentAttempt) => {\n let paymentAttemptData = null;\n\n if (apiPaymentAttempt.type === 'mondido') {\n const data = apiPaymentAttempt.payment_data as ApiPaymentAttemptCreditCardDataType;\n\n paymentAttemptData = {\n hash: data.hash,\n paymentAttemptId: data.payment_attempt_id\n };\n } else if (apiPaymentAttempt.type === 'swish') {\n paymentAttemptData = {\n paymentRequestToken: (apiPaymentAttempt.payment_data as ApiPaymentAttemptSwishDataType)?.payment_request_token\n };\n } else {\n paymentAttemptData = {\n userFormUrl: (apiPaymentAttempt.payment_data as ApiPaymentAttemptZimplerDataType).user_form_url\n };\n }\n\n return new PaymentAttempt(apiPaymentAttempt.id, apiPaymentAttempt.amount, apiPaymentAttempt.error,\n apiPaymentAttempt.invoice_id, apiPaymentAttempt.paid_date, paymentAttemptData, apiPaymentAttempt.status,\n apiPaymentAttempt.type);\n}\n","import { ApiSearchClub } from '../../api-models';\nimport { SearchClub } from '../../models';\n\nexport const searchClubFactory = (apiSearchClub: ApiSearchClub) =>\n new SearchClub(\n apiSearchClub.id,\n apiSearchClub.leader_member_search,\n apiSearchClub.member_search,\n apiSearchClub.name\n );\n","import { ApiSearchMemberCard } from '../../api-models';\nimport { SearchMemberCard } from '../../models';\n\nexport const searchMemberCardFactory = (apiSearchMemberCard: ApiSearchMemberCard) =>\n new SearchMemberCard(apiSearchMemberCard.id, apiSearchMemberCard.name, apiSearchMemberCard.notification_count,\n apiSearchMemberCard.pdf_url);\n","import { ApiSearchMemberInvoice } from '../../api-models';\nimport { SearchMemberInvoice } from '../../models';\n\nexport const searchMemberInvoiceFactory = (apiSearchMemberInvoice: ApiSearchMemberInvoice) =>\n new SearchMemberInvoice(\n apiSearchMemberInvoice.id,\n apiSearchMemberInvoice.amount,\n apiSearchMemberInvoice.amount_paid,\n apiSearchMemberInvoice.balance,\n apiSearchMemberInvoice.club_bill_id,\n apiSearchMemberInvoice.date_paid,\n apiSearchMemberInvoice.due_date,\n apiSearchMemberInvoice.is_paid,\n apiSearchMemberInvoice.member_id\n );\n","import { ApiMemberTeamThrough, ApiSearchMember } from '../../api-models';\nimport { MemberTeamThrough } from '../../models';\nimport { searchMemberFactory } from './search-member-factory';\n\nexport const searchMemberTeamThroughFactory = (apiMemberTeamThrough: ApiMemberTeamThrough) =>\n new MemberTeamThrough(\n apiMemberTeamThrough.id,\n apiMemberTeamThrough.created,\n apiMemberTeamThrough.date_hidden,\n apiMemberTeamThrough.image,\n apiMemberTeamThrough.leader,\n searchMemberFactory(apiMemberTeamThrough.member as ApiSearchMember),\n apiMemberTeamThrough.role_id,\n apiMemberTeamThrough.show_on_web,\n apiMemberTeamThrough.updated\n );\n","import { ApiToken } from '../../api-models';\nimport { Token } from '../../models';\n\nexport const tokenFactory = (apiToken: ApiToken) =>\n new Token(apiToken.access_token, apiToken.refresh_token);\n","import { ApiUser } from '../../api-models';\nimport { User } from '../../models';\n\n\nexport const userFactory = (apiUser: ApiUser) =>\n new User(\n apiUser.device_token,\n apiUser.email,\n apiUser.first_name,\n apiUser.is_staff,\n apiUser.language,\n apiUser.last_name,\n apiUser.new_email\n );\n","import { ApiUserNotification } from '../../api-models';\nimport { UserNotification } from '../../models';\n\nexport const userNotificationFactory = (apiUserNotification: ApiUserNotification) =>\n new UserNotification(\n apiUserNotification.id,\n apiUserNotification.club_id,\n apiUserNotification.member_id,\n apiUserNotification.object_id,\n apiUserNotification.created,\n apiUserNotification.message,\n apiUserNotification.title,\n apiUserNotification.type\n );\n","import { Injectable } from '@angular/core';\nimport { catchError, map } from 'rxjs/operators';\nimport { Role } from '../models';\nimport { ApiService } from './api.service';\nimport { of } from 'rxjs';\nimport { authFactory } from './factories';\n\nconst AUTHS_PATH = 'every-admin/auths/';\nconst REMOVE_AUTH_PATH = 'accounts/remove-auth/:authId/:authType/:id/';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AuthService {\n constructor(private apiService: ApiService) {}\n\n getAuth(id: string) {\n return this.apiService\n .getCollection(authFactory, Role.None, AUTHS_PATH, {}, { params: { club_id: id } })\n .pipe(\n map((collection) => {\n if (collection.count === 0) {\n return null;\n }\n return collection.toArray()[0];\n })\n );\n }\n\n getAuths(role: string | null = null) {\n return this.apiService.getCollection(authFactory, Role.None, AUTHS_PATH, {}, role ? {params: {role}} : {});\n }\n\n removeClubAuth(authId: string, clubId: string) {\n return this.removeAuth(authId, clubId, 'club');\n }\n\n removeMemberAuth(authId: string, memberId: string) {\n return this.removeAuth(authId, memberId, 'member');\n }\n\n removeSectionAuth(authId: string, sectionId: string) {\n return this.removeAuth(authId, sectionId, 'section');\n }\n\n removeTeamAuth(authId: string, teamId: string) {\n return this.removeAuth(authId, teamId, 'team');\n }\n\n private removeAuth(authId: string, authTypeId: string, authType: string) {\n return this.apiService.postResource(() => {}, Role.None, REMOVE_AUTH_PATH, {\n authId,\n authType,\n id: authTypeId\n }, {})\n .pipe(\n map(() => true),\n catchError(() => of(false))\n );\n }\n}\n","import {ApiActivityLocationGroup} from \"../../api-models/api-activity-location-group\";\nimport {ActivityLocationGroup} from \"../../models/activity-location-group\";\nimport {ApiActivityLocation} from \"../../api-models\";\nimport {activityLocationFactory} from \"./activity-location-factory\";\n\nexport const activityLocationGroupFactory = (apiActivityLocationGroup: ApiActivityLocationGroup) => {\n return new ActivityLocationGroup(\n apiActivityLocationGroup.id,\n apiActivityLocationGroup.club_id,\n apiActivityLocationGroup.section_id,\n apiActivityLocationGroup.active,\n apiActivityLocationGroup.name,\n apiActivityLocationGroup.locations && apiActivityLocationGroup.locations.length ? apiActivityLocationGroup.locations.map(\n (apiActivityLocation: ApiActivityLocation) => activityLocationFactory(apiActivityLocation)\n ) : [],\n );\n};\n","import {Injectable} from '@angular/core';\nimport {ApiService} from './api.service';\nimport {Activity, ActivityLocation, ActivityType, Collection, MemberActivityInvite, Role,} from '../models';\nimport {tap} from 'rxjs/operators';\nimport {of} from 'rxjs';\nimport {\n activityFactory,\n activityInviteFactory,\n activityLocationFactory,\n activitySettingsFactory,\n activityTypeFactory,\n eventFactory,\n memberActivityInviteFactory,\n searchMemberFactory,\n} from './factories';\nimport {sub} from 'date-fns';\nimport {activityLocationGroupFactory} from \"./factories/activity-location-group-factory\";\nimport {ActivityLocationGroup} from \"../models/activity-location-group\";\n\nconst MEMBER_ACTIVITY_INVITE_PATH = ':memberId/activities/:activityInviteId/';\nconst MEMBER_ACTIVITY_INVITES_PATH = ':memberId/activities/';\nconst MEMBER_CALENDAR_PATH = ':memberId/activities/calendar/';\nconst PUBLIC_ACTIVITY_INVITE_PATH = 'activities/:id/:token/';\nconst TEAM_ACTIVITIES_PATH = ':teamId/activities/';\nconst TEAM_ACTIVITY_INVITES_PATH = ':teamId/activities/:activityId/invites/';\nconst TEAM_ACTIVITY_INVITE_PATH = ':teamId/activities/:activityId/invites/:activityInviteId/';\nconst TEAM_ACTIVITY_INVITE_RESEND_PATH = ':teamId/activities/:activityId/invites/:activityInviteId/resend-invite/';\nconst TEAM_ACTIVITY_NEW_PATH = ':teamId/activities/new/';\nconst TEAM_ACTIVITY_PARTICIPANTS_PATH = ':teamId/activities/:activityId/participants/';\nconst TEAM_ACTIVITY_PATH = ':teamId/activities/:id/';\nconst TEAM_ACTIVITY_SETTINGS_PATH = ':teamId/activities/settings/';\nconst CLUB_ACTIVITY_SETTINGS_PATH = ':clubId/activities/settings/';\nconst TEAM_ACTIVITY_TYPES_PATH = ':teamId/activities/types/';\nconst TEAM_CALENDAR_PATH = ':teamId/activities/calendar/';\n\nconst TEAM_ACTIVITY_LOCATIONS_PATH = ':teamId/activities/locations/';\nconst CLUB_ACTIVITY_LOCATIONS_PATH = ':clubId/activities/locations/';\nconst CLUB_ACTIVITY_LOCATION_GROUPS_PATH = ':clubId/activities/locations/groups/';\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ActivityService {\n activityLocationCollection: Collection<ActivityLocation> | undefined;\n activityLocationGroupCollection: Collection<ActivityLocationGroup> | undefined;\n activityTypeCollection: Collection<ActivityType> | undefined;\n\n activityLocationResponseDate: Date | undefined;\n activityLocationGroupResponseDate: Date | undefined;\n activityTypeResponseDate: Date | undefined;\n\n constructor(private apiService: ApiService) {\n }\n\n addTeamActivityInvites(teamId: string, activityId: string, memberIds: Array<string>) {\n return this.apiService\n .postResource(\n () => true,\n Role.TeamAdmin,\n TEAM_ACTIVITY_INVITES_PATH,\n {\n teamId,\n activityId\n },\n {\n members: memberIds\n }\n )\n }\n\n createTeamActivity(teamId: string, data: Partial<Activity>) {\n return this.apiService\n .postResource(\n activityFactory,\n Role.TeamAdmin,\n TEAM_ACTIVITIES_PATH,\n {\n teamId\n },\n this.removeUnusedActivityFields(data)\n )\n }\n\n deleteTeamActivity(teamId: string, id: string) {\n return this.apiService\n .deleteResource(\n Role.TeamAdmin,\n TEAM_ACTIVITY_PATH,\n {\n teamId,\n id\n }\n );\n }\n\n deleteTeamActivityInvite(teamId: string, activityId: string, activityInviteId: string) {\n return this.apiService\n .deleteResource(\n Role.TeamAdmin,\n TEAM_ACTIVITY_INVITE_PATH,\n {\n teamId,\n activityId,\n activityInviteId\n }\n );\n }\n\n getMemberActivityInvite(memberId: string, activityInviteId: string) {\n return this.apiService\n .getResource(\n activityInviteFactory,\n Role.MemberAdmin,\n MEMBER_ACTIVITY_INVITE_PATH,\n {\n memberId,\n activityInviteId\n }\n );\n }\n\n getMemberActivityInvites(memberId: string) {\n const params: { [key: string]: string } = {limit: 'null'};\n\n return this.apiService\n .getCollection(\n activityInviteFactory,\n Role.MemberAdmin,\n MEMBER_ACTIVITY_INVITES_PATH,\n {memberId},\n {\n params\n }\n );\n }\n\n getMemberCalendarEvents(memberId: string, startDate: string | null = null, endDate: string | null = null) {\n const params: { [key: string]: string } = {limit: 'null'};\n\n if (startDate) {\n params['search_start_day'] = startDate;\n }\n\n if (endDate) {\n params['search_end_day'] = endDate;\n }\n\n return this.apiService\n .getCollection(\n eventFactory,\n Role.MemberAdmin,\n MEMBER_CALENDAR_PATH,\n {memberId},\n {\n params\n }\n )\n }\n\n getPublicActivityInvite(id: string, token: string) {\n return this.apiService\n .getResource(\n activityInviteFactory,\n Role.Public,\n PUBLIC_ACTIVITY_INVITE_PATH,\n {\n id,\n token\n }\n );\n }\n\n getTeamActivity(teamId: string, id: string) {\n return this.apiService\n .getResource(\n activityFactory,\n Role.TeamAdmin,\n TEAM_ACTIVITY_PATH,\n {teamId, id}\n )\n }\n\n getTeamActivityLocations(teamId: string) {\n if (this.activityLocationResponseDate && this.activityLocationResponseDate > sub(new Date(), {hours: 1})) {\n return of(this.activityLocationCollection);\n }\n\n return this.apiService\n .getCollection(\n activityLocationFactory,\n Role.TeamAdmin,\n TEAM_ACTIVITY_LOCATIONS_PATH,\n {teamId},\n {params: {limit: 'null'}}\n ).pipe(\n tap((activityLocationCollection: Collection<ActivityLocation>) => {\n this.activityLocationResponseDate = new Date();\n this.activityLocationCollection = activityLocationCollection;\n })\n );\n }\n\n getClubActivityLocations(clubId: string) {\n if (this.activityLocationResponseDate && this.activityLocationResponseDate > sub(new Date(), {hours: 1})) {\n return of(this.activityLocationCollection);\n }\n\n return this.apiService\n .getCollection(\n activityLocationFactory,\n Role.ClubAdmin,\n CLUB_ACTIVITY_LOCATIONS_PATH,\n {clubId},\n {params: {limit: 'null'}}\n ).pipe(\n tap((activityLocationCollection: Collection<ActivityLocation>) => {\n this.activityLocationResponseDate = new Date();\n this.activityLocationCollection = activityLocationCollection;\n })\n );\n }\n\n getClubActivityLocationGroups(clubId: string) {\n if (this.activityLocationGroupResponseDate && this.activityLocationGroupResponseDate > sub(new Date(), {hours: 1})) {\n return of(this.activityLocationGroupCollection);\n }\n\n return this.apiService\n .getCollection(\n activityLocationGroupFactory,\n Role.ClubAdmin,\n CLUB_ACTIVITY_LOCATION_GROUPS_PATH,\n {clubId},\n {params: {limit: 'null'}}\n ).pipe(\n tap((activityLocationGroupCollection: Collection<ActivityLocationGroup>) => {\n this.activityLocationGroupResponseDate = new Date();\n this.activityLocationGroupCollection = activityLocationGroupCollection;\n })\n );\n }\n\n getTeamActivityNew(teamId: string) {\n return this.apiService\n .getResource(\n activityFactory,\n Role.TeamAdmin,\n TEAM_ACTIVITY_NEW_PATH,\n {teamId}\n );\n }\n\n getTeamActivityParticipants(teamId: string, activityId: string) {\n return this.apiService\n .getCollection(\n searchMemberFactory,\n Role.TeamAdmin,\n TEAM_ACTIVITY_PARTICIPANTS_PATH,\n {\n teamId,\n activityId\n },\n {params: {limit: 'null'}}\n );\n }\n\n getTeamActivitySettings(teamId: string) {\n return this.apiService\n .getResource(\n activitySettingsFactory,\n Role.TeamAdmin,\n TEAM_ACTIVITY_SETTINGS_PATH,\n {\n teamId\n }\n );\n }\n\n getClubActivitySettings(clubId: string) {\n return this.apiService\n .getResource(\n activitySettingsFactory,\n Role.ClubAdmin,\n CLUB_ACTIVITY_SETTINGS_PATH,\n {\n clubId,\n }\n );\n }\n\n getTeamActivityTypes(teamId: string) {\n if (this.activityTypeResponseDate && this.activityTypeResponseDate > sub(new Date(), {hours: 1})) {\n return of(this.activityTypeCollection);\n }\n\n return this.apiService\n .getCollection(\n activityTypeFactory,\n Role.TeamAdmin,\n TEAM_ACTIVITY_TYPES_PATH,\n {teamId},\n {params: {limit: 'null'}}\n ).pipe(\n tap((activityTypeCollection: Collection<ActivityType>) => {\n this.activityTypeResponseDate = new Date();\n this.activityTypeCollection = activityTypeCollection;\n })\n )\n }\n\n getTeamCalendarEvents(teamId: string, startDate: string | null = null, endDate: string | null = null) {\n const params: { [key: string]: string } = {limit: 'null'};\n\n if (startDate) {\n params['search_start_day'] = startDate;\n }\n\n if (endDate) {\n params['search_end_day'] = endDate;\n }\n\n return this.apiService\n .getCollection(\n eventFactory,\n Role.TeamAdmin,\n TEAM_CALENDAR_PATH,\n {teamId},\n {\n params\n }\n );\n }\n\n resendInvite(teamId: string, activityId: string, activityInviteId: string) {\n return this.apiService\n .postResource(\n activityInviteFactory,\n Role.TeamAdmin,\n TEAM_ACTIVITY_INVITE_RESEND_PATH,\n {\n teamId,\n activityId,\n activityInviteId\n },\n {}\n );\n }\n\n updateMemberActivity(memberId: string, activityInviteId: string, activityInvite: unknown) {\n return this.apiService\n .updateResource(\n activityInviteFactory,\n Role.MemberAdmin,\n MEMBER_ACTIVITY_INVITE_PATH,\n {\n memberId,\n activityInviteId\n },\n activityInvite\n );\n }\n\n updatePublicActivityInvite(id: string, token: string, activityInvite: unknown) {\n return this.apiService\n .updateResource(\n activityInviteFactory,\n Role.Public,\n PUBLIC_ACTIVITY_INVITE_PATH,\n {\n id,\n token\n },\n activityInvite\n )\n }\n\n updateTeamActivity(teamId: string, activity: Activity) {\n return this.apiService\n .updateResource(\n activityFactory,\n Role.TeamAdmin,\n TEAM_ACTIVITY_PATH,\n {\n teamId,\n id: activity.id\n },\n this.removeUnusedActivityFields(activity)\n );\n }\n\n updateTeamActivityInvite(teamId: string, activityId: string, activityInviteId: string, activityInvite: MemberActivityInvite) {\n return this.apiService\n .updateResource(\n memberActivityInviteFactory,\n Role.TeamAdmin,\n TEAM_ACTIVITY_INVITE_PATH,\n {\n teamId,\n activityId,\n activityInviteId\n },\n activityInvite\n )\n }\n\n updateTeamActivityParticipants(teamId: string, activityId: string, members: Array<string>) {\n return this.apiService\n .postResource(\n () => {\n },\n Role.TeamAdmin,\n TEAM_ACTIVITY_PARTICIPANTS_PATH,\n {\n teamId,\n activityId\n },\n {\n members\n }\n );\n }\n\n private removeUnusedActivityFields(activity: Partial<Activity>): Partial<Activity> {\n if (typeof activity.id !== 'undefined') {\n delete activity.id;\n }\n\n if (typeof activity.file !== 'undefined' && !activity.file) {\n delete activity.file;\n }\n\n if (typeof activity.invite_last_response_date !== 'undefined' && !activity.invite_last_response_date) {\n delete activity.invite_last_response_date;\n }\n\n return activity;\n }\n}\n","import {ApiBookingCalendar} from \"../../api-models/api-booking-calendar\";\nimport {BookingCalendar} from \"../../models/booking-calendar\";\n\nexport const bookingCalendarFactory = (apiBookingCalendar: ApiBookingCalendar) =>\n new BookingCalendar(\n apiBookingCalendar.id,\n apiBookingCalendar.club_id,\n apiBookingCalendar.section_id,\n apiBookingCalendar.team_id,\n apiBookingCalendar.club_name,\n apiBookingCalendar.color,\n apiBookingCalendar.name,\n apiBookingCalendar.section_name,\n apiBookingCalendar.team_name\n );\n","import {ApiBookingCalendarSlotSession} from \"../../api-models\";\nimport {BookingCalendarSlotSession} from \"../../models\";\n\nexport const bookingCalendarSlotSessionFactory = (apiBookingSlotSession: ApiBookingCalendarSlotSession) =>\n new BookingCalendarSlotSession(\n apiBookingSlotSession.id,\n apiBookingSlotSession.section_id,\n apiBookingSlotSession.slot_id,\n apiBookingSlotSession.team_id,\n apiBookingSlotSession.end_time,\n apiBookingSlotSession.section_name,\n apiBookingSlotSession.start_time,\n apiBookingSlotSession.team_name,\n apiBookingSlotSession.is_overbooked,\n apiBookingSlotSession.type,\n );\n","import {BookingCalendarSlot} from \"../../models\";\nimport {ApiBookingCalendarSlot, ApiBookingCalendarSlotSession} from \"../../api-models\";\nimport {bookingCalendarSlotSessionFactory} from \"./booking-calendar-slot-session-factory\";\nimport {format} from \"date-fns\";\n\nexport const bookingCalendarSlotFactory = (apiBookingSlot: ApiBookingCalendarSlot) =>\n new BookingCalendarSlot(\n apiBookingSlot.id,\n apiBookingSlot.calendar_id,\n apiBookingSlot.location_id,\n apiBookingSlot.color,\n apiBookingSlot.day,\n apiBookingSlot.end_time,\n apiBookingSlot.group_id,\n apiBookingSlot.location_name,\n apiBookingSlot.number_of_available_sessions,\n apiBookingSlot.sessions && apiBookingSlot.sessions.length ? apiBookingSlot.sessions.map(\n (apiBookingSlotSession: ApiBookingCalendarSlotSession) => bookingCalendarSlotSessionFactory(apiBookingSlotSession)\n ) : [],\n apiBookingSlot.open_sessions && apiBookingSlot.open_sessions.length ? apiBookingSlot.open_sessions.map(\n (apiBookingSlotSession: ApiBookingCalendarSlotSession) => bookingCalendarSlotSessionFactory(apiBookingSlotSession)\n ) : [],\n apiBookingSlot.start_time,\n apiBookingSlot.type,\n 'none',\n false,\n false,\n 6,\n format(new Date(), 'yyyy-MM-dd'),\n 'repeat_until',\n apiBookingSlot.reserved_time,\n apiBookingSlot.reserved_time_type,\n apiBookingSlot.reserved_time_position,\n );\n","import {Injectable} from '@angular/core';\nimport {ApiService} from './api.service';\nimport {Role,} from '../models';\nimport {BookingCalendar, BookingCalendarSlot, BookingCalendarSlotSession} from \"../models\";\nimport {bookingCalendarFactory} from \"./factories/booking-calendar-factory\";\nimport {bookingCalendarSlotFactory} from \"./factories/booking-calendar-slot-factory\";\nimport {bookingCalendarSlotSessionFactory} from \"./factories/booking-calendar-slot-session-factory\";\n\nconst CLUB_BOOKING_CALENDARS_PATH = ':clubId/activities/calendars/';\nconst CLUB_BOOKING_CALENDAR_PATH = ':clubId/activities/calendars/:id/';\nconst CLUB_BOOKING_CALENDAR_SLOTS_PATH = ':clubId/activities/slots/';\nconst CLUB_BOOKING_CALENDAR_SLOT_PATH = ':clubId/activities/slots/:id/';\nconst CLUB_BOOKING_CALENDAR_REPEATABLE_SLOT_PATH = ':clubId/activities/slots/:id/all/';\nconst CLUB_BOOKING_CALENDAR_SLOT_SESSIONS_PATH = ':clubId/activities/sessions/';\nconst CLUB_BOOKING_CALENDAR_SLOT_SESSION_PATH = ':clubId/activities/sessions/:id/';\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class BookingCalendarService {\n constructor(private apiService: ApiService) {\n }\n\n // region Booking calendar\n\n createClubBookingCalendar(clubId: string, calendar: Partial<BookingCalendar>) {\n delete calendar.id;\n return this.apiService\n .postResource(\n bookingCalendarFactory,\n Role.ClubAdmin,\n CLUB_BOOKING_CALENDARS_PATH,\n {\n clubId,\n },\n calendar\n )\n }\n\n getClubBookingCalendars(clubId: string, name: string | null = null) {\n const params: { [key: string]: string } = {limit: 'null'};\n\n if (name) {\n params['name'] = name;\n }\n\n return this.apiService\n .getCollection(\n bookingCalendarFactory,\n Role.ClubAdmin,\n CLUB_BOOKING_CALENDARS_PATH,\n {clubId},\n {\n params\n }\n )\n }\n\n getClubBookingCalendar(clubId: string, id: string) {\n return this.apiService\n .getResource(\n bookingCalendarFactory,\n Role.ClubAdmin,\n CLUB_BOOKING_CALENDAR_PATH,\n {clubId, id}\n )\n }\n\n updateClubBookingCalendar(clubId: string, calendar: BookingCalendar) {\n return this.apiService\n .updateResource(\n bookingCalendarFactory,\n Role.ClubAdmin,\n CLUB_BOOKING_CALENDAR_PATH,\n {\n clubId,\n id: calendar.id\n },\n calendar\n );\n }\n\n deleteClubBookingCalendar(clubId: string, id: string) {\n return this.apiService\n .deleteResource(\n Role.ClubAdmin,\n CLUB_BOOKING_CALENDAR_PATH,\n {\n clubId,\n id\n }\n );\n }\n\n // endregion\n\n // region Booking calendar slot\n\n createClubBookingCalendarSlot(clubId: string, slot: Partial<BookingCalendarSlot>) {\n delete slot.id;\n return this.apiService\n .postResource(\n bookingCalendarSlotFactory,\n Role.ClubAdmin,\n CLUB_BOOKING_CALENDAR_SLOTS_PATH,\n {\n clubId,\n },\n slot\n )\n }\n\n getClubBookingCalendarSlots(\n clubId: string,\n startDate: string | null = null,\n endDate: string | null = null,\n calendarIds: string[] | null = null,\n locationIds: string[] | null = null,\n ) {\n const params: { [key: string]: string } = {limit: 'null'};\n\n if (startDate) {\n params['day__gte'] = startDate;\n }\n\n if (endDate) {\n params['day__lte'] = endDate;\n }\n\n if (calendarIds && calendarIds.length) {\n params['calendar_id'] = calendarIds.join(',')\n }\n\n if (locationIds && locationIds.length) {\n params['location_id'] = locationIds.join(',')\n }\n\n return this.apiService\n .getCollection(\n bookingCalendarSlotFactory,\n Role.ClubAdmin,\n CLUB_BOOKING_CALENDAR_SLOTS_PATH,\n {clubId},\n {\n params\n }\n )\n }\n\n getClubBookingCalendarSlot(clubId: string, id: string) {\n return this.apiService\n .getResource(\n bookingCalendarSlotFactory,\n Role.ClubAdmin,\n CLUB_BOOKING_CALENDAR_SLOT_PATH,\n {clubId, id}\n )\n }\n\n updateClubBookingCalendarSlot(clubId: string, slot: BookingCalendarSlot) {\n return this.apiService\n .updateResource(\n bookingCalendarSlotFactory,\n Role.ClubAdmin,\n CLUB_BOOKING_CALENDAR_SLOT_PATH,\n {\n clubId,\n id: slot.id\n },\n slot\n );\n }\n\n deleteClubBookingCalendarSlot(clubId: string, id: string) {\n return this.apiService\n .deleteResource(\n Role.ClubAdmin,\n CLUB_BOOKING_CALENDAR_SLOT_PATH,\n {\n clubId,\n id\n }\n );\n }\n\n deleteClubBookingCalendarSlotRepeatable(clubId: string, id: string) {\n return this.apiService\n .deleteResource(\n Role.ClubAdmin,\n CLUB_BOOKING_CALENDAR_REPEATABLE_SLOT_PATH,\n {\n clubId,\n id\n }\n );\n }\n\n // endregion\n\n // region Booking calendar slot session\n\n createClubBookingCalendarSlotSession(clubId: string, session: Partial<BookingCalendarSlotSession>) {\n delete session.id;\n return this.apiService\n .postResource(\n bookingCalendarSlotSessionFactory,\n Role.ClubAdmin,\n CLUB_BOOKING_CALENDAR_SLOT_SESSIONS_PATH,\n {\n clubId,\n },\n session\n )\n }\n\n getClubBookingCalendarSlotSessions(clubId: string, startDate: string | null = null, endDate: string | null = null) {\n const params: { [key: string]: string } = {limit: 'null'};\n\n if (startDate) {\n params['day__gte'] = startDate;\n }\n\n if (endDate) {\n params['day__lte'] = endDate;\n }\n\n return this.apiService\n .getCollection(\n bookingCalendarSlotSessionFactory,\n Role.ClubAdmin,\n CLUB_BOOKING_CALENDAR_SLOT_SESSIONS_PATH,\n {clubId},\n {\n params\n }\n )\n }\n\n getClubBookingCalendarSlotSession(clubId: string, id: string) {\n return this.apiService\n .getResource(\n bookingCalendarSlotSessionFactory,\n Role.ClubAdmin,\n CLUB_BOOKING_CALENDAR_SLOT_SESSION_PATH,\n {clubId, id}\n )\n }\n\n updateClubBookingCalendarSlotSession(clubId: string, session: BookingCalendarSlotSession) {\n return this.apiService\n .updateResource(\n bookingCalendarSlotSessionFactory,\n Role.ClubAdmin,\n CLUB_BOOKING_CALENDAR_SLOT_SESSION_PATH,\n {\n clubId,\n id: session.id\n },\n session\n );\n }\n\n deleteClubBookingCalendarSlotSession(clubId: string, id: string) {\n return this.apiService\n .deleteResource(\n Role.ClubAdmin,\n CLUB_BOOKING_CALENDAR_SLOT_SESSION_PATH,\n {\n clubId,\n id\n }\n );\n }\n\n // endregion\n}\n","import { Injectable } from '@angular/core';\nimport { ApiService } from './api.service';\nimport { Role } from '../models';\nimport { searchClubFactory } from './factories';\n\nconst MEMBER_CLUB_INFO = ':memberId/club-info/';\nconst TEAM_CLUB_INFO = ':teamId/club-info/';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ClubService {\n\n constructor(private apiService: ApiService) { }\n\n getMemberClubInfo(memberId: string) {\n return this.apiService\n .getResource(\n searchClubFactory,\n Role.MemberAdmin,\n MEMBER_CLUB_INFO,\n {memberId}\n )\n }\n\n getTeamClubInfo(teamId: string) {\n return this.apiService\n .getResource(\n searchClubFactory,\n Role.TeamAdmin,\n TEAM_CLUB_INFO,\n {teamId}\n )\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { map, tap } from 'rxjs/operators';\nimport { Observable, of } from 'rxjs';\n\nimport { ApiService } from './api.service';\nimport { Collection, Role } from '../models';\nimport { OptionInterface } from '../interfaces';\n\nconst ACTIVITY_INVITE_SETTINGS_PATH = 'every-admin/constants/activity-invite-settings/';\nconst ACTIVITY_MAX_ATTENDANT_TYPES_PATH = 'every-admin/constants/activity-max-attendant-types/';\nconst ACTIVITY_MEET_UP_TIMES_PATH = 'every-admin/constants/activity-meet-up-times/';\nconst ACTIVITY_REMINDER_DAYS_PATH = 'every-admin/constants/activity-invite-days/';\nconst ACTIVITY_REMINDER_RECEIVERS_PATH = 'every-admin/constants/activity-remind-receivers/';\nconst ACTIVITY_REMINDER_TIMES_PATH = 'every-admin/constants/activity-remind-hours/';\nconst ACTIVITY_REPEAT_OPTIONS_PATH = 'every-admin/constants/activity-repeat-options/';\nconst ACTIVITY_REPEAT_TYPE_OPTIONS_PATH = 'every-admin/constants/activity-repeat-type-options/';\nconst COUNTRIES_PATH = 'every-admin/constants/countries/';\nconst LANGUAGES_PATH = 'every-admin/constants/languages/';\nconst MEMBER_CONTACT_TYPES_PATH = 'every-admin/constants/member-contact-types/';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ConstantService {\n private activityInviteSettings: Array<OptionInterface> = [];\n private activityMaxAttendantTypes: Array<OptionInterface> = [];\n private activityMeetUpTimes: Array<OptionInterface> = [];\n private activityReminderDays: Array<OptionInterface> = [];\n private activityReminderReceivers: Array<OptionInterface> = [];\n private activityReminderTimes: Array<OptionInterface> = [];\n private activityRepeatOptions: Array<OptionInterface> = [];\n private activityRepeatTypeOptions: Array<OptionInterface> = [];\n private countries: Array<OptionInterface> = [];\n private languages: Array<OptionInterface> = [];\n private memberContactTypes: Array<OptionInterface> = [];\n\n constructor(private apiService: ApiService) {}\n\n getActivityInviteSettings(): Observable<Array<OptionInterface>> {\n if (this.activityInviteSettings.length) {\n return of(this.activityInviteSettings);\n }\n\n return this.getConstants(ACTIVITY_INVITE_SETTINGS_PATH)\n .pipe(tap((activityInviteSettings: Array<OptionInterface>) => this.activityInviteSettings = activityInviteSettings));\n }\n\n getActivityMaxAttendantsTypes(): Observable<Array<OptionInterface>> {\n if (this.activityMaxAttendantTypes.length) {\n return of(this.activityMaxAttendantTypes);\n }\n\n return this.getConstants(ACTIVITY_MAX_ATTENDANT_TYPES_PATH)\n .pipe(tap((activityMaxAttendantTypes: Array<OptionInterface>) => this.activityMaxAttendantTypes = activityMaxAttendantTypes));\n }\n\n getActivityMeetUpTimes(): Observable<Array<OptionInterface>> {\n if (this.activityMeetUpTimes.length) {\n return of(this.activityMeetUpTimes);\n }\n\n return this.getConstants(ACTIVITY_MEET_UP_TIMES_PATH)\n .pipe(tap((activityMeetUpTimes: Array<OptionInterface>) => this.activityMeetUpTimes = activityMeetUpTimes));\n }\n\n getActivityReminderDays(): Observable<Array<OptionInterface>> {\n if (this.activityReminderDays.length) {\n return of(this.activityReminderDays);\n }\n\n return this.getConstants(ACTIVITY_REMINDER_DAYS_PATH)\n .pipe(tap((activityReminderDays: Array<OptionInterface>) => this.activityReminderDays = activityReminderDays));\n }\n\n getActivityReminderReceivers(): Observable<Array<OptionInterface>> {\n if (this.activityReminderReceivers.length) {\n return of(this.activityReminderReceivers);\n }\n\n return this.getConstants(ACTIVITY_REMINDER_RECEIVERS_PATH)\n .pipe(tap((activityReminderReceivers: Array<OptionInterface>) => this.activityReminderReceivers = activityReminderReceivers));\n }\n\n getActivityReminderTimes(): Observable<Array<OptionInterface>> {\n if (this.activityReminderTimes.length) {\n return of(this.activityReminderTimes);\n }\n\n return this.getConstants(ACTIVITY_REMINDER_TIMES_PATH)\n .pipe(tap((activityReminderTimes: Array<OptionInterface>) => this.activityReminderTimes = activityReminderTimes));\n }\n\n getActivityRepeatOptions(): Observable<Array<OptionInterface>> {\n if (this.activityRepeatOptions.length) {\n return of(this.activityRepeatOptions);\n }\n\n return this.getConstants(ACTIVITY_REPEAT_OPTIONS_PATH)\n .pipe(tap((activityRepeatOptions: Array<OptionInterface>) => this.activityRepeatOptions = activityRepeatOptions));\n }\n\n getActivityRepeatTypeOptions(): Observable<Array<OptionInterface>> {\n if (this.activityRepeatTypeOptions.length) {\n return of(this.activityRepeatTypeOptions);\n }\n\n return this.getConstants(ACTIVITY_REPEAT_TYPE_OPTIONS_PATH)\n .pipe(tap((activityRepeatTypeOptions: Array<OptionInterface>) => this.activityRepeatTypeOptions = activityRepeatTypeOptions));\n }\n\n getCountries(): Observable<Array<OptionInterface>> {\n if (this.countries.length) {\n return of(this.countries);\n }\n\n return this.getConstants(COUNTRIES_PATH)\n .pipe(tap((countries: Array<OptionInterface>) => this.countries = countries));\n }\n\n getLanguages(): Observable<Array<OptionInterface>> {\n if (this.languages.length) {\n return of(this.languages);\n }\n\n return this.getConstants(LANGUAGES_PATH)\n .pipe(\n map((languages: Array<OptionInterface>) => {\n // FIXME: For now - remove the french language.\n const index = languages.findIndex((language: OptionInterface) => language.value === 'fr');\n if (index !== -1) {\n languages.splice(index, 1);\n }\n\n return languages;\n }),\n tap((languages: Array<OptionInterface>) => this.languages = languages)\n );\n }\n\n getMemberContactTypes(): Observable<Array<OptionInterface>> {\n if (this.memberContactTypes.length) {\n return of(this.memberContactTypes);\n }\n\n return this.getConstants(MEMBER_CONTACT_TYPES_PATH)\n .pipe(tap((memberContactTypes: Array<OptionInterface>) => this.memberContactTypes = memberContactTypes));\n }\n\n private getConstants(path: string): Observable<Array<OptionInterface>> {\n return this.apiService\n .getCollection<OptionInterface, OptionInterface>(\n (option: OptionInterface) => option,\n Role.None,\n path\n )\n .pipe(\n map((response: Collection<OptionInterface>) => response.toArray())\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Email, Role } from '../models';\nimport { ApiService } from './api.service';\nimport { EmailRecipientInterface } from '../interfaces';\n\nconst TEAM_LEADER_CREATE_EMAIL_PATH = ':teamId/distribution/email/';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class EmailService {\n private backHref = '';\n private recipients: Array<EmailRecipientInterface> = [];\n\n constructor(private apiService: ApiService) { }\n\n clear(): void {\n this.backHref = '';\n this.recipients = [];\n }\n\n getBackHref(): string {\n return this.backHref;\n }\n\n getRecipients(): Array<EmailRecipientInterface> {\n return this.recipients;\n }\n\n removeRecipient(id: string): boolean {\n const index = this.recipients.findIndex((item: EmailRecipientInterface) => item.id === id);\n\n if (index !== -1) {\n this.recipients.splice(index, 1);\n return true;\n }\n\n return false;\n }\n\n sendTeamLeaderEmail(teamId: string, email: Email) {\n return this.apiService\n .postResource(\n (email_count: {queued_emails: number}) => email_count.queued_emails,\n Role.TeamAdmin,\n TEAM_LEADER_CREATE_EMAIL_PATH,\n {teamId},\n {\n body: email.body,\n subject: email.subject,\n recipients: email.recipients.map((value: EmailRecipientInterface) => value.id)\n }\n );\n }\n\n setBackHref(href: string): void {\n this.backHref = href;\n }\n\n setRecipients(emailRecipients: Array<EmailRecipientInterface>): void {\n this.recipients = [...emailRecipients].sort((a, b) => (a.name < b.name ? -1 : 1));\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ApiService } from './api.service';\nimport { Role } from '../models';\nimport { externalLinkFactory } from './factories';\n\nconst MEMBER_EXTERNAL_LINK_PATH = ':memberId/others/externallinks/';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ExternalLinkService {\n\n constructor(private apiService: ApiService) { }\n\n getMemberExternalLinks(memberId: string) {\n return this.apiService\n .getCollection(\n externalLinkFactory,\n Role.MemberAdmin,\n MEMBER_EXTERNAL_LINK_PATH,\n {memberId}\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ApiService } from './api.service';\nimport { ApiDirectory } from '../api-models';\nimport { Directory, FileObject, Role } from '../models';\nimport { directoryFactory, fileFactory } from './factories';\n\nconst MEMBER_DIRECTORIES_PATH = ':memberId/files/';\nconst TEAM_DIRECTORIES_PATH = ':teamId/directories/';\nconst TEAM_DIRECTORY_PATH = ':teamId/directories/:directoryId/';\nconst TEAM_FILES_PATH = ':teamId/directories/:directoryId/files/';\nconst TEAM_FILE_PATH = ':teamId/directories/:directoryId/files/:fileId/';\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class FileService {\n\n constructor(private apiService: ApiService) { }\n\n createTeamDirectory(teamId: string, directory: Partial<Directory>) {\n return this.apiService\n .postResource(\n directoryFactory,\n Role.TeamAdmin,\n TEAM_DIRECTORIES_PATH,\n {\n teamId\n },\n directory\n );\n }\n\n createTeamFile(teamId: string, directoryId: string, file: Partial<FileObject>) {\n const formData = new FormData();\n const fileObj = file.file as File;\n formData.append('name', file.name as string);\n formData.append('file', fileObj, fileObj.name);\n\n return this.apiService\n .postFormData(\n fileFactory,\n Role.TeamAdmin,\n TEAM_FILES_PATH,\n {\n teamId,\n directoryId\n },\n formData\n );\n }\n\n deleteTeamDirectory(teamId: string, directoryId: string) {\n return this.apiService\n .deleteResource(\n Role.TeamAdmin,\n TEAM_DIRECTORY_PATH,\n {\n teamId,\n directoryId\n }\n );\n }\n\n deleteTeamFile(teamId: string, directoryId: string, fileId: string) {\n return this.apiService\n .deleteResource(\n Role.TeamAdmin,\n TEAM_FILE_PATH,\n {\n teamId,\n directoryId,\n fileId\n }\n );\n }\n\n getMemberDirectories(memberId: string) {\n return this.apiService\n .getCollection<ApiDirectory, Directory>(\n directoryFactory,\n Role.MemberAdmin,\n MEMBER_DIRECTORIES_PATH,\n {memberId},\n {params: {limit: 'null'}}\n )\n }\n\n getTeamDirectories(teamId: string) {\n return this.apiService\n .getCollection<ApiDirectory, Directory>(\n directoryFactory,\n Role.TeamAdmin,\n TEAM_DIRECTORIES_PATH,\n {teamId},\n {params: {limit: 'null'}}\n )\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { ApiClubImage, ApiMemberInvoice, ApiSearchMemberInvoice } from '../../api-models';\nimport { ApiService } from '../api.service';\nimport {\n ClubImage,\n MemberInvoice,\n Role,\n SearchMemberInvoice,\n} from '../../models';\nimport { clubImageFactory, memberInvoiceFactory, searchMemberInvoiceFactory } from '../factories';\n\nconst MEMBER_INVOICE_PATH = ':memberId/invoices/:invoiceId/';\nconst MEMBER_INVOICES_PATH = ':memberId/invoices/';\nconst PUBLIC_INVOICE_PATH = 'invoices/:invoiceId/:token/';\nconst PUBLIC_INVOICE_LOGO_PATH = 'invoices/:invoiceId/:token/logo/';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class InvoiceService {\n constructor(private apiService: ApiService) {}\n\n getMemberInvoice(memberId: string, invoiceId: string) {\n return this.getInvoice(Role.MemberAdmin, MEMBER_INVOICE_PATH, {memberId, invoiceId});\n }\n\n getMemberInvoices(memberId: string, filterParams: { [key: string]: string } = {}) {\n return this.getInvoices(Role.MemberAdmin, MEMBER_INVOICES_PATH, {memberId}, filterParams);\n }\n\n getPublicInvoice(invoiceId: string, token: string) {\n return this.getInvoice(Role.Public, PUBLIC_INVOICE_PATH, {invoiceId, token});\n }\n\n getPublicInvoiceLogo(invoiceId: string, token: string) {\n return this.apiService.getResource<ApiClubImage, ClubImage>(\n clubImageFactory,\n Role.Public,\n PUBLIC_INVOICE_LOGO_PATH,\n {invoiceId, token}\n );\n }\n\n private getInvoice(role: Role, path: string, pathParams: { [key: string]: string }) {\n return this.apiService.getResource<ApiMemberInvoice, MemberInvoice>(\n memberInvoiceFactory,\n role,\n path,\n pathParams\n )\n }\n\n private getInvoices(role: Role, path: string, pathParams: { [key: string]: string }, filterParams: { [key: string]: string } = {}) {\n return this.apiService.getCollection<ApiSearchMemberInvoice, SearchMemberInvoice>(\n searchMemberInvoiceFactory,\n role,\n path,\n pathParams,\n { params: filterParams }\n )\n }\n}\n","import { ApiPaymentAttempt } from './api-payment-attempt';\n\nexport class ApiPaymentAttemptCreate implements Pick<ApiPaymentAttempt, 'type' | 'invoice_id'> {\n constructor(public invoice_id: ApiPaymentAttempt['invoice_id'], public type: ApiPaymentAttempt['type'],\n public telephone_number: string) {}\n}\n","import { Injectable } from '@angular/core';\nimport { ApiService } from '../api.service';\nimport { PaymentAttempt, Role, SwishQrCode } from '../../models';\nimport { ApiPaymentAttempt, ApiPaymentAttemptCreate, ApiSwishQrCode } from '../../api-models';\nimport { PaymentAttemptType } from '../../types';\nimport { paymentAttemptFactory } from '../factories';\n\nconst MEMBER_PAYMENT_PATH = ':memberId/invoices/:invoiceId/payment-attempts/:id/';\nconst MEMBER_PAYMENTS_PATH = ':memberId/invoices/:invoiceId/payment-attempts/';\nconst PUBLIC_PAYMENT_PATH = 'invoices/:invoiceId/:token/payment-attempts/:id/';\nconst PUBLIC_PAYMENTS_PATH = 'invoices/:invoiceId/:token/payment-attempts/';\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class PaymentAttemptService {\n constructor(private apiService: ApiService) {}\n\n createMemberPaymentAttempt(memberId: string, invoiceId: string, type: PaymentAttemptType, phoneNumber: string = '') {\n return this.createPaymentAttempt(Role.MemberAdmin, MEMBER_PAYMENTS_PATH, {memberId, invoiceId},\n new ApiPaymentAttemptCreate(invoiceId, type, phoneNumber));\n }\n\n createPublicPaymentAttempt(invoiceId: string, token: string, type: PaymentAttemptType, phoneNumber: string = '') {\n return this.createPaymentAttempt(Role.Public, PUBLIC_PAYMENTS_PATH, {invoiceId, token},\n new ApiPaymentAttemptCreate(invoiceId, type, phoneNumber));\n }\n\n getMemberPaymentAttempt(memberId: string, invoiceId: string, id: number) {\n return this.getPaymentAttempt(Role.MemberAdmin, MEMBER_PAYMENT_PATH, {memberId, invoiceId, id: id.toString()});\n }\n\n getMemberSwishQRCode(memberId: string, invoiceId: string, id: number) {\n return this.getSwishQRCode(Role.MemberAdmin, `${MEMBER_PAYMENT_PATH}swish-qr/`, {memberId, invoiceId, id: id.toString()});\n }\n\n getPublicPaymentAttempt(invoiceId: string, token: string, id: number) {\n return this.getPaymentAttempt(Role.Public, PUBLIC_PAYMENT_PATH, {invoiceId, token, id: id.toString()});\n }\n\n getPublicSwishQRCode(invoiceId: string, token: string, id: number) {\n return this.getSwishQRCode(Role.Public, `${PUBLIC_PAYMENT_PATH}swish-qr/`, {invoiceId, token, id: id.toString()});\n }\n\n private createPaymentAttempt(role: Role, path: string, pathParams: { [key: string]: string }, data: ApiPaymentAttemptCreate) {\n return this.apiService.postResource<ApiPaymentAttempt, PaymentAttempt>(paymentAttemptFactory, role, path, pathParams, data);\n }\n\n private getPaymentAttempt(role: Role, path: string, pathParams: { [key: string]: string }) {\n return this.apiService.getResource<ApiPaymentAttempt, PaymentAttempt>(paymentAttemptFactory, role, path, pathParams);\n }\n\n private getSwishQRCode(role: Role, path: string, pathParams: { [key: string]: string }) {\n return this.apiService.getResource<ApiSwishQrCode, SwishQrCode>(\n (apiSwishQrCode: ApiSwishQrCode) => new SwishQrCode(apiSwishQrCode.qr_code),\n role,\n path,\n pathParams\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ApiService } from './api.service';\nimport { ApiMember, ApiSearchMember } from '../api-models';\nimport {\n Member,\n Role,\n SearchMember\n} from '../models';\nimport { memberFactory, searchMemberFactory } from './factories';\n\nconst MEMBER_OTHER_MEMBER_PATH = ':memberId/others/clubmembers/:id/';\nconst MEMBER_OTHER_MEMBER_SEARCH_PATH = ':memberId/others/clubmembers/';\nconst MEMBER_PROFILE_CONTACT_PATH = ':memberId/member-detail/contacts/:contactId/';\nconst MEMBER_PROFILE_PATH = ':memberId/member-detail/';\nconst TEAM_MEMBER_CONTACT_PATH = ':teamId/team-members/:memberId/contacts/:contactId/';\nconst TEAM_OTHER_MEMBER_PATH = ':teamId/team-members/others/:id/';\nconst TEAM_OTHER_MEMBER_SEARCH_PATH = ':teamId/team-members/others/';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MemberService {\n constructor(private apiService: ApiService) { }\n\n getMemberProfile(memberId: string) {\n return this.apiService\n .getResource<ApiMember, Member>(\n memberFactory,\n Role.MemberAdmin,\n MEMBER_PROFILE_PATH,\n {memberId}\n );\n }\n\n getMemberOtherMember(memberId: string, id: string) {\n return this.apiService\n .getResource<ApiMember, Member>(\n memberFactory,\n Role.MemberAdmin,\n MEMBER_OTHER_MEMBER_PATH,\n {memberId, id}\n );\n }\n\n getTeamOtherMember(teamId: string, id: string) {\n return this.apiService\n .getResource<ApiMember, Member>(\n memberFactory,\n Role.MemberAdmin,\n TEAM_OTHER_MEMBER_PATH,\n {teamId, id}\n );\n }\n\n removeMemberProfileContact(memberId: string, contactId: string) {\n return this.apiService\n .deleteResource(\n Role.MemberAdmin,\n MEMBER_PROFILE_CONTACT_PATH,\n {memberId, contactId}\n );\n }\n\n removeTeamMemberContact(teamId: string, memberId: string, contactId: string) {\n return this.apiService\n .deleteResource(\n Role.TeamAdmin,\n TEAM_MEMBER_CONTACT_PATH,\n {teamId, memberId, contactId}\n );\n }\n\n searchMemberOtherMembers(memberId: string, searchTerm: string) {\n return this.apiService\n .getCollection<ApiSearchMember, SearchMember>(\n searchMemberFactory,\n Role.MemberAdmin,\n MEMBER_OTHER_MEMBER_SEARCH_PATH,\n {memberId},\n {params: {q: searchTerm}}\n )\n }\n\n searchTeamOtherMembers(teamId: string, searchTerm: string) {\n return this.apiService\n .getCollection<ApiSearchMember, SearchMember>(\n searchMemberFactory,\n Role.TeamAdmin,\n TEAM_OTHER_MEMBER_SEARCH_PATH,\n {teamId},\n {params: {q: searchTerm}}\n )\n }\n\n updateMemberProfile(memberId: string, memberProfile: unknown) {\n return this.apiService\n .updateResource<ApiMember, Member>(\n memberFactory,\n Role.MemberAdmin,\n MEMBER_PROFILE_PATH,\n {memberId},\n memberProfile\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ApiService } from './api.service';\nimport {\n Role\n} from '../models';\nimport {\n ApiCardMemberTicket\n} from '../api-models';\nimport { cardDealFactory, cardTicketFactory, memberCardFactory, searchMemberCardFactory } from './factories';\n\nconst MEMBER_MEMBER_CARD_PATH = ':memberId/member-cards/:id/';\nconst MEMBER_MEMBER_CARD_DEALS_PATH = ':memberId/member-cards/:id/deals/';\nconst MEMBER_MEMBER_CARD_ACTIVATE_TICKET_PATH = ':memberId/member-cards/:cardId/tickets/:id/activate/';\nconst MEMBER_MEMBER_CARD_TICKETS_PATH = ':memberId/member-cards/:id/tickets/';\nconst MEMBER_MEMBER_CARDS_PATH = ':memberId/member-cards/';\n\nconst PUBLIC_MEMBER_CARD_PATH = 'member-cards/:id/:token/';\nconst PUBLIC_MEMBER_CARD_DEALS_PATH = 'member-cards/:id/:token/deals/';\nconst PUBLIC_MEMBER_CARD_ACTIVATE_TICKET_PATH = 'member-cards/:cardId/:token/tickets/:id/activate/';\nconst PUBLIC_MEMBER_CARD_TICKETS_PATH = 'member-cards/:id/:token/tickets/';\n\n\nconst pinCodeFactory = (apiCardMemberTicket: ApiCardMemberTicket) => {\n return !!apiCardMemberTicket;\n}\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MemberCardService {\n constructor(private apiService: ApiService) { }\n\n activateMemberCardTicket(memberId: string, cardId: string, id: string, pin_code: string) {\n return this.apiService\n .postResource<ApiCardMemberTicket, boolean>(\n pinCodeFactory,\n Role.MemberAdmin,\n MEMBER_MEMBER_CARD_ACTIVATE_TICKET_PATH,\n {memberId, cardId, id},\n {pin_code}\n );\n }\n\n activatePublicCardTicket(cardId: string, token: string, id: string, pin_code: string) {\n return this.apiService\n .postResource<ApiCardMemberTicket, boolean>(\n pinCodeFactory,\n Role.Public,\n PUBLIC_MEMBER_CARD_ACTIVATE_TICKET_PATH,\n {\n cardId,\n token,\n id\n },\n {\n pin_code\n }\n )\n }\n\n getMemberCard(memberId: string, id: string) {\n return this.apiService\n .getResource(\n memberCardFactory,\n Role.MemberAdmin,\n MEMBER_MEMBER_CARD_PATH,\n {memberId, id}\n );\n }\n\n getMemberCardDeals(memberId: string, id: string, filterParams: { [key: string]: string } = {}) {\n return this.apiService\n .getCollection(\n cardDealFactory,\n Role.MemberAdmin,\n MEMBER_MEMBER_CARD_DEALS_PATH,\n {memberId, id},\n {params: filterParams}\n )\n }\n\n getMemberCardTickets(memberId: string, id: string, filterParams: { [key: string]: string } = {}) {\n return this.apiService\n .getCollection(\n cardTicketFactory,\n Role.MemberAdmin,\n MEMBER_MEMBER_CARD_TICKETS_PATH,\n {memberId, id},\n {params: filterParams}\n )\n }\n\n getMemberCards(memberId: string, filterParams: { [key: string]: string } = {}) {\n return this.apiService\n .getCollection(\n searchMemberCardFactory,\n Role.MemberAdmin,\n MEMBER_MEMBER_CARDS_PATH,\n {memberId},\n { params: filterParams }\n );\n }\n\n getPublicMemberCard(id: string, token: string) {\n return this.apiService\n .getResource(\n memberCardFactory,\n Role.Public,\n PUBLIC_MEMBER_CARD_PATH,\n {\n id,\n token\n }\n )\n }\n\n getPublicMemberCardDeals(id: string, token: string, filterParams: { [key: string]: string } = {}) {\n return this.apiService\n .getCollection(\n cardDealFactory,\n Role.Public,\n PUBLIC_MEMBER_CARD_DEALS_PATH,\n {\n id,\n token\n },\n {params: filterParams}\n )\n }\n\n getPublicMemberCardTickets(id: string, token: string, filterParams: { [key: string]: string } = {}) {\n return this.apiService\n .getCollection(\n cardTicketFactory,\n Role.Public,\n PUBLIC_MEMBER_CARD_TICKETS_PATH,\n {\n id,\n token\n },\n {params: filterParams}\n )\n }\n}\n","import {Injectable} from \"@angular/core\";\nimport {ApiService} from \"./api.service\";\nimport {ApiMemberPublicForm} from \"../api-models\";\nimport {MemberPublicForm, Role} from \"../models\";\nimport { memberPublicFormFactory } from './factories';\n\nconst MEMBER_MEMBER_PUBLIC_FORM_PATH = ':memberId/myclub-forms/:id/';\nconst MEMBER_MEMBER_PUBLIC_FORMS_PATH = ':memberId/myclub-forms/';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MemberPublicFormService {\n constructor(private apiService: ApiService) { }\n\n getMemberMemberPublicForms(memberId: string) {\n return this.apiService\n .getCollection<ApiMemberPublicForm, MemberPublicForm>(\n memberPublicFormFactory,\n Role.MemberAdmin,\n MEMBER_MEMBER_PUBLIC_FORMS_PATH,\n {memberId}\n );\n }\n\n getMemberMemberPublicForm(memberId: string, id: string) {\n return this.apiService\n .getResource<ApiMemberPublicForm, MemberPublicForm>(\n memberPublicFormFactory,\n Role.MemberAdmin,\n MEMBER_MEMBER_PUBLIC_FORM_PATH,\n {\n memberId,\n id\n }\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ApiService } from './api.service';\nimport { News, Role } from '../models';\nimport { newsFactory } from './factories';\n\nconst MEMBER_NEWS_ITEMS_PATH = ':memberId/news/';\nconst MEMBER_NEWS_ITEM_PATH = ':memberId/news/:id/';\nconst TEAM_NEWS_ITEMS_PATH = ':teamId/news/';\nconst TEAM_NEWS_ITEM_PATH = ':teamId/news/:id/';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class NewsService {\n\n constructor(private apiService: ApiService) { }\n\n createTeamNews(teamId: string, news: Partial<News>) {\n delete news.id;\n\n return this.apiService\n .postFormData(\n newsFactory,\n Role.TeamAdmin,\n TEAM_NEWS_ITEMS_PATH,\n {\n teamId\n },\n this.createFormData(news)\n );\n }\n\n deleteTeamNews(teamId: string, id: string) {\n return this.apiService\n .deleteResource(\n Role.TeamAdmin,\n TEAM_NEWS_ITEM_PATH,\n {\n teamId,\n id\n }\n )\n }\n\n getMemberNews(memberId: string, id: string) {\n return this.apiService\n .getResource(\n newsFactory,\n Role.MemberAdmin,\n MEMBER_NEWS_ITEM_PATH,\n {\n memberId,\n id\n }\n );\n }\n\n getTeamNews(teamId: string, id: string) {\n return this.apiService\n .getResource(\n newsFactory,\n Role.TeamAdmin,\n TEAM_NEWS_ITEM_PATH,\n {\n teamId,\n id\n }\n );\n }\n\n listMemberNews(memberId: string, offset: number) {\n return this.apiService\n .getCollection(\n newsFactory,\n Role.MemberAdmin,\n MEMBER_NEWS_ITEMS_PATH,\n {\n memberId\n },\n {\n params: {\n offset: offset.toString(10)\n }\n }\n );\n }\n\n listTeamNews(teamId: string, offset: number) {\n return this.apiService\n .getCollection(\n newsFactory,\n Role.TeamAdmin,\n TEAM_NEWS_ITEMS_PATH,\n {\n teamId\n },\n {\n params: {\n offset: offset.toString(10)\n }\n }\n );\n }\n\n updateTeamNews(teamId: string, id: string, news: Partial<News>) {\n return this.apiService\n .postFormData(\n newsFactory,\n Role.TeamAdmin,\n TEAM_NEWS_ITEM_PATH,\n {\n teamId,\n id\n },\n this.createFormData(news)\n )\n }\n\n private createFormData(news: Partial<News>): FormData {\n const formData = new FormData();\n\n if (!news.active_to) {\n news.active_to = null;\n }\n\n if (!news.news_image) {\n news.news_image = new File([], '');\n }\n\n if (!news.published_date) {\n news.published_date = null;\n }\n\n formData.append('title', news?.title as string);\n formData.append('ingress', news?.ingress as string);\n formData.append('text', news?.text as string);\n\n if (typeof news?.news_image !== 'undefined' && news?.news_image instanceof File) {\n formData.append('news_image', news?.news_image as File);\n }\n formData.append('news_image_text', news?.news_image_text as string);\n formData.append('published_date', news?.published_date ? news?.published_date as string : '');\n formData.append('active_to', news?.active_to ? news?.active_to as string : '');\n formData.append('show_on_my_pages', `${news?.show_on_my_pages || false}`);\n formData.append('show_on_webpage', `${news?.show_on_webpage || false}`);\n\n return formData;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ApiClubSection } from '../api-models';\nimport { ClubSection, Role } from '../models';\nimport { ApiService } from './api.service';\nimport { clubSectionFactory } from './factories';\n\nconst CLUB_SECTIONS_PATH = 'clubs/:clubId/sections/';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SectionService {\n constructor(private apiService: ApiService) {}\n\n getClubSections(clubId: string) {\n return this.apiService.getCollection<ApiClubSection, ClubSection>(\n clubSectionFactory,\n Role.ClubAdmin,\n CLUB_SECTIONS_PATH,\n { clubId }\n );\n }\n}\n","import { ApiSearchTeam } from '../../api-models';\nimport { SearchTeam } from '../../models';\nimport { clubFactory } from './club-factory';\nimport { sectionFactory } from './section-factory';\n\nexport const searchTeamFactory = (apiSearchTeam: ApiSearchTeam) =>\n new SearchTeam(\n apiSearchTeam.club ? clubFactory(apiSearchTeam.club) : undefined,\n apiSearchTeam.section ? sectionFactory(apiSearchTeam.section) : undefined,\n apiSearchTeam.id,\n apiSearchTeam.name,\n apiSearchTeam.section_name\n );\n","import { Injectable } from '@angular/core';\nimport { ApiMemberTeam, ApiSearchTeam } from '../api-models';\nimport { MemberTeam, MemberTeamThrough, Role, SearchTeam } from '../models';\nimport { ApiService } from './api.service';\nimport {\n activityExtraMemberFactory,\n memberTeamFactory,\n memberTeamThroughFactory,\n searchMemberTeamThroughFactory\n} from './factories';\nimport { searchTeamFactory } from './factories/search-team-factory';\n\nconst CLUB_TEAMS_PATH = ':clubId/teams/';\nconst MEMBER_TEAM_MEMBER_PATH = ':memberId/teams/:teamId/team-members/:id/';\nconst MEMBER_TEAM_MEMBERS_PATH = ':memberId/teams/:teamId/team-members/';\nconst MEMBER_TEAM_EXTRA_MEMBER_PATH = ':memberId/teams/:teamId/extra-members/:id/';\nconst MEMBER_TEAM_EXTRA_MEMBERS_PATH = ':memberId/teams/:teamId/extra-members/';\nconst MEMBER_TEAM_PATH = ':memberId/teams/:teamId/';\nconst MEMBER_TEAMS_PATH = ':memberId/teams/';\nconst SECTION_TEAMS_PATH = ':sectionId/teams/';\nconst TEAM_LEADER_TEAM_MEMBER_PATH = ':teamId/team-members/:id/';\nconst TEAM_LEADER_TEAM_MEMBERS_PATH = ':teamId/team-members/';\nconst TEAM_LEADER_TEAM_PATH = ':teamId/team-detail/';\nconst TEAM_LEADER_TEAM_EXTRA_MEMBER_PATH = ':teamId/team-members/extra-members/:id/';\nconst TEAM_LEADER_TEAM_EXTRA_MEMBERS_PATH = ':teamId/team-members/extra-members/';\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class TeamService {\n constructor(private apiService: ApiService) {}\n\n deleteTeamLeaderTeamMember(teamId: string, id: string) {\n return this.apiService.deleteResource(\n Role.TeamAdmin,\n TEAM_LEADER_TEAM_MEMBER_PATH,\n {teamId, id}\n );\n }\n\n getClubTeams(clubId: string) {\n return this.apiService.getCollection<ApiSearchTeam, SearchTeam>(\n searchTeamFactory,\n Role.ClubAdmin,\n CLUB_TEAMS_PATH,\n { clubId }\n );\n }\n\n getMemberTeam(memberId: string, teamId: string) {\n return this.apiService.getResource<ApiMemberTeam, MemberTeam>(\n memberTeamFactory,\n Role.MemberAdmin,\n MEMBER_TEAM_PATH,\n {memberId, teamId}\n )\n }\n\n getMemberTeamExtraMember(memberId: string, teamId: string, id: string) {\n return this.apiService.getResource(\n activityExtraMemberFactory,\n Role.MemberAdmin,\n MEMBER_TEAM_EXTRA_MEMBER_PATH,\n {memberId, teamId, id}\n );\n }\n\n getMemberTeamExtraMembers(memberId: string, teamId: string, q: string, offset: number) {\n return this.apiService.getCollection(\n activityExtraMemberFactory,\n Role.MemberAdmin,\n MEMBER_TEAM_EXTRA_MEMBERS_PATH,\n {memberId, teamId},\n {params: {member_q: q, offset: offset.toString(10)}}\n )\n }\n\n getMemberTeamMember(memberId: string, teamId: string, id: string) {\n return this.apiService.getResource(\n memberTeamThroughFactory,\n Role.MemberAdmin,\n MEMBER_TEAM_MEMBER_PATH,\n {memberId, teamId, id}\n );\n }\n\n getMemberTeamMembers(memberId: string, teamId: string, q: string, offset: number) {\n return this.apiService.getCollection(\n searchMemberTeamThroughFactory,\n Role.MemberAdmin,\n MEMBER_TEAM_MEMBERS_PATH,\n {memberId, teamId},\n {params: {member_q: q, offset: offset.toString(10)}}\n )\n }\n\n getMemberTeams(memberId: string) {\n return this.apiService.getCollection<ApiSearchTeam, SearchTeam>(\n searchTeamFactory,\n Role.MemberAdmin,\n MEMBER_TEAMS_PATH,\n { memberId }\n );\n }\n\n getSectionTeams(sectionId: string) {\n return this.apiService.getCollection<ApiSearchTeam, SearchTeam>(\n searchTeamFactory,\n Role.SectionAdmin,\n SECTION_TEAMS_PATH,\n { sectionId }\n );\n }\n\n getTeamLeaderTeam(teamId: string) {\n return this.apiService.getResource<ApiMemberTeam, MemberTeam>(\n memberTeamFactory,\n Role.TeamAdmin,\n TEAM_LEADER_TEAM_PATH,\n { teamId }\n )\n }\n\n getTeamLeaderTeamExtraMember(teamId: string, id: string) {\n return this.apiService.getResource(\n activityExtraMemberFactory,\n Role.TeamAdmin,\n TEAM_LEADER_TEAM_EXTRA_MEMBER_PATH,\n {\n teamId, id\n }\n );\n }\n\n getTeamLeaderTeamExtraMembers(teamId: string, q: string, offset: number) {\n return this.apiService.getCollection(\n activityExtraMemberFactory,\n Role.TeamAdmin,\n TEAM_LEADER_TEAM_EXTRA_MEMBERS_PATH,\n {\n teamId\n },\n {params: {member_q: q, offset: offset.toString(10)}}\n );\n }\n\n getTeamLeaderTeamMember(teamId: string, id: string) {\n return this.apiService.getResource(\n memberTeamThroughFactory,\n Role.TeamAdmin,\n TEAM_LEADER_TEAM_MEMBER_PATH,\n {teamId, id}\n );\n }\n\n getTeamLeaderTeamMembers(teamId: string, q: string, offset: number) {\n return this.apiService.getCollection(\n searchMemberTeamThroughFactory,\n Role.TeamAdmin,\n TEAM_LEADER_TEAM_MEMBERS_PATH,\n {teamId},\n {params: {member_q: q, offset: offset.toString(10)}}\n )\n }\n\n updateTeamLeaderTeamMember(teamId: string, id: string, teamMember: MemberTeamThrough) {\n return this.apiService.updateResource(\n memberTeamThroughFactory,\n Role.TeamAdmin,\n TEAM_LEADER_TEAM_MEMBER_PATH,\n {teamId, id},\n teamMember\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ApiService } from './api.service';\nimport { ApiToken } from '../api-models';\nimport { Role, Token } from '../models';\nimport { HttpErrorResponse } from '@angular/common/http';\nimport { catchError } from 'rxjs/operators';\nimport { of, throwError } from 'rxjs';\nimport { tokenFactory } from './factories';\n\nconst BASE_PATH = 'accounts/token/';\nconst CREDENTIAL_GRANT_TYPE = 'password';\nconst CODE_GRANT_TYPE = 'authorization_code';\nconst LOGOUT_PATH = 'accounts/logout/';\nconst REFRESH_GRANT_TYPE = 'refresh_token';\nconst SESSION_TOKEN_PATH = 'accounts/session-token/';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class TokenService {\n constructor(private apiService: ApiService) {}\n\n getTokenByCredentials(\n clientId: string,\n clientSecret: string,\n username: string,\n password: string\n ) {\n return this.getToken(clientId, clientSecret, CREDENTIAL_GRANT_TYPE, { username, password });\n }\n\n getTokenByCode(clientId: string, clientSecret: string, code: string) {\n return this.getToken(clientId, clientSecret, CODE_GRANT_TYPE, { code });\n }\n\n getTokenByRefreshToken(clientId: string, clientSecret: string, refreshToken: string) {\n return this.getToken(clientId, clientSecret, REFRESH_GRANT_TYPE, {\n refresh_token: refreshToken\n });\n }\n\n getTokenBySession() {\n return this.apiService.getResource(\n tokenFactory,\n Role.None,\n SESSION_TOKEN_PATH,\n {}\n ).pipe(\n catchError((err: HttpErrorResponse) => {\n if (err.status === 401) {\n return of(null);\n }\n\n return throwError(() => err);\n })\n );\n }\n\n logout() {\n return this.apiService.postResource(() => {}, Role.None, LOGOUT_PATH, {}, {});\n }\n\n private getToken(\n clientId: string,\n clientSecret: string,\n grantType: string,\n params: { [key: string]: string }\n ) {\n return this.apiService.postFormData<ApiToken, Token>(\n tokenFactory,\n Role.None,\n BASE_PATH,\n {},\n {\n client_id: clientId,\n client_secret: clientSecret,\n grant_type: grantType,\n ...params\n }\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ApiService } from './api.service';\nimport { User, Role } from '../models';\nimport { NewAccountInterface } from '../interfaces';\nimport { catchError, map } from 'rxjs/operators';\nimport { of } from 'rxjs';\nimport { userFactory } from './factories';\n\nconst ACTIVATE_USER_PATH = 'accounts/activate/';\nconst BASE_PATH = 'accounts/user/';\nconst CREATE_USER_PATH = 'accounts/create-account/';\nconst RESET_PASSWORD_PATH = 'accounts/reset-password/';\nconst TERMINATE_USER_PATH = 'accounts/terminate/';\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class UserService {\n constructor(private apiService: ApiService) {}\n\n activateUser(uidb64: string, token: string) {\n return this.apiService.postResource(() => {}, Role.None, ACTIVATE_USER_PATH, {}, {\n uidb64,\n token\n }).pipe(\n map(() => true),\n catchError(() => of (false))\n );\n }\n\n createUser(newAccount: NewAccountInterface) {\n return this.apiService.postResource(() => {}, Role.None, CREATE_USER_PATH, {}, newAccount)\n .pipe(\n map(() => true),\n catchError(() => of(false))\n );\n }\n\n getCurrentUser() {\n return this.apiService.getResource(\n userFactory,\n Role.None,\n BASE_PATH\n );\n }\n\n removeCurrentUser() {\n return this.apiService.postResource(() => {}, Role.None, TERMINATE_USER_PATH, {}, {})\n .pipe(\n map(() => true),\n catchError(() => of(false))\n );\n }\n\n resetPassword(email: string) {\n return this.apiService.postResource(() => {}, Role.None, RESET_PASSWORD_PATH, {}, {\n email\n }).pipe(\n map(() => true),\n catchError(() => of(false))\n );\n }\n\n updateCurrentUser(user: User) {\n let data: any = {\n email: user.email,\n first_name: user.firstName,\n last_name: user.lastName,\n device_token: user.deviceToken\n }\n\n if (user.newPassword) {\n data['new_password'] = user.newPassword;\n data['verify_password'] = user.verifyPassword;\n data['password'] = user.password;\n }\n\n if (user.newEmail) {\n data['new_email'] = user.newEmail;\n }\n\n if (user.language) {\n data['language'] = user.language;\n }\n\n return this.apiService.updateResource(\n userFactory,\n Role.None,\n BASE_PATH,\n {},\n data\n )\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ApiService } from './api.service';\nimport { Role } from '../models';\nimport { userNotificationFactory } from './factories';\n\nexport const USER_NOTIFICATIONS_PATH = 'every-admin/user-notifications/clubs/:clubId/';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class UserNotificationService {\n constructor(private apiService: ApiService) { }\n\n getUserNotifications(clubId: string, offset: number = 0) {\n return this.apiService.getCollection(\n userNotificationFactory,\n Role.None,\n USER_NOTIFICATIONS_PATH,\n {clubId},\n {params: {offset: offset.toString(10)}}\n )\n }\n}\n","import { Inject, Injectable, InjectionToken } from '@angular/core';\nimport { tap } from 'rxjs/operators';\nimport { TokenService } from '../services';\nimport { Authentication, Token } from '../models';\nimport { ApiService } from '../services/api.service';\nimport { BehaviorSubject, Observable } from 'rxjs';\n\n\nexport const APP = new InjectionToken<App>('app');\n\nexport interface App {\n clientId: string;\n clientSecret: string;\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AuthenticationService {\n private currentTokenSubject = new BehaviorSubject<Token | null>(null);\n\n authentication: Authentication | null = null;\n currentToken$: Observable<Token | null> = this.currentTokenSubject.asObservable();\n\n get isAuthenticated() {\n return !!this.authentication;\n }\n\n constructor(private apiService: ApiService, @Inject(APP) private app: App, private tokenService: TokenService) {}\n\n authenticateByCredentials(username: string, password: string) {\n return this.tokenService\n .getTokenByCredentials(this.app.clientId, this.app.clientSecret, username, password)\n .pipe(tap((token) => this.setToken(token)));\n }\n\n authenticateByToken(token: string) {\n return this.tokenService\n .getTokenByCode(this.app.clientId, this.app.clientSecret, token)\n .pipe(tap((token) => this.setToken(token)));\n }\n\n clearAuthentication(): void {\n this.authentication = null;\n this.currentTokenSubject.next(null);\n }\n\n getSessionToken() {\n return this.tokenService\n .getTokenBySession()\n .pipe(\n tap((token: Token | null) => {\n if (token) {\n this.setToken(token);\n }\n }),\n );\n }\n\n logout() {\n return this.tokenService\n .logout()\n .pipe(tap(() => this.clearAuthentication()));\n }\n\n reauthenticate() {\n return this.tokenService\n .getTokenByRefreshToken(\n this.app.clientId,\n this.app.clientSecret,\n this.authentication?.refreshToken as string\n )\n .pipe(tap((token: Token) => this.setToken(token)));\n }\n\n setAuthentication(accessToken: string, refreshToken: string) {\n this.authentication = new Authentication(accessToken, refreshToken);\n }\n\n setToken(token: Token) {\n this.currentTokenSubject.next(token);\n this.setAuthentication(token.accessToken, token.refreshToken);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpRequest, HttpHandler, HttpInterceptor, HttpErrorResponse } from '@angular/common/http';\nimport { catchError, filter, switchMap, take } from 'rxjs/operators';\nimport { BehaviorSubject, throwError } from 'rxjs';\n\nimport { AuthenticationService } from './authentication.service';\nimport { Token } from '../models';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AuthenticationInterceptor implements HttpInterceptor {\n private isRefreshing = false;\n\n private refreshTokenSubject: BehaviorSubject<Token | null> = new BehaviorSubject<Token | null>(null);\n\n constructor(private authenticationService: AuthenticationService) {}\n\n intercept(request: HttpRequest<unknown>, next: HttpHandler) {\n const authentication = this.authenticationService.authentication;\n\n if (authentication) {\n request = this.addAuthorizationHeader(request, authentication.accessToken);\n }\n\n return next.handle(request).pipe(\n catchError((requestError: any) => {\n if (request.url.indexOf('accounts/token/') === -1 && requestError instanceof HttpErrorResponse && requestError.status === 401) {\n return this.handle401Error(request, next);\n }\n return throwError(() => requestError);\n })\n );\n }\n\n private addAuthorizationHeader(request: HttpRequest<unknown>, token: string): HttpRequest<unknown> {\n if (token) {\n return request.clone({\n setHeaders: { Authorization: `Bearer ${token}` }\n });\n }\n\n return request;\n }\n\n private handle401Error(request: HttpRequest<any>, next: HttpHandler) {\n if (this.isRefreshing) {\n return this.refreshTokenSubject\n .pipe(\n filter(token => token !== null),\n take(1),\n switchMap((token: Token | null) =>\n next.handle(this.addAuthorizationHeader(request, token?.accessToken as string))\n )\n );\n } else {\n this.isRefreshing = true;\n this.refreshTokenSubject.next(null);\n return this.authenticationService.reauthenticate()\n .pipe(\n catchError((err) => {\n this.isRefreshing = false;\n this.authenticationService.clearAuthentication();\n return throwError(() => err);\n }),\n switchMap((token: Token) => {\n this.refreshTokenSubject.next(token);\n this.isRefreshing = false;\n return next.handle(this.addAuthorizationHeader(request, token.accessToken));\n })\n );\n }\n }\n}\n","export const REDIRECT_PARAM_NAME = 'next';\n","import { HttpParams, HttpRequest } from '@angular/common/http';\nimport { Inject, Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanActivate, RouterStateSnapshot } from '@angular/router';\n\nimport { REDIRECT_PARAM_NAME } from '../authentication.config';\nimport { DOMAIN } from '../../services/api.service';\nimport { AuthenticationService } from '../authentication.service';\n\nconst GRANT_TOKEN_PATH = 'api/v3/accounts/user-token/';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AuthenticatedGuard implements CanActivate {\n constructor(\n @Inject(DOMAIN) private domain: string,\n private authenticationService: AuthenticationService\n ) {}\n\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\n if (!this.authenticationService.isAuthenticated) {\n const params = new HttpParams().set(REDIRECT_PARAM_NAME, state.url);\n const request = new HttpRequest('GET', this.domain + GRANT_TOKEN_PATH, {\n params\n });\n\n window.location.href = request.urlWithParams;\n return false;\n }\n return true;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanActivate, Router } from '@angular/router';\nimport { map } from 'rxjs/operators';\n\nimport { REDIRECT_PARAM_NAME } from '../authentication.config';\nimport { AuthenticationService } from '../authentication.service';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class HandleGrantTokenGuard implements CanActivate {\n constructor(private authenticationService: AuthenticationService, private router: Router) {}\n\n canActivate(route: ActivatedRouteSnapshot) {\n return this.authenticationService.authenticateByToken(route.params['code']).pipe(\n map(() => {\n const redirectUrl = route.queryParamMap.get(REDIRECT_PARAM_NAME);\n\n return this.authenticationService.isAuthenticated && redirectUrl\n ? this.router.parseUrl(redirectUrl)\n : false;\n })\n );\n }\n}\n","import { HTTP_INTERCEPTORS } from '@angular/common/http';\nimport { NgModule, ModuleWithProviders } from '@angular/core';\nimport { APP, App } from './authentication';\nimport { AuthenticationInterceptor } from './authentication';\nimport { DOMAIN } from './services/api.service';\n\nexport interface ModuleConfig {\n app: App;\n domain: string;\n}\n\n@NgModule({\n imports: [] // TODO: Check if this is required\n})\nexport class DataAccessModule {\n static forRoot(config: ModuleConfig): ModuleWithProviders<DataAccessModule> {\n return {\n ngModule: DataAccessModule,\n providers: [\n { provide: APP, useValue: config.app },\n { provide: DOMAIN, useValue: config.domain },\n { provide: HTTP_INTERCEPTORS, useExisting: AuthenticationInterceptor, multi: true }\n ]\n };\n }\n}\n","/*\n * Public API Surface of data-access\n */\n\nexport * from './lib/authentication';\nexport * from './lib/data-access.module';\nexport * from './lib/interfaces';\nexport * from './lib/models';\nexport * from './lib/services';\nexport * from './lib/types';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.ApiService","BASE_PATH","i2.TokenService","i1.AuthenticationService"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"myclub_se-data-access.mjs","sources":["../../../projects/data-access/src/lib/models/activity.ts","../../../projects/data-access/src/lib/models/activity-extra-member.ts","../../../projects/data-access/src/lib/models/activity-invite.ts","../../../projects/data-access/src/lib/models/activity-location.ts","../../../projects/data-access/src/lib/models/activity-location-group.ts","../../../projects/data-access/src/lib/models/activity-settings.ts","../../../projects/data-access/src/lib/models/activity-type.ts","../../../projects/data-access/src/lib/models/auth/auth.ts","../../../projects/data-access/src/lib/models/auth/auth-member.ts","../../../projects/data-access/src/lib/models/auth/auth-section.ts","../../../projects/data-access/src/lib/models/auth/auth-team.ts","../../../projects/data-access/src/lib/models/auth/auth-team-section.ts","../../../projects/data-access/src/lib/models/authentication.ts","../../../projects/data-access/src/lib/models/booking-calendar.ts","../../../projects/data-access/src/lib/models/booking-calendar-slot.ts","../../../projects/data-access/src/lib/models/booking-calendar-slot-session.ts","../../../projects/data-access/src/lib/models/calendar.ts","../../../projects/data-access/src/lib/models/calendar-event.ts","../../../projects/data-access/src/lib/models/card/card.ts","../../../projects/data-access/src/lib/models/card/card-deal.ts","../../../projects/data-access/src/lib/models/card/card-logo.ts","../../../projects/data-access/src/lib/models/card/card-logo-urls.ts","../../../projects/data-access/src/lib/models/card/card-member-ticket.ts","../../../projects/data-access/src/lib/models/card/card-ticket.ts","../../../projects/data-access/src/lib/models/card/card-ticket-location.ts","../../../projects/data-access/src/lib/models/card/card-theme.ts","../../../projects/data-access/src/lib/models/card/home-team.ts","../../../projects/data-access/src/lib/models/card/member-card.ts","../../../projects/data-access/src/lib/models/card/search-member-card.ts","../../../projects/data-access/src/lib/models/club.ts","../../../projects/data-access/src/lib/models/club-image.ts","../../../projects/data-access/src/lib/models/club-section.ts","../../../projects/data-access/src/lib/models/collection.ts","../../../projects/data-access/src/lib/models/contact.ts","../../../projects/data-access/src/lib/models/directory.ts","../../../projects/data-access/src/lib/models/email.ts","../../../projects/data-access/src/lib/models/event.ts","../../../projects/data-access/src/lib/models/external-link.ts","../../../projects/data-access/src/lib/models/file-object.ts","../../../projects/data-access/src/lib/models/general-image.ts","../../../projects/data-access/src/lib/models/image-urls.ts","../../../projects/data-access/src/lib/models/invoice/member-fee.ts","../../../projects/data-access/src/lib/models/invoice/member-invoice.ts","../../../projects/data-access/src/lib/models/invoice/member-invoice-row.ts","../../../projects/data-access/src/lib/models/invoice/payment-attempt.ts","../../../projects/data-access/src/lib/models/invoice/payment-types/credit-card.ts","../../../projects/data-access/src/lib/models/invoice/payment-types/giro.ts","../../../projects/data-access/src/lib/models/invoice/payment-types/swish.ts","../../../projects/data-access/src/lib/models/invoice/payment-types/zimpler.ts","../../../projects/data-access/src/lib/models/invoice/search-member-invoice.ts","../../../projects/data-access/src/lib/models/invoice/swish-qr-code.ts","../../../projects/data-access/src/lib/models/invoice/unpaid-member-invoice.ts","../../../projects/data-access/src/lib/models/member/member.ts","../../../projects/data-access/src/lib/models/member/member-attribute.ts","../../../projects/data-access/src/lib/models/member/member-contact.ts","../../../projects/data-access/src/lib/models/member/member-function.ts","../../../projects/data-access/src/lib/models/member/member-validation-settings.ts","../../../projects/data-access/src/lib/models/member/search-member.ts","../../../projects/data-access/src/lib/models/member-activity-invite.ts","../../../projects/data-access/src/lib/models/member-public-form.ts","../../../projects/data-access/src/lib/models/member-team.ts","../../../projects/data-access/src/lib/models/member-team-through.ts","../../../projects/data-access/src/lib/models/news.ts","../../../projects/data-access/src/lib/models/partner.ts","../../../projects/data-access/src/lib/models/role.ts","../../../projects/data-access/src/lib/models/search-club.ts","../../../projects/data-access/src/lib/models/search-team.ts","../../../projects/data-access/src/lib/models/section.ts","../../../projects/data-access/src/lib/models/token.ts","../../../projects/data-access/src/lib/models/user.ts","../../../projects/data-access/src/lib/models/user-notification.ts","../../../projects/data-access/src/lib/services/api.service.ts","../../../projects/data-access/src/lib/services/factories/search-member-factory.ts","../../../projects/data-access/src/lib/services/factories/member-attribute-factory.ts","../../../projects/data-access/src/lib/services/factories/contact-factory.ts","../../../projects/data-access/src/lib/services/factories/member-contact-factory.ts","../../../projects/data-access/src/lib/services/factories/member-function-factory.ts","../../../projects/data-access/src/lib/services/factories/member-validation-settings-factory.ts","../../../projects/data-access/src/lib/services/factories/member-factory.ts","../../../projects/data-access/src/lib/services/factories/activity-extra-member-factory.ts","../../../projects/data-access/src/lib/services/factories/member-invite-factory.ts","../../../projects/data-access/src/lib/services/factories/activity-factory.ts","../../../projects/data-access/src/lib/services/factories/unpaid-invoice-factory.ts","../../../projects/data-access/src/lib/services/factories/activity-invite-factory.ts","../../../projects/data-access/src/lib/services/factories/activity-location-factory.ts","../../../projects/data-access/src/lib/services/factories/activity-settings-factory.ts","../../../projects/data-access/src/lib/services/factories/activity-type-factory.ts","../../../projects/data-access/src/lib/services/factories/auth-section-factory.ts","../../../projects/data-access/src/lib/services/factories/auth-member-factory.ts","../../../projects/data-access/src/lib/services/factories/auth-team-section-factory.ts","../../../projects/data-access/src/lib/services/factories/auth-team-factory.ts","../../../projects/data-access/src/lib/services/factories/auth-factory.ts","../../../projects/data-access/src/lib/services/factories/image-urls-factory.ts","../../../projects/data-access/src/lib/services/factories/general-image-factory.ts","../../../projects/data-access/src/lib/services/factories/partner-factory.ts","../../../projects/data-access/src/lib/services/factories/card-deal-factory.ts","../../../projects/data-access/src/lib/services/factories/card-logo-urls-factory.ts","../../../projects/data-access/src/lib/services/factories/card-logo-factory.ts","../../../projects/data-access/src/lib/services/factories/card-theme-factory.ts","../../../projects/data-access/src/lib/services/factories/card-factory.ts","../../../projects/data-access/src/lib/services/factories/card-member-ticket-factory.ts","../../../projects/data-access/src/lib/services/factories/home-team-factory.ts","../../../projects/data-access/src/lib/services/factories/card-ticket-location-factory.ts","../../../projects/data-access/src/lib/services/factories/card-ticket-factory.ts","../../../projects/data-access/src/lib/services/factories/club-factory.ts","../../../projects/data-access/src/lib/services/factories/club-image-factory.ts","../../../projects/data-access/src/lib/services/factories/club-section-factory.ts","../../../projects/data-access/src/lib/services/factories/credit-card-factory.ts","../../../projects/data-access/src/lib/services/factories/file-factory.ts","../../../projects/data-access/src/lib/services/factories/directory-factory.ts","../../../projects/data-access/src/lib/services/factories/event-factory.ts","../../../projects/data-access/src/lib/services/factories/external-link-factory.ts","../../../projects/data-access/src/lib/services/factories/giro-factory.ts","../../../projects/data-access/src/lib/services/factories/member-card-factory.ts","../../../projects/data-access/src/lib/services/factories/member-fee-factory.ts","../../../projects/data-access/src/lib/services/factories/swish-factory.ts","../../../projects/data-access/src/lib/services/factories/zimpler-factory.ts","../../../projects/data-access/src/lib/services/factories/member-invoice-row-factory.ts","../../../projects/data-access/src/lib/services/factories/member-invoice-factory.ts","../../../projects/data-access/src/lib/services/factories/member-public-form-factory.ts","../../../projects/data-access/src/lib/services/factories/section-factory.ts","../../../projects/data-access/src/lib/services/factories/member-team-factory.ts","../../../projects/data-access/src/lib/services/factories/member-team-through-factory.ts","../../../projects/data-access/src/lib/services/factories/news-factory.ts","../../../projects/data-access/src/lib/services/factories/payment-attempt-factory.ts","../../../projects/data-access/src/lib/services/factories/search-club-factory.ts","../../../projects/data-access/src/lib/services/factories/search-member-card-factory.ts","../../../projects/data-access/src/lib/services/factories/search-member-invoice-factory.ts","../../../projects/data-access/src/lib/services/factories/search-member-team-through-factory.ts","../../../projects/data-access/src/lib/services/factories/token-factory.ts","../../../projects/data-access/src/lib/services/factories/user-factory.ts","../../../projects/data-access/src/lib/services/factories/user-notification-factory.ts","../../../projects/data-access/src/lib/services/auth.service.ts","../../../projects/data-access/src/lib/services/factories/activity-location-group-factory.ts","../../../projects/data-access/src/lib/services/activity.service.ts","../../../projects/data-access/src/lib/services/factories/booking-calendar-factory.ts","../../../projects/data-access/src/lib/services/factories/booking-calendar-slot-session-factory.ts","../../../projects/data-access/src/lib/services/factories/booking-calendar-slot-factory.ts","../../../projects/data-access/src/lib/services/booking-calendar.service.ts","../../../projects/data-access/src/lib/services/club.service.ts","../../../projects/data-access/src/lib/services/constant.service.ts","../../../projects/data-access/src/lib/services/email.service.ts","../../../projects/data-access/src/lib/services/external-link.service.ts","../../../projects/data-access/src/lib/services/file.service.ts","../../../projects/data-access/src/lib/services/invoice/invoice.service.ts","../../../projects/data-access/src/lib/api-models/api-invoice/api-payment-attempt-create.ts","../../../projects/data-access/src/lib/services/invoice/payment-attempt.service.ts","../../../projects/data-access/src/lib/services/member.service.ts","../../../projects/data-access/src/lib/services/member-card.service.ts","../../../projects/data-access/src/lib/services/member-public-form.service.ts","../../../projects/data-access/src/lib/services/news.service.ts","../../../projects/data-access/src/lib/services/section.service.ts","../../../projects/data-access/src/lib/services/factories/search-team-factory.ts","../../../projects/data-access/src/lib/services/team.service.ts","../../../projects/data-access/src/lib/services/token.service.ts","../../../projects/data-access/src/lib/services/user.service.ts","../../../projects/data-access/src/lib/services/user-notification.service.ts","../../../projects/data-access/src/lib/authentication/authentication.service.ts","../../../projects/data-access/src/lib/authentication/authentication.interceptor.ts","../../../projects/data-access/src/lib/authentication/authentication.config.ts","../../../projects/data-access/src/lib/authentication/guards/authenticated.guard.ts","../../../projects/data-access/src/lib/authentication/guards/handle-grant-token.guard.ts","../../../projects/data-access/src/lib/data-access.module.ts","../../../projects/data-access/src/index.ts","../../../projects/data-access/src/myclub_se-data-access.ts"],"sourcesContent":["import { MemberActivityInvite } from \"./member-activity-invite\";\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\n\nexport class Activity {\n static asFormGroup(activity: Activity | null = null): FormGroup {\n return new FormGroup(\n {\n id: new FormControl<string>(activity?.id || ''),\n activity_group_id: new FormControl<string | null>(activity?.activity_group_id || null, {nonNullable: false}),\n activity_type_id: new FormControl<string>(activity?.activity_type_id || '', [Validators.required]),\n club_id: new FormControl<string>(activity?.club_id || ''),\n location_id: new FormControl<string>(activity?.location_id || '', [Validators.required]),\n team_id: new FormControl<string>(activity?.team_id || ''),\n activity_location: new FormControl<string>(activity?.activity_location || '', [Validators.required]),\n activity_type_name: new FormControl<string>(activity?.activity_type_name || ''),\n allow_maybe: new FormControl<boolean>(typeof activity?.allow_maybe !== 'undefined' ? activity.allow_maybe : false),\n day: new FormControl<string>(activity?.day || '', [Validators.required]),\n description: new FormControl<string>(activity?.description || ''),\n end_time: new FormControl<string>(activity?.end_time || '', [Validators.required]),\n file: new FormControl<string>(''),\n invitation_text: new FormControl<string>(activity?.invitation_text || ''),\n invite_first_days: new FormControl<number>(activity?.invite_first_days || 7),\n invite_groups: new FormControl<Array<string>>(activity?.invite_groups || []),\n invite_hide_before_sent: new FormControl<boolean>(typeof activity?.invite_hide_before_sent !== 'undefined' ? activity?.invite_hide_before_sent : false),\n invite_last_response_date: new FormControl<string>(activity?.invite_last_response_date || ''),\n invite_remind: new FormControl<number>(activity?.invite_remind || 0),\n invite_remind_receivers: new FormControl<string>(activity?.invite_remind_receivers || ''),\n invite_second_days: new FormControl<number>(activity?.invite_second_days || 2),\n invite_settings: new FormControl<string>(activity?.invite_settings || ''),\n last_response_date: new FormControl<string>(activity?.last_response_date || ''),\n max_num_attendants: new FormControl<number>(activity?.max_num_attendants || 0),\n max_num_attendants_type: new FormControl<string>(activity?.max_num_attendants_type || 'only_participants'),\n meet_up_place: new FormControl<string>(activity?.meet_up_place || ''),\n meet_up_time: new FormControl<number>(activity?.meet_up_time || 0),\n repeat: new FormControl<string>(activity?.repeat || 'none'),\n repeat_num: new FormControl<number>(activity?.repeat_num || 6),\n repeat_to_day: new FormControl<string>(activity?.repeat_to_day || ''),\n repeat_type: new FormControl<string>(activity?.repeat_type || ''),\n show_other_invited: new FormControl<string>(activity?.show_other_invited || 'all'),\n start_time: new FormControl<string>(activity?.start_time ||'', [Validators.required]),\n title: new FormControl<string>(activity?.title || '', [Validators.required]),\n use_invite: new FormControl<boolean>(typeof activity?.use_invite !== 'undefined' ? activity?.use_invite : false),\n update_repeating: new FormControl<boolean>(typeof activity?.update_repeating !== 'undefined' ? activity?.update_repeating : false)\n }\n );\n }\n\n constructor(public id: string, public activity_group_id: string | null, public activity_type_id: string,\n public club_id: string, public location_id: string, public team_id: string,\n public activity_location: string, public activity_type_name: string,\n public allow_maybe: boolean, public calendar_name: string, public created: string,\n public current_num_attendants: number, public day: string, public description: string,\n public end_time: string, public file: string | null, public invitation_text: string,\n public invite_first_days: number, public invite_groups: Array<string>,\n public invite_hide_before_sent: boolean, public invite_last_response_date: string | null,\n public invite_remind: number, public invite_remind_receivers: string, public invite_second_days: number,\n public invite_settings: string, public invited_members: Array<MemberActivityInvite>,\n public last_response_date: string, public max_num_attendants: number,\n public max_num_attendants_type: string, public meet_up_place: string, public meet_up_time: number,\n public meet_up_time_display: string, public repeat: string, public repeat_num: number,\n public repeat_to_day: string, public repeat_type: string, public show_other_invited: string,\n public start_time: string, public title: string, public updated: string,\n public use_invite: boolean, public update_repeating: boolean) {\n }\n}\n","import { Member, SearchMember } from './member';\n\nexport class ActivityExtraMember {\n constructor(public id: string, public member_id: string, public team_id: string, public created: string,\n public leader: boolean, public member: SearchMember | Member, public member_name: string) {\n }\n}\n","import { Activity } from './activity';\nimport { SearchMember } from './member';\nimport { UnpaidMemberInvoice } from './invoice';\n\nexport class ActivityInvite {\n\n constructor(public id: string, public activity: Activity, public comment: string, public created: string,\n public readonly has_unpaid_invoices: boolean, public last_invite: string, public readonly leader:boolean,\n public member: SearchMember, public next_invite: string | null, public reminded: string,\n public response_date: string, public status: string, public token: string,\n public unpaid_invoices: Array<UnpaidMemberInvoice>, public updated: string) {\n }\n\n}\n","export class ActivityLocation {\n constructor(public id: string, public club_id: string, public section_id: string | null, public active: boolean,\n public mun_location_city_area: string, public mun_location_name: string, public name: string) {\n }\n}\n","import {ActivityLocation} from \"./activity-location\";\n\nexport class ActivityLocationGroup {\n constructor(\n public id: string,\n public club_id: string,\n public section_id: string | null,\n public active: boolean,\n public name: string,\n public locations: Array<ActivityLocation> | null,\n ) {\n }\n}\n","import { OptionInterface } from '../interfaces';\n\nexport class ActivitySettings {\n constructor(public dayOptions: Array<OptionInterface>, public hourOptions: Array<OptionInterface>,\n public inviteGroupOptions: Array<OptionInterface>, public inviteSettingsOptions: Array<OptionInterface>,\n public maxAttendanceOptions: Array<OptionInterface>, public meetUpTimeOptions: Array<OptionInterface>,\n public remindReceiverOptions: Array<OptionInterface>, public repeatOptions: Array<OptionInterface>,\n public repeatTypeOptions: Array<OptionInterface>) {\n }\n}\n","export class ActivityType {\n constructor(public id: string, public club_id: string, public section_id: string | null,\n public active: boolean, public base_type: string, public name: string) {\n }\n}\n","import { AuthMember } from './auth-member';\nimport { AuthSection } from './auth-section';\nimport { AuthTeam } from './auth-team';\n\nexport class Auth {\n constructor(\n public id: string,\n public name: string,\n public clubAdmin: boolean,\n public isSectionClub: boolean,\n public members: AuthMember[],\n public registrationEnabled: boolean,\n public sections: AuthSection[],\n public siteEnabled: boolean,\n public teams: AuthTeam[],\n public user_name: string\n ) {}\n}\n","\n\nexport class AuthMember {\n public eventColor = '';\n public eventBackgroundColor = '';\n\n constructor(public id: string, public name: string, public calendar_url: string) {}\n}\n","export class AuthSection {\n constructor(public id: string, public name: string) {}\n}\n","import { AuthTeamSection } from './auth-team-section';\n\nexport class AuthTeam {\n constructor(public id: string, public readonly calendar_url: string, public readonly name: string,\n public section: AuthTeamSection | null) {}\n}\n","export class AuthTeamSection {\n constructor(public id: string, public name: string) {}\n}\n","export class Authentication {\n constructor(public accessToken: string, public refreshToken: string) {}\n}\n","import {FormControl, FormGroup, Validators} from \"@angular/forms\";\n\nexport class BookingCalendar {\n static asFormGroup(calendar?: BookingCalendar) {\n return new FormGroup({\n id: new FormControl<string>(calendar?.id || ''),\n club_id: new FormControl<string>(calendar?.club_id || ''),\n section_id: new FormControl<string | null>(calendar?.section_id || ''),\n team_id: new FormControl<string | null>(calendar?.team_id || ''),\n club_name: new FormControl<string>(calendar?.club_name || ''),\n color: new FormControl<string>(calendar?.color || '', Validators.required),\n name: new FormControl<string>(calendar?.name || '', Validators.required),\n section_name: new FormControl<string | null>(calendar?.section_name || ''),\n team_name: new FormControl<string | null>(calendar?.team_name || '')\n });\n }\n\n constructor(\n public id: string,\n public club_id: string,\n public section_id: string | null,\n public team_id: string | null,\n public club_name: string,\n public color: string,\n public name: string,\n public section_name: string | null,\n public team_name: string | null\n ) { }\n}\n","import {BookingCalendarSlotSession} from \"./booking-calendar-slot-session\";\nimport {BookingCalendarSlotType} from \"../types/booking-calendar-slot-type\";\nimport {FormControl, FormGroup, Validators} from \"@angular/forms\";\nimport {BookingCalendarSlotReservedTimeType} from \"../types/booking-calendar-slot-reserved-time-type\";\nimport {BookingCalendarSlotReservedTimePosition} from \"../types/booking-calendar-slot-reserved-time-position\";\n\nexport class BookingCalendarSlot {\n static asFormGroup(slot?: BookingCalendarSlot) {\n return new FormGroup({\n id: new FormControl<string>(slot?.id || ''),\n calendar_id: new FormControl<string>(slot?.calendar_id || ''),\n location_id: new FormControl<string>(slot?.location_id || '', Validators.required),\n day: new FormControl<string | null>(slot?.day || '', Validators.required),\n end_time: new FormControl<string>(slot?.end_time || '', Validators.required),\n group_id: new FormControl<string | null>(slot?.group_id || null, {nonNullable: false}),\n number_of_available_sessions: new FormControl<number>(slot?.number_of_available_sessions || 0, Validators.required),\n start_time: new FormControl<string>(slot?.start_time || '', Validators.required),\n type: new FormControl<string>(slot?.type || '', Validators.required),\n repeat: new FormControl<string>(slot?.repeat || 'none'),\n repeat_num: new FormControl<number | null>(slot?.repeat_num || 6, Validators.max(24)),\n repeat_to_day: new FormControl<string | null>(slot?.repeat_to_day || ''),\n repeat_type: new FormControl<string | null>(slot?.repeat_type || ''),\n update_repeating: new FormControl<boolean>(typeof slot?.update_repeating !== 'undefined' ? slot?.update_repeating : false),\n reserved_time_enabled: new FormControl<boolean>(typeof slot?.reserved_time_enabled !== 'undefined' ? slot?.reserved_time_enabled : false),\n reserved_time: new FormControl<string>(slot?.reserved_time || '00:00'),\n reserved_time_type: new FormControl<string>(slot?.reserved_time_type || ''),\n reserved_time_position: new FormControl<string>(slot?.reserved_time_position || ''),\n available_location_zones: new FormControl<number>(slot?.available_location_zones || 1, [Validators.min(1), Validators.required]),\n });\n }\n\n constructor(\n public id: string,\n public calendar_id: string,\n public location_id: string,\n public color: string,\n public day: string,\n public end_time: string,\n public group_id: string | null,\n public location_name: string,\n public number_of_available_sessions: number,\n public sessions: Array<BookingCalendarSlotSession>,\n public open_sessions: Array<BookingCalendarSlotSession>,\n public start_time: string,\n public type: BookingCalendarSlotType,\n public repeat: string,\n public update_repeating: boolean,\n public reserved_time_enabled: boolean,\n public available_location_zones: number,\n public repeat_num?: number | null,\n public repeat_to_day?: string | null,\n public repeat_type?: string | null,\n public reserved_time?: string | null,\n public reserved_time_type?: BookingCalendarSlotReservedTimeType | null,\n public reserved_time_position?: BookingCalendarSlotReservedTimePosition | null,\n ) {\n }\n}\n","import {FormControl, FormGroup, Validators} from \"@angular/forms\";\n\nexport class BookingCalendarSlotSession {\n static asFormGroup(session?: BookingCalendarSlotSession) {\n return new FormGroup({\n id: new FormControl<string>(session?.id || ''),\n section_id: new FormControl<string | null>(session?.section_id || ''),\n slot_id: new FormControl<string>(session?.slot_id || '', Validators.required),\n team_id: new FormControl<string | null>(session?.team_id || '', Validators.required),\n end_time: new FormControl<string>(session?.end_time || '', Validators.required),\n section_name: new FormControl<string | null>(session?.section_name || ''),\n start_time: new FormControl<string>(session?.start_time || '', Validators.required),\n team_name: new FormControl<string | null>(session?.team_name || ''),\n is_overbooked: new FormControl<boolean>(session?.is_overbooked || false),\n type: new FormControl<string>(session?.type || ''),\n location_zones_taken: new FormControl<number>(session?.location_zones_taken || 1, [Validators.min(1), Validators.required])\n });\n }\n\n constructor(\n public id: string,\n public section_id: string | null,\n public slot_id: string,\n public team_id: string | null,\n public end_time: string,\n public section_name: string | null,\n public start_time: string,\n public team_name: string | null,\n public is_overbooked: boolean,\n public type: string,\n public location_zones_taken: number,\n ) { }\n}\n","export class Calendar {\n constructor(\n public id: string,\n public club_id: string,\n public section_id: string | null,\n public name: string,\n public types_to_show: string\n ) { }\n}\n","import { Calendar } from \"./calendar\";\n\nexport class CalendarEvent {\n constructor(\n public id: string,\n public calendar: Calendar,\n public readonly created: string,\n public day: string,\n public description: string,\n public end_time: string,\n public location: string,\n public meet_up_place: string,\n public meet_up_time: number,\n public meet_up_time_display: string,\n public push_to_all: boolean,\n public sequence: number,\n public start_time: string,\n public title: string,\n public readonly updated: string\n ) {\n }\n}\n","import { CardLogo } from './card-logo';\nimport { CardTheme } from './card-theme';\n\nexport class Card {\n constructor(public id: string, public deals_count: number, public header_1: string, public name: string,\n public logo: CardLogo, public theme: CardTheme, public ticket_count: number, public use_pdf_version: boolean) { }\n}\n","import { Partner } from '..';\n\nexport class CardDeal {\n constructor(public id: string, public partner: Partner, public text: string, public title: string,\n public url: string) {\n }\n}\n","import { CardLogoUrls } from './card-logo-urls';\n\nexport class CardLogo {\n constructor(public id: string, public name: string, public urls: CardLogoUrls) { }\n}\n","export class CardLogoUrls {\n constructor(public lg: string, public md: string, public sm: string, public w16: string, public w32: string,\n public w64: string, public w180: string, public w192: string) { }\n}\n","export class CardMemberTicket {\n constructor(public id: string, public member_id: string, public ticket_id: string, public member_name: string,\n public readonly ticket_image_url: string | null, public ticket_number: number) {\n }\n}\n","import { CardMemberTicket, CardTicketLocation, HomeTeam } from '.';\nimport { GeneralImage } from '..';\n\nexport class CardTicket {\n constructor(public id: string, public activation_end_hours: number, public readonly activation_end_time: string,\n public activation_start_hours: number, public readonly activation_start_time: string,\n public away_team: string, public card_member_ticket: CardMemberTicket | null, public description: string,\n public event_time: string, public home_team: HomeTeam | null, public image: GeneralImage | null,\n public location: CardTicketLocation, public name: string, public ticket_type: string,\n public readonly ticket_type_nice: string, public readonly uses_pin: boolean) {\n }\n}\n","export class CardTicketLocation {\n constructor(public id: string, public club_id: string, public section_id: string, public location: string) {\n }\n}\n","import { ImageUrls } from '../image-urls';\n\nexport class CardTheme {\n constructor(public id: string, public background_color: string, public background_image_urls: ImageUrls,\n public name: string, public text_color: string) { }\n}\n","import { GeneralImage } from '..';\n\nexport class HomeTeam {\n constructor(public id: string, public logo: GeneralImage | null, public name: string) {\n }\n}\n","import { Card } from './card';\n\nexport class MemberCard {\n constructor(public id: string, public card: Card, public header_2: string, public member_name: string,\n public membership_text: string, public name: string, public pdf_url: string) { }\n}\n","export class SearchMemberCard {\n constructor(public id: string, public name: string, public notification_count: number, public pdf_url: string | null) {\n }\n}\n","export class Club {\n constructor(public id: string, public name: string) {\n }\n}\n","export class ClubImage {\n constructor(public clubId: string, public sectionId: string, public comment: string, public created: string,\n public image: string, public imageSmPath: string, public imageLgPath: string, public inUse: boolean,\n public isLogo: boolean, public originalHeight: number, public originalWidth: number,\n public title: string, public updated: string) {\n }\n}\n","export class ClubSection {\n constructor(public id: string, public name: string) {}\n}\n","export class Collection<T> {\n constructor(public count: number, public next: string | null, public previous: string | null,\n private resources: T[]) {}\n\n [Symbol.iterator]() {\n return this.resources.values();\n }\n\n public toArray(): T[] {\n return this.resources;\n }\n}\n","import { FormControl, FormGroup, Validators } from '@angular/forms';\n\nexport class Contact {\n static asFormGroup(contact?: Contact): FormGroup {\n return new FormGroup({\n id: new FormControl<string>(contact?.id || ''),\n club_id: new FormControl<string>(contact?.club_id || ''),\n member_id: new FormControl<string>(contact?.member_id || ''),\n address1: new FormControl<string>(contact?.address1 || ''),\n address2: new FormControl<string>(contact?.address2 || ''),\n address3: new FormControl<string>(contact?.address3 || ''),\n country: new FormControl<string>(contact?.country || ''),\n district: new FormControl<string>(contact?.district || ''),\n email: new FormControl<string>(contact?.email || '', Validators.email),\n first_name: new FormControl<string>(contact?.first_name || '', Validators.required),\n home_phone: new FormControl<string>(contact?.home_phone || ''),\n last_name: new FormControl<string>(contact?.last_name || '', Validators.required),\n mobile_phone: new FormControl<string>(contact?.mobile_phone || ''),\n work_phone: new FormControl<string>(contact?.work_phone || ''),\n zip: new FormControl<string>(contact?.zip || '')\n });\n }\n\n get name(): string {\n if (this.first_name) {\n return [this.first_name, this.last_name].join(' ');\n }\n\n return this.email;\n }\n\n constructor(public id: string, public club_id: string, public member_id: string, public address1: string,\n public address2: string, public address3: string, public country: string, public district: string,\n public email: string, public first_name: string, public home_phone: string, public last_name: string,\n public mobile_phone: string, public work_phone: string, public zip: string) { }\n}\n","import { FileObject } from './file-object';\n\nexport class Directory {\n constructor(public id: string, public club_id: string, public section_id: string | null, public team_id: string | null,\n public readonly created: string, public files: Array<FileObject>, public name: string,\n public readonly location_name: string, public readonly updated: string) { }\n\n public belongsToTeam(teamId: string | null = null) {\n if (teamId) {\n return this.team_id === teamId;\n }\n return this.team_id !== null;\n }\n\n public belongsToSection(sectionId: string | null = null) {\n if (sectionId) {\n return this.section_id === sectionId;\n }\n return this.section_id !== null;\n }\n}\n","import { EmailRecipientInterface } from '../interfaces';\n\nexport class Email {\n constructor(public body: string, public subject: string, public recipients: Array<EmailRecipientInterface> = []) {\n }\n}\n","export class Event {\n constructor(public id: string, public activity_id: string | null, public activity_type: string | null,\n public base_background_color: string | null, public base_color: string | null, public base_name: string | null,\n public calendar_name: string, public description: string | null, public end: string,\n public invitation_id: string | null, public invitation_response: string | null, public location: string,\n public meet_up_place: string | null, public meet_up_time: string, public member_id: string,\n public start: string, public title: string, public type: string) { }\n}\n","export class ExternalLink {\n constructor(public text: string, public value: string) {\n }\n}\n","export class FileObject {\n constructor(public id: string, public readonly created: string, public file: File | null,\n public member: boolean | null, public name: string, public section: boolean | null,\n public team: boolean | null, public readonly updated: string, public readonly url: string) { }\n}\n","import { ImageUrls } from './image-urls';\n\nexport class GeneralImage {\n constructor(public id: string, public name: string, public urls: ImageUrls) {\n }\n}\n","export class ImageUrls {\n constructor(public lg: string, public md: string, public raw: string, public sm: string, public xs: string) { }\n}\n","export class MemberFee {\n constructor(public id: string, public clubId: string, public sectionId: string | null, public name: string) {}\n}\n","import { CreditCard, Giro, Swish, Zimpler } from './payment-types';\nimport { MemberInvoiceRow } from './member-invoice-row';\n\nexport class MemberInvoice {\n constructor(public id: string, public amount: number, public amountPaid: number, public balance: number,\n public clubBillId: number, public clubName: string, public creditCard: CreditCard | null,\n public datePaid: string, public dueDate: string, public giro: Giro | null,\n public invoiceRows: Array<MemberInvoiceRow>, public invoiceText: string,\n public isPaid: boolean, public memberId: string, public payee: string,\n public paymentUrl: string, public reference: string, public swish: Swish | null,\n public zimpler: Zimpler | null) { }\n}\n","import { MemberFee } from './member-fee';\n\nexport class MemberInvoiceRow {\n constructor(public id: string, public amount: number, public amountPaid: number,\n public balance: number, public created: string, public datePaid: string,\n public fee: MemberFee, public hasCreditType: string, public invoice: string,\n public isCredit: boolean, public isPaid: boolean, public updated: string) {}\n}\n","import {\n PaymentAttemptStatusType,\n PaymentAttemptType\n} from '../../types';\nimport {\n PaymentAttemptCreditCardDataType,\n PaymentAttemptSwishDataType,\n PaymentAttemptZimplerDataType\n} from './payment-attempt-data-types';\n\n\nexport class PaymentAttempt {\n constructor(public readonly id: number, public readonly amount: number, public readonly error: unknown,\n public invoiceId: string, public paidDate: string,\n public readonly paymentData: PaymentAttemptCreditCardDataType | PaymentAttemptSwishDataType | PaymentAttemptZimplerDataType,\n public status: PaymentAttemptStatusType, public readonly type: PaymentAttemptType) {}\n}\n","export class CreditCard {\n constructor(public clubId: string, public sectionId: string,\n public defaultActivated: boolean, public merchantId: number, public name: string,\n public paymentTermsName: string, public paymentTermsOrganisationId: string,\n public paymentTermsUrl: string, public rsaKey: string, public status: string,\n public testAccount: boolean\n ) {}\n}\n","export class Giro {\n constructor(public clubId: string, public sectionId: string, public giroType: string,\n public name: string, public number: string, public ocr: boolean) {}\n}\n","export class Swish {\n constructor(public clubId: string, public sectionId: string,\n public certificateValidUntil: string, public defaultActivated: boolean, public name: string,\n public paymentTermsName: string, public paymentTermsOrganisationId: string, public paymentTermsUrl: string,\n public status: string, public swishPayeeAlias: string, public testAccount: boolean, public usePaymentTerms: boolean,\n public usesMyClubCertificate: boolean) {}\n}\n","export class Zimpler {\n constructor(public clubId: string, public sectionId: string,\n public defaultActivated: boolean, public merchantId: string, public name: string,\n public status: string, public testAccount: boolean) {}\n}\n","export class SearchMemberInvoice {\n constructor(public id: string, public amount: number, public amountPaid: number, public balance: number,\n public clubBillId: string, public datePaid: string, public dueDate: string, public isPaid: boolean,\n public member: string) {}\n\n is_due() {\n return new Date().toISOString() > this.dueDate;\n }\n}\n","export class SwishQrCode {\n constructor(public qrCode: string) {}\n}\n","export class UnpaidMemberInvoice {\n constructor(public id: string, public club_bill_id: string, public member_id: string, public token: string) {\n }\n}\n","import { MemberAttribute, MemberContact, MemberFunction, MemberValidationSettings } from '.';\nimport { SexType } from '../../types';\nimport { FormArray, FormControl, FormGroup, Validators } from '@angular/forms';\n\nexport class Member {\n static asFormGroup(member: Member | null = null): FormGroup {\n const attributes: Array<FormGroup> = [];\n const contacts: Array<FormGroup> = [];\n const functions: Array<FormGroup> = [];\n\n if (member?.attributes) {\n member.attributes.forEach((attribute: MemberAttribute) => attributes.push(MemberAttribute.asFormGroup(attribute)));\n }\n\n if (member?.contacts) {\n member.contacts.forEach((memberContact: MemberContact) => contacts.push(MemberContact.asFormGroup(memberContact)));\n }\n\n if (member?.functions) {\n member.functions.forEach((memberFunction: MemberFunction) => functions.push(MemberFunction.asFormGroup(memberFunction)));\n }\n\n return new FormGroup(\n {\n id: new FormControl<string>(member?.id || ''),\n club_id: new FormControl<string>(member?.club_id || ''),\n address1: new FormControl<string>(member?.address1 || ''),\n address2: new FormControl<string>(member?.address2 || ''),\n attributes: new FormArray(attributes),\n birth_date: new FormControl<string>(member?.birth_date || ''),\n comment: new FormControl<string | null>(member?.comment || ''),\n contacts: new FormArray(contacts),\n country: new FormControl<string>(member?.country || ''),\n district: new FormControl<string>(member?.district || ''),\n email: new FormControl<string>(member?.email || '', Validators.email),\n first_name: new FormControl<string>(member?.first_name || '', Validators.required),\n functions: new FormArray(functions),\n home_phone: new FormControl<string>(member?.home_phone || ''),\n last_name: new FormControl<string>(member?.last_name || '', Validators.required),\n mobile_phone: new FormControl<string>(member?.mobile_phone || ''),\n public_member_id: new FormControl<number>(member?.public_member_id || 0),\n sex: new FormControl<string>(member?.sex || ''),\n work_phone: new FormControl<string>(member?.work_phone || ''),\n zip: new FormControl<string>(member?.zip || '')\n }\n );\n }\n\n get name(): string {\n if (this.first_name) {\n return [this.first_name, this.last_name].join(' ');\n }\n\n return this.email;\n }\n\n constructor(public id: string, public readonly club_id: string, public address1: string, public address2: string,\n public address_field: string, public attributes: Array<MemberAttribute>, public birth_date: string,\n public readonly calendar_url: string, public readonly comment: string | null,\n public contacts: Array<MemberContact>, public country: string, public readonly created: string,\n public district: string, public email: string, public first_name: string,\n public readonly functions: Array<MemberFunction>, public home_phone: string,\n public image: string, public last_name: string, public mobile_phone: string, public public_member_id: number,\n public sex: SexType, public readonly updated: string,\n public readonly validation_settings: MemberValidationSettings, public work_phone: string,\n public zip: string) {\n }\n}\n","import { AttributeType } from '../../types';\nimport { OptionInterface } from '../../interfaces';\nimport { FormArray, FormControl, FormGroup } from '@angular/forms';\n\nexport class MemberAttribute {\n static asFormGroup(attribute: MemberAttribute | null = null) {\n const attributeOptions = new FormArray(attribute?.options?.map((option: OptionInterface) => new FormGroup({\n text: new FormControl<string>(option.text),\n value: new FormControl<string>(option.value)\n })) || []);\n\n return new FormGroup({\n field_id: new FormControl<string>(attribute?.field_id || ''),\n member_id: new FormControl<string>(attribute?.member_id || ''),\n leader_editable: new FormControl<boolean>(attribute?.leader_editable || false),\n member_editable: new FormControl<boolean>(attribute?.member_editable || false),\n name: new FormControl<string>(attribute?.name || ''),\n options: attributeOptions,\n type: new FormControl<string>(attribute?.type || 'text'),\n value: new FormControl<string | boolean | null>(attribute?.type === 'bool' ? attribute?.value : attribute?.value || '')\n });\n }\n\n constructor(public display_value: string, public field_id: string, public leader_editable: boolean,\n public member_id: string, public member_editable: boolean, public name: string,\n public options: Array<OptionInterface>, public order: number, public section_id: string | null,\n public type: AttributeType, public value: string | boolean | null) { }\n}\n","import { Contact } from '..';\nimport { ContactType } from '../../types';\nimport { FormControl, FormGroup } from '@angular/forms';\n\nexport class MemberContact {\n static asFormGroup(memberContact?: MemberContact): FormGroup {\n return new FormGroup({\n id: new FormControl<string>(memberContact?.id || ''),\n club_id: new FormControl(memberContact?.club_id || ''),\n member_id: new FormControl<string>(memberContact?.member_id || ''),\n contact: Contact.asFormGroup(memberContact?.contact),\n contact_type: new FormControl<string>(memberContact?.contact_type || '')\n })\n }\n\n constructor(public id: string, public club_id: string, public member_id: string, public contact: Contact,\n public contact_type: ContactType) {\n }\n}\n","import { FormControl, FormGroup } from '@angular/forms';\n\nexport class MemberFunction {\n static asFormGroup(memberFunction: MemberFunction | null = null): FormGroup {\n return new FormGroup({\n id: new FormControl<string>(memberFunction?.id || ''),\n comment: new FormControl<string>(memberFunction?.comment || ''),\n start_date: new FormControl<string>(memberFunction?.start_date || ''),\n end_date: new FormControl<string>(memberFunction?.end_date || ''),\n });\n }\n\n constructor(public id: string, public comment: string, public end_date: string, public name: string, public start_date: string) {\n }\n}\n","export class MemberValidationSettings {\n constructor(public readonly address: boolean, public readonly birth_date: number,\n public readonly district: boolean, public readonly email: boolean,\n public readonly home_phone: boolean, public readonly mobile_phone: boolean,\n public readonly work_phone: boolean, public readonly zip: boolean) { }\n}\n","export class SearchMember {\n constructor(public id: string, public club_id: string | null, public team_id: string | null, public address1: string,\n public address2: string, public readonly calendar_url: string, public country: string,\n public district: string, public email: string, public first_name: string, public image: string,\n public last_name: string, public mobile_phone: string, public name: string, public zip: string) {\n }\n}\n","export class MemberActivityInvite {\n constructor(public id: string, public comment: string, public current_num_attendants: number,\n public last_invite: string | null, public leader: boolean, public member_email: string | null,\n public member_id: string, public member_name: string, public next_invite: string | null,\n public response_date: string, public status: string) {\n }\n\n getColorByStatus(): string {\n let color = 'none';\n\n switch (this.status) {\n case 'accepted':\n color = 'myclub-accepted';\n break;\n case 'denied':\n color = 'myclub-denied';\n break;\n case 'maybe':\n color = 'myclub-maybe';\n break;\n }\n return color;\n }\n}\n","export class MemberPublicForm {\n constructor(public id: string, public active_form: string | null, public active_to: string | null,\n public userToken: string | null, public name: string, public url: string) { }\n}\n","import { Club, Section } from '.';\n\nexport class MemberTeam {\n constructor(public club: Club, public section: Section | null, public id: string, public email: string, public readonly has_extra_members: boolean,\n public name: string, public phone: string, public section_name: string | undefined) {\n }\n}\n","import { Member, SearchMember } from './member';\n\n\nexport class MemberTeamThrough {\n constructor(public id: string, public readonly created: string, public readonly dateHidden: string, public image: string,\n public leader: boolean, public member: SearchMember | Member, public roleId: string, public showOnWeb: boolean,\n public readonly updated: string) {\n }\n}\n","import { FormControl, FormGroup, Validators } from '@angular/forms';\nimport { ImageUrls } from './image-urls';\n\nexport class News {\n static asFormGroup(news: News | null = null): FormGroup {\n let show_on_my_pages = false;\n let show_on_webpage = false;\n\n if (typeof news?.show_on_my_pages !== 'undefined') {\n show_on_my_pages = news.show_on_my_pages;\n }\n\n if (typeof news?.show_on_webpage !== 'undefined') {\n show_on_webpage = news.show_on_webpage;\n }\n\n return new FormGroup(\n {\n id: new FormControl<string>(news?.id || ''),\n active_to: new FormControl<string>(news?.active_to || ''),\n ingress: new FormControl<string>(news?.ingress || '', [Validators.required, Validators.minLength(1)]),\n news_image: new FormControl<string>((news?.news_image as string) || ''),\n news_image_text: new FormControl<string>(news?.news_image_text || ''),\n published_date: new FormControl<string>(news?.published_date || ''),\n show_on_my_pages: new FormControl<boolean>(show_on_my_pages),\n show_on_webpage: new FormControl<boolean>(show_on_webpage),\n text: new FormControl<string>(news?.text || '', [Validators.required, Validators.minLength(1)]),\n title: new FormControl<string>(news?.title || '', [Validators.required, Validators.minLength(1)])\n }\n )\n }\n\n constructor(public id: string, public readonly club_id: string, public readonly created: string,\n public readonly created_by_id: string, public readonly section_id: string | null,\n public readonly team_id: string | null, public active_to: string | null, public author: string,\n public ingress: string, public news_image: string | File | null, public news_image_text: string,\n public published_date: string | null, public readonly read: boolean, public show_on_my_pages: boolean,\n public show_on_webpage: boolean, public text: string, public title: string,\n public readonly updated: string, public urls: ImageUrls | null) {\n }\n}\n","import { GeneralImage } from '.';\n\nexport class Partner {\n constructor(public id: string, public image: GeneralImage | null, public name: string, public url: string) {\n }\n}\n","export enum Role {\n ClubAdmin,\n SectionAdmin,\n TeamAdmin,\n MemberAdmin,\n Public,\n None\n}\n","export class SearchClub {\n constructor(public id: string, public leader_member_search: boolean, public member_search: boolean,\n public name: string) {\n }\n}\n","import { Club } from './club';\nimport { Section } from './section';\n\nexport class SearchTeam {\n constructor(public club: Club | undefined, public section: Section | undefined, public id: string,\n public name: string, public section_name: string | undefined) {}\n}\n","export class Section {\n constructor(public id: string, public name: string) {\n }\n}\n","export class Token {\n constructor(public accessToken: string, public refreshToken: string) {}\n}\n","import { FormControl, FormGroup, Validators } from '@angular/forms';\n\nexport class User {\n static asFormGroup(user: User | null = null): FormGroup {\n return new FormGroup({\n email: new FormControl<string>(user?.email || '', [Validators.required, Validators.email]),\n firstName: new FormControl<string>(user?.firstName || ''),\n language: new FormControl<string>(user?.language || 'sv'),\n lastName: new FormControl<string>(user?.lastName || ''),\n newEmail: new FormControl<string>(user?.newEmail || ''),\n newPassword: new FormControl<string>(''),\n verifyPassword: new FormControl<string>(''),\n password: new FormControl<string>('')\n });\n }\n\n constructor(public deviceToken: string | null, public email: string,\n public firstName: string, public isStaff: boolean, public language: string,\n public lastName: string, public newEmail: string | null, public newPassword: string = '',\n public verifyPassword: string = '', public password: string = '') {}\n\n name(): string {\n return `${this.firstName} ${this.lastName}`;\n }\n}\n","export class UserNotification {\n constructor(public id: string, public club_id: string, public member_id: string, public object_id: string,\n public created: string, public message: string, public title: string, public type: string) {\n }\n}\n","import { HttpClient, HttpResponse } from '@angular/common/http';\nimport { Inject, Injectable, InjectionToken } from '@angular/core';\nimport { map } from 'rxjs/operators';\nimport { ApiCollection } from '../api-models';\nimport { Collection, Role } from '../models';\n\nexport const DOMAIN = new InjectionToken<string>('domain');\n\nconst API_PATH = 'api/v3/';\n\nconst ROLE_PATH = {\n [Role.ClubAdmin]: 'club-admin/',\n [Role.SectionAdmin]: 'section-admin/',\n [Role.TeamAdmin]: 'team-admin/',\n [Role.MemberAdmin]: 'member-admin/',\n [Role.Public]: 'public/',\n [Role.None]: ''\n};\n\ninterface Factory<A, T> {\n (apiResource: A): T;\n}\n\ninterface PathParams {\n [key: string]: string;\n}\n\ninterface Options {\n params?: { [key: string]: string | Array<string>};\n body?: any;\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ApiService {\n constructor(\n private http: HttpClient,\n @Inject(DOMAIN) private domain: string\n ) {}\n\n deleteResource(\n role: Role,\n path: string,\n pathParams: PathParams = {},\n options: Options = {}\n ) {\n return this.delete(role, path, pathParams, options)\n .pipe(\n map((response: HttpResponse<unknown>) => response.status === 204)\n );\n }\n\n getCollection<A, T>(\n factory: Factory<A, T>,\n role: Role,\n path: string,\n pathParams: PathParams = {},\n options: Options = { }\n ) {\n return this.get<ApiCollection<A>>(role, path, pathParams, options).pipe(\n map((apiCollection) => {\n const resources = apiCollection.results.map((resource) => factory(resource));\n return new Collection<T>(apiCollection.count, apiCollection.next, apiCollection.previous, resources);\n })\n );\n }\n\n getResource<A, T>(\n factory: Factory<A, T>,\n role: Role,\n path: string,\n pathParams: PathParams = {},\n options: Options = {}\n ) {\n return this.get<A>(role, path, pathParams, options).pipe(\n map((apiResource) => factory(apiResource))\n );\n }\n\n postFormData<A, T>(\n factory: Factory<A, T>,\n role: Role,\n path: string,\n pathParams: PathParams = {},\n data: { [key: string]: string } | FormData) {\n return this.http.post<A>(this.url(this.path(role, path, pathParams)), this.getFormData(data))\n .pipe(map((apiResource) => factory(apiResource)));\n }\n\n postResource<A, T>(\n factory: Factory<A, T>,\n role: Role,\n path: string,\n pathParams: PathParams = {},\n data: unknown,\n options: Options = {}) {\n return this.post<A>(role, path, pathParams, data, options).pipe(\n map((apiResource) => factory(apiResource))\n );\n }\n\n updateResource<A, T>(\n responseFactory: Factory<A, T>,\n role: Role,\n path: string,\n pathParams: PathParams = {},\n data: unknown,\n options: Options = {}) {\n return this.patch<A>(role, path, pathParams, data, options).pipe(\n map((apiResource) => responseFactory(apiResource))\n );\n }\n\n private delete(role: Role, path: string, pathParams: PathParams, options: Options) {\n if (options.body) {\n return this.http.request<any>('delete', this.url(this.path(role, path, pathParams)), options);\n }\n\n return this.http.delete(this.url(this.path(role, path, pathParams)), {...options, observe: 'response'});\n }\n\n private get<T>(role: Role, path: string, pathParams: PathParams, options: Options) {\n return this.http.get<T>(this.url(this.path(role, path, pathParams)), options);\n }\n\n private getFormData(data: { [key: string]: string } | FormData) {\n if (data instanceof FormData) {\n return data;\n }\n\n const formData = new FormData();\n for (const [key, value] of Object.entries(data)) {\n formData.append(key, value);\n }\n\n return formData;\n }\n\n private patch<T>(role: Role, path: string, pathParams: PathParams, data: unknown, options: Options) {\n return this.http.patch<T>(this.url(this.path(role, path, pathParams)), data, options);\n }\n\n private path(role: Role, path: string, params: PathParams) {\n for (const [key, value] of Object.entries(params)) {\n const regexp = new RegExp(':' + key, 'g');\n path = path.replace(regexp, value);\n }\n\n return ROLE_PATH[role] + path;\n }\n\n private post<T>(role: Role, path: string, pathParams: PathParams, data: unknown, options: Options) {\n return this.http.post<T>(this.url(this.path(role, path, pathParams)), data, options);\n }\n\n private url(path: string) {\n return this.domain + API_PATH + path;\n }\n}\n","import { ApiSearchMember } from '../../api-models';\nimport { SearchMember } from '../../models';\n\nexport const searchMemberFactory = (apiSearchMember: ApiSearchMember) =>\n new SearchMember(\n apiSearchMember.id,\n apiSearchMember.club_id,\n apiSearchMember.team_id,\n apiSearchMember.address1,\n apiSearchMember.address2,\n apiSearchMember.calendar_url,\n apiSearchMember.country,\n apiSearchMember.district,\n apiSearchMember.email,\n apiSearchMember.first_name,\n apiSearchMember.image,\n apiSearchMember.last_name,\n apiSearchMember.mobile_phone,\n apiSearchMember.name,\n apiSearchMember.zip\n );\n","import { ApiMemberAttribute } from '../../api-models';\nimport { MemberAttribute } from '../../models';\n\nexport const memberAttributeFactory = (attribute: ApiMemberAttribute) =>\n new MemberAttribute(\n attribute.display_value,\n attribute.field_id,\n attribute.leader_editable,\n attribute.member_id,\n attribute.member_editable,\n attribute.name,\n attribute.options,\n attribute.order,\n attribute.section_id,\n attribute.type,\n attribute.value\n );\n","import { ApiContact } from '../../api-models';\nimport { Contact } from '../../models';\n\nexport const contactFactory = (contact: ApiContact) =>\n new Contact(\n contact.id,\n contact.club_id,\n contact.member_id,\n contact.address1,\n contact.address2,\n contact.address3,\n contact.country,\n contact.district,\n contact.email,\n contact.first_name,\n contact.home_phone,\n contact.last_name,\n contact.mobile_phone,\n contact.work_phone,\n contact.zip\n );\n","import { ApiMemberContact } from '../../api-models';\nimport { MemberContact } from '../../models';\nimport { contactFactory } from './contact-factory';\n\nexport const memberContactFactory = (memberContact: ApiMemberContact) =>\n new MemberContact(\n memberContact.id,\n memberContact.club_id,\n memberContact.member_id,\n contactFactory(memberContact.contact),\n memberContact.contact_type\n );\n","import { ApiMemberFunction } from '../../api-models';\nimport { MemberFunction } from '../../models';\n\nexport const memberFunctionFactory = (memberFunction: ApiMemberFunction) =>\n new MemberFunction(\n memberFunction.id,\n memberFunction.comment,\n memberFunction.end_date,\n memberFunction.name,\n memberFunction.start_date\n );\n","import { ApiMemberValidationSettings } from '../../api-models';\nimport { MemberValidationSettings } from '../../models';\n\nexport const memberValidationSettingsFactory = (apiMemberValidationSettings: ApiMemberValidationSettings) =>\n new MemberValidationSettings(\n apiMemberValidationSettings.address,\n apiMemberValidationSettings.birth_date,\n apiMemberValidationSettings.district,\n apiMemberValidationSettings.email,\n apiMemberValidationSettings.home_phone,\n apiMemberValidationSettings.mobile_phone,\n apiMemberValidationSettings.work_phone,\n apiMemberValidationSettings.zip\n );\n","import { ApiMember, ApiMemberAttribute, ApiMemberContact, ApiMemberFunction } from '../../api-models';\nimport { Member } from '../../models';\nimport { memberAttributeFactory } from './member-attribute-factory';\nimport { memberContactFactory } from './member-contact-factory';\nimport { memberFunctionFactory } from './member-function-factory';\nimport { memberValidationSettingsFactory } from './member-validation-settings-factory';\n\nexport const memberFactory = (apiMember: ApiMember) =>\n new Member(\n apiMember.id,\n apiMember.club_id,\n apiMember.address1,\n apiMember.address2,\n apiMember.address_field,\n apiMember.attributes.map((attribute: ApiMemberAttribute) => memberAttributeFactory(attribute)),\n apiMember.birth_date,\n apiMember.calendar_url,\n apiMember.comment,\n apiMember.contacts.map((contactMember: ApiMemberContact) => memberContactFactory(contactMember)),\n apiMember.country,\n apiMember.created,\n apiMember.district,\n apiMember.email,\n apiMember.first_name,\n apiMember.functions ?\n apiMember.functions.map((memberFunction: ApiMemberFunction) => memberFunctionFactory(memberFunction)) : [],\n apiMember.home_phone,\n apiMember.image,\n apiMember.last_name,\n apiMember.mobile_phone,\n apiMember.public_member_id,\n apiMember.sex,\n apiMember.updated,\n memberValidationSettingsFactory(apiMember.validation_settings),\n apiMember.work_phone,\n apiMember.zip\n );\n","import { ApiActivityExtraMember, ApiMember, ApiSearchMember } from '../../api-models';\nimport { ActivityExtraMember } from '../../models';\nimport { searchMemberFactory } from './search-member-factory';\nimport { memberFactory } from './member-factory';\n\nexport const activityExtraMemberFactory = (apiActivityExtraMember: ApiActivityExtraMember) =>\n new ActivityExtraMember(\n apiActivityExtraMember.id,\n apiActivityExtraMember.member_id,\n apiActivityExtraMember.team_id,\n apiActivityExtraMember.created,\n apiActivityExtraMember.leader,\n (apiActivityExtraMember.member as ApiMember).birth_date ?\n memberFactory(apiActivityExtraMember.member as ApiMember) : searchMemberFactory(apiActivityExtraMember.member as ApiSearchMember),\n apiActivityExtraMember.member_name\n );\n","import { ApiMemberActivityInvite } from '../../api-models';\nimport { MemberActivityInvite } from '../../models';\n\nexport const memberActivityInviteFactory = (invitedMember: ApiMemberActivityInvite) =>\n new MemberActivityInvite(\n invitedMember.id,\n invitedMember.comment,\n invitedMember.current_num_attendants,\n invitedMember.last_invite,\n invitedMember.leader,\n invitedMember.member_email,\n invitedMember.member_id,\n invitedMember.member_name,\n invitedMember.next_invite,\n invitedMember.response_date,\n invitedMember.status\n );\n","import { ApiActivity, ApiMemberActivityInvite } from '../../api-models';\nimport { Activity } from '../../models';\nimport { memberActivityInviteFactory } from './member-invite-factory';\nimport { format } from 'date-fns';\n\nexport const activityFactory = (apiActivity: ApiActivity) =>\n new Activity(\n apiActivity.id,\n apiActivity.activity_group_id,\n apiActivity.activity_type_id,\n apiActivity.club_id,\n apiActivity.location_id,\n apiActivity.team_id,\n apiActivity.activity_location,\n apiActivity.activity_type_name,\n apiActivity.allow_maybe,\n apiActivity.calendar_name,\n apiActivity.created,\n apiActivity.current_num_attendants,\n apiActivity.day,\n apiActivity.description,\n apiActivity.end_time,\n apiActivity.file,\n apiActivity.invitation_text,\n apiActivity.invite_first_days,\n [],\n apiActivity.invite_hide_before_sent,\n apiActivity.invite_last_response_date,\n apiActivity.invite_remind,\n apiActivity.invite_remind_receivers,\n apiActivity.invite_second_days,\n 'same_as_last',\n (apiActivity.invited_members && apiActivity.invited_members.length) ? apiActivity.invited_members.map(\n (invitedMember: ApiMemberActivityInvite) => memberActivityInviteFactory(invitedMember)\n ) : [],\n apiActivity.last_response_date,\n apiActivity.max_num_attendants,\n apiActivity.max_num_attendants_type,\n apiActivity.meet_up_place,\n apiActivity.meet_up_time,\n apiActivity.meet_up_time_display,\n 'none',\n 6,\n format(new Date(), 'yyyy-MM-dd'),\n 'repeat_until',\n apiActivity.show_other_invited,\n apiActivity.start_time,\n apiActivity.title,\n apiActivity.updated,\n apiActivity.use_invite,\n false\n );\n","import { ApiUnpaidMemberInvoice } from '../../api-models';\nimport { UnpaidMemberInvoice } from '../../models';\n\nexport const unpaidInvoiceFactory = (apiUnpaidInvoice: ApiUnpaidMemberInvoice) =>\n new UnpaidMemberInvoice(\n apiUnpaidInvoice.id,\n apiUnpaidInvoice.club_bill_id,\n apiUnpaidInvoice.member_id,\n apiUnpaidInvoice.token\n );\n","import { ApiActivityInvite, ApiUnpaidMemberInvoice } from '../../api-models';\nimport { ActivityInvite } from '../../models';\nimport { activityFactory } from './activity-factory';\nimport { searchMemberFactory } from './search-member-factory';\nimport { unpaidInvoiceFactory } from './unpaid-invoice-factory';\n\nexport const activityInviteFactory = (apiActivityInvite: ApiActivityInvite) =>\n new ActivityInvite(\n apiActivityInvite.id,\n activityFactory(apiActivityInvite.activity),\n apiActivityInvite.comment,\n apiActivityInvite.created,\n apiActivityInvite.has_unpaid_invoices,\n apiActivityInvite.last_invite,\n apiActivityInvite.leader,\n searchMemberFactory(apiActivityInvite.member),\n apiActivityInvite.next_invite,\n apiActivityInvite.reminded,\n apiActivityInvite.response_date,\n apiActivityInvite.status,\n apiActivityInvite.token,\n apiActivityInvite.unpaid_invoices && apiActivityInvite.unpaid_invoices.length ? apiActivityInvite.unpaid_invoices.map(\n (apiUnpaidInvoice: ApiUnpaidMemberInvoice) => unpaidInvoiceFactory(apiUnpaidInvoice)\n ) : [],\n apiActivityInvite.updated\n );\n","import { ApiActivityLocation } from '../../api-models';\nimport { ActivityLocation } from '../../models';\n\nexport const activityLocationFactory = (apiActivityLocation: ApiActivityLocation) =>\n new ActivityLocation(\n apiActivityLocation.id,\n apiActivityLocation.club_id,\n apiActivityLocation.section_id,\n apiActivityLocation.active,\n apiActivityLocation.mun_location_city_area,\n apiActivityLocation.mun_location_name,\n apiActivityLocation.name\n );\n","import { ApiActivitySettings } from '../../api-models/api-activity-settings';\nimport { ActivitySettings } from '../../models';\n\nexport const activitySettingsFactory = (apiActivitySettings: ApiActivitySettings) =>\n new ActivitySettings(\n apiActivitySettings.day_options,\n apiActivitySettings.hour_options,\n apiActivitySettings.invite_group_options,\n apiActivitySettings.invite_settings_options,\n apiActivitySettings.max_attendance_options,\n apiActivitySettings.meet_up_time_options,\n apiActivitySettings.remind_receiver_options,\n apiActivitySettings.repeat_options,\n apiActivitySettings.repeat_type_options\n );\n","import { ApiActivityType } from '../../api-models';\nimport { ActivityType } from '../../models';\n\nexport const activityTypeFactory = (apiActivityType: ApiActivityType) =>\n new ActivityType(\n apiActivityType.id,\n apiActivityType.club_id,\n apiActivityType.section_id,\n apiActivityType.active,\n apiActivityType.base_type,\n apiActivityType.name\n );\n","import { AuthSection } from '../../models';\nimport { ApiAuthSection } from '../../api-models';\n\nexport const authSectionFactory = (apiAuthSection: ApiAuthSection) =>\n new AuthSection(apiAuthSection.id, apiAuthSection.name);\n","import { AuthMember } from '../../models';\nimport { ApiAuthMember } from '../../api-models';\n\nexport const authMemberFactory = (apiAuthMember: ApiAuthMember) =>\n new AuthMember(apiAuthMember.id, apiAuthMember.name, apiAuthMember.calendar_url);\n","import { ApiAuthTeamSection } from '../../api-models';\nimport { AuthTeamSection } from '../../models';\n\nexport const authTeamSectionFactory = (apiAuthTeamSection: ApiAuthTeamSection) =>\n new AuthTeamSection(apiAuthTeamSection.id, apiAuthTeamSection.name);\n","import { AuthTeam } from '../../models';\nimport { ApiAuthTeam } from '../../api-models';\nimport { authTeamSectionFactory } from './auth-team-section-factory';\n\nexport const authTeamFactory = (apiAuthTeam: ApiAuthTeam) =>\n new AuthTeam(\n apiAuthTeam.id,\n apiAuthTeam.calendar_url,\n apiAuthTeam.name,\n apiAuthTeam.section ? authTeamSectionFactory(apiAuthTeam.section) : null\n );\n","import { ApiAuth, ApiAuthMember, ApiAuthSection, ApiAuthTeam } from '../../api-models';\nimport { Auth } from '../../models';\nimport { authSectionFactory } from './auth-section-factory';\nimport { authMemberFactory } from './auth-member-factory';\nimport { authTeamFactory } from './auth-team-factory';\n\nexport const authFactory = (apiAuth: ApiAuth) =>\n new Auth(\n apiAuth.id,\n apiAuth.name,\n apiAuth.club_admin,\n apiAuth.is_section_club,\n apiAuth.members.map((apiAuthMember: ApiAuthMember) => authMemberFactory(apiAuthMember)),\n apiAuth.registration_enabled,\n apiAuth.sections.map((apiAuthSection: ApiAuthSection) => authSectionFactory(apiAuthSection)),\n apiAuth.site_enabled,\n apiAuth.teams.map((apiAuthTeam: ApiAuthTeam) => authTeamFactory(apiAuthTeam)),\n apiAuth.user_name\n );\n","import { ApiImageUrls } from '../../api-models';\nimport { ImageUrls } from '../../models';\n\nexport const imageUrlsFactory = (apiImageUrls: ApiImageUrls) =>\n new ImageUrls(\n apiImageUrls.lg,\n apiImageUrls.md,\n apiImageUrls.raw,\n apiImageUrls.sm,\n apiImageUrls.xs\n )\n","import { ApiGeneralImage } from '../../api-models';\nimport { GeneralImage } from '../../models';\nimport { imageUrlsFactory } from './image-urls-factory';\n\nexport const generalImageFactory = (image: ApiGeneralImage | null) =>\n image ? new GeneralImage(\n image.id,\n image.name,\n imageUrlsFactory(image.urls)\n ) : null;\n","import { ApiPartner } from '../../api-models';\nimport { Partner } from '../../models';\nimport { generalImageFactory } from './general-image-factory';\n\nexport const partnerFactory = (apiPartner: ApiPartner) =>\n new Partner(\n apiPartner.id,\n apiPartner.image ? generalImageFactory(apiPartner.image) : null,\n apiPartner.name,\n apiPartner.url\n );\n","import { ApiCardDeal } from '../../api-models';\nimport { CardDeal } from '../../models';\nimport { partnerFactory } from './partner-factory';\n\nexport const cardDealFactory = (apiCardDeal: ApiCardDeal) =>\n new CardDeal(\n apiCardDeal.id,\n partnerFactory(apiCardDeal.partner),\n apiCardDeal.text,\n apiCardDeal.title,\n apiCardDeal.url\n );\n","import { ApiCardLogoUrls } from '../../api-models';\nimport { CardLogoUrls } from '../../models';\n\nexport const cardLogoUrlsFactory = (apiCardLogoUrls: ApiCardLogoUrls) =>\n new CardLogoUrls(\n apiCardLogoUrls.lg,\n apiCardLogoUrls.md,\n apiCardLogoUrls.sm,\n apiCardLogoUrls.w16,\n apiCardLogoUrls.w32,\n apiCardLogoUrls.w64,\n apiCardLogoUrls.w180,\n apiCardLogoUrls.w192\n );\n","import { ApiCardLogo } from '../../api-models';\nimport { CardLogo } from '../../models';\nimport { cardLogoUrlsFactory } from './card-logo-urls-factory';\n\nexport const cardLogoFactory = (apiCardLogo: ApiCardLogo) =>\n new CardLogo(\n apiCardLogo.id,\n apiCardLogo.name,\n cardLogoUrlsFactory(apiCardLogo.urls)\n );\n","import { ApiCardTheme } from '../../api-models';\nimport { CardTheme } from '../../models';\nimport { imageUrlsFactory } from './image-urls-factory';\n\nexport const cardThemeFactory = (apiCardTheme: ApiCardTheme) =>\n new CardTheme(\n apiCardTheme.id,\n apiCardTheme.background_color,\n imageUrlsFactory(apiCardTheme.background_image_urls),\n apiCardTheme.name,\n apiCardTheme.text_color\n );\n","import { ApiCard } from '../../api-models';\nimport { cardLogoFactory } from './card-logo-factory';\nimport { Card } from '../../models';\nimport { cardThemeFactory } from './card-theme-factory';\n\nexport const cardFactory = (apiCard: ApiCard) =>\n new Card(\n apiCard.id,\n apiCard.deals_count,\n apiCard.header_1,\n apiCard.name,\n cardLogoFactory(apiCard.logo),\n cardThemeFactory(apiCard.theme),\n apiCard.ticket_count,\n apiCard.use_pdf_version\n );\n","import { ApiCardMemberTicket } from '../../api-models';\nimport { CardMemberTicket } from '../../models';\n\nexport const cardMemberTicketFactory = (apiCardMemberTicket: ApiCardMemberTicket) =>\n new CardMemberTicket(\n apiCardMemberTicket.id,\n apiCardMemberTicket.member_id,\n apiCardMemberTicket.ticket_id,\n apiCardMemberTicket.member_name,\n apiCardMemberTicket.ticket_image_url,\n apiCardMemberTicket.ticket_number\n );\n","import { ApiHomeTeam } from '../../api-models';\nimport { HomeTeam } from '../../models';\nimport { generalImageFactory } from './general-image-factory';\n\nexport const homeTeamFactory = (apiHomeTeam: ApiHomeTeam) =>\n new HomeTeam(\n apiHomeTeam.id,\n apiHomeTeam.logo ? generalImageFactory(apiHomeTeam.logo) : null,\n apiHomeTeam.name\n )\n","import { ApiCardTicketLocation } from '../../api-models';\nimport { CardTicketLocation } from '../../models';\n\nexport const cardTicketLocationFactory = (apiCardTicketLocation: ApiCardTicketLocation) =>\n new CardTicketLocation(\n apiCardTicketLocation.id,\n apiCardTicketLocation.club_id,\n apiCardTicketLocation.section_id,\n apiCardTicketLocation.location\n );\n","import { ApiCardTicket } from '../../api-models';\nimport { CardTicket } from '../../models';\nimport { cardMemberTicketFactory } from './card-member-ticket-factory';\nimport { homeTeamFactory } from './home-team-factory';\nimport { generalImageFactory } from './general-image-factory';\nimport { cardTicketLocationFactory } from './card-ticket-location-factory';\n\nexport const cardTicketFactory = (apiCardTicket: ApiCardTicket) =>\n new CardTicket(\n apiCardTicket.id,\n apiCardTicket.activation_end_hours,\n apiCardTicket.activation_end_time,\n apiCardTicket.activation_start_hours,\n apiCardTicket.activation_start_time,\n apiCardTicket.away_team,\n apiCardTicket.card_member_ticket ? cardMemberTicketFactory(apiCardTicket.card_member_ticket) : null,\n apiCardTicket.description,\n apiCardTicket.event_time,\n apiCardTicket.home_team ? homeTeamFactory(apiCardTicket.home_team) : null,\n apiCardTicket.image ? generalImageFactory(apiCardTicket.image) : null,\n cardTicketLocationFactory(apiCardTicket.location),\n apiCardTicket.name,\n apiCardTicket.ticket_type,\n apiCardTicket.ticket_type_nice,\n apiCardTicket.uses_pin\n );\n","import { ApiClub } from '../../api-models';\nimport { Club } from '../../models';\n\nexport const clubFactory = (apiClub: ApiClub) =>\n new Club(apiClub.id, apiClub.name);\n","import { ApiClubImage } from '../../api-models';\nimport { ClubImage } from '../../models';\n\nexport const clubImageFactory = (apiClubImage: ApiClubImage) =>\n new ClubImage(\n apiClubImage.club_id,\n apiClubImage.section_id,\n apiClubImage.comment,\n apiClubImage.created,\n apiClubImage.image,\n apiClubImage.image_sm_path,\n apiClubImage.image_lg_path,\n apiClubImage.in_use,\n apiClubImage.is_logo,\n apiClubImage.original_height,\n apiClubImage.original_width,\n apiClubImage.title,\n apiClubImage.updated\n );\n","import { ApiClubSection } from '../../api-models';\nimport { ClubSection } from '../../models';\n\nexport const clubSectionFactory = (apiSection: ApiClubSection) =>\n new ClubSection(apiSection.id, apiSection.name);\n","import { ApiCreditCard } from '../../api-models';\nimport { CreditCard } from '../../models';\n\nexport const creditCardFactory = (apiCreditCard: ApiCreditCard) =>\n new CreditCard(\n apiCreditCard.club_id,\n apiCreditCard.section_id,\n apiCreditCard.default_activated,\n apiCreditCard.merchant_id,\n apiCreditCard.name,\n apiCreditCard.payment_terms_name,\n apiCreditCard.payment_terms_organisation_id,\n apiCreditCard.payment_terms_url,\n apiCreditCard.rsa_key,\n apiCreditCard.status,\n apiCreditCard.test_account\n );\n","import { ApiFileObject } from '../../api-models';\nimport { FileObject } from '../../models';\n\nexport const fileFactory = (file: ApiFileObject) =>\n new FileObject(\n file.id,\n file.created,\n null,\n typeof file.member === 'undefined' ? null : file.member,\n file.name,\n typeof file.section === 'undefined' ? null : file.section,\n typeof file.team === 'undefined' ? null : file.team,\n file.updated,\n file.url\n );\n","import { ApiDirectory, ApiFileObject } from '../../api-models';\nimport { Directory } from '../../models';\nimport { fileFactory } from './file-factory';\n\nexport const directoryFactory = (directory: ApiDirectory) =>\n new Directory(\n directory.id,\n directory.club_id,\n directory.section_id,\n directory.team_id,\n directory.created,\n directory.files.map((file: ApiFileObject) => fileFactory(file)),\n directory.name,\n directory.location_name,\n directory.updated\n );\n","import { ApiEvent } from '../../api-models';\nimport { Event } from '../../models';\n\nexport const eventFactory = (apiEvent: ApiEvent) =>\n new Event(\n apiEvent.id,\n apiEvent.activity_id,\n apiEvent.activity_type,\n apiEvent.base_background_color,\n apiEvent.base_color,\n apiEvent.base_name,\n apiEvent.calendar_name,\n apiEvent.description,\n apiEvent.end,\n apiEvent.invitation_id,\n apiEvent.invitation_response,\n apiEvent.location,\n apiEvent.meet_up_place,\n apiEvent.meet_up_time,\n apiEvent.member_id,\n apiEvent.start,\n apiEvent.title,\n apiEvent.type\n );\n","import { ApiExternalLink } from '../../api-models';\nimport { ExternalLink } from '../../models';\n\nexport const externalLinkFactory = (apiExternalLink: ApiExternalLink) =>\n new ExternalLink(\n apiExternalLink.text,\n apiExternalLink.value\n );\n","import { ApiGiro } from '../../api-models';\nimport { Giro } from '../../models';\n\nexport const giroFactory = (apiGiro: ApiGiro) =>\n new Giro(\n apiGiro.club_id,\n apiGiro.section_id,\n apiGiro.giro_type,\n apiGiro.name,\n apiGiro.number,\n apiGiro.ocr\n );\n","import { ApiMemberCard } from '../../api-models';\nimport { MemberCard } from '../../models';\nimport { cardFactory } from './card-factory';\n\nexport const memberCardFactory = (apiMemberCard: ApiMemberCard) =>\n new MemberCard(\n apiMemberCard.id,\n cardFactory(apiMemberCard.card),\n apiMemberCard.header_2,\n apiMemberCard.member_name,\n apiMemberCard.membership_text,\n apiMemberCard.name,\n apiMemberCard.pdf_url\n );\n","import { ApiMemberFee } from '../../api-models';\nimport { MemberFee } from '../../models';\n\nexport const memberFeeFactory = (apiMemberFee: ApiMemberFee) =>\n new MemberFee(\n apiMemberFee.id,\n apiMemberFee.club_id,\n apiMemberFee.section_id,\n apiMemberFee.name\n );\n","import { ApiSwish } from '../../api-models';\nimport { Swish } from '../../models';\n\nexport const swishFactory = (apiSwish: ApiSwish) =>\n new Swish(\n apiSwish.club_id,\n apiSwish.section_id,\n apiSwish.certificate_valid_until,\n apiSwish.default_activated,\n apiSwish.name,\n apiSwish.payment_terms_name,\n apiSwish.payment_terms_organisation_id,\n apiSwish.payment_terms_url,\n apiSwish.status,\n apiSwish.swish_payee_alias,\n apiSwish.test_account,\n apiSwish.use_payment_terms,\n apiSwish.uses_myclub_certificate\n );\n","import { ApiZimpler } from '../../api-models';\nimport { Zimpler } from '../../models';\n\nexport const zimplerFactory = (apiZimpler: ApiZimpler) =>\n new Zimpler(\n apiZimpler.club_id,\n apiZimpler.section_id,\n apiZimpler.default_activated,\n apiZimpler.merchant_id,\n apiZimpler.name,\n apiZimpler.status,\n apiZimpler.test_account\n )\n","import { ApiMemberInvoiceRow } from '../../api-models';\nimport { MemberInvoiceRow } from '../../models';\nimport { memberFeeFactory } from './member-fee-factory';\n\nexport const memberInvoiceRowFactory = (apiMemberInvoiceRow: ApiMemberInvoiceRow) =>\n new MemberInvoiceRow(\n apiMemberInvoiceRow.id,\n apiMemberInvoiceRow.amount,\n apiMemberInvoiceRow.amount_paid,\n apiMemberInvoiceRow.balance,\n apiMemberInvoiceRow.created,\n apiMemberInvoiceRow.date_paid,\n memberFeeFactory(apiMemberInvoiceRow.fee),\n apiMemberInvoiceRow.has_credit_type,\n apiMemberInvoiceRow.invoice,\n apiMemberInvoiceRow.is_credit,\n apiMemberInvoiceRow.is_paid,\n apiMemberInvoiceRow.updated\n );\n","import { ApiMemberInvoice, ApiMemberInvoiceRow } from '../../api-models';\nimport { MemberInvoice } from '../../models';\nimport { creditCardFactory } from './credit-card-factory';\nimport { giroFactory } from './giro-factory';\nimport { swishFactory } from './swish-factory';\nimport { zimplerFactory } from './zimpler-factory';\nimport { memberInvoiceRowFactory } from './member-invoice-row-factory';\n\nexport const memberInvoiceFactory = (apiMemberInvoice: ApiMemberInvoice) =>\n new MemberInvoice(\n apiMemberInvoice.id,\n apiMemberInvoice.amount,\n apiMemberInvoice.amount_paid,\n apiMemberInvoice.balance,\n apiMemberInvoice.club_bill_id,\n apiMemberInvoice.club_name,\n apiMemberInvoice.credit_card ? creditCardFactory(apiMemberInvoice.credit_card) : null,\n apiMemberInvoice.date_paid,\n apiMemberInvoice.due_date,\n apiMemberInvoice.giro ? giroFactory(apiMemberInvoice.giro) : null,\n apiMemberInvoice.invoice_rows.map((row: ApiMemberInvoiceRow) => memberInvoiceRowFactory(row)),\n apiMemberInvoice.invoice_text,\n apiMemberInvoice.is_paid,\n apiMemberInvoice.member_id,\n apiMemberInvoice.payee,\n apiMemberInvoice.payment_url,\n apiMemberInvoice.reference,\n apiMemberInvoice.swish ? swishFactory(apiMemberInvoice.swish) : null,\n apiMemberInvoice.zimpler ? zimplerFactory(apiMemberInvoice.zimpler) : null\n );\n","import { ApiMemberPublicForm } from '../../api-models';\nimport { MemberPublicForm } from '../../models';\n\nexport const memberPublicFormFactory = (apiMemberPublicForm: ApiMemberPublicForm) =>\n new MemberPublicForm(\n apiMemberPublicForm.id,\n apiMemberPublicForm.active_from,\n apiMemberPublicForm.active_to,\n apiMemberPublicForm.user_token,\n apiMemberPublicForm.name,\n apiMemberPublicForm.url\n );\n","import { ApiSection } from '../../api-models';\nimport { Section } from '../../models';\n\nexport const sectionFactory = (apiSection: ApiSection) =>\n new Section(apiSection.id, apiSection.name)\n","import { ApiMemberTeam } from '../../api-models';\nimport { MemberTeam } from '../../models';\nimport { clubFactory } from './club-factory';\nimport { sectionFactory } from './section-factory';\n\nexport const memberTeamFactory = (apiMemberTeam: ApiMemberTeam) =>\n new MemberTeam(\n clubFactory(apiMemberTeam.club),\n apiMemberTeam.section ? sectionFactory(apiMemberTeam.section) : null,\n apiMemberTeam.id,\n apiMemberTeam.email,\n apiMemberTeam.has_extra_members,\n apiMemberTeam.name,\n apiMemberTeam.phone,\n apiMemberTeam.section_name\n );\n","import { ApiMember, ApiMemberTeamThrough } from '../../api-models';\nimport { MemberTeamThrough } from '../../models';\nimport { memberFactory } from './member-factory';\n\nexport const memberTeamThroughFactory = (apiMemberTeamThrough: ApiMemberTeamThrough) =>\n new MemberTeamThrough(\n apiMemberTeamThrough.id,\n apiMemberTeamThrough.created,\n apiMemberTeamThrough.date_hidden,\n apiMemberTeamThrough.image,\n apiMemberTeamThrough.leader,\n memberFactory(apiMemberTeamThrough.member as ApiMember),\n apiMemberTeamThrough.role_id,\n apiMemberTeamThrough.show_on_web,\n apiMemberTeamThrough.updated\n );\n","import { ApiNews } from '../../api-models';\nimport { News } from '../../models';\nimport { imageUrlsFactory } from './image-urls-factory';\n\nexport const newsFactory = (apiNews: ApiNews) =>\n new News(\n apiNews.id,\n apiNews.club_id,\n apiNews.created,\n apiNews.created_by_id,\n apiNews.section_id,\n apiNews.team_id,\n apiNews.active_to,\n apiNews.author,\n apiNews.ingress,\n apiNews.news_image,\n apiNews.news_image_text,\n apiNews.published_date,\n apiNews.read,\n apiNews.show_on_my_pages,\n apiNews.show_on_webpage,\n apiNews.text,\n apiNews.title,\n apiNews.updated,\n apiNews.urls ? imageUrlsFactory(apiNews.urls) : null\n );\n","import {\n ApiPaymentAttempt,\n ApiPaymentAttemptCreditCardDataType,\n ApiPaymentAttemptSwishDataType,\n ApiPaymentAttemptZimplerDataType\n} from '../../api-models';\nimport { PaymentAttempt } from '../../models';\n\nexport const paymentAttemptFactory = (apiPaymentAttempt: ApiPaymentAttempt) => {\n let paymentAttemptData = null;\n\n if (apiPaymentAttempt.type === 'mondido') {\n const data = apiPaymentAttempt.payment_data as ApiPaymentAttemptCreditCardDataType;\n\n paymentAttemptData = {\n hash: data.hash,\n paymentAttemptId: data.payment_attempt_id\n };\n } else if (apiPaymentAttempt.type === 'swish') {\n paymentAttemptData = {\n paymentRequestToken: (apiPaymentAttempt.payment_data as ApiPaymentAttemptSwishDataType)?.payment_request_token\n };\n } else {\n paymentAttemptData = {\n userFormUrl: (apiPaymentAttempt.payment_data as ApiPaymentAttemptZimplerDataType).user_form_url\n };\n }\n\n return new PaymentAttempt(apiPaymentAttempt.id, apiPaymentAttempt.amount, apiPaymentAttempt.error,\n apiPaymentAttempt.invoice_id, apiPaymentAttempt.paid_date, paymentAttemptData, apiPaymentAttempt.status,\n apiPaymentAttempt.type);\n}\n","import { ApiSearchClub } from '../../api-models';\nimport { SearchClub } from '../../models';\n\nexport const searchClubFactory = (apiSearchClub: ApiSearchClub) =>\n new SearchClub(\n apiSearchClub.id,\n apiSearchClub.leader_member_search,\n apiSearchClub.member_search,\n apiSearchClub.name\n );\n","import { ApiSearchMemberCard } from '../../api-models';\nimport { SearchMemberCard } from '../../models';\n\nexport const searchMemberCardFactory = (apiSearchMemberCard: ApiSearchMemberCard) =>\n new SearchMemberCard(apiSearchMemberCard.id, apiSearchMemberCard.name, apiSearchMemberCard.notification_count,\n apiSearchMemberCard.pdf_url);\n","import { ApiSearchMemberInvoice } from '../../api-models';\nimport { SearchMemberInvoice } from '../../models';\n\nexport const searchMemberInvoiceFactory = (apiSearchMemberInvoice: ApiSearchMemberInvoice) =>\n new SearchMemberInvoice(\n apiSearchMemberInvoice.id,\n apiSearchMemberInvoice.amount,\n apiSearchMemberInvoice.amount_paid,\n apiSearchMemberInvoice.balance,\n apiSearchMemberInvoice.club_bill_id,\n apiSearchMemberInvoice.date_paid,\n apiSearchMemberInvoice.due_date,\n apiSearchMemberInvoice.is_paid,\n apiSearchMemberInvoice.member_id\n );\n","import { ApiMemberTeamThrough, ApiSearchMember } from '../../api-models';\nimport { MemberTeamThrough } from '../../models';\nimport { searchMemberFactory } from './search-member-factory';\n\nexport const searchMemberTeamThroughFactory = (apiMemberTeamThrough: ApiMemberTeamThrough) =>\n new MemberTeamThrough(\n apiMemberTeamThrough.id,\n apiMemberTeamThrough.created,\n apiMemberTeamThrough.date_hidden,\n apiMemberTeamThrough.image,\n apiMemberTeamThrough.leader,\n searchMemberFactory(apiMemberTeamThrough.member as ApiSearchMember),\n apiMemberTeamThrough.role_id,\n apiMemberTeamThrough.show_on_web,\n apiMemberTeamThrough.updated\n );\n","import { ApiToken } from '../../api-models';\nimport { Token } from '../../models';\n\nexport const tokenFactory = (apiToken: ApiToken) =>\n new Token(apiToken.access_token, apiToken.refresh_token);\n","import { ApiUser } from '../../api-models';\nimport { User } from '../../models';\n\n\nexport const userFactory = (apiUser: ApiUser) =>\n new User(\n apiUser.device_token,\n apiUser.email,\n apiUser.first_name,\n apiUser.is_staff,\n apiUser.language,\n apiUser.last_name,\n apiUser.new_email\n );\n","import { ApiUserNotification } from '../../api-models';\nimport { UserNotification } from '../../models';\n\nexport const userNotificationFactory = (apiUserNotification: ApiUserNotification) =>\n new UserNotification(\n apiUserNotification.id,\n apiUserNotification.club_id,\n apiUserNotification.member_id,\n apiUserNotification.object_id,\n apiUserNotification.created,\n apiUserNotification.message,\n apiUserNotification.title,\n apiUserNotification.type\n );\n","import { Injectable } from '@angular/core';\nimport { catchError, map } from 'rxjs/operators';\nimport { Role } from '../models';\nimport { ApiService } from './api.service';\nimport { of } from 'rxjs';\nimport { authFactory } from './factories';\n\nconst AUTHS_PATH = 'every-admin/auths/';\nconst REMOVE_AUTH_PATH = 'accounts/remove-auth/:authId/:authType/:id/';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AuthService {\n constructor(private apiService: ApiService) {}\n\n getAuth(id: string) {\n return this.apiService\n .getCollection(authFactory, Role.None, AUTHS_PATH, {}, { params: { club_id: id } })\n .pipe(\n map((collection) => {\n if (collection.count === 0) {\n return null;\n }\n return collection.toArray()[0];\n })\n );\n }\n\n getAuths(role: string | null = null) {\n return this.apiService.getCollection(authFactory, Role.None, AUTHS_PATH, {}, role ? {params: {role}} : {});\n }\n\n removeClubAuth(authId: string, clubId: string) {\n return this.removeAuth(authId, clubId, 'club');\n }\n\n removeMemberAuth(authId: string, memberId: string) {\n return this.removeAuth(authId, memberId, 'member');\n }\n\n removeSectionAuth(authId: string, sectionId: string) {\n return this.removeAuth(authId, sectionId, 'section');\n }\n\n removeTeamAuth(authId: string, teamId: string) {\n return this.removeAuth(authId, teamId, 'team');\n }\n\n private removeAuth(authId: string, authTypeId: string, authType: string) {\n return this.apiService.postResource(() => {}, Role.None, REMOVE_AUTH_PATH, {\n authId,\n authType,\n id: authTypeId\n }, {})\n .pipe(\n map(() => true),\n catchError(() => of(false))\n );\n }\n}\n","import {ApiActivityLocationGroup} from \"../../api-models/api-activity-location-group\";\nimport {ActivityLocationGroup} from \"../../models/activity-location-group\";\nimport {ApiActivityLocation} from \"../../api-models\";\nimport {activityLocationFactory} from \"./activity-location-factory\";\n\nexport const activityLocationGroupFactory = (apiActivityLocationGroup: ApiActivityLocationGroup) => {\n return new ActivityLocationGroup(\n apiActivityLocationGroup.id,\n apiActivityLocationGroup.club_id,\n apiActivityLocationGroup.section_id,\n apiActivityLocationGroup.active,\n apiActivityLocationGroup.name,\n apiActivityLocationGroup.locations && apiActivityLocationGroup.locations.length ? apiActivityLocationGroup.locations.map(\n (apiActivityLocation: ApiActivityLocation) => activityLocationFactory(apiActivityLocation)\n ) : [],\n );\n};\n","import {Injectable} from '@angular/core';\nimport {ApiService} from './api.service';\nimport {Activity, ActivityLocation, ActivityType, Collection, MemberActivityInvite, Role,} from '../models';\nimport {tap} from 'rxjs/operators';\nimport {of} from 'rxjs';\nimport {\n activityFactory,\n activityInviteFactory,\n activityLocationFactory,\n activitySettingsFactory,\n activityTypeFactory,\n eventFactory,\n memberActivityInviteFactory,\n searchMemberFactory,\n} from './factories';\nimport {sub} from 'date-fns';\nimport {activityLocationGroupFactory} from \"./factories/activity-location-group-factory\";\nimport {ActivityLocationGroup} from \"../models/activity-location-group\";\n\nconst MEMBER_ACTIVITY_INVITE_PATH = ':memberId/activities/:activityInviteId/';\nconst MEMBER_ACTIVITY_INVITES_PATH = ':memberId/activities/';\nconst MEMBER_CALENDAR_PATH = ':memberId/activities/calendar/';\nconst PUBLIC_ACTIVITY_INVITE_PATH = 'activities/:id/:token/';\nconst TEAM_ACTIVITIES_PATH = ':teamId/activities/';\nconst TEAM_ACTIVITY_INVITES_PATH = ':teamId/activities/:activityId/invites/';\nconst TEAM_ACTIVITY_INVITE_PATH = ':teamId/activities/:activityId/invites/:activityInviteId/';\nconst TEAM_ACTIVITY_INVITE_RESEND_PATH = ':teamId/activities/:activityId/invites/:activityInviteId/resend-invite/';\nconst TEAM_ACTIVITY_NEW_PATH = ':teamId/activities/new/';\nconst TEAM_ACTIVITY_PARTICIPANTS_PATH = ':teamId/activities/:activityId/participants/';\nconst TEAM_ACTIVITY_PATH = ':teamId/activities/:id/';\nconst TEAM_ACTIVITY_SETTINGS_PATH = ':teamId/activities/settings/';\nconst CLUB_ACTIVITY_SETTINGS_PATH = ':clubId/activities/settings/';\nconst TEAM_ACTIVITY_TYPES_PATH = ':teamId/activities/types/';\nconst TEAM_CALENDAR_PATH = ':teamId/activities/calendar/';\n\nconst TEAM_ACTIVITY_LOCATIONS_PATH = ':teamId/activities/locations/';\nconst CLUB_ACTIVITY_LOCATIONS_PATH = ':clubId/activities/locations/';\nconst CLUB_ACTIVITY_LOCATION_GROUPS_PATH = ':clubId/activities/locations/groups/';\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ActivityService {\n activityLocationCollection: Collection<ActivityLocation> | undefined;\n activityLocationGroupCollection: Collection<ActivityLocationGroup> | undefined;\n activityTypeCollection: Collection<ActivityType> | undefined;\n\n activityLocationResponseDate: Date | undefined;\n activityLocationGroupResponseDate: Date | undefined;\n activityTypeResponseDate: Date | undefined;\n\n constructor(private apiService: ApiService) {\n }\n\n addTeamActivityInvites(teamId: string, activityId: string, memberIds: Array<string>) {\n return this.apiService\n .postResource(\n () => true,\n Role.TeamAdmin,\n TEAM_ACTIVITY_INVITES_PATH,\n {\n teamId,\n activityId\n },\n {\n members: memberIds\n }\n )\n }\n\n createTeamActivity(teamId: string, data: Partial<Activity>) {\n return this.apiService\n .postResource(\n activityFactory,\n Role.TeamAdmin,\n TEAM_ACTIVITIES_PATH,\n {\n teamId\n },\n this.removeUnusedActivityFields(data)\n )\n }\n\n deleteTeamActivity(teamId: string, id: string) {\n return this.apiService\n .deleteResource(\n Role.TeamAdmin,\n TEAM_ACTIVITY_PATH,\n {\n teamId,\n id\n }\n );\n }\n\n deleteTeamActivityInvite(teamId: string, activityId: string, activityInviteId: string) {\n return this.apiService\n .deleteResource(\n Role.TeamAdmin,\n TEAM_ACTIVITY_INVITE_PATH,\n {\n teamId,\n activityId,\n activityInviteId\n }\n );\n }\n\n getMemberActivityInvite(memberId: string, activityInviteId: string) {\n return this.apiService\n .getResource(\n activityInviteFactory,\n Role.MemberAdmin,\n MEMBER_ACTIVITY_INVITE_PATH,\n {\n memberId,\n activityInviteId\n }\n );\n }\n\n getMemberActivityInvites(memberId: string) {\n const params: { [key: string]: string } = {limit: 'null'};\n\n return this.apiService\n .getCollection(\n activityInviteFactory,\n Role.MemberAdmin,\n MEMBER_ACTIVITY_INVITES_PATH,\n {memberId},\n {\n params\n }\n );\n }\n\n getMemberCalendarEvents(memberId: string, startDate: string | null = null, endDate: string | null = null) {\n const params: { [key: string]: string } = {limit: 'null'};\n\n if (startDate) {\n params['search_start_day'] = startDate;\n }\n\n if (endDate) {\n params['search_end_day'] = endDate;\n }\n\n return this.apiService\n .getCollection(\n eventFactory,\n Role.MemberAdmin,\n MEMBER_CALENDAR_PATH,\n {memberId},\n {\n params\n }\n )\n }\n\n getPublicActivityInvite(id: string, token: string) {\n return this.apiService\n .getResource(\n activityInviteFactory,\n Role.Public,\n PUBLIC_ACTIVITY_INVITE_PATH,\n {\n id,\n token\n }\n );\n }\n\n getTeamActivity(teamId: string, id: string) {\n return this.apiService\n .getResource(\n activityFactory,\n Role.TeamAdmin,\n TEAM_ACTIVITY_PATH,\n {teamId, id}\n )\n }\n\n getTeamActivityLocations(teamId: string) {\n if (this.activityLocationResponseDate && this.activityLocationResponseDate > sub(new Date(), {hours: 1})) {\n return of(this.activityLocationCollection);\n }\n\n return this.apiService\n .getCollection(\n activityLocationFactory,\n Role.TeamAdmin,\n TEAM_ACTIVITY_LOCATIONS_PATH,\n {teamId},\n {params: {limit: 'null'}}\n ).pipe(\n tap((activityLocationCollection: Collection<ActivityLocation>) => {\n this.activityLocationResponseDate = new Date();\n this.activityLocationCollection = activityLocationCollection;\n })\n );\n }\n\n getClubActivityLocations(clubId: string) {\n if (this.activityLocationResponseDate && this.activityLocationResponseDate > sub(new Date(), {hours: 1})) {\n return of(this.activityLocationCollection);\n }\n\n return this.apiService\n .getCollection(\n activityLocationFactory,\n Role.ClubAdmin,\n CLUB_ACTIVITY_LOCATIONS_PATH,\n {clubId},\n {params: {limit: 'null'}}\n ).pipe(\n tap((activityLocationCollection: Collection<ActivityLocation>) => {\n this.activityLocationResponseDate = new Date();\n this.activityLocationCollection = activityLocationCollection;\n })\n );\n }\n\n getClubActivityLocationGroups(clubId: string) {\n if (this.activityLocationGroupResponseDate && this.activityLocationGroupResponseDate > sub(new Date(), {hours: 1})) {\n return of(this.activityLocationGroupCollection);\n }\n\n return this.apiService\n .getCollection(\n activityLocationGroupFactory,\n Role.ClubAdmin,\n CLUB_ACTIVITY_LOCATION_GROUPS_PATH,\n {clubId},\n {params: {limit: 'null'}}\n ).pipe(\n tap((activityLocationGroupCollection: Collection<ActivityLocationGroup>) => {\n this.activityLocationGroupResponseDate = new Date();\n this.activityLocationGroupCollection = activityLocationGroupCollection;\n })\n );\n }\n\n getTeamActivityNew(teamId: string) {\n return this.apiService\n .getResource(\n activityFactory,\n Role.TeamAdmin,\n TEAM_ACTIVITY_NEW_PATH,\n {teamId}\n );\n }\n\n getTeamActivityParticipants(teamId: string, activityId: string) {\n return this.apiService\n .getCollection(\n searchMemberFactory,\n Role.TeamAdmin,\n TEAM_ACTIVITY_PARTICIPANTS_PATH,\n {\n teamId,\n activityId\n },\n {params: {limit: 'null'}}\n );\n }\n\n getTeamActivitySettings(teamId: string) {\n return this.apiService\n .getResource(\n activitySettingsFactory,\n Role.TeamAdmin,\n TEAM_ACTIVITY_SETTINGS_PATH,\n {\n teamId\n }\n );\n }\n\n getClubActivitySettings(clubId: string) {\n return this.apiService\n .getResource(\n activitySettingsFactory,\n Role.ClubAdmin,\n CLUB_ACTIVITY_SETTINGS_PATH,\n {\n clubId,\n }\n );\n }\n\n getTeamActivityTypes(teamId: string) {\n if (this.activityTypeResponseDate && this.activityTypeResponseDate > sub(new Date(), {hours: 1})) {\n return of(this.activityTypeCollection);\n }\n\n return this.apiService\n .getCollection(\n activityTypeFactory,\n Role.TeamAdmin,\n TEAM_ACTIVITY_TYPES_PATH,\n {teamId},\n {params: {limit: 'null'}}\n ).pipe(\n tap((activityTypeCollection: Collection<ActivityType>) => {\n this.activityTypeResponseDate = new Date();\n this.activityTypeCollection = activityTypeCollection;\n })\n )\n }\n\n getTeamCalendarEvents(teamId: string, startDate: string | null = null, endDate: string | null = null) {\n const params: { [key: string]: string } = {limit: 'null'};\n\n if (startDate) {\n params['search_start_day'] = startDate;\n }\n\n if (endDate) {\n params['search_end_day'] = endDate;\n }\n\n return this.apiService\n .getCollection(\n eventFactory,\n Role.TeamAdmin,\n TEAM_CALENDAR_PATH,\n {teamId},\n {\n params\n }\n );\n }\n\n resendInvite(teamId: string, activityId: string, activityInviteId: string) {\n return this.apiService\n .postResource(\n activityInviteFactory,\n Role.TeamAdmin,\n TEAM_ACTIVITY_INVITE_RESEND_PATH,\n {\n teamId,\n activityId,\n activityInviteId\n },\n {}\n );\n }\n\n updateMemberActivity(memberId: string, activityInviteId: string, activityInvite: unknown) {\n return this.apiService\n .updateResource(\n activityInviteFactory,\n Role.MemberAdmin,\n MEMBER_ACTIVITY_INVITE_PATH,\n {\n memberId,\n activityInviteId\n },\n activityInvite\n );\n }\n\n updatePublicActivityInvite(id: string, token: string, activityInvite: unknown) {\n return this.apiService\n .updateResource(\n activityInviteFactory,\n Role.Public,\n PUBLIC_ACTIVITY_INVITE_PATH,\n {\n id,\n token\n },\n activityInvite\n )\n }\n\n updateTeamActivity(teamId: string, activity: Activity) {\n return this.apiService\n .updateResource(\n activityFactory,\n Role.TeamAdmin,\n TEAM_ACTIVITY_PATH,\n {\n teamId,\n id: activity.id\n },\n this.removeUnusedActivityFields(activity)\n );\n }\n\n updateTeamActivityInvite(teamId: string, activityId: string, activityInviteId: string, activityInvite: MemberActivityInvite) {\n return this.apiService\n .updateResource(\n memberActivityInviteFactory,\n Role.TeamAdmin,\n TEAM_ACTIVITY_INVITE_PATH,\n {\n teamId,\n activityId,\n activityInviteId\n },\n activityInvite\n )\n }\n\n updateTeamActivityParticipants(teamId: string, activityId: string, members: Array<string>) {\n return this.apiService\n .postResource(\n () => {\n },\n Role.TeamAdmin,\n TEAM_ACTIVITY_PARTICIPANTS_PATH,\n {\n teamId,\n activityId\n },\n {\n members\n }\n );\n }\n\n private removeUnusedActivityFields(activity: Partial<Activity>): Partial<Activity> {\n if (typeof activity.id !== 'undefined') {\n delete activity.id;\n }\n\n if (typeof activity.file !== 'undefined' && !activity.file) {\n delete activity.file;\n }\n\n if (typeof activity.invite_last_response_date !== 'undefined' && !activity.invite_last_response_date) {\n delete activity.invite_last_response_date;\n }\n\n return activity;\n }\n}\n","import {ApiBookingCalendar} from \"../../api-models/api-booking-calendar\";\nimport {BookingCalendar} from \"../../models/booking-calendar\";\n\nexport const bookingCalendarFactory = (apiBookingCalendar: ApiBookingCalendar) =>\n new BookingCalendar(\n apiBookingCalendar.id,\n apiBookingCalendar.club_id,\n apiBookingCalendar.section_id,\n apiBookingCalendar.team_id,\n apiBookingCalendar.club_name,\n apiBookingCalendar.color,\n apiBookingCalendar.name,\n apiBookingCalendar.section_name,\n apiBookingCalendar.team_name\n );\n","import {ApiBookingCalendarSlotSession} from \"../../api-models\";\nimport {BookingCalendarSlotSession} from \"../../models\";\n\nexport const bookingCalendarSlotSessionFactory = (apiBookingSlotSession: ApiBookingCalendarSlotSession) =>\n new BookingCalendarSlotSession(\n apiBookingSlotSession.id,\n apiBookingSlotSession.section_id,\n apiBookingSlotSession.slot_id,\n apiBookingSlotSession.team_id,\n apiBookingSlotSession.end_time,\n apiBookingSlotSession.section_name,\n apiBookingSlotSession.start_time,\n apiBookingSlotSession.team_name,\n apiBookingSlotSession.is_overbooked,\n apiBookingSlotSession.type,\n apiBookingSlotSession.location_zones_taken,\n );\n","import {BookingCalendarSlot} from \"../../models\";\nimport {ApiBookingCalendarSlot, ApiBookingCalendarSlotSession} from \"../../api-models\";\nimport {bookingCalendarSlotSessionFactory} from \"./booking-calendar-slot-session-factory\";\nimport {format} from \"date-fns\";\n\nexport const bookingCalendarSlotFactory = (apiBookingSlot: ApiBookingCalendarSlot) =>\n new BookingCalendarSlot(\n apiBookingSlot.id,\n apiBookingSlot.calendar_id,\n apiBookingSlot.location_id,\n apiBookingSlot.color,\n apiBookingSlot.day,\n apiBookingSlot.end_time,\n apiBookingSlot.group_id,\n apiBookingSlot.location_name,\n apiBookingSlot.number_of_available_sessions,\n apiBookingSlot.sessions && apiBookingSlot.sessions.length ? apiBookingSlot.sessions.map(\n (apiBookingSlotSession: ApiBookingCalendarSlotSession) => bookingCalendarSlotSessionFactory(apiBookingSlotSession)\n ) : [],\n apiBookingSlot.open_sessions && apiBookingSlot.open_sessions.length ? apiBookingSlot.open_sessions.map(\n (apiBookingSlotSession: ApiBookingCalendarSlotSession) => bookingCalendarSlotSessionFactory(apiBookingSlotSession)\n ) : [],\n apiBookingSlot.start_time,\n apiBookingSlot.type,\n 'none',\n false,\n false,\n apiBookingSlot.available_location_zones,\n 6,\n format(new Date(), 'yyyy-MM-dd'),\n 'repeat_until',\n apiBookingSlot.reserved_time,\n apiBookingSlot.reserved_time_type,\n apiBookingSlot.reserved_time_position,\n );\n","import {Injectable} from '@angular/core';\nimport {ApiService} from './api.service';\nimport {Role,} from '../models';\nimport {BookingCalendar, BookingCalendarSlot, BookingCalendarSlotSession} from \"../models\";\nimport {bookingCalendarFactory} from \"./factories/booking-calendar-factory\";\nimport {bookingCalendarSlotFactory} from \"./factories/booking-calendar-slot-factory\";\nimport {bookingCalendarSlotSessionFactory} from \"./factories/booking-calendar-slot-session-factory\";\n\nconst CLUB_BOOKING_CALENDARS_PATH = ':clubId/activities/calendars/';\nconst CLUB_BOOKING_CALENDAR_PATH = ':clubId/activities/calendars/:id/';\nconst CLUB_BOOKING_CALENDAR_SLOTS_PATH = ':clubId/activities/slots/';\nconst CLUB_BOOKING_CALENDAR_SLOT_PATH = ':clubId/activities/slots/:id/';\nconst CLUB_BOOKING_CALENDAR_REPEATABLE_SLOT_PATH = ':clubId/activities/slots/:id/all/';\nconst CLUB_BOOKING_CALENDAR_SLOT_SESSIONS_PATH = ':clubId/activities/sessions/';\nconst CLUB_BOOKING_CALENDAR_SLOT_SESSION_PATH = ':clubId/activities/sessions/:id/';\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class BookingCalendarService {\n constructor(private apiService: ApiService) {\n }\n\n // region Booking calendar\n\n createClubBookingCalendar(clubId: string, calendar: Partial<BookingCalendar>) {\n delete calendar.id;\n return this.apiService\n .postResource(\n bookingCalendarFactory,\n Role.ClubAdmin,\n CLUB_BOOKING_CALENDARS_PATH,\n {\n clubId,\n },\n calendar\n )\n }\n\n getClubBookingCalendars(clubId: string, name: string | null = null) {\n const params: { [key: string]: string } = {limit: 'null'};\n\n if (name) {\n params['name'] = name;\n }\n\n return this.apiService\n .getCollection(\n bookingCalendarFactory,\n Role.ClubAdmin,\n CLUB_BOOKING_CALENDARS_PATH,\n {clubId},\n {\n params\n }\n )\n }\n\n getClubBookingCalendar(clubId: string, id: string) {\n return this.apiService\n .getResource(\n bookingCalendarFactory,\n Role.ClubAdmin,\n CLUB_BOOKING_CALENDAR_PATH,\n {clubId, id}\n )\n }\n\n updateClubBookingCalendar(clubId: string, calendar: BookingCalendar) {\n return this.apiService\n .updateResource(\n bookingCalendarFactory,\n Role.ClubAdmin,\n CLUB_BOOKING_CALENDAR_PATH,\n {\n clubId,\n id: calendar.id\n },\n calendar\n );\n }\n\n deleteClubBookingCalendar(clubId: string, id: string) {\n return this.apiService\n .deleteResource(\n Role.ClubAdmin,\n CLUB_BOOKING_CALENDAR_PATH,\n {\n clubId,\n id\n }\n );\n }\n\n // endregion\n\n // region Booking calendar slot\n\n createClubBookingCalendarSlot(clubId: string, slot: Partial<BookingCalendarSlot>) {\n delete slot.id;\n return this.apiService\n .postResource(\n bookingCalendarSlotFactory,\n Role.ClubAdmin,\n CLUB_BOOKING_CALENDAR_SLOTS_PATH,\n {\n clubId,\n },\n slot\n )\n }\n\n getClubBookingCalendarSlots(\n clubId: string,\n startDate: string | null = null,\n endDate: string | null = null,\n calendarIds: string[] | null = null,\n locationIds: string[] | null = null,\n ) {\n const params: { [key: string]: string } = {limit: 'null'};\n\n if (startDate) {\n params['day__gte'] = startDate;\n }\n\n if (endDate) {\n params['day__lte'] = endDate;\n }\n\n if (calendarIds && calendarIds.length) {\n params['calendar_id'] = calendarIds.join(',')\n }\n\n if (locationIds && locationIds.length) {\n params['location_id'] = locationIds.join(',')\n }\n\n return this.apiService\n .getCollection(\n bookingCalendarSlotFactory,\n Role.ClubAdmin,\n CLUB_BOOKING_CALENDAR_SLOTS_PATH,\n {clubId},\n {\n params\n }\n )\n }\n\n getClubBookingCalendarSlot(clubId: string, id: string) {\n return this.apiService\n .getResource(\n bookingCalendarSlotFactory,\n Role.ClubAdmin,\n CLUB_BOOKING_CALENDAR_SLOT_PATH,\n {clubId, id}\n )\n }\n\n updateClubBookingCalendarSlot(clubId: string, slot: BookingCalendarSlot) {\n return this.apiService\n .updateResource(\n bookingCalendarSlotFactory,\n Role.ClubAdmin,\n CLUB_BOOKING_CALENDAR_SLOT_PATH,\n {\n clubId,\n id: slot.id\n },\n slot\n );\n }\n\n deleteClubBookingCalendarSlot(clubId: string, id: string) {\n return this.apiService\n .deleteResource(\n Role.ClubAdmin,\n CLUB_BOOKING_CALENDAR_SLOT_PATH,\n {\n clubId,\n id\n }\n );\n }\n\n deleteClubBookingCalendarSlotRepeatable(clubId: string, id: string) {\n return this.apiService\n .deleteResource(\n Role.ClubAdmin,\n CLUB_BOOKING_CALENDAR_REPEATABLE_SLOT_PATH,\n {\n clubId,\n id\n }\n );\n }\n\n // endregion\n\n // region Booking calendar slot session\n\n createClubBookingCalendarSlotSession(clubId: string, session: Partial<BookingCalendarSlotSession>) {\n delete session.id;\n return this.apiService\n .postResource(\n bookingCalendarSlotSessionFactory,\n Role.ClubAdmin,\n CLUB_BOOKING_CALENDAR_SLOT_SESSIONS_PATH,\n {\n clubId,\n },\n session\n )\n }\n\n getClubBookingCalendarSlotSessions(clubId: string, startDate: string | null = null, endDate: string | null = null) {\n const params: { [key: string]: string } = {limit: 'null'};\n\n if (startDate) {\n params['day__gte'] = startDate;\n }\n\n if (endDate) {\n params['day__lte'] = endDate;\n }\n\n return this.apiService\n .getCollection(\n bookingCalendarSlotSessionFactory,\n Role.ClubAdmin,\n CLUB_BOOKING_CALENDAR_SLOT_SESSIONS_PATH,\n {clubId},\n {\n params\n }\n )\n }\n\n getClubBookingCalendarSlotSession(clubId: string, id: string) {\n return this.apiService\n .getResource(\n bookingCalendarSlotSessionFactory,\n Role.ClubAdmin,\n CLUB_BOOKING_CALENDAR_SLOT_SESSION_PATH,\n {clubId, id}\n )\n }\n\n updateClubBookingCalendarSlotSession(clubId: string, session: BookingCalendarSlotSession) {\n return this.apiService\n .updateResource(\n bookingCalendarSlotSessionFactory,\n Role.ClubAdmin,\n CLUB_BOOKING_CALENDAR_SLOT_SESSION_PATH,\n {\n clubId,\n id: session.id\n },\n session\n );\n }\n\n deleteClubBookingCalendarSlotSession(clubId: string, id: string) {\n return this.apiService\n .deleteResource(\n Role.ClubAdmin,\n CLUB_BOOKING_CALENDAR_SLOT_SESSION_PATH,\n {\n clubId,\n id\n }\n );\n }\n\n // endregion\n}\n","import { Injectable } from '@angular/core';\nimport { ApiService } from './api.service';\nimport { Role } from '../models';\nimport { searchClubFactory } from './factories';\n\nconst MEMBER_CLUB_INFO = ':memberId/club-info/';\nconst TEAM_CLUB_INFO = ':teamId/club-info/';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ClubService {\n\n constructor(private apiService: ApiService) { }\n\n getMemberClubInfo(memberId: string) {\n return this.apiService\n .getResource(\n searchClubFactory,\n Role.MemberAdmin,\n MEMBER_CLUB_INFO,\n {memberId}\n )\n }\n\n getTeamClubInfo(teamId: string) {\n return this.apiService\n .getResource(\n searchClubFactory,\n Role.TeamAdmin,\n TEAM_CLUB_INFO,\n {teamId}\n )\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { map, tap } from 'rxjs/operators';\nimport { Observable, of } from 'rxjs';\n\nimport { ApiService } from './api.service';\nimport { Collection, Role } from '../models';\nimport { OptionInterface } from '../interfaces';\n\nconst ACTIVITY_INVITE_SETTINGS_PATH = 'every-admin/constants/activity-invite-settings/';\nconst ACTIVITY_MAX_ATTENDANT_TYPES_PATH = 'every-admin/constants/activity-max-attendant-types/';\nconst ACTIVITY_MEET_UP_TIMES_PATH = 'every-admin/constants/activity-meet-up-times/';\nconst ACTIVITY_REMINDER_DAYS_PATH = 'every-admin/constants/activity-invite-days/';\nconst ACTIVITY_REMINDER_RECEIVERS_PATH = 'every-admin/constants/activity-remind-receivers/';\nconst ACTIVITY_REMINDER_TIMES_PATH = 'every-admin/constants/activity-remind-hours/';\nconst ACTIVITY_REPEAT_OPTIONS_PATH = 'every-admin/constants/activity-repeat-options/';\nconst ACTIVITY_REPEAT_TYPE_OPTIONS_PATH = 'every-admin/constants/activity-repeat-type-options/';\nconst COUNTRIES_PATH = 'every-admin/constants/countries/';\nconst LANGUAGES_PATH = 'every-admin/constants/languages/';\nconst MEMBER_CONTACT_TYPES_PATH = 'every-admin/constants/member-contact-types/';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ConstantService {\n private activityInviteSettings: Array<OptionInterface> = [];\n private activityMaxAttendantTypes: Array<OptionInterface> = [];\n private activityMeetUpTimes: Array<OptionInterface> = [];\n private activityReminderDays: Array<OptionInterface> = [];\n private activityReminderReceivers: Array<OptionInterface> = [];\n private activityReminderTimes: Array<OptionInterface> = [];\n private activityRepeatOptions: Array<OptionInterface> = [];\n private activityRepeatTypeOptions: Array<OptionInterface> = [];\n private countries: Array<OptionInterface> = [];\n private languages: Array<OptionInterface> = [];\n private memberContactTypes: Array<OptionInterface> = [];\n\n constructor(private apiService: ApiService) {}\n\n getActivityInviteSettings(): Observable<Array<OptionInterface>> {\n if (this.activityInviteSettings.length) {\n return of(this.activityInviteSettings);\n }\n\n return this.getConstants(ACTIVITY_INVITE_SETTINGS_PATH)\n .pipe(tap((activityInviteSettings: Array<OptionInterface>) => this.activityInviteSettings = activityInviteSettings));\n }\n\n getActivityMaxAttendantsTypes(): Observable<Array<OptionInterface>> {\n if (this.activityMaxAttendantTypes.length) {\n return of(this.activityMaxAttendantTypes);\n }\n\n return this.getConstants(ACTIVITY_MAX_ATTENDANT_TYPES_PATH)\n .pipe(tap((activityMaxAttendantTypes: Array<OptionInterface>) => this.activityMaxAttendantTypes = activityMaxAttendantTypes));\n }\n\n getActivityMeetUpTimes(): Observable<Array<OptionInterface>> {\n if (this.activityMeetUpTimes.length) {\n return of(this.activityMeetUpTimes);\n }\n\n return this.getConstants(ACTIVITY_MEET_UP_TIMES_PATH)\n .pipe(tap((activityMeetUpTimes: Array<OptionInterface>) => this.activityMeetUpTimes = activityMeetUpTimes));\n }\n\n getActivityReminderDays(): Observable<Array<OptionInterface>> {\n if (this.activityReminderDays.length) {\n return of(this.activityReminderDays);\n }\n\n return this.getConstants(ACTIVITY_REMINDER_DAYS_PATH)\n .pipe(tap((activityReminderDays: Array<OptionInterface>) => this.activityReminderDays = activityReminderDays));\n }\n\n getActivityReminderReceivers(): Observable<Array<OptionInterface>> {\n if (this.activityReminderReceivers.length) {\n return of(this.activityReminderReceivers);\n }\n\n return this.getConstants(ACTIVITY_REMINDER_RECEIVERS_PATH)\n .pipe(tap((activityReminderReceivers: Array<OptionInterface>) => this.activityReminderReceivers = activityReminderReceivers));\n }\n\n getActivityReminderTimes(): Observable<Array<OptionInterface>> {\n if (this.activityReminderTimes.length) {\n return of(this.activityReminderTimes);\n }\n\n return this.getConstants(ACTIVITY_REMINDER_TIMES_PATH)\n .pipe(tap((activityReminderTimes: Array<OptionInterface>) => this.activityReminderTimes = activityReminderTimes));\n }\n\n getActivityRepeatOptions(): Observable<Array<OptionInterface>> {\n if (this.activityRepeatOptions.length) {\n return of(this.activityRepeatOptions);\n }\n\n return this.getConstants(ACTIVITY_REPEAT_OPTIONS_PATH)\n .pipe(tap((activityRepeatOptions: Array<OptionInterface>) => this.activityRepeatOptions = activityRepeatOptions));\n }\n\n getActivityRepeatTypeOptions(): Observable<Array<OptionInterface>> {\n if (this.activityRepeatTypeOptions.length) {\n return of(this.activityRepeatTypeOptions);\n }\n\n return this.getConstants(ACTIVITY_REPEAT_TYPE_OPTIONS_PATH)\n .pipe(tap((activityRepeatTypeOptions: Array<OptionInterface>) => this.activityRepeatTypeOptions = activityRepeatTypeOptions));\n }\n\n getCountries(): Observable<Array<OptionInterface>> {\n if (this.countries.length) {\n return of(this.countries);\n }\n\n return this.getConstants(COUNTRIES_PATH)\n .pipe(tap((countries: Array<OptionInterface>) => this.countries = countries));\n }\n\n getLanguages(): Observable<Array<OptionInterface>> {\n if (this.languages.length) {\n return of(this.languages);\n }\n\n return this.getConstants(LANGUAGES_PATH)\n .pipe(\n map((languages: Array<OptionInterface>) => {\n // FIXME: For now - remove the french language.\n const index = languages.findIndex((language: OptionInterface) => language.value === 'fr');\n if (index !== -1) {\n languages.splice(index, 1);\n }\n\n return languages;\n }),\n tap((languages: Array<OptionInterface>) => this.languages = languages)\n );\n }\n\n getMemberContactTypes(): Observable<Array<OptionInterface>> {\n if (this.memberContactTypes.length) {\n return of(this.memberContactTypes);\n }\n\n return this.getConstants(MEMBER_CONTACT_TYPES_PATH)\n .pipe(tap((memberContactTypes: Array<OptionInterface>) => this.memberContactTypes = memberContactTypes));\n }\n\n private getConstants(path: string): Observable<Array<OptionInterface>> {\n return this.apiService\n .getCollection<OptionInterface, OptionInterface>(\n (option: OptionInterface) => option,\n Role.None,\n path\n )\n .pipe(\n map((response: Collection<OptionInterface>) => response.toArray())\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { Email, Role } from '../models';\nimport { ApiService } from './api.service';\nimport { EmailRecipientInterface } from '../interfaces';\n\nconst TEAM_LEADER_CREATE_EMAIL_PATH = ':teamId/distribution/email/';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class EmailService {\n private backHref = '';\n private recipients: Array<EmailRecipientInterface> = [];\n\n constructor(private apiService: ApiService) { }\n\n clear(): void {\n this.backHref = '';\n this.recipients = [];\n }\n\n getBackHref(): string {\n return this.backHref;\n }\n\n getRecipients(): Array<EmailRecipientInterface> {\n return this.recipients;\n }\n\n removeRecipient(id: string): boolean {\n const index = this.recipients.findIndex((item: EmailRecipientInterface) => item.id === id);\n\n if (index !== -1) {\n this.recipients.splice(index, 1);\n return true;\n }\n\n return false;\n }\n\n sendTeamLeaderEmail(teamId: string, email: Email) {\n return this.apiService\n .postResource(\n (email_count: {queued_emails: number}) => email_count.queued_emails,\n Role.TeamAdmin,\n TEAM_LEADER_CREATE_EMAIL_PATH,\n {teamId},\n {\n body: email.body,\n subject: email.subject,\n recipients: email.recipients.map((value: EmailRecipientInterface) => value.id)\n }\n );\n }\n\n setBackHref(href: string): void {\n this.backHref = href;\n }\n\n setRecipients(emailRecipients: Array<EmailRecipientInterface>): void {\n this.recipients = [...emailRecipients].sort((a, b) => (a.name < b.name ? -1 : 1));\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ApiService } from './api.service';\nimport { Role } from '../models';\nimport { externalLinkFactory } from './factories';\n\nconst MEMBER_EXTERNAL_LINK_PATH = ':memberId/others/externallinks/';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ExternalLinkService {\n\n constructor(private apiService: ApiService) { }\n\n getMemberExternalLinks(memberId: string) {\n return this.apiService\n .getCollection(\n externalLinkFactory,\n Role.MemberAdmin,\n MEMBER_EXTERNAL_LINK_PATH,\n {memberId}\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ApiService } from './api.service';\nimport { ApiDirectory } from '../api-models';\nimport { Directory, FileObject, Role } from '../models';\nimport { directoryFactory, fileFactory } from './factories';\n\nconst MEMBER_DIRECTORIES_PATH = ':memberId/files/';\nconst TEAM_DIRECTORIES_PATH = ':teamId/directories/';\nconst TEAM_DIRECTORY_PATH = ':teamId/directories/:directoryId/';\nconst TEAM_FILES_PATH = ':teamId/directories/:directoryId/files/';\nconst TEAM_FILE_PATH = ':teamId/directories/:directoryId/files/:fileId/';\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class FileService {\n\n constructor(private apiService: ApiService) { }\n\n createTeamDirectory(teamId: string, directory: Partial<Directory>) {\n return this.apiService\n .postResource(\n directoryFactory,\n Role.TeamAdmin,\n TEAM_DIRECTORIES_PATH,\n {\n teamId\n },\n directory\n );\n }\n\n createTeamFile(teamId: string, directoryId: string, file: Partial<FileObject>) {\n const formData = new FormData();\n const fileObj = file.file as File;\n formData.append('name', file.name as string);\n formData.append('file', fileObj, fileObj.name);\n\n return this.apiService\n .postFormData(\n fileFactory,\n Role.TeamAdmin,\n TEAM_FILES_PATH,\n {\n teamId,\n directoryId\n },\n formData\n );\n }\n\n deleteTeamDirectory(teamId: string, directoryId: string) {\n return this.apiService\n .deleteResource(\n Role.TeamAdmin,\n TEAM_DIRECTORY_PATH,\n {\n teamId,\n directoryId\n }\n );\n }\n\n deleteTeamFile(teamId: string, directoryId: string, fileId: string) {\n return this.apiService\n .deleteResource(\n Role.TeamAdmin,\n TEAM_FILE_PATH,\n {\n teamId,\n directoryId,\n fileId\n }\n );\n }\n\n getMemberDirectories(memberId: string) {\n return this.apiService\n .getCollection<ApiDirectory, Directory>(\n directoryFactory,\n Role.MemberAdmin,\n MEMBER_DIRECTORIES_PATH,\n {memberId},\n {params: {limit: 'null'}}\n )\n }\n\n getTeamDirectories(teamId: string) {\n return this.apiService\n .getCollection<ApiDirectory, Directory>(\n directoryFactory,\n Role.TeamAdmin,\n TEAM_DIRECTORIES_PATH,\n {teamId},\n {params: {limit: 'null'}}\n )\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { ApiClubImage, ApiMemberInvoice, ApiSearchMemberInvoice } from '../../api-models';\nimport { ApiService } from '../api.service';\nimport {\n ClubImage,\n MemberInvoice,\n Role,\n SearchMemberInvoice,\n} from '../../models';\nimport { clubImageFactory, memberInvoiceFactory, searchMemberInvoiceFactory } from '../factories';\n\nconst MEMBER_INVOICE_PATH = ':memberId/invoices/:invoiceId/';\nconst MEMBER_INVOICES_PATH = ':memberId/invoices/';\nconst PUBLIC_INVOICE_PATH = 'invoices/:invoiceId/:token/';\nconst PUBLIC_INVOICE_LOGO_PATH = 'invoices/:invoiceId/:token/logo/';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class InvoiceService {\n constructor(private apiService: ApiService) {}\n\n getMemberInvoice(memberId: string, invoiceId: string) {\n return this.getInvoice(Role.MemberAdmin, MEMBER_INVOICE_PATH, {memberId, invoiceId});\n }\n\n getMemberInvoices(memberId: string, filterParams: { [key: string]: string } = {}) {\n return this.getInvoices(Role.MemberAdmin, MEMBER_INVOICES_PATH, {memberId}, filterParams);\n }\n\n getPublicInvoice(invoiceId: string, token: string) {\n return this.getInvoice(Role.Public, PUBLIC_INVOICE_PATH, {invoiceId, token});\n }\n\n getPublicInvoiceLogo(invoiceId: string, token: string) {\n return this.apiService.getResource<ApiClubImage, ClubImage>(\n clubImageFactory,\n Role.Public,\n PUBLIC_INVOICE_LOGO_PATH,\n {invoiceId, token}\n );\n }\n\n private getInvoice(role: Role, path: string, pathParams: { [key: string]: string }) {\n return this.apiService.getResource<ApiMemberInvoice, MemberInvoice>(\n memberInvoiceFactory,\n role,\n path,\n pathParams\n )\n }\n\n private getInvoices(role: Role, path: string, pathParams: { [key: string]: string }, filterParams: { [key: string]: string } = {}) {\n return this.apiService.getCollection<ApiSearchMemberInvoice, SearchMemberInvoice>(\n searchMemberInvoiceFactory,\n role,\n path,\n pathParams,\n { params: filterParams }\n )\n }\n}\n","import { ApiPaymentAttempt } from './api-payment-attempt';\n\nexport class ApiPaymentAttemptCreate implements Pick<ApiPaymentAttempt, 'type' | 'invoice_id'> {\n constructor(public invoice_id: ApiPaymentAttempt['invoice_id'], public type: ApiPaymentAttempt['type'],\n public telephone_number: string) {}\n}\n","import { Injectable } from '@angular/core';\nimport { ApiService } from '../api.service';\nimport { PaymentAttempt, Role, SwishQrCode } from '../../models';\nimport { ApiPaymentAttempt, ApiPaymentAttemptCreate, ApiSwishQrCode } from '../../api-models';\nimport { PaymentAttemptType } from '../../types';\nimport { paymentAttemptFactory } from '../factories';\n\nconst MEMBER_PAYMENT_PATH = ':memberId/invoices/:invoiceId/payment-attempts/:id/';\nconst MEMBER_PAYMENTS_PATH = ':memberId/invoices/:invoiceId/payment-attempts/';\nconst PUBLIC_PAYMENT_PATH = 'invoices/:invoiceId/:token/payment-attempts/:id/';\nconst PUBLIC_PAYMENTS_PATH = 'invoices/:invoiceId/:token/payment-attempts/';\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class PaymentAttemptService {\n constructor(private apiService: ApiService) {}\n\n createMemberPaymentAttempt(memberId: string, invoiceId: string, type: PaymentAttemptType, phoneNumber: string = '') {\n return this.createPaymentAttempt(Role.MemberAdmin, MEMBER_PAYMENTS_PATH, {memberId, invoiceId},\n new ApiPaymentAttemptCreate(invoiceId, type, phoneNumber));\n }\n\n createPublicPaymentAttempt(invoiceId: string, token: string, type: PaymentAttemptType, phoneNumber: string = '') {\n return this.createPaymentAttempt(Role.Public, PUBLIC_PAYMENTS_PATH, {invoiceId, token},\n new ApiPaymentAttemptCreate(invoiceId, type, phoneNumber));\n }\n\n getMemberPaymentAttempt(memberId: string, invoiceId: string, id: number) {\n return this.getPaymentAttempt(Role.MemberAdmin, MEMBER_PAYMENT_PATH, {memberId, invoiceId, id: id.toString()});\n }\n\n getMemberSwishQRCode(memberId: string, invoiceId: string, id: number) {\n return this.getSwishQRCode(Role.MemberAdmin, `${MEMBER_PAYMENT_PATH}swish-qr/`, {memberId, invoiceId, id: id.toString()});\n }\n\n getPublicPaymentAttempt(invoiceId: string, token: string, id: number) {\n return this.getPaymentAttempt(Role.Public, PUBLIC_PAYMENT_PATH, {invoiceId, token, id: id.toString()});\n }\n\n getPublicSwishQRCode(invoiceId: string, token: string, id: number) {\n return this.getSwishQRCode(Role.Public, `${PUBLIC_PAYMENT_PATH}swish-qr/`, {invoiceId, token, id: id.toString()});\n }\n\n private createPaymentAttempt(role: Role, path: string, pathParams: { [key: string]: string }, data: ApiPaymentAttemptCreate) {\n return this.apiService.postResource<ApiPaymentAttempt, PaymentAttempt>(paymentAttemptFactory, role, path, pathParams, data);\n }\n\n private getPaymentAttempt(role: Role, path: string, pathParams: { [key: string]: string }) {\n return this.apiService.getResource<ApiPaymentAttempt, PaymentAttempt>(paymentAttemptFactory, role, path, pathParams);\n }\n\n private getSwishQRCode(role: Role, path: string, pathParams: { [key: string]: string }) {\n return this.apiService.getResource<ApiSwishQrCode, SwishQrCode>(\n (apiSwishQrCode: ApiSwishQrCode) => new SwishQrCode(apiSwishQrCode.qr_code),\n role,\n path,\n pathParams\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ApiService } from './api.service';\nimport { ApiMember, ApiSearchMember } from '../api-models';\nimport {\n Member,\n Role,\n SearchMember\n} from '../models';\nimport { memberFactory, searchMemberFactory } from './factories';\n\nconst MEMBER_OTHER_MEMBER_PATH = ':memberId/others/clubmembers/:id/';\nconst MEMBER_OTHER_MEMBER_SEARCH_PATH = ':memberId/others/clubmembers/';\nconst MEMBER_PROFILE_CONTACT_PATH = ':memberId/member-detail/contacts/:contactId/';\nconst MEMBER_PROFILE_PATH = ':memberId/member-detail/';\nconst TEAM_MEMBER_CONTACT_PATH = ':teamId/team-members/:memberId/contacts/:contactId/';\nconst TEAM_OTHER_MEMBER_PATH = ':teamId/team-members/others/:id/';\nconst TEAM_OTHER_MEMBER_SEARCH_PATH = ':teamId/team-members/others/';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MemberService {\n constructor(private apiService: ApiService) { }\n\n getMemberProfile(memberId: string) {\n return this.apiService\n .getResource<ApiMember, Member>(\n memberFactory,\n Role.MemberAdmin,\n MEMBER_PROFILE_PATH,\n {memberId}\n );\n }\n\n getMemberOtherMember(memberId: string, id: string) {\n return this.apiService\n .getResource<ApiMember, Member>(\n memberFactory,\n Role.MemberAdmin,\n MEMBER_OTHER_MEMBER_PATH,\n {memberId, id}\n );\n }\n\n getTeamOtherMember(teamId: string, id: string) {\n return this.apiService\n .getResource<ApiMember, Member>(\n memberFactory,\n Role.MemberAdmin,\n TEAM_OTHER_MEMBER_PATH,\n {teamId, id}\n );\n }\n\n removeMemberProfileContact(memberId: string, contactId: string) {\n return this.apiService\n .deleteResource(\n Role.MemberAdmin,\n MEMBER_PROFILE_CONTACT_PATH,\n {memberId, contactId}\n );\n }\n\n removeTeamMemberContact(teamId: string, memberId: string, contactId: string) {\n return this.apiService\n .deleteResource(\n Role.TeamAdmin,\n TEAM_MEMBER_CONTACT_PATH,\n {teamId, memberId, contactId}\n );\n }\n\n searchMemberOtherMembers(memberId: string, searchTerm: string) {\n return this.apiService\n .getCollection<ApiSearchMember, SearchMember>(\n searchMemberFactory,\n Role.MemberAdmin,\n MEMBER_OTHER_MEMBER_SEARCH_PATH,\n {memberId},\n {params: {q: searchTerm}}\n )\n }\n\n searchTeamOtherMembers(teamId: string, searchTerm: string) {\n return this.apiService\n .getCollection<ApiSearchMember, SearchMember>(\n searchMemberFactory,\n Role.TeamAdmin,\n TEAM_OTHER_MEMBER_SEARCH_PATH,\n {teamId},\n {params: {q: searchTerm}}\n )\n }\n\n updateMemberProfile(memberId: string, memberProfile: unknown) {\n return this.apiService\n .updateResource<ApiMember, Member>(\n memberFactory,\n Role.MemberAdmin,\n MEMBER_PROFILE_PATH,\n {memberId},\n memberProfile\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ApiService } from './api.service';\nimport {\n Role\n} from '../models';\nimport {\n ApiCardMemberTicket\n} from '../api-models';\nimport { cardDealFactory, cardTicketFactory, memberCardFactory, searchMemberCardFactory } from './factories';\n\nconst MEMBER_MEMBER_CARD_PATH = ':memberId/member-cards/:id/';\nconst MEMBER_MEMBER_CARD_DEALS_PATH = ':memberId/member-cards/:id/deals/';\nconst MEMBER_MEMBER_CARD_ACTIVATE_TICKET_PATH = ':memberId/member-cards/:cardId/tickets/:id/activate/';\nconst MEMBER_MEMBER_CARD_TICKETS_PATH = ':memberId/member-cards/:id/tickets/';\nconst MEMBER_MEMBER_CARDS_PATH = ':memberId/member-cards/';\n\nconst PUBLIC_MEMBER_CARD_PATH = 'member-cards/:id/:token/';\nconst PUBLIC_MEMBER_CARD_DEALS_PATH = 'member-cards/:id/:token/deals/';\nconst PUBLIC_MEMBER_CARD_ACTIVATE_TICKET_PATH = 'member-cards/:cardId/:token/tickets/:id/activate/';\nconst PUBLIC_MEMBER_CARD_TICKETS_PATH = 'member-cards/:id/:token/tickets/';\n\n\nconst pinCodeFactory = (apiCardMemberTicket: ApiCardMemberTicket) => {\n return !!apiCardMemberTicket;\n}\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MemberCardService {\n constructor(private apiService: ApiService) { }\n\n activateMemberCardTicket(memberId: string, cardId: string, id: string, pin_code: string) {\n return this.apiService\n .postResource<ApiCardMemberTicket, boolean>(\n pinCodeFactory,\n Role.MemberAdmin,\n MEMBER_MEMBER_CARD_ACTIVATE_TICKET_PATH,\n {memberId, cardId, id},\n {pin_code}\n );\n }\n\n activatePublicCardTicket(cardId: string, token: string, id: string, pin_code: string) {\n return this.apiService\n .postResource<ApiCardMemberTicket, boolean>(\n pinCodeFactory,\n Role.Public,\n PUBLIC_MEMBER_CARD_ACTIVATE_TICKET_PATH,\n {\n cardId,\n token,\n id\n },\n {\n pin_code\n }\n )\n }\n\n getMemberCard(memberId: string, id: string) {\n return this.apiService\n .getResource(\n memberCardFactory,\n Role.MemberAdmin,\n MEMBER_MEMBER_CARD_PATH,\n {memberId, id}\n );\n }\n\n getMemberCardDeals(memberId: string, id: string, filterParams: { [key: string]: string } = {}) {\n return this.apiService\n .getCollection(\n cardDealFactory,\n Role.MemberAdmin,\n MEMBER_MEMBER_CARD_DEALS_PATH,\n {memberId, id},\n {params: filterParams}\n )\n }\n\n getMemberCardTickets(memberId: string, id: string, filterParams: { [key: string]: string } = {}) {\n return this.apiService\n .getCollection(\n cardTicketFactory,\n Role.MemberAdmin,\n MEMBER_MEMBER_CARD_TICKETS_PATH,\n {memberId, id},\n {params: filterParams}\n )\n }\n\n getMemberCards(memberId: string, filterParams: { [key: string]: string } = {}) {\n return this.apiService\n .getCollection(\n searchMemberCardFactory,\n Role.MemberAdmin,\n MEMBER_MEMBER_CARDS_PATH,\n {memberId},\n { params: filterParams }\n );\n }\n\n getPublicMemberCard(id: string, token: string) {\n return this.apiService\n .getResource(\n memberCardFactory,\n Role.Public,\n PUBLIC_MEMBER_CARD_PATH,\n {\n id,\n token\n }\n )\n }\n\n getPublicMemberCardDeals(id: string, token: string, filterParams: { [key: string]: string } = {}) {\n return this.apiService\n .getCollection(\n cardDealFactory,\n Role.Public,\n PUBLIC_MEMBER_CARD_DEALS_PATH,\n {\n id,\n token\n },\n {params: filterParams}\n )\n }\n\n getPublicMemberCardTickets(id: string, token: string, filterParams: { [key: string]: string } = {}) {\n return this.apiService\n .getCollection(\n cardTicketFactory,\n Role.Public,\n PUBLIC_MEMBER_CARD_TICKETS_PATH,\n {\n id,\n token\n },\n {params: filterParams}\n )\n }\n}\n","import {Injectable} from \"@angular/core\";\nimport {ApiService} from \"./api.service\";\nimport {ApiMemberPublicForm} from \"../api-models\";\nimport {MemberPublicForm, Role} from \"../models\";\nimport { memberPublicFormFactory } from './factories';\n\nconst MEMBER_MEMBER_PUBLIC_FORM_PATH = ':memberId/myclub-forms/:id/';\nconst MEMBER_MEMBER_PUBLIC_FORMS_PATH = ':memberId/myclub-forms/';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MemberPublicFormService {\n constructor(private apiService: ApiService) { }\n\n getMemberMemberPublicForms(memberId: string) {\n return this.apiService\n .getCollection<ApiMemberPublicForm, MemberPublicForm>(\n memberPublicFormFactory,\n Role.MemberAdmin,\n MEMBER_MEMBER_PUBLIC_FORMS_PATH,\n {memberId}\n );\n }\n\n getMemberMemberPublicForm(memberId: string, id: string) {\n return this.apiService\n .getResource<ApiMemberPublicForm, MemberPublicForm>(\n memberPublicFormFactory,\n Role.MemberAdmin,\n MEMBER_MEMBER_PUBLIC_FORM_PATH,\n {\n memberId,\n id\n }\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ApiService } from './api.service';\nimport { News, Role } from '../models';\nimport { newsFactory } from './factories';\n\nconst MEMBER_NEWS_ITEMS_PATH = ':memberId/news/';\nconst MEMBER_NEWS_ITEM_PATH = ':memberId/news/:id/';\nconst TEAM_NEWS_ITEMS_PATH = ':teamId/news/';\nconst TEAM_NEWS_ITEM_PATH = ':teamId/news/:id/';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class NewsService {\n\n constructor(private apiService: ApiService) { }\n\n createTeamNews(teamId: string, news: Partial<News>) {\n delete news.id;\n\n return this.apiService\n .postFormData(\n newsFactory,\n Role.TeamAdmin,\n TEAM_NEWS_ITEMS_PATH,\n {\n teamId\n },\n this.createFormData(news)\n );\n }\n\n deleteTeamNews(teamId: string, id: string) {\n return this.apiService\n .deleteResource(\n Role.TeamAdmin,\n TEAM_NEWS_ITEM_PATH,\n {\n teamId,\n id\n }\n )\n }\n\n getMemberNews(memberId: string, id: string) {\n return this.apiService\n .getResource(\n newsFactory,\n Role.MemberAdmin,\n MEMBER_NEWS_ITEM_PATH,\n {\n memberId,\n id\n }\n );\n }\n\n getTeamNews(teamId: string, id: string) {\n return this.apiService\n .getResource(\n newsFactory,\n Role.TeamAdmin,\n TEAM_NEWS_ITEM_PATH,\n {\n teamId,\n id\n }\n );\n }\n\n listMemberNews(memberId: string, offset: number) {\n return this.apiService\n .getCollection(\n newsFactory,\n Role.MemberAdmin,\n MEMBER_NEWS_ITEMS_PATH,\n {\n memberId\n },\n {\n params: {\n offset: offset.toString(10)\n }\n }\n );\n }\n\n listTeamNews(teamId: string, offset: number) {\n return this.apiService\n .getCollection(\n newsFactory,\n Role.TeamAdmin,\n TEAM_NEWS_ITEMS_PATH,\n {\n teamId\n },\n {\n params: {\n offset: offset.toString(10)\n }\n }\n );\n }\n\n updateTeamNews(teamId: string, id: string, news: Partial<News>) {\n return this.apiService\n .postFormData(\n newsFactory,\n Role.TeamAdmin,\n TEAM_NEWS_ITEM_PATH,\n {\n teamId,\n id\n },\n this.createFormData(news)\n )\n }\n\n private createFormData(news: Partial<News>): FormData {\n const formData = new FormData();\n\n if (!news.active_to) {\n news.active_to = null;\n }\n\n if (!news.news_image) {\n news.news_image = new File([], '');\n }\n\n if (!news.published_date) {\n news.published_date = null;\n }\n\n formData.append('title', news?.title as string);\n formData.append('ingress', news?.ingress as string);\n formData.append('text', news?.text as string);\n\n if (typeof news?.news_image !== 'undefined' && news?.news_image instanceof File) {\n formData.append('news_image', news?.news_image as File);\n }\n formData.append('news_image_text', news?.news_image_text as string);\n formData.append('published_date', news?.published_date ? news?.published_date as string : '');\n formData.append('active_to', news?.active_to ? news?.active_to as string : '');\n formData.append('show_on_my_pages', `${news?.show_on_my_pages || false}`);\n formData.append('show_on_webpage', `${news?.show_on_webpage || false}`);\n\n return formData;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ApiClubSection } from '../api-models';\nimport { ClubSection, Role } from '../models';\nimport { ApiService } from './api.service';\nimport { clubSectionFactory } from './factories';\n\nconst CLUB_SECTIONS_PATH = 'clubs/:clubId/sections/';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SectionService {\n constructor(private apiService: ApiService) {}\n\n getClubSections(clubId: string) {\n return this.apiService.getCollection<ApiClubSection, ClubSection>(\n clubSectionFactory,\n Role.ClubAdmin,\n CLUB_SECTIONS_PATH,\n { clubId }\n );\n }\n}\n","import { ApiSearchTeam } from '../../api-models';\nimport { SearchTeam } from '../../models';\nimport { clubFactory } from './club-factory';\nimport { sectionFactory } from './section-factory';\n\nexport const searchTeamFactory = (apiSearchTeam: ApiSearchTeam) =>\n new SearchTeam(\n apiSearchTeam.club ? clubFactory(apiSearchTeam.club) : undefined,\n apiSearchTeam.section ? sectionFactory(apiSearchTeam.section) : undefined,\n apiSearchTeam.id,\n apiSearchTeam.name,\n apiSearchTeam.section_name\n );\n","import { Injectable } from '@angular/core';\nimport { ApiMemberTeam, ApiSearchTeam } from '../api-models';\nimport { MemberTeam, MemberTeamThrough, Role, SearchTeam } from '../models';\nimport { ApiService } from './api.service';\nimport {\n activityExtraMemberFactory,\n memberTeamFactory,\n memberTeamThroughFactory,\n searchMemberTeamThroughFactory\n} from './factories';\nimport { searchTeamFactory } from './factories/search-team-factory';\n\nconst CLUB_TEAMS_PATH = ':clubId/teams/';\nconst MEMBER_TEAM_MEMBER_PATH = ':memberId/teams/:teamId/team-members/:id/';\nconst MEMBER_TEAM_MEMBERS_PATH = ':memberId/teams/:teamId/team-members/';\nconst MEMBER_TEAM_EXTRA_MEMBER_PATH = ':memberId/teams/:teamId/extra-members/:id/';\nconst MEMBER_TEAM_EXTRA_MEMBERS_PATH = ':memberId/teams/:teamId/extra-members/';\nconst MEMBER_TEAM_PATH = ':memberId/teams/:teamId/';\nconst MEMBER_TEAMS_PATH = ':memberId/teams/';\nconst SECTION_TEAMS_PATH = ':sectionId/teams/';\nconst TEAM_LEADER_TEAM_MEMBER_PATH = ':teamId/team-members/:id/';\nconst TEAM_LEADER_TEAM_MEMBERS_PATH = ':teamId/team-members/';\nconst TEAM_LEADER_TEAM_PATH = ':teamId/team-detail/';\nconst TEAM_LEADER_TEAM_EXTRA_MEMBER_PATH = ':teamId/team-members/extra-members/:id/';\nconst TEAM_LEADER_TEAM_EXTRA_MEMBERS_PATH = ':teamId/team-members/extra-members/';\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class TeamService {\n constructor(private apiService: ApiService) {}\n\n deleteTeamLeaderTeamMember(teamId: string, id: string) {\n return this.apiService.deleteResource(\n Role.TeamAdmin,\n TEAM_LEADER_TEAM_MEMBER_PATH,\n {teamId, id}\n );\n }\n\n getClubTeams(clubId: string) {\n return this.apiService.getCollection<ApiSearchTeam, SearchTeam>(\n searchTeamFactory,\n Role.ClubAdmin,\n CLUB_TEAMS_PATH,\n { clubId }\n );\n }\n\n getMemberTeam(memberId: string, teamId: string) {\n return this.apiService.getResource<ApiMemberTeam, MemberTeam>(\n memberTeamFactory,\n Role.MemberAdmin,\n MEMBER_TEAM_PATH,\n {memberId, teamId}\n )\n }\n\n getMemberTeamExtraMember(memberId: string, teamId: string, id: string) {\n return this.apiService.getResource(\n activityExtraMemberFactory,\n Role.MemberAdmin,\n MEMBER_TEAM_EXTRA_MEMBER_PATH,\n {memberId, teamId, id}\n );\n }\n\n getMemberTeamExtraMembers(memberId: string, teamId: string, q: string, offset: number) {\n return this.apiService.getCollection(\n activityExtraMemberFactory,\n Role.MemberAdmin,\n MEMBER_TEAM_EXTRA_MEMBERS_PATH,\n {memberId, teamId},\n {params: {member_q: q, offset: offset.toString(10)}}\n )\n }\n\n getMemberTeamMember(memberId: string, teamId: string, id: string) {\n return this.apiService.getResource(\n memberTeamThroughFactory,\n Role.MemberAdmin,\n MEMBER_TEAM_MEMBER_PATH,\n {memberId, teamId, id}\n );\n }\n\n getMemberTeamMembers(memberId: string, teamId: string, q: string, offset: number) {\n return this.apiService.getCollection(\n searchMemberTeamThroughFactory,\n Role.MemberAdmin,\n MEMBER_TEAM_MEMBERS_PATH,\n {memberId, teamId},\n {params: {member_q: q, offset: offset.toString(10)}}\n )\n }\n\n getMemberTeams(memberId: string) {\n return this.apiService.getCollection<ApiSearchTeam, SearchTeam>(\n searchTeamFactory,\n Role.MemberAdmin,\n MEMBER_TEAMS_PATH,\n { memberId }\n );\n }\n\n getSectionTeams(sectionId: string) {\n return this.apiService.getCollection<ApiSearchTeam, SearchTeam>(\n searchTeamFactory,\n Role.SectionAdmin,\n SECTION_TEAMS_PATH,\n { sectionId }\n );\n }\n\n getTeamLeaderTeam(teamId: string) {\n return this.apiService.getResource<ApiMemberTeam, MemberTeam>(\n memberTeamFactory,\n Role.TeamAdmin,\n TEAM_LEADER_TEAM_PATH,\n { teamId }\n )\n }\n\n getTeamLeaderTeamExtraMember(teamId: string, id: string) {\n return this.apiService.getResource(\n activityExtraMemberFactory,\n Role.TeamAdmin,\n TEAM_LEADER_TEAM_EXTRA_MEMBER_PATH,\n {\n teamId, id\n }\n );\n }\n\n getTeamLeaderTeamExtraMembers(teamId: string, q: string, offset: number) {\n return this.apiService.getCollection(\n activityExtraMemberFactory,\n Role.TeamAdmin,\n TEAM_LEADER_TEAM_EXTRA_MEMBERS_PATH,\n {\n teamId\n },\n {params: {member_q: q, offset: offset.toString(10)}}\n );\n }\n\n getTeamLeaderTeamMember(teamId: string, id: string) {\n return this.apiService.getResource(\n memberTeamThroughFactory,\n Role.TeamAdmin,\n TEAM_LEADER_TEAM_MEMBER_PATH,\n {teamId, id}\n );\n }\n\n getTeamLeaderTeamMembers(teamId: string, q: string, offset: number) {\n return this.apiService.getCollection(\n searchMemberTeamThroughFactory,\n Role.TeamAdmin,\n TEAM_LEADER_TEAM_MEMBERS_PATH,\n {teamId},\n {params: {member_q: q, offset: offset.toString(10)}}\n )\n }\n\n updateTeamLeaderTeamMember(teamId: string, id: string, teamMember: MemberTeamThrough) {\n return this.apiService.updateResource(\n memberTeamThroughFactory,\n Role.TeamAdmin,\n TEAM_LEADER_TEAM_MEMBER_PATH,\n {teamId, id},\n teamMember\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ApiService } from './api.service';\nimport { ApiToken } from '../api-models';\nimport { Role, Token } from '../models';\nimport { HttpErrorResponse } from '@angular/common/http';\nimport { catchError } from 'rxjs/operators';\nimport { of, throwError } from 'rxjs';\nimport { tokenFactory } from './factories';\n\nconst BASE_PATH = 'accounts/token/';\nconst CREDENTIAL_GRANT_TYPE = 'password';\nconst CODE_GRANT_TYPE = 'authorization_code';\nconst LOGOUT_PATH = 'accounts/logout/';\nconst REFRESH_GRANT_TYPE = 'refresh_token';\nconst SESSION_TOKEN_PATH = 'accounts/session-token/';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class TokenService {\n constructor(private apiService: ApiService) {}\n\n getTokenByCredentials(\n clientId: string,\n clientSecret: string,\n username: string,\n password: string\n ) {\n return this.getToken(clientId, clientSecret, CREDENTIAL_GRANT_TYPE, { username, password });\n }\n\n getTokenByCode(clientId: string, clientSecret: string, code: string) {\n return this.getToken(clientId, clientSecret, CODE_GRANT_TYPE, { code });\n }\n\n getTokenByRefreshToken(clientId: string, clientSecret: string, refreshToken: string) {\n return this.getToken(clientId, clientSecret, REFRESH_GRANT_TYPE, {\n refresh_token: refreshToken\n });\n }\n\n getTokenBySession() {\n return this.apiService.getResource(\n tokenFactory,\n Role.None,\n SESSION_TOKEN_PATH,\n {}\n ).pipe(\n catchError((err: HttpErrorResponse) => {\n if (err.status === 401) {\n return of(null);\n }\n\n return throwError(() => err);\n })\n );\n }\n\n logout() {\n return this.apiService.postResource(() => {}, Role.None, LOGOUT_PATH, {}, {});\n }\n\n private getToken(\n clientId: string,\n clientSecret: string,\n grantType: string,\n params: { [key: string]: string }\n ) {\n return this.apiService.postFormData<ApiToken, Token>(\n tokenFactory,\n Role.None,\n BASE_PATH,\n {},\n {\n client_id: clientId,\n client_secret: clientSecret,\n grant_type: grantType,\n ...params\n }\n );\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ApiService } from './api.service';\nimport { User, Role } from '../models';\nimport { NewAccountInterface } from '../interfaces';\nimport { catchError, map } from 'rxjs/operators';\nimport { of } from 'rxjs';\nimport { userFactory } from './factories';\n\nconst ACTIVATE_USER_PATH = 'accounts/activate/';\nconst BASE_PATH = 'accounts/user/';\nconst CREATE_USER_PATH = 'accounts/create-account/';\nconst RESET_PASSWORD_PATH = 'accounts/reset-password/';\nconst TERMINATE_USER_PATH = 'accounts/terminate/';\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class UserService {\n constructor(private apiService: ApiService) {}\n\n activateUser(uidb64: string, token: string) {\n return this.apiService.postResource(() => {}, Role.None, ACTIVATE_USER_PATH, {}, {\n uidb64,\n token\n }).pipe(\n map(() => true),\n catchError(() => of (false))\n );\n }\n\n createUser(newAccount: NewAccountInterface) {\n return this.apiService.postResource(() => {}, Role.None, CREATE_USER_PATH, {}, newAccount)\n .pipe(\n map(() => true),\n catchError(() => of(false))\n );\n }\n\n getCurrentUser() {\n return this.apiService.getResource(\n userFactory,\n Role.None,\n BASE_PATH\n );\n }\n\n removeCurrentUser() {\n return this.apiService.postResource(() => {}, Role.None, TERMINATE_USER_PATH, {}, {})\n .pipe(\n map(() => true),\n catchError(() => of(false))\n );\n }\n\n resetPassword(email: string) {\n return this.apiService.postResource(() => {}, Role.None, RESET_PASSWORD_PATH, {}, {\n email\n }).pipe(\n map(() => true),\n catchError(() => of(false))\n );\n }\n\n updateCurrentUser(user: User) {\n let data: any = {\n email: user.email,\n first_name: user.firstName,\n last_name: user.lastName,\n device_token: user.deviceToken\n }\n\n if (user.newPassword) {\n data['new_password'] = user.newPassword;\n data['verify_password'] = user.verifyPassword;\n data['password'] = user.password;\n }\n\n if (user.newEmail) {\n data['new_email'] = user.newEmail;\n }\n\n if (user.language) {\n data['language'] = user.language;\n }\n\n return this.apiService.updateResource(\n userFactory,\n Role.None,\n BASE_PATH,\n {},\n data\n )\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ApiService } from './api.service';\nimport { Role } from '../models';\nimport { userNotificationFactory } from './factories';\n\nexport const USER_NOTIFICATIONS_PATH = 'every-admin/user-notifications/clubs/:clubId/';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class UserNotificationService {\n constructor(private apiService: ApiService) { }\n\n getUserNotifications(clubId: string, offset: number = 0) {\n return this.apiService.getCollection(\n userNotificationFactory,\n Role.None,\n USER_NOTIFICATIONS_PATH,\n {clubId},\n {params: {offset: offset.toString(10)}}\n )\n }\n}\n","import { Inject, Injectable, InjectionToken } from '@angular/core';\nimport { tap } from 'rxjs/operators';\nimport { TokenService } from '../services';\nimport { Authentication, Token } from '../models';\nimport { ApiService } from '../services/api.service';\nimport { BehaviorSubject, Observable } from 'rxjs';\n\n\nexport const APP = new InjectionToken<App>('app');\n\nexport interface App {\n clientId: string;\n clientSecret: string;\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AuthenticationService {\n private currentTokenSubject = new BehaviorSubject<Token | null>(null);\n\n authentication: Authentication | null = null;\n currentToken$: Observable<Token | null> = this.currentTokenSubject.asObservable();\n\n get isAuthenticated() {\n return !!this.authentication;\n }\n\n constructor(private apiService: ApiService, @Inject(APP) private app: App, private tokenService: TokenService) {}\n\n authenticateByCredentials(username: string, password: string) {\n return this.tokenService\n .getTokenByCredentials(this.app.clientId, this.app.clientSecret, username, password)\n .pipe(tap((token) => this.setToken(token)));\n }\n\n authenticateByToken(token: string) {\n return this.tokenService\n .getTokenByCode(this.app.clientId, this.app.clientSecret, token)\n .pipe(tap((token) => this.setToken(token)));\n }\n\n clearAuthentication(): void {\n this.authentication = null;\n this.currentTokenSubject.next(null);\n }\n\n getSessionToken() {\n return this.tokenService\n .getTokenBySession()\n .pipe(\n tap((token: Token | null) => {\n if (token) {\n this.setToken(token);\n }\n }),\n );\n }\n\n logout() {\n return this.tokenService\n .logout()\n .pipe(tap(() => this.clearAuthentication()));\n }\n\n reauthenticate() {\n return this.tokenService\n .getTokenByRefreshToken(\n this.app.clientId,\n this.app.clientSecret,\n this.authentication?.refreshToken as string\n )\n .pipe(tap((token: Token) => this.setToken(token)));\n }\n\n setAuthentication(accessToken: string, refreshToken: string) {\n this.authentication = new Authentication(accessToken, refreshToken);\n }\n\n setToken(token: Token) {\n this.currentTokenSubject.next(token);\n this.setAuthentication(token.accessToken, token.refreshToken);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HttpRequest, HttpHandler, HttpInterceptor, HttpErrorResponse } from '@angular/common/http';\nimport { catchError, filter, switchMap, take } from 'rxjs/operators';\nimport { BehaviorSubject, throwError } from 'rxjs';\n\nimport { AuthenticationService } from './authentication.service';\nimport { Token } from '../models';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AuthenticationInterceptor implements HttpInterceptor {\n private isRefreshing = false;\n\n private refreshTokenSubject: BehaviorSubject<Token | null> = new BehaviorSubject<Token | null>(null);\n\n constructor(private authenticationService: AuthenticationService) {}\n\n intercept(request: HttpRequest<unknown>, next: HttpHandler) {\n const authentication = this.authenticationService.authentication;\n\n if (authentication) {\n request = this.addAuthorizationHeader(request, authentication.accessToken);\n }\n\n return next.handle(request).pipe(\n catchError((requestError: any) => {\n if (request.url.indexOf('accounts/token/') === -1 && requestError instanceof HttpErrorResponse && requestError.status === 401) {\n return this.handle401Error(request, next);\n }\n return throwError(() => requestError);\n })\n );\n }\n\n private addAuthorizationHeader(request: HttpRequest<unknown>, token: string): HttpRequest<unknown> {\n if (token) {\n return request.clone({\n setHeaders: { Authorization: `Bearer ${token}` }\n });\n }\n\n return request;\n }\n\n private handle401Error(request: HttpRequest<any>, next: HttpHandler) {\n if (this.isRefreshing) {\n return this.refreshTokenSubject\n .pipe(\n filter(token => token !== null),\n take(1),\n switchMap((token: Token | null) =>\n next.handle(this.addAuthorizationHeader(request, token?.accessToken as string))\n )\n );\n } else {\n this.isRefreshing = true;\n this.refreshTokenSubject.next(null);\n return this.authenticationService.reauthenticate()\n .pipe(\n catchError((err) => {\n this.isRefreshing = false;\n this.authenticationService.clearAuthentication();\n return throwError(() => err);\n }),\n switchMap((token: Token) => {\n this.refreshTokenSubject.next(token);\n this.isRefreshing = false;\n return next.handle(this.addAuthorizationHeader(request, token.accessToken));\n })\n );\n }\n }\n}\n","export const REDIRECT_PARAM_NAME = 'next';\n","import { HttpParams, HttpRequest } from '@angular/common/http';\nimport { Inject, Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanActivate, RouterStateSnapshot } from '@angular/router';\n\nimport { REDIRECT_PARAM_NAME } from '../authentication.config';\nimport { DOMAIN } from '../../services/api.service';\nimport { AuthenticationService } from '../authentication.service';\n\nconst GRANT_TOKEN_PATH = 'api/v3/accounts/user-token/';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AuthenticatedGuard implements CanActivate {\n constructor(\n @Inject(DOMAIN) private domain: string,\n private authenticationService: AuthenticationService\n ) {}\n\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\n if (!this.authenticationService.isAuthenticated) {\n const params = new HttpParams().set(REDIRECT_PARAM_NAME, state.url);\n const request = new HttpRequest('GET', this.domain + GRANT_TOKEN_PATH, {\n params\n });\n\n window.location.href = request.urlWithParams;\n return false;\n }\n return true;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanActivate, Router } from '@angular/router';\nimport { map } from 'rxjs/operators';\n\nimport { REDIRECT_PARAM_NAME } from '../authentication.config';\nimport { AuthenticationService } from '../authentication.service';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class HandleGrantTokenGuard implements CanActivate {\n constructor(private authenticationService: AuthenticationService, private router: Router) {}\n\n canActivate(route: ActivatedRouteSnapshot) {\n return this.authenticationService.authenticateByToken(route.params['code']).pipe(\n map(() => {\n const redirectUrl = route.queryParamMap.get(REDIRECT_PARAM_NAME);\n\n return this.authenticationService.isAuthenticated && redirectUrl\n ? this.router.parseUrl(redirectUrl)\n : false;\n })\n );\n }\n}\n","import { HTTP_INTERCEPTORS } from '@angular/common/http';\nimport { NgModule, ModuleWithProviders } from '@angular/core';\nimport { APP, App } from './authentication';\nimport { AuthenticationInterceptor } from './authentication';\nimport { DOMAIN } from './services/api.service';\n\nexport interface ModuleConfig {\n app: App;\n domain: string;\n}\n\n@NgModule({\n imports: [] // TODO: Check if this is required\n})\nexport class DataAccessModule {\n static forRoot(config: ModuleConfig): ModuleWithProviders<DataAccessModule> {\n return {\n ngModule: DataAccessModule,\n providers: [\n { provide: APP, useValue: config.app },\n { provide: DOMAIN, useValue: config.domain },\n { provide: HTTP_INTERCEPTORS, useExisting: AuthenticationInterceptor, multi: true }\n ]\n };\n }\n}\n","/*\n * Public API Surface of data-access\n */\n\nexport * from './lib/authentication';\nexport * from './lib/data-access.module';\nexport * from './lib/interfaces';\nexport * from './lib/models';\nexport * from './lib/services';\nexport * from './lib/types';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.ApiService","BASE_PATH","i2.TokenService","i1.AuthenticationService"],"mappings":"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"}
|