@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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"}
|