skir 1.0.22 → 1.0.25
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/LICENSE +21 -0
- package/README.md +14 -10
- package/dist/formatter.js +7 -1
- package/dist/formatter.js.map +1 -1
- package/dist/module_collector.d.ts +1 -1
- package/dist/module_collector.d.ts.map +1 -1
- package/dist/module_collector.js +1 -1
- package/dist/module_collector.js.map +1 -1
- package/dist/project_initializer.d.ts.map +1 -1
- package/dist/project_initializer.js +4 -3
- package/dist/project_initializer.js.map +1 -1
- package/package.json +4 -4
- package/src/formatter.ts +7 -1
- package/src/module_collector.ts +0 -1
- package/src/project_initializer.ts +4 -3
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2024 Tyler Fibonacci
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -2,6 +2,10 @@
|
|
|
2
2
|
<h1>Skir</h1>
|
|
3
3
|
<p><strong>Like Protocol Buffer, but better.</strong></p>
|
|
4
4
|
|
|
5
|
+
<p>
|
|
6
|
+
<a href="https://skir.sh/"><b>skir.sh</b></a>
|
|
7
|
+
</p>
|
|
8
|
+
|
|
5
9
|
[](https://www.npmjs.com/package/skir)
|
|
6
10
|
[](https://github.com/gepheum/skir/actions)
|
|
7
11
|
|
|
@@ -14,13 +18,13 @@
|
|
|
14
18
|
|
|
15
19
|
## ✨ Features
|
|
16
20
|
|
|
17
|
-
- 💎 **Single source of truth** - Define your data types once and share them between your backend, frontend, and microservices.
|
|
21
|
+
- 💎 **Single source of truth** - Define your data types and APIs once and share them between your backend, frontend, and microservices.
|
|
18
22
|
- 🌍 **Multi-language** - First-class support for TypeScript, Python, C++, Java, Kotlin, and Dart.
|
|
19
23
|
- ✍️ **Idiomatic code gen** - Generates code that feels native to each language.
|
|
20
24
|
- 🍃 **Effortless serialization** - Skir generates functions to serialize your data to JSON or binary, so you never have to write parsing code manually.
|
|
21
25
|
- 🦋 **Schema evolution** - Simple guidelines and built-in checks to evolve your schema without breaking backward compatibility.
|
|
22
|
-
- 🤝 **
|
|
23
|
-
- 🛠️ **
|
|
26
|
+
- 🤝 **RPCs with end-to-end type safety** - Like tRPC, but for every language. Call your backend functions directly from your frontend or microservices with full compile-time safety.
|
|
27
|
+
- 🛠️ **Delightful developer experience** - Automatic recompilation in watch mode, built-in code formatter, official VSCode extension.
|
|
24
28
|
- 📦 **Built-in package manager** - Import types from other GitHub repositories to easily share common data structures across projects.
|
|
25
29
|
- 🍃 **Easy setup** - Get started with `npx skir init`, manage your entire project configuration from a single YAML file.
|
|
26
30
|
|
|
@@ -69,13 +73,13 @@ assert(restored == point)
|
|
|
69
73
|
|
|
70
74
|
## 📚 Documentation
|
|
71
75
|
|
|
72
|
-
- [Getting started: setup & workflow](docs/setup
|
|
73
|
-
- [Language reference](docs/language-reference
|
|
74
|
-
- [Serialization
|
|
75
|
-
- [Schema evolution
|
|
76
|
-
- [
|
|
77
|
-
- [External dependencies](docs/dependencies
|
|
78
|
-
- [Coming from Protocol Buffer](docs/
|
|
76
|
+
- [Getting started: setup & workflow](https://skir.sh/docs/setup)
|
|
77
|
+
- [Language reference](https://skir.sh/docs/language-reference)
|
|
78
|
+
- [Serialization](https://skir.sh/docs/serialization)
|
|
79
|
+
- [Schema evolution](https://skir.sh/docs/schema-evolution)
|
|
80
|
+
- [RPC services](https://skir.sh/docs/services)
|
|
81
|
+
- [External dependencies](https://skir.sh/docs/dependencies)
|
|
82
|
+
- [Coming from Protocol Buffer](https://skir.sh/docs/protobuf)
|
|
79
83
|
|
|
80
84
|
## 🌍 Supported languages
|
|
81
85
|
|
package/dist/formatter.js
CHANGED
|
@@ -136,7 +136,9 @@ nextNonComment, context) {
|
|
|
136
136
|
: oneOrTwoLineBreaks(token, next);
|
|
137
137
|
}
|
|
138
138
|
else if (token.text === ",") {
|
|
139
|
-
return context.context === "removed"
|
|
139
|
+
return context.context === "removed" || context.context === "import"
|
|
140
|
+
? " "
|
|
141
|
+
: "\n";
|
|
140
142
|
}
|
|
141
143
|
else if (token.text === "=") {
|
|
142
144
|
if (context.context === "const") {
|
|
@@ -152,6 +154,10 @@ nextNonComment, context) {
|
|
|
152
154
|
context.context = "removed";
|
|
153
155
|
return next.text === ";" ? "" : " ";
|
|
154
156
|
}
|
|
157
|
+
else if (token.text === "import") {
|
|
158
|
+
context.context = "import";
|
|
159
|
+
return " ";
|
|
160
|
+
}
|
|
155
161
|
else if (context.context === "in-value" &&
|
|
156
162
|
["]", "}", "|}"].includes(next.text)) {
|
|
157
163
|
return "\n";
|
package/dist/formatter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formatter.js","sourceRoot":"","sources":["../src/formatter.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"formatter.js","sourceRoot":"","sources":["../src/formatter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { ModuleSet } from "./module_set.js";
|
|
2
|
-
export declare function collectModules(srcDir: string, dependencies: ModuleSet
|
|
2
|
+
export declare function collectModules(srcDir: string, dependencies: ModuleSet): Promise<ModuleSet>;
|
|
3
3
|
//# sourceMappingURL=module_collector.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module_collector.d.ts","sourceRoot":"","sources":["../src/module_collector.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,wBAAsB,cAAc,CAClC,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"module_collector.d.ts","sourceRoot":"","sources":["../src/module_collector.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,wBAAsB,cAAc,CAClC,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,SAAS,GACtB,OAAO,CAAC,SAAS,CAAC,CA0BpB"}
|
package/dist/module_collector.js
CHANGED
|
@@ -3,7 +3,7 @@ import * as Paths from "path";
|
|
|
3
3
|
import { ExitError } from "./exit_error.js";
|
|
4
4
|
import { isDirectory, REAL_FILE_SYSTEM, rewritePathForRendering, } from "./io.js";
|
|
5
5
|
import { ModuleSet } from "./module_set.js";
|
|
6
|
-
export async function collectModules(srcDir, dependencies
|
|
6
|
+
export async function collectModules(srcDir, dependencies) {
|
|
7
7
|
const modules = ModuleSet.create(REAL_FILE_SYSTEM, srcDir);
|
|
8
8
|
modules.mergeFrom(dependencies);
|
|
9
9
|
const skirFiles = await glob(Paths.join(srcDir, "**/*.skir"), {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module_collector.js","sourceRoot":"","sources":["../src/module_collector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,KAAK,KAAK,MAAM,MAAM,CAAC;AAC9B,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EACL,WAAW,EACX,gBAAgB,EAChB,uBAAuB,GACxB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,MAAc,EACd,YAAuB
|
|
1
|
+
{"version":3,"file":"module_collector.js","sourceRoot":"","sources":["../src/module_collector.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project_initializer.d.ts","sourceRoot":"","sources":["../src/project_initializer.ts"],"names":[],"mappings":"AAIA,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"project_initializer.d.ts","sourceRoot":"","sources":["../src/project_initializer.ts"],"names":[],"mappings":"AAIA,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAiDvD"}
|
|
@@ -37,10 +37,11 @@ export function initializeProject(rootDir) {
|
|
|
37
37
|
}
|
|
38
38
|
}
|
|
39
39
|
console.log(`Done. Please edit: ${rewritePathForRendering(skirYmlPath)}`);
|
|
40
|
+
console.log("To generate code, run: npx skir gen [--watch]");
|
|
40
41
|
}
|
|
41
42
|
const SKIR_YML_CONTENT = `# Configuration file for Skir code generator
|
|
42
43
|
#
|
|
43
|
-
# Documentation: https://skir.
|
|
44
|
+
# Documentation: https://skir.sh/
|
|
44
45
|
#
|
|
45
46
|
# Cheat sheet:
|
|
46
47
|
# npx skir gen Generate code from .skir files
|
|
@@ -130,8 +131,8 @@ generators:
|
|
|
130
131
|
# # --------------------------------------------------------------------------
|
|
131
132
|
# dependencies:
|
|
132
133
|
# # Add a dependency to:
|
|
133
|
-
# # https://github.com/gepheum/fantasy-game-
|
|
134
|
-
# "@gepheum/fantasy-game-
|
|
134
|
+
# # https://github.com/gepheum/skir-fantasy-game-example/tree/v1.0.0
|
|
135
|
+
# "@gepheum/skir-fantasy-game-example": v1.0.0
|
|
135
136
|
|
|
136
137
|
# # --------------------------------------------------------------------------
|
|
137
138
|
# # GitHub Personal Access Token (required for private dependencies)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project_initializer.js","sourceRoot":"","sources":["../src/project_initializer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,UAAU,MAAM,IAAI,CAAC;AACjC,OAAO,KAAK,KAAK,MAAM,MAAM,CAAC;AAC9B,OAAO,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAElD,MAAM,UAAU,iBAAiB,CAAC,OAAe;IAC/C,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IAEpD,mCAAmC;IACnC,IAAI,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QACvC,OAAO,CAAC,GAAG,CACT,oFAAoF,CACrF,CAAC;QACF,OAAO;IACT,CAAC;IAED,uBAAuB;IACvB,UAAU,CAAC,aAAa,CAAC,WAAW,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAC;IAEjE,qCAAqC;IACrC,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IACnD,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QACvC,4BAA4B;QAC5B,UAAU,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAEtD,+BAA+B;QAC/B,MAAM,cAAc,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAAC;QAClE,UAAU,CAAC,aAAa,CAAC,cAAc,EAAE,wBAAwB,EAAE,OAAO,CAAC,CAAC;IAC9E,CAAC;IAED,iCAAiC;IACjC,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACxD,IAAI,UAAU,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QACzC,MAAM,OAAO,GAAG,UAAU,CAAC,YAAY,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QAChE,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACrC,MAAM,KAAK,GAAa,EAAE,CAAC;QAE3B,KAAK,MAAM,OAAO,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC,EAAE,CAAC;YACnD,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CACvB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,OAAO,CACrD,CAAC;YACF,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,GAAG,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC;QAED,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,MAAM,MAAM,GAAG,KAAK,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;YACzC,UAAU,CAAC,cAAc,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,sBAAsB,uBAAuB,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"project_initializer.js","sourceRoot":"","sources":["../src/project_initializer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,UAAU,MAAM,IAAI,CAAC;AACjC,OAAO,KAAK,KAAK,MAAM,MAAM,CAAC;AAC9B,OAAO,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAElD,MAAM,UAAU,iBAAiB,CAAC,OAAe;IAC/C,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IAEpD,mCAAmC;IACnC,IAAI,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QACvC,OAAO,CAAC,GAAG,CACT,oFAAoF,CACrF,CAAC;QACF,OAAO;IACT,CAAC;IAED,uBAAuB;IACvB,UAAU,CAAC,aAAa,CAAC,WAAW,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAC;IAEjE,qCAAqC;IACrC,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IACnD,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QACvC,4BAA4B;QAC5B,UAAU,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAEtD,+BAA+B;QAC/B,MAAM,cAAc,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAAC;QAClE,UAAU,CAAC,aAAa,CAAC,cAAc,EAAE,wBAAwB,EAAE,OAAO,CAAC,CAAC;IAC9E,CAAC;IAED,iCAAiC;IACjC,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACxD,IAAI,UAAU,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QACzC,MAAM,OAAO,GAAG,UAAU,CAAC,YAAY,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QAChE,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACrC,MAAM,KAAK,GAAa,EAAE,CAAC;QAE3B,KAAK,MAAM,OAAO,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC,EAAE,CAAC;YACnD,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CACvB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,OAAO,CACrD,CAAC;YACF,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,GAAG,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC;QAED,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,MAAM,MAAM,GAAG,KAAK,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;YACzC,UAAU,CAAC,cAAc,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,sBAAsB,uBAAuB,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAC1E,OAAO,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;AAC/D,CAAC;AAED,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqGxB,CAAC;AAEF,MAAM,wBAAwB,GAAG;;;;;;;CAOhC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "skir",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.25",
|
|
4
4
|
"description": "",
|
|
5
|
-
"homepage": "https://
|
|
5
|
+
"homepage": "https://skir.sh/",
|
|
6
6
|
"bugs": {
|
|
7
7
|
"url": "https://github.com/gepheum/skir/issues"
|
|
8
8
|
},
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
"skir-dart-gen": "^1.0.3",
|
|
47
47
|
"skir-internal": "^0.1.0",
|
|
48
48
|
"skir-java-gen": "^1.0.4",
|
|
49
|
-
"skir-kotlin-gen": "^1.0.
|
|
49
|
+
"skir-kotlin-gen": "^1.0.5",
|
|
50
50
|
"skir-python-gen": "^1.0.3",
|
|
51
51
|
"skir-typescript-gen": "^1.0.5",
|
|
52
52
|
"watcher": "^2.3.1",
|
|
@@ -61,7 +61,7 @@
|
|
|
61
61
|
"@typescript-eslint/parser": "^8.50.1",
|
|
62
62
|
"buckwheat": "^1.1.2",
|
|
63
63
|
"eslint": "^9.39.2",
|
|
64
|
-
"mocha": "^11.
|
|
64
|
+
"mocha": "^11.3.0",
|
|
65
65
|
"prettier": "^3.2.4",
|
|
66
66
|
"prettier-plugin-organize-imports": "^4.2.0",
|
|
67
67
|
"ts-node": "^10.9.2",
|
package/src/formatter.ts
CHANGED
|
@@ -114,6 +114,7 @@ type Context = {
|
|
|
114
114
|
| "const" // Between 'const' and '='
|
|
115
115
|
| "in-value" // After 'const', between '=' and ';'
|
|
116
116
|
| "removed" // Between 'removed' and ';'
|
|
117
|
+
| "import" // Between 'import' and ';'
|
|
117
118
|
| null;
|
|
118
119
|
readonly indentStack: IndentStackItem[];
|
|
119
120
|
};
|
|
@@ -206,7 +207,9 @@ function getWhitespaceAfterToken(
|
|
|
206
207
|
? ""
|
|
207
208
|
: oneOrTwoLineBreaks(token, next);
|
|
208
209
|
} else if (token.text === ",") {
|
|
209
|
-
return context.context === "removed"
|
|
210
|
+
return context.context === "removed" || context.context === "import"
|
|
211
|
+
? " "
|
|
212
|
+
: "\n";
|
|
210
213
|
} else if (token.text === "=") {
|
|
211
214
|
if (context.context === "const") {
|
|
212
215
|
context.context = "in-value";
|
|
@@ -218,6 +221,9 @@ function getWhitespaceAfterToken(
|
|
|
218
221
|
} else if (token.text === "removed") {
|
|
219
222
|
context.context = "removed";
|
|
220
223
|
return next.text === ";" ? "" : " ";
|
|
224
|
+
} else if (token.text === "import") {
|
|
225
|
+
context.context = "import";
|
|
226
|
+
return " ";
|
|
221
227
|
} else if (
|
|
222
228
|
context.context === "in-value" &&
|
|
223
229
|
["]", "}", "|}"].includes(next.text)
|
package/src/module_collector.ts
CHANGED
|
@@ -11,7 +11,6 @@ import { ModuleSet } from "./module_set.js";
|
|
|
11
11
|
export async function collectModules(
|
|
12
12
|
srcDir: string,
|
|
13
13
|
dependencies: ModuleSet,
|
|
14
|
-
lenient?: "lenient",
|
|
15
14
|
): Promise<ModuleSet> {
|
|
16
15
|
const modules = ModuleSet.create(REAL_FILE_SYSTEM, srcDir);
|
|
17
16
|
modules.mergeFrom(dependencies);
|
|
@@ -50,11 +50,12 @@ export function initializeProject(rootDir: string): void {
|
|
|
50
50
|
}
|
|
51
51
|
|
|
52
52
|
console.log(`Done. Please edit: ${rewritePathForRendering(skirYmlPath)}`);
|
|
53
|
+
console.log("To generate code, run: npx skir gen [--watch]");
|
|
53
54
|
}
|
|
54
55
|
|
|
55
56
|
const SKIR_YML_CONTENT = `# Configuration file for Skir code generator
|
|
56
57
|
#
|
|
57
|
-
# Documentation: https://skir.
|
|
58
|
+
# Documentation: https://skir.sh/
|
|
58
59
|
#
|
|
59
60
|
# Cheat sheet:
|
|
60
61
|
# npx skir gen Generate code from .skir files
|
|
@@ -144,8 +145,8 @@ generators:
|
|
|
144
145
|
# # --------------------------------------------------------------------------
|
|
145
146
|
# dependencies:
|
|
146
147
|
# # Add a dependency to:
|
|
147
|
-
# # https://github.com/gepheum/fantasy-game-
|
|
148
|
-
# "@gepheum/fantasy-game-
|
|
148
|
+
# # https://github.com/gepheum/skir-fantasy-game-example/tree/v1.0.0
|
|
149
|
+
# "@gepheum/skir-fantasy-game-example": v1.0.0
|
|
149
150
|
|
|
150
151
|
# # --------------------------------------------------------------------------
|
|
151
152
|
# # GitHub Personal Access Token (required for private dependencies)
|