Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
2145dc9
First iteration of root module refactor
kingston Apr 17, 2025
dbc578b
Fix path handling
kingston Apr 17, 2025
cc4bd70
Refactor app module/root modules
kingston Apr 18, 2025
e00c7a7
Introduce concept of dynamic adding of template metadata
kingston Apr 18, 2025
5df0588
Fix up ids of files
kingston Apr 18, 2025
ff4af3b
Refactor axios generator
kingston Apr 18, 2025
f125ea6
By default strip out extra environment variables except essentials wh…
kingston Apr 18, 2025
c244835
Remove unused morphers
kingston Apr 18, 2025
ee4e501
Add TPL marker snippet
kingston Apr 18, 2025
5a1ef93
Refactor fastify-server generator
kingston Apr 18, 2025
2d1d42c
Fix regex for hoisted regex
kingston Apr 18, 2025
e744c5c
Fix template generation for block/inline hybrid variables
kingston Apr 18, 2025
ebf2741
Refactor fastify generator
kingston Apr 18, 2025
6b957e6
Migrate graceful shutdown plugin
kingston Apr 18, 2025
95eec92
Update request context generator
kingston Apr 18, 2025
97059d7
Support tsconfig in resolving paths for template extractor
kingston Apr 18, 2025
08d545e
Fix up request contexts
kingston Apr 19, 2025
d1cb38a
Add preprocess code extraction hack
kingston Apr 19, 2025
bfffcec
Update request service context
kingston Apr 19, 2025
77f4191
Fix test args
kingston Apr 19, 2025
00c7f16
Run test generate
kingston Apr 19, 2025
e753056
Fix up health checks
kingston Apr 19, 2025
b7fb5a0
Migrate vitest
kingston Apr 19, 2025
e381cfb
Initial refactor of react generator
kingston Apr 19, 2025
73109d7
Remove unused files
kingston Apr 19, 2025
ff1400a
Improve vitest VSCode testing dev experience and add lazy rendering o…
kingston Apr 19, 2025
051ef26
Fix test and zod generation
kingston Apr 19, 2025
aaab45c
Update ts-utils to use new system
kingston Apr 19, 2025
eaf1b22
Fix lint error
kingston Apr 19, 2025
37b7262
Fix knip
kingston Apr 19, 2025
2c6d92b
Fix fastify redis path for setup paths
kingston Apr 19, 2025
61a6371
Accidentally left it.only in test
kingston Apr 19, 2025
6b79427
Run pnpm dedupe
kingston Apr 19, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .changeset/twelve-books-bet.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
'@halfdomelabs/sync': patch
---

By default strip out extra environment variables except essentials when running post write commands
112 changes: 78 additions & 34 deletions .vscode/generator.json.code-snippets
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,9 @@
"prefix": "baseplateprovider",
"scope": "typescript",
"body": [
"",
"export interface ${1:ProviderName}Provider {",
" placeholder: () => void;",
"};",
" placeholder(): void;",
"}",
"",
"export const ${1/(^[A-Z])/${1:/downcase}/}Provider = createProviderType<${1}Provider>('${1/(^[A-Z][a-z]*|[a-z])([A-Z])?/${1:/downcase}${2:+-}${2:/downcase}/g}');"
],
Expand All @@ -17,38 +16,52 @@
"scope": "typescript",
"body": [
"import {",
" createGeneratorWithTasks,",
" createGenerator,",
" createGeneratorTask,",
" createProviderType,",
"} from '@halfdomelabs/sync';",
"import { z } from 'zod';",
"",
"import { projectScope } from './scopes';",
"",
"const descriptorSchema = z.object({});",
"",
"export type ${1:GeneratorName}Provider = unknown;",
"export interface ${1:ProviderName}Provider {",
" placeholder(): void;",
"}",
"",
"export const ${1/(^[A-Z])/${1:/downcase}/}Provider = createProviderType<${1}Provider>('${1/(^[A-Z][a-z]*|[a-z])([A-Z])?/${1:/downcase}${2:+-}${2:/downcase}/g}');",
"",
"export const ${1/(^[A-Z])/${1:/downcase}Generator = createGenerator({",
"/**",
" * ${3:Description of the generator}",
" */",
"export const ${1/(^[A-Z])/${1:/downcase}/}Generator = createGenerator({",
" name: '${2:scope}/${1/(^[A-Z][a-z]*|[a-z])([A-Z])?/${1:/downcase}${2:+-}${2:/downcase}/g}',",
" generatorFileUrl: import.meta.url,",
" descriptorSchema,",
" getDefaultChildGenerators: () => ({}),",
" buildTasks(taskBuilder, descriptor) {",
" taskBuilder.addTask({",
" name: 'main',",
" dependencies: {},",
" buildTasks: (descriptor) => ({",
" main: createGeneratorTask({",
" exports: {",
" ${1/(^[A-Z])/${1:/downcase}/}: ${1/(^[A-Z])/${1:/downcase}/}Provider",
" ${1/(^[A-Z])/${1:/downcase}/}: ${1/(^[A-Z])/${1:/downcase}/}Provider.export(projectScope)",
" },",
" run(dependencies) {",
" dependencies: {},",
" run(deps) {",
" return {",
" providers: {",
" ${1/(^[A-Z])/${1:/downcase}/}: {},",
" ${1/(^[A-Z])/${1:/downcase}/}: {",
" placeholder() {",
" // Implementation",
" }",
" }",
" },",
" build: async (builder) => {},",
" build: async (builder) => {",
" // Generate code here",
" }",
" };",
" },",
" });",
" },",
"});",
" }",
" })",
" })",
"});"
],
"description": "Create Baseplate generator with provider"
},
Expand All @@ -57,30 +70,61 @@
"scope": "typescript",
"body": [
"import {",
" createGeneratorWithTasks,",
" createProviderType,",
" createGenerator,",
" createGeneratorTask,",
"} from '@halfdomelabs/sync';",
"import { z } from 'zod';",
"",
"const descriptorSchema = z.object({});",
"",
"export const ${1}Generator = createGeneratorWithTasks({",
"/**",
" * ${3:Description of the generator}",
" */",
"export const ${1}Generator = createGenerator({",
" name: '${2:scope}/${1/(^[A-Z][a-z]*|[a-z])([A-Z])?/${1:/downcase}${2:+-}${2:/downcase}/g}',",
" generatorFileUrl: import.meta.url,",
" descriptorSchema,",
" getDefaultChildGenerators: () => ({}),",
" buildTasks(taskBuilder, descriptor) {",
" taskBuilder.addTask({",
" name: 'main',",
" buildTasks: (descriptor) => ({",
" main: createGeneratorTask({",
" dependencies: {},",
" run(dependencies) {",
" run(deps) {",
" return {",
" build: async (builder) => {},",
" build: async (builder) => {",
" // Generate code here",
" }",
" };",
" },",
" });",
" },",
"});",
"",
" }",
" })",
" })",
"});"
],
"description": "Create Baseplate generator with no provider"
},
"Wrap with TPL markers": {
"prefix": "tplwrap",
"body": [
"/* TPL_${1:VAR}:START */ ${TM_SELECTED_TEXT} /* TPL_${1:VAR}:END */"
],
"description": "Wrap selected text with TPL markers"
},
"Create Config Provider Task": {
"prefix": "configProviderTask",
"body": [
"import { createConfigProviderTask } from '@halfdomelabs/sync';",
"",
"const [setupTask, ${1:name}ConfigProvider, ${1:name}ConfigValuesProvider] =",
" createConfigProviderTask(",
" (t) => ({",
" ${2:value: t.scalar<string>()}",
" }),",
" {",
" prefix: '${1/(^[A-Z][a-z]*|[a-z])([A-Z])?/${1:/downcase}${2:+-}${2:/downcase}/g}',",
" configScope: ${3:projectScope},",
" },",
" );",
"",
"export { ${1:name}ConfigProvider };"
],
"description": "Creates a config provider task with customizable configuration"
}
}
}
4 changes: 2 additions & 2 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@
"name": "Debug Current Test File",
"autoAttachChildProcesses": true,
"skipFiles": ["<node_internals>/**", "**/node_modules/**"],
"program": "${workspaceRoot}/packages/tools/node_modules/vitest/vitest.mjs",
"args": ["run", "${relativeFile}"],
"program": "${workspaceRoot}/scripts/run-vitest.js",
"args": ["${relativeFile}"],
"smartStep": true,
"console": "integratedTerminal"
},
Expand Down
2 changes: 1 addition & 1 deletion knip.jsonc
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"workspaces": {
".": {
"entry": [".meta-updater/main.mjs"]
"entry": [".meta-updater/main.mjs", "scripts/*.js"]
},
"packages/*": {
"entry": ["src/index.{ts,tsx}", "src/web/index.{ts,tsx}"],
Expand Down
3 changes: 2 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,8 @@
"knip": "5.46.0",
"prettier": "catalog:",
"turbo": "2.4.4",
"typescript": "catalog:"
"typescript": "catalog:",
"vitest": "catalog:"
},
"packageManager": "pnpm@10.6.5",
"engines": {
Expand Down
92 changes: 0 additions & 92 deletions packages/code-morph/src/morphers/build-task-refactor.morpher.ts

This file was deleted.

This file was deleted.

Loading