@relayfile/adapter-linear 0.1.18 → 0.1.19

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/writeback.js CHANGED
@@ -189,25 +189,10 @@ function buildIssueCreate(content) {
189
189
  body: { query: ISSUE_CREATE_MUTATION, variables: { input } },
190
190
  };
191
191
  }
192
- /**
193
- * Server-managed fields that must never be forwarded as part of an
194
- * `IssueUpdateInput`. Linear rejects updates that try to mutate these.
195
- */
196
- const ISSUE_UPDATE_DENYLIST = new Set([
197
- 'id',
198
- 'identifier',
199
- 'createdAt',
200
- 'updatedAt',
201
- 'archivedAt',
202
- 'url',
203
- 'team',
204
- 'creator',
205
- 'parent',
206
- ]);
207
192
  /**
208
193
  * Envelope marker fields written by `LinearAdapter.renderContent()`. When the
209
194
  * payload presents itself as the synced envelope (rather than a bare update
210
- * input), unwrap to the inner `payload` before applying the denylist.
195
+ * input), unwrap to the inner `payload` before applying the allowlist.
211
196
  *
212
197
  * Without this step, a round-tripped synced file would forward `provider`,
213
198
  * `workspaceId`, `objectType`, etc. into the GraphQL mutation and Linear
@@ -219,16 +204,51 @@ function looksLikeSyncedEnvelope(payload) {
219
204
  return false;
220
205
  return ENVELOPE_MARKER_KEYS.some((key) => key in payload);
221
206
  }
207
+ /**
208
+ * Fields Linear's `IssueUpdateInput` accepts. We use an explicit allowlist
209
+ * (rather than a denylist) so that synced-file fields the read API returns
210
+ * — `state_name`, `assignee_name`, `priority_label`, `created_at`, `_webhook`,
211
+ * etc. — get silently dropped instead of being forwarded into the mutation
212
+ * and rejected with `Field "X" is not defined by type "IssueUpdateInput"`.
213
+ *
214
+ * Mirrors the field set buildIssueCreate already accepts (which is itself a
215
+ * subset of `IssueCreateInput`), plus update-specific fields that are
216
+ * commonly edited in a synced-file workflow:
217
+ * - `subscriberIds` — change watchers
218
+ * - `sortOrder` — manual reordering
219
+ * - `descriptionData` — Linear's prosemirror-doc form of `description`
220
+ *
221
+ * If you need to set a field not in this list (e.g. `addedLabelIds` /
222
+ * `removedLabelIds` for incremental label changes), add it here and add a
223
+ * regression test in `__tests__/writeback-allowlist.test.ts`.
224
+ */
225
+ const ISSUE_UPDATE_ALLOWLIST = new Set([
226
+ 'title',
227
+ 'description',
228
+ 'descriptionData',
229
+ 'priority',
230
+ 'assigneeId',
231
+ 'stateId',
232
+ 'projectId',
233
+ 'cycleId',
234
+ 'labelIds',
235
+ 'dueDate',
236
+ 'estimate',
237
+ 'parentId',
238
+ 'subscriberIds',
239
+ 'sortOrder',
240
+ ]);
222
241
  /**
223
242
  * Build an `issueUpdate` mutation request for the writeback engine.
224
243
  *
225
244
  * Accepts two payload shapes:
226
245
  * - the full synced envelope produced by `LinearAdapter.renderContent()`,
227
246
  * with editable fields under `payload`. We unwrap automatically.
228
- * - a bare update input where the top-level object IS the input (the form
229
- * a hand-written workflow or specialist agent typically produces).
230
- *
231
- * Server-managed fields are stripped in either case.
247
+ * - a bare update input where the top-level object IS the input covers
248
+ * both hand-written workflow payloads and edits to the synced-file
249
+ * denormalized read (where the user keeps the full `{state_name,
250
+ * assignee_name, ...}` envelope and just changes a field). Synced-only
251
+ * fields are silently dropped via the allowlist.
232
252
  */
233
253
  function buildIssueUpdate(issueId, content) {
234
254
  const parsed = parseJsonObject(content);
@@ -237,12 +257,13 @@ function buildIssueUpdate(issueId, content) {
237
257
  : parsed;
238
258
  const input = {};
239
259
  for (const [key, value] of Object.entries(source)) {
240
- if (ISSUE_UPDATE_DENYLIST.has(key))
260
+ if (!ISSUE_UPDATE_ALLOWLIST.has(key))
241
261
  continue;
242
262
  input[key] = value;
243
263
  }
244
264
  if (Object.keys(input).length === 0) {
245
- throw new Error('issues/<id>.json update writeback requires at least one mutable field');
265
+ throw new Error('issues/<id>.json update writeback requires at least one mutable field ' +
266
+ '(see ISSUE_UPDATE_ALLOWLIST in @relayfile/adapter-linear/writeback for the accepted set)');
246
267
  }
247
268
  return {
248
269
  action: 'update_issue',
@@ -1 +1 @@
1
- {"version":3,"file":"writeback.js","sourceRoot":"","sources":["../src/writeback.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"writeback.js","sourceRoot":"","sources":["../src/writeback.ts"],"names":[],"mappings":"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"}
@@ -60,6 +60,43 @@ describe('linear writeback', () => {
60
60
  description: 'New description',
61
61
  });
62
62
  });
63
+ it('drops denormalized synced-read fields that IssueUpdateInput does not accept', () => {
64
+ // Pins the bug surfaced on op_31 in workspace rw_517d60b6: the synced
65
+ // file the path-mapper wrote on the read side included Linear's
66
+ // denormalized fields (state_name, assignee_name, priority_label,
67
+ // _connection, _webhook, descriptionData, …). When a user edited the
68
+ // file in place keeping the full envelope and just changed the title,
69
+ // the writeback forwarded every field as IssueUpdateInput and Linear
70
+ // rejected with `Field "state_name" is not defined by type
71
+ // "IssueUpdateInput". Did you mean "stateId"?`.
72
+ //
73
+ // The fix: explicit allowlist matching IssueUpdateInput. Anything not
74
+ // in the schema is silently dropped; only mutable fields go through.
75
+ const req = resolveWritebackRequest(`/linear/issues/${PAGE_UUID}.json`, JSON.stringify({
76
+ id: PAGE_UUID,
77
+ identifier: 'PROJ-441',
78
+ title: 'edited title',
79
+ description: 'edited description',
80
+ // Denormalized read-only fields the writeback must NOT forward:
81
+ state_name: 'Backlog',
82
+ assignee_name: null,
83
+ priority_label: 'No priority',
84
+ created_at: '2026-04-03T18:38:27.932Z',
85
+ updated_at: '2026-04-03T18:38:28.177Z',
86
+ url: 'https://linear.app/x/issue/PROJ-441',
87
+ // Read-side metadata Linear's webhook normalizer emits:
88
+ _connection: { provider: 'linear' },
89
+ _webhook: { action: 'update' },
90
+ descriptionData: '{"type":"doc"}',
91
+ }));
92
+ const variables = req.body.variables;
93
+ assert.strictEqual(variables.id, PAGE_UUID);
94
+ assert.deepStrictEqual(variables.input, {
95
+ title: 'edited title',
96
+ description: 'edited description',
97
+ descriptionData: '{"type":"doc"}',
98
+ });
99
+ });
63
100
  it('unwraps the synced envelope written by LinearAdapter.renderContent', () => {
64
101
  // This is the exact shape an agent sees when it reads a synced
65
102
  // /linear/issues/<id>.json file produced by LinearAdapter.renderContent.
@@ -1 +1 @@
1
- {"version":3,"file":"writeback.test.js","sourceRoot":"","sources":["../src/writeback.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAEzD,MAAM,SAAS,GAAG,sCAAsC,CAAC;AACzD,MAAM,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;AAE7C,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAChC,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAC9B,EAAE,CAAC,+DAA+D,EAAE,GAAG,EAAE;YACvE,MAAM,GAAG,GAAG,uBAAuB,CACjC,iCAAiC,QAAQ,oBAAoB,EAC7D,qBAAqB,CACtB,CAAC;YACF,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;YACjD,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YACvC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;YAC7C,MAAM,KAAK,GAAI,GAAG,CAAC,IAAI,CAAC,SAA0D,CAAC,KAAK,CAAC;YACzF,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;YAC7C,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,qBAAqB,CAAC,CAAC;QACxD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;YACjD,MAAM,GAAG,GAAG,uBAAuB,CACjC,iCAAiC,QAAQ,oBAAoB,EAC7D,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,qBAAqB,EAAE,IAAI,EAAE,CAAC,CACvE,CAAC;YACF,MAAM,KAAK,GAAI,GAAG,CAAC,IAAI,CAAC,SAEtB,CAAC,KAAK,CAAC;YACT,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;YAChD,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,qBAAqB,EAAE,IAAI,CAAC,CAAC;QACxD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;YAC7C,MAAM,CAAC,MAAM,CACX,GAAG,EAAE,CACH,uBAAuB,CACrB,iCAAiC,QAAQ,oBAAoB,EAC7D,IAAI,CACL,EACH,6BAA6B,CAC9B,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oEAAoE,EAAE,GAAG,EAAE;YAC5E,MAAM,CAAC,MAAM,CACX,GAAG,EAAE,CACH,uBAAuB,CACrB,0DAA0D,EAC1D,IAAI,CACL,EACH,yCAAyC,CAC1C,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sEAAsE,EAAE,GAAG,EAAE;YAC9E,MAAM,CAAC,MAAM,CACX,GAAG,EAAE,CAAC,uBAAuB,CAAC,2CAA2C,EAAE,IAAI,CAAC,EAChF,0BAA0B,CAC3B,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;QAC5B,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;YAC9C,MAAM,GAAG,GAAG,uBAAuB,CACjC,yBAAyB,EACzB,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,kBAAkB,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAC7E,CAAC;YACF,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;YAC/C,MAAM,KAAK,GAAI,GAAG,CAAC,IAAI,CAAC,SAEtB,CAAC,KAAK,CAAC;YACT,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YAC3C,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,kBAAkB,CAAC,CAAC;YACpD,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;YAClC,MAAM,CAAC,MAAM,CACX,GAAG,EAAE,CAAC,uBAAuB,CAAC,yBAAyB,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,EACxF,qBAAqB,CACtB,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;QAC5B,EAAE,CAAC,gEAAgE,EAAE,GAAG,EAAE;YACxE,MAAM,GAAG,GAAG,uBAAuB,CACjC,iCAAiC,QAAQ,OAAO,EAChD,IAAI,CAAC,SAAS,CAAC;gBACb,EAAE,EAAE,oBAAoB;gBACxB,UAAU,EAAE,UAAU;gBACtB,SAAS,EAAE,oBAAoB;gBAC/B,KAAK,EAAE,WAAW;gBAClB,WAAW,EAAE,iBAAiB;aAC/B,CAAC,CACH,CAAC;YACF,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;YAC/C,MAAM,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC,SAA2D,CAAC;YACvF,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;YAC5C,MAAM,CAAC,eAAe,CAAC,SAAS,CAAC,KAAK,EAAE;gBACtC,KAAK,EAAE,WAAW;gBAClB,WAAW,EAAE,iBAAiB;aAC/B,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oEAAoE,EAAE,GAAG,EAAE;YAC5E,+DAA+D;YAC/D,yEAAyE;YACzE,wEAAwE;YACxE,qEAAqE;YACrE,4BAA4B;YAC5B,MAAM,GAAG,GAAG,uBAAuB,CACjC,iCAAiC,QAAQ,OAAO,EAChD,IAAI,CAAC,SAAS,CAAC;gBACb,QAAQ,EAAE,QAAQ;gBAClB,YAAY,EAAE,QAAQ;gBACtB,WAAW,EAAE,OAAO;gBACpB,SAAS,EAAE,eAAe;gBAC1B,UAAU,EAAE,OAAO;gBACnB,QAAQ,EAAE,SAAS;gBACnB,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE;oBACP,EAAE,EAAE,SAAS;oBACb,UAAU,EAAE,UAAU;oBACtB,KAAK,EAAE,cAAc;oBACrB,WAAW,EAAE,oBAAoB;oBACjC,QAAQ,EAAE,CAAC;iBACZ;aACF,CAAC,CACH,CAAC;YACF,MAAM,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC,SAA2D,CAAC;YACvF,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;YAC5C,kEAAkE;YAClE,yDAAyD;YACzD,MAAM,CAAC,eAAe,CAAC,SAAS,CAAC,KAAK,EAAE;gBACtC,KAAK,EAAE,cAAc;gBACrB,WAAW,EAAE,oBAAoB;gBACjC,QAAQ,EAAE,CAAC;aACZ,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;QAC/B,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;YACvC,MAAM,CAAC,MAAM,CACX,GAAG,EAAE,CAAC,uBAAuB,CAAC,2BAA2B,EAAE,IAAI,CAAC,EAChE,kCAAkC,CACnC,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"writeback.test.js","sourceRoot":"","sources":["../src/writeback.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAEzD,MAAM,SAAS,GAAG,sCAAsC,CAAC;AACzD,MAAM,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;AAE7C,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAChC,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAC9B,EAAE,CAAC,+DAA+D,EAAE,GAAG,EAAE;YACvE,MAAM,GAAG,GAAG,uBAAuB,CACjC,iCAAiC,QAAQ,oBAAoB,EAC7D,qBAAqB,CACtB,CAAC;YACF,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;YACjD,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YACvC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;YAC7C,MAAM,KAAK,GAAI,GAAG,CAAC,IAAI,CAAC,SAA0D,CAAC,KAAK,CAAC;YACzF,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;YAC7C,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,qBAAqB,CAAC,CAAC;QACxD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;YACjD,MAAM,GAAG,GAAG,uBAAuB,CACjC,iCAAiC,QAAQ,oBAAoB,EAC7D,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,qBAAqB,EAAE,IAAI,EAAE,CAAC,CACvE,CAAC;YACF,MAAM,KAAK,GAAI,GAAG,CAAC,IAAI,CAAC,SAEtB,CAAC,KAAK,CAAC;YACT,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;YAChD,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,qBAAqB,EAAE,IAAI,CAAC,CAAC;QACxD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;YAC7C,MAAM,CAAC,MAAM,CACX,GAAG,EAAE,CACH,uBAAuB,CACrB,iCAAiC,QAAQ,oBAAoB,EAC7D,IAAI,CACL,EACH,6BAA6B,CAC9B,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oEAAoE,EAAE,GAAG,EAAE;YAC5E,MAAM,CAAC,MAAM,CACX,GAAG,EAAE,CACH,uBAAuB,CACrB,0DAA0D,EAC1D,IAAI,CACL,EACH,yCAAyC,CAC1C,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sEAAsE,EAAE,GAAG,EAAE;YAC9E,MAAM,CAAC,MAAM,CACX,GAAG,EAAE,CAAC,uBAAuB,CAAC,2CAA2C,EAAE,IAAI,CAAC,EAChF,0BAA0B,CAC3B,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;QAC5B,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;YAC9C,MAAM,GAAG,GAAG,uBAAuB,CACjC,yBAAyB,EACzB,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,kBAAkB,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAC7E,CAAC;YACF,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;YAC/C,MAAM,KAAK,GAAI,GAAG,CAAC,IAAI,CAAC,SAEtB,CAAC,KAAK,CAAC;YACT,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YAC3C,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,kBAAkB,CAAC,CAAC;YACpD,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;YAClC,MAAM,CAAC,MAAM,CACX,GAAG,EAAE,CAAC,uBAAuB,CAAC,yBAAyB,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,EACxF,qBAAqB,CACtB,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;QAC5B,EAAE,CAAC,gEAAgE,EAAE,GAAG,EAAE;YACxE,MAAM,GAAG,GAAG,uBAAuB,CACjC,iCAAiC,QAAQ,OAAO,EAChD,IAAI,CAAC,SAAS,CAAC;gBACb,EAAE,EAAE,oBAAoB;gBACxB,UAAU,EAAE,UAAU;gBACtB,SAAS,EAAE,oBAAoB;gBAC/B,KAAK,EAAE,WAAW;gBAClB,WAAW,EAAE,iBAAiB;aAC/B,CAAC,CACH,CAAC;YACF,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;YAC/C,MAAM,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC,SAA2D,CAAC;YACvF,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;YAC5C,MAAM,CAAC,eAAe,CAAC,SAAS,CAAC,KAAK,EAAE;gBACtC,KAAK,EAAE,WAAW;gBAClB,WAAW,EAAE,iBAAiB;aAC/B,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,6EAA6E,EAAE,GAAG,EAAE;YACrF,sEAAsE;YACtE,gEAAgE;YAChE,kEAAkE;YAClE,qEAAqE;YACrE,sEAAsE;YACtE,qEAAqE;YACrE,2DAA2D;YAC3D,gDAAgD;YAChD,EAAE;YACF,sEAAsE;YACtE,qEAAqE;YACrE,MAAM,GAAG,GAAG,uBAAuB,CACjC,kBAAkB,SAAS,OAAO,EAClC,IAAI,CAAC,SAAS,CAAC;gBACb,EAAE,EAAE,SAAS;gBACb,UAAU,EAAE,UAAU;gBACtB,KAAK,EAAE,cAAc;gBACrB,WAAW,EAAE,oBAAoB;gBACjC,gEAAgE;gBAChE,UAAU,EAAE,SAAS;gBACrB,aAAa,EAAE,IAAI;gBACnB,cAAc,EAAE,aAAa;gBAC7B,UAAU,EAAE,0BAA0B;gBACtC,UAAU,EAAE,0BAA0B;gBACtC,GAAG,EAAE,qCAAqC;gBAC1C,wDAAwD;gBACxD,WAAW,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE;gBACnC,QAAQ,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE;gBAC9B,eAAe,EAAE,gBAAgB;aAClC,CAAC,CACH,CAAC;YACF,MAAM,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC,SAA2D,CAAC;YACvF,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;YAC5C,MAAM,CAAC,eAAe,CAAC,SAAS,CAAC,KAAK,EAAE;gBACtC,KAAK,EAAE,cAAc;gBACrB,WAAW,EAAE,oBAAoB;gBACjC,eAAe,EAAE,gBAAgB;aAClC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oEAAoE,EAAE,GAAG,EAAE;YAC5E,+DAA+D;YAC/D,yEAAyE;YACzE,wEAAwE;YACxE,qEAAqE;YACrE,4BAA4B;YAC5B,MAAM,GAAG,GAAG,uBAAuB,CACjC,iCAAiC,QAAQ,OAAO,EAChD,IAAI,CAAC,SAAS,CAAC;gBACb,QAAQ,EAAE,QAAQ;gBAClB,YAAY,EAAE,QAAQ;gBACtB,WAAW,EAAE,OAAO;gBACpB,SAAS,EAAE,eAAe;gBAC1B,UAAU,EAAE,OAAO;gBACnB,QAAQ,EAAE,SAAS;gBACnB,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE;oBACP,EAAE,EAAE,SAAS;oBACb,UAAU,EAAE,UAAU;oBACtB,KAAK,EAAE,cAAc;oBACrB,WAAW,EAAE,oBAAoB;oBACjC,QAAQ,EAAE,CAAC;iBACZ;aACF,CAAC,CACH,CAAC;YACF,MAAM,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC,SAA2D,CAAC;YACvF,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;YAC5C,kEAAkE;YAClE,yDAAyD;YACzD,MAAM,CAAC,eAAe,CAAC,SAAS,CAAC,KAAK,EAAE;gBACtC,KAAK,EAAE,cAAc;gBACrB,WAAW,EAAE,oBAAoB;gBACjC,QAAQ,EAAE,CAAC;aACZ,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;QAC/B,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;YACvC,MAAM,CAAC,MAAM,CACX,GAAG,EAAE,CAAC,uBAAuB,CAAC,2BAA2B,EAAE,IAAI,CAAC,EAChE,kCAAkC,CACnC,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@relayfile/adapter-linear",
3
- "version": "0.1.18",
3
+ "version": "0.1.19",
4
4
  "description": "Linear adapter bootstrap package for Relayfile",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",