@jakubmazanec/carson 0.3.0-unstable.feec6e4 → 1.0.0-next.2fa8a2c
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/README.md +1 -1
- package/bin/carson.js +1 -1
- package/build/commands/create-project/CreateProject.js +97 -0
- package/build/commands/create-project/CreateProject.js.map +7 -0
- package/build/commands/create-project/CreateProjectInput.js +35 -0
- package/build/commands/create-project/CreateProjectInput.js.map +7 -0
- package/{dist → build}/commands/create-project/createProjectCommand.d.ts +6 -6
- package/build/commands/create-project/createProjectCommand.js +37 -0
- package/build/commands/create-project/createProjectCommand.js.map +7 -0
- package/build/commands/create-project/runCreateProject.js +28 -0
- package/build/commands/create-project/runCreateProject.js.map +7 -0
- package/build/commands/create-project.js +6 -0
- package/build/commands/create-project.js.map +7 -0
- package/build/commands/create-workspace/CreateWorkspace.js +68 -0
- package/build/commands/create-workspace/CreateWorkspace.js.map +7 -0
- package/build/commands/create-workspace/CreateWorkspaceInput.js +19 -0
- package/build/commands/create-workspace/CreateWorkspaceInput.js.map +7 -0
- package/{dist → build}/commands/create-workspace/createWorkspaceCommand.d.ts +4 -4
- package/build/commands/create-workspace/createWorkspaceCommand.js +22 -0
- package/build/commands/create-workspace/createWorkspaceCommand.js.map +7 -0
- package/build/commands/create-workspace/runCreateWorkspace.js +22 -0
- package/build/commands/create-workspace/runCreateWorkspace.js.map +7 -0
- package/build/commands/create-workspace.js +6 -0
- package/build/commands/create-workspace.js.map +7 -0
- package/build/commands/internals/CommandStatus.js +2 -0
- package/build/commands/internals/CommandStatus.js.map +7 -0
- package/build/commands/internals/packageNameToDirectory.js +12 -0
- package/build/commands/internals/packageNameToDirectory.js.map +7 -0
- package/build/commands/internals.js +4 -0
- package/build/commands/internals.js.map +7 -0
- package/build/commands/update-workspace/UpdateWorkspace.js +37 -0
- package/build/commands/update-workspace/UpdateWorkspace.js.map +7 -0
- package/build/commands/update-workspace/runUpdateWorkspace.js +19 -0
- package/build/commands/update-workspace/runUpdateWorkspace.js.map +7 -0
- package/{dist → build}/commands/update-workspace/updateWorkspaceCommand.d.ts +2 -2
- package/build/commands/update-workspace/updateWorkspaceCommand.js +31 -0
- package/build/commands/update-workspace/updateWorkspaceCommand.js.map +7 -0
- package/build/commands/update-workspace.js +5 -0
- package/build/commands/update-workspace.js.map +7 -0
- package/build/commands.js +5 -0
- package/build/commands.js.map +7 -0
- package/build/constants.js +14 -0
- package/build/constants.js.map +7 -0
- package/build/main.js +5 -0
- package/build/main.js.map +7 -0
- package/build/modules.d.js +2 -0
- package/build/modules.d.js.map +7 -0
- package/build/run.js +19 -0
- package/build/run.js.map +7 -0
- package/build/template/CarsonTemplate.js +2 -0
- package/build/template/CarsonTemplate.js.map +7 -0
- package/build/template/CarsonTemplateConfig.js +8 -0
- package/build/template/CarsonTemplateConfig.js.map +7 -0
- package/build/template/CarsonTemplateError.js +15 -0
- package/build/template/CarsonTemplateError.js.map +7 -0
- package/build/template/TemplateAttributes.js +14 -0
- package/build/template/TemplateAttributes.js.map +7 -0
- package/build/template/TemplateData.js +10 -0
- package/build/template/TemplateData.js.map +7 -0
- package/build/template/TemplateRender.js +2 -0
- package/build/template/TemplateRender.js.map +7 -0
- package/build/template/TemplateRenders.js +2 -0
- package/build/template/TemplateRenders.js.map +7 -0
- package/build/template/applyTemplateRenders.js +94 -0
- package/build/template/applyTemplateRenders.js.map +7 -0
- package/build/template/internals/TemplateRenderSnapshot.js +12 -0
- package/build/template/internals/TemplateRenderSnapshot.js.map +7 -0
- package/build/template/internals/TemplateRenderSnapshots.js +4 -0
- package/build/template/internals/TemplateRenderSnapshots.js.map +7 -0
- package/build/template/internals/createUsingTemplateRender.js +42 -0
- package/build/template/internals/createUsingTemplateRender.js.map +7 -0
- package/build/template/internals/deleteUsingTemplateRender.js +20 -0
- package/build/template/internals/deleteUsingTemplateRender.js.map +7 -0
- package/build/template/internals/importCarsonTemplate.js +8 -0
- package/build/template/internals/importCarsonTemplate.js.map +7 -0
- package/build/template/internals/insertUsingTemplateRender.js +40 -0
- package/build/template/internals/insertUsingTemplateRender.js.map +7 -0
- package/build/template/internals/loadTemplateRenderSnapshots.js +16 -0
- package/build/template/internals/loadTemplateRenderSnapshots.js.map +7 -0
- package/build/template/internals/merge.js +29 -0
- package/build/template/internals/merge.js.map +7 -0
- package/build/template/internals/mergeUsingTemplateRender.js +49 -0
- package/build/template/internals/mergeUsingTemplateRender.js.map +7 -0
- package/build/template/internals/overwriteUsingTemplateRender.js +10 -0
- package/build/template/internals/overwriteUsingTemplateRender.js.map +7 -0
- package/build/template/internals/parseCarsonTemplateId.js +12 -0
- package/build/template/internals/parseCarsonTemplateId.js.map +7 -0
- package/build/template/internals/prettify.js +21 -0
- package/build/template/internals/prettify.js.map +7 -0
- package/build/template/internals/readCarsonTemplate.js +44 -0
- package/build/template/internals/readCarsonTemplate.js.map +7 -0
- package/build/template/internals/resolveModule.js +9 -0
- package/build/template/internals/resolveModule.js.map +7 -0
- package/build/template/internals/saveTemplateRenderSnapshots.js +23 -0
- package/build/template/internals/saveTemplateRenderSnapshots.js.map +7 -0
- package/build/template/internals/uninsertUsingTemplateRender.js +40 -0
- package/build/template/internals/uninsertUsingTemplateRender.js.map +7 -0
- package/build/template/internals/unmerge.js +32 -0
- package/build/template/internals/unmerge.js.map +7 -0
- package/build/template/internals/unmergeUsingTemplateRender.js +41 -0
- package/build/template/internals/unmergeUsingTemplateRender.js.map +7 -0
- package/build/template/internals.js +20 -0
- package/build/template/internals.js.map +7 -0
- package/build/template/renderCarsonTemplate.js +42 -0
- package/build/template/renderCarsonTemplate.js.map +7 -0
- package/build/template.js +11 -0
- package/build/template.js.map +7 -0
- package/build/workspace/Project.js +205 -0
- package/build/workspace/Project.js.map +7 -0
- package/build/workspace/ProjectConfig.js +6 -0
- package/build/workspace/ProjectConfig.js.map +7 -0
- package/build/workspace/ProjectCreateOptions.js +2 -0
- package/build/workspace/ProjectCreateOptions.js.map +7 -0
- package/{dist → build}/workspace/ProjectError.d.ts +1 -1
- package/build/workspace/ProjectError.js +17 -0
- package/build/workspace/ProjectError.js.map +7 -0
- package/build/workspace/ProjectOptions.js +2 -0
- package/build/workspace/ProjectOptions.js.map +7 -0
- package/build/workspace/ProjectUpdateOptions.js +2 -0
- package/build/workspace/ProjectUpdateOptions.js.map +7 -0
- package/{dist → build}/workspace/Workspace.d.ts +2 -2
- package/build/workspace/Workspace.js +501 -0
- package/build/workspace/Workspace.js.map +7 -0
- package/build/workspace/WorkspaceConfig.js +6 -0
- package/build/workspace/WorkspaceConfig.js.map +7 -0
- package/build/workspace/WorkspaceCreateOptions.js +2 -0
- package/build/workspace/WorkspaceCreateOptions.js.map +7 -0
- package/build/workspace/WorkspaceCreateProjectOptions.js +2 -0
- package/build/workspace/WorkspaceCreateProjectOptions.js.map +7 -0
- package/build/workspace/WorkspaceDependencies.js +143 -0
- package/build/workspace/WorkspaceDependencies.js.map +7 -0
- package/build/workspace/WorkspaceDependenciesFromWorkspaceOptions.js +2 -0
- package/build/workspace/WorkspaceDependenciesFromWorkspaceOptions.js.map +7 -0
- package/build/workspace/WorkspaceDependenciesGetVersionsOptions.js +2 -0
- package/build/workspace/WorkspaceDependenciesGetVersionsOptions.js.map +7 -0
- package/build/workspace/WorkspaceDependency.js +2 -0
- package/build/workspace/WorkspaceDependency.js.map +7 -0
- package/build/workspace/WorkspaceDependencyProject.js +2 -0
- package/build/workspace/WorkspaceDependencyProject.js.map +7 -0
- package/{dist → build}/workspace/WorkspaceError.d.ts +1 -1
- package/{dist → build}/workspace/WorkspaceError.js +12 -10
- package/build/workspace/WorkspaceError.js.map +7 -0
- package/build/workspace/WorkspaceFindAndReadOptions.js +2 -0
- package/build/workspace/WorkspaceFindAndReadOptions.js.map +7 -0
- package/build/workspace/WorkspaceOptions.js +2 -0
- package/build/workspace/WorkspaceOptions.js.map +7 -0
- package/build/workspace/WorkspaceOptionsProject.js +2 -0
- package/build/workspace/WorkspaceOptionsProject.js.map +7 -0
- package/build/workspace/WorkspacePackageJson.js +2 -0
- package/build/workspace/WorkspacePackageJson.js.map +7 -0
- package/build/workspace/WorkspaceProjectGlobs.js +2 -0
- package/build/workspace/WorkspaceProjectGlobs.js.map +7 -0
- package/build/workspace/WorkspaceProjects.js +2 -0
- package/build/workspace/WorkspaceProjects.js.map +7 -0
- package/build/workspace/WorkspaceRepository.js +2 -0
- package/build/workspace/WorkspaceRepository.js.map +7 -0
- package/build/workspace/WorkspaceUpdateOptions.js +2 -0
- package/build/workspace/WorkspaceUpdateOptions.js.map +7 -0
- package/build/workspace/internals/compareProjectPath.js +10 -0
- package/build/workspace/internals/compareProjectPath.js.map +7 -0
- package/build/workspace/internals/compareSemver.js +20 -0
- package/build/workspace/internals/compareSemver.js.map +7 -0
- package/build/workspace/internals/compareWorkspaceDependencyProjectName.js +10 -0
- package/build/workspace/internals/compareWorkspaceDependencyProjectName.js.map +7 -0
- package/build/workspace/internals/containsProject.js +23 -0
- package/build/workspace/internals/containsProject.js.map +7 -0
- package/build/workspace/internals/containsWorkspace.js +20 -0
- package/build/workspace/internals/containsWorkspace.js.map +7 -0
- package/build/workspace/internals/getPackageJsonWorkspaces.js +31 -0
- package/build/workspace/internals/getPackageJsonWorkspaces.js.map +7 -0
- package/build/workspace/internals/getRepositoryBranches.js +26 -0
- package/build/workspace/internals/getRepositoryBranches.js.map +7 -0
- package/build/workspace/internals/getRepositoryUrl.js +19 -0
- package/build/workspace/internals/getRepositoryUrl.js.map +7 -0
- package/build/workspace/internals.js +10 -0
- package/build/workspace/internals.js.map +7 -0
- package/build/workspace/saveProjectConfig.js +15 -0
- package/build/workspace/saveProjectConfig.js.map +7 -0
- package/build/workspace/saveWorkspaceConfig.js +22 -0
- package/build/workspace/saveWorkspaceConfig.js.map +7 -0
- package/build/workspace.js +24 -0
- package/build/workspace.js.map +7 -0
- package/package.json +54 -49
- package/{src → source}/commands/create-project/CreateProject.tsx +7 -7
- package/{src → source}/commands/create-project/CreateProjectInput.ts +1 -1
- package/{src → source}/commands/create-workspace/CreateWorkspace.tsx +6 -6
- package/{src → source}/commands/create-workspace/CreateWorkspaceInput.ts +1 -1
- package/{src → source}/commands/update-workspace/UpdateWorkspace.tsx +4 -4
- package/{src → source}/run.ts +2 -2
- package/{src → source}/template/applyTemplateRenders.ts +10 -10
- package/{src → source}/template/internals/prettify.ts +2 -2
- package/{src → source}/template/internals/readCarsonTemplate.ts +3 -3
- package/{src → source}/workspace/Project.ts +8 -8
- package/{src → source}/workspace/Workspace.ts +21 -27
- package/{src → source}/workspace/WorkspaceDependencies.ts +11 -9
- package/{src → source}/workspace/WorkspaceOptions.ts +3 -2
- package/{src → source}/workspace/internals/compareSemver.ts +6 -4
- package/{src → source}/workspace/internals/getPackageJsonWorkspaces.ts +1 -1
- package/dist/commands/create-project/CreateProject.js +0 -138
- package/dist/commands/create-project/CreateProject.js.map +0 -1
- package/dist/commands/create-project/CreateProjectInput.js +0 -31
- package/dist/commands/create-project/CreateProjectInput.js.map +0 -1
- package/dist/commands/create-project/createProjectCommand.js +0 -38
- package/dist/commands/create-project/createProjectCommand.js.map +0 -1
- package/dist/commands/create-project/runCreateProject.js +0 -24
- package/dist/commands/create-project/runCreateProject.js.map +0 -1
- package/dist/commands/create-project.js +0 -6
- package/dist/commands/create-project.js.map +0 -1
- package/dist/commands/create-workspace/CreateWorkspace.js +0 -104
- package/dist/commands/create-workspace/CreateWorkspace.js.map +0 -1
- package/dist/commands/create-workspace/CreateWorkspaceInput.js +0 -17
- package/dist/commands/create-workspace/CreateWorkspaceInput.js.map +0 -1
- package/dist/commands/create-workspace/createWorkspaceCommand.js +0 -20
- package/dist/commands/create-workspace/createWorkspaceCommand.js.map +0 -1
- package/dist/commands/create-workspace/runCreateWorkspace.js +0 -24
- package/dist/commands/create-workspace/runCreateWorkspace.js.map +0 -1
- package/dist/commands/create-workspace.js +0 -6
- package/dist/commands/create-workspace.js.map +0 -1
- package/dist/commands/internals/CommandStatus.js +0 -3
- package/dist/commands/internals/CommandStatus.js.map +0 -1
- package/dist/commands/internals/packageNameToDirectory.js +0 -12
- package/dist/commands/internals/packageNameToDirectory.js.map +0 -1
- package/dist/commands/internals.js +0 -4
- package/dist/commands/internals.js.map +0 -1
- package/dist/commands/update-workspace/UpdateWorkspace.js +0 -71
- package/dist/commands/update-workspace/UpdateWorkspace.js.map +0 -1
- package/dist/commands/update-workspace/runUpdateWorkspace.js +0 -25
- package/dist/commands/update-workspace/runUpdateWorkspace.js.map +0 -1
- package/dist/commands/update-workspace/updateWorkspaceCommand.js +0 -32
- package/dist/commands/update-workspace/updateWorkspaceCommand.js.map +0 -1
- package/dist/commands/update-workspace.js +0 -5
- package/dist/commands/update-workspace.js.map +0 -1
- package/dist/commands.js +0 -5
- package/dist/commands.js.map +0 -1
- package/dist/constants.js +0 -14
- package/dist/constants.js.map +0 -1
- package/dist/main.js +0 -5
- package/dist/main.js.map +0 -1
- package/dist/modules.d.js +0 -2
- package/dist/modules.d.js.map +0 -1
- package/dist/run.js +0 -19
- package/dist/run.js.map +0 -1
- package/dist/template/CarsonTemplate.js +0 -3
- package/dist/template/CarsonTemplate.js.map +0 -1
- package/dist/template/CarsonTemplateConfig.js +0 -7
- package/dist/template/CarsonTemplateConfig.js.map +0 -1
- package/dist/template/CarsonTemplateError.js +0 -13
- package/dist/template/CarsonTemplateError.js.map +0 -1
- package/dist/template/TemplateAttributes.js +0 -18
- package/dist/template/TemplateAttributes.js.map +0 -1
- package/dist/template/TemplateData.js +0 -11
- package/dist/template/TemplateData.js.map +0 -1
- package/dist/template/TemplateRender.js +0 -3
- package/dist/template/TemplateRender.js.map +0 -1
- package/dist/template/TemplateRenders.js +0 -3
- package/dist/template/TemplateRenders.js.map +0 -1
- package/dist/template/applyTemplateRenders.js +0 -90
- package/dist/template/applyTemplateRenders.js.map +0 -1
- package/dist/template/internals/TemplateRenderSnapshot.js +0 -14
- package/dist/template/internals/TemplateRenderSnapshot.js.map +0 -1
- package/dist/template/internals/TemplateRenderSnapshots.js +0 -4
- package/dist/template/internals/TemplateRenderSnapshots.js.map +0 -1
- package/dist/template/internals/createUsingTemplateRender.js +0 -57
- package/dist/template/internals/createUsingTemplateRender.js.map +0 -1
- package/dist/template/internals/deleteUsingTemplateRender.js +0 -22
- package/dist/template/internals/deleteUsingTemplateRender.js.map +0 -1
- package/dist/template/internals/importCarsonTemplate.js +0 -8
- package/dist/template/internals/importCarsonTemplate.js.map +0 -1
- package/dist/template/internals/insertUsingTemplateRender.js +0 -41
- package/dist/template/internals/insertUsingTemplateRender.js.map +0 -1
- package/dist/template/internals/loadTemplateRenderSnapshots.js +0 -14
- package/dist/template/internals/loadTemplateRenderSnapshots.js.map +0 -1
- package/dist/template/internals/merge.js +0 -30
- package/dist/template/internals/merge.js.map +0 -1
- package/dist/template/internals/mergeUsingTemplateRender.js +0 -62
- package/dist/template/internals/mergeUsingTemplateRender.js.map +0 -1
- package/dist/template/internals/overwriteUsingTemplateRender.js +0 -12
- package/dist/template/internals/overwriteUsingTemplateRender.js.map +0 -1
- package/dist/template/internals/parseCarsonTemplateId.js +0 -17
- package/dist/template/internals/parseCarsonTemplateId.js.map +0 -1
- package/dist/template/internals/prettify.js +0 -25
- package/dist/template/internals/prettify.js.map +0 -1
- package/dist/template/internals/readCarsonTemplate.js +0 -45
- package/dist/template/internals/readCarsonTemplate.js.map +0 -1
- package/dist/template/internals/resolveModule.js +0 -9
- package/dist/template/internals/resolveModule.js.map +0 -1
- package/dist/template/internals/saveTemplateRenderSnapshots.js +0 -23
- package/dist/template/internals/saveTemplateRenderSnapshots.js.map +0 -1
- package/dist/template/internals/uninsertUsingTemplateRender.js +0 -41
- package/dist/template/internals/uninsertUsingTemplateRender.js.map +0 -1
- package/dist/template/internals/unmerge.js +0 -31
- package/dist/template/internals/unmerge.js.map +0 -1
- package/dist/template/internals/unmergeUsingTemplateRender.js +0 -50
- package/dist/template/internals/unmergeUsingTemplateRender.js.map +0 -1
- package/dist/template/internals.js +0 -20
- package/dist/template/internals.js.map +0 -1
- package/dist/template/renderCarsonTemplate.js +0 -34
- package/dist/template/renderCarsonTemplate.js.map +0 -1
- package/dist/template.js +0 -11
- package/dist/template.js.map +0 -1
- package/dist/workspace/Project.js +0 -204
- package/dist/workspace/Project.js.map +0 -1
- package/dist/workspace/ProjectConfig.js +0 -6
- package/dist/workspace/ProjectConfig.js.map +0 -1
- package/dist/workspace/ProjectCreateOptions.js +0 -3
- package/dist/workspace/ProjectCreateOptions.js.map +0 -1
- package/dist/workspace/ProjectError.js +0 -15
- package/dist/workspace/ProjectError.js.map +0 -1
- package/dist/workspace/ProjectOptions.js +0 -3
- package/dist/workspace/ProjectOptions.js.map +0 -1
- package/dist/workspace/ProjectUpdateOptions.js +0 -5
- package/dist/workspace/ProjectUpdateOptions.js.map +0 -1
- package/dist/workspace/Workspace.js +0 -529
- package/dist/workspace/Workspace.js.map +0 -1
- package/dist/workspace/WorkspaceConfig.js +0 -6
- package/dist/workspace/WorkspaceConfig.js.map +0 -1
- package/dist/workspace/WorkspaceCreateOptions.js +0 -5
- package/dist/workspace/WorkspaceCreateOptions.js.map +0 -1
- package/dist/workspace/WorkspaceCreateProjectOptions.js +0 -5
- package/dist/workspace/WorkspaceCreateProjectOptions.js.map +0 -1
- package/dist/workspace/WorkspaceDependencies.js +0 -140
- package/dist/workspace/WorkspaceDependencies.js.map +0 -1
- package/dist/workspace/WorkspaceDependenciesFromWorkspaceOptions.js +0 -5
- package/dist/workspace/WorkspaceDependenciesFromWorkspaceOptions.js.map +0 -1
- package/dist/workspace/WorkspaceDependenciesGetVersionsOptions.js +0 -5
- package/dist/workspace/WorkspaceDependenciesGetVersionsOptions.js.map +0 -1
- package/dist/workspace/WorkspaceDependency.js +0 -3
- package/dist/workspace/WorkspaceDependency.js.map +0 -1
- package/dist/workspace/WorkspaceDependencyProject.js +0 -5
- package/dist/workspace/WorkspaceDependencyProject.js.map +0 -1
- package/dist/workspace/WorkspaceError.js.map +0 -1
- package/dist/workspace/WorkspaceFindAndReadOptions.js +0 -5
- package/dist/workspace/WorkspaceFindAndReadOptions.js.map +0 -1
- package/dist/workspace/WorkspaceOptions.js +0 -3
- package/dist/workspace/WorkspaceOptions.js.map +0 -1
- package/dist/workspace/WorkspaceOptionsProject.js +0 -3
- package/dist/workspace/WorkspaceOptionsProject.js.map +0 -1
- package/dist/workspace/WorkspacePackageJson.js +0 -3
- package/dist/workspace/WorkspacePackageJson.js.map +0 -1
- package/dist/workspace/WorkspaceProjectGlobs.js +0 -5
- package/dist/workspace/WorkspaceProjectGlobs.js.map +0 -1
- package/dist/workspace/WorkspaceProjects.js +0 -3
- package/dist/workspace/WorkspaceProjects.js.map +0 -1
- package/dist/workspace/WorkspaceRepository.js +0 -5
- package/dist/workspace/WorkspaceRepository.js.map +0 -1
- package/dist/workspace/WorkspaceUpdateOptions.js +0 -5
- package/dist/workspace/WorkspaceUpdateOptions.js.map +0 -1
- package/dist/workspace/internals/compareProjectPath.js +0 -10
- package/dist/workspace/internals/compareProjectPath.js.map +0 -1
- package/dist/workspace/internals/compareSemver.js +0 -26
- package/dist/workspace/internals/compareSemver.js.map +0 -1
- package/dist/workspace/internals/compareWorkspaceDependencyProjectName.js +0 -10
- package/dist/workspace/internals/compareWorkspaceDependencyProjectName.js.map +0 -1
- package/dist/workspace/internals/containsProject.js +0 -19
- package/dist/workspace/internals/containsProject.js.map +0 -1
- package/dist/workspace/internals/containsWorkspace.js +0 -14
- package/dist/workspace/internals/containsWorkspace.js.map +0 -1
- package/dist/workspace/internals/getPackageJsonWorkspaces.js +0 -31
- package/dist/workspace/internals/getPackageJsonWorkspaces.js.map +0 -1
- package/dist/workspace/internals/getRepositoryBranches.js +0 -27
- package/dist/workspace/internals/getRepositoryBranches.js.map +0 -1
- package/dist/workspace/internals/getRepositoryUrl.js +0 -20
- package/dist/workspace/internals/getRepositoryUrl.js.map +0 -1
- package/dist/workspace/internals.js +0 -10
- package/dist/workspace/internals.js.map +0 -1
- package/dist/workspace/saveProjectConfig.js +0 -17
- package/dist/workspace/saveProjectConfig.js.map +0 -1
- package/dist/workspace/saveWorkspaceConfig.js +0 -17
- package/dist/workspace/saveWorkspaceConfig.js.map +0 -1
- package/dist/workspace.js +0 -24
- package/dist/workspace.js.map +0 -1
- package/{dist → build}/commands/create-project/CreateProject.d.ts +1 -1
- package/{dist → build}/commands/create-project/CreateProjectInput.d.ts +0 -0
- package/{dist → build}/commands/create-project/runCreateProject.d.ts +1 -1
- package/{dist → build}/commands/create-project.d.ts +2 -2
- package/{dist → build}/commands/create-workspace/CreateWorkspace.d.ts +0 -0
- package/{dist → build}/commands/create-workspace/CreateWorkspaceInput.d.ts +0 -0
- package/{dist → build}/commands/create-workspace/runCreateWorkspace.d.ts +0 -0
- package/{dist → build}/commands/create-workspace.d.ts +2 -2
- package/{dist → build}/commands/internals/CommandStatus.d.ts +0 -0
- package/{dist → build}/commands/internals/packageNameToDirectory.d.ts +0 -0
- package/{dist → build}/commands/internals.d.ts +0 -0
- package/{dist → build}/commands/update-workspace/UpdateWorkspace.d.ts +1 -1
- package/{dist → build}/commands/update-workspace/runUpdateWorkspace.d.ts +1 -1
- package/{dist → build}/commands/update-workspace.d.ts +0 -0
- package/{dist → build}/commands.d.ts +0 -0
- package/{dist → build}/constants.d.ts +0 -0
- package/{dist → build}/main.d.ts +0 -0
- package/{dist → build}/run.d.ts +0 -0
- package/{dist → build}/template/CarsonTemplate.d.ts +0 -0
- package/{dist → build}/template/CarsonTemplateConfig.d.ts +0 -0
- package/{dist → build}/template/CarsonTemplateError.d.ts +0 -0
- package/{dist → build}/template/TemplateAttributes.d.ts +0 -0
- package/{dist → build}/template/TemplateData.d.ts +0 -0
- package/{dist → build}/template/TemplateRender.d.ts +0 -0
- package/{dist → build}/template/TemplateRenders.d.ts +0 -0
- package/{dist → build}/template/applyTemplateRenders.d.ts +0 -0
- package/{dist → build}/template/internals/TemplateRenderSnapshot.d.ts +0 -0
- package/{dist → build}/template/internals/TemplateRenderSnapshots.d.ts +0 -0
- package/{dist → build}/template/internals/createUsingTemplateRender.d.ts +1 -1
- package/{dist → build}/template/internals/deleteUsingTemplateRender.d.ts +1 -1
- package/{dist → build}/template/internals/importCarsonTemplate.d.ts +0 -0
- package/{dist → build}/template/internals/insertUsingTemplateRender.d.ts +1 -1
- package/{dist → build}/template/internals/loadTemplateRenderSnapshots.d.ts +0 -0
- package/{dist → build}/template/internals/merge.d.ts +0 -0
- package/{dist → build}/template/internals/mergeUsingTemplateRender.d.ts +1 -1
- package/{dist → build}/template/internals/overwriteUsingTemplateRender.d.ts +1 -1
- package/{dist → build}/template/internals/parseCarsonTemplateId.d.ts +0 -0
- package/{dist → build}/template/internals/prettify.d.ts +0 -0
- package/{dist → build}/template/internals/readCarsonTemplate.d.ts +0 -0
- package/{dist → build}/template/internals/resolveModule.d.ts +0 -0
- package/{dist → build}/template/internals/saveTemplateRenderSnapshots.d.ts +0 -0
- package/{dist → build}/template/internals/uninsertUsingTemplateRender.d.ts +1 -1
- package/{dist → build}/template/internals/unmerge.d.ts +0 -0
- package/{dist → build}/template/internals/unmergeUsingTemplateRender.d.ts +1 -1
- package/{dist → build}/template/internals.d.ts +12 -12
- package/{dist → build}/template/renderCarsonTemplate.d.ts +0 -0
- package/{dist → build}/template.d.ts +0 -0
- package/{dist → build}/workspace/Project.d.ts +0 -0
- package/{dist → build}/workspace/ProjectConfig.d.ts +0 -0
- package/{dist → build}/workspace/ProjectCreateOptions.d.ts +0 -0
- package/{dist → build}/workspace/ProjectOptions.d.ts +0 -0
- package/{dist → build}/workspace/ProjectUpdateOptions.d.ts +0 -0
- package/{dist → build}/workspace/WorkspaceConfig.d.ts +0 -0
- package/{dist → build}/workspace/WorkspaceCreateOptions.d.ts +0 -0
- package/{dist → build}/workspace/WorkspaceCreateProjectOptions.d.ts +0 -0
- package/{dist → build}/workspace/WorkspaceDependencies.d.ts +0 -0
- package/{dist → build}/workspace/WorkspaceDependenciesFromWorkspaceOptions.d.ts +0 -0
- package/{dist → build}/workspace/WorkspaceDependenciesGetVersionsOptions.d.ts +0 -0
- package/{dist → build}/workspace/WorkspaceDependency.d.ts +0 -0
- package/{dist → build}/workspace/WorkspaceDependencyProject.d.ts +0 -0
- package/{dist → build}/workspace/WorkspaceFindAndReadOptions.d.ts +0 -0
- package/{dist → build}/workspace/WorkspaceOptions.d.ts +0 -0
- package/{dist → build}/workspace/WorkspaceOptionsProject.d.ts +0 -0
- package/{dist → build}/workspace/WorkspacePackageJson.d.ts +0 -0
- package/{dist → build}/workspace/WorkspaceProjectGlobs.d.ts +0 -0
- package/{dist → build}/workspace/WorkspaceProjects.d.ts +0 -0
- package/{dist → build}/workspace/WorkspaceRepository.d.ts +0 -0
- package/{dist → build}/workspace/WorkspaceUpdateOptions.d.ts +0 -0
- package/{dist → build}/workspace/internals/compareProjectPath.d.ts +0 -0
- package/{dist → build}/workspace/internals/compareSemver.d.ts +0 -0
- package/{dist → build}/workspace/internals/compareWorkspaceDependencyProjectName.d.ts +0 -0
- package/{dist → build}/workspace/internals/containsProject.d.ts +0 -0
- package/{dist → build}/workspace/internals/containsWorkspace.d.ts +0 -0
- package/{dist → build}/workspace/internals/getPackageJsonWorkspaces.d.ts +0 -0
- package/{dist → build}/workspace/internals/getRepositoryBranches.d.ts +0 -0
- package/{dist → build}/workspace/internals/getRepositoryUrl.d.ts +0 -0
- package/{dist → build}/workspace/internals.d.ts +0 -0
- package/{dist → build}/workspace/saveProjectConfig.d.ts +0 -0
- package/{dist → build}/workspace/saveWorkspaceConfig.d.ts +0 -0
- package/{dist → build}/workspace.d.ts +0 -0
- package/{src → source}/commands/create-project/createProjectCommand.tsx +1 -1
- package/{src → source}/commands/create-project/runCreateProject.ts +1 -1
- package/{src → source}/commands/create-project.ts +2 -2
- package/{src → source}/commands/create-workspace/createWorkspaceCommand.tsx +0 -0
- package/{src → source}/commands/create-workspace/runCreateWorkspace.ts +1 -1
- package/{src → source}/commands/create-workspace.ts +2 -2
- package/{src → source}/commands/internals/CommandStatus.ts +0 -0
- package/{src → source}/commands/internals/packageNameToDirectory.ts +0 -0
- package/{src → source}/commands/internals.ts +0 -0
- package/{src → source}/commands/update-workspace/runUpdateWorkspace.ts +1 -1
- package/{src → source}/commands/update-workspace/updateWorkspaceCommand.tsx +1 -1
- package/{src → source}/commands/update-workspace.ts +0 -0
- package/{src → source}/commands.ts +0 -0
- package/{src → source}/constants.ts +0 -0
- package/{src → source}/main.ts +0 -0
- package/{src → source}/modules.d.ts +0 -0
- package/{src → source}/template/CarsonTemplate.ts +0 -0
- package/{src → source}/template/CarsonTemplateConfig.ts +0 -0
- package/{src → source}/template/CarsonTemplateError.ts +0 -0
- package/{src → source}/template/TemplateAttributes.ts +0 -0
- package/{src → source}/template/TemplateData.ts +0 -0
- package/{src → source}/template/TemplateRender.ts +0 -0
- package/{src → source}/template/TemplateRenders.ts +0 -0
- package/{src → source}/template/internals/TemplateRenderSnapshot.ts +0 -0
- package/{src → source}/template/internals/TemplateRenderSnapshots.ts +0 -0
- package/{src → source}/template/internals/createUsingTemplateRender.ts +1 -1
- package/{src → source}/template/internals/deleteUsingTemplateRender.ts +1 -1
- package/{src → source}/template/internals/importCarsonTemplate.ts +0 -0
- package/{src → source}/template/internals/insertUsingTemplateRender.ts +2 -2
- package/{src → source}/template/internals/loadTemplateRenderSnapshots.ts +0 -0
- package/{src → source}/template/internals/merge.ts +0 -0
- package/{src → source}/template/internals/mergeUsingTemplateRender.ts +2 -2
- package/{src → source}/template/internals/overwriteUsingTemplateRender.ts +1 -1
- package/{src → source}/template/internals/parseCarsonTemplateId.ts +0 -0
- package/{src → source}/template/internals/resolveModule.ts +0 -0
- package/{src → source}/template/internals/saveTemplateRenderSnapshots.ts +1 -1
- package/{src → source}/template/internals/uninsertUsingTemplateRender.ts +2 -2
- package/{src → source}/template/internals/unmerge.ts +0 -0
- package/{src → source}/template/internals/unmergeUsingTemplateRender.ts +2 -2
- package/{src → source}/template/internals.ts +12 -12
- package/{src → source}/template/renderCarsonTemplate.ts +0 -0
- package/{src → source}/template.ts +0 -0
- package/{src → source}/workspace/ProjectConfig.ts +0 -0
- package/{src → source}/workspace/ProjectCreateOptions.ts +0 -0
- package/{src → source}/workspace/ProjectError.ts +0 -0
- package/{src → source}/workspace/ProjectOptions.ts +0 -0
- package/{src → source}/workspace/ProjectUpdateOptions.ts +0 -0
- package/{src → source}/workspace/WorkspaceConfig.ts +0 -0
- package/{src → source}/workspace/WorkspaceCreateOptions.ts +0 -0
- package/{src → source}/workspace/WorkspaceCreateProjectOptions.ts +0 -0
- package/{src → source}/workspace/WorkspaceDependenciesFromWorkspaceOptions.ts +0 -0
- package/{src → source}/workspace/WorkspaceDependenciesGetVersionsOptions.ts +0 -0
- package/{src → source}/workspace/WorkspaceDependency.ts +0 -0
- package/{src → source}/workspace/WorkspaceDependencyProject.ts +0 -0
- package/{src → source}/workspace/WorkspaceError.ts +0 -0
- package/{src → source}/workspace/WorkspaceFindAndReadOptions.ts +0 -0
- package/{src → source}/workspace/WorkspaceOptionsProject.ts +0 -0
- package/{src → source}/workspace/WorkspacePackageJson.ts +0 -0
- package/{src → source}/workspace/WorkspaceProjectGlobs.ts +0 -0
- package/{src → source}/workspace/WorkspaceProjects.ts +0 -0
- package/{src → source}/workspace/WorkspaceRepository.ts +0 -0
- package/{src → source}/workspace/WorkspaceUpdateOptions.ts +0 -0
- package/{src → source}/workspace/internals/compareProjectPath.ts +0 -0
- package/{src → source}/workspace/internals/compareWorkspaceDependencyProjectName.ts +0 -0
- package/{src → source}/workspace/internals/containsProject.ts +0 -0
- package/{src → source}/workspace/internals/containsWorkspace.ts +0 -0
- package/{src → source}/workspace/internals/getRepositoryBranches.ts +0 -0
- package/{src → source}/workspace/internals/getRepositoryUrl.ts +0 -0
- package/{src → source}/workspace/internals.ts +0 -0
- package/{src → source}/workspace/saveProjectConfig.ts +1 -1
- package/{src → source}/workspace/saveWorkspaceConfig.ts +1 -1
- /package/{src → source}/workspace.ts +0 -0
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import fs from 'fs-extra';
|
|
2
|
-
import _ from 'lodash';
|
|
3
|
-
import path from 'node:path';
|
|
4
|
-
import { prettify } from './prettify.js';
|
|
5
|
-
import { CarsonTemplateError } from '../CarsonTemplateError.js';
|
|
6
|
-
export async function insertUsingTemplateRender(templateRender, basePath) {
|
|
7
|
-
let to = path.join(basePath, templateRender.attributes.to);
|
|
8
|
-
let extension = path.extname(to);
|
|
9
|
-
switch(extension){
|
|
10
|
-
case '.md':
|
|
11
|
-
{
|
|
12
|
-
if (await fs.pathExists(to)) {
|
|
13
|
-
let targetFile = await fs.readFile(to, {
|
|
14
|
-
encoding: 'utf8'
|
|
15
|
-
});
|
|
16
|
-
let newContent = `<!-- ${templateRender.attributes.strategy[1]} -->${templateRender.content}<!-- ${templateRender.attributes.strategy[1]} -->`;
|
|
17
|
-
let oldContentRegexp = new RegExp(`<!--\\s*${_.escapeRegExp(templateRender.attributes.strategy[1])}\\s-->[\\s\\S]*<!--\\s*${_.escapeRegExp(templateRender.attributes.strategy[1])}\\s-->`, 'u');
|
|
18
|
-
let newFile = targetFile.replace(oldContentRegexp, newContent);
|
|
19
|
-
await fs.writeFile(to, await prettify(newFile, to), {
|
|
20
|
-
encoding: 'utf8'
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
break;
|
|
24
|
-
}
|
|
25
|
-
default:
|
|
26
|
-
{
|
|
27
|
-
throw new CarsonTemplateError('STRATEGY_UNSUPPORTED_EXTENSION', {
|
|
28
|
-
messageParameters: [
|
|
29
|
-
templateRender.attributes.strategy,
|
|
30
|
-
templateRender.template.path,
|
|
31
|
-
extension
|
|
32
|
-
],
|
|
33
|
-
data: {
|
|
34
|
-
path: templateRender.template.path
|
|
35
|
-
}
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
//# sourceMappingURL=insertUsingTemplateRender.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/template/internals/insertUsingTemplateRender.ts"],"sourcesContent":["import fs from 'fs-extra';\nimport _ from 'lodash';\nimport path from 'node:path';\n\nimport {prettify} from './prettify.js';\nimport {type TemplateRenderSnapshot} from './TemplateRenderSnapshot.js';\nimport {CarsonTemplateError} from '../CarsonTemplateError.js';\nimport {type TemplateRender} from '../TemplateRender.js';\n\nexport async function insertUsingTemplateRender(\n templateRender: TemplateRender | TemplateRenderSnapshot,\n basePath: string,\n) {\n let to = path.join(basePath, templateRender.attributes.to);\n let extension = path.extname(to);\n\n switch (extension) {\n case '.md': {\n if (await fs.pathExists(to)) {\n let targetFile = await fs.readFile(to, {encoding: 'utf8'});\n let newContent = `<!-- ${templateRender.attributes.strategy[1]} -->${templateRender.content}<!-- ${templateRender.attributes.strategy[1]} -->`;\n let oldContentRegexp = new RegExp(\n `<!--\\\\s*${_.escapeRegExp(\n templateRender.attributes.strategy[1],\n )}\\\\s-->[\\\\s\\\\S]*<!--\\\\s*${_.escapeRegExp(templateRender.attributes.strategy[1])}\\\\s-->`,\n 'u',\n );\n let newFile = targetFile.replace(oldContentRegexp, newContent);\n\n await fs.writeFile(to, await prettify(newFile, to), {encoding: 'utf8'});\n }\n\n break;\n }\n\n default: {\n throw new CarsonTemplateError('STRATEGY_UNSUPPORTED_EXTENSION', {\n messageParameters: [\n templateRender.attributes.strategy,\n templateRender.template.path,\n extension,\n ],\n data: {\n path: templateRender.template.path,\n },\n });\n }\n }\n}\n"],"names":["fs","_","path","prettify","CarsonTemplateError","insertUsingTemplateRender","templateRender","basePath","to","join","attributes","extension","extname","pathExists","targetFile","readFile","encoding","newContent","strategy","content","oldContentRegexp","RegExp","escapeRegExp","newFile","replace","writeFile","messageParameters","template","data"],"mappings":"AAAA,OAAOA,QAAQ,WAAW;AAC1B,OAAOC,OAAO,SAAS;AACvB,OAAOC,UAAU,YAAY;AAE7B,SAAQC,QAAQ,QAAO,gBAAgB;AAEvC,SAAQC,mBAAmB,QAAO,4BAA4B;AAG9D,OAAO,eAAeC,0BACpBC,cAAuD,EACvDC,QAAgB;IAEhB,IAAIC,KAAKN,KAAKO,IAAI,CAACF,UAAUD,eAAeI,UAAU,CAACF,EAAE;IACzD,IAAIG,YAAYT,KAAKU,OAAO,CAACJ;IAE7B,OAAQG;QACN,KAAK;YAAO;gBACV,IAAI,MAAMX,GAAGa,UAAU,CAACL,KAAK;oBAC3B,IAAIM,aAAa,MAAMd,GAAGe,QAAQ,CAACP,IAAI;wBAACQ,UAAU;oBAAM;oBACxD,IAAIC,aAAa,CAAC,KAAK,EAAEX,eAAeI,UAAU,CAACQ,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAEZ,eAAea,OAAO,CAAC,KAAK,EAAEb,eAAeI,UAAU,CAACQ,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC;oBAC9I,IAAIE,mBAAmB,IAAIC,OACzB,CAAC,QAAQ,EAAEpB,EAAEqB,YAAY,CACvBhB,eAAeI,UAAU,CAACQ,QAAQ,CAAC,EAAE,EACrC,uBAAuB,EAAEjB,EAAEqB,YAAY,CAAChB,eAAeI,UAAU,CAACQ,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC,EACxF;oBAEF,IAAIK,UAAUT,WAAWU,OAAO,CAACJ,kBAAkBH;oBAEnD,MAAMjB,GAAGyB,SAAS,CAACjB,IAAI,MAAML,SAASoB,SAASf,KAAK;wBAACQ,UAAU;oBAAM;gBACvE;gBAEA;YACF;QAEA;YAAS;gBACP,MAAM,IAAIZ,oBAAoB,kCAAkC;oBAC9DsB,mBAAmB;wBACjBpB,eAAeI,UAAU,CAACQ,QAAQ;wBAClCZ,eAAeqB,QAAQ,CAACzB,IAAI;wBAC5BS;qBACD;oBACDiB,MAAM;wBACJ1B,MAAMI,eAAeqB,QAAQ,CAACzB,IAAI;oBACpC;gBACF;YACF;IACF;AACF"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { inflateSync, strFromU8 } from 'fflate';
|
|
2
|
-
import fs from 'fs-extra';
|
|
3
|
-
import { templateRenderSnapshotsSchema } from './TemplateRenderSnapshots.js';
|
|
4
|
-
export async function loadTemplateRenderSnapshots(templateRenderSnapshotsPath) {
|
|
5
|
-
let compressedSnapshots = await fs.readFile(templateRenderSnapshotsPath);
|
|
6
|
-
let decompressedSnapshots = inflateSync(new Uint8Array(compressedSnapshots));
|
|
7
|
-
let parsingResult = templateRenderSnapshotsSchema.safeParse(JSON.parse(strFromU8(decompressedSnapshots)));
|
|
8
|
-
if (!parsingResult.success) {
|
|
9
|
-
throw parsingResult.error;
|
|
10
|
-
}
|
|
11
|
-
return parsingResult.data;
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
//# sourceMappingURL=loadTemplateRenderSnapshots.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/template/internals/loadTemplateRenderSnapshots.ts"],"sourcesContent":["import {inflateSync, strFromU8} from 'fflate';\nimport fs from 'fs-extra';\n\nimport {templateRenderSnapshotsSchema} from './TemplateRenderSnapshots.js';\n\nexport async function loadTemplateRenderSnapshots(templateRenderSnapshotsPath: string) {\n let compressedSnapshots = await fs.readFile(templateRenderSnapshotsPath);\n let decompressedSnapshots = inflateSync(new Uint8Array(compressedSnapshots));\n let parsingResult = templateRenderSnapshotsSchema.safeParse(\n JSON.parse(strFromU8(decompressedSnapshots)),\n );\n\n if (!parsingResult.success) {\n throw parsingResult.error;\n }\n\n return parsingResult.data;\n}\n"],"names":["inflateSync","strFromU8","fs","templateRenderSnapshotsSchema","loadTemplateRenderSnapshots","templateRenderSnapshotsPath","compressedSnapshots","readFile","decompressedSnapshots","Uint8Array","parsingResult","safeParse","JSON","parse","success","error","data"],"mappings":"AAAA,SAAQA,WAAW,EAAEC,SAAS,QAAO,SAAS;AAC9C,OAAOC,QAAQ,WAAW;AAE1B,SAAQC,6BAA6B,QAAO,+BAA+B;AAE3E,OAAO,eAAeC,4BAA4BC,2BAAmC;IACnF,IAAIC,sBAAsB,MAAMJ,GAAGK,QAAQ,CAACF;IAC5C,IAAIG,wBAAwBR,YAAY,IAAIS,WAAWH;IACvD,IAAII,gBAAgBP,8BAA8BQ,SAAS,CACzDC,KAAKC,KAAK,CAACZ,UAAUO;IAGvB,IAAI,CAACE,cAAcI,OAAO,EAAE;QAC1B,MAAMJ,cAAcK,KAAK;IAC3B;IAEA,OAAOL,cAAcM,IAAI;AAC3B"}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Merges two JSON-like variables. Only simple objects, not arrays, are merged recursively.
|
|
3
|
-
*/ export function merge(a, b) {
|
|
4
|
-
if (b === undefined || b == null) {
|
|
5
|
-
return a;
|
|
6
|
-
}
|
|
7
|
-
if (typeof b !== 'object' || Array.isArray(b)) {
|
|
8
|
-
return a;
|
|
9
|
-
}
|
|
10
|
-
if (a === undefined || a == null) {
|
|
11
|
-
return a;
|
|
12
|
-
}
|
|
13
|
-
if (typeof a !== 'object' || Array.isArray(a)) {
|
|
14
|
-
return a;
|
|
15
|
-
}
|
|
16
|
-
const newA = {
|
|
17
|
-
...a
|
|
18
|
-
};
|
|
19
|
-
for (let [key, value] of Object.entries(b)){
|
|
20
|
-
if (a[key] && typeof a[key] === 'object' && !Array.isArray(a[key]) && b[key] && typeof b[key] === 'object' && !Array.isArray(b[key])) {
|
|
21
|
-
const result = merge(a[key], b[key]);
|
|
22
|
-
newA[key] = result;
|
|
23
|
-
} else {
|
|
24
|
-
newA[key] = value;
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
return newA;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
//# sourceMappingURL=merge.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/template/internals/merge.ts"],"sourcesContent":["/**\n * Merges two JSON-like variables. Only simple objects, not arrays, are merged recursively.\n */\nexport function merge(a: unknown, b: unknown) {\n if (b === undefined || b == null) {\n return a;\n }\n\n if (typeof b !== 'object' || Array.isArray(b)) {\n return a;\n }\n\n if (a === undefined || a == null) {\n return a;\n }\n\n if (typeof a !== 'object' || Array.isArray(a)) {\n return a;\n }\n\n const newA: Record<string, unknown> = {...a};\n\n for (let [key, value] of Object.entries(b)) {\n if (\n (a as Record<string, unknown>)[key] &&\n typeof (a as Record<string, unknown>)[key] === 'object' &&\n !Array.isArray((a as Record<string, unknown>)[key]) &&\n (b as Record<string, unknown>)[key] &&\n typeof (b as Record<string, unknown>)[key] === 'object' &&\n !Array.isArray((b as Record<string, unknown>)[key])\n ) {\n const result = merge(\n (a as Record<string, unknown>)[key],\n (b as Record<string, unknown>)[key],\n );\n\n newA[key] = result;\n } else {\n newA[key] = value;\n }\n }\n\n return newA;\n}\n"],"names":["merge","a","b","undefined","Array","isArray","newA","key","value","Object","entries","result"],"mappings":"AAAA;;CAEC,GACD,OAAO,SAASA,MAAMC,CAAU,EAAEC,CAAU;IAC1C,IAAIA,MAAMC,aAAaD,KAAK,MAAM;QAChC,OAAOD;IACT;IAEA,IAAI,OAAOC,MAAM,YAAYE,MAAMC,OAAO,CAACH,IAAI;QAC7C,OAAOD;IACT;IAEA,IAAIA,MAAME,aAAaF,KAAK,MAAM;QAChC,OAAOA;IACT;IAEA,IAAI,OAAOA,MAAM,YAAYG,MAAMC,OAAO,CAACJ,IAAI;QAC7C,OAAOA;IACT;IAEA,MAAMK,OAAgC;QAAC,GAAGL,CAAC;IAAA;IAE3C,KAAK,IAAI,CAACM,KAAKC,MAAM,IAAIC,OAAOC,OAAO,CAACR,GAAI;QAC1C,IACE,AAACD,CAA6B,CAACM,IAAI,IACnC,OAAO,AAACN,CAA6B,CAACM,IAAI,KAAK,YAC/C,CAACH,MAAMC,OAAO,CAAC,AAACJ,CAA6B,CAACM,IAAI,KAClD,AAACL,CAA6B,CAACK,IAAI,IACnC,OAAO,AAACL,CAA6B,CAACK,IAAI,KAAK,YAC/C,CAACH,MAAMC,OAAO,CAAC,AAACH,CAA6B,CAACK,IAAI,GAClD;YACA,MAAMI,SAASX,MACb,AAACC,CAA6B,CAACM,IAAI,EACnC,AAACL,CAA6B,CAACK,IAAI;YAGrCD,IAAI,CAACC,IAAI,GAAGI;QACd,OAAO;YACLL,IAAI,CAACC,IAAI,GAAGC;QACd;IACF;IAEA,OAAOF;AACT"}
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
import fs from 'fs-extra';
|
|
2
|
-
import json from 'json5';
|
|
3
|
-
import path from 'node:path';
|
|
4
|
-
import yaml from 'yaml';
|
|
5
|
-
import { merge } from './merge.js';
|
|
6
|
-
import { prettify } from './prettify.js';
|
|
7
|
-
import { CarsonTemplateError } from '../CarsonTemplateError.js';
|
|
8
|
-
export async function mergeUsingTemplateRender(templateRender, basePath) {
|
|
9
|
-
let to = path.join(basePath, templateRender.attributes.to);
|
|
10
|
-
let extension = path.extname(to);
|
|
11
|
-
switch(extension){
|
|
12
|
-
case '.json':
|
|
13
|
-
{
|
|
14
|
-
if (await fs.pathExists(to)) {
|
|
15
|
-
let targetFile = await fs.readJson(to);
|
|
16
|
-
let fileToMerge = json.parse(templateRender.content);
|
|
17
|
-
let newFile = JSON.stringify(merge(targetFile, fileToMerge), null, 2);
|
|
18
|
-
await fs.writeFile(to, await prettify(newFile, to), {
|
|
19
|
-
encoding: 'utf8'
|
|
20
|
-
});
|
|
21
|
-
} else {
|
|
22
|
-
await fs.writeFile(to, await prettify(templateRender.content, to), {
|
|
23
|
-
encoding: 'utf8'
|
|
24
|
-
});
|
|
25
|
-
}
|
|
26
|
-
break;
|
|
27
|
-
}
|
|
28
|
-
case '.yaml':
|
|
29
|
-
{
|
|
30
|
-
if (await fs.pathExists(to)) {
|
|
31
|
-
let targetFile = yaml.parse(await fs.readFile(to, {
|
|
32
|
-
encoding: 'utf8'
|
|
33
|
-
}));
|
|
34
|
-
let fileToMerge = yaml.parse(templateRender.content);
|
|
35
|
-
let newFile = yaml.stringify(merge(targetFile, fileToMerge));
|
|
36
|
-
await fs.writeFile(to, await prettify(newFile, to), {
|
|
37
|
-
encoding: 'utf8'
|
|
38
|
-
});
|
|
39
|
-
} else {
|
|
40
|
-
await fs.writeFile(to, await prettify(templateRender.content, to), {
|
|
41
|
-
encoding: 'utf8'
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
|
-
break;
|
|
45
|
-
}
|
|
46
|
-
default:
|
|
47
|
-
{
|
|
48
|
-
throw new CarsonTemplateError('STRATEGY_UNSUPPORTED_EXTENSION', {
|
|
49
|
-
messageParameters: [
|
|
50
|
-
templateRender.attributes.strategy,
|
|
51
|
-
templateRender.template.path,
|
|
52
|
-
extension
|
|
53
|
-
],
|
|
54
|
-
data: {
|
|
55
|
-
path: templateRender.template.path
|
|
56
|
-
}
|
|
57
|
-
});
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
//# sourceMappingURL=mergeUsingTemplateRender.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/template/internals/mergeUsingTemplateRender.ts"],"sourcesContent":["import {type Json} from '@jakubmazanec/zod-utils';\nimport fs from 'fs-extra';\nimport json from 'json5';\nimport path from 'node:path';\nimport yaml from 'yaml';\n\nimport {merge} from './merge.js';\nimport {prettify} from './prettify.js';\nimport {type TemplateRenderSnapshot} from './TemplateRenderSnapshot.js';\nimport {CarsonTemplateError} from '../CarsonTemplateError.js';\nimport {type TemplateRender} from '../TemplateRender.js';\n\nexport async function mergeUsingTemplateRender(\n templateRender: TemplateRender | TemplateRenderSnapshot,\n basePath: string,\n) {\n let to = path.join(basePath, templateRender.attributes.to);\n let extension = path.extname(to);\n\n switch (extension) {\n case '.json': {\n if (await fs.pathExists(to)) {\n let targetFile = (await fs.readJson(to)) as Json;\n let fileToMerge = json.parse<Json>(templateRender.content);\n let newFile = JSON.stringify(merge(targetFile, fileToMerge), null, 2);\n\n await fs.writeFile(to, await prettify(newFile, to), {encoding: 'utf8'});\n } else {\n await fs.writeFile(to, await prettify(templateRender.content, to), {encoding: 'utf8'});\n }\n\n break;\n }\n\n case '.yaml': {\n if (await fs.pathExists(to)) {\n let targetFile = yaml.parse(await fs.readFile(to, {encoding: 'utf8'})) as unknown;\n let fileToMerge = yaml.parse(templateRender.content) as unknown;\n let newFile = yaml.stringify(merge(targetFile, fileToMerge));\n\n await fs.writeFile(to, await prettify(newFile, to), {encoding: 'utf8'});\n } else {\n await fs.writeFile(to, await prettify(templateRender.content, to), {encoding: 'utf8'});\n }\n\n break;\n }\n\n default: {\n throw new CarsonTemplateError('STRATEGY_UNSUPPORTED_EXTENSION', {\n messageParameters: [\n templateRender.attributes.strategy,\n templateRender.template.path,\n extension,\n ],\n data: {\n path: templateRender.template.path,\n },\n });\n }\n }\n}\n"],"names":["fs","json","path","yaml","merge","prettify","CarsonTemplateError","mergeUsingTemplateRender","templateRender","basePath","to","join","attributes","extension","extname","pathExists","targetFile","readJson","fileToMerge","parse","content","newFile","JSON","stringify","writeFile","encoding","readFile","messageParameters","strategy","template","data"],"mappings":"AACA,OAAOA,QAAQ,WAAW;AAC1B,OAAOC,UAAU,QAAQ;AACzB,OAAOC,UAAU,YAAY;AAC7B,OAAOC,UAAU,OAAO;AAExB,SAAQC,KAAK,QAAO,aAAa;AACjC,SAAQC,QAAQ,QAAO,gBAAgB;AAEvC,SAAQC,mBAAmB,QAAO,4BAA4B;AAG9D,OAAO,eAAeC,yBACpBC,cAAuD,EACvDC,QAAgB;IAEhB,IAAIC,KAAKR,KAAKS,IAAI,CAACF,UAAUD,eAAeI,UAAU,CAACF,EAAE;IACzD,IAAIG,YAAYX,KAAKY,OAAO,CAACJ;IAE7B,OAAQG;QACN,KAAK;YAAS;gBACZ,IAAI,MAAMb,GAAGe,UAAU,CAACL,KAAK;oBAC3B,IAAIM,aAAc,MAAMhB,GAAGiB,QAAQ,CAACP;oBACpC,IAAIQ,cAAcjB,KAAKkB,KAAK,CAAOX,eAAeY,OAAO;oBACzD,IAAIC,UAAUC,KAAKC,SAAS,CAACnB,MAAMY,YAAYE,cAAc,MAAM;oBAEnE,MAAMlB,GAAGwB,SAAS,CAACd,IAAI,MAAML,SAASgB,SAASX,KAAK;wBAACe,UAAU;oBAAM;gBACvE,OAAO;oBACL,MAAMzB,GAAGwB,SAAS,CAACd,IAAI,MAAML,SAASG,eAAeY,OAAO,EAAEV,KAAK;wBAACe,UAAU;oBAAM;gBACtF;gBAEA;YACF;QAEA,KAAK;YAAS;gBACZ,IAAI,MAAMzB,GAAGe,UAAU,CAACL,KAAK;oBAC3B,IAAIM,aAAab,KAAKgB,KAAK,CAAC,MAAMnB,GAAG0B,QAAQ,CAAChB,IAAI;wBAACe,UAAU;oBAAM;oBACnE,IAAIP,cAAcf,KAAKgB,KAAK,CAACX,eAAeY,OAAO;oBACnD,IAAIC,UAAUlB,KAAKoB,SAAS,CAACnB,MAAMY,YAAYE;oBAE/C,MAAMlB,GAAGwB,SAAS,CAACd,IAAI,MAAML,SAASgB,SAASX,KAAK;wBAACe,UAAU;oBAAM;gBACvE,OAAO;oBACL,MAAMzB,GAAGwB,SAAS,CAACd,IAAI,MAAML,SAASG,eAAeY,OAAO,EAAEV,KAAK;wBAACe,UAAU;oBAAM;gBACtF;gBAEA;YACF;QAEA;YAAS;gBACP,MAAM,IAAInB,oBAAoB,kCAAkC;oBAC9DqB,mBAAmB;wBACjBnB,eAAeI,UAAU,CAACgB,QAAQ;wBAClCpB,eAAeqB,QAAQ,CAAC3B,IAAI;wBAC5BW;qBACD;oBACDiB,MAAM;wBACJ5B,MAAMM,eAAeqB,QAAQ,CAAC3B,IAAI;oBACpC;gBACF;YACF;IACF;AACF"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import fs from 'fs-extra';
|
|
2
|
-
import path from 'node:path';
|
|
3
|
-
import { prettify } from './prettify.js';
|
|
4
|
-
export async function overwriteUsingTemplateRender(templateRender, basePath) {
|
|
5
|
-
let to = path.join(basePath, templateRender.attributes.to);
|
|
6
|
-
await fs.ensureDir(path.dirname(to));
|
|
7
|
-
await fs.writeFile(to, await prettify(templateRender.content, to), {
|
|
8
|
-
encoding: 'utf8'
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
//# sourceMappingURL=overwriteUsingTemplateRender.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/template/internals/overwriteUsingTemplateRender.ts"],"sourcesContent":["import fs from 'fs-extra';\nimport path from 'node:path';\n\nimport {prettify} from './prettify.js';\nimport {type TemplateRenderSnapshot} from './TemplateRenderSnapshot.js';\nimport {type TemplateRender} from '../TemplateRender.js';\n\nexport async function overwriteUsingTemplateRender(\n templateRender: TemplateRender | TemplateRenderSnapshot,\n basePath: string,\n) {\n let to = path.join(basePath, templateRender.attributes.to);\n\n await fs.ensureDir(path.dirname(to));\n await fs.writeFile(to, await prettify(templateRender.content, to), {encoding: 'utf8'});\n}\n"],"names":["fs","path","prettify","overwriteUsingTemplateRender","templateRender","basePath","to","join","attributes","ensureDir","dirname","writeFile","content","encoding"],"mappings":"AAAA,OAAOA,QAAQ,WAAW;AAC1B,OAAOC,UAAU,YAAY;AAE7B,SAAQC,QAAQ,QAAO,gBAAgB;AAIvC,OAAO,eAAeC,6BACpBC,cAAuD,EACvDC,QAAgB;IAEhB,IAAIC,KAAKL,KAAKM,IAAI,CAACF,UAAUD,eAAeI,UAAU,CAACF,EAAE;IAEzD,MAAMN,GAAGS,SAAS,CAACR,KAAKS,OAAO,CAACJ;IAChC,MAAMN,GAAGW,SAAS,CAACL,IAAI,MAAMJ,SAASE,eAAeQ,OAAO,EAAEN,KAAK;QAACO,UAAU;IAAM;AACtF"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { CarsonTemplateError } from '../CarsonTemplateError.js';
|
|
2
|
-
export function parseCarsonTemplateId(value) {
|
|
3
|
-
let parts = value.split(':');
|
|
4
|
-
if (!parts[0] || !parts[1]) {
|
|
5
|
-
throw new CarsonTemplateError('INVALID_CARSON_TEMPLATE_ID', {
|
|
6
|
-
messageParameters: [
|
|
7
|
-
value
|
|
8
|
-
]
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
return [
|
|
12
|
-
parts[0],
|
|
13
|
-
parts[1]
|
|
14
|
-
];
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
//# sourceMappingURL=parseCarsonTemplateId.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/template/internals/parseCarsonTemplateId.ts"],"sourcesContent":["import {CarsonTemplateError} from '../CarsonTemplateError.js';\n\nexport function parseCarsonTemplateId(value: string): [moduleId: string, templateName: string] {\n let parts = value.split(':');\n\n if (!parts[0] || !parts[1]) {\n throw new CarsonTemplateError('INVALID_CARSON_TEMPLATE_ID', {\n messageParameters: [value],\n });\n }\n\n return [parts[0], parts[1]];\n}\n"],"names":["CarsonTemplateError","parseCarsonTemplateId","value","parts","split","messageParameters"],"mappings":"AAAA,SAAQA,mBAAmB,QAAO,4BAA4B;AAE9D,OAAO,SAASC,sBAAsBC,KAAa;IACjD,IAAIC,QAAQD,MAAME,KAAK,CAAC;IAExB,IAAI,CAACD,KAAK,CAAC,EAAE,IAAI,CAACA,KAAK,CAAC,EAAE,EAAE;QAC1B,MAAM,IAAIH,oBAAoB,8BAA8B;YAC1DK,mBAAmB;gBAACH;aAAM;QAC5B;IACF;IAEA,OAAO;QAACC,KAAK,CAAC,EAAE;QAAEA,KAAK,CAAC,EAAE;KAAC;AAC7B"}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import prettier from 'prettier';
|
|
2
|
-
import packageJsonPrettierPlugin from 'prettier-plugin-packagejson';
|
|
3
|
-
const NO_INFERRED_PARSER = /parser.*inferred/i;
|
|
4
|
-
export async function prettify(content, targetPath) {
|
|
5
|
-
let prettifiedContent = content;
|
|
6
|
-
try {
|
|
7
|
-
let prettierOptions = await prettier.resolveConfig(targetPath, {
|
|
8
|
-
editorconfig: true
|
|
9
|
-
});
|
|
10
|
-
prettifiedContent = await prettier.format(content, {
|
|
11
|
-
...prettierOptions,
|
|
12
|
-
filepath: targetPath,
|
|
13
|
-
plugins: [
|
|
14
|
-
packageJsonPrettierPlugin
|
|
15
|
-
]
|
|
16
|
-
});
|
|
17
|
-
} catch (error) {
|
|
18
|
-
if (!NO_INFERRED_PARSER.test(error.message)) {
|
|
19
|
-
throw error;
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
return prettifiedContent;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
//# sourceMappingURL=prettify.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/template/internals/prettify.ts"],"sourcesContent":["import prettier from 'prettier';\nimport packageJsonPrettierPlugin from 'prettier-plugin-packagejson';\n\nconst NO_INFERRED_PARSER = /parser.*inferred/i;\n\nexport async function prettify(content: string, targetPath: string) {\n let prettifiedContent = content;\n\n try {\n let prettierOptions = await prettier.resolveConfig(targetPath, {editorconfig: true});\n\n prettifiedContent = await prettier.format(content, {\n ...prettierOptions,\n filepath: targetPath,\n plugins: [packageJsonPrettierPlugin],\n });\n } catch (error: unknown) {\n if (!NO_INFERRED_PARSER.test((error as Error).message)) {\n throw error;\n }\n }\n\n return prettifiedContent;\n}\n"],"names":["prettier","packageJsonPrettierPlugin","NO_INFERRED_PARSER","prettify","content","targetPath","prettifiedContent","prettierOptions","resolveConfig","editorconfig","format","filepath","plugins","error","test","message"],"mappings":"AAAA,OAAOA,cAAc,WAAW;AAChC,OAAOC,+BAA+B,8BAA8B;AAEpE,MAAMC,qBAAqB;AAE3B,OAAO,eAAeC,SAASC,OAAe,EAAEC,UAAkB;IAChE,IAAIC,oBAAoBF;IAExB,IAAI;QACF,IAAIG,kBAAkB,MAAMP,SAASQ,aAAa,CAACH,YAAY;YAACI,cAAc;QAAI;QAElFH,oBAAoB,MAAMN,SAASU,MAAM,CAACN,SAAS;YACjD,GAAGG,eAAe;YAClBI,UAAUN;YACVO,SAAS;gBAACX;aAA0B;QACtC;IACF,EAAE,OAAOY,OAAgB;QACvB,IAAI,CAACX,mBAAmBY,IAAI,CAAC,AAACD,MAAgBE,OAAO,GAAG;YACtD,MAAMF;QACR;IACF;IAEA,OAAOP;AACT"}
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import { Template } from '@jakubmazanec/template';
|
|
2
|
-
import { readFile } from '@jakubmazanec/zod-utils';
|
|
3
|
-
import glob from 'fast-glob';
|
|
4
|
-
import fs from 'fs-extra';
|
|
5
|
-
import path from 'node:path';
|
|
6
|
-
import { parseCarsonTemplateId } from './parseCarsonTemplateId.js';
|
|
7
|
-
import { resolveModule } from './resolveModule.js';
|
|
8
|
-
import { TEMPLATES_PATH, TEMPLATE_CONFIG_FILENAME } from '../../constants.js';
|
|
9
|
-
import { carsonTemplateConfigSchema } from '../CarsonTemplateConfig.js';
|
|
10
|
-
import { CarsonTemplateError } from '../CarsonTemplateError.js';
|
|
11
|
-
import { templateAttributesSchema } from '../TemplateAttributes.js';
|
|
12
|
-
export async function readCarsonTemplate(templateId) {
|
|
13
|
-
let [moduleId, templateName] = parseCarsonTemplateId(templateId);
|
|
14
|
-
let modulePath = await resolveModule(moduleId);
|
|
15
|
-
let carsonTemplatePath = path.join(modulePath, TEMPLATES_PATH, templateName);
|
|
16
|
-
if (await fs.pathExists(carsonTemplatePath)) {
|
|
17
|
-
let templateConfigPath = path.join(carsonTemplatePath, TEMPLATE_CONFIG_FILENAME);
|
|
18
|
-
let templateConfig = await readFile(templateConfigPath, carsonTemplateConfigSchema, {
|
|
19
|
-
throwOnZodError: true
|
|
20
|
-
});
|
|
21
|
-
let templateFilePaths = await glob('**/*.ejs', {
|
|
22
|
-
cwd: carsonTemplatePath,
|
|
23
|
-
dot: true
|
|
24
|
-
});
|
|
25
|
-
let carsonTemplate = {
|
|
26
|
-
name: templateName,
|
|
27
|
-
config: templateConfig,
|
|
28
|
-
files: []
|
|
29
|
-
};
|
|
30
|
-
for (let templateFilePath of templateFilePaths){
|
|
31
|
-
carsonTemplate.files.push(await Template.read(path.join(carsonTemplatePath, templateFilePath), {
|
|
32
|
-
attributesSchema: templateAttributesSchema
|
|
33
|
-
}));
|
|
34
|
-
}
|
|
35
|
-
return carsonTemplate;
|
|
36
|
-
}
|
|
37
|
-
throw new CarsonTemplateError('CARSON_TEMPLATE_NOT_FOUND', {
|
|
38
|
-
messageParameters: [
|
|
39
|
-
templateId,
|
|
40
|
-
moduleId
|
|
41
|
-
]
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
//# sourceMappingURL=readCarsonTemplate.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/template/internals/readCarsonTemplate.ts"],"sourcesContent":["import {Template} from '@jakubmazanec/template';\nimport {readFile} from '@jakubmazanec/zod-utils';\nimport glob from 'fast-glob';\nimport fs from 'fs-extra';\nimport path from 'node:path';\n\nimport {parseCarsonTemplateId} from './parseCarsonTemplateId.js';\nimport {resolveModule} from './resolveModule.js';\nimport {TEMPLATES_PATH, TEMPLATE_CONFIG_FILENAME} from '../../constants.js';\nimport {type CarsonTemplate} from '../CarsonTemplate.js';\nimport {carsonTemplateConfigSchema} from '../CarsonTemplateConfig.js';\nimport {CarsonTemplateError} from '../CarsonTemplateError.js';\nimport {templateAttributesSchema} from '../TemplateAttributes.js';\n\nexport async function readCarsonTemplate(templateId: string): Promise<CarsonTemplate> {\n let [moduleId, templateName] = parseCarsonTemplateId(templateId);\n let modulePath = await resolveModule(moduleId);\n let carsonTemplatePath = path.join(modulePath, TEMPLATES_PATH, templateName);\n\n if (await fs.pathExists(carsonTemplatePath)) {\n let templateConfigPath = path.join(carsonTemplatePath, TEMPLATE_CONFIG_FILENAME);\n let templateConfig = await readFile(templateConfigPath, carsonTemplateConfigSchema, {\n throwOnZodError: true,\n });\n let templateFilePaths = await glob('**/*.ejs', {\n cwd: carsonTemplatePath,\n dot: true,\n });\n let carsonTemplate: CarsonTemplate = {\n name: templateName,\n config: templateConfig,\n files: [],\n };\n\n for (let templateFilePath of templateFilePaths) {\n carsonTemplate.files.push(\n await Template.read(path.join(carsonTemplatePath, templateFilePath), {\n attributesSchema: templateAttributesSchema,\n }),\n );\n }\n\n return carsonTemplate;\n }\n\n throw new CarsonTemplateError('CARSON_TEMPLATE_NOT_FOUND', {\n messageParameters: [templateId, moduleId],\n });\n}\n"],"names":["Template","readFile","glob","fs","path","parseCarsonTemplateId","resolveModule","TEMPLATES_PATH","TEMPLATE_CONFIG_FILENAME","carsonTemplateConfigSchema","CarsonTemplateError","templateAttributesSchema","readCarsonTemplate","templateId","moduleId","templateName","modulePath","carsonTemplatePath","join","pathExists","templateConfigPath","templateConfig","throwOnZodError","templateFilePaths","cwd","dot","carsonTemplate","name","config","files","templateFilePath","push","read","attributesSchema","messageParameters"],"mappings":"AAAA,SAAQA,QAAQ,QAAO,yBAAyB;AAChD,SAAQC,QAAQ,QAAO,0BAA0B;AACjD,OAAOC,UAAU,YAAY;AAC7B,OAAOC,QAAQ,WAAW;AAC1B,OAAOC,UAAU,YAAY;AAE7B,SAAQC,qBAAqB,QAAO,6BAA6B;AACjE,SAAQC,aAAa,QAAO,qBAAqB;AACjD,SAAQC,cAAc,EAAEC,wBAAwB,QAAO,qBAAqB;AAE5E,SAAQC,0BAA0B,QAAO,6BAA6B;AACtE,SAAQC,mBAAmB,QAAO,4BAA4B;AAC9D,SAAQC,wBAAwB,QAAO,2BAA2B;AAElE,OAAO,eAAeC,mBAAmBC,UAAkB;IACzD,IAAI,CAACC,UAAUC,aAAa,GAAGV,sBAAsBQ;IACrD,IAAIG,aAAa,MAAMV,cAAcQ;IACrC,IAAIG,qBAAqBb,KAAKc,IAAI,CAACF,YAAYT,gBAAgBQ;IAE/D,IAAI,MAAMZ,GAAGgB,UAAU,CAACF,qBAAqB;QAC3C,IAAIG,qBAAqBhB,KAAKc,IAAI,CAACD,oBAAoBT;QACvD,IAAIa,iBAAiB,MAAMpB,SAASmB,oBAAoBX,4BAA4B;YAClFa,iBAAiB;QACnB;QACA,IAAIC,oBAAoB,MAAMrB,KAAK,YAAY;YAC7CsB,KAAKP;YACLQ,KAAK;QACP;QACA,IAAIC,iBAAiC;YACnCC,MAAMZ;YACNa,QAAQP;YACRQ,OAAO,EAAE;QACX;QAEA,KAAK,IAAIC,oBAAoBP,kBAAmB;YAC9CG,eAAeG,KAAK,CAACE,IAAI,CACvB,MAAM/B,SAASgC,IAAI,CAAC5B,KAAKc,IAAI,CAACD,oBAAoBa,mBAAmB;gBACnEG,kBAAkBtB;YACpB;QAEJ;QAEA,OAAOe;IACT;IAEA,MAAM,IAAIhB,oBAAoB,6BAA6B;QACzDwB,mBAAmB;YAACrB;YAAYC;SAAS;IAC3C;AACF"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { createRequire } from 'node:module';
|
|
2
|
-
import path from 'node:path';
|
|
3
|
-
export async function resolveModule(moduleId) {
|
|
4
|
-
let require = createRequire(import.meta.url);
|
|
5
|
-
let modulePath = path.dirname(require.resolve(`${moduleId}/package.json`));
|
|
6
|
-
return modulePath;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
//# sourceMappingURL=resolveModule.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/template/internals/resolveModule.ts"],"sourcesContent":["import {createRequire} from 'node:module';\nimport path from 'node:path';\n\nexport async function resolveModule(moduleId: string) {\n let require = createRequire(import.meta.url);\n let modulePath = path.dirname(require.resolve(`${moduleId}/package.json`));\n\n return modulePath;\n}\n"],"names":["createRequire","path","resolveModule","moduleId","require","url","modulePath","dirname","resolve"],"mappings":"AAAA,SAAQA,aAAa,QAAO,cAAc;AAC1C,OAAOC,UAAU,YAAY;AAE7B,OAAO,eAAeC,cAAcC,QAAgB;IAClD,IAAIC,UAAUJ,cAAc,YAAYK,GAAG;IAC3C,IAAIC,aAAaL,KAAKM,OAAO,CAACH,QAAQI,OAAO,CAAC,CAAC,EAAEL,SAAS,aAAa,CAAC;IAExE,OAAOG;AACT"}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { deflateSync, strToU8 } from 'fflate';
|
|
2
|
-
import fs from 'fs-extra';
|
|
3
|
-
export async function saveTemplateRenderSnapshots(templateRenders, templateRenderSnapshotsPath) {
|
|
4
|
-
let templateRendersSnapshots = [];
|
|
5
|
-
for (let templateRender of templateRenders){
|
|
6
|
-
if (templateRender.attributes.strategy === 'ensure' || templateRender.attributes.strategy === 'overwrite' || templateRender.attributes.strategy === 'merge' || templateRender.attributes.strategy[0] === 'insert') {
|
|
7
|
-
templateRendersSnapshots.push({
|
|
8
|
-
attributes: {
|
|
9
|
-
to: templateRender.attributes.to,
|
|
10
|
-
strategy: templateRender.attributes.strategy
|
|
11
|
-
},
|
|
12
|
-
content: templateRender.content,
|
|
13
|
-
template: templateRender.template
|
|
14
|
-
});
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
await fs.writeFile(templateRenderSnapshotsPath, deflateSync(strToU8(JSON.stringify(templateRendersSnapshots)), {
|
|
18
|
-
level: 1,
|
|
19
|
-
mem: 0
|
|
20
|
-
}));
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
//# sourceMappingURL=saveTemplateRenderSnapshots.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/template/internals/saveTemplateRenderSnapshots.ts"],"sourcesContent":["import {deflateSync, strToU8} from 'fflate';\nimport fs from 'fs-extra';\n\nimport {type TemplateRenderSnapshots} from './TemplateRenderSnapshots.js';\nimport {type TemplateRenders} from '../TemplateRenders.js';\n\nexport async function saveTemplateRenderSnapshots(\n templateRenders: TemplateRenders,\n templateRenderSnapshotsPath: string,\n) {\n let templateRendersSnapshots: TemplateRenderSnapshots = [];\n\n for (let templateRender of templateRenders) {\n if (\n templateRender.attributes.strategy === 'ensure' ||\n templateRender.attributes.strategy === 'overwrite' ||\n templateRender.attributes.strategy === 'merge' ||\n templateRender.attributes.strategy[0] === 'insert'\n ) {\n templateRendersSnapshots.push({\n attributes: {\n to: templateRender.attributes.to,\n strategy: templateRender.attributes.strategy,\n },\n content: templateRender.content,\n template: templateRender.template,\n });\n }\n }\n\n await fs.writeFile(\n templateRenderSnapshotsPath,\n deflateSync(strToU8(JSON.stringify(templateRendersSnapshots)), {level: 1, mem: 0}),\n );\n}\n"],"names":["deflateSync","strToU8","fs","saveTemplateRenderSnapshots","templateRenders","templateRenderSnapshotsPath","templateRendersSnapshots","templateRender","attributes","strategy","push","to","content","template","writeFile","JSON","stringify","level","mem"],"mappings":"AAAA,SAAQA,WAAW,EAAEC,OAAO,QAAO,SAAS;AAC5C,OAAOC,QAAQ,WAAW;AAK1B,OAAO,eAAeC,4BACpBC,eAAgC,EAChCC,2BAAmC;IAEnC,IAAIC,2BAAoD,EAAE;IAE1D,KAAK,IAAIC,kBAAkBH,gBAAiB;QAC1C,IACEG,eAAeC,UAAU,CAACC,QAAQ,KAAK,YACvCF,eAAeC,UAAU,CAACC,QAAQ,KAAK,eACvCF,eAAeC,UAAU,CAACC,QAAQ,KAAK,WACvCF,eAAeC,UAAU,CAACC,QAAQ,CAAC,EAAE,KAAK,UAC1C;YACAH,yBAAyBI,IAAI,CAAC;gBAC5BF,YAAY;oBACVG,IAAIJ,eAAeC,UAAU,CAACG,EAAE;oBAChCF,UAAUF,eAAeC,UAAU,CAACC,QAAQ;gBAC9C;gBACAG,SAASL,eAAeK,OAAO;gBAC/BC,UAAUN,eAAeM,QAAQ;YACnC;QACF;IACF;IAEA,MAAMX,GAAGY,SAAS,CAChBT,6BACAL,YAAYC,QAAQc,KAAKC,SAAS,CAACV,4BAA4B;QAACW,OAAO;QAAGC,KAAK;IAAC;AAEpF"}
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import fs from 'fs-extra';
|
|
2
|
-
import _ from 'lodash';
|
|
3
|
-
import path from 'node:path';
|
|
4
|
-
import { prettify } from './prettify.js';
|
|
5
|
-
import { CarsonTemplateError } from '../CarsonTemplateError.js';
|
|
6
|
-
export async function uninsertUsingTemplateRender(templateRender, basePath) {
|
|
7
|
-
let to = path.join(basePath, templateRender.attributes.to);
|
|
8
|
-
let extension = path.extname(to);
|
|
9
|
-
switch(extension){
|
|
10
|
-
case '.md':
|
|
11
|
-
{
|
|
12
|
-
if (await fs.pathExists(to)) {
|
|
13
|
-
let targetFile = await fs.readFile(to, {
|
|
14
|
-
encoding: 'utf8'
|
|
15
|
-
});
|
|
16
|
-
let newContent = `<!-- ${templateRender.attributes.strategy[1]} --><!-- ${templateRender.attributes.strategy[1]} -->`;
|
|
17
|
-
let oldContentRegexp = new RegExp(`<!--\\s*${_.escapeRegExp(templateRender.attributes.strategy[1])}\\s-->[\\s\\S]*<!--\\s*${_.escapeRegExp(templateRender.attributes.strategy[1])}\\s-->`, 'u');
|
|
18
|
-
let newFile = targetFile.replace(oldContentRegexp, newContent);
|
|
19
|
-
await fs.writeFile(to, await prettify(newFile, to), {
|
|
20
|
-
encoding: 'utf8'
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
break;
|
|
24
|
-
}
|
|
25
|
-
default:
|
|
26
|
-
{
|
|
27
|
-
throw new CarsonTemplateError('STRATEGY_UNSUPPORTED_EXTENSION', {
|
|
28
|
-
messageParameters: [
|
|
29
|
-
templateRender.attributes.strategy,
|
|
30
|
-
templateRender.template.path,
|
|
31
|
-
extension
|
|
32
|
-
],
|
|
33
|
-
data: {
|
|
34
|
-
path: templateRender.template.path
|
|
35
|
-
}
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
//# sourceMappingURL=uninsertUsingTemplateRender.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/template/internals/uninsertUsingTemplateRender.ts"],"sourcesContent":["import fs from 'fs-extra';\nimport _ from 'lodash';\nimport path from 'node:path';\n\nimport {prettify} from './prettify.js';\nimport {type TemplateRenderSnapshot} from './TemplateRenderSnapshot.js';\nimport {CarsonTemplateError} from '../CarsonTemplateError.js';\nimport {type TemplateRender} from '../TemplateRender.js';\n\nexport async function uninsertUsingTemplateRender(\n templateRender: TemplateRender | TemplateRenderSnapshot,\n basePath: string,\n) {\n let to = path.join(basePath, templateRender.attributes.to);\n let extension = path.extname(to);\n\n switch (extension) {\n case '.md': {\n if (await fs.pathExists(to)) {\n let targetFile = await fs.readFile(to, {encoding: 'utf8'});\n let newContent = `<!-- ${templateRender.attributes.strategy[1]} --><!-- ${templateRender.attributes.strategy[1]} -->`;\n let oldContentRegexp = new RegExp(\n `<!--\\\\s*${_.escapeRegExp(\n templateRender.attributes.strategy[1],\n )}\\\\s-->[\\\\s\\\\S]*<!--\\\\s*${_.escapeRegExp(templateRender.attributes.strategy[1])}\\\\s-->`,\n 'u',\n );\n let newFile = targetFile.replace(oldContentRegexp, newContent);\n\n await fs.writeFile(to, await prettify(newFile, to), {encoding: 'utf8'});\n }\n\n break;\n }\n\n default: {\n throw new CarsonTemplateError('STRATEGY_UNSUPPORTED_EXTENSION', {\n messageParameters: [\n templateRender.attributes.strategy,\n templateRender.template.path,\n extension,\n ],\n data: {\n path: templateRender.template.path,\n },\n });\n }\n }\n}\n"],"names":["fs","_","path","prettify","CarsonTemplateError","uninsertUsingTemplateRender","templateRender","basePath","to","join","attributes","extension","extname","pathExists","targetFile","readFile","encoding","newContent","strategy","oldContentRegexp","RegExp","escapeRegExp","newFile","replace","writeFile","messageParameters","template","data"],"mappings":"AAAA,OAAOA,QAAQ,WAAW;AAC1B,OAAOC,OAAO,SAAS;AACvB,OAAOC,UAAU,YAAY;AAE7B,SAAQC,QAAQ,QAAO,gBAAgB;AAEvC,SAAQC,mBAAmB,QAAO,4BAA4B;AAG9D,OAAO,eAAeC,4BACpBC,cAAuD,EACvDC,QAAgB;IAEhB,IAAIC,KAAKN,KAAKO,IAAI,CAACF,UAAUD,eAAeI,UAAU,CAACF,EAAE;IACzD,IAAIG,YAAYT,KAAKU,OAAO,CAACJ;IAE7B,OAAQG;QACN,KAAK;YAAO;gBACV,IAAI,MAAMX,GAAGa,UAAU,CAACL,KAAK;oBAC3B,IAAIM,aAAa,MAAMd,GAAGe,QAAQ,CAACP,IAAI;wBAACQ,UAAU;oBAAM;oBACxD,IAAIC,aAAa,CAAC,KAAK,EAAEX,eAAeI,UAAU,CAACQ,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAEZ,eAAeI,UAAU,CAACQ,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC;oBACrH,IAAIC,mBAAmB,IAAIC,OACzB,CAAC,QAAQ,EAAEnB,EAAEoB,YAAY,CACvBf,eAAeI,UAAU,CAACQ,QAAQ,CAAC,EAAE,EACrC,uBAAuB,EAAEjB,EAAEoB,YAAY,CAACf,eAAeI,UAAU,CAACQ,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC,EACxF;oBAEF,IAAII,UAAUR,WAAWS,OAAO,CAACJ,kBAAkBF;oBAEnD,MAAMjB,GAAGwB,SAAS,CAAChB,IAAI,MAAML,SAASmB,SAASd,KAAK;wBAACQ,UAAU;oBAAM;gBACvE;gBAEA;YACF;QAEA;YAAS;gBACP,MAAM,IAAIZ,oBAAoB,kCAAkC;oBAC9DqB,mBAAmB;wBACjBnB,eAAeI,UAAU,CAACQ,QAAQ;wBAClCZ,eAAeoB,QAAQ,CAACxB,IAAI;wBAC5BS;qBACD;oBACDgB,MAAM;wBACJzB,MAAMI,eAAeoB,QAAQ,CAACxB,IAAI;oBACpC;gBACF;YACF;IACF;AACF"}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Reverts {@link merge}.
|
|
3
|
-
*/ export function unmerge(a, b) {
|
|
4
|
-
if (b === undefined || b == null) {
|
|
5
|
-
return a;
|
|
6
|
-
}
|
|
7
|
-
if (typeof b !== 'object' || Array.isArray(b)) {
|
|
8
|
-
return a;
|
|
9
|
-
}
|
|
10
|
-
if (a === undefined || a == null) {
|
|
11
|
-
return a;
|
|
12
|
-
}
|
|
13
|
-
if (typeof a !== 'object' || Array.isArray(a)) {
|
|
14
|
-
return a;
|
|
15
|
-
}
|
|
16
|
-
const newA = {};
|
|
17
|
-
for (let [key] of Object.entries(a)){
|
|
18
|
-
if (!Object.hasOwn(b, key)) {
|
|
19
|
-
newA[key] = a[key];
|
|
20
|
-
continue;
|
|
21
|
-
} else if (a[key] && typeof a[key] === 'object' && !Array.isArray(a[key]) && b[key] && typeof b[key] === 'object' && !Array.isArray(b[key])) {
|
|
22
|
-
const result = unmerge(a[key], b[key]);
|
|
23
|
-
if (Object.keys(result).length > 0) {
|
|
24
|
-
newA[key] = result;
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
return newA;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
//# sourceMappingURL=unmerge.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/template/internals/unmerge.ts"],"sourcesContent":["/**\n * Reverts {@link merge}.\n */\nexport function unmerge(a: unknown, b: unknown) {\n if (b === undefined || b == null) {\n return a;\n }\n\n if (typeof b !== 'object' || Array.isArray(b)) {\n return a;\n }\n\n if (a === undefined || a == null) {\n return a;\n }\n\n if (typeof a !== 'object' || Array.isArray(a)) {\n return a;\n }\n\n const newA: Record<string, unknown> = {};\n\n for (let [key] of Object.entries(a)) {\n if (!Object.hasOwn(b, key)) {\n newA[key] = (a as Record<string, unknown>)[key];\n\n continue;\n } else if (\n (a as Record<string, unknown>)[key] &&\n typeof (a as Record<string, unknown>)[key] === 'object' &&\n !Array.isArray((a as Record<string, unknown>)[key]) &&\n (b as Record<string, unknown>)[key] &&\n typeof (b as Record<string, unknown>)[key] === 'object' &&\n !Array.isArray((b as Record<string, unknown>)[key])\n ) {\n const result = unmerge(\n (a as Record<string, unknown>)[key],\n (b as Record<string, unknown>)[key],\n );\n\n if (Object.keys(result as Record<string, unknown>).length > 0) {\n newA[key] = result;\n }\n }\n }\n\n return newA;\n}\n"],"names":["unmerge","a","b","undefined","Array","isArray","newA","key","Object","entries","hasOwn","result","keys","length"],"mappings":"AAAA;;CAEC,GACD,OAAO,SAASA,QAAQC,CAAU,EAAEC,CAAU;IAC5C,IAAIA,MAAMC,aAAaD,KAAK,MAAM;QAChC,OAAOD;IACT;IAEA,IAAI,OAAOC,MAAM,YAAYE,MAAMC,OAAO,CAACH,IAAI;QAC7C,OAAOD;IACT;IAEA,IAAIA,MAAME,aAAaF,KAAK,MAAM;QAChC,OAAOA;IACT;IAEA,IAAI,OAAOA,MAAM,YAAYG,MAAMC,OAAO,CAACJ,IAAI;QAC7C,OAAOA;IACT;IAEA,MAAMK,OAAgC,CAAC;IAEvC,KAAK,IAAI,CAACC,IAAI,IAAIC,OAAOC,OAAO,CAACR,GAAI;QACnC,IAAI,CAACO,OAAOE,MAAM,CAACR,GAAGK,MAAM;YAC1BD,IAAI,CAACC,IAAI,GAAG,AAACN,CAA6B,CAACM,IAAI;YAE/C;QACF,OAAO,IACL,AAACN,CAA6B,CAACM,IAAI,IACnC,OAAO,AAACN,CAA6B,CAACM,IAAI,KAAK,YAC/C,CAACH,MAAMC,OAAO,CAAC,AAACJ,CAA6B,CAACM,IAAI,KAClD,AAACL,CAA6B,CAACK,IAAI,IACnC,OAAO,AAACL,CAA6B,CAACK,IAAI,KAAK,YAC/C,CAACH,MAAMC,OAAO,CAAC,AAACH,CAA6B,CAACK,IAAI,GAClD;YACA,MAAMI,SAASX,QACb,AAACC,CAA6B,CAACM,IAAI,EACnC,AAACL,CAA6B,CAACK,IAAI;YAGrC,IAAIC,OAAOI,IAAI,CAACD,QAAmCE,MAAM,GAAG,GAAG;gBAC7DP,IAAI,CAACC,IAAI,GAAGI;YACd;QACF;IACF;IAEA,OAAOL;AACT"}
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import fs from 'fs-extra';
|
|
2
|
-
import json from 'json5';
|
|
3
|
-
import path from 'node:path';
|
|
4
|
-
import yaml from 'yaml';
|
|
5
|
-
import { prettify } from './prettify.js';
|
|
6
|
-
import { unmerge } from './unmerge.js';
|
|
7
|
-
import { CarsonTemplateError } from '../CarsonTemplateError.js';
|
|
8
|
-
export async function unmergeUsingTemplateRender(templateRender, outputPath) {
|
|
9
|
-
let to = path.join(outputPath, templateRender.attributes.to);
|
|
10
|
-
let extension = path.extname(to);
|
|
11
|
-
switch(extension){
|
|
12
|
-
case '.json':
|
|
13
|
-
{
|
|
14
|
-
let targetFile = await fs.readJson(to);
|
|
15
|
-
let fileToMerge = json.parse(templateRender.content);
|
|
16
|
-
let newFile = JSON.stringify(unmerge(targetFile, fileToMerge));
|
|
17
|
-
await fs.writeFile(to, await prettify(newFile, to), {
|
|
18
|
-
encoding: 'utf8'
|
|
19
|
-
});
|
|
20
|
-
break;
|
|
21
|
-
}
|
|
22
|
-
case '.yaml':
|
|
23
|
-
{
|
|
24
|
-
let targetFile = yaml.parse(await fs.readFile(to, {
|
|
25
|
-
encoding: 'utf8'
|
|
26
|
-
}));
|
|
27
|
-
let fileToMerge = yaml.parse(templateRender.content);
|
|
28
|
-
let newFile = yaml.stringify(unmerge(targetFile, fileToMerge));
|
|
29
|
-
await fs.writeFile(to, await prettify(newFile, to), {
|
|
30
|
-
encoding: 'utf8'
|
|
31
|
-
});
|
|
32
|
-
break;
|
|
33
|
-
}
|
|
34
|
-
default:
|
|
35
|
-
{
|
|
36
|
-
throw new CarsonTemplateError('STRATEGY_UNSUPPORTED_EXTENSION', {
|
|
37
|
-
messageParameters: [
|
|
38
|
-
templateRender.attributes.strategy,
|
|
39
|
-
templateRender.template.path,
|
|
40
|
-
extension
|
|
41
|
-
],
|
|
42
|
-
data: {
|
|
43
|
-
path: templateRender.template.path
|
|
44
|
-
}
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
//# sourceMappingURL=unmergeUsingTemplateRender.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/template/internals/unmergeUsingTemplateRender.ts"],"sourcesContent":["import {type Json} from '@jakubmazanec/zod-utils';\nimport fs from 'fs-extra';\nimport json from 'json5';\nimport path from 'node:path';\nimport yaml from 'yaml';\n\nimport {prettify} from './prettify.js';\nimport {type TemplateRenderSnapshot} from './TemplateRenderSnapshot.js';\nimport {unmerge} from './unmerge.js';\nimport {CarsonTemplateError} from '../CarsonTemplateError.js';\nimport {type TemplateRender} from '../TemplateRender.js';\n\nexport async function unmergeUsingTemplateRender(\n templateRender: TemplateRender | TemplateRenderSnapshot,\n outputPath: string,\n) {\n let to = path.join(outputPath, templateRender.attributes.to);\n let extension = path.extname(to);\n\n switch (extension) {\n case '.json': {\n let targetFile = (await fs.readJson(to)) as Json;\n let fileToMerge = json.parse<Json>(templateRender.content);\n let newFile = JSON.stringify(unmerge(targetFile, fileToMerge));\n\n await fs.writeFile(to, await prettify(newFile, to), {encoding: 'utf8'});\n\n break;\n }\n\n case '.yaml': {\n let targetFile = yaml.parse(await fs.readFile(to, {encoding: 'utf8'})) as unknown;\n let fileToMerge = yaml.parse(templateRender.content) as unknown;\n let newFile = yaml.stringify(unmerge(targetFile, fileToMerge));\n\n await fs.writeFile(to, await prettify(newFile, to), {encoding: 'utf8'});\n\n break;\n }\n\n default: {\n throw new CarsonTemplateError('STRATEGY_UNSUPPORTED_EXTENSION', {\n messageParameters: [\n templateRender.attributes.strategy,\n templateRender.template.path,\n extension,\n ],\n data: {\n path: templateRender.template.path,\n },\n });\n }\n }\n}\n"],"names":["fs","json","path","yaml","prettify","unmerge","CarsonTemplateError","unmergeUsingTemplateRender","templateRender","outputPath","to","join","attributes","extension","extname","targetFile","readJson","fileToMerge","parse","content","newFile","JSON","stringify","writeFile","encoding","readFile","messageParameters","strategy","template","data"],"mappings":"AACA,OAAOA,QAAQ,WAAW;AAC1B,OAAOC,UAAU,QAAQ;AACzB,OAAOC,UAAU,YAAY;AAC7B,OAAOC,UAAU,OAAO;AAExB,SAAQC,QAAQ,QAAO,gBAAgB;AAEvC,SAAQC,OAAO,QAAO,eAAe;AACrC,SAAQC,mBAAmB,QAAO,4BAA4B;AAG9D,OAAO,eAAeC,2BACpBC,cAAuD,EACvDC,UAAkB;IAElB,IAAIC,KAAKR,KAAKS,IAAI,CAACF,YAAYD,eAAeI,UAAU,CAACF,EAAE;IAC3D,IAAIG,YAAYX,KAAKY,OAAO,CAACJ;IAE7B,OAAQG;QACN,KAAK;YAAS;gBACZ,IAAIE,aAAc,MAAMf,GAAGgB,QAAQ,CAACN;gBACpC,IAAIO,cAAchB,KAAKiB,KAAK,CAAOV,eAAeW,OAAO;gBACzD,IAAIC,UAAUC,KAAKC,SAAS,CAACjB,QAAQU,YAAYE;gBAEjD,MAAMjB,GAAGuB,SAAS,CAACb,IAAI,MAAMN,SAASgB,SAASV,KAAK;oBAACc,UAAU;gBAAM;gBAErE;YACF;QAEA,KAAK;YAAS;gBACZ,IAAIT,aAAaZ,KAAKe,KAAK,CAAC,MAAMlB,GAAGyB,QAAQ,CAACf,IAAI;oBAACc,UAAU;gBAAM;gBACnE,IAAIP,cAAcd,KAAKe,KAAK,CAACV,eAAeW,OAAO;gBACnD,IAAIC,UAAUjB,KAAKmB,SAAS,CAACjB,QAAQU,YAAYE;gBAEjD,MAAMjB,GAAGuB,SAAS,CAACb,IAAI,MAAMN,SAASgB,SAASV,KAAK;oBAACc,UAAU;gBAAM;gBAErE;YACF;QAEA;YAAS;gBACP,MAAM,IAAIlB,oBAAoB,kCAAkC;oBAC9DoB,mBAAmB;wBACjBlB,eAAeI,UAAU,CAACe,QAAQ;wBAClCnB,eAAeoB,QAAQ,CAAC1B,IAAI;wBAC5BW;qBACD;oBACDgB,MAAM;wBACJ3B,MAAMM,eAAeoB,QAAQ,CAAC1B,IAAI;oBACpC;gBACF;YACF;IACF;AACF"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
export * from './internals/importCarsonTemplate.js';
|
|
2
|
-
export * from './internals/overwriteUsingTemplateRender.js';
|
|
3
|
-
export * from './internals/mergeUsingTemplateRender.js';
|
|
4
|
-
export * from './internals/insertUsingTemplateRender.js';
|
|
5
|
-
export * from './internals/createUsingTemplateRender.js';
|
|
6
|
-
export * from './internals/resolveModule.js';
|
|
7
|
-
export * from './internals/parseCarsonTemplateId.js';
|
|
8
|
-
export * from './internals/deleteUsingTemplateRender.js';
|
|
9
|
-
export * from './internals/unmergeUsingTemplateRender.js';
|
|
10
|
-
export * from './internals/saveTemplateRenderSnapshots.js';
|
|
11
|
-
export * from './internals/uninsertUsingTemplateRender.js';
|
|
12
|
-
export * from './internals/readCarsonTemplate.js';
|
|
13
|
-
export * from './internals/loadTemplateRenderSnapshots.js';
|
|
14
|
-
export * from './internals/unmerge.js';
|
|
15
|
-
export * from './internals/merge.js';
|
|
16
|
-
export * from './internals/prettify.js';
|
|
17
|
-
export * from './internals/TemplateRenderSnapshots.js';
|
|
18
|
-
export * from './internals/TemplateRenderSnapshot.js';
|
|
19
|
-
|
|
20
|
-
//# sourceMappingURL=internals.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/template/internals.ts"],"sourcesContent":["export * from './internals/importCarsonTemplate.js';\nexport * from './internals/overwriteUsingTemplateRender.js';\nexport * from './internals/mergeUsingTemplateRender.js';\nexport * from './internals/insertUsingTemplateRender.js';\nexport * from './internals/createUsingTemplateRender.js';\nexport * from './internals/resolveModule.js';\nexport * from './internals/parseCarsonTemplateId.js';\nexport * from './internals/deleteUsingTemplateRender.js';\nexport * from './internals/unmergeUsingTemplateRender.js';\nexport * from './internals/saveTemplateRenderSnapshots.js';\nexport * from './internals/uninsertUsingTemplateRender.js';\nexport * from './internals/readCarsonTemplate.js';\nexport * from './internals/loadTemplateRenderSnapshots.js';\nexport * from './internals/unmerge.js';\nexport * from './internals/merge.js';\nexport * from './internals/prettify.js';\nexport * from './internals/TemplateRenderSnapshots.js';\nexport * from './internals/TemplateRenderSnapshot.js';\n"],"names":[],"mappings":"AAAA,cAAc,sCAAsC;AACpD,cAAc,8CAA8C;AAC5D,cAAc,0CAA0C;AACxD,cAAc,2CAA2C;AACzD,cAAc,2CAA2C;AACzD,cAAc,+BAA+B;AAC7C,cAAc,uCAAuC;AACrD,cAAc,2CAA2C;AACzD,cAAc,4CAA4C;AAC1D,cAAc,6CAA6C;AAC3D,cAAc,6CAA6C;AAC3D,cAAc,oCAAoC;AAClD,cAAc,6CAA6C;AAC3D,cAAc,yBAAyB;AACvC,cAAc,uBAAuB;AACrC,cAAc,0BAA0B;AACxC,cAAc,yCAAyC;AACvD,cAAc,wCAAwC"}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { pathToPosixPath } from '@jakubmazanec/fs-utils';
|
|
2
|
-
import _ from 'lodash';
|
|
3
|
-
import path from 'node:path';
|
|
4
|
-
import { importCarsonTemplate, parseCarsonTemplateId, readCarsonTemplate, resolveModule } from './internals.js';
|
|
5
|
-
/**
|
|
6
|
-
* Renders a Carson template with provided template data.
|
|
7
|
-
*/ export async function renderCarsonTemplate(options) {
|
|
8
|
-
let [moduleId] = parseCarsonTemplateId(options.templateId);
|
|
9
|
-
let modulePath = await resolveModule(moduleId);
|
|
10
|
-
let template = await readCarsonTemplate(options.templateId);
|
|
11
|
-
let templateModule = await importCarsonTemplate(options.templateId);
|
|
12
|
-
let templateRenders = [];
|
|
13
|
-
for (let file of template.files){
|
|
14
|
-
templateRenders.push(...(await file.render({
|
|
15
|
-
...templateModule,
|
|
16
|
-
...options.templateData
|
|
17
|
-
}, {
|
|
18
|
-
disablePrettier: true
|
|
19
|
-
})).map((templateRender)=>({
|
|
20
|
-
...templateRender,
|
|
21
|
-
template: {
|
|
22
|
-
path: pathToPosixPath(`${moduleId}/${path.relative(modulePath, file.path ?? modulePath)}`)
|
|
23
|
-
}
|
|
24
|
-
})));
|
|
25
|
-
}
|
|
26
|
-
templateRenders = _.sortBy(templateRenders, [
|
|
27
|
-
(templateRender)=>templateRender.attributes.to,
|
|
28
|
-
(templateRender)=>templateRender.attributes.strategy,
|
|
29
|
-
(templateRender)=>templateRender.content
|
|
30
|
-
]);
|
|
31
|
-
return templateRenders;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
//# sourceMappingURL=renderCarsonTemplate.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/template/renderCarsonTemplate.ts"],"sourcesContent":["import {pathToPosixPath} from '@jakubmazanec/fs-utils';\nimport _ from 'lodash';\nimport path from 'node:path';\n\nimport {\n importCarsonTemplate,\n parseCarsonTemplateId,\n readCarsonTemplate,\n resolveModule,\n} from './internals.js';\nimport {type TemplateData} from './TemplateData.js';\nimport {type TemplateRenders} from './TemplateRenders.js';\n\nexport type RenderCarsonTemplateOptions = {\n templateId: string;\n templateData: TemplateData;\n};\n\n/**\n * Renders a Carson template with provided template data.\n */\nexport async function renderCarsonTemplate(\n options: RenderCarsonTemplateOptions,\n): Promise<TemplateRenders> {\n let [moduleId] = parseCarsonTemplateId(options.templateId);\n let modulePath = await resolveModule(moduleId);\n let template = await readCarsonTemplate(options.templateId);\n let templateModule = await importCarsonTemplate(options.templateId);\n let templateRenders: TemplateRenders = [];\n\n for (let file of template.files) {\n templateRenders.push(\n ...(\n await file.render(\n {\n ...templateModule,\n ...options.templateData,\n },\n {disablePrettier: true},\n )\n ).map((templateRender) => ({\n ...templateRender,\n template: {\n path: pathToPosixPath(\n `${moduleId}/${path.relative(modulePath, file.path ?? modulePath)}`,\n ),\n },\n })),\n );\n }\n\n templateRenders = _.sortBy(templateRenders, [\n (templateRender) => templateRender.attributes.to,\n (templateRender) => templateRender.attributes.strategy,\n (templateRender) => templateRender.content,\n ]);\n\n return templateRenders;\n}\n"],"names":["pathToPosixPath","_","path","importCarsonTemplate","parseCarsonTemplateId","readCarsonTemplate","resolveModule","renderCarsonTemplate","options","moduleId","templateId","modulePath","template","templateModule","templateRenders","file","files","push","render","templateData","disablePrettier","map","templateRender","relative","sortBy","attributes","to","strategy","content"],"mappings":"AAAA,SAAQA,eAAe,QAAO,yBAAyB;AACvD,OAAOC,OAAO,SAAS;AACvB,OAAOC,UAAU,YAAY;AAE7B,SACEC,oBAAoB,EACpBC,qBAAqB,EACrBC,kBAAkB,EAClBC,aAAa,QACR,iBAAiB;AASxB;;CAEC,GACD,OAAO,eAAeC,qBACpBC,OAAoC;IAEpC,IAAI,CAACC,SAAS,GAAGL,sBAAsBI,QAAQE,UAAU;IACzD,IAAIC,aAAa,MAAML,cAAcG;IACrC,IAAIG,WAAW,MAAMP,mBAAmBG,QAAQE,UAAU;IAC1D,IAAIG,iBAAiB,MAAMV,qBAAqBK,QAAQE,UAAU;IAClE,IAAII,kBAAmC,EAAE;IAEzC,KAAK,IAAIC,QAAQH,SAASI,KAAK,CAAE;QAC/BF,gBAAgBG,IAAI,IACf,AACD,CAAA,MAAMF,KAAKG,MAAM,CACf;YACE,GAAGL,cAAc;YACjB,GAAGL,QAAQW,YAAY;QACzB,GACA;YAACC,iBAAiB;QAAI,EACxB,EACAC,GAAG,CAAC,CAACC,iBAAoB,CAAA;gBACzB,GAAGA,cAAc;gBACjBV,UAAU;oBACRV,MAAMF,gBACJ,CAAC,EAAES,SAAS,CAAC,EAAEP,KAAKqB,QAAQ,CAACZ,YAAYI,KAAKb,IAAI,IAAIS,YAAY,CAAC;gBAEvE;YACF,CAAA;IAEJ;IAEAG,kBAAkBb,EAAEuB,MAAM,CAACV,iBAAiB;QAC1C,CAACQ,iBAAmBA,eAAeG,UAAU,CAACC,EAAE;QAChD,CAACJ,iBAAmBA,eAAeG,UAAU,CAACE,QAAQ;QACtD,CAACL,iBAAmBA,eAAeM,OAAO;KAC3C;IAED,OAAOd;AACT"}
|
package/dist/template.js
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
export * from './template/applyTemplateRenders.js';
|
|
2
|
-
export * from './template/CarsonTemplate.js';
|
|
3
|
-
export * from './template/CarsonTemplateConfig.js';
|
|
4
|
-
export * from './template/CarsonTemplateError.js';
|
|
5
|
-
export * from './template/renderCarsonTemplate.js';
|
|
6
|
-
export * from './template/TemplateAttributes.js';
|
|
7
|
-
export * from './template/TemplateData.js';
|
|
8
|
-
export * from './template/TemplateRender.js';
|
|
9
|
-
export * from './template/TemplateRenders.js';
|
|
10
|
-
|
|
11
|
-
//# sourceMappingURL=template.js.map
|
package/dist/template.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/template.ts"],"sourcesContent":["export * from './template/applyTemplateRenders.js';\nexport * from './template/CarsonTemplate.js';\nexport * from './template/CarsonTemplateConfig.js';\nexport * from './template/CarsonTemplateError.js';\nexport * from './template/renderCarsonTemplate.js';\nexport * from './template/TemplateAttributes.js';\nexport * from './template/TemplateData.js';\nexport * from './template/TemplateRender.js';\nexport * from './template/TemplateRenders.js';\n"],"names":[],"mappings":"AAAA,cAAc,qCAAqC;AACnD,cAAc,+BAA+B;AAC7C,cAAc,qCAAqC;AACnD,cAAc,oCAAoC;AAClD,cAAc,qCAAqC;AACnD,cAAc,mCAAmC;AACjD,cAAc,6BAA6B;AAC3C,cAAc,+BAA+B;AAC7C,cAAc,gCAAgC"}
|