@hydranium/cli 1.0.0-next.197 → 1.0.0-next.199
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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init-templates.d.ts","sourceRoot":"","sources":["../../src/commands/init-templates.ts"],"names":[],"mappings":"AAAA;;;;;;;kFAOkF;AAoElF,OAAO,KAAK,EAAE,eAAe,EAAE,QAAQ,EAA8B,MAAM,WAAW,CAAC;AAGvF,qFAAqF;AACrF,MAAM,WAAW,YAAY;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C;
|
|
1
|
+
{"version":3,"file":"init-templates.d.ts","sourceRoot":"","sources":["../../src/commands/init-templates.ts"],"names":[],"mappings":"AAAA;;;;;;;kFAOkF;AAoElF,OAAO,KAAK,EAAE,eAAe,EAAE,QAAQ,EAA8B,MAAM,WAAW,CAAC;AAGvF,qFAAqF;AACrF,MAAM,WAAW,YAAY;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C;AAs6DD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,eAAe,GAAG,QAAQ,EAAE,CAqD3E"}
|
|
@@ -1704,27 +1704,28 @@ export class __GRAMMAR__DiagramConfiguration implements DiagramConfiguration {
|
|
|
1704
1704
|
// read-only is a deletion the compiler checks, while read-only → editable is
|
|
1705
1705
|
// authoring against a seam you have not used yet.
|
|
1706
1706
|
//
|
|
1707
|
-
// **It
|
|
1708
|
-
// \`
|
|
1709
|
-
//
|
|
1710
|
-
//
|
|
1711
|
-
//
|
|
1712
|
-
//
|
|
1713
|
-
//
|
|
1714
|
-
// \`HydraniumGlspRecordingCommand\` over \`state.sourceModel\` instead — the same
|
|
1715
|
-
// binding the diagram's own save action needs.
|
|
1707
|
+
// **It edits the operation's working copy.** A handler runs inside an operation,
|
|
1708
|
+
// where \`sourceRoot\` is a copy of the built root: the recording command's
|
|
1709
|
+
// runnable appends to the copy, and the operation writes the copy's text through
|
|
1710
|
+
// the grammar's \`Serializer\` once, gated on the version the copy was made at,
|
|
1711
|
+
// with undo and redo replaying that one change. A command that writes the
|
|
1712
|
+
// document itself instead reads no text off the copy, which has no \`$document\`,
|
|
1713
|
+
// and the operation's own write then overwrites it.
|
|
1716
1714
|
//
|
|
1717
1715
|
// **The drop location is discarded.** \`needsClientLayout\` is \`true\` and the
|
|
1718
1716
|
// starter grammar persists no bounds, so there is nowhere to put a coordinate: the
|
|
1719
1717
|
// node is appended at the end of the document and the client places it.
|
|
1720
1718
|
//
|
|
1721
1719
|
// Like \`types.ts\`, \`gmodel-factory.ts\` and \`diagram-configuration.ts\`, this file
|
|
1722
|
-
// knows the starter grammar's
|
|
1723
|
-
//
|
|
1720
|
+
// knows the starter grammar's shape — the \`nodes\` list and the \`__NODE_RULE__\`
|
|
1721
|
+
// it holds. Replacing the grammar means replacing these four together.
|
|
1724
1722
|
|
|
1725
1723
|
import { type Command, type CreateNodeOperation, JsonCreateNodeOperationHandler, type MaybePromise } from '@eclipse-glsp/server';
|
|
1724
|
+
import { appendChild } from '@hydranium/core';
|
|
1725
|
+
import { HydraniumGlspRecordingCommand } from '@hydranium/glsp-server';
|
|
1726
1726
|
import { findNextUnique } from '@hydranium/protocol';
|
|
1727
1727
|
import { injectable } from 'inversify';
|
|
1728
|
+
import type { __NODE_RULE__ } from '../../language-server/ast.js';
|
|
1728
1729
|
import { ${upper}_NODE_TYPE } from './types.js';
|
|
1729
1730
|
import type { __GRAMMAR__GlspState } from './state.js';
|
|
1730
1731
|
|
|
@@ -1743,34 +1744,14 @@ export class __GRAMMAR__CreateNodeOperationHandler extends JsonCreateNodeOperati
|
|
|
1743
1744
|
if (!this.elementTypeIds.includes(operation.elementTypeId)) {
|
|
1744
1745
|
return undefined;
|
|
1745
1746
|
}
|
|
1746
|
-
|
|
1747
|
-
|
|
1748
|
-
|
|
1749
|
-
before,
|
|
1750
|
-
findNextUnique(
|
|
1747
|
+
return new HydraniumGlspRecordingCommand(this.modelState, this.label, () => {
|
|
1748
|
+
const root = this.modelState.sourceRoot;
|
|
1749
|
+
const name = findNextUnique(
|
|
1751
1750
|
NODE_NAME_STEM,
|
|
1752
|
-
|
|
1753
|
-
)
|
|
1754
|
-
|
|
1755
|
-
|
|
1756
|
-
// has exactly one field, so there is nothing to merge a concurrent edit into.
|
|
1757
|
-
return {
|
|
1758
|
-
execute: () => state.updateSourceModel({ text: after }),
|
|
1759
|
-
undo: () => state.updateSourceModel({ text: before }),
|
|
1760
|
-
redo: () => state.updateSourceModel({ text: after })
|
|
1761
|
-
};
|
|
1762
|
-
}
|
|
1763
|
-
|
|
1764
|
-
/** The text the captured source root was parsed from — the baseline an edit appends to. */
|
|
1765
|
-
protected documentText(): string {
|
|
1766
|
-
return this.modelState.sourceRoot.$document?.textDocument.getText() ?? '';
|
|
1767
|
-
}
|
|
1768
|
-
|
|
1769
|
-
/** \`text\` with one more node declaration, under exactly one trailing newline. */
|
|
1770
|
-
protected withNode(text: string, name: string): string {
|
|
1771
|
-
const body = text.trimEnd();
|
|
1772
|
-
const declaration = \`node \${name}\`;
|
|
1773
|
-
return body.length === 0 ? \`\${declaration}\\n\` : \`\${body}\\n\${declaration}\\n\`;
|
|
1751
|
+
root.nodes.map(node => node.name)
|
|
1752
|
+
);
|
|
1753
|
+
appendChild(root, 'nodes', root.nodes, { $type: '__NODE_RULE__', name } as __NODE_RULE__);
|
|
1754
|
+
});
|
|
1774
1755
|
}
|
|
1775
1756
|
}
|
|
1776
1757
|
`;
|
|
@@ -1856,6 +1837,75 @@ export class __GRAMMAR__DiagramModule extends AbstractHydraniumGlspDiagramModule
|
|
|
1856
1837
|
binding.add(__GRAMMAR__CreateNodeOperationHandler);
|
|
1857
1838
|
}
|
|
1858
1839
|
}
|
|
1840
|
+
`;
|
|
1841
|
+
const diagramTest = `// The starter create-node handler, run the way a client runs it: an in-process
|
|
1842
|
+
// GLSP server opens a document, a create-node operation adds a node, and an undo
|
|
1843
|
+
// and a redo take it out and put it back. Every step must keep the nodes the
|
|
1844
|
+
// document already had, and its comments: the diagram writes the document from
|
|
1845
|
+
// its AST, which carries none.
|
|
1846
|
+
|
|
1847
|
+
import 'reflect-metadata';
|
|
1848
|
+
import { type Action, CreateNodeOperation, RedoAction, ServerModule, SetDirtyStateAction, UndoAction } from '@eclipse-glsp/server';
|
|
1849
|
+
import { initializeWorkspaceProgrammatically } from '@hydranium/core';
|
|
1850
|
+
import { makeScratchWorkspace, type ScratchWorkspace } from '@hydranium/core/testing/node';
|
|
1851
|
+
import { HydraniumGlspAppModule } from '@hydranium/glsp-server';
|
|
1852
|
+
import { type GlspHarness, makeGlspHarness } from '@hydranium/glsp-server/testing';
|
|
1853
|
+
import { waitFor } from '@hydranium/protocol/testing';
|
|
1854
|
+
import { afterEach, describe, expect, it } from 'vitest';
|
|
1855
|
+
import { __GRAMMAR__DiagramModule } from '../src/glsp/__GRAMMAR_ID__/diagram-module.js';
|
|
1856
|
+
import type { __GRAMMAR__GlspState } from '../src/glsp/__GRAMMAR_ID__/state.js';
|
|
1857
|
+
import { ${upper}_DIAGRAM_TYPE, ${upper}_NODE_TYPE } from '../src/glsp/__GRAMMAR_ID__/types.js';
|
|
1858
|
+
import { createServices } from '../src/services.js';
|
|
1859
|
+
|
|
1860
|
+
let workspace: ScratchWorkspace | undefined;
|
|
1861
|
+
let diagram: GlspHarness<__GRAMMAR__GlspState> | undefined;
|
|
1862
|
+
|
|
1863
|
+
afterEach(() => {
|
|
1864
|
+
diagram?.dispose();
|
|
1865
|
+
workspace?.dispose();
|
|
1866
|
+
diagram = undefined;
|
|
1867
|
+
workspace = undefined;
|
|
1868
|
+
});
|
|
1869
|
+
|
|
1870
|
+
/** Send \`action\` and wait for the dirty state the server answers it with, which it sends once the edit is written. */
|
|
1871
|
+
async function send(harness: GlspHarness<__GRAMMAR__GlspState>, action: Action, reason: string): Promise<void> {
|
|
1872
|
+
const before = harness.actions.length;
|
|
1873
|
+
harness.dispatch(action);
|
|
1874
|
+
await waitFor(() => harness.actions.slice(before).some(sent => SetDirtyStateAction.is(sent) && sent.reason === reason), {
|
|
1875
|
+
message: \`no '\${reason}' dirty state\`
|
|
1876
|
+
});
|
|
1877
|
+
}
|
|
1878
|
+
|
|
1879
|
+
describe('__GRAMMAR__ diagram', () => {
|
|
1880
|
+
it('creates a node after the existing ones, keeping their comments, and undoes and redoes it', async () => {
|
|
1881
|
+
workspace = makeScratchWorkspace({ prefix: '__GRAMMAR_ID__-diagram-' });
|
|
1882
|
+
const original = '// keep this comment\\nnode first -> second\\n// about second\\nnode second';
|
|
1883
|
+
const file = workspace.write('model.__EXTENSION__', original);
|
|
1884
|
+
const { shared } = createServices();
|
|
1885
|
+
await initializeWorkspaceProgrammatically(shared, workspace.root);
|
|
1886
|
+
diagram = makeGlspHarness<__GRAMMAR__GlspState>({
|
|
1887
|
+
serverModule: new ServerModule().configureDiagramModule(new __GRAMMAR__DiagramModule()),
|
|
1888
|
+
diagramType: ${upper}_DIAGRAM_TYPE,
|
|
1889
|
+
appModules: [new HydraniumGlspAppModule({ shared })]
|
|
1890
|
+
});
|
|
1891
|
+
await diagram.start();
|
|
1892
|
+
await diagram.openDocument(file);
|
|
1893
|
+
const uri = workspace.uri('model.__EXTENSION__');
|
|
1894
|
+
const text = (): string | undefined => shared.workspace.TextDocuments.get(uri)?.getText();
|
|
1895
|
+
|
|
1896
|
+
await send(diagram, CreateNodeOperation.create(${upper}_NODE_TYPE), 'operation');
|
|
1897
|
+
const created = text();
|
|
1898
|
+
await send(diagram, UndoAction.create(), 'undo');
|
|
1899
|
+
const undone = text();
|
|
1900
|
+
await send(diagram, RedoAction.create(), 'redo');
|
|
1901
|
+
|
|
1902
|
+
expect({ created, undone, redone: text() }).toEqual({
|
|
1903
|
+
created: \`\${original}\\nnode Node\`,
|
|
1904
|
+
undone: original,
|
|
1905
|
+
redone: \`\${original}\\nnode Node\`
|
|
1906
|
+
});
|
|
1907
|
+
});
|
|
1908
|
+
});
|
|
1859
1909
|
`;
|
|
1860
1910
|
return [
|
|
1861
1911
|
{ path: `${dir}/types.ts`, content: render(types) },
|
|
@@ -1865,7 +1915,8 @@ export class __GRAMMAR__DiagramModule extends AbstractHydraniumGlspDiagramModule
|
|
|
1865
1915
|
{ path: `${dir}/gmodel-factory.ts`, content: render(factory) },
|
|
1866
1916
|
{ path: `${dir}/diagram-configuration.ts`, content: render(configuration) },
|
|
1867
1917
|
{ path: `${dir}/create-node-operation-handler.ts`, content: render(createHandler) },
|
|
1868
|
-
{ path: `${dir}/diagram-module.ts`, content: render(module) }
|
|
1918
|
+
{ path: `${dir}/diagram-module.ts`, content: render(module) },
|
|
1919
|
+
{ path: `test/${grammar.grammarId}-diagram.test.ts`, content: render(diagramTest) }
|
|
1869
1920
|
];
|
|
1870
1921
|
}
|
|
1871
1922
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init-templates.js","sourceRoot":"","sources":["../../src/commands/init-templates.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"init-templates.js","sourceRoot":"","sources":["../../src/commands/init-templates.ts"],"names":[],"mappings":"AAAA;;;;;;;kFAOkF;AAElF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+DG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAUnD;;;;;;;;GAQG;AACH,MAAM,UAAU,oBAAoB;IACjC,OAAO,cAAc,EAAE,CAAC;AAC3B,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,YAAY,CAAC,WAA4B;IAC/C,OAAO,IAAI,WAAW,CAAC,gBAAgB,EAAE,CAAC;AAC7C,CAAC;AAED,kCAAkC;AAClC,SAAS,cAAc,CAAC,SAAiB;IACtC,OAAO,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;AACrD,CAAC;AAED,0CAA0C;AAC1C,SAAS,OAAO,CAAC,IAAY,EAAE,WAA4B;IACxD,OAAO,IAAI;SACP,OAAO,CAAC,WAAW,EAAE,WAAW,CAAC,IAAI,CAAC;SACtC,OAAO,CAAC,iBAAiB,EAAE,WAAW,CAAC,SAAS,CAAC;SACjD,OAAO,CAAC,wBAAwB,EAAE,cAAc,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC;AAChF,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,WAAW,CAAC,IAAY,EAAE,OAAyB;IACzD,OAAO,IAAI;SACP,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC,SAAS,CAAC;SAC7C,OAAO,CAAC,cAAc,EAAE,OAAO,CAAC,OAAO,CAAC;SACxC,OAAO,CAAC,kBAAkB,EAAE,OAAO,CAAC,UAAU,CAAC;SAC/C,OAAO,CAAC,gBAAgB,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;SAChD,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC,SAAS,CAAC;SAC7C,OAAO,CAAC,gBAAgB,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;AACnD,CAAC;AAED,mDAAmD;AACnD,SAAS,MAAM,CAAC,IAAY,EAAE,WAA4B,EAAE,OAAyB;IAClF,OAAO,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,OAAO,CAAC,CAAC;AAC3D,CAAC;AAED,6EAA6E;AAC7E,SAAS,UAAU,CAAC,MAAyB;IAC1C,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACvD,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,eAAe,GAAG,GAAG,CAAC;AAE5B,qGAAqG;AACrG,SAAS,UAAU,CAAC,WAA4B;IAC7C,OAAO,WAAW,CAAC,SAAS,CAAC,SAAS,EAAE,UAAU,IAAI,eAAe,CAAC;AACzE,CAAC;AAED;;;;GAIG;AACH,SAAS,UAAU,CAAC,OAA0B,EAAE,IAAY,EAAE,OAAe,EAAE,QAAQ,GAAG,KAAK;IAC5F,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC;IACpD,MAAM,MAAM,GAAG,GAAG,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC;IACtE,OAAO,MAAM,CAAC,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,IAAI,IAAI,CAAC;AACtI,CAAC;AAED,yFAAyF;AACzF,SAAS,YAAY,CAAC,QAA2B,EAAE,MAAc,EAAE,OAAe;IAC/E,MAAM,MAAM,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;IAC1C,OAAO,GAAG,MAAM,GAAG,MAAM,EAAE,CAAC,MAAM,IAAI,OAAO;QAC1C,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,MAAM,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,MAAM,MAAM,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,MAAM,GAAG,CAAC;AAC1F,CAAC;AAED;;;;GAIG;AACH,MAAM,2BAA2B,GAAwC;IACtE,GAAG,EAAE,CAAC,iBAAiB,EAAE,oBAAoB,EAAE,qBAAqB,CAAC;IACrE,IAAI,EAAE,CAAC,wBAAwB,CAAC;IAChC,IAAI,EAAE,CAAC,wBAAwB,CAAC;CAClC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,6BAA6B,GAAuD;IACvF,GAAG,EAAE;QACF,OAAO,EAAE,OAAO;QAChB,uBAAuB,EAAE,SAAS;KACpC;IACD,IAAI,EAAE,EAAE;IACR,IAAI,EAAE;QACH,qBAAqB,EAAE,OAAO;QAC9B,sBAAsB,EAAE,OAAO;QAC/B,2EAA2E;QAC3E,0EAA0E;QAC1E,SAAS,EAAE,QAAQ;QACnB,kBAAkB,EAAE,QAAQ;KAC9B;CACH,CAAC;AAEF,+EAA+E;AAC/E,SAAS,eAAe,CAAC,WAA4B,EAAE,MAAc;IAClE,MAAM,MAAM,GAA2B,EAAE,CAAC;IAC1C,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,KAAK,EAAE,CAAC;QACpC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,6BAA6B,CAAC,IAAI,CAAC,CAAC,CAAC;QAC3D,KAAK,MAAM,SAAS,IAAI,2BAA2B,CAAC,IAAI,CAAC,EAAE,CAAC;YACzD,MAAM,CAAC,SAAS,CAAC,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;QACjD,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;SACtB,IAAI,EAAE;SACN,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,MAAM,IAAI,IAAI,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;SACpD,IAAI,CAAC,KAAK,CAAC,CAAC;AACnB,CAAC;AAED,+EAA+E;AAC/E,0EAA0E;AAC1E,uEAAuE;AACvE,EAAE;AACF,iFAAiF;AACjF,4EAA4E;AAC5E,gFAAgF;AAChF,0EAA0E;AAC1E,gDAAgD;AAChD,EAAE;AACF,iFAAiF;AACjF,+EAA+E;AAC/E,gFAAgF;AAChF,6EAA6E;AAC7E,6DAA6D;AAC7D,EAAE;AACF,iFAAiF;AACjF,gFAAgF;AAChF,8EAA8E;AAC9E,+EAA+E;AAC/E,6EAA6E;AAC7E,gFAAgF;AAChF,gDAAgD;AAChD,EAAE;AACF,+EAA+E;AAC/E,+EAA+E;AAC/E,uEAAuE;AACvE,0EAA0E;AAC1E,+EAA+E;AAC/E,iEAAiE;AACjE,MAAM,YAAY,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6CpB,CAAC;AAEF;;;;;;;GAOG;AACH,SAAS,MAAM,CAAC,WAA4B;IACzC,MAAM,SAAS,GAAG,WAAW,CAAC,SAAS,CAAC,SAAS,CAAC;IAClD,OAAO,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,gBAAgB,SAAS,CAAC,UAAU,MAAM,CAAC;AAC3F,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,QAAQ,CAAC,WAA4B;IAC3C,MAAM,OAAO,GAA4B,CAAC,CAAC,WAAW,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC,CAAC;IAClF,IAAI,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QACtC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,WAAW,CAAC,SAAS,cAAc,EAAE,yBAAyB,CAAC,CAAC,CAAC;IACrF,CAAC;IACD,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,QAAQ,IAAI,OAAO,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;AAC3F,CAAC;AAED,2FAA2F;AAC3F,SAAS,WAAW,CAAC,WAA4B;IAC9C,MAAM,EAAE,KAAK,EAAE,GAAG,WAAW,CAAC,SAAS,CAAC;IACxC,MAAM,WAAW,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,WAAW,CAAC,SAAS,EAAE,CAAC;IACtG,MAAM,QAAQ,GACX,CAAC,WAAW,EAAE,SAAS,EAAE,iBAAiB,EAAE,WAAW,CAAC,SAAS,CAAC;SAC9D,IAAI,EAAE;SACN,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;SAChD,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;IAC1B,4EAA4E;IAC5E,yEAAyE;IACzE,6EAA6E;IAC7E,8EAA8E;IAC9E,MAAM,SAAS,GAAG,WAAW,CAAC,SAAS,CAAC,SAAS,CAAC;IAClD,MAAM,YAAY,GACf,SAAS,EAAE,YAAY,KAAK,SAAS;QAClC,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC,YAAY,EAAE,CAAC;IAC3F,MAAM,IAAI,GACP,SAAS,EAAE,YAAY,KAAK,SAAS;QAClC,CAAC,CAAC,oFAAoF,YAAY,gCAAgC;QAClI,CAAC,CAAC,SAAS,EAAE,YAAY,KAAK,SAAS;YACrC,CAAC,CAAC,mDAAmD;YACrD,CAAC,CAAC,EAAE,CAAC;IACb,OAAO,OAAO,CAAC,YAAY,EAAE,WAAW,CAAC;SACrC,OAAO,CAAC,kBAAkB,EAAE,WAAW,CAAC;SACxC,OAAO,CAAC,cAAc,EAAE,QAAQ,CAAC;SACjC,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC;SACzC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC;SACzB,OAAO,CAAC,aAAa,EAAE,WAAW,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,EAAE,CAAC;SACnF,OAAO,CAAC,aAAa,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;SAC3C,OAAO,CAAC,mBAAmB,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC;SACvD,OAAO,CAAC,kBAAkB,EAAE,eAAe,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC;AACzE,CAAC;AAED;;;;;;GAMG;AACH,SAAS,aAAa,CAAC,WAA4B;IAChD,MAAM,SAAS,GAAG,WAAW,CAAC,QAAQ;SAClC,GAAG,CAAC,OAAO,CAAC,EAAE,CACZ;QACG,OAAO;QACP,gBAAgB,OAAO,CAAC,UAAU,IAAI;QACtC,iCAAiC,OAAO,CAAC,SAAS,YAAY;QAC9D,4BAA4B,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,KAAK,SAAS,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;QACjG,qBAAqB;QACrB,4BAA4B,OAAO,CAAC,UAAU,mBAAmB;QACjE,SAAS;QACT,OAAO;KACT,CAAC,IAAI,CAAC,IAAI,CAAC,CACd;SACA,IAAI,CAAC,KAAK,CAAC,CAAC;IAChB,OAAO;oBACU,WAAW,CAAC,IAAI;;EAElC,SAAS;;;;CAIV,CAAC;AACF,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,yBAAyB,GAAgD;IAC5E,CAAC,QAAQ,EAAE,QAAQ,CAAC;IACpB,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,CAAC;IACnB,CAAC,QAAQ,EAAE,UAAU,CAAC;IACtB,CAAC,kBAAkB,EAAE,UAAU,CAAC;IAChC,CAAC,SAAS,EAAE,KAAK,CAAC;IAClB,CAAC,QAAQ,EAAE,KAAK,CAAC;IACjB,CAAC,QAAQ,EAAE,IAAI,CAAC;IAChB,CAAC,iBAAiB,EAAE,IAAI,CAAC;IACzB,4EAA4E;IAC5E,4EAA4E;IAC5E,uEAAuE;IACvE,+BAA+B;IAC/B,CAAC,mBAAmB,EAAE,IAAI,CAAC;IAC3B,CAAC,cAAc,EAAE,IAAI,CAAC;IACtB,CAAC,aAAa,EAAE,IAAI,CAAC;IACrB,CAAC,wBAAwB,EAAE,IAAI,CAAC;IAChC,CAAC,uBAAuB,EAAE,IAAI,CAAC;IAC/B,CAAC,kCAAkC,EAAE,IAAI,CAAC;IAC1C,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC;CACrB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,qBAAqB,GAAsB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;AAEvE,uGAAuG;AACvG,SAAS,UAAU,CAAC,IAA2B,EAAE,KAAgB;IAC9D,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AACzD,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,YAAY,CAAC,WAA4B;IAC/C,MAAM,SAAS,GAAG,WAAW,CAAC,SAAS,CAAC,SAAS,CAAC;IAClD,MAAM,IAAI,GAAG,SAAS,EAAE,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC;IACvG,MAAM,OAAO,GACV,IAAI,KAAK,SAAS;QACf,CAAC,CAAC,yBAAyB;QAC3B,CAAC,CAAC;YACG,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,qBAAqB,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YACnF,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,qBAAqB,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;SAC9H,CAAC;IACV,MAAM,WAAW,GAAG,SAAS,EAAE,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,iBAAiB,SAAS,CAAC,YAAY,MAAM,CAAC;IAC/G,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACjG,OAAO,MAAM,WAAW,2BAA2B,IAAI,oDAAoD,CAAC;AAC/G,CAAC;AAED,2EAA2E;AAC3E,6EAA6E;AAC7E,sEAAsE;AACtE,8EAA8E;AAC9E,+EAA+E;AAC/E,6EAA6E;AAC7E,4EAA4E;AAC5E,MAAM,aAAa,GAAG;;;;;;;;;;CAUrB,CAAC;AAEF,MAAM,aAAa,GAAG;;;;;;;;;;;;;;CAcrB,CAAC;AAEF,MAAM,SAAS,GAAG;;;;;;CAMjB,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,MAAM,0BAA0B,GAAG;;;;;;CAMlC,CAAC;AAEF,oGAAoG;AACpG,MAAM,SAAS,GAAG;;;;CAIjB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,cAAc,GAAG;;;;;;;;EAQrB,SAAS,EAAE,CAAC;AAEd,2GAA2G;AAC3G,SAAS,WAAW,CAAC,MAAe;IACjC,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;IAChE,OAAO;EACR,MAAM,CAAC,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE;;;;;;;;;;;;;;;;;;;;;EAqB1B,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;AACxB,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,UAAU,CAAC,WAA4B;IAC7C,MAAM,OAAO,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;IACxC,MAAM,CAAC,OAAO,EAAE,GAAG,UAAU,CAAC,GAAG,WAAW,CAAC,QAAQ,CAAC;IACtD,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;IACpC,MAAM,gBAAgB,GAAG;QACtB,GAAG,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,OAAO,iBAAiB,CAAC;QAC3E,GAAG,WAAW,CAAC,IAAI,uBAAuB;KAC5C,CAAC;IAEF,MAAM,iBAAiB,GAAG,KAAK;QAC5B,CAAC,CAAC;;;CAGP;QACK,CAAC,CAAC,EAAE,CAAC;IAER,MAAM,YAAY,GAAG,KAAK;QACvB,CAAC,CAAC;;;;;;;;;GASL;QACG,CAAC,CAAC,gGAAgG,CAAC;IAEtG,MAAM,iBAAiB,GAAG,WAAW,CAAC,QAAQ;SAC1C,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,YAAY,OAAO,CAAC,OAAO,wBAAwB,OAAO,CAAC,SAAS,kBAAkB,CAAC;SACtG,IAAI,CAAC,IAAI,CAAC,CAAC;IAEf,sEAAsE;IACtE,yEAAyE;IACzE,wEAAwE;IACxE,uEAAuE;IACvE,MAAM,eAAe,GAAG,WAAW,CAAC,QAAQ;SACxC,GAAG,CACD,OAAO,CAAC,EAAE,CAAC,SAAS,OAAO,CAAC,OAAO;;oCAER,OAAO,CAAC,OAAO;;GAEhD,CACI;SACA,IAAI,CAAC,MAAM,CAAC,CAAC;IAEjB,MAAM,mBAAmB,GAAG,KAAK;QAC9B,CAAC,CAAC,iCAAiC,YAAY,CAC1C,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,gBAAgB,OAAO,CAAC,OAAO,mCAAmC,OAAO,CAAC,OAAO,kBAAkB,CAAC,EAC9H,QAAQ,EACR,OAAO,CACT,EAAE;QACL,CAAC,CAAC,EAAE,CAAC;IAER,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,sBAAsB,CAAC;IAC7E,MAAM,UAAU,GAAG,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,OAAO,CAAC,OAAO,qBAAqB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9G,MAAM,WAAW,GAAG,KAAK;QACtB,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,OAAO,CAAC,OAAO,eAAe,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QACpG,CAAC,CAAC,GAAG,OAAO,CAAC,OAAO,YAAY,CAAC;IAEpC,MAAM,IAAI,GAAG;;;;;;;;;;;sCAYV,KAAK;QACF,CAAC,CAAC;;;;kCAIuB;QACzB,CAAC,CAAC;;;oFAIR;;EAED,UAAU,CACT,CAAC,+BAA+B,EAAE,6BAA6B,EAAE,6BAA6B,EAAE,mCAAmC,CAAC,EACpI,qBAAqB,EACrB,OAAO,CACT;;;;EAIC,UAAU,CAAC,gBAAgB,EAAE,uBAAuB,EAAE,OAAO,CAAC;EAC9D,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2BjB,iBAAiB;EACjB,YAAY;;EAEZ,eAAe;;;;;;;;EAQf,UAAU;;;WAGD,WAAW;;;;;;;;;sBASA,OAAO,CAAC,OAAO;0BACX,OAAO,CAAC,OAAO;;SAEhC,mBAAmB;;sBAEN,WAAW;;CAEhC,CAAC;IACC,OAAO,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;AACrC,CAAC;AAED,MAAM,QAAQ,GAAG;;;;;;;;;;;;CAYhB,CAAC;AAEF,MAAM,GAAG,GAAG;;;;;;;;;;;;;;;;;;;;;;;CAuBX,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,UAAU,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqDlB,CAAC;AAEF;;;;;GAKG;AACH,SAAS,gBAAgB,CAAC,WAA4B;IACnD,MAAM,KAAK,GAAG,cAAc,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IACpD,OAAO;QACJ,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,2BAA2B,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACpF,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,oBAAoB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KAC/E,CAAC;AACL,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,aAAa,CAAC,WAA4B;IAChD,MAAM,KAAK,GAAG,cAAc,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IACpD,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAChD,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAChD,MAAM,MAAM,GAAG;QACZ,GAAG,CAAC,IAAI;YACL,CAAC,CAAC;gBACG,8FAA8F,KAAK,gCAAgC,WAAW,CAAC,SAAS,qBAAqB;aAC/K;YACH,CAAC,CAAC,EAAE,CAAC;QACR,GAAG,CAAC,IAAI;YACL,CAAC,CAAC;gBACG,uFAAuF,KAAK,yBAAyB,WAAW,CAAC,SAAS,cAAc;aAC1J;YACH,CAAC,CAAC,EAAE,CAAC;KACV,CAAC;IACF,OAAO,2EAA2E,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;;;;;;;;;;;;EAY/G,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;CACpB,CAAC;AACF,CAAC;AAED,MAAM,KAAK,GAAG;;;;;;;;;;CAUb,CAAC;AAEF;;;;;GAKG;AACH,SAAS,SAAS,CAAC,WAA4B;IAC5C,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IACzC,OAAO,gBAAgB,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,oCAAoC,CAAC,CAAC,CAAC,IAAI,CAAC;AACpG,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,OAAO,GAAG,uBAAuB,CAAC;AAExC;;;;;;;;;GASG;AACH,SAAS,QAAQ,CAAC,WAA4B;IAC3C,MAAM,OAAO,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;IACxC,MAAM,KAAK,GAAG,CAAC,GAAG,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACjF,MAAM,KAAK,GAAG,cAAc,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IACpD,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAChD,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAChD,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACzE,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IAE3C,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAC5C,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,0CAA0C,CAAC,CAAC,CAAC,aAAa,CACxH,CAAC;IACF,8EAA8E;IAC9E,0EAA0E;IAC1E,8BAA8B;IAC9B,MAAM,WAAW,GACd,SAAS,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;IAEzH,mEAAmE;IACnE,sEAAsE;IACtE,MAAM,aAAa,GAAG,IAAI,CAAC,CAAC,CAAC,8BAA8B,CAAC,CAAC,CAAC,EAAE,CAAC;IACjE,MAAM,eAAe,GAAG,CAAC,gBAAgB,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,4BAA4B,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACjH,MAAM,WAAW,GAAG,IAAI;QACrB,CAAC,CAAC;;;CAGP;QACK,CAAC,CAAC,EAAE,CAAC;IACR,MAAM,cAAc,GAAG,QAAQ;SAC3B,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,YAAY,OAAO,CAAC,OAAO,gCAAgC,OAAO,CAAC,SAAS,wBAAwB,CAAC;SACpH,IAAI,CAAC,EAAE,CAAC,CAAC;IACb,MAAM,eAAe,GAAG,IAAI;QACzB,CAAC,CAAC,uBAAuB,MAAM,oBAAoB,MAAM;;;;;;EAM7D,UAAU,CAAC,KAAK,EAAE,yDAAyD,EAAE,OAAO,EAAE,IAAI,CAAC;CAC5F;QACK,CAAC,CAAC,EAAE,CAAC;IAER,2EAA2E;IAC3E,8EAA8E;IAC9E,8BAA8B;IAC9B,MAAM,YAAY,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC,MAAM;QACtD,CAAC,CAAC,UAAU,CAAC,gBAAgB,CAAC,WAAW,CAAC,EAAE,iBAAiB,EAAE,OAAO,CAAC,GAAG,IAAI;QAC9E,CAAC,CAAC,EAAE,CAAC;IAER,MAAM,SAAS,GAAG,IAAI;QACnB,CAAC,CAAC;;;;;;;;oBAQY,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;;;;;;;;;;;;0DAYqB,KAAK;;;;;;CAM9D;QACK,CAAC,CAAC,EAAE,CAAC;IAER,MAAM,SAAS,GAAG,IAAI;QACnB,CAAC,CAAC;;;;;;;;;;;;;;;qCAe6B,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,+BAA+B,OAAO,CAAC,OAAO,kBAAkB,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;;;kBAGrH,KAAK;;;CAGtB;QACK,CAAC,CAAC,EAAE,CAAC;IAER,MAAM,IAAI,GAAG,GAAG,OAAO,qCAAqC,WAAW;;;YAIpE,IAAI;QACD,CAAC,CAAC;;;;6EAIkE;QACpE,CAAC,CAAC,EACR;;;;;EAKD,aAAa,GAAG,WAAW,GAAG,UAAU,CAAC,eAAe,EAAE,sBAAsB,EAAE,OAAO,CAAC;EAC1F,IAAI,CAAC,CAAC,CAAC,wDAAwD,CAAC,CAAC,CAAC,EAAE;;;;;;;;EAQpE,cAAc,GAAG,eAAe;EAChC,YAAY,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,YAAY;;;;EAI9C,SAAS,GAAG,SAAS,EAAE,CAAC;IACvB,OAAO,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;AACrC,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,SAAS,kBAAkB,CAAC,WAA4B;IACrD,MAAM,OAAO,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;IACxC,MAAM,KAAK,GAAG,CAAC,GAAG,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACjF,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IAE3C,MAAM,IAAI,GAAG,GAAG,OAAO;;;;;;;;;;;;;;;;;;;;EAoBxB,UAAU,CAAC,CAAC,gBAAgB,EAAE,kBAAkB,CAAC,EAAE,sBAAsB,EAAE,OAAO,CAAC;;sBAE/D,MAAM,oBAAoB,MAAM;EACpD,UAAU,CAAC,KAAK,EAAE,yDAAyD,EAAE,OAAO,EAAE,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;uBAqBtE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;;;;;;;;;;CAUvC,CAAC;IACC,OAAO,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;AACrC,CAAC;AAED,wFAAwF;AACxF,SAAS,YAAY,CAAC,WAA4B;IAC/C,MAAM,GAAG,GAAG,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IACpE,MAAM,UAAU,GAAG,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC;IACjH,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,MAAM,YAAY,CAAC;IACxF,MAAM,IAAI,GAAG;;;;;;;;;;;;4CAY4B,KAAK;;;;yEAIwB,UAAU,CAAC,GAAG,CAAC;sFACF,UAAU,CAAC,UAAU,CAAC;;;;;;;;;CAS3G,CAAC;IACC,OAAO,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;AACrC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,mBAAmB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;IAwBxB,CAAC;AAEL;;;;;;;;;GASG;AACH,SAAS,iBAAiB,CAAC,WAA4B;IACpD,MAAM,OAAO,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;IACxC,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACxE,MAAM,aAAa,GAAG,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,SAAS,eAAe,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IAClH,MAAM,IAAI,GAAG;;;;;;;;;;;;EAYd,UAAU,CAAC,QAAQ,EAAE,+BAA+B,EAAE,OAAO,EAAE,IAAI,CAAC;EACpE,UAAU,CAAC,aAAa,EAAE,8DAA8D,EAAE,OAAO,EAAE,IAAI,CAAC;;;EAGxG,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,mBAAmB,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;CACpG,CAAC;IACC,OAAO,IAAI,CAAC;AACf,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;IAwBlB,CAAC;AAEL;;;;;;;;GAQG;AACH,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;IA2BlB,CAAC;AAEL;;;;;;;;;GASG;AACH,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;IAyBrB,CAAC;AAEL,2FAA2F;AAC3F,SAAS,WAAW,CAAC,WAA4B,EAAE,MAAc,EAAE,OAA0B,EAAE,KAAa;IACzG,MAAM,OAAO,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;IACxC,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACxE,OAAO,GAAG,MAAM;;;;EAIjB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,UAAU,CAAC,QAAQ,EAAE,+BAA+B,EAAE,OAAO,EAAE,IAAI,CAAC;;;EAGtH,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;CACtF,CAAC;AACF,CAAC;AAED,MAAM,cAAc,GAAG;;;;8DAIuC,CAAC;AAE/D,MAAM,cAAc,GAAG;;;;;+EAKwD,CAAC;AAEhF,MAAM,iBAAiB,GAAG;;;;;uDAK6B,CAAC;AAExD,mFAAmF;AACnF,SAAS,MAAM,CAAC,WAA4B;IACzC,MAAM,KAAK,GAAG,WAAW,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;IAC9C,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAChD,MAAM,gBAAgB,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAC/D,MAAM,cAAc,GAAG,WAAW,CAAC,QAAQ,CAAC,GAAG,CAC5C,OAAO,CAAC,EAAE,CAAC,mBAAmB,OAAO,CAAC,SAAS,sBAAsB,OAAO,CAAC,OAAO,gBAAgB,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CACvI,CAAC;IACF,MAAM,KAAK,GAAG;QACX,YAAY;QACZ,EAAE;QACF,kEAAkE;QAClE,EAAE;QACF,oBAAoB;QACpB,EAAE;QACF,SAAS;QACT,aAAa;QACb,gEAAgE;QAChE,yDAAyD;QACzD,iEAAiE;QACjE,KAAK;QACL,EAAE;QACF,qCAAqC;QACrC,EAAE;QACF,2EAA2E;QAC3E,qEAAqE;QACrE,gBAAgB;QAChB,SAAS;QACT,4BAA4B;QAC5B,wDAAwD;QACxD,EAAE;QACF,qCAAqC;QACrC,6DAA6D;QAC7D,EAAE;QACF,iEAAiE;QACjE,yEAAyE;QACzE,GAAG,CAAC,IAAI;YACL,CAAC,CAAC;gBACG,EAAE;gBACF,8EAA8E;gBAC9E,6EAA6E;gBAC7E,0EAA0E;gBAC1E,oCAAoC;gBACpC,GAAG;gBACH,gFAAgF;gBAChF,0EAA0E;gBAC1E,sFAAsF;gBACtF,8GAA8G,gBAAgB,QAAQ;aACxI;YACH,CAAC,CAAC,EAAE,CAAC;QACR,KAAK;QACL,EAAE;QACF,WAAW;QACX,EAAE;QACF,GAAG,cAAc;QACjB,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,8FAA8F,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAClH,uFAAuF;QACvF,GAAG,WAAW,CAAC,QAAQ,CAAC,GAAG,CACxB,OAAO,CAAC,EAAE,CACP,2BAA2B,OAAO,CAAC,SAAS,8BAA8B,OAAO,CAAC,OAAO,0DAA0D,CACxJ;QACD,wEAAwE;QACxE,2EAA2E;QAC3E,8BAA8B,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,oCAAoC;QAC/F,GAAG,CAAC,IAAI;YACL,CAAC,CAAC;gBACG,iEAAiE;gBACjE,iFAAiF;aACnF;YACH,CAAC,CAAC,EAAE,CAAC;QACR,GAAG,WAAW,CAAC,QAAQ;aACnB,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC;aAClC,GAAG,CACD,OAAO,CAAC,EAAE,CACP,gBAAgB,OAAO,CAAC,SAAS,eAAe,OAAO,CAAC,OAAO,yHAAyH,CAC7L;QACJ,+EAA+E;QAC/E,mHAAmH;QACnH,kFAAkF;QAClF,iFAAiF;QACjF,EAAE;QACF,GAAG,CAAC,IAAI;YACL,CAAC,CAAC,CAAC,uEAAuE,CAAC;YAC3E,CAAC,CAAC,CAAC,4DAA4D,CAAC,CAAC;QACpE,wEAAwE;QACxE,+EAA+E;QAC/E,EAAE;QACF,uCAAuC;QACvC,EAAE;QACF,GAAG,CAAC,KAAK;YACN,CAAC,CAAC;gBACG,0EAA0E;gBAC1E,2EAA2E;aAC7E;YACH,CAAC,CAAC;gBACG,uEAAuE;gBACvE,4DAA4D;aAC9D,CAAC;QACP,EAAE;QACF,+BAA+B;QAC/B,qBAAqB;QACrB,yHAAyH;QACzH,yHAAyH;QACzH,6FAA6F;QAC7F,EAAE;QACF,+DAA+D;QAC/D,6EAA6E;QAC7E,6EAA6E;QAC7E,eAAe;QACf,EAAE;QACF,2EAA2E;QAC3E,yEAAyE;QACzE,mEAAmE;QACnE,EAAE;QACF,GAAG,CAAC,KAAK;YACN,CAAC,CAAC;gBACG,yEAAyE;gBACzE,0EAA0E;gBAC1E,yEAAyE;gBACzE,wDAAwD;gBACxD,EAAE;aACJ;YACH,CAAC,CAAC,EAAE,CAAC;QACR,uEAAuE;QACvE,wEAAwE;QACxE,2EAA2E;QAC3E,gCAAgC;QAChC,EAAE;QACF,uCAAuC;QACvC,EAAE;QACF,8EAA8E;QAC9E,sEAAsE;QACtE,2EAA2E;QAC3E,0EAA0E;QAC1E,gCAAgC;QAChC,EAAE;QACF,OAAO,IAAI,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,aAAa,yDAAyD;QAC1G,4EAA4E;QAC5E,2EAA2E;QAC3E,EAAE;KACJ,CAAC;IACF,OAAO,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,WAAW,CAAC,CAAC;AACjD,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,SAAS,SAAS,CAAC,WAA4B,EAAE,OAAyB;IACvE,MAAM,OAAO,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;IACxC,MAAM,KAAK,GAAG,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAChD,MAAM,GAAG,GAAG,YAAY,OAAO,CAAC,SAAS,EAAE,CAAC;IAC5C,MAAM,MAAM,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,OAAO,CAAC,CAAC;IAE1F,MAAM,KAAK,GAAG;;;;;;;;;;;;;;;;;;;eAmBF,KAAK;;;eAGL,KAAK;;;eAGL,KAAK;CACnB,CAAC;IAEC,MAAM,KAAK,GAAG;;;;;;;;;;;;;;;;;;CAkBhB,CAAC;IAEC,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;CAgBlB,CAAC;IAEC,MAAM,UAAU,GAAG;;;;;;;;;;;;;;;;;;;;;;;;CAwBrB,CAAC;IAEC,MAAM,OAAO,GAAG;;;;;;;;;;;;;WAaR,KAAK,eAAe,KAAK;;;;;;;;;;;;;;;;;;;;;;uBAsBb,KAAK;;;;;;;;;;;;;;uBAcL,KAAK;;;;;;;;CAQ3B,CAAC;IAEC,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;EAiBvB,UAAU,CACT,CAAC,2BAA2B,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,mBAAmB,CAAC,EACjH,sBAAsB,EACtB,OAAO,CACT;;WAEU,KAAK,eAAe,KAAK;;;;;;;;;;;;0BAYV,KAAK;;;;;;;;;;0BAUL,KAAK;;;;kCAIG,KAAK;kCACL,KAAK;;;;CAItC,CAAC;IAEC,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAiCd,KAAK;;;;;;;;;;;;uBAYO,KAAK;;;;;;;;;;;;;;;;CAgB3B,CAAC;IAEC,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;EAgBhB,UAAU,CACT;QACG,0BAA0B;QAC1B,eAAe;QACf,sBAAsB;QACtB,eAAe;QACf,aAAa;QACb,sBAAsB;QACtB,YAAY;QACZ,wBAAwB;QACxB,6BAA6B;QAC7B,oBAAoB;KACtB,EACD,sBAAsB,EACtB,OAAO,EACP,IAAI,CACN;;;EAGC,UAAU,CACT,CAAC,0CAA0C,EAAE,oCAAoC,EAAE,oBAAoB,CAAC,EACxG,wBAAwB,EACxB,OAAO,CACT;;;;;;;;WAQU,KAAK;;;4BAGY,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyChC,CAAC;IAEC,MAAM,WAAW,GAAG;;;;;;;;;;;;;;;;WAgBZ,KAAK,kBAAkB,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBA+Bf,KAAK;;;;;;;;uDAQ0B,KAAK;;;;;;;;;;;;;CAa3D,CAAC;IAEC,OAAO;QACJ,EAAE,IAAI,EAAE,GAAG,GAAG,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE;QACnD,EAAE,IAAI,EAAE,GAAG,GAAG,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE;QACnD,EAAE,IAAI,EAAE,GAAG,GAAG,aAAa,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE;QACvD,EAAE,IAAI,EAAE,GAAG,GAAG,wBAAwB,EAAE,OAAO,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE;QACrE,EAAE,IAAI,EAAE,GAAG,GAAG,oBAAoB,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE;QAC9D,EAAE,IAAI,EAAE,GAAG,GAAG,2BAA2B,EAAE,OAAO,EAAE,MAAM,CAAC,aAAa,CAAC,EAAE;QAC3E,EAAE,IAAI,EAAE,GAAG,GAAG,mCAAmC,EAAE,OAAO,EAAE,MAAM,CAAC,aAAa,CAAC,EAAE;QACnF,EAAE,IAAI,EAAE,GAAG,GAAG,oBAAoB,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE;QAC7D,EAAE,IAAI,EAAE,QAAQ,OAAO,CAAC,SAAS,kBAAkB,EAAE,OAAO,EAAE,MAAM,CAAC,WAAW,CAAC,EAAE;KACrF,CAAC;AACL,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,kBAAkB,CAAC,WAA4B;IAC5D,MAAM,KAAK,GAAG,WAAW,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;IAC9C,MAAM,YAAY,GAAe,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACnE,IAAI,EAAE,eAAe,OAAO,CAAC,SAAS,UAAU;QAChD,OAAO,EAAE,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC;KAC3D,CAAC,CAAC,CAAC;IACJ,IAAI,KAAK,EAAE,CAAC;QACT,YAAY,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,4BAA4B,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,CAAC;IACzF,CAAC;IAED,MAAM,YAAY,GAAG,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;IAEjI,OAAO;QACJ,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,WAAW,CAAC,WAAW,CAAC,EAAE;QAC3D,EAAE,IAAI,EAAE,qBAAqB,EAAE,OAAO,EAAE,aAAa,CAAC,WAAW,CAAC,EAAE;QACpE,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,YAAY,CAAC,WAAW,CAAC,EAAE;QAC7D,EAAE,IAAI,EAAE,oBAAoB,EAAE,OAAO,EAAE,aAAa,EAAE;QACtD,EAAE,IAAI,EAAE,kBAAkB,EAAE,OAAO,EAAE,aAAa,EAAE;QACpD;YACG,IAAI,EAAE,YAAY;YAClB,OAAO,EAAE,WAAW,CAAC,SAAS,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,0BAA0B;SACjG;QACD,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,WAAW,CAAC,EAAE;QACnD,GAAG,YAAY;QACf,EAAE,IAAI,EAAE,uBAAuB,WAAW,CAAC,SAAS,YAAY,EAAE,OAAO,EAAE,UAAU,CAAC,WAAW,CAAC,EAAE;QACpG,EAAE,IAAI,EAAE,4BAA4B,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,EAAE,WAAW,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE;QAClG,GAAG,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACrC,IAAI,EAAE,uBAAuB,OAAO,CAAC,SAAS,gBAAgB;YAC9D,OAAO,EAAE,MAAM,CAAC,UAAU,EAAE,WAAW,EAAE,OAAO,CAAC;SACnD,CAAC,CAAC;QACH,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,SAAS,CAAC,WAAW,CAAC,EAAE;QACzD,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,OAAO,CAAC,QAAQ,EAAE,WAAW,CAAC,EAAE;QACpE,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,QAAQ,CAAC,WAAW,CAAC,EAAE;QACvD,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,yBAAyB,EAAE,OAAO,EAAE,kBAAkB,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9H,GAAG,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,aAAa,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACrH,GAAG,YAAY;QACf,EAAE,IAAI,EAAE,uBAAuB,EAAE,OAAO,EAAE,YAAY,CAAC,WAAW,CAAC,EAAE;QACrE,EAAE,IAAI,EAAE,sBAAsB,EAAE,OAAO,EAAE,WAAW,CAAC,WAAW,EAAE,cAAc,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE;QACtG;YACG,IAAI,EAAE,sBAAsB;YAC5B,OAAO,EAAE,WAAW,CAAC,WAAW,EAAE,cAAc,EAAE,CAAC,gDAAgD,CAAC,EAAE,aAAa,CAAC;SACtH;QACD;YACG,IAAI,EAAE,yBAAyB;YAC/B,OAAO,EAAE,WAAW,CACjB,WAAW,EACX,iBAAiB,EACjB,CAAC,6DAA6D,CAAC,EAC/D,gBAAgB,CAClB;SACH;QACD,EAAE,IAAI,EAAE,4BAA4B,EAAE,OAAO,EAAE,iBAAiB,CAAC,WAAW,CAAC,EAAE;KACjF,CAAC;AACL,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hydranium/cli",
|
|
3
|
-
"version": "1.0.0-next.
|
|
3
|
+
"version": "1.0.0-next.199",
|
|
4
4
|
"description": "Build-time codegen tools + data-server subcommands for the hydranium framework.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"cli",
|
|
@@ -69,20 +69,20 @@
|
|
|
69
69
|
"ts-morph": "^25.0.0"
|
|
70
70
|
},
|
|
71
71
|
"devDependencies": {
|
|
72
|
-
"@hydranium/core": "1.0.0-next.
|
|
73
|
-
"@hydranium/data-server": "1.0.0-next.
|
|
74
|
-
"@hydranium/langium": "1.0.0-next.
|
|
75
|
-
"@hydranium/protocol": "1.0.0-next.
|
|
72
|
+
"@hydranium/core": "1.0.0-next.199",
|
|
73
|
+
"@hydranium/data-server": "1.0.0-next.199",
|
|
74
|
+
"@hydranium/langium": "1.0.0-next.199",
|
|
75
|
+
"@hydranium/protocol": "1.0.0-next.199",
|
|
76
76
|
"rimraf": "^5.0.0",
|
|
77
77
|
"typescript": "^7.0.2",
|
|
78
78
|
"vscode-jsonrpc": "9.0.1",
|
|
79
79
|
"vscode-languageserver": "~10.0.1"
|
|
80
80
|
},
|
|
81
81
|
"peerDependencies": {
|
|
82
|
-
"@hydranium/core": "1.0.0-next.
|
|
83
|
-
"@hydranium/data-server": "1.0.0-next.
|
|
84
|
-
"@hydranium/langium": "1.0.0-next.
|
|
85
|
-
"@hydranium/protocol": "1.0.0-next.
|
|
82
|
+
"@hydranium/core": "1.0.0-next.199",
|
|
83
|
+
"@hydranium/data-server": "1.0.0-next.199",
|
|
84
|
+
"@hydranium/langium": "1.0.0-next.199",
|
|
85
|
+
"@hydranium/protocol": "1.0.0-next.199",
|
|
86
86
|
"@memlab/core": "^2.0.3",
|
|
87
87
|
"@memlab/heap-analysis": "^2.0.3",
|
|
88
88
|
"vscode-jsonrpc": "9.0.1"
|
|
@@ -1823,27 +1823,28 @@ export class __GRAMMAR__DiagramConfiguration implements DiagramConfiguration {
|
|
|
1823
1823
|
// read-only is a deletion the compiler checks, while read-only → editable is
|
|
1824
1824
|
// authoring against a seam you have not used yet.
|
|
1825
1825
|
//
|
|
1826
|
-
// **It
|
|
1827
|
-
// \`
|
|
1828
|
-
//
|
|
1829
|
-
//
|
|
1830
|
-
//
|
|
1831
|
-
//
|
|
1832
|
-
//
|
|
1833
|
-
// \`HydraniumGlspRecordingCommand\` over \`state.sourceModel\` instead — the same
|
|
1834
|
-
// binding the diagram's own save action needs.
|
|
1826
|
+
// **It edits the operation's working copy.** A handler runs inside an operation,
|
|
1827
|
+
// where \`sourceRoot\` is a copy of the built root: the recording command's
|
|
1828
|
+
// runnable appends to the copy, and the operation writes the copy's text through
|
|
1829
|
+
// the grammar's \`Serializer\` once, gated on the version the copy was made at,
|
|
1830
|
+
// with undo and redo replaying that one change. A command that writes the
|
|
1831
|
+
// document itself instead reads no text off the copy, which has no \`$document\`,
|
|
1832
|
+
// and the operation's own write then overwrites it.
|
|
1835
1833
|
//
|
|
1836
1834
|
// **The drop location is discarded.** \`needsClientLayout\` is \`true\` and the
|
|
1837
1835
|
// starter grammar persists no bounds, so there is nowhere to put a coordinate: the
|
|
1838
1836
|
// node is appended at the end of the document and the client places it.
|
|
1839
1837
|
//
|
|
1840
1838
|
// Like \`types.ts\`, \`gmodel-factory.ts\` and \`diagram-configuration.ts\`, this file
|
|
1841
|
-
// knows the starter grammar's
|
|
1842
|
-
//
|
|
1839
|
+
// knows the starter grammar's shape — the \`nodes\` list and the \`__NODE_RULE__\`
|
|
1840
|
+
// it holds. Replacing the grammar means replacing these four together.
|
|
1843
1841
|
|
|
1844
1842
|
import { type Command, type CreateNodeOperation, JsonCreateNodeOperationHandler, type MaybePromise } from '@eclipse-glsp/server';
|
|
1843
|
+
import { appendChild } from '@hydranium/core';
|
|
1844
|
+
import { HydraniumGlspRecordingCommand } from '@hydranium/glsp-server';
|
|
1845
1845
|
import { findNextUnique } from '@hydranium/protocol';
|
|
1846
1846
|
import { injectable } from 'inversify';
|
|
1847
|
+
import type { __NODE_RULE__ } from '../../language-server/ast.js';
|
|
1847
1848
|
import { ${upper}_NODE_TYPE } from './types.js';
|
|
1848
1849
|
import type { __GRAMMAR__GlspState } from './state.js';
|
|
1849
1850
|
|
|
@@ -1862,34 +1863,14 @@ export class __GRAMMAR__CreateNodeOperationHandler extends JsonCreateNodeOperati
|
|
|
1862
1863
|
if (!this.elementTypeIds.includes(operation.elementTypeId)) {
|
|
1863
1864
|
return undefined;
|
|
1864
1865
|
}
|
|
1865
|
-
|
|
1866
|
-
|
|
1867
|
-
|
|
1868
|
-
before,
|
|
1869
|
-
findNextUnique(
|
|
1866
|
+
return new HydraniumGlspRecordingCommand(this.modelState, this.label, () => {
|
|
1867
|
+
const root = this.modelState.sourceRoot;
|
|
1868
|
+
const name = findNextUnique(
|
|
1870
1869
|
NODE_NAME_STEM,
|
|
1871
|
-
|
|
1872
|
-
)
|
|
1873
|
-
|
|
1874
|
-
|
|
1875
|
-
// has exactly one field, so there is nothing to merge a concurrent edit into.
|
|
1876
|
-
return {
|
|
1877
|
-
execute: () => state.updateSourceModel({ text: after }),
|
|
1878
|
-
undo: () => state.updateSourceModel({ text: before }),
|
|
1879
|
-
redo: () => state.updateSourceModel({ text: after })
|
|
1880
|
-
};
|
|
1881
|
-
}
|
|
1882
|
-
|
|
1883
|
-
/** The text the captured source root was parsed from — the baseline an edit appends to. */
|
|
1884
|
-
protected documentText(): string {
|
|
1885
|
-
return this.modelState.sourceRoot.$document?.textDocument.getText() ?? '';
|
|
1886
|
-
}
|
|
1887
|
-
|
|
1888
|
-
/** \`text\` with one more node declaration, under exactly one trailing newline. */
|
|
1889
|
-
protected withNode(text: string, name: string): string {
|
|
1890
|
-
const body = text.trimEnd();
|
|
1891
|
-
const declaration = \`node \${name}\`;
|
|
1892
|
-
return body.length === 0 ? \`\${declaration}\\n\` : \`\${body}\\n\${declaration}\\n\`;
|
|
1870
|
+
root.nodes.map(node => node.name)
|
|
1871
|
+
);
|
|
1872
|
+
appendChild(root, 'nodes', root.nodes, { $type: '__NODE_RULE__', name } as __NODE_RULE__);
|
|
1873
|
+
});
|
|
1893
1874
|
}
|
|
1894
1875
|
}
|
|
1895
1876
|
`;
|
|
@@ -1985,6 +1966,76 @@ export class __GRAMMAR__DiagramModule extends AbstractHydraniumGlspDiagramModule
|
|
|
1985
1966
|
binding.add(__GRAMMAR__CreateNodeOperationHandler);
|
|
1986
1967
|
}
|
|
1987
1968
|
}
|
|
1969
|
+
`;
|
|
1970
|
+
|
|
1971
|
+
const diagramTest = `// The starter create-node handler, run the way a client runs it: an in-process
|
|
1972
|
+
// GLSP server opens a document, a create-node operation adds a node, and an undo
|
|
1973
|
+
// and a redo take it out and put it back. Every step must keep the nodes the
|
|
1974
|
+
// document already had, and its comments: the diagram writes the document from
|
|
1975
|
+
// its AST, which carries none.
|
|
1976
|
+
|
|
1977
|
+
import 'reflect-metadata';
|
|
1978
|
+
import { type Action, CreateNodeOperation, RedoAction, ServerModule, SetDirtyStateAction, UndoAction } from '@eclipse-glsp/server';
|
|
1979
|
+
import { initializeWorkspaceProgrammatically } from '@hydranium/core';
|
|
1980
|
+
import { makeScratchWorkspace, type ScratchWorkspace } from '@hydranium/core/testing/node';
|
|
1981
|
+
import { HydraniumGlspAppModule } from '@hydranium/glsp-server';
|
|
1982
|
+
import { type GlspHarness, makeGlspHarness } from '@hydranium/glsp-server/testing';
|
|
1983
|
+
import { waitFor } from '@hydranium/protocol/testing';
|
|
1984
|
+
import { afterEach, describe, expect, it } from 'vitest';
|
|
1985
|
+
import { __GRAMMAR__DiagramModule } from '../src/glsp/__GRAMMAR_ID__/diagram-module.js';
|
|
1986
|
+
import type { __GRAMMAR__GlspState } from '../src/glsp/__GRAMMAR_ID__/state.js';
|
|
1987
|
+
import { ${upper}_DIAGRAM_TYPE, ${upper}_NODE_TYPE } from '../src/glsp/__GRAMMAR_ID__/types.js';
|
|
1988
|
+
import { createServices } from '../src/services.js';
|
|
1989
|
+
|
|
1990
|
+
let workspace: ScratchWorkspace | undefined;
|
|
1991
|
+
let diagram: GlspHarness<__GRAMMAR__GlspState> | undefined;
|
|
1992
|
+
|
|
1993
|
+
afterEach(() => {
|
|
1994
|
+
diagram?.dispose();
|
|
1995
|
+
workspace?.dispose();
|
|
1996
|
+
diagram = undefined;
|
|
1997
|
+
workspace = undefined;
|
|
1998
|
+
});
|
|
1999
|
+
|
|
2000
|
+
/** Send \`action\` and wait for the dirty state the server answers it with, which it sends once the edit is written. */
|
|
2001
|
+
async function send(harness: GlspHarness<__GRAMMAR__GlspState>, action: Action, reason: string): Promise<void> {
|
|
2002
|
+
const before = harness.actions.length;
|
|
2003
|
+
harness.dispatch(action);
|
|
2004
|
+
await waitFor(() => harness.actions.slice(before).some(sent => SetDirtyStateAction.is(sent) && sent.reason === reason), {
|
|
2005
|
+
message: \`no '\${reason}' dirty state\`
|
|
2006
|
+
});
|
|
2007
|
+
}
|
|
2008
|
+
|
|
2009
|
+
describe('__GRAMMAR__ diagram', () => {
|
|
2010
|
+
it('creates a node after the existing ones, keeping their comments, and undoes and redoes it', async () => {
|
|
2011
|
+
workspace = makeScratchWorkspace({ prefix: '__GRAMMAR_ID__-diagram-' });
|
|
2012
|
+
const original = '// keep this comment\\nnode first -> second\\n// about second\\nnode second';
|
|
2013
|
+
const file = workspace.write('model.__EXTENSION__', original);
|
|
2014
|
+
const { shared } = createServices();
|
|
2015
|
+
await initializeWorkspaceProgrammatically(shared, workspace.root);
|
|
2016
|
+
diagram = makeGlspHarness<__GRAMMAR__GlspState>({
|
|
2017
|
+
serverModule: new ServerModule().configureDiagramModule(new __GRAMMAR__DiagramModule()),
|
|
2018
|
+
diagramType: ${upper}_DIAGRAM_TYPE,
|
|
2019
|
+
appModules: [new HydraniumGlspAppModule({ shared })]
|
|
2020
|
+
});
|
|
2021
|
+
await diagram.start();
|
|
2022
|
+
await diagram.openDocument(file);
|
|
2023
|
+
const uri = workspace.uri('model.__EXTENSION__');
|
|
2024
|
+
const text = (): string | undefined => shared.workspace.TextDocuments.get(uri)?.getText();
|
|
2025
|
+
|
|
2026
|
+
await send(diagram, CreateNodeOperation.create(${upper}_NODE_TYPE), 'operation');
|
|
2027
|
+
const created = text();
|
|
2028
|
+
await send(diagram, UndoAction.create(), 'undo');
|
|
2029
|
+
const undone = text();
|
|
2030
|
+
await send(diagram, RedoAction.create(), 'redo');
|
|
2031
|
+
|
|
2032
|
+
expect({ created, undone, redone: text() }).toEqual({
|
|
2033
|
+
created: \`\${original}\\nnode Node\`,
|
|
2034
|
+
undone: original,
|
|
2035
|
+
redone: \`\${original}\\nnode Node\`
|
|
2036
|
+
});
|
|
2037
|
+
});
|
|
2038
|
+
});
|
|
1988
2039
|
`;
|
|
1989
2040
|
|
|
1990
2041
|
return [
|
|
@@ -1995,7 +2046,8 @@ export class __GRAMMAR__DiagramModule extends AbstractHydraniumGlspDiagramModule
|
|
|
1995
2046
|
{ path: `${dir}/gmodel-factory.ts`, content: render(factory) },
|
|
1996
2047
|
{ path: `${dir}/diagram-configuration.ts`, content: render(configuration) },
|
|
1997
2048
|
{ path: `${dir}/create-node-operation-handler.ts`, content: render(createHandler) },
|
|
1998
|
-
{ path: `${dir}/diagram-module.ts`, content: render(module) }
|
|
2049
|
+
{ path: `${dir}/diagram-module.ts`, content: render(module) },
|
|
2050
|
+
{ path: `test/${grammar.grammarId}-diagram.test.ts`, content: render(diagramTest) }
|
|
1999
2051
|
];
|
|
2000
2052
|
}
|
|
2001
2053
|
|