Skip to content

Docs - installations #130

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 26 commits into from
Jul 11, 2023
Merged

Docs - installations #130

merged 26 commits into from
Jul 11, 2023

Conversation

ChcJohnie
Copy link
Collaborator

@ChcJohnie ChcJohnie commented Jun 26, 2023

Resolves #122

Implements docs structure a docs buildings blocks to allow docs features proposed in linked issue.
Implementation is starter with limited options and adaptibility.

Features set

pages with mdx doc

  • installation.mdx - supported on /components and /components/[type] pages
  • mdx can use standard markdown and supplied react components (list defined in /docs/components/installationdocs and passed to mdx lib from page)
  • /components/[type] pages autofetch type relevant data (examples files, source files, dependency source file - manually defined) and inject to mdx parser with scope option
  • there are other options to use dynamic/async data in mdx components, this one felled easy to implement and sufficient for now (more in discussion)

mdx supported components

  • standard markdown
  • md codeblock wrapped with copy button, formatted with 3rd party Rehype Pretty code plugin , advanced plugin options (highlighting etc.) requires css styling which is not configured
  • ComponentExampleItem/List - wrapper around ComponentExample (selects example/s to display)
  • ComponentSourceTabs - wrapper around TabbedCode (select source file to display, assumes .tsx source passed)

Discussion

data injection

  • current approach with scope is bit limited in flexibility as all data are preloaded by page component (without parsing mdx)
  • for current use cases this is enough, but it is not possible to reference unrelated file in mdx or add unrelated files/dynamic codeblocks in TabCode
  • other options would be to add more rehype plugins or use async server components
  • -> MDX async components
    • I assumed that async component should be ok to use with MDX, but could not get it working and got impression its not supported
    • On second revisit, I think it should be possible (and on quick test looked to be working), but is not supported by typings. Thus for now would require ts-expect-error (relevant issue)
    • Async component would enable more dynamic props and scope bindings could be removed but imho not needed (yet)?

Refactor

  • docs naming - maybe broader name than installation would be better?
  • smarter dependencies auto-detection would be handy, for now its specified manually (in /examples/index list)
    • have some ideas decided to postpone if necessary (there are not many dependencies)
  • docs structure
    • I still think that in long term docs pages will be needed (installation, getting started, theming), but that would require more dynamic file structure (should not be hard todo) and secondary navigation
  • mailingui naming
    • any reason naming of component types in /mailingui and component names in /examples differ? (examples plurals, paragraph vs text, hero vs hero-section)? I found it bit confusing, not sure how much that affects user. @iamhectorsosa

Known todos

  • fix mobile responsivness
  • check headlines typography (optionally remove tailwind typography or apply only on specific tags)

@vercel
Copy link

vercel bot commented Jun 26, 2023

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
mailingui ✅ Ready (Inspect) Visit Preview 💬 Add feedback Jul 11, 2023 9:31am

reusing ComponentExample existing component more
@ChcJohnie
Copy link
Collaborator Author

Gonna remove examples handling (bar demo) from .mdx for now. But also I will keep their mdx components in codebase for now. Usage (for future reference)

  1. Single example item
    <ComponentExampleItem examples={examples} example={"LargeBadges"} />
  2. All examples item (Demo excluded) in alphabet order (mdx copy of current automatic handling)
    <ComponentExampleList examples={examples}/>
  3. List of examples item filtered and order
    <ComponentExampleList examples={examples} items={["NestedBulletLists", "DifferentSizedBulletList"]}/>

@ChcJohnie
Copy link
Collaborator Author

Now I would consider this feat "first version" complete.
Though I acknowledge need for further experiments with content editing dx, and would like to experiment mainly with component source workflow further

@ChcJohnie ChcJohnie marked this pull request as ready for review June 28, 2023 12:11
* add mdx support

* get standard mdx working

* simplify next.config for our usecase

* make the standart mdx work

* standart mdx working the same way the remote mdx used to

* cleanup installationdocs directory

* cleanup index.ts from installationdocs

* upgrade shiki maybe build will succeed

* update types of react and react-dom

* revert failing commit

* clean up code
@ericvalcik
Copy link
Collaborator

I pushed some changes, mostly deletions of unused code. With the refactoring I made we now only use rehype-pretty-code in the next.config.mjs file. I thought we would have to use it on two places, but right now it only lives there so we are not duplicating any code regarding the rehype-pretty-code plugin.

IMO this PR is mostly ready, but before merging I would wait for @iamhectorsosa to be online and review it and we will see if it the right move to merge.

I approve the PR, I would just not merge it before Hector checks it out.

ericvalcik
ericvalcik previously approved these changes Jul 4, 2023
@ericvalcik ericvalcik merged commit 75298e7 into main Jul 11, 2023
@ericvalcik ericvalcik deleted the docs-installation branch July 11, 2023 09:34
ericvalcik added a commit that referenced this pull request Jul 12, 2023
* Adding Support for React (#86)

* Adding Support for React

* Removing invalid export

* Renaming missing component dir

* Added Default badge component

* Adding HTML to Code Previews

* Adding Formatter for HTML

* WithHeading

* Removing mjml in favor of React, also adding Shiki

* Updating Copy Button Index

* Adding Sample Component in each Category

* Adding HTML

---------

Co-authored-by: Jan Vorcak <[email protected]>

* Restructuring DX (#88)

* Finished Badge component with new examples (#90)

* Restructuring DX

* Add noBorder, pill and dot props to Badge primitive

* Fix Pill Badge example after resolving conflicts

* Improve examples, render badges with dot without display: flex

* Improve height of examples, remove unused imports on some places

---------

Co-authored-by: Hector Sosa <[email protected]>

* Hero section component (#95)

* Button component (#92)

* Migrate from npm to pnpm (#97)

* Disabling Syntax Highlighting for Development (#98)

* Disabling Syntax Highlighting for Development

* Cleanup previous .preview extension

* Removing unused property in shiki

* Introduce Modifiable themes with new component `ThemeProvider` (#96)

* Restructuring DX

* Add noBorder, pill and dot props to Badge primitive

* Fix Pill Badge example after resolving conflicts

* Improve examples, render badges with dot without display: flex

* Improve height of examples, remove unused imports on some places

* Add Button component + add examples of usage

* Create mapping for iframe heights in ComponentExample

* Use CSSProperties instead of imported Propery from 'csstype'

* Make proposed improvements

* Add sizes to buttons, adjust the examples, follow the design system

* 'Fork' the Button component from react.email and modify it so we get successful renders on outlook

* Tidy up the modified version of react.email's Button component

* Demo

* Implement ThemeProvider + integrate buttons

* ThemeProvider with Buttons implemented

* Integrate Badges to use the ThemeProvider

* Fix Button component to work properly with the new ThemeProvider + add new examples

* implement suggested changes

* update pnpm-lock.yaml

* remove folder types in mailingui and colocate types with themes

* fix build and warnings

---------

Co-authored-by: Hector Sosa <[email protected]>

* Add `Divider` component and an example (#99)

* Add divider + rename folders buttons to button and badges to badge

* Working version of the Divider with text

* tidy up the code

* Polish the divider component

* fix build

* fix build #2

* finish Divider component

* Clean up

* Clean up + in Divider add support for ThemeProvider

* Make resizing of dividers responsive

* Make default values more predictable

* Update Divider examples

* Create conditional type for DividerProps

* Add missing baseWidth to Divider example

* Make one example smaller and update the baseWidth accordingly

* Paragraph component (#100)

* Add divider + rename folders buttons to button and badges to badge

* Working version of the Divider with text

* tidy up the code

* Polish the divider component

* fix build

* fix build #2

* finish Divider component

* Clean up

* Clean up + in Divider add support for ThemeProvider

* Implement the Paragraph component + 3 examples

* Merge Paragraph and Text into one component - Text

* rename Text to Paragraph

* Add more functionality to our Paragraph component + create better examples

* Commit suggestion

* Improve the examples for Paragraphs

* Make the sizes more intuitive - follow tailwind sizing

* Rename Paragraph to Text

* fix build

* Remove outdated Divider example

* Implement the Emoji component + add examples (#102)

* Implement the Emoji component + add examples

* Add small emoji example

* Fix alignment with small emoji example

* Improve Emoji Component + add new examples

* Add more emojis + create new example

* Implement `List` component + add examples (#104)

* Implement List component + add examples

* Add additional props to List

* Fix build

* Don't use useState

* Clean up

* Add bullet lists + some refactoring + new examples

* Add social icons component (#105)

* Add social icons component

* Add Examples for social icons

* Delete unused imports, use <Text> instead of <p> tags in some examples

* Preview Mode (#103)

* Preview Mode

* Testing

* Testing

* Huge Opsie

* Testing email that has context

* Moving stuff around

* Fixing dev mode (#106)

Hopefully fixes dev mode

* Implement template emails for the minimal theme (#108)

* Implement pilot version of the minimal themed password change

* Fix compatibility issues with the template

* Fix build and compatibility with outlook

* add width to Container for compatibility

* fixing build

* Final touches on minimal-password-reset template

* Add new button component MinimalButton + create new minial template News

* Add links to socialicons in templates + new booking confirmation minimal themed template

* Add discount minimal example

* Add two new minimal templates

* Make the MinimalButton more modular

* Add review email template

* Add props to templates

* Mrege MinimalButton and our button component + refactor email templates

* Add last three minimal templates

* experimental build fix

* revert experimental build fix

* Add forgotten vars, move basePath outside of component

* Increase static page generation timeout from default 60s to 300s (#115)

increase static page generation timeout from default 60s to 300s

* Preview send form (#112)

* refactor: split preview send feature

* feat: cta button forwards ref

so it can be easily integrated in radix popover

* feat: preview send popover with inital form

* feat: improve form footer

* feat: status handling

* feat: trigger button states

* fix icon size

* feat add reusable popover component

* feat use our popover in send

* Folder structure (#117)

* chore move folders to /docs

* chore remove examples/component nesting folder

* fix import/alias paths

* chore: fonts to public

* chore move (email)preview from app

* Adding Stitches for Styling (#113)

* Adding Stitches for Styling

* inline css classes with juice when rendering html from react components

* Install encoding

* use regular object as const for themes

* refactor the theme structure

* use the new render util in components and preview

* tidying up + add comments for render utility

---------

Co-authored-by: eric valcik <[email protected]>

* Code components (#121)

* feat add code/tabbed code components

mostly reused from existing implementations

* feat reuse new code components

inc fix code height in /preview

* create `Head` component + use it where needed (#123)

create new component - Head + use it where needed

* Adjusting the Button component to new theming solution (#124)

* refactor button component to not use theme + update examples

* Play around with rounded buttons - found a problem with the theme

* Fix pill buttons example

* Ditch stitches for buttons + rethink theme + updated button and badges and their examples

* tidy up

* fix comments

* Refactor Badges Component to work with the new theming (#125)

* add new theming to Badges and remove stitches dependency in Badge component

* remove stitches, juice and encoding - adjust codebase for these changes

* remove Head wrapper and adjust all imports of our wrapper

* remove render wrapper as we don't need it anymore

* static horizontal padding for badges on outlook

* improve compatibility with outlook

* tidying up

* Refactor all components to use the new theme + delete ThemeProvider (#126)

* finish dividers

* refactor Bulletlist

* Refactor List and Text

* Refactor button examples, fix imports in button

* Remove ThemeProvider

* Tidy up the examples

* add theme to Component `HeroSection` (#127)

* add theme to HeroSection

* fix img props, fix examples

* Add variant to examples

* Sync `production` with `main` (#133)

* Release blog pages (#81)

Creating Blog pages (#37)

* Creating Blog pages

* Adding Static Params

* Refactoring and updating blog styles

* Package.lock rebase change

* Update 001.mdx

* Updated blog post

---------

Co-authored-by: Hector Sosa <[email protected]>

* Update production website (#132)

* Adding Support for React (#86)

* Adding Support for React

* Removing invalid export

* Renaming missing component dir

* Added Default badge component

* Adding HTML to Code Previews

* Adding Formatter for HTML

* WithHeading

* Removing mjml in favor of React, also adding Shiki

* Updating Copy Button Index

* Adding Sample Component in each Category

* Adding HTML

---------

Co-authored-by: Jan Vorcak <[email protected]>

* Restructuring DX (#88)

* Finished Badge component with new examples (#90)

* Restructuring DX

* Add noBorder, pill and dot props to Badge primitive

* Fix Pill Badge example after resolving conflicts

* Improve examples, render badges with dot without display: flex

* Improve height of examples, remove unused imports on some places

---------

Co-authored-by: Hector Sosa <[email protected]>

* Hero section component (#95)

* Button component (#92)

* Migrate from npm to pnpm (#97)

* Disabling Syntax Highlighting for Development (#98)

* Disabling Syntax Highlighting for Development

* Cleanup previous .preview extension

* Removing unused property in shiki

* Introduce Modifiable themes with new component `ThemeProvider` (#96)

* Restructuring DX

* Add noBorder, pill and dot props to Badge primitive

* Fix Pill Badge example after resolving conflicts

* Improve examples, render badges with dot without display: flex

* Improve height of examples, remove unused imports on some places

* Add Button component + add examples of usage

* Create mapping for iframe heights in ComponentExample

* Use CSSProperties instead of imported Propery from 'csstype'

* Make proposed improvements

* Add sizes to buttons, adjust the examples, follow the design system

* 'Fork' the Button component from react.email and modify it so we get successful renders on outlook

* Tidy up the modified version of react.email's Button component

* Demo

* Implement ThemeProvider + integrate buttons

* ThemeProvider with Buttons implemented

* Integrate Badges to use the ThemeProvider

* Fix Button component to work properly with the new ThemeProvider + add new examples

* implement suggested changes

* update pnpm-lock.yaml

* remove folder types in mailingui and colocate types with themes

* fix build and warnings

---------

Co-authored-by: Hector Sosa <[email protected]>

* Add `Divider` component and an example (#99)

* Add divider + rename folders buttons to button and badges to badge

* Working version of the Divider with text

* tidy up the code

* Polish the divider component

* fix build

* fix build #2

* finish Divider component

* Clean up

* Clean up + in Divider add support for ThemeProvider

* Make resizing of dividers responsive

* Make default values more predictable

* Update Divider examples

* Create conditional type for DividerProps

* Add missing baseWidth to Divider example

* Make one example smaller and update the baseWidth accordingly

* Paragraph component (#100)

* Add divider + rename folders buttons to button and badges to badge

* Working version of the Divider with text

* tidy up the code

* Polish the divider component

* fix build

* fix build #2

* finish Divider component

* Clean up

* Clean up + in Divider add support for ThemeProvider

* Implement the Paragraph component + 3 examples

* Merge Paragraph and Text into one component - Text

* rename Text to Paragraph

* Add more functionality to our Paragraph component + create better examples

* Commit suggestion

* Improve the examples for Paragraphs

* Make the sizes more intuitive - follow tailwind sizing

* Rename Paragraph to Text

* fix build

* Remove outdated Divider example

* Implement the Emoji component + add examples (#102)

* Implement the Emoji component + add examples

* Add small emoji example

* Fix alignment with small emoji example

* Improve Emoji Component + add new examples

* Add more emojis + create new example

* Implement `List` component + add examples (#104)

* Implement List component + add examples

* Add additional props to List

* Fix build

* Don't use useState

* Clean up

* Add bullet lists + some refactoring + new examples

* Add social icons component (#105)

* Add social icons component

* Add Examples for social icons

* Delete unused imports, use <Text> instead of <p> tags in some examples

* Preview Mode (#103)

* Preview Mode

* Testing

* Testing

* Huge Opsie

* Testing email that has context

* Moving stuff around

* Fixing dev mode (#106)

Hopefully fixes dev mode

* Implement template emails for the minimal theme (#108)

* Implement pilot version of the minimal themed password change

* Fix compatibility issues with the template

* Fix build and compatibility with outlook

* add width to Container for compatibility

* fixing build

* Final touches on minimal-password-reset template

* Add new button component MinimalButton + create new minial template News

* Add links to socialicons in templates + new booking confirmation minimal themed template

* Add discount minimal example

* Add two new minimal templates

* Make the MinimalButton more modular

* Add review email template

* Add props to templates

* Mrege MinimalButton and our button component + refactor email templates

* Add last three minimal templates

* experimental build fix

* revert experimental build fix

* Add forgotten vars, move basePath outside of component

* Increase static page generation timeout from default 60s to 300s (#115)

increase static page generation timeout from default 60s to 300s

* Preview send form (#112)

* refactor: split preview send feature

* feat: cta button forwards ref

so it can be easily integrated in radix popover

* feat: preview send popover with inital form

* feat: improve form footer

* feat: status handling

* feat: trigger button states

* fix icon size

* feat add reusable popover component

* feat use our popover in send

* Folder structure (#117)

* chore move folders to /docs

* chore remove examples/component nesting folder

* fix import/alias paths

* chore: fonts to public

* chore move (email)preview from app

* Adding Stitches for Styling (#113)

* Adding Stitches for Styling

* inline css classes with juice when rendering html from react components

* Install encoding

* use regular object as const for themes

* refactor the theme structure

* use the new render util in components and preview

* tidying up + add comments for render utility

---------

Co-authored-by: eric valcik <[email protected]>

* Code components (#121)

* feat add code/tabbed code components

mostly reused from existing implementations

* feat reuse new code components

inc fix code height in /preview

* create `Head` component + use it where needed (#123)

create new component - Head + use it where needed

* Adjusting the Button component to new theming solution (#124)

* refactor button component to not use theme + update examples

* Play around with rounded buttons - found a problem with the theme

* Fix pill buttons example

* Ditch stitches for buttons + rethink theme + updated button and badges and their examples

* tidy up

* fix comments

* Refactor Badges Component to work with the new theming (#125)

* add new theming to Badges and remove stitches dependency in Badge component

* remove stitches, juice and encoding - adjust codebase for these changes

* remove Head wrapper and adjust all imports of our wrapper

* remove render wrapper as we don't need it anymore

* static horizontal padding for badges on outlook

* improve compatibility with outlook

* tidying up

* Refactor all components to use the new theme + delete ThemeProvider (#126)

* finish dividers

* refactor Bulletlist

* Refactor List and Text

* Refactor button examples, fix imports in button

* Remove ThemeProvider

* Tidy up the examples

* add theme to Component `HeroSection` (#127)

* add theme to HeroSection

* fix img props, fix examples

* Add variant to examples

---------

Co-authored-by: Hector Sosa <[email protected]>
Co-authored-by: Jan Vorcak <[email protected]>
Co-authored-by: Jan Shanel <[email protected]>
Co-authored-by: Jan Shanel <[email protected]>

---------

Co-authored-by: Ján Vorčák <[email protected]>
Co-authored-by: Hector Sosa <[email protected]>
Co-authored-by: Jan Shanel <[email protected]>
Co-authored-by: Jan Shanel <[email protected]>

* Docs - installations (#130)

* feat initial mdx docs implementation

* feat docs highlighting

used 3rd party package for speed

* improve styling and highlighting

* refactor load demo in page and pass through scope

* feat more doc content

inc component source

* feat code el with copy button

* fix sort-keys was supposed to stay in lock

* fix post merge content update

* feat component example with headling

* feat dependencies installation test

* feat control examples with mxd

reusing ComponentExample existing component more

* fix apply not-prose on all code components

* refactor mdx comp naming and data passing

* feat add list docs to test docs features

* chore up rehype-pretty-code

* feat add simplified demo, remove examples from mdx

* feat conform examples comps names

keep singular vs plural as that one is easy to transform

* fix docs typography

* fix pre mobile overflows

* Pivot to standard MDX (#138)

* add mdx support

* get standard mdx working

* simplify next.config for our usecase

* make the standart mdx work

* standart mdx working the same way the remote mdx used to

* cleanup installationdocs directory

* cleanup index.ts from installationdocs

* upgrade shiki maybe build will succeed

* update types of react and react-dom

* revert failing commit

* clean up code

* remove unused code

* minor mdx content fixes

* move dynamic imports of mdx docs to examples/index.ts

* clean up errors, tidy up code

---------

Co-authored-by: Eric Valcik <[email protected]>
Co-authored-by: eric valcik <[email protected]>

* Remove text dependency from list component (#143)

* Remove text dependency from list component

* update installation.mdx for lists + small typo fix for badges installation.mdx

---------

Co-authored-by: eric valcik <[email protected]>

* Create documentation for installation for all components (#146)

* add installation.mdx to button and divider component

* add installation.mdx to all components

* tidy up

* tidy up

* update README

* revert restructuring of README

* tidy up

* make Demo.tsx files more clear

* Create better docs in route `/components` (#150)

Create better docs in  route

* Small improvement of the installation docs (#151)

* Small improvement of the installation docs

* Make theming comment more clear

* fix /components styling (#147)

fix unify /components styling

* Add second variant for subscription dialog (#145)

* Add second variant for subscription dialog

* Update subscription dialog and redirects

* Add preview metadata and shared OG metadata (#142)

* Add preview metadata and shared OG metadata

* Move shared OG metadata to constants folder

* Add preview OG image

* fix build

---------

Co-authored-by: eric valcik <[email protected]>

* remove leftover files that got in with merge of production

---------

Co-authored-by: Hector Sosa <[email protected]>
Co-authored-by: Jan Vorcak <[email protected]>
Co-authored-by: Jan Shanel <[email protected]>
Co-authored-by: Jan Shanel <[email protected]>
Co-authored-by: DanielPuchala <[email protected]>
ericvalcik added a commit that referenced this pull request Jul 12, 2023
* Adding Support for React (#86)

* Adding Support for React

* Removing invalid export

* Renaming missing component dir

* Added Default badge component

* Adding HTML to Code Previews

* Adding Formatter for HTML

* WithHeading

* Removing mjml in favor of React, also adding Shiki

* Updating Copy Button Index

* Adding Sample Component in each Category

* Adding HTML

---------



* Restructuring DX (#88)

* Finished Badge component with new examples (#90)

* Restructuring DX

* Add noBorder, pill and dot props to Badge primitive

* Fix Pill Badge example after resolving conflicts

* Improve examples, render badges with dot without display: flex

* Improve height of examples, remove unused imports on some places

---------



* Hero section component (#95)

* Button component (#92)

* Migrate from npm to pnpm (#97)

* Disabling Syntax Highlighting for Development (#98)

* Disabling Syntax Highlighting for Development

* Cleanup previous .preview extension

* Removing unused property in shiki

* Introduce Modifiable themes with new component `ThemeProvider` (#96)

* Restructuring DX

* Add noBorder, pill and dot props to Badge primitive

* Fix Pill Badge example after resolving conflicts

* Improve examples, render badges with dot without display: flex

* Improve height of examples, remove unused imports on some places

* Add Button component + add examples of usage

* Create mapping for iframe heights in ComponentExample

* Use CSSProperties instead of imported Propery from 'csstype'

* Make proposed improvements

* Add sizes to buttons, adjust the examples, follow the design system

* 'Fork' the Button component from react.email and modify it so we get successful renders on outlook

* Tidy up the modified version of react.email's Button component

* Demo

* Implement ThemeProvider + integrate buttons

* ThemeProvider with Buttons implemented

* Integrate Badges to use the ThemeProvider

* Fix Button component to work properly with the new ThemeProvider + add new examples

* implement suggested changes

* update pnpm-lock.yaml

* remove folder types in mailingui and colocate types with themes

* fix build and warnings

---------



* Add `Divider` component and an example (#99)

* Add divider + rename folders buttons to button and badges to badge

* Working version of the Divider with text

* tidy up the code

* Polish the divider component

* fix build

* fix build #2

* finish Divider component

* Clean up

* Clean up + in Divider add support for ThemeProvider

* Make resizing of dividers responsive

* Make default values more predictable

* Update Divider examples

* Create conditional type for DividerProps

* Add missing baseWidth to Divider example

* Make one example smaller and update the baseWidth accordingly

* Paragraph component (#100)

* Add divider + rename folders buttons to button and badges to badge

* Working version of the Divider with text

* tidy up the code

* Polish the divider component

* fix build

* fix build #2

* finish Divider component

* Clean up

* Clean up + in Divider add support for ThemeProvider

* Implement the Paragraph component + 3 examples

* Merge Paragraph and Text into one component - Text

* rename Text to Paragraph

* Add more functionality to our Paragraph component + create better examples

* Commit suggestion

* Improve the examples for Paragraphs

* Make the sizes more intuitive - follow tailwind sizing

* Rename Paragraph to Text

* fix build

* Remove outdated Divider example

* Implement the Emoji component + add examples (#102)

* Implement the Emoji component + add examples

* Add small emoji example

* Fix alignment with small emoji example

* Improve Emoji Component + add new examples

* Add more emojis + create new example

* Implement `List` component + add examples (#104)

* Implement List component + add examples

* Add additional props to List

* Fix build

* Don't use useState

* Clean up

* Add bullet lists + some refactoring + new examples

* Add social icons component (#105)

* Add social icons component

* Add Examples for social icons

* Delete unused imports, use <Text> instead of <p> tags in some examples

* Preview Mode (#103)

* Preview Mode

* Testing

* Testing

* Huge Opsie

* Testing email that has context

* Moving stuff around

* Fixing dev mode (#106)

Hopefully fixes dev mode

* Implement template emails for the minimal theme (#108)

* Implement pilot version of the minimal themed password change

* Fix compatibility issues with the template

* Fix build and compatibility with outlook

* add width to Container for compatibility

* fixing build

* Final touches on minimal-password-reset template

* Add new button component MinimalButton + create new minial template News

* Add links to socialicons in templates + new booking confirmation minimal themed template

* Add discount minimal example

* Add two new minimal templates

* Make the MinimalButton more modular

* Add review email template

* Add props to templates

* Mrege MinimalButton and our button component + refactor email templates

* Add last three minimal templates

* experimental build fix

* revert experimental build fix

* Add forgotten vars, move basePath outside of component

* Increase static page generation timeout from default 60s to 300s (#115)

increase static page generation timeout from default 60s to 300s

* Preview send form (#112)

* refactor: split preview send feature

* feat: cta button forwards ref

so it can be easily integrated in radix popover

* feat: preview send popover with inital form

* feat: improve form footer

* feat: status handling

* feat: trigger button states

* fix icon size

* feat add reusable popover component

* feat use our popover in send

* Folder structure (#117)

* chore move folders to /docs

* chore remove examples/component nesting folder

* fix import/alias paths

* chore: fonts to public

* chore move (email)preview from app

* Adding Stitches for Styling (#113)

* Adding Stitches for Styling

* inline css classes with juice when rendering html from react components

* Install encoding

* use regular object as const for themes

* refactor the theme structure

* use the new render util in components and preview

* tidying up + add comments for render utility

---------



* Code components (#121)

* feat add code/tabbed code components

mostly reused from existing implementations

* feat reuse new code components

inc fix code height in /preview

* create `Head` component + use it where needed (#123)

create new component - Head + use it where needed

* Adjusting the Button component to new theming solution (#124)

* refactor button component to not use theme + update examples

* Play around with rounded buttons - found a problem with the theme

* Fix pill buttons example

* Ditch stitches for buttons + rethink theme + updated button and badges and their examples

* tidy up

* fix comments

* Refactor Badges Component to work with the new theming (#125)

* add new theming to Badges and remove stitches dependency in Badge component

* remove stitches, juice and encoding - adjust codebase for these changes

* remove Head wrapper and adjust all imports of our wrapper

* remove render wrapper as we don't need it anymore

* static horizontal padding for badges on outlook

* improve compatibility with outlook

* tidying up

* Refactor all components to use the new theme + delete ThemeProvider (#126)

* finish dividers

* refactor Bulletlist

* Refactor List and Text

* Refactor button examples, fix imports in button

* Remove ThemeProvider

* Tidy up the examples

* add theme to Component `HeroSection` (#127)

* add theme to HeroSection

* fix img props, fix examples

* Add variant to examples

* Sync `production` with `main` (#133)

* Release blog pages (#81)

Creating Blog pages (#37)

* Creating Blog pages

* Adding Static Params

* Refactoring and updating blog styles

* Package.lock rebase change

* Update 001.mdx

* Updated blog post

---------



* Update production website (#132)

* Adding Support for React (#86)

* Adding Support for React

* Removing invalid export

* Renaming missing component dir

* Added Default badge component

* Adding HTML to Code Previews

* Adding Formatter for HTML

* WithHeading

* Removing mjml in favor of React, also adding Shiki

* Updating Copy Button Index

* Adding Sample Component in each Category

* Adding HTML

---------



* Restructuring DX (#88)

* Finished Badge component with new examples (#90)

* Restructuring DX

* Add noBorder, pill and dot props to Badge primitive

* Fix Pill Badge example after resolving conflicts

* Improve examples, render badges with dot without display: flex

* Improve height of examples, remove unused imports on some places

---------



* Hero section component (#95)

* Button component (#92)

* Migrate from npm to pnpm (#97)

* Disabling Syntax Highlighting for Development (#98)

* Disabling Syntax Highlighting for Development

* Cleanup previous .preview extension

* Removing unused property in shiki

* Introduce Modifiable themes with new component `ThemeProvider` (#96)

* Restructuring DX

* Add noBorder, pill and dot props to Badge primitive

* Fix Pill Badge example after resolving conflicts

* Improve examples, render badges with dot without display: flex

* Improve height of examples, remove unused imports on some places

* Add Button component + add examples of usage

* Create mapping for iframe heights in ComponentExample

* Use CSSProperties instead of imported Propery from 'csstype'

* Make proposed improvements

* Add sizes to buttons, adjust the examples, follow the design system

* 'Fork' the Button component from react.email and modify it so we get successful renders on outlook

* Tidy up the modified version of react.email's Button component

* Demo

* Implement ThemeProvider + integrate buttons

* ThemeProvider with Buttons implemented

* Integrate Badges to use the ThemeProvider

* Fix Button component to work properly with the new ThemeProvider + add new examples

* implement suggested changes

* update pnpm-lock.yaml

* remove folder types in mailingui and colocate types with themes

* fix build and warnings

---------



* Add `Divider` component and an example (#99)

* Add divider + rename folders buttons to button and badges to badge

* Working version of the Divider with text

* tidy up the code

* Polish the divider component

* fix build

* fix build #2

* finish Divider component

* Clean up

* Clean up + in Divider add support for ThemeProvider

* Make resizing of dividers responsive

* Make default values more predictable

* Update Divider examples

* Create conditional type for DividerProps

* Add missing baseWidth to Divider example

* Make one example smaller and update the baseWidth accordingly

* Paragraph component (#100)

* Add divider + rename folders buttons to button and badges to badge

* Working version of the Divider with text

* tidy up the code

* Polish the divider component

* fix build

* fix build #2

* finish Divider component

* Clean up

* Clean up + in Divider add support for ThemeProvider

* Implement the Paragraph component + 3 examples

* Merge Paragraph and Text into one component - Text

* rename Text to Paragraph

* Add more functionality to our Paragraph component + create better examples

* Commit suggestion

* Improve the examples for Paragraphs

* Make the sizes more intuitive - follow tailwind sizing

* Rename Paragraph to Text

* fix build

* Remove outdated Divider example

* Implement the Emoji component + add examples (#102)

* Implement the Emoji component + add examples

* Add small emoji example

* Fix alignment with small emoji example

* Improve Emoji Component + add new examples

* Add more emojis + create new example

* Implement `List` component + add examples (#104)

* Implement List component + add examples

* Add additional props to List

* Fix build

* Don't use useState

* Clean up

* Add bullet lists + some refactoring + new examples

* Add social icons component (#105)

* Add social icons component

* Add Examples for social icons

* Delete unused imports, use <Text> instead of <p> tags in some examples

* Preview Mode (#103)

* Preview Mode

* Testing

* Testing

* Huge Opsie

* Testing email that has context

* Moving stuff around

* Fixing dev mode (#106)

Hopefully fixes dev mode

* Implement template emails for the minimal theme (#108)

* Implement pilot version of the minimal themed password change

* Fix compatibility issues with the template

* Fix build and compatibility with outlook

* add width to Container for compatibility

* fixing build

* Final touches on minimal-password-reset template

* Add new button component MinimalButton + create new minial template News

* Add links to socialicons in templates + new booking confirmation minimal themed template

* Add discount minimal example

* Add two new minimal templates

* Make the MinimalButton more modular

* Add review email template

* Add props to templates

* Mrege MinimalButton and our button component + refactor email templates

* Add last three minimal templates

* experimental build fix

* revert experimental build fix

* Add forgotten vars, move basePath outside of component

* Increase static page generation timeout from default 60s to 300s (#115)

increase static page generation timeout from default 60s to 300s

* Preview send form (#112)

* refactor: split preview send feature

* feat: cta button forwards ref

so it can be easily integrated in radix popover

* feat: preview send popover with inital form

* feat: improve form footer

* feat: status handling

* feat: trigger button states

* fix icon size

* feat add reusable popover component

* feat use our popover in send

* Folder structure (#117)

* chore move folders to /docs

* chore remove examples/component nesting folder

* fix import/alias paths

* chore: fonts to public

* chore move (email)preview from app

* Adding Stitches for Styling (#113)

* Adding Stitches for Styling

* inline css classes with juice when rendering html from react components

* Install encoding

* use regular object as const for themes

* refactor the theme structure

* use the new render util in components and preview

* tidying up + add comments for render utility

---------



* Code components (#121)

* feat add code/tabbed code components

mostly reused from existing implementations

* feat reuse new code components

inc fix code height in /preview

* create `Head` component + use it where needed (#123)

create new component - Head + use it where needed

* Adjusting the Button component to new theming solution (#124)

* refactor button component to not use theme + update examples

* Play around with rounded buttons - found a problem with the theme

* Fix pill buttons example

* Ditch stitches for buttons + rethink theme + updated button and badges and their examples

* tidy up

* fix comments

* Refactor Badges Component to work with the new theming (#125)

* add new theming to Badges and remove stitches dependency in Badge component

* remove stitches, juice and encoding - adjust codebase for these changes

* remove Head wrapper and adjust all imports of our wrapper

* remove render wrapper as we don't need it anymore

* static horizontal padding for badges on outlook

* improve compatibility with outlook

* tidying up

* Refactor all components to use the new theme + delete ThemeProvider (#126)

* finish dividers

* refactor Bulletlist

* Refactor List and Text

* Refactor button examples, fix imports in button

* Remove ThemeProvider

* Tidy up the examples

* add theme to Component `HeroSection` (#127)

* add theme to HeroSection

* fix img props, fix examples

* Add variant to examples

---------






---------






* Docs - installations (#130)

* feat initial mdx docs implementation

* feat docs highlighting

used 3rd party package for speed

* improve styling and highlighting

* refactor load demo in page and pass through scope

* feat more doc content

inc component source

* feat code el with copy button

* fix sort-keys was supposed to stay in lock

* fix post merge content update

* feat component example with headling

* feat dependencies installation test

* feat control examples with mxd

reusing ComponentExample existing component more

* fix apply not-prose on all code components

* refactor mdx comp naming and data passing

* feat add list docs to test docs features

* chore up rehype-pretty-code

* feat add simplified demo, remove examples from mdx

* feat conform examples comps names

keep singular vs plural as that one is easy to transform

* fix docs typography

* fix pre mobile overflows

* Pivot to standard MDX (#138)

* add mdx support

* get standard mdx working

* simplify next.config for our usecase

* make the standart mdx work

* standart mdx working the same way the remote mdx used to

* cleanup installationdocs directory

* cleanup index.ts from installationdocs

* upgrade shiki maybe build will succeed

* update types of react and react-dom

* revert failing commit

* clean up code

* remove unused code

* minor mdx content fixes

* move dynamic imports of mdx docs to examples/index.ts

* clean up errors, tidy up code

---------




* Remove text dependency from list component (#143)

* Remove text dependency from list component

* update installation.mdx for lists + small typo fix for badges installation.mdx

---------



* Create documentation for installation for all components (#146)

* add installation.mdx to button and divider component

* add installation.mdx to all components

* tidy up

* tidy up

* update README

* revert restructuring of README

* tidy up

* make Demo.tsx files more clear

* Create better docs in route `/components` (#150)

Create better docs in  route

* Small improvement of the installation docs (#151)

* Small improvement of the installation docs

* Make theming comment more clear

* fix /components styling (#147)

fix unify /components styling

* Add second variant for subscription dialog (#145)

* Add second variant for subscription dialog

* Update subscription dialog and redirects

* Add preview metadata and shared OG metadata (#142)

* Add preview metadata and shared OG metadata

* Move shared OG metadata to constants folder

* Add preview OG image

* fix build

---------



* remove leftover files that got in with merge of production

---------

Co-authored-by: Hector Sosa <[email protected]>
Co-authored-by: Jan Vorcak <[email protected]>
Co-authored-by: Jan Shanel <[email protected]>
Co-authored-by: Jan Shanel <[email protected]>
Co-authored-by: DanielPuchala <[email protected]>
ericvalcik added a commit that referenced this pull request Jul 21, 2023
* Adding Support for React (#86)

* Adding Support for React

* Removing invalid export

* Renaming missing component dir

* Added Default badge component

* Adding HTML to Code Previews

* Adding Formatter for HTML

* WithHeading

* Removing mjml in favor of React, also adding Shiki

* Updating Copy Button Index

* Adding Sample Component in each Category

* Adding HTML

---------

Co-authored-by: Jan Vorcak <[email protected]>

* Restructuring DX (#88)

* Finished Badge component with new examples (#90)

* Restructuring DX

* Add noBorder, pill and dot props to Badge primitive

* Fix Pill Badge example after resolving conflicts

* Improve examples, render badges with dot without display: flex

* Improve height of examples, remove unused imports on some places

---------

Co-authored-by: Hector Sosa <[email protected]>

* Hero section component (#95)

* Button component (#92)

* Migrate from npm to pnpm (#97)

* Disabling Syntax Highlighting for Development (#98)

* Disabling Syntax Highlighting for Development

* Cleanup previous .preview extension

* Removing unused property in shiki

* Introduce Modifiable themes with new component `ThemeProvider` (#96)

* Restructuring DX

* Add noBorder, pill and dot props to Badge primitive

* Fix Pill Badge example after resolving conflicts

* Improve examples, render badges with dot without display: flex

* Improve height of examples, remove unused imports on some places

* Add Button component + add examples of usage

* Create mapping for iframe heights in ComponentExample

* Use CSSProperties instead of imported Propery from 'csstype'

* Make proposed improvements

* Add sizes to buttons, adjust the examples, follow the design system

* 'Fork' the Button component from react.email and modify it so we get successful renders on outlook

* Tidy up the modified version of react.email's Button component

* Demo

* Implement ThemeProvider + integrate buttons

* ThemeProvider with Buttons implemented

* Integrate Badges to use the ThemeProvider

* Fix Button component to work properly with the new ThemeProvider + add new examples

* implement suggested changes

* update pnpm-lock.yaml

* remove folder types in mailingui and colocate types with themes

* fix build and warnings

---------

Co-authored-by: Hector Sosa <[email protected]>

* Add `Divider` component and an example (#99)

* Add divider + rename folders buttons to button and badges to badge

* Working version of the Divider with text

* tidy up the code

* Polish the divider component

* fix build

* fix build #2

* finish Divider component

* Clean up

* Clean up + in Divider add support for ThemeProvider

* Make resizing of dividers responsive

* Make default values more predictable

* Update Divider examples

* Create conditional type for DividerProps

* Add missing baseWidth to Divider example

* Make one example smaller and update the baseWidth accordingly

* Paragraph component (#100)

* Add divider + rename folders buttons to button and badges to badge

* Working version of the Divider with text

* tidy up the code

* Polish the divider component

* fix build

* fix build #2

* finish Divider component

* Clean up

* Clean up + in Divider add support for ThemeProvider

* Implement the Paragraph component + 3 examples

* Merge Paragraph and Text into one component - Text

* rename Text to Paragraph

* Add more functionality to our Paragraph component + create better examples

* Commit suggestion

* Improve the examples for Paragraphs

* Make the sizes more intuitive - follow tailwind sizing

* Rename Paragraph to Text

* fix build

* Remove outdated Divider example

* Implement the Emoji component + add examples (#102)

* Implement the Emoji component + add examples

* Add small emoji example

* Fix alignment with small emoji example

* Improve Emoji Component + add new examples

* Add more emojis + create new example

* Implement `List` component + add examples (#104)

* Implement List component + add examples

* Add additional props to List

* Fix build

* Don't use useState

* Clean up

* Add bullet lists + some refactoring + new examples

* Add social icons component (#105)

* Add social icons component

* Add Examples for social icons

* Delete unused imports, use <Text> instead of <p> tags in some examples

* Preview Mode (#103)

* Preview Mode

* Testing

* Testing

* Huge Opsie

* Testing email that has context

* Moving stuff around

* Fixing dev mode (#106)

Hopefully fixes dev mode

* Implement template emails for the minimal theme (#108)

* Implement pilot version of the minimal themed password change

* Fix compatibility issues with the template

* Fix build and compatibility with outlook

* add width to Container for compatibility

* fixing build

* Final touches on minimal-password-reset template

* Add new button component MinimalButton + create new minial template News

* Add links to socialicons in templates + new booking confirmation minimal themed template

* Add discount minimal example

* Add two new minimal templates

* Make the MinimalButton more modular

* Add review email template

* Add props to templates

* Mrege MinimalButton and our button component + refactor email templates

* Add last three minimal templates

* experimental build fix

* revert experimental build fix

* Add forgotten vars, move basePath outside of component

* Increase static page generation timeout from default 60s to 300s (#115)

increase static page generation timeout from default 60s to 300s

* Preview send form (#112)

* refactor: split preview send feature

* feat: cta button forwards ref

so it can be easily integrated in radix popover

* feat: preview send popover with inital form

* feat: improve form footer

* feat: status handling

* feat: trigger button states

* fix icon size

* feat add reusable popover component

* feat use our popover in send

* Folder structure (#117)

* chore move folders to /docs

* chore remove examples/component nesting folder

* fix import/alias paths

* chore: fonts to public

* chore move (email)preview from app

* Adding Stitches for Styling (#113)

* Adding Stitches for Styling

* inline css classes with juice when rendering html from react components

* Install encoding

* use regular object as const for themes

* refactor the theme structure

* use the new render util in components and preview

* tidying up + add comments for render utility

---------

Co-authored-by: eric valcik <[email protected]>

* Code components (#121)

* feat add code/tabbed code components

mostly reused from existing implementations

* feat reuse new code components

inc fix code height in /preview

* create `Head` component + use it where needed (#123)

create new component - Head + use it where needed

* Adjusting the Button component to new theming solution (#124)

* refactor button component to not use theme + update examples

* Play around with rounded buttons - found a problem with the theme

* Fix pill buttons example

* Ditch stitches for buttons + rethink theme + updated button and badges and their examples

* tidy up

* fix comments

* Refactor Badges Component to work with the new theming (#125)

* add new theming to Badges and remove stitches dependency in Badge component

* remove stitches, juice and encoding - adjust codebase for these changes

* remove Head wrapper and adjust all imports of our wrapper

* remove render wrapper as we don't need it anymore

* static horizontal padding for badges on outlook

* improve compatibility with outlook

* tidying up

* Refactor all components to use the new theme + delete ThemeProvider (#126)

* finish dividers

* refactor Bulletlist

* Refactor List and Text

* Refactor button examples, fix imports in button

* Remove ThemeProvider

* Tidy up the examples

* add theme to Component `HeroSection` (#127)

* add theme to HeroSection

* fix img props, fix examples

* Add variant to examples

* Sync `production` with `main` (#133)

* Release blog pages (#81)

Creating Blog pages (#37)

* Creating Blog pages

* Adding Static Params

* Refactoring and updating blog styles

* Package.lock rebase change

* Update 001.mdx

* Updated blog post

---------

Co-authored-by: Hector Sosa <[email protected]>

* Update production website (#132)

* Adding Support for React (#86)

* Adding Support for React

* Removing invalid export

* Renaming missing component dir

* Added Default badge component

* Adding HTML to Code Previews

* Adding Formatter for HTML

* WithHeading

* Removing mjml in favor of React, also adding Shiki

* Updating Copy Button Index

* Adding Sample Component in each Category

* Adding HTML

---------

Co-authored-by: Jan Vorcak <[email protected]>

* Restructuring DX (#88)

* Finished Badge component with new examples (#90)

* Restructuring DX

* Add noBorder, pill and dot props to Badge primitive

* Fix Pill Badge example after resolving conflicts

* Improve examples, render badges with dot without display: flex

* Improve height of examples, remove unused imports on some places

---------

Co-authored-by: Hector Sosa <[email protected]>

* Hero section component (#95)

* Button component (#92)

* Migrate from npm to pnpm (#97)

* Disabling Syntax Highlighting for Development (#98)

* Disabling Syntax Highlighting for Development

* Cleanup previous .preview extension

* Removing unused property in shiki

* Introduce Modifiable themes with new component `ThemeProvider` (#96)

* Restructuring DX

* Add noBorder, pill and dot props to Badge primitive

* Fix Pill Badge example after resolving conflicts

* Improve examples, render badges with dot without display: flex

* Improve height of examples, remove unused imports on some places

* Add Button component + add examples of usage

* Create mapping for iframe heights in ComponentExample

* Use CSSProperties instead of imported Propery from 'csstype'

* Make proposed improvements

* Add sizes to buttons, adjust the examples, follow the design system

* 'Fork' the Button component from react.email and modify it so we get successful renders on outlook

* Tidy up the modified version of react.email's Button component

* Demo

* Implement ThemeProvider + integrate buttons

* ThemeProvider with Buttons implemented

* Integrate Badges to use the ThemeProvider

* Fix Button component to work properly with the new ThemeProvider + add new examples

* implement suggested changes

* update pnpm-lock.yaml

* remove folder types in mailingui and colocate types with themes

* fix build and warnings

---------

Co-authored-by: Hector Sosa <[email protected]>

* Add `Divider` component and an example (#99)

* Add divider + rename folders buttons to button and badges to badge

* Working version of the Divider with text

* tidy up the code

* Polish the divider component

* fix build

* fix build #2

* finish Divider component

* Clean up

* Clean up + in Divider add support for ThemeProvider

* Make resizing of dividers responsive

* Make default values more predictable

* Update Divider examples

* Create conditional type for DividerProps

* Add missing baseWidth to Divider example

* Make one example smaller and update the baseWidth accordingly

* Paragraph component (#100)

* Add divider + rename folders buttons to button and badges to badge

* Working version of the Divider with text

* tidy up the code

* Polish the divider component

* fix build

* fix build #2

* finish Divider component

* Clean up

* Clean up + in Divider add support for ThemeProvider

* Implement the Paragraph component + 3 examples

* Merge Paragraph and Text into one component - Text

* rename Text to Paragraph

* Add more functionality to our Paragraph component + create better examples

* Commit suggestion

* Improve the examples for Paragraphs

* Make the sizes more intuitive - follow tailwind sizing

* Rename Paragraph to Text

* fix build

* Remove outdated Divider example

* Implement the Emoji component + add examples (#102)

* Implement the Emoji component + add examples

* Add small emoji example

* Fix alignment with small emoji example

* Improve Emoji Component + add new examples

* Add more emojis + create new example

* Implement `List` component + add examples (#104)

* Implement List component + add examples

* Add additional props to List

* Fix build

* Don't use useState

* Clean up

* Add bullet lists + some refactoring + new examples

* Add social icons component (#105)

* Add social icons component

* Add Examples for social icons

* Delete unused imports, use <Text> instead of <p> tags in some examples

* Preview Mode (#103)

* Preview Mode

* Testing

* Testing

* Huge Opsie

* Testing email that has context

* Moving stuff around

* Fixing dev mode (#106)

Hopefully fixes dev mode

* Implement template emails for the minimal theme (#108)

* Implement pilot version of the minimal themed password change

* Fix compatibility issues with the template

* Fix build and compatibility with outlook

* add width to Container for compatibility

* fixing build

* Final touches on minimal-password-reset template

* Add new button component MinimalButton + create new minial template News

* Add links to socialicons in templates + new booking confirmation minimal themed template

* Add discount minimal example

* Add two new minimal templates

* Make the MinimalButton more modular

* Add review email template

* Add props to templates

* Mrege MinimalButton and our button component + refactor email templates

* Add last three minimal templates

* experimental build fix

* revert experimental build fix

* Add forgotten vars, move basePath outside of component

* Increase static page generation timeout from default 60s to 300s (#115)

increase static page generation timeout from default 60s to 300s

* Preview send form (#112)

* refactor: split preview send feature

* feat: cta button forwards ref

so it can be easily integrated in radix popover

* feat: preview send popover with inital form

* feat: improve form footer

* feat: status handling

* feat: trigger button states

* fix icon size

* feat add reusable popover component

* feat use our popover in send

* Folder structure (#117)

* chore move folders to /docs

* chore remove examples/component nesting folder

* fix import/alias paths

* chore: fonts to public

* chore move (email)preview from app

* Adding Stitches for Styling (#113)

* Adding Stitches for Styling

* inline css classes with juice when rendering html from react components

* Install encoding

* use regular object as const for themes

* refactor the theme structure

* use the new render util in components and preview

* tidying up + add comments for render utility

---------

Co-authored-by: eric valcik <[email protected]>

* Code components (#121)

* feat add code/tabbed code components

mostly reused from existing implementations

* feat reuse new code components

inc fix code height in /preview

* create `Head` component + use it where needed (#123)

create new component - Head + use it where needed

* Adjusting the Button component to new theming solution (#124)

* refactor button component to not use theme + update examples

* Play around with rounded buttons - found a problem with the theme

* Fix pill buttons example

* Ditch stitches for buttons + rethink theme + updated button and badges and their examples

* tidy up

* fix comments

* Refactor Badges Component to work with the new theming (#125)

* add new theming to Badges and remove stitches dependency in Badge component

* remove stitches, juice and encoding - adjust codebase for these changes

* remove Head wrapper and adjust all imports of our wrapper

* remove render wrapper as we don't need it anymore

* static horizontal padding for badges on outlook

* improve compatibility with outlook

* tidying up

* Refactor all components to use the new theme + delete ThemeProvider (#126)

* finish dividers

* refactor Bulletlist

* Refactor List and Text

* Refactor button examples, fix imports in button

* Remove ThemeProvider

* Tidy up the examples

* add theme to Component `HeroSection` (#127)

* add theme to HeroSection

* fix img props, fix examples

* Add variant to examples

---------

Co-authored-by: Hector Sosa <[email protected]>
Co-authored-by: Jan Vorcak <[email protected]>
Co-authored-by: Jan Shanel <[email protected]>
Co-authored-by: Jan Shanel <[email protected]>

---------

Co-authored-by: Ján Vorčák <[email protected]>
Co-authored-by: Hector Sosa <[email protected]>
Co-authored-by: Jan Shanel <[email protected]>
Co-authored-by: Jan Shanel <[email protected]>

* Docs - installations (#130)

* feat initial mdx docs implementation

* feat docs highlighting

used 3rd party package for speed

* improve styling and highlighting

* refactor load demo in page and pass through scope

* feat more doc content

inc component source

* feat code el with copy button

* fix sort-keys was supposed to stay in lock

* fix post merge content update

* feat component example with headling

* feat dependencies installation test

* feat control examples with mxd

reusing ComponentExample existing component more

* fix apply not-prose on all code components

* refactor mdx comp naming and data passing

* feat add list docs to test docs features

* chore up rehype-pretty-code

* feat add simplified demo, remove examples from mdx

* feat conform examples comps names

keep singular vs plural as that one is easy to transform

* fix docs typography

* fix pre mobile overflows

* Pivot to standard MDX (#138)

* add mdx support

* get standard mdx working

* simplify next.config for our usecase

* make the standart mdx work

* standart mdx working the same way the remote mdx used to

* cleanup installationdocs directory

* cleanup index.ts from installationdocs

* upgrade shiki maybe build will succeed

* update types of react and react-dom

* revert failing commit

* clean up code

* remove unused code

* minor mdx content fixes

* move dynamic imports of mdx docs to examples/index.ts

* clean up errors, tidy up code

---------

Co-authored-by: Eric Valcik <[email protected]>
Co-authored-by: eric valcik <[email protected]>

* Remove text dependency from list component (#143)

* Remove text dependency from list component

* update installation.mdx for lists + small typo fix for badges installation.mdx

---------

Co-authored-by: eric valcik <[email protected]>

* Create documentation for installation for all components (#146)

* add installation.mdx to button and divider component

* add installation.mdx to all components

* tidy up

* tidy up

* update README

* revert restructuring of README

* tidy up

* make Demo.tsx files more clear

* Create better docs in route `/components` (#150)

Create better docs in  route

* Small improvement of the installation docs (#151)

* Small improvement of the installation docs

* Make theming comment more clear

* fix /components styling (#147)

fix unify /components styling

* Add second variant for subscription dialog (#145)

* Add second variant for subscription dialog

* Update subscription dialog and redirects

* Add preview metadata and shared OG metadata (#142)

* Add preview metadata and shared OG metadata

* Move shared OG metadata to constants folder

* Add preview OG image

* fix build

---------

Co-authored-by: eric valcik <[email protected]>

* remove leftover files that got in with merge of production

* Update production (#153) (#154)

* Adding Support for React (#86)

* Adding Support for React

* Removing invalid export

* Renaming missing component dir

* Added Default badge component

* Adding HTML to Code Previews

* Adding Formatter for HTML

* WithHeading

* Removing mjml in favor of React, also adding Shiki

* Updating Copy Button Index

* Adding Sample Component in each Category

* Adding HTML

---------



* Restructuring DX (#88)

* Finished Badge component with new examples (#90)

* Restructuring DX

* Add noBorder, pill and dot props to Badge primitive

* Fix Pill Badge example after resolving conflicts

* Improve examples, render badges with dot without display: flex

* Improve height of examples, remove unused imports on some places

---------



* Hero section component (#95)

* Button component (#92)

* Migrate from npm to pnpm (#97)

* Disabling Syntax Highlighting for Development (#98)

* Disabling Syntax Highlighting for Development

* Cleanup previous .preview extension

* Removing unused property in shiki

* Introduce Modifiable themes with new component `ThemeProvider` (#96)

* Restructuring DX

* Add noBorder, pill and dot props to Badge primitive

* Fix Pill Badge example after resolving conflicts

* Improve examples, render badges with dot without display: flex

* Improve height of examples, remove unused imports on some places

* Add Button component + add examples of usage

* Create mapping for iframe heights in ComponentExample

* Use CSSProperties instead of imported Propery from 'csstype'

* Make proposed improvements

* Add sizes to buttons, adjust the examples, follow the design system

* 'Fork' the Button component from react.email and modify it so we get successful renders on outlook

* Tidy up the modified version of react.email's Button component

* Demo

* Implement ThemeProvider + integrate buttons

* ThemeProvider with Buttons implemented

* Integrate Badges to use the ThemeProvider

* Fix Button component to work properly with the new ThemeProvider + add new examples

* implement suggested changes

* update pnpm-lock.yaml

* remove folder types in mailingui and colocate types with themes

* fix build and warnings

---------



* Add `Divider` component and an example (#99)

* Add divider + rename folders buttons to button and badges to badge

* Working version of the Divider with text

* tidy up the code

* Polish the divider component

* fix build

* fix build #2

* finish Divider component

* Clean up

* Clean up + in Divider add support for ThemeProvider

* Make resizing of dividers responsive

* Make default values more predictable

* Update Divider examples

* Create conditional type for DividerProps

* Add missing baseWidth to Divider example

* Make one example smaller and update the baseWidth accordingly

* Paragraph component (#100)

* Add divider + rename folders buttons to button and badges to badge

* Working version of the Divider with text

* tidy up the code

* Polish the divider component

* fix build

* fix build #2

* finish Divider component

* Clean up

* Clean up + in Divider add support for ThemeProvider

* Implement the Paragraph component + 3 examples

* Merge Paragraph and Text into one component - Text

* rename Text to Paragraph

* Add more functionality to our Paragraph component + create better examples

* Commit suggestion

* Improve the examples for Paragraphs

* Make the sizes more intuitive - follow tailwind sizing

* Rename Paragraph to Text

* fix build

* Remove outdated Divider example

* Implement the Emoji component + add examples (#102)

* Implement the Emoji component + add examples

* Add small emoji example

* Fix alignment with small emoji example

* Improve Emoji Component + add new examples

* Add more emojis + create new example

* Implement `List` component + add examples (#104)

* Implement List component + add examples

* Add additional props to List

* Fix build

* Don't use useState

* Clean up

* Add bullet lists + some refactoring + new examples

* Add social icons component (#105)

* Add social icons component

* Add Examples for social icons

* Delete unused imports, use <Text> instead of <p> tags in some examples

* Preview Mode (#103)

* Preview Mode

* Testing

* Testing

* Huge Opsie

* Testing email that has context

* Moving stuff around

* Fixing dev mode (#106)

Hopefully fixes dev mode

* Implement template emails for the minimal theme (#108)

* Implement pilot version of the minimal themed password change

* Fix compatibility issues with the template

* Fix build and compatibility with outlook

* add width to Container for compatibility

* fixing build

* Final touches on minimal-password-reset template

* Add new button component MinimalButton + create new minial template News

* Add links to socialicons in templates + new booking confirmation minimal themed template

* Add discount minimal example

* Add two new minimal templates

* Make the MinimalButton more modular

* Add review email template

* Add props to templates

* Mrege MinimalButton and our button component + refactor email templates

* Add last three minimal templates

* experimental build fix

* revert experimental build fix

* Add forgotten vars, move basePath outside of component

* Increase static page generation timeout from default 60s to 300s (#115)

increase static page generation timeout from default 60s to 300s

* Preview send form (#112)

* refactor: split preview send feature

* feat: cta button forwards ref

so it can be easily integrated in radix popover

* feat: preview send popover with inital form

* feat: improve form footer

* feat: status handling

* feat: trigger button states

* fix icon size

* feat add reusable popover component

* feat use our popover in send

* Folder structure (#117)

* chore move folders to /docs

* chore remove examples/component nesting folder

* fix import/alias paths

* chore: fonts to public

* chore move (email)preview from app

* Adding Stitches for Styling (#113)

* Adding Stitches for Styling

* inline css classes with juice when rendering html from react components

* Install encoding

* use regular object as const for themes

* refactor the theme structure

* use the new render util in components and preview

* tidying up + add comments for render utility

---------



* Code components (#121)

* feat add code/tabbed code components

mostly reused from existing implementations

* feat reuse new code components

inc fix code height in /preview

* create `Head` component + use it where needed (#123)

create new component - Head + use it where needed

* Adjusting the Button component to new theming solution (#124)

* refactor button component to not use theme + update examples

* Play around with rounded buttons - found a problem with the theme

* Fix pill buttons example

* Ditch stitches for buttons + rethink theme + updated button and badges and their examples

* tidy up

* fix comments

* Refactor Badges Component to work with the new theming (#125)

* add new theming to Badges and remove stitches dependency in Badge component

* remove stitches, juice and encoding - adjust codebase for these changes

* remove Head wrapper and adjust all imports of our wrapper

* remove render wrapper as we don't need it anymore

* static horizontal padding for badges on outlook

* improve compatibility with outlook

* tidying up

* Refactor all components to use the new theme + delete ThemeProvider (#126)

* finish dividers

* refactor Bulletlist

* Refactor List and Text

* Refactor button examples, fix imports in button

* Remove ThemeProvider

* Tidy up the examples

* add theme to Component `HeroSection` (#127)

* add theme to HeroSection

* fix img props, fix examples

* Add variant to examples

* Sync `production` with `main` (#133)

* Release blog pages (#81)

Creating Blog pages (#37)

* Creating Blog pages

* Adding Static Params

* Refactoring and updating blog styles

* Package.lock rebase change

* Update 001.mdx

* Updated blog post

---------



* Update production website (#132)

* Adding Support for React (#86)

* Adding Support for React

* Removing invalid export

* Renaming missing component dir

* Added Default badge component

* Adding HTML to Code Previews

* Adding Formatter for HTML

* WithHeading

* Removing mjml in favor of React, also adding Shiki

* Updating Copy Button Index

* Adding Sample Component in each Category

* Adding HTML

---------



* Restructuring DX (#88)

* Finished Badge component with new examples (#90)

* Restructuring DX

* Add noBorder, pill and dot props to Badge primitive

* Fix Pill Badge example after resolving conflicts

* Improve examples, render badges with dot without display: flex

* Improve height of examples, remove unused imports on some places

---------



* Hero section component (#95)

* Button component (#92)

* Migrate from npm to pnpm (#97)

* Disabling Syntax Highlighting for Development (#98)

* Disabling Syntax Highlighting for Development

* Cleanup previous .preview extension

* Removing unused property in shiki

* Introduce Modifiable themes with new component `ThemeProvider` (#96)

* Restructuring DX

* Add noBorder, pill and dot props to Badge primitive

* Fix Pill Badge example after resolving conflicts

* Improve examples, render badges with dot without display: flex

* Improve height of examples, remove unused imports on some places

* Add Button component + add examples of usage

* Create mapping for iframe heights in ComponentExample

* Use CSSProperties instead of imported Propery from 'csstype'

* Make proposed improvements

* Add sizes to buttons, adjust the examples, follow the design system

* 'Fork' the Button component from react.email and modify it so we get successful renders on outlook

* Tidy up the modified version of react.email's Button component

* Demo

* Implement ThemeProvider + integrate buttons

* ThemeProvider with Buttons implemented

* Integrate Badges to use the ThemeProvider

* Fix Button component to work properly with the new ThemeProvider + add new examples

* implement suggested changes

* update pnpm-lock.yaml

* remove folder types in mailingui and colocate types with themes

* fix build and warnings

---------



* Add `Divider` component and an example (#99)

* Add divider + rename folders buttons to button and badges to badge

* Working version of the Divider with text

* tidy up the code

* Polish the divider component

* fix build

* fix build #2

* finish Divider component

* Clean up

* Clean up + in Divider add support for ThemeProvider

* Make resizing of dividers responsive

* Make default values more predictable

* Update Divider examples

* Create conditional type for DividerProps

* Add missing baseWidth to Divider example

* Make one example smaller and update the baseWidth accordingly

* Paragraph component (#100)

* Add divider + rename folders buttons to button and badges to badge

* Working version of the Divider with text

* tidy up the code

* Polish the divider component

* fix build

* fix build #2

* finish Divider component

* Clean up

* Clean up + in Divider add support for ThemeProvider

* Implement the Paragraph component + 3 examples

* Merge Paragraph and Text into one component - Text

* rename Text to Paragraph

* Add more functionality to our Paragraph component + create better examples

* Commit suggestion

* Improve the examples for Paragraphs

* Make the sizes more intuitive - follow tailwind sizing

* Rename Paragraph to Text

* fix build

* Remove outdated Divider example

* Implement the Emoji component + add examples (#102)

* Implement the Emoji component + add examples

* Add small emoji example

* Fix alignment with small emoji example

* Improve Emoji Component + add new examples

* Add more emojis + create new example

* Implement `List` component + add examples (#104)

* Implement List component + add examples

* Add additional props to List

* Fix build

* Don't use useState

* Clean up

* Add bullet lists + some refactoring + new examples

* Add social icons component (#105)

* Add social icons component

* Add Examples for social icons

* Delete unused imports, use <Text> instead of <p> tags in some examples

* Preview Mode (#103)

* Preview Mode

* Testing

* Testing

* Huge Opsie

* Testing email that has context

* Moving stuff around

* Fixing dev mode (#106)

Hopefully fixes dev mode

* Implement template emails for the minimal theme (#108)

* Implement pilot version of the minimal themed password change

* Fix compatibility issues with the template

* Fix build and compatibility with outlook

* add width to Container for compatibility

* fixing build

* Final touches on minimal-password-reset template

* Add new button component MinimalButton + create new minial template News

* Add links to socialicons in templates + new booking confirmation minimal themed template

* Add discount minimal example

* Add two new minimal templates

* Make the MinimalButton more modular

* Add review email template

* Add props to templates

* Mrege MinimalButton and our button component + refactor email templates

* Add last three minimal templates

* experimental build fix

* revert experimental build fix

* Add forgotten vars, move basePath outside of component

* Increase static page generation timeout from default 60s to 300s (#115)

increase static page generation timeout from default 60s to 300s

* Preview send form (#112)

* refactor: split preview send feature

* feat: cta button forwards ref

so it can be easily integrated in radix popover

* feat: preview send popover with inital form

* feat: improve form footer

* feat: status handling

* feat: trigger button states

* fix icon size

* feat add reusable popover component

* feat use our popover in send

* Folder structure (#117)

* chore move folders to /docs

* chore remove examples/component nesting folder

* fix import/alias paths

* chore: fonts to public

* chore move (email)preview from app

* Adding Stitches for Styling (#113)

* Adding Stitches for Styling

* inline css classes with juice when rendering html from react components

* Install encoding

* use regular object as const for themes

* refactor the theme structure

* use the new render util in components and preview

* tidying up + add comments for render utility

---------



* Code components (#121)

* feat add code/tabbed code components

mostly reused from existing implementations

* feat reuse new code components

inc fix code height in /preview

* create `Head` component + use it where needed (#123)

create new component - Head + use it where needed

* Adjusting the Button component to new theming solution (#124)

* refactor button component to not use theme + update examples

* Play around with rounded buttons - found a problem with the theme

* Fix pill buttons example

* Ditch stitches for buttons + rethink theme + updated button and badges and their examples

* tidy up

* fix comments

* Refactor Badges Component to work with the new theming (#125)

* add new theming to Badges and remove stitches dependency in Badge component

* remove stitches, juice and encoding - adjust codebase for these changes

* remove Head wrapper and adjust all imports of our wrapper

* remove render wrapper as we don't need it anymore

* static horizontal padding for badges on outlook

* improve compatibility with outlook

* tidying up

* Refactor all components to use the new theme + delete ThemeProvider (#126)

* finish dividers

* refactor Bulletlist

* Refactor List and Text

* Refactor button examples, fix imports in button

* Remove ThemeProvider

* Tidy up the examples

* add theme to Component `HeroSection` (#127)

* add theme to HeroSection

* fix img props, fix examples

* Add variant to examples

---------






---------






* Docs - installations (#130)

* feat initial mdx docs implementation

* feat docs highlighting

used 3rd party package for speed

* improve styling and highlighting

* refactor load demo in page and pass through scope

* feat more doc content

inc component source

* feat code el with copy button

* fix sort-keys was supposed to stay in lock

* fix post merge content update

* feat component example with headling

* feat dependencies installation test

* feat control examples with mxd

reusing ComponentExample existing component more

* fix apply not-prose on all code components

* refactor mdx comp naming and data passing

* feat add list docs to test docs features

* chore up rehype-pretty-code

* feat add simplified demo, remove examples from mdx

* feat conform examples comps names

keep singular vs plural as that one is easy to transform

* fix docs typography

* fix pre mobile overflows

* Pivot to standard MDX (#138)

* add mdx support

* get standard mdx working

* simplify next.config for our usecase

* make the standart mdx work

* standart mdx working the same way the remote mdx used to

* cleanup installationdocs directory

* cleanup index.ts from installationdocs

* upgrade shiki maybe build will succeed

* update types of react and react-dom

* revert failing commit

* clean up code

* remove unused code

* minor mdx content fixes

* move dynamic imports of mdx docs to examples/index.ts

* clean up errors, tidy up code

---------




* Remove text dependency from list component (#143)

* Remove text dependency from list component

* update installation.mdx for lists + small typo fix for badges installation.mdx

---------



* Create documentation for installation for all components (#146)

* add installation.mdx to button and divider component

* add installation.mdx to all components

* tidy up

* tidy up

* update README

* revert restructuring of README

* tidy up

* make Demo.tsx files more clear

* Create better docs in route `/components` (#150)

Create better docs in  route

* Small improvement of the installation docs (#151)

* Small improvement of the installation docs

* Make theming comment more clear

* fix /components styling (#147)

fix unify /components styling

* Add second variant for subscription dialog (#145)

* Add second variant for subscription dialog

* Update subscription dialog and redirects

* Add preview metadata and shared OG metadata (#142)

* Add preview metadata and shared OG metadata

* Move shared OG metadata to constants folder

* Add preview OG image

* fix build

---------



* remove leftover files that got in with merge of production

---------

Co-authored-by: Hector Sosa <[email protected]>
Co-authored-by: Jan Vorcak <[email protected]>
Co-authored-by: Jan Shanel <[email protected]>
Co-authored-by: Jan Shanel <[email protected]>
Co-authored-by: DanielPuchala <[email protected]>

* Fading collapsible (#152)

* feat fading collapsible init

* enhance props, add doc variant

* Reuse collapsible in tabbed code

* fix preview min height

* rename fadingcollapsible -> collapsiblecontent

* refactor simplify props

* make doc border more subtle

* Preview mobile nav (#137)

* feat add mobile usable preview nav and layout

* refactor move mobile email selector to shell

both variant live in same file and removes props
but nav item placeholder used so nav remains same

* feat preview main nav link on mobile

* fix remove deprecated paragraph

* fix improve nav styling

* redo mobile menu as drawer

* improve preview nav responsivity

* fix tabbedcode overflow on small screens

* Remove unneeded label

* add pading to preview intro text

* Improve docs in `/components` (#157)

* improve installation docs

* improve UX on the homepage

* WIP: CLI init (#144)

* CLI init

* CLI init and add commands updated

* Fix base url in get /theme route

* Minor refactoring

* Add constants file

* Minor refactoring, add option to download required dependencies on init

* Add option to download all components

* Excluding cli from deployment

* Revert default base url to mailingui url

---------

Co-authored-by: Daniel <[email protected]>
Co-authored-by: Hector Sosa <[email protected]>

* Preparation for the release of the CLI package. (#167)

* Preparation for the release of the CLI package.

* Fixing Unrelated Linting Errors from Previous PR

---------

Co-authored-by: Hector Sosa <[email protected]>

* Adding automatic installation instructions (#168)

* Adding automatic installation instructions

* change bg of DocCollapsible + fix link in docs

---------

Co-authored-by: eric valcik <[email protected]>

* Refactor route`/components` to `/docs` + other small changes (#164)

* refactor route /components to /docs + other small changes

* fix comments + add rehype plugins for links

* tidying up

* improve styling for titles

* fix the links for titles and for regular links in text

* fix errors

* Add Tabs to pick from automatic and manual installation (#169)

* add tabs for automatic and manual install in /docs

* make the design of the tabs better imo

---------

Co-authored-by: Jan Vorcak <[email protected]>
Co-authored-by: Eric Valcik <[email protected]>
Co-authored-by: Jan Shanel <[email protected]>
Co-authored-by: Jan Shanel <[email protected]>
Co-authored-by: eric valcik <[email protected]>
Co-authored-by: DanielPuchala <[email protected]>
Co-authored-by: Daniel <[email protected]>
Co-authored-by: Alexander Macinský <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Creating Installation Integration
3 participants