@rachelallyson/planning-center-check-ins-ts 1.0.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.
- package/CHANGELOG.md +19 -0
- package/LICENSE +22 -0
- package/README.md +102 -0
- package/dist/client.d.ts +95 -0
- package/dist/client.js +167 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.js +38 -0
- package/dist/modules/attendance-types.d.ts +27 -0
- package/dist/modules/attendance-types.js +44 -0
- package/dist/modules/check-in-groups.d.ts +27 -0
- package/dist/modules/check-in-groups.js +44 -0
- package/dist/modules/check-in-times.d.ts +27 -0
- package/dist/modules/check-in-times.js +44 -0
- package/dist/modules/check-ins.d.ts +88 -0
- package/dist/modules/check-ins.js +157 -0
- package/dist/modules/event-periods.d.ts +57 -0
- package/dist/modules/event-periods.js +75 -0
- package/dist/modules/event-times.d.ts +51 -0
- package/dist/modules/event-times.js +69 -0
- package/dist/modules/events.d.ts +93 -0
- package/dist/modules/events.js +101 -0
- package/dist/modules/headcounts.d.ts +27 -0
- package/dist/modules/headcounts.js +44 -0
- package/dist/modules/integration-links.d.ts +27 -0
- package/dist/modules/integration-links.js +44 -0
- package/dist/modules/labels.d.ts +51 -0
- package/dist/modules/labels.js +108 -0
- package/dist/modules/locations.d.ts +51 -0
- package/dist/modules/locations.js +63 -0
- package/dist/modules/options.d.ts +27 -0
- package/dist/modules/options.js +44 -0
- package/dist/modules/organization.d.ts +13 -0
- package/dist/modules/organization.js +19 -0
- package/dist/modules/passes.d.ts +27 -0
- package/dist/modules/passes.js +44 -0
- package/dist/modules/person-events.d.ts +27 -0
- package/dist/modules/person-events.js +44 -0
- package/dist/modules/pre-checks.d.ts +27 -0
- package/dist/modules/pre-checks.js +44 -0
- package/dist/modules/roster-list-persons.d.ts +27 -0
- package/dist/modules/roster-list-persons.js +44 -0
- package/dist/modules/stations.d.ts +27 -0
- package/dist/modules/stations.js +44 -0
- package/dist/modules/themes.d.ts +27 -0
- package/dist/modules/themes.js +44 -0
- package/dist/types/check-ins.d.ts +325 -0
- package/dist/types/check-ins.js +6 -0
- package/dist/types/client.d.ts +12 -0
- package/dist/types/client.js +5 -0
- package/dist/types/index.d.ts +3 -0
- package/dist/types/index.js +18 -0
- package/package.json +75 -0
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* CheckInTimes Module for Check-Ins API
|
|
4
|
+
*/
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.CheckInTimesModule = void 0;
|
|
7
|
+
const planning_center_base_ts_1 = require("@rachelallyson/planning-center-base-ts");
|
|
8
|
+
class CheckInTimesModule extends planning_center_base_ts_1.BaseModule {
|
|
9
|
+
constructor(httpClient, paginationHelper, eventEmitter) {
|
|
10
|
+
super(httpClient, paginationHelper, eventEmitter);
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Get all check-in times with optional filtering
|
|
14
|
+
*/
|
|
15
|
+
async getAll(options = {}) {
|
|
16
|
+
const params = {};
|
|
17
|
+
if (options.where) {
|
|
18
|
+
Object.entries(options.where).forEach(([key, value]) => {
|
|
19
|
+
params[`where[${key}]`] = value;
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
if (options.include) {
|
|
23
|
+
params.include = options.include.join(',');
|
|
24
|
+
}
|
|
25
|
+
if (options.perPage) {
|
|
26
|
+
params.per_page = options.perPage;
|
|
27
|
+
}
|
|
28
|
+
if (options.page) {
|
|
29
|
+
params.page = options.page;
|
|
30
|
+
}
|
|
31
|
+
return this.getList('/check-ins/v2/check_in_times', params);
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Get a single check-in time by ID
|
|
35
|
+
*/
|
|
36
|
+
async getById(id, include) {
|
|
37
|
+
const params = {};
|
|
38
|
+
if (include) {
|
|
39
|
+
params.include = include.join(',');
|
|
40
|
+
}
|
|
41
|
+
return this.getSingle(`/check-ins/v2/check_in_times/${id}`, params);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
exports.CheckInTimesModule = CheckInTimesModule;
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CheckIns Module for Check-Ins API
|
|
3
|
+
*/
|
|
4
|
+
import { BaseModule } from '@rachelallyson/planning-center-base-ts';
|
|
5
|
+
import type { PcoHttpClient, PaginationHelper, PcoEventEmitter } from '@rachelallyson/planning-center-base-ts';
|
|
6
|
+
import type { CheckInResource, CheckInGroupResource, CheckInTimeResource, StationResource, EventResource, EventPeriodResource, EventTimeResource, LocationResource, OptionResource } from '../types';
|
|
7
|
+
export interface CheckInsListOptions {
|
|
8
|
+
where?: Record<string, any>;
|
|
9
|
+
include?: string[];
|
|
10
|
+
perPage?: number;
|
|
11
|
+
page?: number;
|
|
12
|
+
filter?: string[];
|
|
13
|
+
}
|
|
14
|
+
export declare class CheckInsModule extends BaseModule {
|
|
15
|
+
constructor(httpClient: PcoHttpClient, paginationHelper: PaginationHelper, eventEmitter: PcoEventEmitter);
|
|
16
|
+
/**
|
|
17
|
+
* Get all check-ins with optional filtering
|
|
18
|
+
*/
|
|
19
|
+
getAll(options?: CheckInsListOptions): Promise<{
|
|
20
|
+
data: CheckInResource[];
|
|
21
|
+
meta?: any;
|
|
22
|
+
links?: any;
|
|
23
|
+
}>;
|
|
24
|
+
/**
|
|
25
|
+
* Get a single check-in by ID
|
|
26
|
+
*/
|
|
27
|
+
getById(id: string, include?: string[]): Promise<CheckInResource>;
|
|
28
|
+
/**
|
|
29
|
+
* Get check-in group for a check-in
|
|
30
|
+
*/
|
|
31
|
+
getCheckInGroup(checkInId: string): Promise<CheckInGroupResource | null>;
|
|
32
|
+
/**
|
|
33
|
+
* Get check-in times for a check-in
|
|
34
|
+
*/
|
|
35
|
+
getCheckInTimes(checkInId: string): Promise<{
|
|
36
|
+
data: CheckInTimeResource[];
|
|
37
|
+
meta?: any;
|
|
38
|
+
links?: any;
|
|
39
|
+
}>;
|
|
40
|
+
/**
|
|
41
|
+
* Get station where check-in occurred (checked_in_at)
|
|
42
|
+
*/
|
|
43
|
+
getCheckedInAt(checkInId: string): Promise<StationResource | null>;
|
|
44
|
+
/**
|
|
45
|
+
* Get person who checked in (checked_in_by)
|
|
46
|
+
*/
|
|
47
|
+
getCheckedInBy(checkInId: string): Promise<any | null>;
|
|
48
|
+
/**
|
|
49
|
+
* Get person who checked out (checked_out_by)
|
|
50
|
+
*/
|
|
51
|
+
getCheckedOutBy(checkInId: string): Promise<any | null>;
|
|
52
|
+
/**
|
|
53
|
+
* Get event for a check-in
|
|
54
|
+
*/
|
|
55
|
+
getEvent(checkInId: string): Promise<EventResource>;
|
|
56
|
+
/**
|
|
57
|
+
* Get event period for a check-in
|
|
58
|
+
*/
|
|
59
|
+
getEventPeriod(checkInId: string): Promise<EventPeriodResource>;
|
|
60
|
+
/**
|
|
61
|
+
* Get event times for a check-in
|
|
62
|
+
*/
|
|
63
|
+
getEventTimes(checkInId: string): Promise<{
|
|
64
|
+
data: EventTimeResource[];
|
|
65
|
+
meta?: any;
|
|
66
|
+
links?: any;
|
|
67
|
+
}>;
|
|
68
|
+
/**
|
|
69
|
+
* Get locations for a check-in
|
|
70
|
+
*/
|
|
71
|
+
getLocations(checkInId: string): Promise<{
|
|
72
|
+
data: LocationResource[];
|
|
73
|
+
meta?: any;
|
|
74
|
+
links?: any;
|
|
75
|
+
}>;
|
|
76
|
+
/**
|
|
77
|
+
* Get options for a check-in
|
|
78
|
+
*/
|
|
79
|
+
getOptions(checkInId: string): Promise<{
|
|
80
|
+
data: OptionResource[];
|
|
81
|
+
meta?: any;
|
|
82
|
+
links?: any;
|
|
83
|
+
}>;
|
|
84
|
+
/**
|
|
85
|
+
* Get person for a check-in
|
|
86
|
+
*/
|
|
87
|
+
getPerson(checkInId: string): Promise<any | null>;
|
|
88
|
+
}
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* CheckIns Module for Check-Ins API
|
|
4
|
+
*/
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.CheckInsModule = void 0;
|
|
7
|
+
const planning_center_base_ts_1 = require("@rachelallyson/planning-center-base-ts");
|
|
8
|
+
class CheckInsModule extends planning_center_base_ts_1.BaseModule {
|
|
9
|
+
constructor(httpClient, paginationHelper, eventEmitter) {
|
|
10
|
+
super(httpClient, paginationHelper, eventEmitter);
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Get all check-ins with optional filtering
|
|
14
|
+
*/
|
|
15
|
+
async getAll(options = {}) {
|
|
16
|
+
const params = {};
|
|
17
|
+
if (options.where) {
|
|
18
|
+
Object.entries(options.where).forEach(([key, value]) => {
|
|
19
|
+
params[`where[${key}]`] = value;
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
if (options.include) {
|
|
23
|
+
params.include = options.include.join(',');
|
|
24
|
+
}
|
|
25
|
+
if (options.perPage) {
|
|
26
|
+
params.per_page = options.perPage;
|
|
27
|
+
}
|
|
28
|
+
if (options.page) {
|
|
29
|
+
params.page = options.page;
|
|
30
|
+
}
|
|
31
|
+
// Apply filters if provided
|
|
32
|
+
if (options.filter && options.filter.length > 0) {
|
|
33
|
+
options.filter.forEach(filter => {
|
|
34
|
+
params[filter] = 'true';
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
return this.getList('/check-ins/v2/check_ins', params);
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Get a single check-in by ID
|
|
41
|
+
*/
|
|
42
|
+
async getById(id, include) {
|
|
43
|
+
const params = {};
|
|
44
|
+
if (include) {
|
|
45
|
+
params.include = include.join(',');
|
|
46
|
+
}
|
|
47
|
+
return this.getSingle(`/check-ins/v2/check_ins/${id}`, params);
|
|
48
|
+
}
|
|
49
|
+
// ===== Associations =====
|
|
50
|
+
/**
|
|
51
|
+
* Get check-in group for a check-in
|
|
52
|
+
*/
|
|
53
|
+
async getCheckInGroup(checkInId) {
|
|
54
|
+
try {
|
|
55
|
+
return await this.getSingle(`/check-ins/v2/check_ins/${checkInId}/check_in_group`);
|
|
56
|
+
}
|
|
57
|
+
catch (error) {
|
|
58
|
+
if (error?.status === 404) {
|
|
59
|
+
return null;
|
|
60
|
+
}
|
|
61
|
+
throw error;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Get check-in times for a check-in
|
|
66
|
+
*/
|
|
67
|
+
async getCheckInTimes(checkInId) {
|
|
68
|
+
return this.getList(`/check-ins/v2/check_ins/${checkInId}/check_in_times`);
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Get station where check-in occurred (checked_in_at)
|
|
72
|
+
*/
|
|
73
|
+
async getCheckedInAt(checkInId) {
|
|
74
|
+
try {
|
|
75
|
+
return await this.getSingle(`/check-ins/v2/check_ins/${checkInId}/checked_in_at`);
|
|
76
|
+
}
|
|
77
|
+
catch (error) {
|
|
78
|
+
if (error?.status === 404) {
|
|
79
|
+
return null;
|
|
80
|
+
}
|
|
81
|
+
throw error;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Get person who checked in (checked_in_by)
|
|
86
|
+
*/
|
|
87
|
+
async getCheckedInBy(checkInId) {
|
|
88
|
+
try {
|
|
89
|
+
return await this.getSingle(`/check-ins/v2/check_ins/${checkInId}/checked_in_by`);
|
|
90
|
+
}
|
|
91
|
+
catch (error) {
|
|
92
|
+
if (error?.status === 404) {
|
|
93
|
+
return null;
|
|
94
|
+
}
|
|
95
|
+
throw error;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Get person who checked out (checked_out_by)
|
|
100
|
+
*/
|
|
101
|
+
async getCheckedOutBy(checkInId) {
|
|
102
|
+
try {
|
|
103
|
+
return await this.getSingle(`/check-ins/v2/check_ins/${checkInId}/checked_out_by`);
|
|
104
|
+
}
|
|
105
|
+
catch (error) {
|
|
106
|
+
if (error?.status === 404) {
|
|
107
|
+
return null;
|
|
108
|
+
}
|
|
109
|
+
throw error;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Get event for a check-in
|
|
114
|
+
*/
|
|
115
|
+
async getEvent(checkInId) {
|
|
116
|
+
return this.getSingle(`/check-ins/v2/check_ins/${checkInId}/event`);
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Get event period for a check-in
|
|
120
|
+
*/
|
|
121
|
+
async getEventPeriod(checkInId) {
|
|
122
|
+
return this.getSingle(`/check-ins/v2/check_ins/${checkInId}/event_period`);
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Get event times for a check-in
|
|
126
|
+
*/
|
|
127
|
+
async getEventTimes(checkInId) {
|
|
128
|
+
return this.getList(`/check-ins/v2/check_ins/${checkInId}/event_times`);
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Get locations for a check-in
|
|
132
|
+
*/
|
|
133
|
+
async getLocations(checkInId) {
|
|
134
|
+
return this.getList(`/check-ins/v2/check_ins/${checkInId}/locations`);
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Get options for a check-in
|
|
138
|
+
*/
|
|
139
|
+
async getOptions(checkInId) {
|
|
140
|
+
return this.getList(`/check-ins/v2/check_ins/${checkInId}/options`);
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Get person for a check-in
|
|
144
|
+
*/
|
|
145
|
+
async getPerson(checkInId) {
|
|
146
|
+
try {
|
|
147
|
+
return await this.getSingle(`/check-ins/v2/check_ins/${checkInId}/person`);
|
|
148
|
+
}
|
|
149
|
+
catch (error) {
|
|
150
|
+
if (error?.status === 404) {
|
|
151
|
+
return null;
|
|
152
|
+
}
|
|
153
|
+
throw error;
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
exports.CheckInsModule = CheckInsModule;
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* EventPeriods Module for Check-Ins API
|
|
3
|
+
*/
|
|
4
|
+
import { BaseModule } from '@rachelallyson/planning-center-base-ts';
|
|
5
|
+
import type { PcoHttpClient, PaginationHelper, PcoEventEmitter } from '@rachelallyson/planning-center-base-ts';
|
|
6
|
+
import type { EventPeriodResource, EventResource, EventTimeResource, CheckInResource, LocationEventPeriodResource } from '../types';
|
|
7
|
+
export interface EventPeriodsListOptions {
|
|
8
|
+
where?: Record<string, any>;
|
|
9
|
+
include?: string[];
|
|
10
|
+
perPage?: number;
|
|
11
|
+
page?: number;
|
|
12
|
+
}
|
|
13
|
+
export declare class EventPeriodsModule extends BaseModule {
|
|
14
|
+
constructor(httpClient: PcoHttpClient, paginationHelper: PaginationHelper, eventEmitter: PcoEventEmitter);
|
|
15
|
+
/**
|
|
16
|
+
* Get all event periods with optional filtering
|
|
17
|
+
*/
|
|
18
|
+
getAll(options?: EventPeriodsListOptions): Promise<{
|
|
19
|
+
data: EventPeriodResource[];
|
|
20
|
+
meta?: any;
|
|
21
|
+
links?: any;
|
|
22
|
+
}>;
|
|
23
|
+
/**
|
|
24
|
+
* Get a single event period by ID
|
|
25
|
+
*/
|
|
26
|
+
getById(id: string, include?: string[]): Promise<EventPeriodResource>;
|
|
27
|
+
/**
|
|
28
|
+
* Get event for an event period
|
|
29
|
+
*/
|
|
30
|
+
getEvent(eventPeriodId: string): Promise<EventResource>;
|
|
31
|
+
/**
|
|
32
|
+
* Get event times for an event period
|
|
33
|
+
*/
|
|
34
|
+
getEventTimes(eventPeriodId: string): Promise<{
|
|
35
|
+
data: EventTimeResource[];
|
|
36
|
+
meta?: any;
|
|
37
|
+
links?: any;
|
|
38
|
+
}>;
|
|
39
|
+
/**
|
|
40
|
+
* Get check-ins for an event period
|
|
41
|
+
*/
|
|
42
|
+
getCheckIns(eventPeriodId: string, options?: {
|
|
43
|
+
filter?: string[];
|
|
44
|
+
}): Promise<{
|
|
45
|
+
data: CheckInResource[];
|
|
46
|
+
meta?: any;
|
|
47
|
+
links?: any;
|
|
48
|
+
}>;
|
|
49
|
+
/**
|
|
50
|
+
* Get location event periods for an event period
|
|
51
|
+
*/
|
|
52
|
+
getLocationEventPeriods(eventPeriodId: string): Promise<{
|
|
53
|
+
data: LocationEventPeriodResource[];
|
|
54
|
+
meta?: any;
|
|
55
|
+
links?: any;
|
|
56
|
+
}>;
|
|
57
|
+
}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* EventPeriods Module for Check-Ins API
|
|
4
|
+
*/
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.EventPeriodsModule = void 0;
|
|
7
|
+
const planning_center_base_ts_1 = require("@rachelallyson/planning-center-base-ts");
|
|
8
|
+
class EventPeriodsModule extends planning_center_base_ts_1.BaseModule {
|
|
9
|
+
constructor(httpClient, paginationHelper, eventEmitter) {
|
|
10
|
+
super(httpClient, paginationHelper, eventEmitter);
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Get all event periods with optional filtering
|
|
14
|
+
*/
|
|
15
|
+
async getAll(options = {}) {
|
|
16
|
+
const params = {};
|
|
17
|
+
if (options.where) {
|
|
18
|
+
Object.entries(options.where).forEach(([key, value]) => {
|
|
19
|
+
params[`where[${key}]`] = value;
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
if (options.include) {
|
|
23
|
+
params.include = options.include.join(',');
|
|
24
|
+
}
|
|
25
|
+
if (options.perPage) {
|
|
26
|
+
params.per_page = options.perPage;
|
|
27
|
+
}
|
|
28
|
+
if (options.page) {
|
|
29
|
+
params.page = options.page;
|
|
30
|
+
}
|
|
31
|
+
return this.getList('/check-ins/v2/event_periods', params);
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Get a single event period by ID
|
|
35
|
+
*/
|
|
36
|
+
async getById(id, include) {
|
|
37
|
+
const params = {};
|
|
38
|
+
if (include) {
|
|
39
|
+
params.include = include.join(',');
|
|
40
|
+
}
|
|
41
|
+
return this.getSingle(`/check-ins/v2/event_periods/${id}`, params);
|
|
42
|
+
}
|
|
43
|
+
// ===== Associations =====
|
|
44
|
+
/**
|
|
45
|
+
* Get event for an event period
|
|
46
|
+
*/
|
|
47
|
+
async getEvent(eventPeriodId) {
|
|
48
|
+
return this.getSingle(`/check-ins/v2/event_periods/${eventPeriodId}/event`);
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Get event times for an event period
|
|
52
|
+
*/
|
|
53
|
+
async getEventTimes(eventPeriodId) {
|
|
54
|
+
return this.getList(`/check-ins/v2/event_periods/${eventPeriodId}/event_times`);
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Get check-ins for an event period
|
|
58
|
+
*/
|
|
59
|
+
async getCheckIns(eventPeriodId, options = {}) {
|
|
60
|
+
const params = {};
|
|
61
|
+
if (options.filter && options.filter.length > 0) {
|
|
62
|
+
options.filter.forEach(filter => {
|
|
63
|
+
params[filter] = 'true';
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
return this.getList(`/check-ins/v2/event_periods/${eventPeriodId}/check_ins`, params);
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Get location event periods for an event period
|
|
70
|
+
*/
|
|
71
|
+
async getLocationEventPeriods(eventPeriodId) {
|
|
72
|
+
return this.getList(`/check-ins/v2/event_periods/${eventPeriodId}/location_event_periods`);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
exports.EventPeriodsModule = EventPeriodsModule;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* EventTimes Module for Check-Ins API
|
|
3
|
+
*/
|
|
4
|
+
import { BaseModule } from '@rachelallyson/planning-center-base-ts';
|
|
5
|
+
import type { PcoHttpClient, PaginationHelper, PcoEventEmitter } from '@rachelallyson/planning-center-base-ts';
|
|
6
|
+
import type { EventTimeResource, EventResource, EventPeriodResource, LocationEventTimeResource, CheckInResource } from '../types';
|
|
7
|
+
export interface EventTimesListOptions {
|
|
8
|
+
where?: Record<string, any>;
|
|
9
|
+
include?: string[];
|
|
10
|
+
perPage?: number;
|
|
11
|
+
page?: number;
|
|
12
|
+
}
|
|
13
|
+
export declare class EventTimesModule extends BaseModule {
|
|
14
|
+
constructor(httpClient: PcoHttpClient, paginationHelper: PaginationHelper, eventEmitter: PcoEventEmitter);
|
|
15
|
+
/**
|
|
16
|
+
* Get all event times with optional filtering
|
|
17
|
+
*/
|
|
18
|
+
getAll(options?: EventTimesListOptions): Promise<{
|
|
19
|
+
data: EventTimeResource[];
|
|
20
|
+
meta?: any;
|
|
21
|
+
links?: any;
|
|
22
|
+
}>;
|
|
23
|
+
/**
|
|
24
|
+
* Get a single event time by ID
|
|
25
|
+
*/
|
|
26
|
+
getById(id: string, include?: string[]): Promise<EventTimeResource>;
|
|
27
|
+
/**
|
|
28
|
+
* Get event for an event time
|
|
29
|
+
*/
|
|
30
|
+
getEvent(eventTimeId: string): Promise<EventResource>;
|
|
31
|
+
/**
|
|
32
|
+
* Get event period for an event time
|
|
33
|
+
*/
|
|
34
|
+
getEventPeriod(eventTimeId: string): Promise<EventPeriodResource>;
|
|
35
|
+
/**
|
|
36
|
+
* Get location event times for an event time
|
|
37
|
+
*/
|
|
38
|
+
getLocationEventTimes(eventTimeId: string): Promise<{
|
|
39
|
+
data: LocationEventTimeResource[];
|
|
40
|
+
meta?: any;
|
|
41
|
+
links?: any;
|
|
42
|
+
}>;
|
|
43
|
+
/**
|
|
44
|
+
* Get check-ins for an event time
|
|
45
|
+
*/
|
|
46
|
+
getCheckIns(eventTimeId: string): Promise<{
|
|
47
|
+
data: CheckInResource[];
|
|
48
|
+
meta?: any;
|
|
49
|
+
links?: any;
|
|
50
|
+
}>;
|
|
51
|
+
}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* EventTimes Module for Check-Ins API
|
|
4
|
+
*/
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.EventTimesModule = void 0;
|
|
7
|
+
const planning_center_base_ts_1 = require("@rachelallyson/planning-center-base-ts");
|
|
8
|
+
class EventTimesModule extends planning_center_base_ts_1.BaseModule {
|
|
9
|
+
constructor(httpClient, paginationHelper, eventEmitter) {
|
|
10
|
+
super(httpClient, paginationHelper, eventEmitter);
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Get all event times with optional filtering
|
|
14
|
+
*/
|
|
15
|
+
async getAll(options = {}) {
|
|
16
|
+
const params = {};
|
|
17
|
+
if (options.where) {
|
|
18
|
+
Object.entries(options.where).forEach(([key, value]) => {
|
|
19
|
+
params[`where[${key}]`] = value;
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
if (options.include) {
|
|
23
|
+
params.include = options.include.join(',');
|
|
24
|
+
}
|
|
25
|
+
if (options.perPage) {
|
|
26
|
+
params.per_page = options.perPage;
|
|
27
|
+
}
|
|
28
|
+
if (options.page) {
|
|
29
|
+
params.page = options.page;
|
|
30
|
+
}
|
|
31
|
+
return this.getList('/check-ins/v2/event_times', params);
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Get a single event time by ID
|
|
35
|
+
*/
|
|
36
|
+
async getById(id, include) {
|
|
37
|
+
const params = {};
|
|
38
|
+
if (include) {
|
|
39
|
+
params.include = include.join(',');
|
|
40
|
+
}
|
|
41
|
+
return this.getSingle(`/check-ins/v2/event_times/${id}`, params);
|
|
42
|
+
}
|
|
43
|
+
// ===== Associations =====
|
|
44
|
+
/**
|
|
45
|
+
* Get event for an event time
|
|
46
|
+
*/
|
|
47
|
+
async getEvent(eventTimeId) {
|
|
48
|
+
return this.getSingle(`/check-ins/v2/event_times/${eventTimeId}/event`);
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Get event period for an event time
|
|
52
|
+
*/
|
|
53
|
+
async getEventPeriod(eventTimeId) {
|
|
54
|
+
return this.getSingle(`/check-ins/v2/event_times/${eventTimeId}/event_period`);
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Get location event times for an event time
|
|
58
|
+
*/
|
|
59
|
+
async getLocationEventTimes(eventTimeId) {
|
|
60
|
+
return this.getList(`/check-ins/v2/event_times/${eventTimeId}/location_event_times`);
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Get check-ins for an event time
|
|
64
|
+
*/
|
|
65
|
+
async getCheckIns(eventTimeId) {
|
|
66
|
+
return this.getList(`/check-ins/v2/event_times/${eventTimeId}/check_ins`);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
exports.EventTimesModule = EventTimesModule;
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Events Module for Check-Ins API
|
|
3
|
+
*/
|
|
4
|
+
import { BaseModule } from '@rachelallyson/planning-center-base-ts';
|
|
5
|
+
import type { PcoHttpClient, PaginationHelper, PcoEventEmitter } from '@rachelallyson/planning-center-base-ts';
|
|
6
|
+
import type { EventResource, EventPeriodResource, EventTimeResource, AttendanceTypeResource, CheckInResource, EventLabelResource, LocationResource, PersonEventResource, IntegrationLinkResource } from '../types';
|
|
7
|
+
export interface EventsListOptions {
|
|
8
|
+
where?: Record<string, any>;
|
|
9
|
+
include?: string[];
|
|
10
|
+
perPage?: number;
|
|
11
|
+
page?: number;
|
|
12
|
+
}
|
|
13
|
+
export declare class EventsModule extends BaseModule {
|
|
14
|
+
constructor(httpClient: PcoHttpClient, paginationHelper: PaginationHelper, eventEmitter: PcoEventEmitter);
|
|
15
|
+
/**
|
|
16
|
+
* Get all events with optional filtering
|
|
17
|
+
*/
|
|
18
|
+
getAll(options?: EventsListOptions): Promise<{
|
|
19
|
+
data: EventResource[];
|
|
20
|
+
meta?: any;
|
|
21
|
+
links?: any;
|
|
22
|
+
}>;
|
|
23
|
+
/**
|
|
24
|
+
* Get a single event by ID
|
|
25
|
+
*/
|
|
26
|
+
getById(id: string, include?: string[]): Promise<EventResource>;
|
|
27
|
+
/**
|
|
28
|
+
* Get attendance types for an event
|
|
29
|
+
*/
|
|
30
|
+
getAttendanceTypes(eventId: string): Promise<{
|
|
31
|
+
data: AttendanceTypeResource[];
|
|
32
|
+
meta?: any;
|
|
33
|
+
links?: any;
|
|
34
|
+
}>;
|
|
35
|
+
/**
|
|
36
|
+
* Get check-ins for an event
|
|
37
|
+
*/
|
|
38
|
+
getCheckIns(eventId: string, options?: {
|
|
39
|
+
filter?: string[];
|
|
40
|
+
}): Promise<{
|
|
41
|
+
data: CheckInResource[];
|
|
42
|
+
meta?: any;
|
|
43
|
+
links?: any;
|
|
44
|
+
}>;
|
|
45
|
+
/**
|
|
46
|
+
* Get current event times for an event
|
|
47
|
+
*/
|
|
48
|
+
getCurrentEventTimes(eventId: string): Promise<{
|
|
49
|
+
data: EventTimeResource[];
|
|
50
|
+
meta?: any;
|
|
51
|
+
links?: any;
|
|
52
|
+
}>;
|
|
53
|
+
/**
|
|
54
|
+
* Get event labels for an event
|
|
55
|
+
*/
|
|
56
|
+
getEventLabels(eventId: string): Promise<{
|
|
57
|
+
data: EventLabelResource[];
|
|
58
|
+
meta?: any;
|
|
59
|
+
links?: any;
|
|
60
|
+
}>;
|
|
61
|
+
/**
|
|
62
|
+
* Get event periods for an event
|
|
63
|
+
*/
|
|
64
|
+
getEventPeriods(eventId: string): Promise<{
|
|
65
|
+
data: EventPeriodResource[];
|
|
66
|
+
meta?: any;
|
|
67
|
+
links?: any;
|
|
68
|
+
}>;
|
|
69
|
+
/**
|
|
70
|
+
* Get integration links for an event
|
|
71
|
+
*/
|
|
72
|
+
getIntegrationLinks(eventId: string): Promise<{
|
|
73
|
+
data: IntegrationLinkResource[];
|
|
74
|
+
meta?: any;
|
|
75
|
+
links?: any;
|
|
76
|
+
}>;
|
|
77
|
+
/**
|
|
78
|
+
* Get locations for an event
|
|
79
|
+
*/
|
|
80
|
+
getLocations(eventId: string): Promise<{
|
|
81
|
+
data: LocationResource[];
|
|
82
|
+
meta?: any;
|
|
83
|
+
links?: any;
|
|
84
|
+
}>;
|
|
85
|
+
/**
|
|
86
|
+
* Get person events for an event
|
|
87
|
+
*/
|
|
88
|
+
getPersonEvents(eventId: string): Promise<{
|
|
89
|
+
data: PersonEventResource[];
|
|
90
|
+
meta?: any;
|
|
91
|
+
links?: any;
|
|
92
|
+
}>;
|
|
93
|
+
}
|