@relayfile/adapter-linear 0.2.6 → 0.2.7

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.
@@ -1,7 +1,7 @@
1
1
  import { describe, it } from 'node:test';
2
2
  import assert from 'node:assert/strict';
3
3
  import { emitLinearAuxiliaryFiles } from '../emit-auxiliary-files.js';
4
- import { LINEAR_PATH_ROOT, linearByIdAliasPath, linearByTitleAliasPath, linearByUuidAliasPath, linearIssueByStatePath, linearIssuePath, linearIssuesIndexPath, linearProjectPath, linearRootIndexPath, linearTeamPath, linearTeamsIndexPath, linearUserPath, linearUsersIndexPath, } from '../path-mapper.js';
4
+ import { LINEAR_PATH_ROOT, linearByIdAliasPath, linearByTitleAliasPath, linearByUuidAliasPath, linearCyclesIndexPath, linearIssueByStatePath, linearIssuePath, linearIssuesIndexPath, linearProjectsIndexPath, linearProjectPath, linearRootIndexPath, linearTeamPath, linearTeamsIndexPath, linearUserPath, linearUsersIndexPath, } from '../path-mapper.js';
5
5
  const ISSUES_SCOPE = `${LINEAR_PATH_ROOT}/issues`;
6
6
  function createClient(options = {}) {
7
7
  const files = new Map(Object.entries(options.initialFiles ?? {}));
@@ -70,6 +70,18 @@ describe('emitLinearAuxiliaryFiles', () => {
70
70
  });
71
71
  assert.ok(client.writes.some((w) => w.path === linearRootIndexPath()), 'expected /linear/_index.json root index write');
72
72
  });
73
+ it('writes an empty index for an explicit empty cycle bucket', async () => {
74
+ const client = createClient();
75
+ const result = await emitLinearAuxiliaryFiles(client, {
76
+ workspaceId: 'ws-1',
77
+ cycles: [],
78
+ });
79
+ assert.deepEqual(result.errors, []);
80
+ assert.equal(result.deleted, 0);
81
+ assert.equal(result.written, 2);
82
+ assert.deepEqual(client.writes.map((w) => w.path), [linearRootIndexPath(), linearCyclesIndexPath()]);
83
+ assert.deepEqual(JSON.parse(client.files.get(linearCyclesIndexPath())), []);
84
+ });
73
85
  it('writes the canonical path plus by-uuid, by-id, by-title, by-state aliases plus index row for an issue', async () => {
74
86
  const client = createClient();
75
87
  const issue = {
@@ -233,7 +245,7 @@ describe('emitLinearAuxiliaryFiles', () => {
233
245
  assert.equal(rows[0].id, 'team-1');
234
246
  assert.equal(rows[0].title, 'Engineering');
235
247
  });
236
- it('writes canonical project file only (no index file today)', async () => {
248
+ it('writes canonical project file plus index row', async () => {
237
249
  const client = createClient();
238
250
  await emitLinearAuxiliaryFiles(client, {
239
251
  workspaceId: 'ws-1',
@@ -247,8 +259,11 @@ describe('emitLinearAuxiliaryFiles', () => {
247
259
  });
248
260
  const writtenPaths = client.writes.map((w) => w.path);
249
261
  assert.ok(writtenPaths.includes(linearProjectPath('project-1')));
250
- // No project index file is emitted (no path-mapper helper today).
251
- assert.ok(!writtenPaths.some((p) => p.endsWith('/projects/_index.json')));
262
+ assert.ok(writtenPaths.includes(linearProjectsIndexPath()));
263
+ const rows = JSON.parse(client.files.get(linearProjectsIndexPath()));
264
+ assert.equal(rows.length, 1);
265
+ assert.equal(rows[0].id, 'project-1');
266
+ assert.equal(rows[0].title, 'Roadmap');
252
267
  });
253
268
  it('delete tombstone for an issue removes canonical + every prior alias and drops the index row', async () => {
254
269
  const priorPayload = {
@@ -382,6 +397,15 @@ describe('emitLinearAuxiliaryFiles', () => {
382
397
  const byTitleEmitted = writtenPaths.some((p) => p.includes('/by-title/'));
383
398
  assert.equal(byTitleEmitted, false);
384
399
  });
400
+ it('writes by-title alias for literal Untitled issue titles', async () => {
401
+ const client = createClient();
402
+ await emitLinearAuxiliaryFiles(client, {
403
+ workspaceId: 'ws-1',
404
+ issues: [{ id: 'issue-untitled', identifier: 'AGE-2', title: 'Untitled' }],
405
+ });
406
+ const writtenPaths = client.writes.map((w) => w.path);
407
+ assert.ok(writtenPaths.includes(linearByTitleAliasPath(ISSUES_SCOPE, 'Untitled', 'issue-untitled')));
408
+ });
385
409
  it('handles a mixed batch: issue create + rename + delete in one call', async () => {
386
410
  const priorRenamePayload = {
387
411
  payload: {
@@ -1 +1 @@
1
- {"version":3,"file":"emit-auxiliary-files.test.js","sourceRoot":"","sources":["../../src/__tests__/emit-auxiliary-files.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,MAAM,MAAM,oBAAoB,CAAC;AAUxC,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,EACtB,eAAe,EACf,qBAAqB,EACrB,iBAAiB,EACjB,mBAAmB,EACnB,cAAc,EACd,oBAAoB,EACpB,cAAc,EACd,oBAAoB,GACrB,MAAM,mBAAmB,CAAC;AAE3B,MAAM,YAAY,GAAG,GAAG,gBAAgB,SAAS,CAAC;AASlD,SAAS,YAAY,CACnB,UAKI,EAAE;IAEN,MAAM,KAAK,GAAG,IAAI,GAAG,CAAiB,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,CAAC;IAClF,MAAM,MAAM,GAAqB,EAAE,CAAC;IACpC,MAAM,OAAO,GAAsB,EAAE,CAAC;IACtC,MAAM,KAAK,GAAoB,EAAE,CAAC;IAClC,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,IAAI,GAAG,EAAU,CAAC;IAC7D,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,IAAI,GAAG,EAAU,CAAC;IAE3D,MAAM,MAAM,GAAoB;QAC9B,MAAM;QACN,OAAO;QACP,KAAK;QACL,KAAK;QACL,KAAK,CAAC,SAAS,CAAC,KAAK;YACnB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnB,IAAI,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;gBAChC,MAAM,IAAI,KAAK,CAAC,2BAA2B,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;YAC3D,CAAC;YACD,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YACrC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC3B,CAAC;QACD,KAAK,CAAC,UAAU,CAAC,KAAK;YACpB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACpB,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;KACF,CAAC;IACF,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QACpB,MAAM,CAAC,QAAQ,GAAG,KAAK,EAAE,KAAK,EAAkC,EAAE;YAChE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAClB,IAAI,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC/B,MAAM,IAAI,KAAK,CAAC,0BAA0B,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;YAC1D,CAAC;YACD,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACtC,OAAO,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC;QACpD,CAAC,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;IACxC,EAAE,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;QAC3E,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,MAAM,wBAAwB,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAC;QAC/E,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACpC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAChC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAChC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACtC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC,IAAI,EAAE,mBAAmB,EAAE,CAAC,CAAC;QAC5D,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAE,CAAC,CAAC;QAClE,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE;YACrB,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;YACjC,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;YACrC,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;YAC/B,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;YAC/B,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;YACrC,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;YACjC,EAAE,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE;YACzC,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;SACtC,CAAC,CAAC;QACH,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;QACrE,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;QAC9B,MAAM,wBAAwB,CAAC,MAAM,EAAE;YACrC,WAAW,EAAE,MAAM;YACnB,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;SACxC,CAAC,CAAC;QACH,MAAM,CAAC,EAAE,CACP,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC,EAC3D,+CAA+C,CAChD,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uGAAuG,EAAE,KAAK,IAAI,EAAE;QACrH,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;QAC9B,MAAM,KAAK,GAAG;YACZ,EAAE,EAAE,WAAW;YACf,UAAU,EAAE,OAAO;YACnB,KAAK,EAAE,cAAc;YACrB,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,aAAa,EAAE;YAC7C,SAAS,EAAE,sBAAsB;SAClC,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,wBAAwB,CAAC,MAAM,EAAE;YACpD,WAAW,EAAE,MAAM;YACnB,MAAM,EAAE,CAAC,KAAK,CAAC;SAChB,CAAC,CAAC;QAEH,2GAA2G;QAC3G,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAChC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAEpC,MAAM,aAAa,GAAG;YACpB,eAAe,CAAC,WAAW,EAAE,OAAO,CAAC;YACrC,qBAAqB,CAAC,YAAY,EAAE,WAAW,CAAC;YAChD,mBAAmB,CAAC,YAAY,EAAE,OAAO,CAAC;YAC1C,sBAAsB,CAAC,YAAY,EAAE,cAAc,EAAE,WAAW,CAAC;YACjE,sBAAsB,CAAC,aAAa,EAAE,OAAO,CAAC;YAC9C,qBAAqB,EAAE;SACxB,CAAC;QACF,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACtD,KAAK,MAAM,QAAQ,IAAI,aAAa,EAAE,CAAC;YACrC,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,yBAAyB,QAAQ,EAAE,CAAC,CAAC;QAClF,CAAC;QAED,wCAAwC;QACxC,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAE,CAAC;QAC9D,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAMhC,CAAC;QACH,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAC7B,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC;QACvC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QAC3C,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;QAC5C,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;QAE7C,6DAA6D;QAC7D,MAAM,cAAc,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;QAC/E,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;YACjC,IAAI,IAAI,KAAK,qBAAqB,EAAE;gBAAE,SAAS;YAC/C,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,cAAc,EAAE,qBAAqB,IAAI,EAAE,CAAC,CAAC;QACpF,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yFAAyF,EAAE,KAAK,IAAI,EAAE;QACvG,MAAM,YAAY,GAAG;YACnB,QAAQ,EAAE,QAAQ;YAClB,UAAU,EAAE,OAAO;YACnB,QAAQ,EAAE,WAAW;YACrB,OAAO,EAAE,KAAK;YACd,OAAO,EAAE;gBACP,EAAE,EAAE,WAAW;gBACf,UAAU,EAAE,OAAO;gBACnB,KAAK,EAAE,WAAW;gBAClB,KAAK,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE;aAC/B;SACF,CAAC;QACF,MAAM,MAAM,GAAG,YAAY,CAAC;YAC1B,YAAY,EAAE;gBACZ,CAAC,qBAAqB,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;aACjF;SACF,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,wBAAwB,CAAC,MAAM,EAAE;YACpD,WAAW,EAAE,MAAM;YACnB,MAAM,EAAE;gBACN;oBACE,EAAE,EAAE,WAAW;oBACf,UAAU,EAAE,OAAO;oBACnB,KAAK,EAAE,WAAW;oBAClB,KAAK,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,aAAa,EAAE;iBACxC;aACF;SACF,CAAC,CAAC;QAEH,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACvD,0DAA0D;QAC1D,MAAM,CAAC,EAAE,CACP,YAAY,CAAC,QAAQ,CAAC,sBAAsB,CAAC,YAAY,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC,EACrF,kDAAkD,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC5E,CAAC;QACF,yEAAyE;QACzE,MAAM,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,mBAAmB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;QAC9E,qEAAqE;QACrE,MAAM,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,qBAAqB,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;QAEpF,gDAAgD;QAChD,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACtD,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,sBAAsB,CAAC,YAAY,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;QACjG,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;QAExE,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qDAAqD,EAAE,KAAK,IAAI,EAAE;QACnE,MAAM,YAAY,GAAG;YACnB,QAAQ,EAAE,QAAQ;YAClB,UAAU,EAAE,OAAO;YACnB,QAAQ,EAAE,WAAW;YACrB,OAAO,EAAE;gBACP,EAAE,EAAE,WAAW;gBACf,UAAU,EAAE,OAAO;gBACnB,KAAK,EAAE,cAAc;gBACrB,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;aACxB;SACF,CAAC;QACF,MAAM,MAAM,GAAG,YAAY,CAAC;YAC1B,YAAY,EAAE;gBACZ,CAAC,qBAAqB,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;aACjF;SACF,CAAC,CAAC;QAEH,MAAM,wBAAwB,CAAC,MAAM,EAAE;YACrC,WAAW,EAAE,MAAM;YACnB,MAAM,EAAE;gBACN;oBACE,EAAE,EAAE,WAAW;oBACf,UAAU,EAAE,OAAO;oBACnB,KAAK,EAAE,cAAc;oBACrB,KAAK,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE;iBACjC;aACF;SACF,CAAC,CAAC;QAEH,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACvD,MAAM,CAAC,EAAE,CACP,YAAY,CAAC,QAAQ,CAAC,sBAAsB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAC9D,kDAAkD,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC5E,CAAC;QACF,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACtD,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,sBAAsB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IAC5E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;QACjD,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;QAC9B,MAAM,wBAAwB,CAAC,MAAM,EAAE;YACrC,WAAW,EAAE,MAAM;YACnB,KAAK,EAAE;gBACL;oBACE,EAAE,EAAE,QAAQ;oBACZ,WAAW,EAAE,OAAO;oBACpB,KAAK,EAAE,mBAAmB;oBAC1B,SAAS,EAAE,sBAAsB;iBAClC;aACF;SACF,CAAC,CAAC;QAEH,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACtD,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC3D,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC;QAEzD,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,oBAAoB,EAAE,CAAE,CAAC;QAC7D,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAyC,CAAC;QAC5E,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAC7B,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QACpC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;QACjD,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;QAC9B,MAAM,wBAAwB,CAAC,MAAM,EAAE;YACrC,WAAW,EAAE,MAAM;YACnB,KAAK,EAAE;gBACL;oBACE,EAAE,EAAE,QAAQ;oBACZ,IAAI,EAAE,aAAa;oBACnB,GAAG,EAAE,KAAK;oBACV,SAAS,EAAE,sBAAsB;iBAClC;aACF;SACF,CAAC,CAAC;QAEH,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACtD,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC3D,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC;QAEzD,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,oBAAoB,EAAE,CAAE,CAAC;QAC7D,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAyC,CAAC;QAC5E,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAC7B,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QACpC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0DAA0D,EAAE,KAAK,IAAI,EAAE;QACxE,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;QAC9B,MAAM,wBAAwB,CAAC,MAAM,EAAE;YACrC,WAAW,EAAE,MAAM;YACnB,QAAQ,EAAE;gBACR;oBACE,EAAE,EAAE,WAAW;oBACf,IAAI,EAAE,SAAS;oBACf,SAAS,EAAE,sBAAsB;iBAClC;aACF;SACF,CAAC,CAAC;QAEH,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACtD,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QACjE,kEAAkE;QAClE,MAAM,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC;IAC5E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6FAA6F,EAAE,KAAK,IAAI,EAAE;QAC3G,MAAM,YAAY,GAAG;YACnB,QAAQ,EAAE,QAAQ;YAClB,UAAU,EAAE,OAAO;YACnB,QAAQ,EAAE,WAAW;YACrB,OAAO,EAAE;gBACP,EAAE,EAAE,WAAW;gBACf,UAAU,EAAE,OAAO;gBACnB,KAAK,EAAE,cAAc;gBACrB,KAAK,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE;aAC/B;SACF,CAAC;QACF,MAAM,UAAU,GAAG;YACjB;gBACE,EAAE,EAAE,WAAW;gBACf,KAAK,EAAE,cAAc;gBACrB,OAAO,EAAE,sBAAsB;gBAC/B,UAAU,EAAE,OAAO;gBACnB,KAAK,EAAE,aAAa;aACrB;YACD;gBACE,EAAE,EAAE,WAAW;gBACf,KAAK,EAAE,aAAa;gBACpB,OAAO,EAAE,sBAAsB;gBAC/B,UAAU,EAAE,OAAO;gBACnB,KAAK,EAAE,MAAM;aACd;SACF,CAAC;QACF,MAAM,MAAM,GAAG,YAAY,CAAC;YAC1B,YAAY,EAAE;gBACZ,CAAC,qBAAqB,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;gBAChF,CAAC,mBAAmB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;gBAC1E,CAAC,qBAAqB,EAAE,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;aACtD;SACF,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,wBAAwB,CAAC,MAAM,EAAE;YACpD,WAAW,EAAE,MAAM;YACnB,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;SAC9C,CAAC,CAAC;QAEH,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAChE,MAAM,eAAe,GAAG;YACtB,eAAe,CAAC,WAAW,EAAE,OAAO,CAAC;YACrC,qBAAqB,CAAC,YAAY,EAAE,WAAW,CAAC;YAChD,mBAAmB,CAAC,YAAY,EAAE,OAAO,CAAC;YAC1C,sBAAsB,CAAC,YAAY,EAAE,cAAc,EAAE,WAAW,CAAC;YACjE,sBAAsB,CAAC,aAAa,EAAE,OAAO,CAAC;SAC/C,CAAC;QACF,KAAK,MAAM,IAAI,IAAI,eAAe,EAAE,CAAC;YACnC,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,sBAAsB,IAAI,EAAE,CAAC,CAAC;QAClE,CAAC;QAED,4CAA4C;QAC5C,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,qBAAqB,EAAE,CAAC,CAAC;QACjF,MAAM,CAAC,EAAE,CAAC,UAAU,EAAE,uDAAuD,CAAC,CAAC;QAC/E,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,UAAW,CAAC,OAAO,CAA0B,CAAC;QAC7E,MAAM,CAAC,SAAS,CACd,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAC5B,CAAC,WAAW,CAAC,EACb,uDAAuD,CACxD,CAAC;QACF,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;QAC/D,MAAM,UAAU,GAAG;YACjB,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,sBAAsB,EAAE;YACjE,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,sBAAsB,EAAE;SAChE,CAAC;QACF,MAAM,MAAM,GAAG,YAAY,CAAC;YAC1B,YAAY,EAAE;gBACZ,CAAC,oBAAoB,EAAE,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;aACrD;SACF,CAAC,CAAC;QAEH,MAAM,wBAAwB,CAAC,MAAM,EAAE;YACrC,WAAW,EAAE,MAAM;YACnB,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;SAC1C,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,oBAAoB,EAAE,CAAC,CAAC;QAChF,MAAM,CAAC,EAAE,CAAC,UAAU,EAAE,oDAAoD,CAAC,CAAC;QAC5E,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,UAAW,CAAC,OAAO,CAA0B,CAAC;QAC7E,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kFAAkF,EAAE,KAAK,IAAI,EAAE;QAChG,MAAM,MAAM,GAAG,YAAY,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAG,MAAM,wBAAwB,CAAC,MAAM,EAAE;YACpD,WAAW,EAAE,MAAM;YACnB,MAAM,EAAE;gBACN;oBACE,EAAE,EAAE,WAAW;oBACf,UAAU,EAAE,OAAO;oBACnB,KAAK,EAAE,cAAc;oBACrB,KAAK,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,aAAa,EAAE;iBACxC;aACF;SACF,CAAC,CAAC;QAEH,6DAA6D;QAC7D,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACvC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAEpC,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACtD,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,qBAAqB,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;QACnF,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,mBAAmB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;QAC7E,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,sBAAsB,CAAC,YAAY,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;IACtG,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yEAAyE,EAAE,KAAK,IAAI,EAAE;QACvF,MAAM,WAAW,GAAG,sBAAsB,CAAC,YAAY,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC;QACtF,MAAM,MAAM,GAAG,YAAY,CAAC,EAAE,WAAW,EAAE,IAAI,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC;QAErE,MAAM,MAAM,GAAG,MAAM,wBAAwB,CAAC,MAAM,EAAE;YACpD,WAAW,EAAE,MAAM;YACnB,MAAM,EAAE;gBACN;oBACE,EAAE,EAAE,WAAW;oBACf,UAAU,EAAE,OAAO;oBACnB,KAAK,EAAE,cAAc;oBACrB,KAAK,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,aAAa,EAAE;iBACxC;aACF;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACtC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAClD,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC,KAAK,EAAE,sBAAsB,CAAC,CAAC;QAE9D,gCAAgC;QAChC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,mBAAmB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;QACxE,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,sBAAsB,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;QAC5E,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+DAA+D,EAAE,KAAK,IAAI,EAAE;QAC7E,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;QAC9B,MAAM,wBAAwB,CAAC,MAAM,EAAE;YACrC,WAAW,EAAE,MAAM;YACnB,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;SACjE,CAAC,CAAC;QACH,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACtD,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,qBAAqB,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;QACjF,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,mBAAmB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;QAC7E,8DAA8D;QAC9D,MAAM,cAAc,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC;QAC1E,MAAM,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mEAAmE,EAAE,KAAK,IAAI,EAAE;QACjF,MAAM,kBAAkB,GAAG;YACzB,OAAO,EAAE;gBACP,EAAE,EAAE,WAAW;gBACf,UAAU,EAAE,SAAS;gBACrB,KAAK,EAAE,WAAW;gBAClB,KAAK,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE;aAC/B;SACF,CAAC;QACF,MAAM,kBAAkB,GAAG;YACzB,OAAO,EAAE;gBACP,EAAE,EAAE,WAAW;gBACf,UAAU,EAAE,SAAS;gBACrB,KAAK,EAAE,QAAQ;gBACf,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;aACxB;SACF,CAAC;QACF,MAAM,MAAM,GAAG,YAAY,CAAC;YAC1B,YAAY,EAAE;gBACZ,CAAC,qBAAqB,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC;gBACtF,CAAC,mBAAmB,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC;gBAClF,CAAC,qBAAqB,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC;gBACtF,CAAC,mBAAmB,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC;aACnF;SACF,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,wBAAwB,CAAC,MAAM,EAAE;YACpD,WAAW,EAAE,MAAM;YACnB,MAAM,EAAE;gBACN;oBACE,EAAE,EAAE,WAAW;oBACf,UAAU,EAAE,SAAS;oBACrB,KAAK,EAAE,WAAW;oBAClB,KAAK,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE;iBACjC;gBACD;oBACE,EAAE,EAAE,WAAW;oBACf,UAAU,EAAE,SAAS;oBACrB,KAAK,EAAE,SAAS;oBAChB,KAAK,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,aAAa,EAAE;iBACxC;gBACD,EAAE,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE;aACpC;SACF,CAAC,CAAC;QAEH,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACtD,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,mBAAmB,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;QAC/E,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,mBAAmB,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;QAE/E,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACvD,MAAM,CAAC,EAAE,CACP,YAAY,CAAC,QAAQ,CAAC,sBAAsB,CAAC,YAAY,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC,EACrF,wDAAwD,CACzD,CAAC;QACF,MAAM,CAAC,EAAE,CACP,YAAY,CAAC,QAAQ,CAAC,mBAAmB,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,EACnE,+CAA+C,CAChD,CAAC;QACF,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4FAA4F,EAAE,KAAK,IAAI,EAAE;QAC1G,qEAAqE;QACrE,iEAAiE;QACjE,oEAAoE;QACpE,iDAAiD;QACjD,MAAM,YAAY,GAAG;YACnB,QAAQ,EAAE,QAAQ;YAClB,UAAU,EAAE,OAAO;YACnB,QAAQ,EAAE,WAAW;YACrB,OAAO,EAAE;gBACP,EAAE,EAAE,WAAW;gBACf,UAAU,EAAE,IAAI;gBAChB,KAAK,EAAE,IAAI;aACZ;SACF,CAAC;QACF,MAAM,MAAM,GAAG,YAAY,CAAC;YAC1B,YAAY,EAAE;gBACZ,CAAC,qBAAqB,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;gBAChF,6DAA6D;gBAC7D,2DAA2D;gBAC3D,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;aAC7D;SACF,CAAC,CAAC;QAEH,2DAA2D;QAC3D,MAAM,MAAM,GAAG,MAAM,wBAAwB,CAAC,MAAM,EAAE;YACpD,WAAW,EAAE,MAAM;YACnB,MAAM,EAAE;gBACN;oBACE,EAAE,EAAE,WAAW;oBACf,UAAU,EAAE,OAAO;oBACnB,KAAK,EAAE,uBAAuB;oBAC9B,KAAK,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE;iBACjC;aACF;SACF,CAAC,CAAC;QAEH,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACvD,iEAAiE;QACjE,oDAAoD;QACpD,MAAM,CAAC,EAAE,CACP,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC,EACnD,6DAA6D,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACvF,CAAC;QACF,oEAAoE;QACpE,qDAAqD;QACrD,MAAM,CAAC,EAAE,CACP,CAAC,YAAY,CAAC,QAAQ,CAAC,qBAAqB,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC,EACxE,iEAAiE,CAClE,CAAC;QAEF,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACtD,uDAAuD;QACvD,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,mBAAmB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;QAC7E,oDAAoD;QACpD,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,qBAAqB,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;QACnF,sDAAsD;QACtD,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;QACxE,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8FAA8F,EAAE,KAAK,IAAI,EAAE;QAC5G,mEAAmE;QACnE,iEAAiE;QACjE,0DAA0D;QAC1D,MAAM,YAAY,GAAG;YACnB,QAAQ,EAAE,QAAQ;YAClB,UAAU,EAAE,OAAO;YACnB,QAAQ,EAAE,WAAW;YACrB,OAAO,EAAE;gBACP,EAAE,EAAE,WAAW;gBACf,UAAU,EAAE,OAAO;gBACnB,KAAK,EAAE,cAAc;gBACrB,KAAK,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE;aAC/B;SACF,CAAC;QACF,MAAM,UAAU,GAAG;YACjB;gBACE,EAAE,EAAE,WAAW;gBACf,KAAK,EAAE,cAAc;gBACrB,OAAO,EAAE,sBAAsB;gBAC/B,UAAU,EAAE,OAAO;gBACnB,KAAK,EAAE,aAAa;aACrB;SACF,CAAC;QACF,MAAM,MAAM,GAAG,YAAY,CAAC;YAC1B,YAAY,EAAE;gBACZ,CAAC,qBAAqB,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;gBAChF,CAAC,mBAAmB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;gBAC1E,CAAC,sBAAsB,CAAC,YAAY,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC,EACjE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;gBAC9B,CAAC,sBAAsB,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;gBAC9E,CAAC,eAAe,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;gBACrE,CAAC,qBAAqB,EAAE,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;aACtD;SACF,CAAC,CAAC;QAEH,wEAAwE;QACxE,MAAM,MAAM,GAAG,MAAM,wBAAwB,CAAC,MAAM,EAAE;YACpD,WAAW,EAAE,MAAM;YACnB,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;SAC9C,CAAC,CAAC;QAEH,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAChE,kEAAkE;QAClE,qEAAqE;QACrE,gEAAgE;QAChE,gCAAgC;QAChC,MAAM,QAAQ,GAAG;YACf,eAAe,CAAC,WAAW,EAAE,OAAO,CAAC;YACrC,qBAAqB,CAAC,YAAY,EAAE,WAAW,CAAC;YAChD,mBAAmB,CAAC,YAAY,EAAE,OAAO,CAAC;YAC1C,sBAAsB,CAAC,YAAY,EAAE,cAAc,EAAE,WAAW,CAAC;YACjE,sBAAsB,CAAC,aAAa,EAAE,OAAO,CAAC;SAC/C,CAAC;QACF,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;YAC5B,MAAM,CAAC,EAAE,CACP,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,EACtB,gCAAgC,IAAI,qBAAqB,CAC1D,CAAC;QACJ,CAAC;QAED,wBAAwB;QACxB,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,qBAAqB,EAAE,CAAC,CAAC;QACjF,MAAM,CAAC,EAAE,CAAC,UAAU,EAAE,uDAAuD,CAAC,CAAC;QAC/E,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,UAAW,CAAC,OAAO,CAA0B,CAAC;QAC7E,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QACnD,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2FAA2F,EAAE,KAAK,IAAI,EAAE;QACzG,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;QAE9B,uCAAuC;QACvC,MAAM,wBAAwB,CAAC,MAAM,EAAE;YACrC,WAAW,EAAE,MAAM;YACnB,MAAM,EAAE;gBACN;oBACE,EAAE,EAAE,UAAU;oBACd,UAAU,EAAE,QAAQ;oBACpB,KAAK,EAAE,gBAAgB;oBACvB,KAAK,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE;iBACjC;aACF;SACF,CAAC,CAAC;QAEH,sCAAsC;QACtC,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,qBAAqB,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC,CAAC;QACtF,MAAM,CAAC,EAAE,CAAC,WAAW,EAAE,gDAAgD,CAAC,CAAC;QACzE,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,WAAY,CAE3C,CAAC;QACF,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QAClD,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QACxD,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;QAE3D,mDAAmD;QACnD,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QACzB,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;QAC1B,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QAExB,qEAAqE;QACrE,MAAM,wBAAwB,CAAC,MAAM,EAAE;YACrC,WAAW,EAAE,MAAM;YACnB,MAAM,EAAE;gBACN;oBACE,EAAE,EAAE,UAAU;oBACd,UAAU,EAAE,QAAQ;oBACpB,KAAK,EAAE,eAAe;oBACtB,KAAK,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE;iBACjC;aACF;SACF,CAAC,CAAC;QAEH,kEAAkE;QAClE,mBAAmB;QACnB,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAClD,MAAM,CAAC,EAAE,CACP,SAAS,CAAC,QAAQ,CAAC,qBAAqB,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC,EACnE,sCAAsC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC7D,CAAC;QAEF,wCAAwC;QACxC,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACvD,MAAM,CAAC,EAAE,CACP,YAAY,CAAC,QAAQ,CAAC,sBAAsB,CAAC,YAAY,EAAE,gBAAgB,EAAE,UAAU,CAAC,CAAC,EACzF,4CAA4C,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACtE,CAAC;QACF,MAAM,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,qBAAqB,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;QACnF,MAAM,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,mBAAmB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;IACjF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iFAAiF,EAAE,KAAK,IAAI,EAAE;QAC/F,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;QAC9B,MAAM,wBAAwB,CAAC,MAAM,EAAE;YACrC,WAAW,EAAE,MAAM;YACnB,MAAM,EAAE;gBACN;oBACE,EAAE,EAAE,gBAAgB;oBACpB,KAAK,EAAE,eAAe;oBACtB,KAAK,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE;iBACjC;aACF;SACF,CAAC,CAAC;QAEH,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACtD,mCAAmC;QACnC,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,qBAAqB,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC;QACxF,mEAAmE;QACnE,0DAA0D;QAC1D,MAAM,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,mBAAmB,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC;QACvF,MAAM,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,YAAY,SAAS,CAAC,CAAC,CAAC,CAAC;QAC7E,8DAA8D;QAC9D,MAAM,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,YAAY,YAAY,CAAC,CAAC,CAAC,CAAC;IAClF,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"emit-auxiliary-files.test.js","sourceRoot":"","sources":["../../src/__tests__/emit-auxiliary-files.test.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import assert from 'node:assert/strict';
2
2
  import { describe, it } from 'node:test';
3
3
  import { buildLinearIndexFile } from '../index-emitter.js';
4
- import { linearCommentPath, linearIssuePath, linearTeamPath, linearUserPath, } from '../path-mapper.js';
5
- import { linearCommentIndexRow, linearIssueIndexRow, linearTeamIndexRow, linearUserIndexRow, } from '../queries.js';
4
+ import { linearCyclePath, linearCommentPath, linearIssuePath, linearProjectPath, linearRoadmapPath, linearMilestonePath, linearTeamPath, linearUserPath, } from '../path-mapper.js';
5
+ import { linearCommentIndexRow, linearCycleIndexRow, linearIssueIndexRow, linearMilestoneIndexRow, linearProjectIndexRow, linearRoadmapIndexRow, linearTeamIndexRow, linearUserIndexRow, } from '../queries.js';
6
6
  describe('linear index emission', () => {
7
7
  it('emits deterministic issue, comment, user, and team indexes', () => {
8
8
  const issueRows = [
@@ -65,11 +65,44 @@ describe('linear index emission', () => {
65
65
  const commentIndex = buildLinearIndexFile('comments', commentRows);
66
66
  const userIndex = buildLinearIndexFile('users', userRows);
67
67
  const teamIndex = buildLinearIndexFile('teams', teamRows);
68
+ const projectIndex = buildLinearIndexFile('projects', [
69
+ linearProjectIndexRow({
70
+ id: 'project-1',
71
+ name: 'Roadmap',
72
+ updatedAt: '2026-04-03T13:00:00.000Z',
73
+ }),
74
+ ]);
75
+ const cycleIndex = buildLinearIndexFile('cycles', [
76
+ linearCycleIndexRow({
77
+ id: 'cycle-1',
78
+ number: 5,
79
+ name: 'Cycle 5',
80
+ updatedAt: '2026-04-03T14:00:00.000Z',
81
+ }),
82
+ ]);
83
+ const milestoneIndex = buildLinearIndexFile('milestones', [
84
+ linearMilestoneIndexRow({
85
+ id: 'milestone-1',
86
+ name: 'Beta',
87
+ updatedAt: '2026-04-03T15:00:00.000Z',
88
+ }),
89
+ ]);
90
+ const roadmapIndex = buildLinearIndexFile('roadmaps', [
91
+ linearRoadmapIndexRow({
92
+ id: 'roadmap-1',
93
+ name: 'Platform',
94
+ updatedAt: '2026-04-03T16:00:00.000Z',
95
+ }),
96
+ ]);
68
97
  assert.deepEqual(issueIndex, issueIndexAgain);
69
98
  assert.equal(issueIndex.path, '/linear/issues/_index.json');
70
99
  assert.equal(commentIndex.path, '/linear/comments/_index.json');
71
100
  assert.equal(userIndex.path, '/linear/users/_index.json');
72
101
  assert.equal(teamIndex.path, '/linear/teams/_index.json');
102
+ assert.equal(projectIndex.path, '/linear/projects/_index.json');
103
+ assert.equal(cycleIndex.path, '/linear/cycles/_index.json');
104
+ assert.equal(milestoneIndex.path, '/linear/milestones/_index.json');
105
+ assert.equal(roadmapIndex.path, '/linear/roadmaps/_index.json');
73
106
  assert.equal(issueIndex.contentType, 'application/json; charset=utf-8');
74
107
  assert.deepEqual(JSON.parse(issueIndex.content), [
75
108
  {
@@ -103,6 +136,10 @@ describe('linear index emission', () => {
103
136
  assert.equal(linearCommentPath('comment-1'), '/linear/comments/comment-1.json');
104
137
  assert.equal(linearUserPath('user-1'), '/linear/users/user-1.json');
105
138
  assert.equal(linearTeamPath('team-1'), '/linear/teams/team-1.json');
139
+ assert.equal(linearProjectPath('project-1'), '/linear/projects/project-1.json');
140
+ assert.equal(linearCyclePath('cycle-1'), '/linear/cycles/cycle-1.json');
141
+ assert.equal(linearMilestonePath('milestone-1'), '/linear/milestones/milestone-1.json');
142
+ assert.equal(linearRoadmapPath('roadmap-1'), '/linear/roadmaps/roadmap-1.json');
106
143
  });
107
144
  it('emits an empty index when a linear bucket has no records', () => {
108
145
  const file = buildLinearIndexFile('comments', []);
@@ -1 +1 @@
1
- {"version":3,"file":"index-emission.test.js","sourceRoot":"","sources":["../../src/__tests__/index-emission.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index-emission.test.js","sourceRoot":"","sources":["../../src/__tests__/index-emission.test.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
1
  export declare function slugifyAlias(input: string): string;
2
+ export declare function hasAliasSlug(input: string): boolean;
2
3
  export declare function aliasCollisionSuffix(id: string): string;
3
4
  //# sourceMappingURL=alias-slug.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"alias-slug.d.ts","sourceRoot":"","sources":["../src/alias-slug.ts"],"names":[],"mappings":"AAKA,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAUlD;AAED,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAEvD"}
1
+ {"version":3,"file":"alias-slug.d.ts","sourceRoot":"","sources":["../src/alias-slug.ts"],"names":[],"mappings":"AAKA,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAElD;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEnD;AAcD,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAEvD"}
@@ -2,6 +2,12 @@ import { createHash } from 'node:crypto';
2
2
  const COMBINING_MARKS_PATTERN = /[\u0300-\u036f]/g;
3
3
  const MAX_ALIAS_SLUG_LENGTH = 80;
4
4
  export function slugifyAlias(input) {
5
+ return normalizeAliasSlug(input) || 'untitled';
6
+ }
7
+ export function hasAliasSlug(input) {
8
+ return normalizeAliasSlug(input).length > 0;
9
+ }
10
+ function normalizeAliasSlug(input) {
5
11
  const normalized = input
6
12
  .normalize('NFKD')
7
13
  .replace(COMBINING_MARKS_PATTERN, '')
@@ -9,7 +15,7 @@ export function slugifyAlias(input) {
9
15
  .replace(/[^a-z0-9]+/g, '-')
10
16
  .slice(0, MAX_ALIAS_SLUG_LENGTH)
11
17
  .replace(/^-+|-+$/g, '');
12
- return normalized || 'untitled';
18
+ return normalized;
13
19
  }
14
20
  export function aliasCollisionSuffix(id) {
15
21
  return createHash('sha256').update(id).digest('hex').slice(0, 8);
@@ -1 +1 @@
1
- {"version":3,"file":"alias-slug.js","sourceRoot":"","sources":["../src/alias-slug.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,uBAAuB,GAAG,kBAAkB,CAAC;AACnD,MAAM,qBAAqB,GAAG,EAAE,CAAC;AAEjC,MAAM,UAAU,YAAY,CAAC,KAAa;IACxC,MAAM,UAAU,GAAG,KAAK;SACrB,SAAS,CAAC,MAAM,CAAC;SACjB,OAAO,CAAC,uBAAuB,EAAE,EAAE,CAAC;SACpC,WAAW,EAAE;SACb,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC;SAC3B,KAAK,CAAC,CAAC,EAAE,qBAAqB,CAAC;SAC/B,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAE3B,OAAO,UAAU,IAAI,UAAU,CAAC;AAClC,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,EAAU;IAC7C,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACnE,CAAC"}
1
+ {"version":3,"file":"alias-slug.js","sourceRoot":"","sources":["../src/alias-slug.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,uBAAuB,GAAG,kBAAkB,CAAC;AACnD,MAAM,qBAAqB,GAAG,EAAE,CAAC;AAEjC,MAAM,UAAU,YAAY,CAAC,KAAa;IACxC,OAAO,kBAAkB,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,KAAa;IACxC,OAAO,kBAAkB,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;AAC9C,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAa;IACvC,MAAM,UAAU,GAAG,KAAK;SACrB,SAAS,CAAC,MAAM,CAAC;SACjB,OAAO,CAAC,uBAAuB,EAAE,EAAE,CAAC;SACpC,WAAW,EAAE;SACb,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC;SAC3B,KAAK,CAAC,CAAC,EAAE,qBAAqB,CAAC;SAC/B,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAE3B,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,EAAU;IAC7C,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACnE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"emit-auxiliary-files.d.ts","sourceRoot":"","sources":["../src/emit-auxiliary-files.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AAEH,OAAO,EAKL,KAAK,sBAAsB,EAC3B,KAAK,wBAAwB,EAI9B,MAAM,yBAAyB,CAAC;AAiCjC,OAAO,KAAK,EACV,aAAa,EACb,WAAW,EACX,WAAW,EACX,eAAe,EACf,aAAa,EACb,aAAa,EACb,UAAU,EACV,UAAU,EACX,MAAM,YAAY,CAAC;AAMpB;;;;GAIG;AACH,MAAM,MAAM,qBAAqB,GAAG,WAAW,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,IAAI,CAAA;CAAE,CAAC;AACjF,MAAM,MAAM,uBAAuB,GAAG,aAAa,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,IAAI,CAAA;CAAE,CAAC;AACrF,MAAM,MAAM,oBAAoB,GAAG,UAAU,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,IAAI,CAAA;CAAE,CAAC;AAC/E,MAAM,MAAM,oBAAoB,GAAG,UAAU,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,IAAI,CAAA;CAAE,CAAC;AAC/E,MAAM,MAAM,uBAAuB,GAAG,aAAa,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,IAAI,CAAA;CAAE,CAAC;AACrF,MAAM,MAAM,qBAAqB,GAAG,WAAW,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,IAAI,CAAA;CAAE,CAAC;AACjF,MAAM,MAAM,yBAAyB,GAAG,eAAe,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,IAAI,CAAA;CAAE,CAAC;AACzF,MAAM,MAAM,uBAAuB,GAAG,aAAa,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,IAAI,CAAA;CAAE,CAAC;AAErF,MAAM,WAAW,6BAA6B;IAC5C,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,SAAS,qBAAqB,EAAE,CAAC;IAC1C,QAAQ,CAAC,EAAE,SAAS,uBAAuB,EAAE,CAAC;IAC9C,KAAK,CAAC,EAAE,SAAS,oBAAoB,EAAE,CAAC;IACxC,KAAK,CAAC,EAAE,SAAS,oBAAoB,EAAE,CAAC;IACxC,QAAQ,CAAC,EAAE,SAAS,uBAAuB,EAAE,CAAC;IAC9C,MAAM,CAAC,EAAE,SAAS,qBAAqB,EAAE,CAAC;IAC1C,UAAU,CAAC,EAAE,SAAS,yBAAyB,EAAE,CAAC;IAClD,QAAQ,CAAC,EAAE,SAAS,uBAAuB,EAAE,CAAC;IAC9C,6EAA6E;IAC7E,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;GAIG;AACH,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,sBAAsB,EAC9B,KAAK,EAAE,6BAA6B,GACnC,OAAO,CAAC,wBAAwB,CAAC,CAyDnC"}
1
+ {"version":3,"file":"emit-auxiliary-files.d.ts","sourceRoot":"","sources":["../src/emit-auxiliary-files.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AAEH,OAAO,EAKL,KAAK,sBAAsB,EAC3B,KAAK,wBAAwB,EAI9B,MAAM,yBAAyB,CAAC;AAyCjC,OAAO,KAAK,EACV,aAAa,EACb,WAAW,EACX,WAAW,EACX,eAAe,EACf,aAAa,EACb,aAAa,EACb,UAAU,EACV,UAAU,EACX,MAAM,YAAY,CAAC;AAMpB;;;;GAIG;AACH,MAAM,MAAM,qBAAqB,GAAG,WAAW,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,IAAI,CAAA;CAAE,CAAC;AACjF,MAAM,MAAM,uBAAuB,GAAG,aAAa,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,IAAI,CAAA;CAAE,CAAC;AACrF,MAAM,MAAM,oBAAoB,GAAG,UAAU,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,IAAI,CAAA;CAAE,CAAC;AAC/E,MAAM,MAAM,oBAAoB,GAAG,UAAU,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,IAAI,CAAA;CAAE,CAAC;AAC/E,MAAM,MAAM,uBAAuB,GAAG,aAAa,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,IAAI,CAAA;CAAE,CAAC;AACrF,MAAM,MAAM,qBAAqB,GAAG,WAAW,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,IAAI,CAAA;CAAE,CAAC;AACjF,MAAM,MAAM,yBAAyB,GAAG,eAAe,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,IAAI,CAAA;CAAE,CAAC;AACzF,MAAM,MAAM,uBAAuB,GAAG,aAAa,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,IAAI,CAAA;CAAE,CAAC;AAErF,MAAM,WAAW,6BAA6B;IAC5C,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,SAAS,qBAAqB,EAAE,CAAC;IAC1C,QAAQ,CAAC,EAAE,SAAS,uBAAuB,EAAE,CAAC;IAC9C,KAAK,CAAC,EAAE,SAAS,oBAAoB,EAAE,CAAC;IACxC,KAAK,CAAC,EAAE,SAAS,oBAAoB,EAAE,CAAC;IACxC,QAAQ,CAAC,EAAE,SAAS,uBAAuB,EAAE,CAAC;IAC9C,MAAM,CAAC,EAAE,SAAS,qBAAqB,EAAE,CAAC;IAC1C,UAAU,CAAC,EAAE,SAAS,yBAAyB,EAAE,CAAC;IAClD,QAAQ,CAAC,EAAE,SAAS,uBAAuB,EAAE,CAAC;IAC9C,6EAA6E;IAC7E,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;GAIG;AACH,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,sBAAsB,EAC9B,KAAK,EAAE,6BAA6B,GACnC,OAAO,CAAC,wBAAwB,CAAC,CAiEnC"}
@@ -51,10 +51,10 @@
51
51
  * `packages/confluence/src/emit-auxiliary-files.ts`).
52
52
  */
53
53
  import { PriorAliasReader, IndexFileReconciler, runEmitBatch, EMIT_AUXILIARY_JSON_CONTENT_TYPE, } from '@relayfile/adapter-core';
54
- import { slugifyAlias } from './alias-slug.js';
54
+ import { hasAliasSlug } from './alias-slug.js';
55
55
  import { buildLinearRootIndexFile } from './index-emitter.js';
56
- import { LINEAR_PATH_ROOT, linearByIdAliasPath, linearByTitleAliasPath, linearByUuidAliasPath, linearCommentPath, linearCommentsIndexPath, linearCyclePath, linearIssueByStatePath, linearIssuePath, linearIssuesIndexPath, linearMilestonePath, linearProjectPath, linearRoadmapPath, linearTeamPath, linearTeamsIndexPath, linearUserPath, linearUsersIndexPath, } from './path-mapper.js';
57
- import { linearCommentIndexRow, linearIssueIndexRow, linearTeamIndexRow, linearUserIndexRow, } from './queries.js';
56
+ import { LINEAR_PATH_ROOT, linearByIdAliasPath, linearByTitleAliasPath, linearByUuidAliasPath, linearCommentPath, linearCommentsIndexPath, linearCyclesIndexPath, linearCyclePath, linearIssueByStatePath, linearIssuePath, linearIssuesIndexPath, linearMilestonesIndexPath, linearMilestonePath, linearProjectsIndexPath, linearProjectPath, linearRoadmapsIndexPath, linearRoadmapPath, linearTeamPath, linearTeamsIndexPath, linearUserPath, linearUsersIndexPath, } from './path-mapper.js';
57
+ import { linearCommentIndexRow, linearCycleIndexRow, linearIssueIndexRow, linearMilestoneIndexRow, linearProjectIndexRow, linearRoadmapIndexRow, linearTeamIndexRow, linearUserIndexRow, } from './queries.js';
58
58
  const LINEAR_PROVIDER_NAME = 'linear';
59
59
  const JSON_CONTENT_TYPE = EMIT_AUXILIARY_JSON_CONTENT_TYPE;
60
60
  const ISSUES_SCOPE = `${LINEAR_PATH_ROOT}/issues`;
@@ -78,38 +78,46 @@ export async function emitLinearAuxiliaryFiles(client, input) {
78
78
  const cycles = input.cycles ?? [];
79
79
  const milestones = input.milestones ?? [];
80
80
  const roadmaps = input.roadmaps ?? [];
81
- if (issues.length === 0 &&
82
- comments.length === 0 &&
83
- users.length === 0 &&
84
- teams.length === 0 &&
85
- projects.length === 0 &&
86
- cycles.length === 0 &&
87
- milestones.length === 0 &&
88
- roadmaps.length === 0) {
81
+ const hasIssues = hasOwn(input, 'issues');
82
+ const hasComments = hasOwn(input, 'comments');
83
+ const hasUsers = hasOwn(input, 'users');
84
+ const hasTeams = hasOwn(input, 'teams');
85
+ const hasProjects = hasOwn(input, 'projects');
86
+ const hasCycles = hasOwn(input, 'cycles');
87
+ const hasMilestones = hasOwn(input, 'milestones');
88
+ const hasRoadmaps = hasOwn(input, 'roadmaps');
89
+ if (!hasIssues &&
90
+ !hasComments &&
91
+ !hasUsers &&
92
+ !hasTeams &&
93
+ !hasProjects &&
94
+ !hasCycles &&
95
+ !hasMilestones &&
96
+ !hasRoadmaps) {
89
97
  return aggregate;
90
98
  }
91
- if (issues.length > 0) {
99
+ if (hasIssues) {
92
100
  accumulate(aggregate, await emitIssues(client, workspaceId, issues, input.connectionId));
93
101
  }
94
- if (comments.length > 0) {
102
+ if (hasComments) {
95
103
  accumulate(aggregate, await emitComments(client, workspaceId, comments, input.connectionId));
96
104
  }
97
- if (users.length > 0) {
105
+ if (hasUsers) {
98
106
  accumulate(aggregate, await emitUsers(client, workspaceId, users, input.connectionId));
99
107
  }
100
- if (teams.length > 0) {
108
+ if (hasTeams) {
101
109
  accumulate(aggregate, await emitTeams(client, workspaceId, teams, input.connectionId));
102
110
  }
103
- if (projects.length > 0) {
111
+ if (hasProjects) {
104
112
  accumulate(aggregate, await emitProjects(client, workspaceId, projects, input.connectionId));
105
113
  }
106
- if (cycles.length > 0) {
114
+ if (hasCycles) {
107
115
  accumulate(aggregate, await emitCycles(client, workspaceId, cycles, input.connectionId));
108
116
  }
109
- if (milestones.length > 0) {
117
+ if (hasMilestones) {
110
118
  accumulate(aggregate, await emitMilestones(client, workspaceId, milestones, input.connectionId));
111
119
  }
112
- if (roadmaps.length > 0) {
120
+ if (hasRoadmaps) {
113
121
  accumulate(aggregate, await emitRoadmaps(client, workspaceId, roadmaps, input.connectionId));
114
122
  }
115
123
  return aggregate;
@@ -135,6 +143,9 @@ async function writeRootIndex(client, workspaceId, aggregate) {
135
143
  }
136
144
  // -- issues -----------------------------------------------------------------
137
145
  async function emitIssues(client, workspaceId, records, connectionId) {
146
+ if (records.length === 0) {
147
+ return writeEmptyIndex(client, workspaceId, linearIssuesIndexPath());
148
+ }
138
149
  const indexReconciler = new IndexFileReconciler({
139
150
  client,
140
151
  workspaceId,
@@ -250,8 +261,7 @@ function issuePathsFor(args) {
250
261
  if (identifier) {
251
262
  paths.push(linearByIdAliasPath(ISSUES_SCOPE, identifier));
252
263
  }
253
- // by-title alias — skip when title slugs to empty (`slugifyAlias` returns
254
- // the literal `'untitled'` sentinel in that case).
264
+ // by-title alias — skip when the title has no valid alias slug.
255
265
  if (title && slugifies(title)) {
256
266
  paths.push(linearByTitleAliasPath(ISSUES_SCOPE, title, id));
257
267
  }
@@ -280,6 +290,9 @@ function toIssueNode(issue) {
280
290
  }
281
291
  // -- comments ---------------------------------------------------------------
282
292
  async function emitComments(client, workspaceId, records, connectionId) {
293
+ if (records.length === 0) {
294
+ return writeEmptyIndex(client, workspaceId, linearCommentsIndexPath());
295
+ }
283
296
  const indexReconciler = new IndexFileReconciler({
284
297
  client,
285
298
  workspaceId,
@@ -352,36 +365,45 @@ async function emitTeams(client, workspaceId, records, connectionId) {
352
365
  });
353
366
  }
354
367
  async function emitProjects(client, workspaceId, records, connectionId) {
355
- // Projects don't ship an `_index.json` in the current adapter (no
356
- // index-emitter bucket), so we only emit the canonical record.
357
- return emitCanonicalOnlyResource(client, workspaceId, records, {
368
+ return emitFlatResource(client, workspaceId, records, {
369
+ indexPath: linearProjectsIndexPath(),
358
370
  canonicalPath: (id) => linearProjectPath(id),
371
+ indexRow: (record) => linearProjectIndexRow(record),
359
372
  objectType: 'project',
360
373
  connectionId,
361
374
  });
362
375
  }
363
376
  async function emitCycles(client, workspaceId, records, connectionId) {
364
- return emitCanonicalOnlyResource(client, workspaceId, records, {
377
+ return emitFlatResource(client, workspaceId, records, {
378
+ indexPath: linearCyclesIndexPath(),
365
379
  canonicalPath: (id) => linearCyclePath(id),
380
+ indexRow: (record) => linearCycleIndexRow(record),
366
381
  objectType: 'cycle',
367
382
  connectionId,
368
383
  });
369
384
  }
370
385
  async function emitMilestones(client, workspaceId, records, connectionId) {
371
- return emitCanonicalOnlyResource(client, workspaceId, records, {
386
+ return emitFlatResource(client, workspaceId, records, {
387
+ indexPath: linearMilestonesIndexPath(),
372
388
  canonicalPath: (id) => linearMilestonePath(id),
389
+ indexRow: (record) => linearMilestoneIndexRow(record),
373
390
  objectType: 'milestone',
374
391
  connectionId,
375
392
  });
376
393
  }
377
394
  async function emitRoadmaps(client, workspaceId, records, connectionId) {
378
- return emitCanonicalOnlyResource(client, workspaceId, records, {
395
+ return emitFlatResource(client, workspaceId, records, {
396
+ indexPath: linearRoadmapsIndexPath(),
379
397
  canonicalPath: (id) => linearRoadmapPath(id),
398
+ indexRow: (record) => linearRoadmapIndexRow(record),
380
399
  objectType: 'roadmap',
381
400
  connectionId,
382
401
  });
383
402
  }
384
403
  async function emitFlatResource(client, workspaceId, records, opts) {
404
+ if (records.length === 0) {
405
+ return writeEmptyIndex(client, workspaceId, opts.indexPath);
406
+ }
385
407
  const indexReconciler = new IndexFileReconciler({
386
408
  client,
387
409
  workspaceId,
@@ -416,25 +438,6 @@ async function emitFlatResource(client, workspaceId, records, opts) {
416
438
  fanOut.errors.push(...indexResult.errors);
417
439
  return fanOut;
418
440
  }
419
- async function emitCanonicalOnlyResource(client, workspaceId, records, opts) {
420
- return runEmitBatch(client, workspaceId, records, async (record) => {
421
- if (isDeleteRecord(record)) {
422
- return { deletes: [{ path: opts.canonicalPath(record.id) }] };
423
- }
424
- const id = readNonEmptyString(record.id);
425
- if (!id)
426
- return {};
427
- return {
428
- writes: [
429
- {
430
- path: opts.canonicalPath(id),
431
- content: renderContent(opts.objectType, record, opts.connectionId, false),
432
- contentType: JSON_CONTENT_TYPE,
433
- },
434
- ],
435
- };
436
- });
437
- }
438
441
  // -- shared helpers ---------------------------------------------------------
439
442
  function renderContent(objectType, payload, connectionId, deleted) {
440
443
  return JSON.stringify({
@@ -485,16 +488,36 @@ function readNonEmptyString(value) {
485
488
  function isRecord(value) {
486
489
  return typeof value === 'object' && value !== null && !Array.isArray(value);
487
490
  }
491
+ function hasOwn(value, key) {
492
+ return Object.prototype.hasOwnProperty.call(value, key);
493
+ }
494
+ async function writeEmptyIndex(client, workspaceId, path) {
495
+ try {
496
+ await client.writeFile({
497
+ workspaceId,
498
+ path,
499
+ content: '[]\n',
500
+ contentType: JSON_CONTENT_TYPE,
501
+ });
502
+ return { written: 1, deleted: 0, errors: [] };
503
+ }
504
+ catch (error) {
505
+ return {
506
+ written: 0,
507
+ deleted: 0,
508
+ errors: [{ path, error: error instanceof Error ? error.message : String(error) }],
509
+ };
510
+ }
511
+ }
488
512
  /**
489
513
  * Skip by-title aliases for titles that slug to nothing (emoji-only /
490
514
  * punctuation-only). The by-id alias still resolves those records.
491
515
  *
492
- * Delegates to the shared `slugifyAlias` per AGENTS.md "NEVER write a
493
- * new slugifier" rule. `slugifyAlias` returns the literal string
494
- * `'untitled'` as its empty-slug sentinel.
516
+ * Delegates to the shared alias-slug helper per AGENTS.md "NEVER write a
517
+ * new slugifier" rule.
495
518
  */
496
519
  function slugifies(value) {
497
- return slugifyAlias(value) !== 'untitled';
520
+ return hasAliasSlug(value);
498
521
  }
499
522
  function accumulate(aggregate, partial) {
500
523
  aggregate.written += partial.written;