@myclub_se/data-access 1.5.2 → 1.6.0

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.
Files changed (45) hide show
  1. package/esm2020/lib/api-models/api-booking-calendar-slot-session.mjs +2 -0
  2. package/esm2020/lib/api-models/api-booking-calendar-slot.mjs +2 -0
  3. package/esm2020/lib/api-models/api-booking-calendar.mjs +2 -0
  4. package/esm2020/lib/api-models/api-member/api-member-attribute.mjs +1 -1
  5. package/esm2020/lib/api-models/api-member-activity-invite.mjs +1 -1
  6. package/esm2020/lib/api-models/index.mjs +4 -1
  7. package/esm2020/lib/models/booking-calendar-slot-session.mjs +26 -0
  8. package/esm2020/lib/models/booking-calendar-slot.mjs +29 -0
  9. package/esm2020/lib/models/booking-calendar.mjs +28 -0
  10. package/esm2020/lib/models/index.mjs +4 -1
  11. package/esm2020/lib/models/member/member-attribute.mjs +12 -3
  12. package/esm2020/lib/models/member-activity-invite.mjs +3 -2
  13. package/esm2020/lib/services/activity.service.mjs +27 -13
  14. package/esm2020/lib/services/booking-calendar.service.mjs +143 -0
  15. package/esm2020/lib/services/factories/booking-calendar-factory.mjs +3 -0
  16. package/esm2020/lib/services/factories/booking-calendar-slot-factory.mjs +4 -0
  17. package/esm2020/lib/services/factories/booking-calendar-slot-session-factory.mjs +3 -0
  18. package/esm2020/lib/services/factories/member-attribute-factory.mjs +2 -2
  19. package/esm2020/lib/services/factories/member-invite-factory.mjs +2 -2
  20. package/esm2020/lib/services/index.mjs +2 -1
  21. package/esm2020/lib/types/booking-calendar-slot-type.mjs +2 -0
  22. package/fesm2015/myclub_se-data-access.mjs +264 -17
  23. package/fesm2015/myclub_se-data-access.mjs.map +1 -1
  24. package/fesm2020/myclub_se-data-access.mjs +263 -17
  25. package/fesm2020/myclub_se-data-access.mjs.map +1 -1
  26. package/lib/api-models/api-booking-calendar-slot-session.d.ts +10 -0
  27. package/lib/api-models/api-booking-calendar-slot.d.ts +16 -0
  28. package/lib/api-models/api-booking-calendar.d.ts +11 -0
  29. package/lib/api-models/api-member/api-member-attribute.d.ts +1 -1
  30. package/lib/api-models/api-member-activity-invite.d.ts +1 -0
  31. package/lib/api-models/index.d.ts +3 -0
  32. package/lib/models/booking-calendar-slot-session.d.ts +22 -0
  33. package/lib/models/booking-calendar-slot.d.ts +27 -0
  34. package/lib/models/booking-calendar.d.ts +24 -0
  35. package/lib/models/index.d.ts +3 -0
  36. package/lib/models/member/member-attribute.d.ts +9 -1
  37. package/lib/models/member-activity-invite.d.ts +2 -1
  38. package/lib/services/activity.service.d.ts +2 -0
  39. package/lib/services/booking-calendar.service.d.ts +27 -0
  40. package/lib/services/factories/booking-calendar-factory.d.ts +3 -0
  41. package/lib/services/factories/booking-calendar-slot-factory.d.ts +3 -0
  42. package/lib/services/factories/booking-calendar-slot-session-factory.d.ts +3 -0
  43. package/lib/services/index.d.ts +1 -0
  44. package/lib/types/booking-calendar-slot-type.d.ts +1 -0
  45. package/package.json +1 -1
@@ -0,0 +1,10 @@
1
+ export interface ApiBookingCalendarSlotSession {
2
+ end_time: string;
3
+ id: string;
4
+ section_id: string;
5
+ readonly section_name: string;
6
+ slot_id: string;
7
+ start_time: string;
8
+ team_id: string;
9
+ readonly team_name: string;
10
+ }
@@ -0,0 +1,16 @@
1
+ import { ApiBookingCalendarSlotSession } from "./api-booking-calendar-slot-session";
2
+ import { BookingCalendarSlotType } from "../types/booking-calendar-slot-type";
3
+ export interface ApiBookingCalendarSlot {
4
+ calendar_id: string;
5
+ readonly color: string;
6
+ day: string;
7
+ end_time: string;
8
+ id: string;
9
+ location_id: string;
10
+ readonly location_name: string;
11
+ readonly name: string;
12
+ number_of_available_sessions: number;
13
+ sessions: Array<ApiBookingCalendarSlotSession> | null;
14
+ start_time: string;
15
+ type: BookingCalendarSlotType;
16
+ }
@@ -0,0 +1,11 @@
1
+ export interface ApiBookingCalendar {
2
+ id: string;
3
+ club_id: string;
4
+ readonly club_name: string;
5
+ color: string;
6
+ name: string;
7
+ section_id: string | null;
8
+ readonly section_name: string | null;
9
+ team_id: string | null;
10
+ readonly team_name: string | null;
11
+ }
@@ -2,7 +2,7 @@ import { OptionInterface } from '../../interfaces';
2
2
  import { AttributeType } from '../../types';
3
3
  export interface ApiMemberAttribute {
4
4
  readonly display_value: string;
5
- readonly field: string;
5
+ readonly field_id: string;
6
6
  readonly leader_editable: boolean;
7
7
  readonly member_id: string;
8
8
  readonly member_editable: boolean;
@@ -1,6 +1,7 @@
1
1
  export interface ApiMemberActivityInvite {
2
2
  id: string;
3
3
  comment: string;
4
+ current_num_attendants: number;
4
5
  last_invite: string | null;
5
6
  leader: boolean;
6
7
  member_email: string | null;
@@ -4,6 +4,9 @@ export * from './api-activity-invite';
4
4
  export * from './api-activity-location';
5
5
  export * from './api-activity-type';
6
6
  export * from './api-auth';
7
+ export * from './api-booking-calendar';
8
+ export * from './api-booking-calendar-slot';
9
+ export * from './api-booking-calendar-slot-session';
7
10
  export * from './api-calendar';
8
11
  export * from './api-calendar-event';
9
12
  export * from './api-card';
@@ -0,0 +1,22 @@
1
+ import { FormControl, FormGroup } from "@angular/forms";
2
+ export declare class BookingCalendarSlotSession {
3
+ id: string;
4
+ section_id: string | null;
5
+ slot_id: string;
6
+ team_id: string | null;
7
+ end_time: string;
8
+ section_name: string | null;
9
+ start_time: string;
10
+ team_name: string | null;
11
+ static asFormGroup(session?: BookingCalendarSlotSession): FormGroup<{
12
+ id: FormControl<string | null>;
13
+ section_id: FormControl<string | null>;
14
+ slot_id: FormControl<string | null>;
15
+ team_id: FormControl<string | null>;
16
+ end_time: FormControl<string | null>;
17
+ section_name: FormControl<string | null>;
18
+ start_time: FormControl<string | null>;
19
+ team_name: FormControl<string | null>;
20
+ }>;
21
+ constructor(id: string, section_id: string | null, slot_id: string, team_id: string | null, end_time: string, section_name: string | null, start_time: string, team_name: string | null);
22
+ }
@@ -0,0 +1,27 @@
1
+ import { BookingCalendarSlotSession } from "./booking-calendar-slot-session";
2
+ import { BookingCalendarSlotType } from "../types/booking-calendar-slot-type";
3
+ import { FormControl, FormGroup } from "@angular/forms";
4
+ export declare class BookingCalendarSlot {
5
+ id: string;
6
+ calendar_id: string;
7
+ location_id: string;
8
+ color: string;
9
+ day: string;
10
+ end_time: string;
11
+ location_name: string;
12
+ number_of_available_sessions: number;
13
+ sessions: Array<BookingCalendarSlotSession>;
14
+ start_time: string;
15
+ type: BookingCalendarSlotType;
16
+ static asFormGroup(slot?: BookingCalendarSlot): FormGroup<{
17
+ id: FormControl<string | null>;
18
+ calendar_id: FormControl<string | null>;
19
+ location_id: FormControl<string | null>;
20
+ day: FormControl<string | null>;
21
+ end_time: FormControl<string | null>;
22
+ number_of_available_sessions: FormControl<number | null>;
23
+ start_time: FormControl<string | null>;
24
+ type: FormControl<string | null>;
25
+ }>;
26
+ constructor(id: string, calendar_id: string, location_id: string, color: string, day: string, end_time: string, location_name: string, number_of_available_sessions: number, sessions: Array<BookingCalendarSlotSession>, start_time: string, type: BookingCalendarSlotType);
27
+ }
@@ -0,0 +1,24 @@
1
+ import { FormControl, FormGroup } from "@angular/forms";
2
+ export declare class BookingCalendar {
3
+ id: string;
4
+ club_id: string;
5
+ section_id: string | null;
6
+ team_id: string | null;
7
+ club_name: string;
8
+ color: string;
9
+ name: string;
10
+ section_name: string | null;
11
+ team_name: string | null;
12
+ static asFormGroup(calendar?: BookingCalendar): FormGroup<{
13
+ id: FormControl<string | null>;
14
+ club_id: FormControl<string | null>;
15
+ section_id: FormControl<string | null>;
16
+ team_id: FormControl<string | null>;
17
+ club_name: FormControl<string | null>;
18
+ color: FormControl<string | null>;
19
+ name: FormControl<string | null>;
20
+ section_name: FormControl<string | null>;
21
+ team_name: FormControl<string | null>;
22
+ }>;
23
+ constructor(id: string, club_id: string, section_id: string | null, team_id: string | null, club_name: string, color: string, name: string, section_name: string | null, team_name: string | null);
24
+ }
@@ -6,6 +6,9 @@ export * from './activity-settings';
6
6
  export * from './activity-type';
7
7
  export * from './auth';
8
8
  export * from './authentication';
9
+ export * from './booking-calendar';
10
+ export * from './booking-calendar-slot';
11
+ export * from './booking-calendar-slot-session';
9
12
  export * from './calendar';
10
13
  export * from './calendar-event';
11
14
  export * from './card';
@@ -1,6 +1,6 @@
1
1
  import { AttributeType } from '../../types';
2
2
  import { OptionInterface } from '../../interfaces';
3
- import { FormControl, FormGroup } from '@angular/forms';
3
+ import { FormArray, FormControl, FormGroup } from '@angular/forms';
4
4
  export declare class MemberAttribute {
5
5
  display_value: string;
6
6
  field_id: string;
@@ -16,6 +16,14 @@ export declare class MemberAttribute {
16
16
  static asFormGroup(attribute?: MemberAttribute | null): FormGroup<{
17
17
  field_id: FormControl<string | null>;
18
18
  member_id: FormControl<string | null>;
19
+ leader_editable: FormControl<boolean | null>;
20
+ member_editable: FormControl<boolean | null>;
21
+ name: FormControl<string | null>;
22
+ options: FormArray<FormGroup<{
23
+ text: FormControl<string | null>;
24
+ value: FormControl<string | null>;
25
+ }>>;
26
+ type: FormControl<string | null>;
19
27
  value: FormControl<string | boolean | null>;
20
28
  }>;
21
29
  constructor(display_value: string, field_id: string, leader_editable: boolean, member_id: string, member_editable: boolean, name: string, options: Array<OptionInterface>, order: number, section_id: string | null, type: AttributeType, value: string | boolean | null);
@@ -1,6 +1,7 @@
1
1
  export declare class MemberActivityInvite {
2
2
  id: string;
3
3
  comment: string;
4
+ current_num_attendants: number;
4
5
  last_invite: string | null;
5
6
  leader: boolean;
6
7
  member_email: string | null;
@@ -9,6 +10,6 @@ export declare class MemberActivityInvite {
9
10
  next_invite: string | null;
10
11
  response_date: string;
11
12
  status: string;
12
- constructor(id: string, comment: string, last_invite: string | null, leader: boolean, member_email: string | null, member_id: string, member_name: string, next_invite: string | null, response_date: string, status: string);
13
+ constructor(id: string, comment: string, current_num_attendants: number, last_invite: string | null, leader: boolean, member_email: string | null, member_id: string, member_name: string, next_invite: string | null, response_date: string, status: string);
13
14
  getColorByStatus(): string;
14
15
  }
@@ -18,6 +18,7 @@ export declare class ActivityService {
18
18
  getPublicActivityInvite(id: string, token: string): import("rxjs").Observable<import("../models").ActivityInvite>;
19
19
  getTeamActivity(teamId: string, id: string): import("rxjs").Observable<Activity>;
20
20
  getTeamActivityLocations(teamId: string): import("rxjs").Observable<Collection<ActivityLocation> | undefined>;
21
+ getClubActivityLocations(clubId: string): import("rxjs").Observable<Collection<ActivityLocation> | undefined>;
21
22
  getTeamActivityNew(teamId: string): import("rxjs").Observable<Activity>;
22
23
  getTeamActivityParticipants(teamId: string, activityId: string): import("rxjs").Observable<Collection<import("../models").SearchMember>>;
23
24
  getTeamActivitySettings(teamId: string): import("rxjs").Observable<import("../models").ActivitySettings>;
@@ -29,6 +30,7 @@ export declare class ActivityService {
29
30
  updateTeamActivity(teamId: string, activity: Activity): import("rxjs").Observable<Activity>;
30
31
  updateTeamActivityInvite(teamId: string, activityId: string, activityInviteId: string, activityInvite: MemberActivityInvite): import("rxjs").Observable<MemberActivityInvite>;
31
32
  updateTeamActivityParticipants(teamId: string, activityId: string, members: Array<string>): import("rxjs").Observable<void>;
33
+ private removeUnusedActivityFields;
32
34
  static ɵfac: i0.ɵɵFactoryDeclaration<ActivityService, never>;
33
35
  static ɵprov: i0.ɵɵInjectableDeclaration<ActivityService>;
34
36
  }
@@ -0,0 +1,27 @@
1
+ import { ApiService } from './api.service';
2
+ import { Collection } from '../models';
3
+ import { BookingCalendar } from "../models/booking-calendar";
4
+ import { BookingCalendarSlot } from "../models/booking-calendar-slot";
5
+ import { BookingCalendarSlotSession } from "../models/booking-calendar-slot-session";
6
+ import * as i0 from "@angular/core";
7
+ export declare class BookingCalendarService {
8
+ private apiService;
9
+ constructor(apiService: ApiService);
10
+ createClubBookingCalendar(clubId: string, calendar: Partial<BookingCalendar>): import("rxjs").Observable<BookingCalendar>;
11
+ getClubBookingCalendars(clubId: string, name?: string | null): import("rxjs").Observable<Collection<BookingCalendar>>;
12
+ getClubBookingCalendar(clubId: string, id: string): import("rxjs").Observable<BookingCalendar>;
13
+ updateClubBookingCalendar(clubId: string, calendar: BookingCalendar): import("rxjs").Observable<BookingCalendar>;
14
+ deleteClubBookingCalendar(clubId: string, id: string): import("rxjs").Observable<boolean>;
15
+ createClubBookingCalendarSlot(clubId: string, slot: Partial<BookingCalendarSlot>): import("rxjs").Observable<BookingCalendarSlot>;
16
+ getClubBookingCalendarSlots(clubId: string, startDate?: string | null, endDate?: string | null): import("rxjs").Observable<Collection<BookingCalendarSlot>>;
17
+ getClubBookingCalendarSlot(clubId: string, id: string): import("rxjs").Observable<BookingCalendarSlot>;
18
+ updateClubBookingCalendarSlot(clubId: string, slot: BookingCalendarSlot): import("rxjs").Observable<BookingCalendarSlot>;
19
+ deleteClubBookingCalendarSlot(clubId: string, id: string): import("rxjs").Observable<boolean>;
20
+ createClubBookingCalendarSlotSession(clubId: string, session: Partial<BookingCalendarSlotSession>): import("rxjs").Observable<BookingCalendarSlotSession>;
21
+ getClubBookingCalendarSlotSessions(clubId: string, startDate?: string | null, endDate?: string | null): import("rxjs").Observable<Collection<BookingCalendarSlotSession>>;
22
+ getClubBookingCalendarSlotSession(clubId: string, id: string): import("rxjs").Observable<BookingCalendarSlotSession>;
23
+ updateClubBookingCalendarSlotSession(clubId: string, session: BookingCalendarSlotSession): import("rxjs").Observable<BookingCalendarSlotSession>;
24
+ deleteClubBookingCalendarSlotSession(clubId: string, id: string): import("rxjs").Observable<boolean>;
25
+ static ɵfac: i0.ɵɵFactoryDeclaration<BookingCalendarService, never>;
26
+ static ɵprov: i0.ɵɵInjectableDeclaration<BookingCalendarService>;
27
+ }
@@ -0,0 +1,3 @@
1
+ import { ApiBookingCalendar } from "../../api-models/api-booking-calendar";
2
+ import { BookingCalendar } from "../../models/booking-calendar";
3
+ export declare const bookingCalendarFactory: (apiBookingCalendar: ApiBookingCalendar) => BookingCalendar;
@@ -0,0 +1,3 @@
1
+ import { BookingCalendarSlot } from "../../models";
2
+ import { ApiBookingCalendarSlot } from "../../api-models";
3
+ export declare const bookingCalendarSlotFactory: (apiBookingSlot: ApiBookingCalendarSlot) => BookingCalendarSlot;
@@ -0,0 +1,3 @@
1
+ import { ApiBookingCalendarSlotSession } from "../../api-models";
2
+ import { BookingCalendarSlotSession } from "../../models";
3
+ export declare const bookingCalendarSlotSessionFactory: (apiBookingSlotSession: ApiBookingCalendarSlotSession) => BookingCalendarSlotSession;
@@ -1,5 +1,6 @@
1
1
  export * from './auth.service';
2
2
  export * from './activity.service';
3
+ export * from './booking-calendar.service';
3
4
  export * from './club.service';
4
5
  export * from './constant.service';
5
6
  export * from './email.service';
@@ -0,0 +1 @@
1
+ export declare type BookingCalendarSlotType = 'open' | 'closed';
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@myclub_se/data-access",
3
3
  "description": "This is the package required to access the api for the MyClub Member API V3 from angular",
4
- "version": "1.5.2",
4
+ "version": "1.6.0",
5
5
  "license": "MIT",
6
6
  "main": "src/index.ts",
7
7
  "peerDependencies": {