@golemio/pid 5.15.4-dev.2620046518 → 5.15.4-dev.2625967696
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/db/migrations/postgresql/20260624101205-ropidgtfs_performance_indexes.js +16 -0
- package/db/migrations/postgresql/sqls/20260624101205-ropidgtfs_performance_indexes-down.sql +7 -0
- package/db/migrations/postgresql/sqls/20260624101205-ropidgtfs_performance_indexes-up.sql +17 -0
- package/dist/integration-engine/ropid-gtfs/data-access/precomputed/DeparturesRepository.js +42 -40
- package/dist/integration-engine/ropid-gtfs/data-access/precomputed/DeparturesRepository.js.map +1 -1
- package/dist/output-gateway/pid/data-access/RopidDeparturesPresetRepository.js +1 -1
- package/dist/output-gateway/pid/data-access/RopidDeparturesPresetRepository.js.map +1 -1
- package/dist/output-gateway/pid/domain/DeparturesPresetInterfaces.d.ts +1 -0
- package/dist/output-gateway/pid/service/transformations/RopidDeparturesPresetTransformation.js +1 -1
- package/dist/output-gateway/pid/service/transformations/RopidDeparturesPresetTransformation.js.map +1 -1
- package/docs/openapi-output.yaml +4 -0
- package/package.json +1 -1
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const fs = require('fs/promises');
|
|
4
|
+
const path = require('path');
|
|
5
|
+
|
|
6
|
+
const runSql = (db, name) =>
|
|
7
|
+
fs.readFile(path.join(__dirname, 'sqls', name), 'utf-8').then((sql) => {
|
|
8
|
+
console.log('received data: ' + sql);
|
|
9
|
+
return db.runSql(sql);
|
|
10
|
+
});
|
|
11
|
+
|
|
12
|
+
exports.up = (db) => runSql(db, '20260624101205-ropidgtfs_performance_indexes-up.sql');
|
|
13
|
+
|
|
14
|
+
exports.down = (db) => runSql(db, '20260624101205-ropidgtfs_performance_indexes-down.sql');
|
|
15
|
+
|
|
16
|
+
exports._meta = { version: 1 };
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
DROP INDEX IF EXISTS pid.ropidgtfs_trips_block_perf_idx;
|
|
2
|
+
DROP INDEX IF EXISTS pid.ropidgtfs_calendar_service_first_perf_idx;
|
|
3
|
+
DROP INDEX IF EXISTS pid.ropidgtfs_routes_perf_idx;
|
|
4
|
+
|
|
5
|
+
DROP INDEX IF EXISTS pid.ropidgtfs_trips_actual_block_perf_idx;
|
|
6
|
+
DROP INDEX IF EXISTS pid.ropidgtfs_calendar_actual_service_first_perf_idx;
|
|
7
|
+
DROP INDEX IF EXISTS pid.ropidgtfs_routes_actual_perf_idx;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
CREATE INDEX IF NOT EXISTS ropidgtfs_trips_block_perf_idx
|
|
2
|
+
ON pid.ropidgtfs_trips ("block_id", "service_id", "route_id", "trip_id");
|
|
3
|
+
|
|
4
|
+
CREATE INDEX IF NOT EXISTS ropidgtfs_calendar_service_first_perf_idx
|
|
5
|
+
ON pid.ropidgtfs_precomputed_services_calendar ("service_id", "date");
|
|
6
|
+
|
|
7
|
+
CREATE INDEX IF NOT EXISTS ropidgtfs_routes_perf_idx
|
|
8
|
+
ON pid.ropidgtfs_routes ("route_id") INCLUDE ("route_short_name", "route_type");
|
|
9
|
+
|
|
10
|
+
CREATE INDEX IF NOT EXISTS ropidgtfs_trips_actual_block_perf_idx
|
|
11
|
+
ON pid.ropidgtfs_trips_actual ("block_id", "service_id", "route_id", "trip_id");
|
|
12
|
+
|
|
13
|
+
CREATE INDEX IF NOT EXISTS ropidgtfs_calendar_actual_service_first_perf_idx
|
|
14
|
+
ON pid.ropidgtfs_precomputed_services_calendar_actual ("service_id", "date");
|
|
15
|
+
|
|
16
|
+
CREATE INDEX IF NOT EXISTS ropidgtfs_routes_actual_perf_idx
|
|
17
|
+
ON pid.ropidgtfs_routes_actual ("route_id") INCLUDE ("route_short_name", "route_type");
|
|
@@ -35,6 +35,8 @@ let DeparturesRepository = class DeparturesRepository extends models_1.PostgresM
|
|
|
35
35
|
this.config = config;
|
|
36
36
|
this.logger = logger;
|
|
37
37
|
this.createAndPopulate = async (sourceTableSuffix) => {
|
|
38
|
+
const tableName = precomputed_1.DeparturesModel.TABLE_NAME;
|
|
39
|
+
const tmpTableName = tableName + SourceTableSuffixEnum_1.SourceTableSuffixEnum.Tmp;
|
|
38
40
|
const nodeEnv = this.config.getValue("env.NODE_ENV", "development");
|
|
39
41
|
const timeConstraintLiteral = nodeEnv !== "test" ? `WHERE gtfs_timestamp(t.arrival_time, t4.date) > now() - interval '6 hours'` : "";
|
|
40
42
|
/* eslint-disable max-len */
|
|
@@ -66,19 +68,19 @@ let DeparturesRepository = class DeparturesRepository extends models_1.PostgresM
|
|
|
66
68
|
t5.is_night,
|
|
67
69
|
t5.is_regional,
|
|
68
70
|
t5.is_substitute_transport,
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
71
|
+
LEAD(t.stop_sequence) OVER(PARTITION BY t.trip_id, t4.date ORDER BY t.stop_sequence) AS next_stop_sequence,
|
|
72
|
+
LEAD(t.stop_id) OVER(PARTITION BY t.trip_id, t4.date ORDER BY t.stop_sequence) AS next_stop_id,
|
|
73
|
+
LAG(t.stop_sequence) OVER(PARTITION BY t.trip_id, t4.date ORDER BY t.stop_sequence) AS last_stop_sequence,
|
|
74
|
+
LAG(t.stop_id) OVER(PARTITION BY t.trip_id, t4.date ORDER BY t.stop_sequence) AS last_stop_id,
|
|
73
75
|
cis_stop.cis AS cis_stop_group_id,
|
|
74
|
-
CASE
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
76
|
+
CASE
|
|
77
|
+
WHEN t.stop_headsign IS NOT NULL THEN t.headsign_icons
|
|
78
|
+
ELSE t2.headsign_icons
|
|
79
|
+
END AS trip_headsign_icons,
|
|
78
80
|
t8."connections" AS trip_connections,
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
81
|
+
nbt.next_route_short_name AS next_route_short_name,
|
|
82
|
+
nbt.next_trip_headsign AS next_trip_headsign,
|
|
83
|
+
MAX(CASE WHEN t.stop_headsign IS NOT NULL THEN t.stop_sequence END) OVER(PARTITION BY t.trip_id, t4.date) AS max_stop_sequence_with_stop_headsign,
|
|
82
84
|
t2.direction_id
|
|
83
85
|
FROM ropidgtfs_stop_times${sourceTableSuffix} t
|
|
84
86
|
LEFT JOIN ropidgtfs_trips${sourceTableSuffix} t2 ON t.trip_id = t2.trip_id
|
|
@@ -87,41 +89,41 @@ let DeparturesRepository = class DeparturesRepository extends models_1.PostgresM
|
|
|
87
89
|
LEFT JOIN ropidgtfs_calendar${sourceTableSuffix} t3 ON t2.service_id = t3.service_id
|
|
88
90
|
LEFT JOIN ropidgtfs_stops${sourceTableSuffix} t0 ON t.stop_id = t0.stop_id
|
|
89
91
|
LEFT JOIN ropidgtfs_routes${sourceTableSuffix} t5 ON t2.route_id = t5.route_id
|
|
90
|
-
LEFT JOIN ropidgtfs_stop_times${sourceTableSuffix} t6 ON t.trip_id = t6.trip_id AND t6.stop_sequence = t.stop_sequence + 1
|
|
91
|
-
LEFT JOIN ropidgtfs_stop_times${sourceTableSuffix} t7 ON t.trip_id = t7.trip_id AND t7.stop_sequence = t.stop_sequence - 1
|
|
92
92
|
LEFT JOIN ropidgtfs_cis_stops cis_stop ON cis_stop.id = t0.computed_cis_stop_id
|
|
93
93
|
LEFT JOIN ropidgtfs_precomputed_trip_connections_tmp t8 ON t8.to_trip_id = t2.trip_id AND t8.to_stop_id = t.stop_id
|
|
94
|
-
|
|
94
|
+
-- fully self-contained next_block_trips engine
|
|
95
|
+
LEFT JOIN (
|
|
95
96
|
SELECT
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
AND
|
|
119
|
-
|
|
97
|
+
sub_window.trip_id,
|
|
98
|
+
sub_window.date,
|
|
99
|
+
LEAD(sub_window.trip_headsign) OVER (
|
|
100
|
+
PARTITION BY sub_window.block_id, sub_window.service_id, sub_window.date
|
|
101
|
+
ORDER BY sub_window.start_timestamp ASC
|
|
102
|
+
) AS next_trip_headsign,
|
|
103
|
+
LEAD(r_next.route_short_name) OVER (
|
|
104
|
+
PARTITION BY sub_window.block_id, sub_window.service_id, sub_window.date
|
|
105
|
+
ORDER BY sub_window.start_timestamp ASC
|
|
106
|
+
) AS next_route_short_name
|
|
107
|
+
FROM (
|
|
108
|
+
SELECT
|
|
109
|
+
t2_sub.trip_id,
|
|
110
|
+
t4_sub.date,
|
|
111
|
+
t2_sub.block_id,
|
|
112
|
+
t2_sub.service_id,
|
|
113
|
+
t2_sub.trip_headsign,
|
|
114
|
+
t2_sub.route_id,
|
|
115
|
+
gtfs_timestamp(st_start.departure_time, t4_sub.date) AS start_timestamp
|
|
116
|
+
FROM ropidgtfs_trips${sourceTableSuffix} t2_sub
|
|
117
|
+
INNER JOIN ropidgtfs_precomputed_services_calendar_tmp t4_sub ON t2_sub.service_id = t4_sub.service_id
|
|
118
|
+
INNER JOIN ropidgtfs_precomputed_minmax_stop_sequences_tmp m ON t2_sub.trip_id = m.trip_id
|
|
119
|
+
INNER JOIN ropidgtfs_stop_times${sourceTableSuffix} st_start ON t2_sub.trip_id = st_start.trip_id AND st_start.stop_sequence = m.min_stop_sequence
|
|
120
|
+
WHERE t2_sub.block_id IS NOT NULL
|
|
121
|
+
) sub_window
|
|
122
|
+
LEFT JOIN ropidgtfs_routes${sourceTableSuffix} r_next ON sub_window.route_id = r_next.route_id
|
|
123
|
+
) nbt ON nbt.trip_id = t2.trip_id AND nbt.date = t4.date
|
|
120
124
|
${timeConstraintLiteral}`;
|
|
121
125
|
/* eslint-enable max-len */
|
|
122
126
|
try {
|
|
123
|
-
const tableName = precomputed_1.DeparturesModel.TABLE_NAME;
|
|
124
|
-
const tmpTableName = tableName + SourceTableSuffixEnum_1.SourceTableSuffixEnum.Tmp;
|
|
125
127
|
await this.sequelizeModel.sequelize.query(`
|
|
126
128
|
SET LOCAL search_path TO ${const_1.PG_SCHEMA};
|
|
127
129
|
DROP TABLE IF EXISTS ${tmpTableName};
|
package/dist/integration-engine/ropid-gtfs/data-access/precomputed/DeparturesRepository.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DeparturesRepository.js","sourceRoot":"","sources":["../../../../../src/integration-engine/ropid-gtfs/data-access/precomputed/DeparturesRepository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,uEAA4D;AAG5D,gEAAuC;AAEvC,8FAAqE;AAErE,wEAAqE;AAErE,yEAAqF;AACrF,6EAAwE;AACxE,mFAAkF;AAClF,mEAAiF;AACjF,iEAAwE;AACxE,+EAA4E;AAGrE,IAAM,oBAAoB,GAA1B,MAAM,oBAAqB,SAAQ,sBAAa;IACnD,YACoC,MAA6B,EACnC,MAAuB;QAEjD,KAAK,CACD,sBAAsB,EACtB;YACI,WAAW,EAAE,6BAAe,CAAC,UAAU;YACvC,QAAQ,EAAE,iBAAS;YACnB,yBAAyB,EAAE,6BAAe,CAAC,cAAc;YACzD,kBAAkB,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,YAAY,CAAC;YACtD,UAAU,EAAE,YAAY;SAC3B,EACD,IAAI,uCAAmB,CAAC,sBAAsB,EAAE,6BAAe,CAAC,UAAU,CAAC,CAC9E,CAAC;QAbsC,WAAM,GAAN,MAAM,CAAe;QAC3B,WAAM,GAAN,MAAM,CAAS;QAe9C,sBAAiB,GAAG,KAAK,EAAE,iBAAwC,EAAiB,EAAE;YACzF,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;YACpE,MAAM,qBAAqB,GACvB,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,4EAA4E,CAAC,CAAC,CAAC,EAAE,CAAC;YAE3G,4BAA4B;YAC5B,MAAM,GAAG,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uCA0CmB,iBAAiB;2CACb,iBAAiB;;;8CAGd,iBAAiB;2CACpB,iBAAiB;4CAChB,iBAAiB
|
|
1
|
+
{"version":3,"file":"DeparturesRepository.js","sourceRoot":"","sources":["../../../../../src/integration-engine/ropid-gtfs/data-access/precomputed/DeparturesRepository.ts"],"names":[],"mappings":"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"}
|
|
@@ -79,7 +79,7 @@ let RopidDeparturesPresetRepository = class RopidDeparturesPresetRepository exte
|
|
|
79
79
|
{
|
|
80
80
|
model: this.routesRepository.sequelizeModel,
|
|
81
81
|
as: "stops_routes",
|
|
82
|
-
attributes: ["stop_id", "route_type", "route_short_name"],
|
|
82
|
+
attributes: ["stop_id", "route_id", "route_type", "route_short_name"],
|
|
83
83
|
},
|
|
84
84
|
],
|
|
85
85
|
attributes: ["route_name", "note", "is_testing"],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RopidDeparturesPresetRepository.js","sourceRoot":"","sources":["../../../../src/output-gateway/pid/data-access/RopidDeparturesPresetRepository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,6DAAuC;AACvC,yIAA+G;AAG/G,kIAA+H;AAC/H,wEAAqE;AAErE,iEAAwE;AACxE,kDAA+C;AAC/C,qHAAkH;AAClH,qGAAkG;AAClG,yEAAoE;AAG7D,IAAM,+BAA+B,GAArC,MAAM,+BAAgC,SAAQ,iDAAuB;IAOxE,YACyC,SAA6B,EACxC,MAAe,EAEzC,oBAAoE,EAEpE,gBAAwD;QAExD,KAAK,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAdtB,WAAM,GAAG,iBAAS,CAAC;QACnB,cAAS,GAAG,yDAA2B,CAAC,SAAS,CAAC;QAcrD,IAAI,CAAC,cAAc,GAAG,SAAS;aAC1B,aAAa,EAAE;aACf,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,yDAA2B,CAAC,cAAc,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QAEjG,IAAI,CAAC,kBAAkB,GAAG,IAAI,6BAAa,EAAE,CAAC;QAC9C,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QACzC,eAAe;QACf,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,IAAI,CAAC,kBAAkB,CAAC,cAAc,EAAE;YACtE,OAAO,EAAE,oBAAoB,CAAC,cAAc;YAC5C,UAAU,EAAE,WAAW;YACvB,QAAQ,EAAE,SAAS;YACnB,EAAE,EAAE,OAAO;SACd,CAAC,CAAC;QACH,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,aAAa,CAAC,IAAI,CAAC,cAAc,EAAE;YACtE,OAAO,EAAE,oBAAoB,CAAC,cAAc;YAC5C,UAAU,EAAE,SAAS;YACrB,QAAQ,EAAE,WAAW;SACxB,CAAC,CAAC;QACH,oBAAoB,CAAC,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,EAAE;YAC/D,SAAS,EAAE,IAAI;YACf,UAAU,EAAE,WAAW;SAC1B,CAAC,CAAC;QACH,oBAAoB,CAAC,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,kBAAkB,CAAC,cAAc,EAAE;YAClF,SAAS,EAAE,SAAS;YACpB,UAAU,EAAE,SAAS;SACxB,CAAC,CAAC;QACH,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,oBAAoB,CAAC,cAAc,EAAE;YAC7D,SAAS,EAAE,IAAI;YACf,UAAU,EAAE,WAAW;SAC1B,CAAC,CAAC;QACH,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,OAAO,CAAC,oBAAoB,CAAC,cAAc,EAAE;YAChF,SAAS,EAAE,SAAS;YACpB,UAAU,EAAE,SAAS;SACxB,CAAC,CAAC;QACH,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,gBAAgB,CAAC,cAAc,EAAE;YACzD,SAAS,EAAE,IAAI;YACf,UAAU,EAAE,WAAW;YACvB,EAAE,EAAE,cAAc;SACrB,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,eAAe;QACjB,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;YACrC,OAAO,EAAE;gBACL;oBACI,KAAK,EAAE,IAAI,CAAC,kBAAkB,CAAC,cAAc;oBAC7C,EAAE,EAAE,OAAO;oBACX,UAAU,EAAE,CAAC,SAAS,CAAC;oBACvB,OAAO,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE;oBAC3B,QAAQ,EAAE,IAAI;iBACjB;gBACD;oBACI,KAAK,EAAE,IAAI,CAAC,gBAAgB,CAAC,cAAc;oBAC3C,EAAE,EAAE,cAAc;oBAClB,UAAU,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"RopidDeparturesPresetRepository.js","sourceRoot":"","sources":["../../../../src/output-gateway/pid/data-access/RopidDeparturesPresetRepository.ts"],"names":[],"mappings":"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"}
|
package/dist/output-gateway/pid/service/transformations/RopidDeparturesPresetTransformation.js
CHANGED
|
@@ -21,7 +21,7 @@ let RopidDeparturesPresetTransformation = class RopidDeparturesPresetTransformat
|
|
|
21
21
|
const routes = stopsRoutesMap.get(row.stop_id) ?? [];
|
|
22
22
|
if (!stopsRoutesMap.has(row.stop_id))
|
|
23
23
|
stopsRoutesMap.set(row.stop_id, routes);
|
|
24
|
-
routes.push({ type: row.route_type, name: row.route_short_name });
|
|
24
|
+
routes.push({ id: row.route_id, type: row.route_type, name: row.route_short_name });
|
|
25
25
|
}
|
|
26
26
|
const stops_routes = [...stopsRoutesMap.entries()].map(([stop_id, routes]) => ({
|
|
27
27
|
stop_id,
|
package/dist/output-gateway/pid/service/transformations/RopidDeparturesPresetTransformation.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RopidDeparturesPresetTransformation.js","sourceRoot":"","sources":["../../../../../src/output-gateway/pid/service/transformations/RopidDeparturesPresetTransformation.ts"],"names":[],"mappings":";;;;;;;;;AAAA,6GAA0G;AAC1G,iEAAgE;AAOzD,IAAM,mCAAmC,GAAzC,MAAM,mCAAoC,SAAQ,+CAGxD;IAHM;;QAII,SAAI,GAAG,qCAAqC,CAAC;QAE1C,sBAAiB,GAAG,CAAC,MAAmC,EAA8B,EAAE;YAC9F,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;YACjC,MAAM,cAAc,GAAG,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC;YAEjD,MAAM,cAAc,GAAmB,IAAI,GAAG,EAAE,CAAC;YACjD,KAAK,MAAM,GAAG,IAAI,cAAc,EAAE,CAAC;gBAC/B,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;gBACrD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC;oBAAE,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;gBAC9E,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,GAAG,CAAC,gBAAgB,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"RopidDeparturesPresetTransformation.js","sourceRoot":"","sources":["../../../../../src/output-gateway/pid/service/transformations/RopidDeparturesPresetTransformation.ts"],"names":[],"mappings":";;;;;;;;;AAAA,6GAA0G;AAC1G,iEAAgE;AAOzD,IAAM,mCAAmC,GAAzC,MAAM,mCAAoC,SAAQ,+CAGxD;IAHM;;QAII,SAAI,GAAG,qCAAqC,CAAC;QAE1C,sBAAiB,GAAG,CAAC,MAAmC,EAA8B,EAAE;YAC9F,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;YACjC,MAAM,cAAc,GAAG,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC;YAEjD,MAAM,cAAc,GAAmB,IAAI,GAAG,EAAE,CAAC;YACjD,KAAK,MAAM,GAAG,IAAI,cAAc,EAAE,CAAC;gBAC/B,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;gBACrD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC;oBAAE,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;gBAC9E,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,GAAG,CAAC,UAAU,EAAE,IAAI,EAAE,GAAG,CAAC,gBAAgB,EAAE,CAAC,CAAC;YACxF,CAAC;YAED,MAAM,YAAY,GAAoB,CAAC,GAAG,cAAc,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC5F,OAAO;gBACP,MAAM;aACT,CAAC,CAAC,CAAC;YAEJ,OAAO;gBACH,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC;gBAC1C,YAAY;aACf,CAAC;QACN,CAAC,CAAC;IACN,CAAC;CAAA,CAAA;AA9BY,kFAAmC;8CAAnC,mCAAmC;IAD/C,IAAA,qBAAU,GAAE;GACA,mCAAmC,CA8B/C"}
|
package/docs/openapi-output.yaml
CHANGED