Full Changelog: https://github.com/teleporthq/teleport-code-generators/compare/v0.23.5...v0.23.6
Full Changelog: https://github.com/teleporthq/teleport-code-generators/compare/v0.22.4...v0.23.1
Full Changelog: https://github.com/teleporthq/teleport-code-generators/compare/v0.21.2...v0.21.3
Full Changelog: https://github.com/teleporthq/teleport-code-generators/compare/v0.20.7...v0.21.0
Full Changelog: https://github.com/teleporthq/teleport-code-generators/compare/v0.19.23...v0.20.0
propDefinitions
of type func
by @JayaKrishnaNamburu in https://github.com/teleporthq/teleport-code-generators/pull/649Full Changelog: https://github.com/teleporthq/teleport-code-generators/compare/v0.19.16...v0.19.17
Full Changelog: https://github.com/teleporthq/teleport-code-generators/compare/v0.19.3...v0.19.4
Full Changelog: https://github.com/teleporthq/teleport-code-generators/compare/v0.19.0...v0.19.1
Full Changelog: https://github.com/teleporthq/teleport-code-generators/compare/v0.18.0...v0.18.1
A experimental new generator for exporting projects and components using HTML and CSS. But the generator comes with only a few features at the moment. In usual ComponentUIDL
we can can define the specific details of components, Including if the component is using any external components, using
dependency: {
type: 'local'
}
But in plain html
we don't have support for components yet. Yes (custom-elements) but the target is to make it a plain html
with no custom-elements
. A custom-elements
can be a diff generator of it own :)
So, to make the syntaxes work.
const generator = createHTMLComponentGenerator()
generator.addExternalComponents({
externals: {
sample: SampleComponent,
},
})
await generator.generateComponent(ComponentUIDL)
The generator, clones the components in independent instances with the props passed at specific instances. Things that are no included at the moment.
For projects that are generated using @teleporthq/teleport-project-generator-html
, the generator uses a default template from parcel
without routing. All the components and pages are added to their respective folders.
Feedback is highly welcome, since we want to have the HTML
generator as simple as possible. And at the same time, functional. For users who want to just get their html
files and serve from their static hosts.
styled-jsx
by @JayaKrishnaNamburu in https://github.com/teleporthq/teleport-code-generators/pull/607Full Changelog: https://github.com/teleporthq/teleport-code-generators/compare/v0.17.7...v0.18.0
fixes #595
width
and height
pre-defined will start using next/Image
component #574.referencedStyles
along with styles
for a node with aility #581 const ContactLink = styled.li`
${SecondaryButton};
padding: 10px 20px;
transition: all 0.15s ease-in-out;
cursor: pointer;
&:hover {
color: red;
border-bottom: 3px solid red;
padding-bottom: 7px;
}
`
{
"secondaryButton": {
"type": "reusable-project-style-map",
"content": {
"background": "red",
"width": "auto",
"color": "#fff",
"border": "1px solid #fff"
}
}
}
DX
esbuild
for improving build times #577 UIDL
error validation messages.esbuild
. And generating types
using tsc
by @JayaKrishnaNamburu in https://github.com/teleporthq/teleport-code-generators/pull/577Full Changelog: https://github.com/teleporthq/teleport-code-generators/compare/v0.16.3...v0.17.0
'focus-within' | 'focus-visible' | 'visited' | 'checked' | 'placeholder'
in element-state
in addition to the existing
states. Thank you @oanamun #561 #557 Un-expected behaviour in rendering when custom-tags are used in Angular and Stencil components. #495 Default branch for github pushed to main.
This release enables project-generators
to chain series of plugins like component generators. This helps in re-using the default generators strategy
, plugin configs
and then extending their functionality using the plugins. For example
Let's take @teleporthq/teleeport-project-generator-next
helps in generating a NextJS project with styled-jsx
by default. But what is we need a NextJS with StyledComponents or NextJS with React-JSS. These project-plugins helps in enabling that flexibility.
const nextProjectGenerator = createNextProjectGenerator()
nextProjectGenerator.addPlugin(pluginNextStyledComponents)
With nextStyledComponentsProjectGenerators
we can generate NextJS projects with StyledComponents. No additional configurations and additional templates needed to maintain.
dependencies
or devDependencies
or delete any.template
and from the component-generators
. And we can change the content of any files with respect to our needed.project-generator-plugin
. Because, the plugins are mainly designed by basing on the files and folders present in the config. If a plugin decides to change the template in middle. All the next plugins in the pipeline might start to fail.runBefore
and runAfter
.runBefore
is executed right after validating the ProjectUIDL and so, we can want to add any additional plugins or remove any or even change the generators.runAfter
is executed after the components/pages/style sheets/routers are generated. Basically right before packing the project, so we can quickly change any configs to meet our needs. More details and implementations of the plugins can be found here #514
Plugins that are currently released with the current release are
Out of the box, now @teleporthq/teleport-code-generator helps in generating pre-configured 14 different projects š
What's ChangedFull Changelog: https://github.com/teleporthq/teleport-code-generators/compare/v0.15.0...v0.16.0
#503 (feat): Define and use design tokens in root. And use them for styles, media queries and project style sheets.
Design tokens are here, you can deifne basic tokens which in returns converts into css-variablees
in the projects generated. All, we need to do is, define a simple designLanguage
field in the root
of the ProjectUIDL
.
And then start using the tokens in the UIDL using
{
...
"style":{
"flex":"1",
"color":{
"type":"dynamic",
"content":{
"referenceType":"token",
"id":"blue-500"
}
}
}
}
You can use these tokens in
Supports all style-flavours that we currently support.
UIDLNode
with styles. {
"type":"element",
"content":{
"elementType":"text",
"style":{
"width":"200px"
},
"children":[
{
"type":"static",
"content":"Hello World!"
}
]
}
}
The generators pass this through resolving
step and generates nodes. But when you use UIDLElement
it throws error. Since UIDLElement
expects the style to be UIDLStyleDefinitions
which in return says that the style should be{
"width":{
"type":"static",
"content":"200px"
}
}
But, we don't actually need to define static nodes this way, samee thing applies to static children in UIDL. So, start using VComponentUIDL
from @teleporthq/teleport-types
https://repl.teleporthq.io/?uidlLink=lrvw58rmbqcxpr4dsrfrv These VUIDL
helps in writing more compact and human redeable UIDL's. For more types that are exported, please check --> https://github.com/teleporthq/teleport-code-generators/blob/development/packages/teleport-types/src/vuidl.ts
(@JayaKrishnaNamburu)teleport-project-generator
Full Changelog: https://github.com/teleporthq/teleport-code-generators/compare/v0.14.0...v0.15.0
Bug Fixes
Full Changelog: https://github.com/teleporthq/teleport-code-generators/compare/v0.13.3...v0.14.0
Full Changelog: https://github.com/teleporthq/teleport-code-generators/compare/v0.12.4...v0.13.0
link
will now generated as anchor tags with the button styles by default.semanticType
for the UIDL nodes. #445Full Changelog: https://github.com/teleporthq/teleport-code-generators/compare/v0.12.3...v0.12.4
Some codebase updates on typescript and tslint rules and updates to the now publisher
A few hotfixes for links mapping and for the next
project generator
A few fixes and new improvements for the playground integration.
After a few alpha releases, we finally have a stable v0.10.0 that has a bunch of new features and capabilities. With this minor version we added support for react-native
both at component and project generator level + we added new options like gatsby
and gridsome
for project generators. Also, the publishes have be polished and are ready to be integrated in the playground project.
You can read the detailed changelog to have a better understanding of the changes involved all the way from 0.9 through all the alpha versions.
Further updates to the UIDL structure as well as the addition of teleport-project-generator-angular
to the suite
First alpha release for the upcoming v0.10. Includes the new package teleport-code-generator
which is used by the playground as a standalone version of the entire ecosystem, refactoring throughout the packages and the new teleport-publisher-codesandbox
In this release, we started diversifying the frameworks we support. We added a couple of new component generators for: angular
, stencil
and preact
and a new project generator for preact
.
But most importantly, we refactored a lot of code under the hood, making the task of adding new flavors for projects and components much easier in the future.
You can read the detailed changelog to have a better understanding of the changes involved from 0.8 to 0.9.
Quick fix for the React
component generator which was not generating the import statements.
In this release we finished the work for the basic infrastructure for the code generators and we now have both a generic component generator and a generic project generator, both of which have the underlying abstractions. The ecosystem can now further expand to other technologies with ease.
You can read the detailed changelog to have a better understanding of the changes involved from 0.7 to 0.8.
This release is a transition from a single package on npm
- v0.6 to the new lerna
powered setup with individual packages published on npm.
You can read the detailed changelog to have a better understanding of the changes involved from 0.6 to 0.7.
We also have an official docs site available from this point.