New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@likec4/generators

Package Overview
Dependencies
Maintainers
1
Versions
93
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@likec4/generators - npm Package Compare versions

Comparing version 0.2.2 to 0.4.0

55

dist/react/generate-react.js

@@ -28,2 +28,3 @@ import JSON5 from 'json5';

import { EmbeddedDiagram } from '@likec4/diagrams'
import '@likec4/diagrams/dist/index.css'
`

@@ -36,28 +37,48 @@ .append(NL, NL);

out
.append('export const LikeC4ViewData = {', NL)
.indent(indent => {
indent.append(joinToNode(views, view => expandToNode `'${view.id}': (${JSON5.stringify(view)} as any) as DiagramView`, {
separator: ',',
appendNewLineIfNotEmpty: true
}));
.append('export const LikeC4ViewsData = {', NL)
.indent({
indentation: 2,
indentedChildren: indent => {
indent.append(joinToNode(views, view => expandToNode `'${view.id}': (${JSON5.stringify(view)} as any) as DiagramView`, {
separator: ',',
appendNewLineIfNotEmpty: true
}));
},
})
.append('} as const', NL, NL)
.appendTemplate `
export type ViewId = keyof typeof LikeC4ViewData
export type LikeC4ViewsData = typeof LikeC4ViewsData
export type ViewId = keyof LikeC4ViewsData
export function isViewId(value: unknown): value is ViewId {
return typeof value === 'string' && value in LikeC4ViewData
return typeof value === 'string' && value in LikeC4ViewsData
}
export type LikeC4ViewProps = Omit<EmbeddedDiagramProps, 'diagram'>;
export function LikeC4View({viewId, ...rest}: LikeC4ViewProps & { viewId: ViewId }) {
return <EmbeddedDiagram diagram={LikeC4ViewData[viewId]} {...rest}/>
export type LikeC4ViewProps = Omit<EmbeddedDiagramProps<LikeC4ViewsData, ViewId>, 'views'>;
export function LikeC4View(props: LikeC4ViewProps) {
return <EmbeddedDiagram views={LikeC4ViewsData} {...props}/>
}
type LikeC4ViewsProps = Omit<EmbeddedDiagramProps<LikeC4ViewsData, ViewId>, 'views' | 'viewId'>
export const LikeC4Views = {
`
.append(NL, NL, joinToNode(components, ({ id, name }) => expandToNode `
LikeC4View['${name}'] = (props: LikeC4ViewProps) => <EmbeddedDiagram diagram={LikeC4ViewData['${id}']} {...props}/>
`, {
separator: ',',
appendNewLineIfNotEmpty: true
}), NL);
.append(NL)
.indent({
indentation: 2,
indentedChildren: components.map(({ id, name }) => expandToNode `
['${name}']: (props: LikeC4ViewsProps) => <LikeC4View viewId={'${id}'} {...props}/>,
`.append(NL))
// indentedChildren: [joinToNode(
// components,
// ({ id, name }) =>
// expandToNode`
// ['${name}']: (props: NamedViewProps) => <EmbeddedDiagram views={LikeC4ViewsData} viewId={'${id}'} {...props}/>
// `,
// {
// separator: ',',
// appendNewLineIfNotEmpty: true
// }
// )],
})
.append('} as const', NL, NL);
return toString(out);
}
{
"name": "@likec4/generators",
"version": "0.2.2",
"version": "0.4.0",
"bugs": "https://github.com/likec4/likec4/issues",

@@ -69,3 +69,3 @@ "homepage": "https://like-c4.dev",

"dependencies": {
"@likec4/core": "0.2.2",
"@likec4/core": "0.4.0",
"json5": "^2.2.3",

@@ -76,7 +76,7 @@ "langium": "^1.1.0",

"devDependencies": {
"@types/node": "^18.15.6",
"@types/node": "^18.15.11",
"typescript": "^5.0.3",
"vite": "^4.2.1",
"vitest": "^0.29.8"
"vitest": "^0.30.1"
}
}
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc