c4r-aggregator-client 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/.idea/misc.xml +6 -0
- package/.idea/modules.xml +8 -0
- package/.idea/ts.iml +9 -0
- package/.idea/vcs.xml +6 -0
- package/.openapi-generator/FILES +91 -0
- package/.openapi-generator/VERSION +1 -0
- package/.openapi-generator-ignore +23 -0
- package/README.md +174 -0
- package/dist/apis/AdminApi.d.ts +187 -0
- package/dist/apis/AdminApi.js +515 -0
- package/dist/apis/CatalogApi.d.ts +84 -0
- package/dist/apis/CatalogApi.js +191 -0
- package/dist/apis/MeetingsApi.d.ts +98 -0
- package/dist/apis/MeetingsApi.js +235 -0
- package/dist/apis/SourcesApi.d.ts +35 -0
- package/dist/apis/SourcesApi.js +73 -0
- package/dist/apis/index.d.ts +4 -0
- package/dist/apis/index.js +22 -0
- package/dist/esm/apis/AdminApi.d.ts +187 -0
- package/dist/esm/apis/AdminApi.js +511 -0
- package/dist/esm/apis/CatalogApi.d.ts +84 -0
- package/dist/esm/apis/CatalogApi.js +187 -0
- package/dist/esm/apis/MeetingsApi.d.ts +98 -0
- package/dist/esm/apis/MeetingsApi.js +231 -0
- package/dist/esm/apis/SourcesApi.d.ts +35 -0
- package/dist/esm/apis/SourcesApi.js +69 -0
- package/dist/esm/apis/index.d.ts +4 -0
- package/dist/esm/apis/index.js +6 -0
- package/dist/esm/index.d.ts +3 -0
- package/dist/esm/index.js +5 -0
- package/dist/esm/models/AdminSource.d.ts +190 -0
- package/dist/esm/models/AdminSource.js +112 -0
- package/dist/esm/models/AuthError.d.ts +32 -0
- package/dist/esm/models/AuthError.js +41 -0
- package/dist/esm/models/CreateSourceRequest.d.ts +76 -0
- package/dist/esm/models/CreateSourceRequest.js +64 -0
- package/dist/esm/models/CreateSourceResponse.d.ts +45 -0
- package/dist/esm/models/CreateSourceResponse.js +46 -0
- package/dist/esm/models/DedupCounters.d.ts +86 -0
- package/dist/esm/models/DedupCounters.js +59 -0
- package/dist/esm/models/DedupStats.d.ts +65 -0
- package/dist/esm/models/DedupStats.js +54 -0
- package/dist/esm/models/DedupStatsLatestRun.d.ts +60 -0
- package/dist/esm/models/DedupStatsLatestRun.js +56 -0
- package/dist/esm/models/DedupStatsRecentRunsInner.d.ts +45 -0
- package/dist/esm/models/DedupStatsRecentRunsInner.js +46 -0
- package/dist/esm/models/FeedValidationError.d.ts +54 -0
- package/dist/esm/models/FeedValidationError.js +54 -0
- package/dist/esm/models/IngestRun.d.ts +107 -0
- package/dist/esm/models/IngestRun.js +71 -0
- package/dist/esm/models/MapFeature.d.ts +46 -0
- package/dist/esm/models/MapFeature.js +47 -0
- package/dist/esm/models/MapFeatureCollection.d.ts +45 -0
- package/dist/esm/models/MapFeatureCollection.js +46 -0
- package/dist/esm/models/MapFeatureGeometry.d.ts +38 -0
- package/dist/esm/models/MapFeatureGeometry.js +43 -0
- package/dist/esm/models/MapFeatureProperties.d.ts +69 -0
- package/dist/esm/models/MapFeatureProperties.js +54 -0
- package/dist/esm/models/MapMeeting.d.ts +50 -0
- package/dist/esm/models/MapMeeting.js +47 -0
- package/dist/esm/models/Meeting.d.ts +272 -0
- package/dist/esm/models/Meeting.js +131 -0
- package/dist/esm/models/MeetingPage.d.ts +47 -0
- package/dist/esm/models/MeetingPage.js +48 -0
- package/dist/esm/models/MeetingPageLinks.d.ts +50 -0
- package/dist/esm/models/MeetingPageLinks.js +47 -0
- package/dist/esm/models/MeetingPageMeta.d.ts +50 -0
- package/dist/esm/models/MeetingPageMeta.js +47 -0
- package/dist/esm/models/MeetingType.d.ts +56 -0
- package/dist/esm/models/MeetingType.js +49 -0
- package/dist/esm/models/MeetingsFilterError.d.ts +44 -0
- package/dist/esm/models/MeetingsFilterError.js +45 -0
- package/dist/esm/models/Program.d.ts +44 -0
- package/dist/esm/models/Program.js +45 -0
- package/dist/esm/models/PublicSource.d.ts +113 -0
- package/dist/esm/models/PublicSource.js +80 -0
- package/dist/esm/models/SourceEnvelope.d.ts +33 -0
- package/dist/esm/models/SourceEnvelope.js +42 -0
- package/dist/esm/models/SourceRefreshResponse.d.ts +39 -0
- package/dist/esm/models/SourceRefreshResponse.js +44 -0
- package/dist/esm/models/Stats.d.ts +86 -0
- package/dist/esm/models/Stats.js +63 -0
- package/dist/esm/models/StatsGroups.d.ts +32 -0
- package/dist/esm/models/StatsGroups.js +41 -0
- package/dist/esm/models/StatsLocations.d.ts +38 -0
- package/dist/esm/models/StatsLocations.js +43 -0
- package/dist/esm/models/StatsMeetingTypes.d.ts +32 -0
- package/dist/esm/models/StatsMeetingTypes.js +41 -0
- package/dist/esm/models/StatsMeetings.d.ts +68 -0
- package/dist/esm/models/StatsMeetings.js +51 -0
- package/dist/esm/models/StatsProgramsBreakdownInner.d.ts +62 -0
- package/dist/esm/models/StatsProgramsBreakdownInner.js +51 -0
- package/dist/esm/models/StatsSources.d.ts +47 -0
- package/dist/esm/models/StatsSources.js +46 -0
- package/dist/esm/models/StatsSourcesTopByMeetingCountInner.d.ts +44 -0
- package/dist/esm/models/StatsSourcesTopByMeetingCountInner.js +45 -0
- package/dist/esm/models/StoreSourceValidationError.d.ts +23 -0
- package/dist/esm/models/StoreSourceValidationError.js +51 -0
- package/dist/esm/models/UpdateSourceRequest.d.ts +70 -0
- package/dist/esm/models/UpdateSourceRequest.js +58 -0
- package/dist/esm/models/ValidationError.d.ts +40 -0
- package/dist/esm/models/ValidationError.js +43 -0
- package/dist/esm/models/index.d.ts +36 -0
- package/dist/esm/models/index.js +38 -0
- package/dist/esm/runtime.d.ts +184 -0
- package/dist/esm/runtime.js +349 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.js +21 -0
- package/dist/models/AdminSource.d.ts +190 -0
- package/dist/models/AdminSource.js +120 -0
- package/dist/models/AuthError.d.ts +32 -0
- package/dist/models/AuthError.js +48 -0
- package/dist/models/CreateSourceRequest.d.ts +76 -0
- package/dist/models/CreateSourceRequest.js +72 -0
- package/dist/models/CreateSourceResponse.d.ts +45 -0
- package/dist/models/CreateSourceResponse.js +53 -0
- package/dist/models/DedupCounters.d.ts +86 -0
- package/dist/models/DedupCounters.js +66 -0
- package/dist/models/DedupStats.d.ts +65 -0
- package/dist/models/DedupStats.js +61 -0
- package/dist/models/DedupStatsLatestRun.d.ts +60 -0
- package/dist/models/DedupStatsLatestRun.js +64 -0
- package/dist/models/DedupStatsRecentRunsInner.d.ts +45 -0
- package/dist/models/DedupStatsRecentRunsInner.js +53 -0
- package/dist/models/FeedValidationError.d.ts +54 -0
- package/dist/models/FeedValidationError.js +62 -0
- package/dist/models/IngestRun.d.ts +107 -0
- package/dist/models/IngestRun.js +79 -0
- package/dist/models/MapFeature.d.ts +46 -0
- package/dist/models/MapFeature.js +54 -0
- package/dist/models/MapFeatureCollection.d.ts +45 -0
- package/dist/models/MapFeatureCollection.js +53 -0
- package/dist/models/MapFeatureGeometry.d.ts +38 -0
- package/dist/models/MapFeatureGeometry.js +50 -0
- package/dist/models/MapFeatureProperties.d.ts +69 -0
- package/dist/models/MapFeatureProperties.js +61 -0
- package/dist/models/MapMeeting.d.ts +50 -0
- package/dist/models/MapMeeting.js +54 -0
- package/dist/models/Meeting.d.ts +272 -0
- package/dist/models/Meeting.js +139 -0
- package/dist/models/MeetingPage.d.ts +47 -0
- package/dist/models/MeetingPage.js +55 -0
- package/dist/models/MeetingPageLinks.d.ts +50 -0
- package/dist/models/MeetingPageLinks.js +54 -0
- package/dist/models/MeetingPageMeta.d.ts +50 -0
- package/dist/models/MeetingPageMeta.js +54 -0
- package/dist/models/MeetingType.d.ts +56 -0
- package/dist/models/MeetingType.js +56 -0
- package/dist/models/MeetingsFilterError.d.ts +44 -0
- package/dist/models/MeetingsFilterError.js +52 -0
- package/dist/models/Program.d.ts +44 -0
- package/dist/models/Program.js +52 -0
- package/dist/models/PublicSource.d.ts +113 -0
- package/dist/models/PublicSource.js +88 -0
- package/dist/models/SourceEnvelope.d.ts +33 -0
- package/dist/models/SourceEnvelope.js +49 -0
- package/dist/models/SourceRefreshResponse.d.ts +39 -0
- package/dist/models/SourceRefreshResponse.js +51 -0
- package/dist/models/Stats.d.ts +86 -0
- package/dist/models/Stats.js +70 -0
- package/dist/models/StatsGroups.d.ts +32 -0
- package/dist/models/StatsGroups.js +48 -0
- package/dist/models/StatsLocations.d.ts +38 -0
- package/dist/models/StatsLocations.js +50 -0
- package/dist/models/StatsMeetingTypes.d.ts +32 -0
- package/dist/models/StatsMeetingTypes.js +48 -0
- package/dist/models/StatsMeetings.d.ts +68 -0
- package/dist/models/StatsMeetings.js +58 -0
- package/dist/models/StatsProgramsBreakdownInner.d.ts +62 -0
- package/dist/models/StatsProgramsBreakdownInner.js +58 -0
- package/dist/models/StatsSources.d.ts +47 -0
- package/dist/models/StatsSources.js +53 -0
- package/dist/models/StatsSourcesTopByMeetingCountInner.d.ts +44 -0
- package/dist/models/StatsSourcesTopByMeetingCountInner.js +52 -0
- package/dist/models/StoreSourceValidationError.d.ts +23 -0
- package/dist/models/StoreSourceValidationError.js +57 -0
- package/dist/models/UpdateSourceRequest.d.ts +70 -0
- package/dist/models/UpdateSourceRequest.js +66 -0
- package/dist/models/ValidationError.d.ts +40 -0
- package/dist/models/ValidationError.js +50 -0
- package/dist/models/index.d.ts +36 -0
- package/dist/models/index.js +54 -0
- package/dist/runtime.d.ts +184 -0
- package/dist/runtime.js +365 -0
- package/docs/AdminApi.md +734 -0
- package/docs/AdminSource.md +77 -0
- package/docs/AuthError.md +34 -0
- package/docs/CatalogApi.md +270 -0
- package/docs/CreateSourceRequest.md +46 -0
- package/docs/CreateSourceResponse.md +38 -0
- package/docs/DedupCounters.md +53 -0
- package/docs/DedupStats.md +45 -0
- package/docs/DedupStatsLatestRun.md +41 -0
- package/docs/DedupStatsRecentRunsInner.md +39 -0
- package/docs/FeedValidationError.md +39 -0
- package/docs/IngestRun.md +57 -0
- package/docs/MapFeature.md +39 -0
- package/docs/MapFeatureCollection.md +39 -0
- package/docs/MapFeatureGeometry.md +37 -0
- package/docs/MapFeatureProperties.md +47 -0
- package/docs/MapMeeting.md +41 -0
- package/docs/Meeting.md +109 -0
- package/docs/MeetingPage.md +39 -0
- package/docs/MeetingPageLinks.md +41 -0
- package/docs/MeetingPageMeta.md +41 -0
- package/docs/MeetingType.md +42 -0
- package/docs/MeetingsApi.md +323 -0
- package/docs/MeetingsFilterError.md +39 -0
- package/docs/Program.md +38 -0
- package/docs/PublicSource.md +55 -0
- package/docs/SourceEnvelope.md +35 -0
- package/docs/SourceRefreshResponse.md +37 -0
- package/docs/SourcesApi.md +76 -0
- package/docs/Stats.md +51 -0
- package/docs/StatsGroups.md +35 -0
- package/docs/StatsLocations.md +37 -0
- package/docs/StatsMeetingTypes.md +35 -0
- package/docs/StatsMeetings.md +45 -0
- package/docs/StatsProgramsBreakdownInner.md +45 -0
- package/docs/StatsSources.md +39 -0
- package/docs/StatsSourcesTopByMeetingCountInner.md +39 -0
- package/docs/StoreSourceValidationError.md +41 -0
- package/docs/UpdateSourceRequest.md +44 -0
- package/docs/ValidationError.md +36 -0
- package/package.json +21 -0
- package/src/apis/AdminApi.ts +659 -0
- package/src/apis/CatalogApi.ts +220 -0
- package/src/apis/MeetingsApi.ts +305 -0
- package/src/apis/SourcesApi.ts +74 -0
- package/src/apis/index.ts +6 -0
- package/src/index.ts +5 -0
- package/src/models/AdminSource.ts +270 -0
- package/src/models/AuthError.ts +65 -0
- package/src/models/CreateSourceRequest.ts +126 -0
- package/src/models/CreateSourceResponse.ts +89 -0
- package/src/models/DedupCounters.ts +137 -0
- package/src/models/DedupStats.ts +127 -0
- package/src/models/DedupStatsLatestRun.ts +109 -0
- package/src/models/DedupStatsRecentRunsInner.ts +89 -0
- package/src/models/FeedValidationError.ts +94 -0
- package/src/models/IngestRun.ts +165 -0
- package/src/models/MapFeature.ts +96 -0
- package/src/models/MapFeatureCollection.ts +89 -0
- package/src/models/MapFeatureGeometry.ts +73 -0
- package/src/models/MapFeatureProperties.ts +121 -0
- package/src/models/MapMeeting.ts +89 -0
- package/src/models/Meeting.ts +383 -0
- package/src/models/MeetingPage.ts +103 -0
- package/src/models/MeetingPageLinks.ts +89 -0
- package/src/models/MeetingPageMeta.ts +89 -0
- package/src/models/MeetingType.ts +97 -0
- package/src/models/MeetingsFilterError.ts +81 -0
- package/src/models/Program.ts +81 -0
- package/src/models/PublicSource.ts +170 -0
- package/src/models/SourceEnvelope.ts +73 -0
- package/src/models/SourceRefreshResponse.ts +81 -0
- package/src/models/Stats.ts +172 -0
- package/src/models/StatsGroups.ts +65 -0
- package/src/models/StatsLocations.ts +73 -0
- package/src/models/StatsMeetingTypes.ts +65 -0
- package/src/models/StatsMeetings.ts +105 -0
- package/src/models/StatsProgramsBreakdownInner.ts +105 -0
- package/src/models/StatsSources.ts +89 -0
- package/src/models/StatsSourcesTopByMeetingCountInner.ts +81 -0
- package/src/models/StoreSourceValidationError.ts +76 -0
- package/src/models/UpdateSourceRequest.ts +116 -0
- package/src/models/ValidationError.ts +73 -0
- package/src/models/index.ts +38 -0
- package/src/runtime.ts +449 -0
- package/tsconfig.esm.json +7 -0
- package/tsconfig.json +16 -0
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/* tslint:disable */
|
|
3
|
+
/* eslint-disable */
|
|
4
|
+
/**
|
|
5
|
+
* C4R Aggregator API
|
|
6
|
+
* Aggregator for public [12-Step Meeting List](https://wordpress.org/plugins/12-step-meeting-list/) WordPress feeds. Ingests registered sources on a schedule, normalizes duplicates across feeds, and exposes a unified read API whose responses follow the [Meeting Guide API spec](https://github.com/code4recovery/spec) for drop-in client compatibility. - **Public endpoints** return Meeting Guide-shape data. `/meetings` requires at least one filter (bounding box, radius, region, source, program, day, or type) and is cursor-paginated. - **Per-source and per-region feeds** return bare JSON arrays — safe drop-in replacements for the upstream TSML endpoint. - **Admin endpoints** under `/admin/_*` require a Sanctum bearer token.
|
|
7
|
+
*
|
|
8
|
+
* The version of the OpenAPI document: 1.0.0
|
|
9
|
+
*
|
|
10
|
+
*
|
|
11
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
12
|
+
* https://openapi-generator.tech
|
|
13
|
+
* Do not edit the class manually.
|
|
14
|
+
*/
|
|
15
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
|
+
exports.instanceOfStatsMeetings = instanceOfStatsMeetings;
|
|
17
|
+
exports.StatsMeetingsFromJSON = StatsMeetingsFromJSON;
|
|
18
|
+
exports.StatsMeetingsFromJSONTyped = StatsMeetingsFromJSONTyped;
|
|
19
|
+
exports.StatsMeetingsToJSON = StatsMeetingsToJSON;
|
|
20
|
+
exports.StatsMeetingsToJSONTyped = StatsMeetingsToJSONTyped;
|
|
21
|
+
/**
|
|
22
|
+
* Check if a given object implements the StatsMeetings interface.
|
|
23
|
+
*/
|
|
24
|
+
function instanceOfStatsMeetings(value) {
|
|
25
|
+
return true;
|
|
26
|
+
}
|
|
27
|
+
function StatsMeetingsFromJSON(json) {
|
|
28
|
+
return StatsMeetingsFromJSONTyped(json, false);
|
|
29
|
+
}
|
|
30
|
+
function StatsMeetingsFromJSONTyped(json, ignoreDiscriminator) {
|
|
31
|
+
if (json == null) {
|
|
32
|
+
return json;
|
|
33
|
+
}
|
|
34
|
+
return {
|
|
35
|
+
'total': json['total'] == null ? undefined : json['total'],
|
|
36
|
+
'active': json['active'] == null ? undefined : json['active'],
|
|
37
|
+
'inactive': json['inactive'] == null ? undefined : json['inactive'],
|
|
38
|
+
'byProgram': json['by_program'] == null ? undefined : json['by_program'],
|
|
39
|
+
'byAttendanceOption': json['by_attendance_option'] == null ? undefined : json['by_attendance_option'],
|
|
40
|
+
'byDay': json['by_day'] == null ? undefined : json['by_day'],
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
function StatsMeetingsToJSON(json) {
|
|
44
|
+
return StatsMeetingsToJSONTyped(json, false);
|
|
45
|
+
}
|
|
46
|
+
function StatsMeetingsToJSONTyped(value, ignoreDiscriminator = false) {
|
|
47
|
+
if (value == null) {
|
|
48
|
+
return value;
|
|
49
|
+
}
|
|
50
|
+
return {
|
|
51
|
+
'total': value['total'],
|
|
52
|
+
'active': value['active'],
|
|
53
|
+
'inactive': value['inactive'],
|
|
54
|
+
'by_program': value['byProgram'],
|
|
55
|
+
'by_attendance_option': value['byAttendanceOption'],
|
|
56
|
+
'by_day': value['byDay'],
|
|
57
|
+
};
|
|
58
|
+
}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* C4R Aggregator API
|
|
3
|
+
* Aggregator for public [12-Step Meeting List](https://wordpress.org/plugins/12-step-meeting-list/) WordPress feeds. Ingests registered sources on a schedule, normalizes duplicates across feeds, and exposes a unified read API whose responses follow the [Meeting Guide API spec](https://github.com/code4recovery/spec) for drop-in client compatibility. - **Public endpoints** return Meeting Guide-shape data. `/meetings` requires at least one filter (bounding box, radius, region, source, program, day, or type) and is cursor-paginated. - **Per-source and per-region feeds** return bare JSON arrays — safe drop-in replacements for the upstream TSML endpoint. - **Admin endpoints** under `/admin/_*` require a Sanctum bearer token.
|
|
4
|
+
*
|
|
5
|
+
* The version of the OpenAPI document: 1.0.0
|
|
6
|
+
*
|
|
7
|
+
*
|
|
8
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
9
|
+
* https://openapi-generator.tech
|
|
10
|
+
* Do not edit the class manually.
|
|
11
|
+
*/
|
|
12
|
+
/**
|
|
13
|
+
* Per-program counts. When `?program=` filters the response, the breakdown is scoped to that program; otherwise it lists every registered program.
|
|
14
|
+
* @export
|
|
15
|
+
* @interface StatsProgramsBreakdownInner
|
|
16
|
+
*/
|
|
17
|
+
export interface StatsProgramsBreakdownInner {
|
|
18
|
+
/**
|
|
19
|
+
*
|
|
20
|
+
* @type {string}
|
|
21
|
+
* @memberof StatsProgramsBreakdownInner
|
|
22
|
+
*/
|
|
23
|
+
code?: string;
|
|
24
|
+
/**
|
|
25
|
+
*
|
|
26
|
+
* @type {string}
|
|
27
|
+
* @memberof StatsProgramsBreakdownInner
|
|
28
|
+
*/
|
|
29
|
+
name?: string;
|
|
30
|
+
/**
|
|
31
|
+
*
|
|
32
|
+
* @type {number}
|
|
33
|
+
* @memberof StatsProgramsBreakdownInner
|
|
34
|
+
*/
|
|
35
|
+
meetingsTotal?: number;
|
|
36
|
+
/**
|
|
37
|
+
*
|
|
38
|
+
* @type {number}
|
|
39
|
+
* @memberof StatsProgramsBreakdownInner
|
|
40
|
+
*/
|
|
41
|
+
meetingsActive?: number;
|
|
42
|
+
/**
|
|
43
|
+
*
|
|
44
|
+
* @type {number}
|
|
45
|
+
* @memberof StatsProgramsBreakdownInner
|
|
46
|
+
*/
|
|
47
|
+
sourcesTotal?: number;
|
|
48
|
+
/**
|
|
49
|
+
*
|
|
50
|
+
* @type {number}
|
|
51
|
+
* @memberof StatsProgramsBreakdownInner
|
|
52
|
+
*/
|
|
53
|
+
sourcesActive?: number;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Check if a given object implements the StatsProgramsBreakdownInner interface.
|
|
57
|
+
*/
|
|
58
|
+
export declare function instanceOfStatsProgramsBreakdownInner(value: object): value is StatsProgramsBreakdownInner;
|
|
59
|
+
export declare function StatsProgramsBreakdownInnerFromJSON(json: any): StatsProgramsBreakdownInner;
|
|
60
|
+
export declare function StatsProgramsBreakdownInnerFromJSONTyped(json: any, ignoreDiscriminator: boolean): StatsProgramsBreakdownInner;
|
|
61
|
+
export declare function StatsProgramsBreakdownInnerToJSON(json: any): StatsProgramsBreakdownInner;
|
|
62
|
+
export declare function StatsProgramsBreakdownInnerToJSONTyped(value?: StatsProgramsBreakdownInner | null, ignoreDiscriminator?: boolean): any;
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/* tslint:disable */
|
|
3
|
+
/* eslint-disable */
|
|
4
|
+
/**
|
|
5
|
+
* C4R Aggregator API
|
|
6
|
+
* Aggregator for public [12-Step Meeting List](https://wordpress.org/plugins/12-step-meeting-list/) WordPress feeds. Ingests registered sources on a schedule, normalizes duplicates across feeds, and exposes a unified read API whose responses follow the [Meeting Guide API spec](https://github.com/code4recovery/spec) for drop-in client compatibility. - **Public endpoints** return Meeting Guide-shape data. `/meetings` requires at least one filter (bounding box, radius, region, source, program, day, or type) and is cursor-paginated. - **Per-source and per-region feeds** return bare JSON arrays — safe drop-in replacements for the upstream TSML endpoint. - **Admin endpoints** under `/admin/_*` require a Sanctum bearer token.
|
|
7
|
+
*
|
|
8
|
+
* The version of the OpenAPI document: 1.0.0
|
|
9
|
+
*
|
|
10
|
+
*
|
|
11
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
12
|
+
* https://openapi-generator.tech
|
|
13
|
+
* Do not edit the class manually.
|
|
14
|
+
*/
|
|
15
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
|
+
exports.instanceOfStatsProgramsBreakdownInner = instanceOfStatsProgramsBreakdownInner;
|
|
17
|
+
exports.StatsProgramsBreakdownInnerFromJSON = StatsProgramsBreakdownInnerFromJSON;
|
|
18
|
+
exports.StatsProgramsBreakdownInnerFromJSONTyped = StatsProgramsBreakdownInnerFromJSONTyped;
|
|
19
|
+
exports.StatsProgramsBreakdownInnerToJSON = StatsProgramsBreakdownInnerToJSON;
|
|
20
|
+
exports.StatsProgramsBreakdownInnerToJSONTyped = StatsProgramsBreakdownInnerToJSONTyped;
|
|
21
|
+
/**
|
|
22
|
+
* Check if a given object implements the StatsProgramsBreakdownInner interface.
|
|
23
|
+
*/
|
|
24
|
+
function instanceOfStatsProgramsBreakdownInner(value) {
|
|
25
|
+
return true;
|
|
26
|
+
}
|
|
27
|
+
function StatsProgramsBreakdownInnerFromJSON(json) {
|
|
28
|
+
return StatsProgramsBreakdownInnerFromJSONTyped(json, false);
|
|
29
|
+
}
|
|
30
|
+
function StatsProgramsBreakdownInnerFromJSONTyped(json, ignoreDiscriminator) {
|
|
31
|
+
if (json == null) {
|
|
32
|
+
return json;
|
|
33
|
+
}
|
|
34
|
+
return {
|
|
35
|
+
'code': json['code'] == null ? undefined : json['code'],
|
|
36
|
+
'name': json['name'] == null ? undefined : json['name'],
|
|
37
|
+
'meetingsTotal': json['meetings_total'] == null ? undefined : json['meetings_total'],
|
|
38
|
+
'meetingsActive': json['meetings_active'] == null ? undefined : json['meetings_active'],
|
|
39
|
+
'sourcesTotal': json['sources_total'] == null ? undefined : json['sources_total'],
|
|
40
|
+
'sourcesActive': json['sources_active'] == null ? undefined : json['sources_active'],
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
function StatsProgramsBreakdownInnerToJSON(json) {
|
|
44
|
+
return StatsProgramsBreakdownInnerToJSONTyped(json, false);
|
|
45
|
+
}
|
|
46
|
+
function StatsProgramsBreakdownInnerToJSONTyped(value, ignoreDiscriminator = false) {
|
|
47
|
+
if (value == null) {
|
|
48
|
+
return value;
|
|
49
|
+
}
|
|
50
|
+
return {
|
|
51
|
+
'code': value['code'],
|
|
52
|
+
'name': value['name'],
|
|
53
|
+
'meetings_total': value['meetingsTotal'],
|
|
54
|
+
'meetings_active': value['meetingsActive'],
|
|
55
|
+
'sources_total': value['sourcesTotal'],
|
|
56
|
+
'sources_active': value['sourcesActive'],
|
|
57
|
+
};
|
|
58
|
+
}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* C4R Aggregator API
|
|
3
|
+
* Aggregator for public [12-Step Meeting List](https://wordpress.org/plugins/12-step-meeting-list/) WordPress feeds. Ingests registered sources on a schedule, normalizes duplicates across feeds, and exposes a unified read API whose responses follow the [Meeting Guide API spec](https://github.com/code4recovery/spec) for drop-in client compatibility. - **Public endpoints** return Meeting Guide-shape data. `/meetings` requires at least one filter (bounding box, radius, region, source, program, day, or type) and is cursor-paginated. - **Per-source and per-region feeds** return bare JSON arrays — safe drop-in replacements for the upstream TSML endpoint. - **Admin endpoints** under `/admin/_*` require a Sanctum bearer token.
|
|
4
|
+
*
|
|
5
|
+
* The version of the OpenAPI document: 1.0.0
|
|
6
|
+
*
|
|
7
|
+
*
|
|
8
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
9
|
+
* https://openapi-generator.tech
|
|
10
|
+
* Do not edit the class manually.
|
|
11
|
+
*/
|
|
12
|
+
import type { StatsSourcesTopByMeetingCountInner } from './StatsSourcesTopByMeetingCountInner';
|
|
13
|
+
/**
|
|
14
|
+
* Source-count breakdowns in Stats.
|
|
15
|
+
* @export
|
|
16
|
+
* @interface StatsSources
|
|
17
|
+
*/
|
|
18
|
+
export interface StatsSources {
|
|
19
|
+
/**
|
|
20
|
+
*
|
|
21
|
+
* @type {number}
|
|
22
|
+
* @memberof StatsSources
|
|
23
|
+
*/
|
|
24
|
+
total?: number;
|
|
25
|
+
/**
|
|
26
|
+
*
|
|
27
|
+
* @type {{ [key: string]: number; }}
|
|
28
|
+
* @memberof StatsSources
|
|
29
|
+
*/
|
|
30
|
+
byState?: {
|
|
31
|
+
[key: string]: number;
|
|
32
|
+
};
|
|
33
|
+
/**
|
|
34
|
+
*
|
|
35
|
+
* @type {Array<StatsSourcesTopByMeetingCountInner>}
|
|
36
|
+
* @memberof StatsSources
|
|
37
|
+
*/
|
|
38
|
+
topByMeetingCount?: Array<StatsSourcesTopByMeetingCountInner>;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Check if a given object implements the StatsSources interface.
|
|
42
|
+
*/
|
|
43
|
+
export declare function instanceOfStatsSources(value: object): value is StatsSources;
|
|
44
|
+
export declare function StatsSourcesFromJSON(json: any): StatsSources;
|
|
45
|
+
export declare function StatsSourcesFromJSONTyped(json: any, ignoreDiscriminator: boolean): StatsSources;
|
|
46
|
+
export declare function StatsSourcesToJSON(json: any): StatsSources;
|
|
47
|
+
export declare function StatsSourcesToJSONTyped(value?: StatsSources | null, ignoreDiscriminator?: boolean): any;
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/* tslint:disable */
|
|
3
|
+
/* eslint-disable */
|
|
4
|
+
/**
|
|
5
|
+
* C4R Aggregator API
|
|
6
|
+
* Aggregator for public [12-Step Meeting List](https://wordpress.org/plugins/12-step-meeting-list/) WordPress feeds. Ingests registered sources on a schedule, normalizes duplicates across feeds, and exposes a unified read API whose responses follow the [Meeting Guide API spec](https://github.com/code4recovery/spec) for drop-in client compatibility. - **Public endpoints** return Meeting Guide-shape data. `/meetings` requires at least one filter (bounding box, radius, region, source, program, day, or type) and is cursor-paginated. - **Per-source and per-region feeds** return bare JSON arrays — safe drop-in replacements for the upstream TSML endpoint. - **Admin endpoints** under `/admin/_*` require a Sanctum bearer token.
|
|
7
|
+
*
|
|
8
|
+
* The version of the OpenAPI document: 1.0.0
|
|
9
|
+
*
|
|
10
|
+
*
|
|
11
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
12
|
+
* https://openapi-generator.tech
|
|
13
|
+
* Do not edit the class manually.
|
|
14
|
+
*/
|
|
15
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
|
+
exports.instanceOfStatsSources = instanceOfStatsSources;
|
|
17
|
+
exports.StatsSourcesFromJSON = StatsSourcesFromJSON;
|
|
18
|
+
exports.StatsSourcesFromJSONTyped = StatsSourcesFromJSONTyped;
|
|
19
|
+
exports.StatsSourcesToJSON = StatsSourcesToJSON;
|
|
20
|
+
exports.StatsSourcesToJSONTyped = StatsSourcesToJSONTyped;
|
|
21
|
+
const StatsSourcesTopByMeetingCountInner_1 = require("./StatsSourcesTopByMeetingCountInner");
|
|
22
|
+
/**
|
|
23
|
+
* Check if a given object implements the StatsSources interface.
|
|
24
|
+
*/
|
|
25
|
+
function instanceOfStatsSources(value) {
|
|
26
|
+
return true;
|
|
27
|
+
}
|
|
28
|
+
function StatsSourcesFromJSON(json) {
|
|
29
|
+
return StatsSourcesFromJSONTyped(json, false);
|
|
30
|
+
}
|
|
31
|
+
function StatsSourcesFromJSONTyped(json, ignoreDiscriminator) {
|
|
32
|
+
if (json == null) {
|
|
33
|
+
return json;
|
|
34
|
+
}
|
|
35
|
+
return {
|
|
36
|
+
'total': json['total'] == null ? undefined : json['total'],
|
|
37
|
+
'byState': json['by_state'] == null ? undefined : json['by_state'],
|
|
38
|
+
'topByMeetingCount': json['top_by_meeting_count'] == null ? undefined : (json['top_by_meeting_count'].map(StatsSourcesTopByMeetingCountInner_1.StatsSourcesTopByMeetingCountInnerFromJSON)),
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
function StatsSourcesToJSON(json) {
|
|
42
|
+
return StatsSourcesToJSONTyped(json, false);
|
|
43
|
+
}
|
|
44
|
+
function StatsSourcesToJSONTyped(value, ignoreDiscriminator = false) {
|
|
45
|
+
if (value == null) {
|
|
46
|
+
return value;
|
|
47
|
+
}
|
|
48
|
+
return {
|
|
49
|
+
'total': value['total'],
|
|
50
|
+
'by_state': value['byState'],
|
|
51
|
+
'top_by_meeting_count': value['topByMeetingCount'] == null ? undefined : (value['topByMeetingCount'].map(StatsSourcesTopByMeetingCountInner_1.StatsSourcesTopByMeetingCountInnerToJSON)),
|
|
52
|
+
};
|
|
53
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* C4R Aggregator API
|
|
3
|
+
* Aggregator for public [12-Step Meeting List](https://wordpress.org/plugins/12-step-meeting-list/) WordPress feeds. Ingests registered sources on a schedule, normalizes duplicates across feeds, and exposes a unified read API whose responses follow the [Meeting Guide API spec](https://github.com/code4recovery/spec) for drop-in client compatibility. - **Public endpoints** return Meeting Guide-shape data. `/meetings` requires at least one filter (bounding box, radius, region, source, program, day, or type) and is cursor-paginated. - **Per-source and per-region feeds** return bare JSON arrays — safe drop-in replacements for the upstream TSML endpoint. - **Admin endpoints** under `/admin/_*` require a Sanctum bearer token.
|
|
4
|
+
*
|
|
5
|
+
* The version of the OpenAPI document: 1.0.0
|
|
6
|
+
*
|
|
7
|
+
*
|
|
8
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
9
|
+
* https://openapi-generator.tech
|
|
10
|
+
* Do not edit the class manually.
|
|
11
|
+
*/
|
|
12
|
+
/**
|
|
13
|
+
* Entry in Stats.sources.top_by_meeting_count[].
|
|
14
|
+
* @export
|
|
15
|
+
* @interface StatsSourcesTopByMeetingCountInner
|
|
16
|
+
*/
|
|
17
|
+
export interface StatsSourcesTopByMeetingCountInner {
|
|
18
|
+
/**
|
|
19
|
+
*
|
|
20
|
+
* @type {number}
|
|
21
|
+
* @memberof StatsSourcesTopByMeetingCountInner
|
|
22
|
+
*/
|
|
23
|
+
id?: number;
|
|
24
|
+
/**
|
|
25
|
+
*
|
|
26
|
+
* @type {string}
|
|
27
|
+
* @memberof StatsSourcesTopByMeetingCountInner
|
|
28
|
+
*/
|
|
29
|
+
name?: string;
|
|
30
|
+
/**
|
|
31
|
+
*
|
|
32
|
+
* @type {number}
|
|
33
|
+
* @memberof StatsSourcesTopByMeetingCountInner
|
|
34
|
+
*/
|
|
35
|
+
meetingCount?: number;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Check if a given object implements the StatsSourcesTopByMeetingCountInner interface.
|
|
39
|
+
*/
|
|
40
|
+
export declare function instanceOfStatsSourcesTopByMeetingCountInner(value: object): value is StatsSourcesTopByMeetingCountInner;
|
|
41
|
+
export declare function StatsSourcesTopByMeetingCountInnerFromJSON(json: any): StatsSourcesTopByMeetingCountInner;
|
|
42
|
+
export declare function StatsSourcesTopByMeetingCountInnerFromJSONTyped(json: any, ignoreDiscriminator: boolean): StatsSourcesTopByMeetingCountInner;
|
|
43
|
+
export declare function StatsSourcesTopByMeetingCountInnerToJSON(json: any): StatsSourcesTopByMeetingCountInner;
|
|
44
|
+
export declare function StatsSourcesTopByMeetingCountInnerToJSONTyped(value?: StatsSourcesTopByMeetingCountInner | null, ignoreDiscriminator?: boolean): any;
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/* tslint:disable */
|
|
3
|
+
/* eslint-disable */
|
|
4
|
+
/**
|
|
5
|
+
* C4R Aggregator API
|
|
6
|
+
* Aggregator for public [12-Step Meeting List](https://wordpress.org/plugins/12-step-meeting-list/) WordPress feeds. Ingests registered sources on a schedule, normalizes duplicates across feeds, and exposes a unified read API whose responses follow the [Meeting Guide API spec](https://github.com/code4recovery/spec) for drop-in client compatibility. - **Public endpoints** return Meeting Guide-shape data. `/meetings` requires at least one filter (bounding box, radius, region, source, program, day, or type) and is cursor-paginated. - **Per-source and per-region feeds** return bare JSON arrays — safe drop-in replacements for the upstream TSML endpoint. - **Admin endpoints** under `/admin/_*` require a Sanctum bearer token.
|
|
7
|
+
*
|
|
8
|
+
* The version of the OpenAPI document: 1.0.0
|
|
9
|
+
*
|
|
10
|
+
*
|
|
11
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
12
|
+
* https://openapi-generator.tech
|
|
13
|
+
* Do not edit the class manually.
|
|
14
|
+
*/
|
|
15
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
|
+
exports.instanceOfStatsSourcesTopByMeetingCountInner = instanceOfStatsSourcesTopByMeetingCountInner;
|
|
17
|
+
exports.StatsSourcesTopByMeetingCountInnerFromJSON = StatsSourcesTopByMeetingCountInnerFromJSON;
|
|
18
|
+
exports.StatsSourcesTopByMeetingCountInnerFromJSONTyped = StatsSourcesTopByMeetingCountInnerFromJSONTyped;
|
|
19
|
+
exports.StatsSourcesTopByMeetingCountInnerToJSON = StatsSourcesTopByMeetingCountInnerToJSON;
|
|
20
|
+
exports.StatsSourcesTopByMeetingCountInnerToJSONTyped = StatsSourcesTopByMeetingCountInnerToJSONTyped;
|
|
21
|
+
/**
|
|
22
|
+
* Check if a given object implements the StatsSourcesTopByMeetingCountInner interface.
|
|
23
|
+
*/
|
|
24
|
+
function instanceOfStatsSourcesTopByMeetingCountInner(value) {
|
|
25
|
+
return true;
|
|
26
|
+
}
|
|
27
|
+
function StatsSourcesTopByMeetingCountInnerFromJSON(json) {
|
|
28
|
+
return StatsSourcesTopByMeetingCountInnerFromJSONTyped(json, false);
|
|
29
|
+
}
|
|
30
|
+
function StatsSourcesTopByMeetingCountInnerFromJSONTyped(json, ignoreDiscriminator) {
|
|
31
|
+
if (json == null) {
|
|
32
|
+
return json;
|
|
33
|
+
}
|
|
34
|
+
return {
|
|
35
|
+
'id': json['id'] == null ? undefined : json['id'],
|
|
36
|
+
'name': json['name'] == null ? undefined : json['name'],
|
|
37
|
+
'meetingCount': json['meeting_count'] == null ? undefined : json['meeting_count'],
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
function StatsSourcesTopByMeetingCountInnerToJSON(json) {
|
|
41
|
+
return StatsSourcesTopByMeetingCountInnerToJSONTyped(json, false);
|
|
42
|
+
}
|
|
43
|
+
function StatsSourcesTopByMeetingCountInnerToJSONTyped(value, ignoreDiscriminator = false) {
|
|
44
|
+
if (value == null) {
|
|
45
|
+
return value;
|
|
46
|
+
}
|
|
47
|
+
return {
|
|
48
|
+
'id': value['id'],
|
|
49
|
+
'name': value['name'],
|
|
50
|
+
'meeting_count': value['meetingCount'],
|
|
51
|
+
};
|
|
52
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* C4R Aggregator API
|
|
3
|
+
* Aggregator for public [12-Step Meeting List](https://wordpress.org/plugins/12-step-meeting-list/) WordPress feeds. Ingests registered sources on a schedule, normalizes duplicates across feeds, and exposes a unified read API whose responses follow the [Meeting Guide API spec](https://github.com/code4recovery/spec) for drop-in client compatibility. - **Public endpoints** return Meeting Guide-shape data. `/meetings` requires at least one filter (bounding box, radius, region, source, program, day, or type) and is cursor-paginated. - **Per-source and per-region feeds** return bare JSON arrays — safe drop-in replacements for the upstream TSML endpoint. - **Admin endpoints** under `/admin/_*` require a Sanctum bearer token.
|
|
4
|
+
*
|
|
5
|
+
* The version of the OpenAPI document: 1.0.0
|
|
6
|
+
*
|
|
7
|
+
*
|
|
8
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
9
|
+
* https://openapi-generator.tech
|
|
10
|
+
* Do not edit the class manually.
|
|
11
|
+
*/
|
|
12
|
+
import type { FeedValidationError } from './FeedValidationError';
|
|
13
|
+
import type { ValidationError } from './ValidationError';
|
|
14
|
+
/**
|
|
15
|
+
* @type StoreSourceValidationError
|
|
16
|
+
* Either a feed-validation error (upstream unreachable / wrong shape) or a standard request-validation error.
|
|
17
|
+
* @export
|
|
18
|
+
*/
|
|
19
|
+
export type StoreSourceValidationError = FeedValidationError | ValidationError;
|
|
20
|
+
export declare function StoreSourceValidationErrorFromJSON(json: any): StoreSourceValidationError;
|
|
21
|
+
export declare function StoreSourceValidationErrorFromJSONTyped(json: any, ignoreDiscriminator: boolean): StoreSourceValidationError;
|
|
22
|
+
export declare function StoreSourceValidationErrorToJSON(json: any): any;
|
|
23
|
+
export declare function StoreSourceValidationErrorToJSONTyped(value?: StoreSourceValidationError | null, ignoreDiscriminator?: boolean): any;
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/* tslint:disable */
|
|
3
|
+
/* eslint-disable */
|
|
4
|
+
/**
|
|
5
|
+
* C4R Aggregator API
|
|
6
|
+
* Aggregator for public [12-Step Meeting List](https://wordpress.org/plugins/12-step-meeting-list/) WordPress feeds. Ingests registered sources on a schedule, normalizes duplicates across feeds, and exposes a unified read API whose responses follow the [Meeting Guide API spec](https://github.com/code4recovery/spec) for drop-in client compatibility. - **Public endpoints** return Meeting Guide-shape data. `/meetings` requires at least one filter (bounding box, radius, region, source, program, day, or type) and is cursor-paginated. - **Per-source and per-region feeds** return bare JSON arrays — safe drop-in replacements for the upstream TSML endpoint. - **Admin endpoints** under `/admin/_*` require a Sanctum bearer token.
|
|
7
|
+
*
|
|
8
|
+
* The version of the OpenAPI document: 1.0.0
|
|
9
|
+
*
|
|
10
|
+
*
|
|
11
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
12
|
+
* https://openapi-generator.tech
|
|
13
|
+
* Do not edit the class manually.
|
|
14
|
+
*/
|
|
15
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
|
+
exports.StoreSourceValidationErrorFromJSON = StoreSourceValidationErrorFromJSON;
|
|
17
|
+
exports.StoreSourceValidationErrorFromJSONTyped = StoreSourceValidationErrorFromJSONTyped;
|
|
18
|
+
exports.StoreSourceValidationErrorToJSON = StoreSourceValidationErrorToJSON;
|
|
19
|
+
exports.StoreSourceValidationErrorToJSONTyped = StoreSourceValidationErrorToJSONTyped;
|
|
20
|
+
const FeedValidationError_1 = require("./FeedValidationError");
|
|
21
|
+
const ValidationError_1 = require("./ValidationError");
|
|
22
|
+
function StoreSourceValidationErrorFromJSON(json) {
|
|
23
|
+
return StoreSourceValidationErrorFromJSONTyped(json, false);
|
|
24
|
+
}
|
|
25
|
+
function StoreSourceValidationErrorFromJSONTyped(json, ignoreDiscriminator) {
|
|
26
|
+
if (json == null) {
|
|
27
|
+
return json;
|
|
28
|
+
}
|
|
29
|
+
if (typeof json !== 'object') {
|
|
30
|
+
return json;
|
|
31
|
+
}
|
|
32
|
+
if ((0, FeedValidationError_1.instanceOfFeedValidationError)(json)) {
|
|
33
|
+
return (0, FeedValidationError_1.FeedValidationErrorFromJSONTyped)(json, true);
|
|
34
|
+
}
|
|
35
|
+
if ((0, ValidationError_1.instanceOfValidationError)(json)) {
|
|
36
|
+
return (0, ValidationError_1.ValidationErrorFromJSONTyped)(json, true);
|
|
37
|
+
}
|
|
38
|
+
return {};
|
|
39
|
+
}
|
|
40
|
+
function StoreSourceValidationErrorToJSON(json) {
|
|
41
|
+
return StoreSourceValidationErrorToJSONTyped(json, false);
|
|
42
|
+
}
|
|
43
|
+
function StoreSourceValidationErrorToJSONTyped(value, ignoreDiscriminator = false) {
|
|
44
|
+
if (value == null) {
|
|
45
|
+
return value;
|
|
46
|
+
}
|
|
47
|
+
if (typeof value !== 'object') {
|
|
48
|
+
return value;
|
|
49
|
+
}
|
|
50
|
+
if ((0, FeedValidationError_1.instanceOfFeedValidationError)(value)) {
|
|
51
|
+
return (0, FeedValidationError_1.FeedValidationErrorToJSON)(value);
|
|
52
|
+
}
|
|
53
|
+
if ((0, ValidationError_1.instanceOfValidationError)(value)) {
|
|
54
|
+
return (0, ValidationError_1.ValidationErrorToJSON)(value);
|
|
55
|
+
}
|
|
56
|
+
return {};
|
|
57
|
+
}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* C4R Aggregator API
|
|
3
|
+
* Aggregator for public [12-Step Meeting List](https://wordpress.org/plugins/12-step-meeting-list/) WordPress feeds. Ingests registered sources on a schedule, normalizes duplicates across feeds, and exposes a unified read API whose responses follow the [Meeting Guide API spec](https://github.com/code4recovery/spec) for drop-in client compatibility. - **Public endpoints** return Meeting Guide-shape data. `/meetings` requires at least one filter (bounding box, radius, region, source, program, day, or type) and is cursor-paginated. - **Per-source and per-region feeds** return bare JSON arrays — safe drop-in replacements for the upstream TSML endpoint. - **Admin endpoints** under `/admin/_*` require a Sanctum bearer token.
|
|
4
|
+
*
|
|
5
|
+
* The version of the OpenAPI document: 1.0.0
|
|
6
|
+
*
|
|
7
|
+
*
|
|
8
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
9
|
+
* https://openapi-generator.tech
|
|
10
|
+
* Do not edit the class manually.
|
|
11
|
+
*/
|
|
12
|
+
/**
|
|
13
|
+
*
|
|
14
|
+
* @export
|
|
15
|
+
* @interface UpdateSourceRequest
|
|
16
|
+
*/
|
|
17
|
+
export interface UpdateSourceRequest {
|
|
18
|
+
/**
|
|
19
|
+
*
|
|
20
|
+
* @type {string}
|
|
21
|
+
* @memberof UpdateSourceRequest
|
|
22
|
+
*/
|
|
23
|
+
name?: string;
|
|
24
|
+
/**
|
|
25
|
+
*
|
|
26
|
+
* @type {string}
|
|
27
|
+
* @memberof UpdateSourceRequest
|
|
28
|
+
*/
|
|
29
|
+
feedUrl?: string;
|
|
30
|
+
/**
|
|
31
|
+
*
|
|
32
|
+
* @type {UpdateSourceRequestFeedKindEnum}
|
|
33
|
+
* @memberof UpdateSourceRequest
|
|
34
|
+
*/
|
|
35
|
+
feedKind?: UpdateSourceRequestFeedKindEnum;
|
|
36
|
+
/**
|
|
37
|
+
*
|
|
38
|
+
* @type {string}
|
|
39
|
+
* @memberof UpdateSourceRequest
|
|
40
|
+
*/
|
|
41
|
+
sharingKey?: string | null;
|
|
42
|
+
/**
|
|
43
|
+
*
|
|
44
|
+
* @type {number}
|
|
45
|
+
* @memberof UpdateSourceRequest
|
|
46
|
+
*/
|
|
47
|
+
fetchIntervalMinutes?: number;
|
|
48
|
+
/**
|
|
49
|
+
*
|
|
50
|
+
* @type {string}
|
|
51
|
+
* @memberof UpdateSourceRequest
|
|
52
|
+
*/
|
|
53
|
+
notificationWebhookUrl?: string | null;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* @export
|
|
57
|
+
*/
|
|
58
|
+
export declare const UpdateSourceRequestFeedKindEnum: {
|
|
59
|
+
readonly TsmlJson: "tsml_json";
|
|
60
|
+
readonly GoogleSheet: "google_sheet";
|
|
61
|
+
};
|
|
62
|
+
export type UpdateSourceRequestFeedKindEnum = typeof UpdateSourceRequestFeedKindEnum[keyof typeof UpdateSourceRequestFeedKindEnum];
|
|
63
|
+
/**
|
|
64
|
+
* Check if a given object implements the UpdateSourceRequest interface.
|
|
65
|
+
*/
|
|
66
|
+
export declare function instanceOfUpdateSourceRequest(value: object): value is UpdateSourceRequest;
|
|
67
|
+
export declare function UpdateSourceRequestFromJSON(json: any): UpdateSourceRequest;
|
|
68
|
+
export declare function UpdateSourceRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): UpdateSourceRequest;
|
|
69
|
+
export declare function UpdateSourceRequestToJSON(json: any): UpdateSourceRequest;
|
|
70
|
+
export declare function UpdateSourceRequestToJSONTyped(value?: UpdateSourceRequest | null, ignoreDiscriminator?: boolean): any;
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/* tslint:disable */
|
|
3
|
+
/* eslint-disable */
|
|
4
|
+
/**
|
|
5
|
+
* C4R Aggregator API
|
|
6
|
+
* Aggregator for public [12-Step Meeting List](https://wordpress.org/plugins/12-step-meeting-list/) WordPress feeds. Ingests registered sources on a schedule, normalizes duplicates across feeds, and exposes a unified read API whose responses follow the [Meeting Guide API spec](https://github.com/code4recovery/spec) for drop-in client compatibility. - **Public endpoints** return Meeting Guide-shape data. `/meetings` requires at least one filter (bounding box, radius, region, source, program, day, or type) and is cursor-paginated. - **Per-source and per-region feeds** return bare JSON arrays — safe drop-in replacements for the upstream TSML endpoint. - **Admin endpoints** under `/admin/_*` require a Sanctum bearer token.
|
|
7
|
+
*
|
|
8
|
+
* The version of the OpenAPI document: 1.0.0
|
|
9
|
+
*
|
|
10
|
+
*
|
|
11
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
12
|
+
* https://openapi-generator.tech
|
|
13
|
+
* Do not edit the class manually.
|
|
14
|
+
*/
|
|
15
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
|
+
exports.UpdateSourceRequestFeedKindEnum = void 0;
|
|
17
|
+
exports.instanceOfUpdateSourceRequest = instanceOfUpdateSourceRequest;
|
|
18
|
+
exports.UpdateSourceRequestFromJSON = UpdateSourceRequestFromJSON;
|
|
19
|
+
exports.UpdateSourceRequestFromJSONTyped = UpdateSourceRequestFromJSONTyped;
|
|
20
|
+
exports.UpdateSourceRequestToJSON = UpdateSourceRequestToJSON;
|
|
21
|
+
exports.UpdateSourceRequestToJSONTyped = UpdateSourceRequestToJSONTyped;
|
|
22
|
+
/**
|
|
23
|
+
* @export
|
|
24
|
+
*/
|
|
25
|
+
exports.UpdateSourceRequestFeedKindEnum = {
|
|
26
|
+
TsmlJson: 'tsml_json',
|
|
27
|
+
GoogleSheet: 'google_sheet'
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* Check if a given object implements the UpdateSourceRequest interface.
|
|
31
|
+
*/
|
|
32
|
+
function instanceOfUpdateSourceRequest(value) {
|
|
33
|
+
return true;
|
|
34
|
+
}
|
|
35
|
+
function UpdateSourceRequestFromJSON(json) {
|
|
36
|
+
return UpdateSourceRequestFromJSONTyped(json, false);
|
|
37
|
+
}
|
|
38
|
+
function UpdateSourceRequestFromJSONTyped(json, ignoreDiscriminator) {
|
|
39
|
+
if (json == null) {
|
|
40
|
+
return json;
|
|
41
|
+
}
|
|
42
|
+
return {
|
|
43
|
+
'name': json['name'] == null ? undefined : json['name'],
|
|
44
|
+
'feedUrl': json['feed_url'] == null ? undefined : json['feed_url'],
|
|
45
|
+
'feedKind': json['feed_kind'] == null ? undefined : json['feed_kind'],
|
|
46
|
+
'sharingKey': json['sharing_key'] == null ? undefined : json['sharing_key'],
|
|
47
|
+
'fetchIntervalMinutes': json['fetch_interval_minutes'] == null ? undefined : json['fetch_interval_minutes'],
|
|
48
|
+
'notificationWebhookUrl': json['notification_webhook_url'] == null ? undefined : json['notification_webhook_url'],
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
function UpdateSourceRequestToJSON(json) {
|
|
52
|
+
return UpdateSourceRequestToJSONTyped(json, false);
|
|
53
|
+
}
|
|
54
|
+
function UpdateSourceRequestToJSONTyped(value, ignoreDiscriminator = false) {
|
|
55
|
+
if (value == null) {
|
|
56
|
+
return value;
|
|
57
|
+
}
|
|
58
|
+
return {
|
|
59
|
+
'name': value['name'],
|
|
60
|
+
'feed_url': value['feedUrl'],
|
|
61
|
+
'feed_kind': value['feedKind'],
|
|
62
|
+
'sharing_key': value['sharingKey'],
|
|
63
|
+
'fetch_interval_minutes': value['fetchIntervalMinutes'],
|
|
64
|
+
'notification_webhook_url': value['notificationWebhookUrl'],
|
|
65
|
+
};
|
|
66
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* C4R Aggregator API
|
|
3
|
+
* Aggregator for public [12-Step Meeting List](https://wordpress.org/plugins/12-step-meeting-list/) WordPress feeds. Ingests registered sources on a schedule, normalizes duplicates across feeds, and exposes a unified read API whose responses follow the [Meeting Guide API spec](https://github.com/code4recovery/spec) for drop-in client compatibility. - **Public endpoints** return Meeting Guide-shape data. `/meetings` requires at least one filter (bounding box, radius, region, source, program, day, or type) and is cursor-paginated. - **Per-source and per-region feeds** return bare JSON arrays — safe drop-in replacements for the upstream TSML endpoint. - **Admin endpoints** under `/admin/_*` require a Sanctum bearer token.
|
|
4
|
+
*
|
|
5
|
+
* The version of the OpenAPI document: 1.0.0
|
|
6
|
+
*
|
|
7
|
+
*
|
|
8
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
9
|
+
* https://openapi-generator.tech
|
|
10
|
+
* Do not edit the class manually.
|
|
11
|
+
*/
|
|
12
|
+
/**
|
|
13
|
+
*
|
|
14
|
+
* @export
|
|
15
|
+
* @interface ValidationError
|
|
16
|
+
*/
|
|
17
|
+
export interface ValidationError {
|
|
18
|
+
/**
|
|
19
|
+
*
|
|
20
|
+
* @type {string}
|
|
21
|
+
* @memberof ValidationError
|
|
22
|
+
*/
|
|
23
|
+
message?: string;
|
|
24
|
+
/**
|
|
25
|
+
*
|
|
26
|
+
* @type {{ [key: string]: Array<string>; }}
|
|
27
|
+
* @memberof ValidationError
|
|
28
|
+
*/
|
|
29
|
+
errors?: {
|
|
30
|
+
[key: string]: Array<string>;
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Check if a given object implements the ValidationError interface.
|
|
35
|
+
*/
|
|
36
|
+
export declare function instanceOfValidationError(value: object): value is ValidationError;
|
|
37
|
+
export declare function ValidationErrorFromJSON(json: any): ValidationError;
|
|
38
|
+
export declare function ValidationErrorFromJSONTyped(json: any, ignoreDiscriminator: boolean): ValidationError;
|
|
39
|
+
export declare function ValidationErrorToJSON(json: any): ValidationError;
|
|
40
|
+
export declare function ValidationErrorToJSONTyped(value?: ValidationError | null, ignoreDiscriminator?: boolean): any;
|