Skip to content
This repository has been archived by the owner on Nov 28, 2022. It is now read-only.

ReadMe Flavored Markdown #306

Closed
wants to merge 85 commits into from
Closed

ReadMe Flavored Markdown #306

wants to merge 85 commits into from

Conversation

rafegoldberg
Copy link
Contributor

@rafegoldberg rafegoldberg commented Sep 12, 2019

🎟 Asana Main PR

A place to develop and discuss how we parse and render Markdown across ReadMe. (And to imagine how we might do it better!)

To Do

Check out the comments in this review thread.

Big Picture
  • Magic Blocks
    Remark-based parser and compilers to convert our magic [block:type] syntax to a more standard flavor of Markdown.
    • Parsers
      • embed
      • html
      • api-header
      • callout
      • code (multi-editor)
      • image (figure w/ caption)
      • parameters (tables)
    • Compilers
      • embed
      • html
      • api-header
      • callout
      • code
      • image
      • parameters
  • Markdown Renderers
    Split up our @readme/markdown text processor so we can export multiple renderers.
    • render.hub render the React component tree for the ReadMe front end
    • render.ast return the mdast tree
    • render.md   return plain-text Markdown
    • render.htm return an HTML string
  • Slate Integration

and way too much more...
still have to touch up alignment, th rendering, etc
- clean up (nix unused files + deps; simplify naming; etc.)
- validate and reformat shitty code
- add tests for magic block conversions
- add tests for multi md renderer exports
@rafegoldberg rafegoldberg added the type:enhancement A potential new feature to be added, or an improvement we could make label Sep 12, 2019
add extra markdown content fixtures to test against
collect custom parsers and compilers in to sub-directories
should take an AST obj and return a MD string
- move renderers to own files (marks, decorations, blocks)
- move commands/plugins to own files
@rafegoldberg rafegoldberg self-assigned this Sep 14, 2019
@rafegoldberg
Copy link
Contributor Author

rafegoldberg commented Dec 7, 2019

coverage is looking much better at this point. the next step is going to be a pain in the ass, but I guess we'll need to...

  • rebase this branch on origin/master
  • (and continue fixing up any/all unit tests, obviously)

...to bring in any recent changes, with all the various headaches associated with that process. we'd also want to

Copy link
Contributor Author

@rafegoldberg rafegoldberg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So I had a blast going through all 68 changed files. Here's an exhaustive-ish list of everything I'd like to clean up or revert before I rebase this branch back on master:

Comment on lines +36 to +37
"webpack": "^4.41.2",
"webpack-cli": "^3.3.10"
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • these can be reverted
  • actually, I believe all changes to the variable sub-package can be reverted! (except for this line:)
    module.exports.VariablesContext = VariablesContext

package.json Show resolved Hide resolved

module.exports = props => (
<div className="markdown-body">{markdown.render.hub(props.body, markdown.options)}</div>
);
Copy link
Contributor Author

@rafegoldberg rafegoldberg Dec 7, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.


this is a work in progress


pretty ballsy to just delete this whole file; requires much more testing

packages/markdown/components/CodeTabs/index.jsx Outdated Show resolved Hide resolved
packages/markdown/components/Callout/index.jsx Outdated Show resolved Hide resolved
@@ -0,0 +1,58 @@
/* eslint-disable */
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • remove all eslint-disable comments

Comment on lines -44 to -46
align: 'absmiddle',
height: '20',
width: '20',
Copy link
Contributor Author

@rafegoldberg rafegoldberg Dec 7, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Comment on lines +1 to +14
{
"presets": [
[
"@babel/env",
{
"targets": {
"browsers": ["last 2 versions"]
}
}
],
"@babel/preset-react"
],
"plugins": ["@babel/plugin-proposal-class-properties", "@babel/plugin-proposal-object-rest-spread"]
}
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • pretty sure this file can be reverted?
  • actually I'm pretty sure all changes to the syntax-highlighter sub-package can be reverted!

api: PropTypes.shape({
method: PropTypes.string.isRequired,
}),
slug: PropTypes.string.isRequired,
title: PropTypes.string.isRequired,
Copy link
Contributor Author

@rafegoldberg rafegoldberg Dec 7, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • revert b/c whyy

@erunion erunion deleted the beta/editor-hacking branch January 17, 2020 18:07
rafegoldberg added a commit that referenced this pull request Jan 23, 2020
* HACKZ

* hackz; dont judge!

* custom slate mdast serializer rules

and way too much more...

* more blocks!

* fix html viewport

* fix tables

still have to touch up alignment, th rendering, etc

* code quality

- clean up (nix unused files + deps; simplify naming; etc.)
- validate and reformat shitty code

* more code reformatting

* polish magic block parser

* code coverage

- add tests for magic block conversions
- add tests for multi md renderer exports

* fix ordered-list serialization

* add MD fixtures

add extra markdown content fixtures to test against

* restructure unified plugins

collect custom parsers and compilers in to sub-directories

* fix the render.md tests

should take an AST obj and return a MD string

* minor format fixes

* turn off commonmark

* block conversion commands

* initial restructure

- move renderers to own files (marks, decorations, blocks)
- move commands/plugins to own files

* simplify @readme/markdown method args

* minor schema fixes

* clean up

and some more mess

* better editor

* fix fig compiler

* syntax highlighting

* list fixups

* abstract slate blocks to configurable plugins

* initial ReadMe flavored MD parser

* implement flavored markdown

* editor polish

* adjacent code block parsing

- wrap single-break-separated blocks in tabbed editor
- show double-break-separated blocks separately

* cleanup

* initial front end components

- much to much exploration, as always
- not enough clean up

* add build processes to sub-packages

* restore default example

delete editor working files

* externalize hub's content rendering

- nix the entire content.jsx loop
- internalize components in @rdme/md
- use the md.render.hub

* build packages

* extract hub RdmeWrap renderer

* multi code styles

* simplify magic imag block conversion

don't wrap img in extra figure

* pare extraneous top-level dependencies

* nix explorative demo files

* clean markdown deps

* rename RdmeWrap to CodeTabs

* nix extraneous files

* clean up

* ...meaningful method names

christ, rafe...

* pare extraneous compilers

* restore inter-dependent refs

works locally, not in PR apps until all sub-packages have been deployed

* Update packages/markdown/components/Code.jsx

Co-Authored-By: domharrington <domharrington@users.noreply.github.com>

* Update packages/markdown/components/Code.jsx

Co-Authored-By: domharrington <domharrington@users.noreply.github.com>

* comments

* add magic-block parameter conversion

* convert magic block tables to markdown

* tokenize inline table cell contents

* cleanup

* chore: resolving some broken builds

* fix: downgrade sass-loader for webpack compat

https://stackoverflow.com/a/58230550/1341949

* fix: webpack 4 upgrade merge breakage

* fix: revert variables to use packaged component

* chore: build

* fix: broken var context export

* refactor(@markdown): clean up index methods, exports

* refactor(@markdown): move GlossaryItem to ./components

* refactor(@markdown/emoji)

move emoji schema in to ./processor

* fix(@markdown): scope hub components SCSS

* build(@markdown)

* run prettier

* internalize magicblock string normalization method

* rename markdown methods; clean up components

* clarity

- fix some markdown.react components

* add assorted MD fixture files

* prettier

* ¿can haz i tests?

- I am pretty sure I blew away some of the snapshots for anchors with baseURLs, and headings with anchors which seem likely to be critical to certain interactions in our docs!
- I am definitely still `skip`ping a few tests (for variable and glossary components)

* fix some hast hName stuff

* clean up eslint disables

* more eslint disable deleting!

* update packages

* pullin' it all together

* revert more unnecessary deps, config changes

* docs(markdown): update readme

* revert config files

* initial magic embed parser + transformer

* fix embed display

* don't require scss styles in js/jsx

it breaks the ReadMe build for whatever reason, even though this seems to work in the explorer...

* test build

* update readme

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* update readme

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* update readme

* update readme

* Update README.md

* Update README.md

* various clean up

* revert unnecessary changes

* more house cleaning!

* update readme

* update markdown processor

* update explorer integrations

* fix magic block table alignment

* update table head styling

* clean up

* fix components

- implement variable + glossary providers
- fix heading levels + anchor links

* update main MD styles

* update tests

* build

* style components

* fix heading ids for multiple headers of same ID

* fix code tabs meta regex parsing

* fix: remove extra image caption parsing

* fix header anchor incrementation

* chore: update beta/editor-rebase with latest master (#435)

* fix: Fixing a regression of additionalProperties keys not being editable (#404)

* fix: fixing a regression of additionalProperties keys not being editable

* chore: refactoring and simplifying the label logic

* chore: updating dist files

* v4.13.3

* chore: Bump css-loader from 3.2.1 to 3.3.2 (#405)

Bumps [css-loader](https://github.com/webpack-contrib/css-loader) from 3.2.1 to 3.3.2.
- [Release notes](https://github.com/webpack-contrib/css-loader/releases)
- [Changelog](https://github.com/webpack-contrib/css-loader/blob/master/CHANGELOG.md)
- [Commits](webpack-contrib/css-loader@v3.2.1...v3.3.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore: Bump @readme/eslint-config from 1.7.0 to 1.8.0 (#406)

* chore: Bump @readme/eslint-config from 1.7.0 to 1.8.0

Bumps [@readme/eslint-config](https://github.com/readmeio/eslint-config) from 1.7.0 to 1.8.0.
- [Release notes](https://github.com/readmeio/eslint-config/releases)
- [Changelog](https://github.com/readmeio/eslint-config/blob/master/CHANGELOG.md)
- [Commits](https://github.com/readmeio/eslint-config/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* style: resolving style issues with test formatting

* style: resolving style issues with test formatting

* style: resolving style issues with test formatting

* refactor: refer to new pointers for log (#407)

* ♻️ refer to new pointers for log

* ✅ fix the tests

* 🚨 prettier

* chore: dist updates

* v4.14.0

* chore: Bump @babel/preset-env from 7.7.6 to 7.7.7 (#413)

Bumps [@babel/preset-env](https://github.com/babel/babel) from 7.7.6 to 7.7.7.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md)
- [Commits](babel/babel@v7.7.6...v7.7.7)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps-dev): Bump @readme/eslint-config from 1.8.0 to 1.8.1 (#416)

Bumps [@readme/eslint-config](https://github.com/readmeio/eslint-config) from 1.8.0 to 1.8.1.
- [Release notes](https://github.com/readmeio/eslint-config/releases)
- [Changelog](https://github.com/readmeio/eslint-config/blob/master/CHANGELOG.md)
- [Commits](https://github.com/readmeio/eslint-config/commits/1.8.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps-dev): Bump eslint from 6.7.2 to 6.8.0 (#410)

Bumps [eslint](https://github.com/eslint/eslint) from 6.7.2 to 6.8.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md)
- [Commits](eslint/eslint@v6.7.2...v6.8.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps): Bump oas from 1.0.2 to 1.1.0 (#415)

Bumps [oas](https://github.com/readmeio/oas) from 1.0.2 to 1.1.0.
- [Release notes](https://github.com/readmeio/oas/releases)
- [Changelog](https://github.com/readmeio/oas/blob/master/CHANGELOG.md)
- [Commits](https://github.com/readmeio/oas/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps-dev): Bump enzyme from 3.10.0 to 3.11.0 (#408)

Bumps [enzyme](https://github.com/airbnb/enzyme/tree/HEAD/packages/enzyme) from 3.10.0 to 3.11.0.
- [Release notes](https://github.com/airbnb/enzyme/releases)
- [Changelog](https://github.com/airbnb/enzyme/blob/master/CHANGELOG.md)
- [Commits](https://github.com/airbnb/enzyme/commits/enzyme@3.11.0/packages/enzyme)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps-dev): Bump webpack from 4.41.2 to 4.41.4 (#409)

Bumps [webpack](https://github.com/webpack/webpack) from 4.41.2 to 4.41.4.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](webpack/webpack@v4.41.2...v4.41.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps-dev): Bump enzyme-adapter-react-16 from 1.15.1 to 1.15.2 (#417)

Bumps [enzyme-adapter-react-16](https://github.com/airbnb/enzyme/tree/HEAD/packages/enzyme-adapter-react-16) from 1.15.1 to 1.15.2.
- [Release notes](https://github.com/airbnb/enzyme/releases)
- [Changelog](https://github.com/airbnb/enzyme/blob/master/CHANGELOG.md)
- [Commits](https://github.com/airbnb/enzyme/commits/enzyme-adapter-react-16@1.15.2/packages/enzyme-adapter-react-16)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps): Bump css-loader from 3.3.2 to 3.4.0 (#411)

Bumps [css-loader](https://github.com/webpack-contrib/css-loader) from 3.3.2 to 3.4.0.
- [Release notes](https://github.com/webpack-contrib/css-loader/releases)
- [Changelog](https://github.com/webpack-contrib/css-loader/blob/master/CHANGELOG.md)
- [Commits](webpack-contrib/css-loader@v3.3.2...v3.4.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps): Bump codemirror from 5.49.2 to 5.50.0 (#412)

Bumps [codemirror](https://github.com/codemirror/CodeMirror) from 5.49.2 to 5.50.0.
- [Release notes](https://github.com/codemirror/CodeMirror/releases)
- [Changelog](https://github.com/codemirror/CodeMirror/blob/master/CHANGELOG.md)
- [Commits](codemirror/codemirror5@5.49.2...5.50.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps-dev): Bump style-loader from 1.0.1 to 1.1.1 (#414)

Bumps [style-loader](https://github.com/webpack-contrib/style-loader) from 1.0.1 to 1.1.1.
- [Release notes](https://github.com/webpack-contrib/style-loader/releases)
- [Changelog](https://github.com/webpack-contrib/style-loader/blob/master/CHANGELOG.md)
- [Commits](webpack-contrib/style-loader@v1.0.1...v1.1.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps-dev): Bump @readme/eslint-config from 1.8.1 to 1.9.0 (#424)

Bumps [@readme/eslint-config](https://github.com/readmeio/eslint-config) from 1.8.1 to 1.9.0.
- [Release notes](https://github.com/readmeio/eslint-config/releases)
- [Changelog](https://github.com/readmeio/eslint-config/blob/master/CHANGELOG.md)
- [Commits](readmeio/standards@1.8.1...1.9.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps-dev): Bump lerna from 3.19.0 to 3.20.2 (#428)

Bumps [lerna](https://github.com/lerna/lerna/tree/HEAD/core/lerna) from 3.19.0 to 3.20.2.
- [Release notes](https://github.com/lerna/lerna/releases)
- [Changelog](https://github.com/lerna/lerna/blob/master/core/lerna/CHANGELOG.md)
- [Commits](https://github.com/lerna/lerna/commits/v3.20.2/core/lerna)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps-dev): Bump nock from 11.7.0 to 11.7.1 (#425)

Bumps [nock](https://github.com/nock/nock) from 11.7.0 to 11.7.1.
- [Release notes](https://github.com/nock/nock/releases)
- [Changelog](https://github.com/nock/nock/blob/master/CHANGELOG.md)
- [Commits](nock/nock@v11.7.0...v11.7.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps): [Security] Bump handlebars from 4.1.2 to 4.5.3 (#418)

Bumps [handlebars](https://github.com/wycats/handlebars.js) from 4.1.2 to 4.5.3. **This update includes a security fix.**
- [Release notes](https://github.com/wycats/handlebars.js/releases)
- [Changelog](https://github.com/wycats/handlebars.js/blob/master/release-notes.md)
- [Commits](handlebars-lang/handlebars.js@v4.1.2...v4.5.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps-dev): Bump style-loader from 1.1.1 to 1.1.2 (#419)

Bumps [style-loader](https://github.com/webpack-contrib/style-loader) from 1.1.1 to 1.1.2.
- [Release notes](https://github.com/webpack-contrib/style-loader/releases)
- [Changelog](https://github.com/webpack-contrib/style-loader/blob/master/CHANGELOG.md)
- [Commits](webpack-contrib/style-loader@v1.1.1...v1.1.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps-dev): Bump webpack-dev-server from 3.9.0 to 3.10.1 (#421)

Bumps [webpack-dev-server](https://github.com/webpack/webpack-dev-server) from 3.9.0 to 3.10.1.
- [Release notes](https://github.com/webpack/webpack-dev-server/releases)
- [Changelog](https://github.com/webpack/webpack-dev-server/blob/v3.10.1/CHANGELOG.md)
- [Commits](webpack/webpack-dev-server@v3.9.0...v3.10.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps-dev): Bump @babel/core from 7.7.5 to 7.7.7 (#422)

Bumps [@babel/core](https://github.com/babel/babel) from 7.7.5 to 7.7.7.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md)
- [Commits](babel/babel@v7.7.5...v7.7.7)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps-dev): Bump webpack from 4.41.4 to 4.41.5 (#423)

Bumps [webpack](https://github.com/webpack/webpack) from 4.41.4 to 4.41.5.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](webpack/webpack@v4.41.4...v4.41.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps-dev): Bump css-loader from 3.4.0 to 3.4.1 (#426)

Bumps [css-loader](https://github.com/webpack-contrib/css-loader) from 3.4.0 to 3.4.1.
- [Release notes](https://github.com/webpack-contrib/css-loader/releases)
- [Changelog](https://github.com/webpack-contrib/css-loader/blob/master/CHANGELOG.md)
- [Commits](webpack-contrib/css-loader@v3.4.0...v3.4.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps): Bump codemirror from 5.50.0 to 5.50.2 (#427)

Bumps [codemirror](https://github.com/codemirror/CodeMirror) from 5.50.0 to 5.50.2.
- [Release notes](https://github.com/codemirror/CodeMirror/releases)
- [Changelog](https://github.com/codemirror/CodeMirror/blob/master/CHANGELOG.md)
- [Commits](codemirror/codemirror5@5.50.0...5.50.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* test: updating an out of date fixture that was breaking the local demo (#429)

* chore(dev-deps): replacing uglifyjs-webpack-plugin with terser-webpack-plugin (#430)

* test: removing codeclimate from our builds (#432)

* fix: align params to top (#431)

* chore: dist updates

* v4.15.0

* test: setting up a github workflow for running unit tests (#434)

* test: setting up a github workflow for running unit tests

* docs: updating readmes with a github workflow ci badge

* fix: resolving some eslint callouts

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Sean <dokko1230@gmail.com>
Co-authored-by: Rafe Goldberg <rafegoldberg@gmail.com>

* fix: coverage report handlebars instance errors

Fix per this issue: jestjs/jest#9396 (comment)

* chore: update sanitization schema

* chore: update tests

- remove end line breaks
- dont expect user content prefixs
- dont allow extraneous p tags in markup
- update snapshots

* test: move var + glossary tests

- move tests in to components.test.js
- render react md w/ context providers
- update snapshots

* test: rdmd react component rendering

* test: reenable coverage reporting

* make ALMOST all tests ALMOST work

* fix: header anchor incrementation

* fix tests

* chore: remove api-explorer custom magic block parsers

* fix image captions for magic blocks

* test: magic img blocks with captions

* fix: suppress pinned content sidebar

...for now

* fix: render pinned text blocks

* fix three column layout

* fix two col css

* more css fixes

* fix layout themes

* style: scroll CodeTabs-toolbar x-overflow content

* style: extract markdown overrides in explorer styles

* style: markdown components

* fix: pre-markdown normalization

append a normal, rather than a non-breaking, space at end of str

* test: update snapshots

to account for updated newline normalization

* update readme

* unskip tests

* clean up Code component

* rename magic block test suite

* nix unnecessary markdown test files

* clean up magic block parser

* revert petstore example

* revert explorer dist changes

* revert api-logs dist

* clean up test snapshots

* move test data vars in to respective tests

* update readme

* require src for images

* fix eslint issues

* fix tabbed template strings

* Update packages/api-explorer/src/block-types/Content.jsx

Co-Authored-By: Jon Ursenbach <erunion@users.noreply.github.com>

* Update packages/markdown/.babelrc

Co-Authored-By: Jon Ursenbach <erunion@users.noreply.github.com>

* Update packages/markdown/.jsinspectrc

Co-Authored-By: Jon Ursenbach <erunion@users.noreply.github.com>

* Update packages/markdown/README.md

Co-Authored-By: Jon Ursenbach <erunion@users.noreply.github.com>

* dont run embedly from the front end

breaks rdmd embeds; still work for magicblocks!

* update test expectations

* nix comment

Co-authored-by: domharrington <domharrington@users.noreply.github.com>
Co-authored-by: Jon Ursenbach <erunion@users.noreply.github.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Sean <dokko1230@gmail.com>
erunion added a commit that referenced this pull request Mar 11, 2020
* ReadMe Flavored Markdown (#306 Rebase) (#398)

* HACKZ

* hackz; dont judge!

* custom slate mdast serializer rules

and way too much more...

* more blocks!

* fix html viewport

* fix tables

still have to touch up alignment, th rendering, etc

* code quality

- clean up (nix unused files + deps; simplify naming; etc.)
- validate and reformat shitty code

* more code reformatting

* polish magic block parser

* code coverage

- add tests for magic block conversions
- add tests for multi md renderer exports

* fix ordered-list serialization

* add MD fixtures

add extra markdown content fixtures to test against

* restructure unified plugins

collect custom parsers and compilers in to sub-directories

* fix the render.md tests

should take an AST obj and return a MD string

* minor format fixes

* turn off commonmark

* block conversion commands

* initial restructure

- move renderers to own files (marks, decorations, blocks)
- move commands/plugins to own files

* simplify @readme/markdown method args

* minor schema fixes

* clean up

and some more mess

* better editor

* fix fig compiler

* syntax highlighting

* list fixups

* abstract slate blocks to configurable plugins

* initial ReadMe flavored MD parser

* implement flavored markdown

* editor polish

* adjacent code block parsing

- wrap single-break-separated blocks in tabbed editor
- show double-break-separated blocks separately

* cleanup

* initial front end components

- much to much exploration, as always
- not enough clean up

* add build processes to sub-packages

* restore default example

delete editor working files

* externalize hub's content rendering

- nix the entire content.jsx loop
- internalize components in @rdme/md
- use the md.render.hub

* build packages

* extract hub RdmeWrap renderer

* multi code styles

* simplify magic imag block conversion

don't wrap img in extra figure

* pare extraneous top-level dependencies

* nix explorative demo files

* clean markdown deps

* rename RdmeWrap to CodeTabs

* nix extraneous files

* clean up

* ...meaningful method names

christ, rafe...

* pare extraneous compilers

* restore inter-dependent refs

works locally, not in PR apps until all sub-packages have been deployed

* Update packages/markdown/components/Code.jsx

Co-Authored-By: domharrington <domharrington@users.noreply.github.com>

* Update packages/markdown/components/Code.jsx

Co-Authored-By: domharrington <domharrington@users.noreply.github.com>

* comments

* add magic-block parameter conversion

* convert magic block tables to markdown

* tokenize inline table cell contents

* cleanup

* chore: resolving some broken builds

* fix: downgrade sass-loader for webpack compat

https://stackoverflow.com/a/58230550/1341949

* fix: webpack 4 upgrade merge breakage

* fix: revert variables to use packaged component

* chore: build

* fix: broken var context export

* refactor(@markdown): clean up index methods, exports

* refactor(@markdown): move GlossaryItem to ./components

* refactor(@markdown/emoji)

move emoji schema in to ./processor

* fix(@markdown): scope hub components SCSS

* build(@markdown)

* run prettier

* internalize magicblock string normalization method

* rename markdown methods; clean up components

* clarity

- fix some markdown.react components

* add assorted MD fixture files

* prettier

* ¿can haz i tests?

- I am pretty sure I blew away some of the snapshots for anchors with baseURLs, and headings with anchors which seem likely to be critical to certain interactions in our docs!
- I am definitely still `skip`ping a few tests (for variable and glossary components)

* fix some hast hName stuff

* clean up eslint disables

* more eslint disable deleting!

* update packages

* pullin' it all together

* revert more unnecessary deps, config changes

* docs(markdown): update readme

* revert config files

* initial magic embed parser + transformer

* fix embed display

* don't require scss styles in js/jsx

it breaks the ReadMe build for whatever reason, even though this seems to work in the explorer...

* test build

* update readme

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* update readme

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* update readme

* update readme

* Update README.md

* Update README.md

* various clean up

* revert unnecessary changes

* more house cleaning!

* update readme

* update markdown processor

* update explorer integrations

* fix magic block table alignment

* update table head styling

* clean up

* fix components

- implement variable + glossary providers
- fix heading levels + anchor links

* update main MD styles

* update tests

* build

* style components

* fix heading ids for multiple headers of same ID

* fix code tabs meta regex parsing

* fix: remove extra image caption parsing

* fix header anchor incrementation

* chore: update beta/editor-rebase with latest master (#435)

* fix: Fixing a regression of additionalProperties keys not being editable (#404)

* fix: fixing a regression of additionalProperties keys not being editable

* chore: refactoring and simplifying the label logic

* chore: updating dist files

* v4.13.3

* chore: Bump css-loader from 3.2.1 to 3.3.2 (#405)

Bumps [css-loader](https://github.com/webpack-contrib/css-loader) from 3.2.1 to 3.3.2.
- [Release notes](https://github.com/webpack-contrib/css-loader/releases)
- [Changelog](https://github.com/webpack-contrib/css-loader/blob/master/CHANGELOG.md)
- [Commits](webpack-contrib/css-loader@v3.2.1...v3.3.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore: Bump @readme/eslint-config from 1.7.0 to 1.8.0 (#406)

* chore: Bump @readme/eslint-config from 1.7.0 to 1.8.0

Bumps [@readme/eslint-config](https://github.com/readmeio/eslint-config) from 1.7.0 to 1.8.0.
- [Release notes](https://github.com/readmeio/eslint-config/releases)
- [Changelog](https://github.com/readmeio/eslint-config/blob/master/CHANGELOG.md)
- [Commits](https://github.com/readmeio/eslint-config/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* style: resolving style issues with test formatting

* style: resolving style issues with test formatting

* style: resolving style issues with test formatting

* refactor: refer to new pointers for log (#407)

* ♻️ refer to new pointers for log

* ✅ fix the tests

* 🚨 prettier

* chore: dist updates

* v4.14.0

* chore: Bump @babel/preset-env from 7.7.6 to 7.7.7 (#413)

Bumps [@babel/preset-env](https://github.com/babel/babel) from 7.7.6 to 7.7.7.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md)
- [Commits](babel/babel@v7.7.6...v7.7.7)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps-dev): Bump @readme/eslint-config from 1.8.0 to 1.8.1 (#416)

Bumps [@readme/eslint-config](https://github.com/readmeio/eslint-config) from 1.8.0 to 1.8.1.
- [Release notes](https://github.com/readmeio/eslint-config/releases)
- [Changelog](https://github.com/readmeio/eslint-config/blob/master/CHANGELOG.md)
- [Commits](https://github.com/readmeio/eslint-config/commits/1.8.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps-dev): Bump eslint from 6.7.2 to 6.8.0 (#410)

Bumps [eslint](https://github.com/eslint/eslint) from 6.7.2 to 6.8.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md)
- [Commits](eslint/eslint@v6.7.2...v6.8.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps): Bump oas from 1.0.2 to 1.1.0 (#415)

Bumps [oas](https://github.com/readmeio/oas) from 1.0.2 to 1.1.0.
- [Release notes](https://github.com/readmeio/oas/releases)
- [Changelog](https://github.com/readmeio/oas/blob/master/CHANGELOG.md)
- [Commits](https://github.com/readmeio/oas/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps-dev): Bump enzyme from 3.10.0 to 3.11.0 (#408)

Bumps [enzyme](https://github.com/airbnb/enzyme/tree/HEAD/packages/enzyme) from 3.10.0 to 3.11.0.
- [Release notes](https://github.com/airbnb/enzyme/releases)
- [Changelog](https://github.com/airbnb/enzyme/blob/master/CHANGELOG.md)
- [Commits](https://github.com/airbnb/enzyme/commits/enzyme@3.11.0/packages/enzyme)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps-dev): Bump webpack from 4.41.2 to 4.41.4 (#409)

Bumps [webpack](https://github.com/webpack/webpack) from 4.41.2 to 4.41.4.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](webpack/webpack@v4.41.2...v4.41.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps-dev): Bump enzyme-adapter-react-16 from 1.15.1 to 1.15.2 (#417)

Bumps [enzyme-adapter-react-16](https://github.com/airbnb/enzyme/tree/HEAD/packages/enzyme-adapter-react-16) from 1.15.1 to 1.15.2.
- [Release notes](https://github.com/airbnb/enzyme/releases)
- [Changelog](https://github.com/airbnb/enzyme/blob/master/CHANGELOG.md)
- [Commits](https://github.com/airbnb/enzyme/commits/enzyme-adapter-react-16@1.15.2/packages/enzyme-adapter-react-16)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps): Bump css-loader from 3.3.2 to 3.4.0 (#411)

Bumps [css-loader](https://github.com/webpack-contrib/css-loader) from 3.3.2 to 3.4.0.
- [Release notes](https://github.com/webpack-contrib/css-loader/releases)
- [Changelog](https://github.com/webpack-contrib/css-loader/blob/master/CHANGELOG.md)
- [Commits](webpack-contrib/css-loader@v3.3.2...v3.4.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps): Bump codemirror from 5.49.2 to 5.50.0 (#412)

Bumps [codemirror](https://github.com/codemirror/CodeMirror) from 5.49.2 to 5.50.0.
- [Release notes](https://github.com/codemirror/CodeMirror/releases)
- [Changelog](https://github.com/codemirror/CodeMirror/blob/master/CHANGELOG.md)
- [Commits](codemirror/codemirror5@5.49.2...5.50.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps-dev): Bump style-loader from 1.0.1 to 1.1.1 (#414)

Bumps [style-loader](https://github.com/webpack-contrib/style-loader) from 1.0.1 to 1.1.1.
- [Release notes](https://github.com/webpack-contrib/style-loader/releases)
- [Changelog](https://github.com/webpack-contrib/style-loader/blob/master/CHANGELOG.md)
- [Commits](webpack-contrib/style-loader@v1.0.1...v1.1.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps-dev): Bump @readme/eslint-config from 1.8.1 to 1.9.0 (#424)

Bumps [@readme/eslint-config](https://github.com/readmeio/eslint-config) from 1.8.1 to 1.9.0.
- [Release notes](https://github.com/readmeio/eslint-config/releases)
- [Changelog](https://github.com/readmeio/eslint-config/blob/master/CHANGELOG.md)
- [Commits](readmeio/standards@1.8.1...1.9.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps-dev): Bump lerna from 3.19.0 to 3.20.2 (#428)

Bumps [lerna](https://github.com/lerna/lerna/tree/HEAD/core/lerna) from 3.19.0 to 3.20.2.
- [Release notes](https://github.com/lerna/lerna/releases)
- [Changelog](https://github.com/lerna/lerna/blob/master/core/lerna/CHANGELOG.md)
- [Commits](https://github.com/lerna/lerna/commits/v3.20.2/core/lerna)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps-dev): Bump nock from 11.7.0 to 11.7.1 (#425)

Bumps [nock](https://github.com/nock/nock) from 11.7.0 to 11.7.1.
- [Release notes](https://github.com/nock/nock/releases)
- [Changelog](https://github.com/nock/nock/blob/master/CHANGELOG.md)
- [Commits](nock/nock@v11.7.0...v11.7.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps): [Security] Bump handlebars from 4.1.2 to 4.5.3 (#418)

Bumps [handlebars](https://github.com/wycats/handlebars.js) from 4.1.2 to 4.5.3. **This update includes a security fix.**
- [Release notes](https://github.com/wycats/handlebars.js/releases)
- [Changelog](https://github.com/wycats/handlebars.js/blob/master/release-notes.md)
- [Commits](handlebars-lang/handlebars.js@v4.1.2...v4.5.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps-dev): Bump style-loader from 1.1.1 to 1.1.2 (#419)

Bumps [style-loader](https://github.com/webpack-contrib/style-loader) from 1.1.1 to 1.1.2.
- [Release notes](https://github.com/webpack-contrib/style-loader/releases)
- [Changelog](https://github.com/webpack-contrib/style-loader/blob/master/CHANGELOG.md)
- [Commits](webpack-contrib/style-loader@v1.1.1...v1.1.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps-dev): Bump webpack-dev-server from 3.9.0 to 3.10.1 (#421)

Bumps [webpack-dev-server](https://github.com/webpack/webpack-dev-server) from 3.9.0 to 3.10.1.
- [Release notes](https://github.com/webpack/webpack-dev-server/releases)
- [Changelog](https://github.com/webpack/webpack-dev-server/blob/v3.10.1/CHANGELOG.md)
- [Commits](webpack/webpack-dev-server@v3.9.0...v3.10.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps-dev): Bump @babel/core from 7.7.5 to 7.7.7 (#422)

Bumps [@babel/core](https://github.com/babel/babel) from 7.7.5 to 7.7.7.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/master/CHANGELOG.md)
- [Commits](babel/babel@v7.7.5...v7.7.7)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps-dev): Bump webpack from 4.41.4 to 4.41.5 (#423)

Bumps [webpack](https://github.com/webpack/webpack) from 4.41.4 to 4.41.5.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](webpack/webpack@v4.41.4...v4.41.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps-dev): Bump css-loader from 3.4.0 to 3.4.1 (#426)

Bumps [css-loader](https://github.com/webpack-contrib/css-loader) from 3.4.0 to 3.4.1.
- [Release notes](https://github.com/webpack-contrib/css-loader/releases)
- [Changelog](https://github.com/webpack-contrib/css-loader/blob/master/CHANGELOG.md)
- [Commits](webpack-contrib/css-loader@v3.4.0...v3.4.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* chore(deps): Bump codemirror from 5.50.0 to 5.50.2 (#427)

Bumps [codemirror](https://github.com/codemirror/CodeMirror) from 5.50.0 to 5.50.2.
- [Release notes](https://github.com/codemirror/CodeMirror/releases)
- [Changelog](https://github.com/codemirror/CodeMirror/blob/master/CHANGELOG.md)
- [Commits](codemirror/codemirror5@5.50.0...5.50.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* test: updating an out of date fixture that was breaking the local demo (#429)

* chore(dev-deps): replacing uglifyjs-webpack-plugin with terser-webpack-plugin (#430)

* test: removing codeclimate from our builds (#432)

* fix: align params to top (#431)

* chore: dist updates

* v4.15.0

* test: setting up a github workflow for running unit tests (#434)

* test: setting up a github workflow for running unit tests

* docs: updating readmes with a github workflow ci badge

* fix: resolving some eslint callouts

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Sean <dokko1230@gmail.com>
Co-authored-by: Rafe Goldberg <rafegoldberg@gmail.com>

* fix: coverage report handlebars instance errors

Fix per this issue: jestjs/jest#9396 (comment)

* chore: update sanitization schema

* chore: update tests

- remove end line breaks
- dont expect user content prefixs
- dont allow extraneous p tags in markup
- update snapshots

* test: move var + glossary tests

- move tests in to components.test.js
- render react md w/ context providers
- update snapshots

* test: rdmd react component rendering

* test: reenable coverage reporting

* make ALMOST all tests ALMOST work

* fix: header anchor incrementation

* fix tests

* chore: remove api-explorer custom magic block parsers

* fix image captions for magic blocks

* test: magic img blocks with captions

* fix: suppress pinned content sidebar

...for now

* fix: render pinned text blocks

* fix three column layout

* fix two col css

* more css fixes

* fix layout themes

* style: scroll CodeTabs-toolbar x-overflow content

* style: extract markdown overrides in explorer styles

* style: markdown components

* fix: pre-markdown normalization

append a normal, rather than a non-breaking, space at end of str

* test: update snapshots

to account for updated newline normalization

* update readme

* unskip tests

* clean up Code component

* rename magic block test suite

* nix unnecessary markdown test files

* clean up magic block parser

* revert petstore example

* revert explorer dist changes

* revert api-logs dist

* clean up test snapshots

* move test data vars in to respective tests

* update readme

* require src for images

* fix eslint issues

* fix tabbed template strings

* Update packages/api-explorer/src/block-types/Content.jsx

Co-Authored-By: Jon Ursenbach <erunion@users.noreply.github.com>

* Update packages/markdown/.babelrc

Co-Authored-By: Jon Ursenbach <erunion@users.noreply.github.com>

* Update packages/markdown/.jsinspectrc

Co-Authored-By: Jon Ursenbach <erunion@users.noreply.github.com>

* Update packages/markdown/README.md

Co-Authored-By: Jon Ursenbach <erunion@users.noreply.github.com>

* dont run embedly from the front end

breaks rdmd embeds; still work for magicblocks!

* update test expectations

* nix comment

Co-authored-by: domharrington <domharrington@users.noreply.github.com>
Co-authored-by: Jon Ursenbach <erunion@users.noreply.github.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Sean <dokko1230@gmail.com>

* chore: resolving some conflicts in the package lock files

* chore: removing last references to circleci

* chore: update dist files

* v5.0.0-alpha.0

* v5.0.0-alpha.1

* v5.0.0-alpha.2

* v5.0.0-alpha.3

* chore: resolving some package-lock discrepancies

* build: updating dist files

* v5.0.0-alpha.4

* fix(markdown@v5): fix magic block null cases. (#508)

- empty heading blocks
- empty image blocks
- empty embed blocks
- non standard callout
- blank table headers

- update tests

* chore: updating the v5 branch (#515)

* merging master into release/v5

* chore: resolving issues with package lockfiles

* chore(deps): fixing version differences on markdown-magic

* style: silencing some unsafe regex errors

* feat: backporting the legacy markdown engine to run alongside the new (#516)

Co-authored-by: Rafe Goldberg <rafegoldberg@gmail.com>
Co-authored-by: domharrington <domharrington@users.noreply.github.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Sean <dokko1230@gmail.com>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
exploration type:enhancement A potential new feature to be added, or an improvement we could make
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants