@xano/cli 1.0.6-beta.13 → 1.0.6-beta.14
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/dist/utils/document-parser.js +36 -0
- package/oclif.manifest.json +2003 -2003
- package/package.json +1 -1
|
@@ -203,6 +203,42 @@ export function resolveDocumentPath(doc, outputDir, deps) {
|
|
|
203
203
|
// Realtime v1: realtime_trigger → realtime/trigger/{name}.xs
|
|
204
204
|
return { baseName: sanitize(doc.name), typeDir: join(outputDir, 'realtime', 'trigger') };
|
|
205
205
|
}
|
|
206
|
+
if (doc.type === 'realtime_server_trigger') {
|
|
207
|
+
// Realtime v2. A realtime_server's connect/disconnect trigger. It references its
|
|
208
|
+
// owning server by name via `realtime_server = "..."`, so it nests under that
|
|
209
|
+
// server's folder as `<server>/trigger/`, mirroring how the server's own document
|
|
210
|
+
// and its channels already nest under realtime/server/<server>/ (DEV-7712). Keeping
|
|
211
|
+
// it there means every realtime document stays under realtime/ instead of landing at
|
|
212
|
+
// the output root. A server-less doc (a malformed/legacy export) falls back to a flat
|
|
213
|
+
// realtime/server_trigger/ under realtime/ rather than the repo root.
|
|
214
|
+
return {
|
|
215
|
+
baseName: sanitize(doc.name),
|
|
216
|
+
typeDir: doc.server
|
|
217
|
+
? join(outputDir, 'realtime', 'server', sanitize(doc.server), 'trigger')
|
|
218
|
+
: join(outputDir, 'realtime', 'server_trigger'),
|
|
219
|
+
};
|
|
220
|
+
}
|
|
221
|
+
if (doc.type === 'channel_trigger') {
|
|
222
|
+
// Realtime v2. A channel's join/leave/deliver trigger. It references BOTH its owning
|
|
223
|
+
// server (`realtime_server = "..."`) and its channel (`channel = "..."`), so it nests
|
|
224
|
+
// beside that channel as `<server>/channel/<channel>/trigger/` — the same path the
|
|
225
|
+
// channel's own document and messages already use (DEV-7712). Falls back gracefully:
|
|
226
|
+
// channel but no resolvable server → the legacy flat channel/<path>/trigger/ layout;
|
|
227
|
+
// neither → realtime/channel_trigger/ under realtime/ (never the output root).
|
|
228
|
+
if (doc.server && doc.channel) {
|
|
229
|
+
return {
|
|
230
|
+
baseName: sanitize(doc.name),
|
|
231
|
+
typeDir: join(outputDir, 'realtime', 'server', sanitize(doc.server), 'channel', snakeCase(doc.channel), 'trigger'),
|
|
232
|
+
};
|
|
233
|
+
}
|
|
234
|
+
if (doc.channel) {
|
|
235
|
+
return {
|
|
236
|
+
baseName: sanitize(doc.name),
|
|
237
|
+
typeDir: join(outputDir, 'channel', ...channelPathSegments(doc.channel, snakeCase), 'trigger'),
|
|
238
|
+
};
|
|
239
|
+
}
|
|
240
|
+
return { baseName: sanitize(doc.name), typeDir: join(outputDir, 'realtime', 'channel_trigger') };
|
|
241
|
+
}
|
|
206
242
|
if (doc.type === 'realtime_server') {
|
|
207
243
|
// Realtime v2. The realtime_server is the top-level container that owns
|
|
208
244
|
// channels (which own messages). Its own document is named after itself
|