├── .eslintignore ├── test ├── fixtures │ ├── simple.md │ ├── sections │ │ ├── header.md │ │ ├── paragraph.md │ │ ├── paragraphwithlink.md │ │ ├── headerparagraph.md │ │ ├── 2images.md │ │ ├── headerimage.md │ │ ├── herosection.md │ │ ├── headerlist.md │ │ ├── headerparaimage.md │ │ ├── headerpara2images.md │ │ ├── header.json │ │ ├── paragraph.json │ │ ├── 2images.json │ │ ├── headerparagraph.json │ │ ├── paragraphwithlink.json │ │ ├── headerimage.json │ │ └── headerparaimage.json │ ├── smartypants.md │ ├── broken-filters.md │ ├── forms.md │ ├── heading-ids.md │ ├── simple.json │ ├── headings.md │ ├── confusing.md │ ├── image-rewritten-example.html │ ├── smartypants.json │ ├── simple-links.md │ ├── icon-example.md │ ├── forms.json │ ├── wordembeds.md │ ├── googleembeds.md │ └── index-unmodified.md ├── setup-env.js └── split-sections.test.js ├── .github ├── org-project-bot.yaml ├── ISSUE_TEMPLATE │ ├── discussion.md │ ├── feature_request.md │ └── bug_report.md └── workflows │ ├── wip.yaml │ ├── semver-check.yaml │ └── semantic-release.yaml ├── .gitattributes ├── .husky └── pre-commit ├── index.d.ts ├── .gitignore ├── .npmignore ├── .mocha-multi.json ├── .nycrc.json ├── .renovaterc.json ├── src ├── schemas │ ├── mdast.description.md │ ├── content.description.md │ ├── mdast.schema.cjs │ ├── position.schema.json │ ├── textcoordinates.schema.json │ └── index.cjs ├── defaults │ ├── html.pre.js │ ├── json.pre.js │ └── xml.pre.js ├── package.cjs ├── html │ ├── make-html.js │ ├── set-content-type.js │ ├── coerce-secrets.js │ ├── smartypants.js │ ├── validate.js │ ├── removeHlxProps.js │ ├── flag-esi.js │ ├── html-to-vdom.js │ ├── fetch-markupconfig.js │ ├── set-surrogate-key.js │ ├── set-last-modified.js │ ├── shared-cache.js │ ├── stringify-response.js │ └── rewrite-blob-images.js ├── xml │ ├── check-xml.js │ └── emit-xml.js ├── utils │ ├── is-production.js │ ├── table-handler.js │ └── link-handler.js └── json │ └── emit-json.js ├── .releaserc.cjs ├── .tidelift.yml ├── docs ├── mdast-properties.md ├── meta-definitions.md ├── content-properties.md ├── mdast-properties-types-items.md ├── meta-definitions-meta-properties.md ├── action-properties.md ├── mdast-properties-data-types-items.md ├── section-definitions.md ├── context-properties.md ├── mdast-properties-ordered.md ├── request-properties.md ├── secrets-properties.md ├── mdast-properties-type-metaenum.md ├── position-properties-indent.md ├── content-properties-sources-items.md ├── mdast-properties-start.md ├── meta-definitions-meta-properties-types-items.md ├── position-properties.md ├── response-properties.md ├── mdast-properties-title.md ├── mdast-properties-types.md ├── secrets-patternproperties.md ├── section-definitions-section-properties.md ├── mdast-properties-referencetype-metaenum.md ├── content-properties-title.md ├── mdast-properties-intro.md ├── rawrequest-definitions.md ├── request-properties-method-metaenum.md ├── response-properties-status.md ├── mdast-properties-data-types.md ├── mdast-properties-value.md ├── content-properties-intro.md ├── content-properties-body.md ├── mdast-properties-data-hname.md ├── meta-definitions-meta-properties-types.md ├── mdast-properties-children.md ├── request-properties-params-additionalproperties-anyof-0.md ├── request-properties-params-additionalproperties-anyof-1.md ├── content-properties-json.md ├── request-properties-headers-additionalproperties.md ├── mdast-properties-data-hchildren-items.md ├── mdast-properties-payload.md ├── meta-definitions-meta-properties-title.md ├── action-properties-debug.md ├── action-properties-downloader.md ├── action-properties-resolver.md ├── content-properties-sources.md ├── mdast-properties-data-hproperties-items.md ├── rawrequest-definitions-rawrequest-properties.md ├── request-properties-method.md ├── request-properties-params-additionalproperties-anyof-1-items.md ├── response-properties-headers-additionalproperties.md ├── section-definitions-section-properties-title.md ├── action-properties-versionlock.md ├── meta-definitions-meta-properties-intro.md ├── response-properties-body-anyof-0.md ├── textcoordinates-properties.md ├── action-properties-transformer.md ├── meta-definitions-meta-properties-class.md ├── section-definitions-section-properties-intro.md ├── textcoordinates-properties-line.md ├── content-properties-data.md ├── content-properties-xml.md ├── mdast-properties-lang.md ├── textcoordinates-properties-column.md ├── mdast-properties-label.md ├── mdast-properties-identifier.md ├── mdast-properties-alt.md ├── mdast-properties-data-hchildren.md ├── rawrequest-definitions-rawrequest-properties-method-metaenum.md ├── textcoordinates-properties-offset.md ├── action-properties-logger.md ├── content-properties-document.md ├── mdast-properties-align.md ├── rawrequest-definitions-rawrequest-properties-headers-properties.md ├── rawrequest-definitions-rawrequest-properties-params-properties.md ├── meta-definitions-meta-properties-tagname.md ├── response-properties-body-anyof-1.md ├── response-properties-document.md ├── mdast-properties-data-hproperties.md ├── request-properties-path.md ├── request-properties-rootpath.md ├── rawrequest-definitions-rawrequest-properties-headers-additionalproperties.md ├── secrets-properties-resolve_gitref_service.md ├── secrets-properties-test_boolean.md ├── rawrequest-definitions-rawrequest-properties-params-properties-repo.md ├── rawrequest-definitions-rawrequest-properties-params-properties-strain.md ├── action-properties-markupconfig.md ├── request-properties-querystring.md ├── secrets-patternproperties-a-z0-9_.md ├── rawrequest-definitions-rawrequest-properties-params-properties-ref.md ├── request-properties-selector.md ├── request-properties-url.md ├── rawrequest-definitions-rawrequest-properties-headers-properties-x-backend-name-metaenum.md ├── request-properties-pathinfo.md ├── section-definitions-section-properties-children.md ├── mdast-properties-checked.md ├── rawrequest-definitions-rawrequest-properties-headers-properties-x-request-id.md ├── request-properties-extension.md ├── secrets-properties-github_token.md ├── secrets-properties-xml_pretty.md ├── rawrequest-definitions-rawrequest-properties-headers-properties-x-cdn-request-id.md ├── rawrequest-definitions-rawrequest-properties-headers-properties-x-backend-name.md ├── rawrequest-definitions-rawrequest-properties-params-additionalproperties.md ├── mdast-properties-spread.md ├── rawrequest-definitions-rawrequest-properties-params-properties-branch.md ├── rawrequest-definitions-rawrequest-properties-params-properties-owner.md ├── secrets-properties-http_timeout.md ├── rawrequest-definitions-rawrequest-properties-method.md ├── rawrequest-definitions-rawrequest-properties-headers-properties-x-openwhisk-activation-id.md ├── secrets-properties-embed_selector.md ├── mdast-properties-depth.md ├── secrets-properties-images_min_size.md ├── position.schema.json ├── context-properties-error.md ├── rawrequest-definitions-rawrequest-properties-params-properties-path.md ├── textcoordinates.schema.json ├── mdast-properties-image.md ├── content-properties-image.md ├── rawrequest-definitions-rawrequest-properties-params-properties-rootpath.md ├── secrets-properties-http_timeout_external.md ├── mdast-properties-url.md ├── secrets-properties-content_proxy_url.md ├── section-definitions-section-properties-type.md ├── mdast-properties-children-items.md ├── meta-definitions-meta-properties-image.md ├── rawrequest-definitions-rawrequest-properties-params-properties-__ow_headers.md ├── section-definitions-section-properties-image.md ├── secrets-properties-embed_service.md ├── response-properties-body.md ├── mdast-properties-code.md ├── secrets-properties-sanitize_dom.md ├── secrets-properties-data_embed_service.md ├── mdast-properties-align-items.md ├── secrets-properties-repo_api_root.md ├── context.schema.json ├── secrets-properties-data_embed_allowlist.md ├── request-properties-params-additionalproperties.md ├── secrets-properties-repo_raw_root.md ├── response.schema.json ├── mdast-properties-data.md └── secrets-properties-embed_allowlist.md ├── index.js └── .eslintrc.cjs /.eslintignore: -------------------------------------------------------------------------------- 1 | coverage -------------------------------------------------------------------------------- /test/fixtures/simple.md: -------------------------------------------------------------------------------- 1 | # Hello World 2 | -------------------------------------------------------------------------------- /test/fixtures/sections/header.md: -------------------------------------------------------------------------------- 1 | # Header only -------------------------------------------------------------------------------- /.github/org-project-bot.yaml: -------------------------------------------------------------------------------- 1 | columns: 2 | - 2998585 3 | -------------------------------------------------------------------------------- /test/fixtures/sections/paragraph.md: -------------------------------------------------------------------------------- 1 | This is only a paragraph. -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | docs/*.schema.md linguist-generated 2 | docs/*.schema.json linguist-generated -------------------------------------------------------------------------------- /.husky/pre-commit: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | . "$(dirname "$0")/_/husky.sh" 3 | 4 | npx lint-staged 5 | -------------------------------------------------------------------------------- /index.d.ts: -------------------------------------------------------------------------------- 1 | import { Context } from './src/context'; 2 | import { Action } from './src/action'; -------------------------------------------------------------------------------- /test/fixtures/sections/paragraphwithlink.md: -------------------------------------------------------------------------------- 1 | This is a paragraph with a [link](/index.html)! -------------------------------------------------------------------------------- /test/fixtures/smartypants.md: -------------------------------------------------------------------------------- 1 | # Hello "World" 2 | 3 | This is -- excuse my French -- awesome! -------------------------------------------------------------------------------- /test/fixtures/broken-filters.md: -------------------------------------------------------------------------------- 1 | --- 2 | class: hide filter-wrapper 3 | --- 4 | 5 | product filters -------------------------------------------------------------------------------- /test/fixtures/sections/headerparagraph.md: -------------------------------------------------------------------------------- 1 | # Header and one paragraph 2 | 3 | This is a paragraph. -------------------------------------------------------------------------------- /test/fixtures/sections/2images.md: -------------------------------------------------------------------------------- 1 | ![helix-logo](./helix_logo.png) 2 | ![helix-logo](./helix_logo.png) -------------------------------------------------------------------------------- /test/fixtures/sections/headerimage.md: -------------------------------------------------------------------------------- 1 | # Header and one image 2 | 3 | ![helix-logo](./helix_logo.png) 4 | -------------------------------------------------------------------------------- /test/fixtures/sections/herosection.md: -------------------------------------------------------------------------------- 1 | ![helix-logo](./helix_logo.png) 2 | 3 | --- 4 | 5 | # Header and one image -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | pipeline.log 3 | logs/pipeline.log 4 | .nyc_output 5 | logs/debug 6 | coverage 7 | junit/ 8 | -------------------------------------------------------------------------------- /test/fixtures/sections/headerlist.md: -------------------------------------------------------------------------------- 1 | # Header and a list 2 | 3 | * list item 1 4 | * list item 2 5 | * list item 3 6 | -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | .circleci 2 | .eslint* 3 | .git* 4 | .nyc_output 5 | .vscode 6 | adobe-helix-* 7 | logs 8 | test 9 | coverage 10 | -------------------------------------------------------------------------------- /test/fixtures/forms.md: -------------------------------------------------------------------------------- 1 | # Hello World 2 | 3 |
4 | 5 |
-------------------------------------------------------------------------------- /test/fixtures/sections/headerparaimage.md: -------------------------------------------------------------------------------- 1 | # Header, a paragraph and one image 2 | 3 | This is a paragraph. 4 | 5 | ![helix-logo](./helix_logo.png) 6 | -------------------------------------------------------------------------------- /.mocha-multi.json: -------------------------------------------------------------------------------- 1 | { 2 | "reporterEnabled": "spec,xunit", 3 | "xunitReporterOptions": { 4 | "output": "junit/test-results.xml" 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /test/fixtures/heading-ids.md: -------------------------------------------------------------------------------- 1 | # Foo 2 | 3 | ## Bar 4 | 5 | ### Baz 6 | 7 | ## Qux 8 | 9 | ### Bar 10 | 11 | #### Bar-1 12 | 13 | # **Foo** _bar_ `baz` -------------------------------------------------------------------------------- /.nycrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "reporter": [ 3 | "lcov", 4 | "text" 5 | ], 6 | "check-coverage": true, 7 | "lines": 77, 8 | "branches": 67, 9 | "statements": 77 10 | } 11 | -------------------------------------------------------------------------------- /test/fixtures/sections/headerpara2images.md: -------------------------------------------------------------------------------- 1 | # Header, a paragraph and one image 2 | 3 | This is a paragraph. 4 | 5 | ![helix-logo](./helix_logo.png) 6 | ![helix-logo](./helix_logo.png) 7 | -------------------------------------------------------------------------------- /.renovaterc.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["github>adobe/helix-shared"], 3 | "ignoreDeps": [ 4 | "micromark-extension-gfm-autolink-literal", 5 | "mdast-util-gfm-autolink-literal", 6 | "property-information" 7 | ] 8 | } 9 | -------------------------------------------------------------------------------- /test/fixtures/simple.json: -------------------------------------------------------------------------------- 1 | { 2 | "type": "root", 3 | "children": [{ 4 | "type": "heading", 5 | "depth": 1, 6 | "children": [{ 7 | "type": "text", 8 | "value": "Hello World" 9 | }] 10 | }] 11 | } 12 | -------------------------------------------------------------------------------- /test/fixtures/headings.md: -------------------------------------------------------------------------------- 1 | Heading 1 (double-underline) 2 | ========= 3 | 4 | Heading 2 (single-underline) 5 | --------- 6 | 7 | # Heading 1 8 | 9 | ## Heading 2 10 | 11 | ### Heading 3 12 | 13 | #### Heading 4 14 | 15 | ##### Heading 5 16 | 17 | ###### Heading 6 18 | -------------------------------------------------------------------------------- /src/schemas/mdast.description.md: -------------------------------------------------------------------------------- 1 | The Markdown AST is 100% API compatible with the [UnifiedJS MDAST](https://github.com/syntax-tree/mdast) data structure. 2 | 3 | All [MDAST Utilities](https://github.com/syntax-tree/mdast#list-of-utilities) are compatible and can be used for easy processing of MDAST trees. -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/discussion.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Discussion 3 | about: Start a new discussion 4 | title: '' 5 | labels: question 6 | assignees: '' 7 | 8 | --- 9 | 10 | ## Overview 11 | whats' this discussion about? 12 | 13 | ## Details 14 | more details 15 | 16 | ## Proposed Actions 17 | and now? 18 | -------------------------------------------------------------------------------- /.github/workflows/wip.yaml: -------------------------------------------------------------------------------- 1 | on: 2 | pull_request: 3 | types: [opened, synchronize, reopened, labeled, unlabeled] 4 | 5 | jobs: 6 | block_label: 7 | runs-on: ubuntu-latest 8 | name: Check for 'breaking' label 9 | steps: 10 | - uses: adobe-rnd/github-label-wip-action@master 11 | with: 12 | label: breaking 13 | -------------------------------------------------------------------------------- /test/fixtures/confusing.md: -------------------------------------------------------------------------------- 1 | # I'm built to confuse 2 | 3 | --- 4 | section: true 5 | --- 6 | 7 | There will be two thematic breaks next. 8 | 9 | --- 10 | 11 | That was the first one 12 | 13 | --- 14 | 15 | This was the second one. 16 | 17 | --- 18 | 19 | And here is another one. 20 | 21 | The end. 22 | 23 | --- 24 | 25 | 26 | Really. 27 | -------------------------------------------------------------------------------- /.github/workflows/semver-check.yaml: -------------------------------------------------------------------------------- 1 | on: 2 | push: 3 | branches-ignore: 4 | - 'main' 5 | 6 | jobs: 7 | ci_trigger: 8 | runs-on: ubuntu-latest 9 | name: Comment Semantic Release Status 10 | steps: 11 | - name: Comment 12 | id: comment 13 | uses: adobe-rnd/github-semantic-release-comment-action@master 14 | with: 15 | repo-token: ${{ secrets.GITHUB_TOKEN }} 16 | -------------------------------------------------------------------------------- /test/fixtures/image-rewritten-example.html: -------------------------------------------------------------------------------- 1 |

This is a normal image:

2 |

3 |

This is a blob image:

4 |

5 |

This is a blob image with type indication:

6 |

7 |

8 | -------------------------------------------------------------------------------- /test/fixtures/smartypants.json: -------------------------------------------------------------------------------- 1 | { 2 | "type": "root", 3 | "children": [{ 4 | "type": "heading", 5 | "depth": 1, 6 | "children": [{ 7 | "type": "text", 8 | "value": "Hello “World”" 9 | }] 10 | }, 11 | { 12 | "type": "paragraph", 13 | "children": [{ 14 | "type": "text", 15 | "value": "This is — excuse my French — awesome!" 16 | }] 17 | } 18 | ] 19 | } 20 | -------------------------------------------------------------------------------- /test/fixtures/simple-links.md: -------------------------------------------------------------------------------- 1 | # Various Links 2 | 3 | 4 | 5 | [test_suite](https://example.com/test\_suite.html) 6 | 7 | [query](https://example.com/test.html?d=wb4c84d46c3bf40b7bf36440744f1ee6f\&csf=1\&web=1\&e=QcIGyX) 8 | 9 | [![Lars explains the future.](https://hlx.blob.core.windows.net/external/aa59825575016ba5bb9f1ee54be5d7efc23e3032#image.png)](https://www.youtube.com/watch?v=85UKLsvQEIA) 10 | 11 | \ 12 | -------------------------------------------------------------------------------- /.releaserc.cjs: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | plugins: [ 3 | "@semantic-release/commit-analyzer", 4 | "@semantic-release/release-notes-generator", 5 | ["@semantic-release/changelog", { 6 | "changelogFile": "CHANGELOG.md", 7 | }], 8 | "@semantic-release/npm", 9 | ["@semantic-release/git", { 10 | "assets": ["package.json", "CHANGELOG.md"], 11 | "message": "chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}" 12 | }], 13 | ["@semantic-release/github", {}] 14 | ], 15 | branches: ['main'] 16 | }; 17 | -------------------------------------------------------------------------------- /test/fixtures/sections/header.json: -------------------------------------------------------------------------------- 1 | { 2 | "intro": "Header only", 3 | "title": "Header only", 4 | "meta": { 5 | "types": [ 6 | "has-heading", 7 | "nb-heading-1", 8 | "has-only-heading" 9 | ] 10 | }, 11 | "type": "root", 12 | "children": [ 13 | { 14 | "type": "heading", 15 | "depth": 1, 16 | "children": [ 17 | { 18 | "type": "text", 19 | "value": "Header only" 20 | } 21 | ], 22 | "meta": { 23 | "types": [ 24 | "is-heading" 25 | ] 26 | } 27 | } 28 | ] 29 | } 30 | -------------------------------------------------------------------------------- /test/fixtures/sections/paragraph.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "This is only a paragraph.", 3 | "intro": "This is only a paragraph.", 4 | "meta": { 5 | "types": [ 6 | "has-text", 7 | "nb-text-1", 8 | "has-only-text" 9 | ] 10 | }, 11 | "type": "root", 12 | "children": [ 13 | { 14 | "type": "paragraph", 15 | "children": [ 16 | { 17 | "type": "text", 18 | "value": "This is only a paragraph." 19 | } 20 | ], 21 | "meta": { 22 | "types": [ 23 | "is-text" 24 | ] 25 | } 26 | } 27 | ] 28 | } 29 | -------------------------------------------------------------------------------- /test/fixtures/icon-example.md: -------------------------------------------------------------------------------- 1 | # The **Helix** :pipeline: supports icons now 2 | 3 | This :tada: will render as an icon. :thumbsup: 4 | 5 | This :#tada: will also render as an icon, but is part of an icon collection. 6 | 7 | I said: this is cool. There are smiles :) - even **big :smiles:** and [:foo:](http://www.example.com/) 8 | 9 | :: smile :smile::smile:::smile::::smile: 10 | 11 | ```javascript 12 | console.log('this is in a :code: block'); 13 | ``` 14 | `this is inline :code:` 15 | 16 | :rocket: is an icon at the beginning of the line, and here's one at the end: :heart-0: 17 | 18 | Oh, and 09:00:00 is a time code. 19 | 20 | No icon here -------------------------------------------------------------------------------- /src/schemas/content.description.md: -------------------------------------------------------------------------------- 1 | The `content` object represents the content that is being processed in the pipeline. 2 | 3 | With each step of the pipeline, the `content` will be enriched and gain additional properties. 4 | 5 | In a typical processing, `content` will start empty, and then gain a [`body`](#body) as the resource is fetched from the content repository. 6 | 7 | In the second step, the `body` will be parsed using a Markdown parser, resulting in the populated [`mdast`](#mdast) property, which is a representation of the Markdown. 8 | 9 | After that, the Markdown AST is processed furthermore to extract [`sections`](#meta), [`title`](#title), [`intro`](#intro), and [`meta`](#meta). -------------------------------------------------------------------------------- /src/defaults/html.pre.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2018 Adobe. All rights reserved. 3 | * This file is licensed to you under the Apache License, Version 2.0 (the "License"); 4 | * you may not use this file except in compliance with the License. You may obtain a copy 5 | * of the License at http://www.apache.org/licenses/LICENSE-2.0 6 | * 7 | * Unless required by applicable law or agreed to in writing, software distributed under 8 | * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS 9 | * OF ANY KIND, either express or implied. See the License for the specific language 10 | * governing permissions and limitations under the License. 11 | */ 12 | export { pre } from './default.js'; 13 | -------------------------------------------------------------------------------- /src/defaults/json.pre.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2018 Adobe. All rights reserved. 3 | * This file is licensed to you under the Apache License, Version 2.0 (the "License"); 4 | * you may not use this file except in compliance with the License. You may obtain a copy 5 | * of the License at http://www.apache.org/licenses/LICENSE-2.0 6 | * 7 | * Unless required by applicable law or agreed to in writing, software distributed under 8 | * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS 9 | * OF ANY KIND, either express or implied. See the License for the specific language 10 | * governing permissions and limitations under the License. 11 | */ 12 | export { pre } from './default.js'; 13 | -------------------------------------------------------------------------------- /src/defaults/xml.pre.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2018 Adobe. All rights reserved. 3 | * This file is licensed to you under the Apache License, Version 2.0 (the "License"); 4 | * you may not use this file except in compliance with the License. You may obtain a copy 5 | * of the License at http://www.apache.org/licenses/LICENSE-2.0 6 | * 7 | * Unless required by applicable law or agreed to in writing, software distributed under 8 | * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS 9 | * OF ANY KIND, either express or implied. See the License for the specific language 10 | * governing permissions and limitations under the License. 11 | */ 12 | export { pre } from './default.js'; 13 | -------------------------------------------------------------------------------- /src/package.cjs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2021 Adobe. All rights reserved. 3 | * This file is licensed to you under the Apache License, Version 2.0 (the "License"); 4 | * you may not use this file except in compliance with the License. You may obtain a copy 5 | * of the License at http://www.apache.org/licenses/LICENSE-2.0 6 | * 7 | * Unless required by applicable law or agreed to in writing, software distributed under 8 | * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS 9 | * OF ANY KIND, either express or implied. See the License for the specific language 10 | * governing permissions and limitations under the License. 11 | */ 12 | module.exports = require('../package.json'); 13 | -------------------------------------------------------------------------------- /test/fixtures/forms.json: -------------------------------------------------------------------------------- 1 | { 2 | "type": "root", 3 | "children": [ 4 | { 5 | "type": "heading", 6 | "depth": 1, 7 | "children": [ 8 | { 9 | "type": "text", 10 | "value": "Hello " 11 | }, 12 | { 13 | "type": "html", 14 | "value": "" 15 | }, 16 | { 17 | "type": "text", 18 | "value": "World" 19 | }, 20 | { 21 | "type": "html", 22 | "value": "" 23 | } 24 | ] 25 | }, 26 | { 27 | "type": "html", 28 | "value": "
\n \n
" 29 | } 30 | ] 31 | } 32 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature_request.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Feature request 3 | about: Suggest an idea for this project 4 | title: '' 5 | labels: enhancement 6 | assignees: '' 7 | 8 | --- 9 | 10 | **Is your feature request related to a problem? Please describe.** 11 | A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] 12 | 13 | **Describe the solution you'd like** 14 | A clear and concise description of what you want to happen. 15 | 16 | **Describe alternatives you've considered** 17 | A clear and concise description of any alternative solutions or features you've considered. 18 | 19 | **Additional context** 20 | Add any other context or screenshots about the feature request here. 21 | -------------------------------------------------------------------------------- /src/schemas/mdast.schema.cjs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2021 Adobe. All rights reserved. 3 | * This file is licensed to you under the Apache License, Version 2.0 (the "License"); 4 | * you may not use this file except in compliance with the License. You may obtain a copy 5 | * of the License at http://www.apache.org/licenses/LICENSE-2.0 6 | * 7 | * Unless required by applicable law or agreed to in writing, software distributed under 8 | * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS 9 | * OF ANY KIND, either express or implied. See the License for the specific language 10 | * governing permissions and limitations under the License. 11 | */ 12 | module.exports = require('./mdast.schema.json'); 13 | -------------------------------------------------------------------------------- /.github/workflows/semantic-release.yaml: -------------------------------------------------------------------------------- 1 | name: Semantic Release 2 | on: 3 | push: 4 | branches: 5 | - 'main' 6 | 7 | jobs: 8 | build: 9 | runs-on: ubuntu-latest 10 | if: "!contains(github.event.head_commit.message, '[skip ci]')" 11 | steps: 12 | - uses: actions/checkout@v2 13 | with: 14 | persist-credentials: false 15 | - name: Use Node.js 14.x 16 | uses: actions/setup-node@v3 17 | with: 18 | node-version: '14.x' 19 | - run: npm i -g npm@latest 20 | - run: npm install 21 | - run: npm test 22 | - run: npm run semantic-release 23 | env: 24 | GITHUB_TOKEN: ${{ secrets.MY_GITHUB_TOKEN }} 25 | NPM_TOKEN: ${{ secrets.ADOBE_BOT_NPM_TOKEN }} 26 | -------------------------------------------------------------------------------- /.tidelift.yml: -------------------------------------------------------------------------------- 1 | licensing: 2 | disallowed: 3 | - AGPL-1.0-only 4 | - AGPL-1.0-or-later 5 | - AGPL-3.0-only 6 | - AGPL-3.0-or-later 7 | - AGPL-1.0 8 | - AGPL-3.0 9 | - CC-BY-NC-ND-1.0 10 | - CC-BY-NC-ND-2.0 11 | - CC-BY-NC-ND-2.5 12 | - CC-BY-NC-ND-3.0 13 | - CC-BY-NC-ND-4.0 14 | - CC-BY-NC-SA-1.0 15 | - CC-BY-NC-SA-2.0 16 | - CC-BY-NC-SA-2.5 17 | - CC-BY-NC-SA-3.0 18 | - CC-BY-NC-SA-4.0 19 | - CC-BY-SA-1.0 20 | - CC-BY-SA-2.0 21 | - CC-BY-SA-2.5 22 | - CC-BY-SA-3.0 23 | - CC-BY-SA-4.0 24 | - GPL-1.0-only 25 | - GPL-1.0-or-later 26 | - GPL-2.0-only 27 | - GPL-2.0-or-later 28 | - GPL-3.0-only 29 | - GPL-3.0-or-later 30 | - SSPL-1.0 31 | - Sleepycat 32 | - Facebook -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/bug_report.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Bug report 3 | about: Create a report to help us improve 4 | title: '' 5 | labels: bug 6 | assignees: '' 7 | 8 | --- 9 | 10 | **Description** 11 | A clear and concise description of what the bug is. 12 | 13 | **To Reproduce** 14 | 15 | - what's your Markdown document? 16 | - what's your template function? 17 | 18 | 19 | **Expected behavior** 20 | A clear and concise description of what you expected to happen. 21 | 22 | - what kind of HTML do you want to see 23 | 24 | **Actual behavior** 25 | If applicable, add screenshots to help explain your problem. 26 | 27 | - what's the output you are seeing? 28 | - are there error messages? 29 | 30 | **Version:** 31 | run: `$ hlx --version` 32 | 33 | **Additional context** 34 | Add any other context about the problem here. 35 | -------------------------------------------------------------------------------- /docs/mdast-properties.md: -------------------------------------------------------------------------------- 1 | # \[object Object] Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/mdast#/properties 5 | ``` 6 | 7 | 8 | 9 | 10 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 11 | | :------------------ | ---------- | -------------- | ----------------------- | :---------------- | --------------------- | ------------------- | --------------------------------------------------------------- | 12 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [mdast.schema.json\*](mdast.schema.json "open original schema") | 13 | 14 | ## properties Type 15 | 16 | unknown 17 | -------------------------------------------------------------------------------- /docs/meta-definitions.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in Meta Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/meta#/definitions 5 | ``` 6 | 7 | 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [meta.schema.json\*](meta.schema.json "open original schema") | 12 | 13 | ## definitions Type 14 | 15 | unknown 16 | -------------------------------------------------------------------------------- /docs/content-properties.md: -------------------------------------------------------------------------------- 1 | # \[object Object] Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/content#/properties 5 | ``` 6 | 7 | 8 | 9 | 10 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 11 | | :------------------ | ---------- | -------------- | ----------------------- | :---------------- | --------------------- | ------------------- | ------------------------------------------------------------------- | 12 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [content.schema.json\*](content.schema.json "open original schema") | 13 | 14 | ## properties Type 15 | 16 | unknown 17 | -------------------------------------------------------------------------------- /docs/mdast-properties-types-items.md: -------------------------------------------------------------------------------- 1 | # Untitled string in MDAST Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/mdast#/properties/types/items 5 | ``` 6 | 7 | 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [mdast.schema.json\*](mdast.schema.json "open original schema") | 12 | 13 | ## items Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/meta-definitions-meta-properties.md: -------------------------------------------------------------------------------- 1 | # \[object Object] Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/meta#/definitions/meta/properties 5 | ``` 6 | 7 | 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [meta.schema.json\*](meta.schema.json "open original schema") | 12 | 13 | ## properties Type 14 | 15 | unknown 16 | -------------------------------------------------------------------------------- /docs/action-properties.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in Action Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/action#/properties 5 | ``` 6 | 7 | 8 | 9 | 10 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 11 | | :------------------ | ---------- | -------------- | ----------------------- | :---------------- | --------------------- | ------------------- | ----------------------------------------------------------------- | 12 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [action.schema.json\*](action.schema.json "open original schema") | 13 | 14 | ## properties Type 15 | 16 | unknown 17 | -------------------------------------------------------------------------------- /docs/mdast-properties-data-types-items.md: -------------------------------------------------------------------------------- 1 | # Untitled string in MDAST Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/mdast#/properties/data/types/items 5 | ``` 6 | 7 | 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [mdast.schema.json\*](mdast.schema.json "open original schema") | 12 | 13 | ## items Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/section-definitions.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in Section Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/section#/definitions 5 | ``` 6 | 7 | 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [section.schema.json\*](section.schema.json "open original schema") | 12 | 13 | ## definitions Type 14 | 15 | unknown 16 | -------------------------------------------------------------------------------- /docs/context-properties.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in Context Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/context#/properties 5 | ``` 6 | 7 | 8 | 9 | 10 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 11 | | :------------------ | ---------- | -------------- | ----------------------- | :---------------- | --------------------- | ------------------- | ------------------------------------------------------------------- | 12 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [context.schema.json\*](context.schema.json "open original schema") | 13 | 14 | ## properties Type 15 | 16 | unknown 17 | -------------------------------------------------------------------------------- /docs/mdast-properties-ordered.md: -------------------------------------------------------------------------------- 1 | # Untitled boolean in MDAST Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/mdast#/properties/ordered 5 | ``` 6 | 7 | Is the list ordered 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [mdast.schema.json\*](mdast.schema.json "open original schema") | 12 | 13 | ## ordered Type 14 | 15 | `boolean` 16 | -------------------------------------------------------------------------------- /docs/request-properties.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/request#/properties 5 | ``` 6 | 7 | 8 | 9 | 10 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 11 | | :------------------ | ---------- | -------------- | ----------------------- | :---------------- | --------------------- | ------------------- | ------------------------------------------------------------------- | 12 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [request.schema.json\*](request.schema.json "open original schema") | 13 | 14 | ## properties Type 15 | 16 | unknown 17 | -------------------------------------------------------------------------------- /docs/secrets-properties.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in Secrets Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/secrets#/properties 5 | ``` 6 | 7 | 8 | 9 | 10 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 11 | | :------------------ | ---------- | -------------- | ----------------------- | :---------------- | --------------------- | ------------------- | ------------------------------------------------------------------- | 12 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [secrets.schema.json\*](secrets.schema.json "open original schema") | 13 | 14 | ## properties Type 15 | 16 | unknown 17 | -------------------------------------------------------------------------------- /docs/mdast-properties-type-metaenum.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in MDAST Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/mdast#/properties/type/meta:enum 5 | ``` 6 | 7 | 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [mdast.schema.json\*](mdast.schema.json "open original schema") | 12 | 13 | ## meta:enum Type 14 | 15 | unknown 16 | -------------------------------------------------------------------------------- /docs/position-properties-indent.md: -------------------------------------------------------------------------------- 1 | # Untitled array in Position Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/position#/properties/indent 5 | ``` 6 | 7 | 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [position.schema.json\*](position.schema.json "open original schema") | 12 | 13 | ## indent Type 14 | 15 | `array` 16 | -------------------------------------------------------------------------------- /docs/content-properties-sources-items.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Content Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/content#/properties/sources/items 5 | ``` 6 | 7 | 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [content.schema.json\*](content.schema.json "open original schema") | 12 | 13 | ## items Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/mdast-properties-start.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in MDAST Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/mdast#/properties/start 5 | ``` 6 | 7 | Starting item of the list 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [mdast.schema.json\*](mdast.schema.json "open original schema") | 12 | 13 | ## start Type 14 | 15 | `integer` 16 | -------------------------------------------------------------------------------- /docs/meta-definitions-meta-properties-types-items.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Meta Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/meta#/definitions/meta/properties/types/items 5 | ``` 6 | 7 | 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [meta.schema.json\*](meta.schema.json "open original schema") | 12 | 13 | ## items Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/position-properties.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in Position Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/position#/properties 5 | ``` 6 | 7 | 8 | 9 | 10 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 11 | | :------------------ | ---------- | -------------- | ----------------------- | :---------------- | --------------------- | ------------------- | --------------------------------------------------------------------- | 12 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [position.schema.json\*](position.schema.json "open original schema") | 13 | 14 | ## properties Type 15 | 16 | unknown 17 | -------------------------------------------------------------------------------- /docs/response-properties.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in Response Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/response#/properties 5 | ``` 6 | 7 | 8 | 9 | 10 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 11 | | :------------------ | ---------- | -------------- | ----------------------- | :---------------- | --------------------- | ------------------- | --------------------------------------------------------------------- | 12 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [response.schema.json\*](response.schema.json "open original schema") | 13 | 14 | ## properties Type 15 | 16 | unknown 17 | -------------------------------------------------------------------------------- /docs/mdast-properties-title.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in MDAST Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/mdast#/properties/title 5 | ``` 6 | 7 | Extracted title of the document 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [mdast.schema.json\*](mdast.schema.json "open original schema") | 12 | 13 | ## title Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/mdast-properties-types.md: -------------------------------------------------------------------------------- 1 | # Untitled array in MDAST Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/mdast#/properties/types 5 | ``` 6 | 7 | The inferred class names for the section 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [mdast.schema.json\*](mdast.schema.json "open original schema") | 12 | 13 | ## types Type 14 | 15 | `string[]` 16 | -------------------------------------------------------------------------------- /docs/secrets-patternproperties.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in Secrets Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/secrets#/patternProperties 5 | ``` 6 | 7 | 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [secrets.schema.json\*](secrets.schema.json "open original schema") | 12 | 13 | ## patternProperties Type 14 | 15 | unknown 16 | -------------------------------------------------------------------------------- /docs/section-definitions-section-properties.md: -------------------------------------------------------------------------------- 1 | # \[object Object] Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/section#/definitions/section/properties 5 | ``` 6 | 7 | 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [section.schema.json\*](section.schema.json "open original schema") | 12 | 13 | ## properties Type 14 | 15 | unknown 16 | -------------------------------------------------------------------------------- /docs/mdast-properties-referencetype-metaenum.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in MDAST Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/mdast#/properties/referenceType/meta:enum 5 | ``` 6 | 7 | 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [mdast.schema.json\*](mdast.schema.json "open original schema") | 12 | 13 | ## meta:enum Type 14 | 15 | unknown 16 | -------------------------------------------------------------------------------- /docs/content-properties-title.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Content Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/content#/properties/title 5 | ``` 6 | 7 | Extracted title of the document 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [content.schema.json\*](content.schema.json "open original schema") | 12 | 13 | ## title Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/mdast-properties-intro.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in MDAST Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/mdast#/properties/intro 5 | ``` 6 | 7 | Extracted first paragraph of the document 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [mdast.schema.json\*](mdast.schema.json "open original schema") | 12 | 13 | ## intro Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/rawrequest-definitions.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in Raw Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/rawrequest#/definitions 5 | ``` 6 | 7 | 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [rawrequest.schema.json\*](rawrequest.schema.json "open original schema") | 12 | 13 | ## definitions Type 14 | 15 | unknown 16 | -------------------------------------------------------------------------------- /docs/request-properties-method-metaenum.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/request#/properties/method/meta:enum 5 | ``` 6 | 7 | 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [request.schema.json\*](request.schema.json "open original schema") | 12 | 13 | ## meta:enum Type 14 | 15 | unknown 16 | -------------------------------------------------------------------------------- /docs/response-properties-status.md: -------------------------------------------------------------------------------- 1 | # Untitled integer in Response Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/response#/properties/status 5 | ``` 6 | 7 | The HTTP status code 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [response.schema.json\*](response.schema.json "open original schema") | 12 | 13 | ## status Type 14 | 15 | `integer` 16 | -------------------------------------------------------------------------------- /docs/mdast-properties-data-types.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in MDAST Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/mdast#/properties/data/types 5 | ``` 6 | 7 | The inferred class names for the node 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [mdast.schema.json\*](mdast.schema.json "open original schema") | 12 | 13 | ## types Type 14 | 15 | `string[]` 16 | -------------------------------------------------------------------------------- /docs/mdast-properties-value.md: -------------------------------------------------------------------------------- 1 | # Untitled string in MDAST Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/mdast#/properties/value 5 | ``` 6 | 7 | The string value of the node, if it is a terminal node. 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [mdast.schema.json\*](mdast.schema.json "open original schema") | 12 | 13 | ## value Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/content-properties-intro.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Content Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/content#/properties/intro 5 | ``` 6 | 7 | Extracted first paragraph of the document 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [content.schema.json\*](content.schema.json "open original schema") | 12 | 13 | ## intro Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/content-properties-body.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Content Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/content#/properties/body 5 | ``` 6 | 7 | The content body of the retrieved source document 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [content.schema.json\*](content.schema.json "open original schema") | 12 | 13 | ## body Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/mdast-properties-data-hname.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in MDAST Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/mdast#/properties/data/hName 5 | ``` 6 | 7 | May be use to override the element’s tag-name 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [mdast.schema.json\*](mdast.schema.json "open original schema") | 12 | 13 | ## hName Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/meta-definitions-meta-properties-types.md: -------------------------------------------------------------------------------- 1 | # Untitled array in Meta Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/meta#/definitions/meta/properties/types 5 | ``` 6 | 7 | The inferred class names for the section 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [meta.schema.json\*](meta.schema.json "open original schema") | 12 | 13 | ## types Type 14 | 15 | `string[]` 16 | -------------------------------------------------------------------------------- /docs/mdast-properties-children.md: -------------------------------------------------------------------------------- 1 | # Untitled array in MDAST Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/mdast#/properties/children 5 | ``` 6 | 7 | 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [mdast.schema.json\*](mdast.schema.json "open original schema") | 12 | 13 | ## children Type 14 | 15 | an array of merged types ([Details](mdast-properties-children-items.md)) 16 | -------------------------------------------------------------------------------- /docs/request-properties-params-additionalproperties-anyof-0.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/request#/properties/params/additionalProperties/anyOf/0 5 | ``` 6 | 7 | 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [request.schema.json\*](request.schema.json "open original schema") | 12 | 13 | ## 0 Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/request-properties-params-additionalproperties-anyof-1.md: -------------------------------------------------------------------------------- 1 | # Untitled array in Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/request#/properties/params/additionalProperties/anyOf/1 5 | ``` 6 | 7 | 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [request.schema.json\*](request.schema.json "open original schema") | 12 | 13 | ## 1 Type 14 | 15 | `string[]` 16 | -------------------------------------------------------------------------------- /docs/content-properties-json.md: -------------------------------------------------------------------------------- 1 | # Untitled object in Content Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/content#/properties/json 5 | ``` 6 | 7 | The JSON object to emit. 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [content.schema.json\*](content.schema.json "open original schema") | 12 | 13 | ## json Type 14 | 15 | `object` ([Details](content-properties-json.md)) 16 | -------------------------------------------------------------------------------- /docs/request-properties-headers-additionalproperties.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/request#/properties/headers/additionalProperties 5 | ``` 6 | 7 | 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [request.schema.json\*](request.schema.json "open original schema") | 12 | 13 | ## additionalProperties Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/mdast-properties-data-hchildren-items.md: -------------------------------------------------------------------------------- 1 | # Untitled object in MDAST Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/mdast#/properties/data/hChildren/items 5 | ``` 6 | 7 | 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [mdast.schema.json\*](mdast.schema.json "open original schema") | 12 | 13 | ## items Type 14 | 15 | `object` ([Details](mdast-properties-data-hchildren-items.md)) 16 | -------------------------------------------------------------------------------- /docs/mdast-properties-payload.md: -------------------------------------------------------------------------------- 1 | # Untitled object in MDAST Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/mdast#/properties/payload 5 | ``` 6 | 7 | The payload of a frontmatter/yaml block 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [mdast.schema.json\*](mdast.schema.json "open original schema") | 12 | 13 | ## payload Type 14 | 15 | `object` ([Details](mdast-properties-payload.md)) 16 | -------------------------------------------------------------------------------- /docs/meta-definitions-meta-properties-title.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Section Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/section#/definitions/section/properties/title 5 | ``` 6 | 7 | Extracted title of the document 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [section.schema.json\*](section.schema.json "open original schema") | 12 | 13 | ## title Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/action-properties-debug.md: -------------------------------------------------------------------------------- 1 | # Untitled object in Action Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/action#/properties/debug 5 | ``` 6 | 7 | Internal information related to debugging. 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :---------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [action.schema.json\*](action.schema.json "open original schema") | 12 | 13 | ## debug Type 14 | 15 | `object` ([Details](action-properties-debug.md)) 16 | -------------------------------------------------------------------------------- /docs/action-properties-downloader.md: -------------------------------------------------------------------------------- 1 | # Untitled object in Action Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/action#/properties/downloader 5 | ``` 6 | 7 | A Downloader instance 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :---------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [action.schema.json\*](action.schema.json "open original schema") | 12 | 13 | ## downloader Type 14 | 15 | `object` ([Details](action-properties-downloader.md)) 16 | -------------------------------------------------------------------------------- /docs/action-properties-resolver.md: -------------------------------------------------------------------------------- 1 | # Untitled object in Action Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/action#/properties/resolver 5 | ``` 6 | 7 | An universal deploy resolver 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :---------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [action.schema.json\*](action.schema.json "open original schema") | 12 | 13 | ## resolver Type 14 | 15 | `object` ([Details](action-properties-resolver.md)) 16 | -------------------------------------------------------------------------------- /docs/content-properties-sources.md: -------------------------------------------------------------------------------- 1 | # Untitled array in Content Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/content#/properties/sources 5 | ``` 6 | 7 | List of URIs that have been retrieved for this piece of content 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [content.schema.json\*](content.schema.json "open original schema") | 12 | 13 | ## sources Type 14 | 15 | `string[]` 16 | -------------------------------------------------------------------------------- /docs/mdast-properties-data-hproperties-items.md: -------------------------------------------------------------------------------- 1 | # Untitled object in MDAST Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/mdast#/properties/data/hProperties/items 5 | ``` 6 | 7 | 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [mdast.schema.json\*](mdast.schema.json "open original schema") | 12 | 13 | ## items Type 14 | 15 | `object` ([Details](mdast-properties-data-hproperties-items.md)) 16 | -------------------------------------------------------------------------------- /docs/rawrequest-definitions-rawrequest-properties.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in Raw Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/rawrequest#/definitions/rawrequest/properties 5 | ``` 6 | 7 | 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [rawrequest.schema.json\*](rawrequest.schema.json "open original schema") | 12 | 13 | ## properties Type 14 | 15 | unknown 16 | -------------------------------------------------------------------------------- /docs/request-properties-method.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/request#/properties/method 5 | ``` 6 | 7 | The HTTP method of the request. Note: method names can be lower-case. 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [request.schema.json\*](request.schema.json "open original schema") | 12 | 13 | ## method Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/request-properties-params-additionalproperties-anyof-1-items.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/request#/properties/params/additionalProperties/anyOf/1/items 5 | ``` 6 | 7 | 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [request.schema.json\*](request.schema.json "open original schema") | 12 | 13 | ## items Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/response-properties-headers-additionalproperties.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Response Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/response#/properties/headers/additionalProperties 5 | ``` 6 | 7 | 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [response.schema.json\*](response.schema.json "open original schema") | 12 | 13 | ## additionalProperties Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/section-definitions-section-properties-title.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Section Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/section#/definitions/section/properties/title 5 | ``` 6 | 7 | Extracted title of the document 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [section.schema.json\*](section.schema.json "open original schema") | 12 | 13 | ## title Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/action-properties-versionlock.md: -------------------------------------------------------------------------------- 1 | # Untitled object in Action Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/action#/properties/versionLock 5 | ``` 6 | 7 | A VersionLock instance 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :---------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [action.schema.json\*](action.schema.json "open original schema") | 12 | 13 | ## versionLock Type 14 | 15 | `object` ([Details](action-properties-versionlock.md)) 16 | -------------------------------------------------------------------------------- /docs/meta-definitions-meta-properties-intro.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Section Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/section#/definitions/section/properties/intro 5 | ``` 6 | 7 | Extracted first paragraph of the document 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [section.schema.json\*](section.schema.json "open original schema") | 12 | 13 | ## intro Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/response-properties-body-anyof-0.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in Response Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/response#/properties/body/anyOf/0 5 | ``` 6 | 7 | The plain text or base64-encoded body of the response 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [response.schema.json\*](response.schema.json "open original schema") | 12 | 13 | ## 0 Type 14 | 15 | unknown 16 | -------------------------------------------------------------------------------- /docs/textcoordinates-properties.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in Text Coordinates Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/textcoordinates#/properties 5 | ``` 6 | 7 | 8 | 9 | 10 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 11 | | :------------------ | ---------- | -------------- | ----------------------- | :---------------- | --------------------- | ------------------- | ----------------------------------------------------------------------------------- | 12 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [textcoordinates.schema.json\*](textcoordinates.schema.json "open original schema") | 13 | 14 | ## properties Type 15 | 16 | unknown 17 | -------------------------------------------------------------------------------- /docs/action-properties-transformer.md: -------------------------------------------------------------------------------- 1 | # Untitled object in Action Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/action#/properties/transformer 5 | ``` 6 | 7 | A VDOMTransformer instance 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :---------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [action.schema.json\*](action.schema.json "open original schema") | 12 | 13 | ## transformer Type 14 | 15 | `object` ([Details](action-properties-transformer.md)) 16 | -------------------------------------------------------------------------------- /docs/meta-definitions-meta-properties-class.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Meta Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/meta#/definitions/meta/properties/class 5 | ``` 6 | 7 | The CSS class to use for the section instead of the default `hlx-section` one 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [meta.schema.json\*](meta.schema.json "open original schema") | 12 | 13 | ## class Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/section-definitions-section-properties-intro.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Section Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/section#/definitions/section/properties/intro 5 | ``` 6 | 7 | Extracted first paragraph of the document 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [section.schema.json\*](section.schema.json "open original schema") | 12 | 13 | ## intro Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/textcoordinates-properties-line.md: -------------------------------------------------------------------------------- 1 | # Untitled number in Text Coordinates Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/textcoordinates#/properties/line 5 | ``` 6 | 7 | Line number 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :---------------------------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [textcoordinates.schema.json\*](textcoordinates.schema.json "open original schema") | 12 | 13 | ## line Type 14 | 15 | `number` 16 | -------------------------------------------------------------------------------- /src/html/make-html.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2018 Adobe. All rights reserved. 3 | * This file is licensed to you under the Apache License, Version 2.0 (the "License"); 4 | * you may not use this file except in compliance with the License. You may obtain a copy 5 | * of the License at http://www.apache.org/licenses/LICENSE-2.0 6 | * 7 | * Unless required by applicable law or agreed to in writing, software distributed under 8 | * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS 9 | * OF ANY KIND, either express or implied. See the License for the specific language 10 | * governing permissions and limitations under the License. 11 | */ 12 | export default function html({ content }, { logger, transformer }) { 13 | const { mdast } = content; 14 | logger.debug(`Turning Markdown into HTML from ${typeof mdast}`); 15 | content.document = transformer 16 | .withMdast(mdast) 17 | .getDocument(); 18 | } 19 | -------------------------------------------------------------------------------- /docs/content-properties-data.md: -------------------------------------------------------------------------------- 1 | # Untitled object in Content Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/content#/properties/data 5 | ``` 6 | 7 | Custom object that can hold any user defined data. 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [content.schema.json\*](content.schema.json "open original schema") | 12 | 13 | ## data Type 14 | 15 | `object` ([Details](content-properties-data.md)) 16 | -------------------------------------------------------------------------------- /docs/content-properties-xml.md: -------------------------------------------------------------------------------- 1 | # Untitled object in Content Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/content#/properties/xml 5 | ``` 6 | 7 | The XML object to emit. See xmlbuilder-js for syntax. 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [content.schema.json\*](content.schema.json "open original schema") | 12 | 13 | ## xml Type 14 | 15 | `object` ([Details](content-properties-xml.md)) 16 | -------------------------------------------------------------------------------- /docs/mdast-properties-lang.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in MDAST Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/mdast#/properties/lang 5 | ``` 6 | 7 | For code, a lang field can be present. It represents the language of computer code being marked up. 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [mdast.schema.json\*](mdast.schema.json "open original schema") | 12 | 13 | ## lang Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/textcoordinates-properties-column.md: -------------------------------------------------------------------------------- 1 | # Untitled number in Text Coordinates Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/textcoordinates#/properties/column 5 | ``` 6 | 7 | Column number 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :---------------------------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [textcoordinates.schema.json\*](textcoordinates.schema.json "open original schema") | 12 | 13 | ## column Type 14 | 15 | `number` 16 | -------------------------------------------------------------------------------- /test/fixtures/sections/2images.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "helix-logo\nhelix-logo", 3 | "image": "./helix_logo.png", 4 | "intro": "helix-logo\nhelix-logo", 5 | "meta": { 6 | "types": [ 7 | "has-image", 8 | "nb-image-2", 9 | "has-only-image" 10 | ] 11 | }, 12 | "type": "root", 13 | "children": [ 14 | { 15 | "type": "paragraph", 16 | "children": [ 17 | { 18 | "type": "image", 19 | "title": null, 20 | "url": "./helix_logo.png", 21 | "alt": "helix-logo" 22 | }, 23 | { 24 | "type": "text", 25 | "value": "\n" 26 | }, 27 | { 28 | "type": "image", 29 | "title": null, 30 | "url": "./helix_logo.png", 31 | "alt": "helix-logo" 32 | } 33 | ], 34 | "meta": { 35 | "types": [ 36 | "has-image" 37 | ] 38 | } 39 | } 40 | ] 41 | } 42 | -------------------------------------------------------------------------------- /docs/mdast-properties-label.md: -------------------------------------------------------------------------------- 1 | # Untitled string in MDAST Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/mdast#/properties/label 5 | ``` 6 | 7 | For associations, a label field can be present. It represents the original value of the normalised identifier field. 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [mdast.schema.json\*](mdast.schema.json "open original schema") | 12 | 13 | ## label Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/mdast-properties-identifier.md: -------------------------------------------------------------------------------- 1 | # Untitled string in MDAST Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/mdast#/properties/identifier 5 | ``` 6 | 7 | For associations, an identifier field must be present. It can match an identifier field on another node. 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [mdast.schema.json\*](mdast.schema.json "open original schema") | 12 | 13 | ## identifier Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/mdast-properties-alt.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in MDAST Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/mdast#/properties/alt 5 | ``` 6 | 7 | An alt field should be present. It represents equivalent content for environments that cannot represent the node as intended. 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [mdast.schema.json\*](mdast.schema.json "open original schema") | 12 | 13 | ## alt Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/mdast-properties-data-hchildren.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in MDAST Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/mdast#/properties/data/hChildren 5 | ``` 6 | 7 | May be used to define extra HAST children 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [mdast.schema.json\*](mdast.schema.json "open original schema") | 12 | 13 | ## hChildren Type 14 | 15 | `object[]` ([Details](mdast-properties-data-hchildren-items.md)) 16 | -------------------------------------------------------------------------------- /docs/rawrequest-definitions-rawrequest-properties-method-metaenum.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in Raw Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/rawrequest#/definitions/rawrequest/properties/method/meta:enum 5 | ``` 6 | 7 | 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [rawrequest.schema.json\*](rawrequest.schema.json "open original schema") | 12 | 13 | ## meta:enum Type 14 | 15 | unknown 16 | -------------------------------------------------------------------------------- /docs/textcoordinates-properties-offset.md: -------------------------------------------------------------------------------- 1 | # Untitled number in Text Coordinates Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/textcoordinates#/properties/offset 5 | ``` 6 | 7 | Character in the entire document 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :---------------------------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [textcoordinates.schema.json\*](textcoordinates.schema.json "open original schema") | 12 | 13 | ## offset Type 14 | 15 | `number` 16 | -------------------------------------------------------------------------------- /docs/action-properties-logger.md: -------------------------------------------------------------------------------- 1 | # Untitled object in Action Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/action#/properties/logger 5 | ``` 6 | 7 | A helix-log [SimpleInterface](https://github.com/adobe/helix-log) logger instance. 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :---------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [action.schema.json\*](action.schema.json "open original schema") | 12 | 13 | ## logger Type 14 | 15 | `object` ([Details](action-properties-logger.md)) 16 | -------------------------------------------------------------------------------- /docs/content-properties-document.md: -------------------------------------------------------------------------------- 1 | # Untitled object in Content Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/content#/properties/document 5 | ``` 6 | 7 | The DOM-compatible representation of the document's inner HTML 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [content.schema.json\*](content.schema.json "open original schema") | 12 | 13 | ## document Type 14 | 15 | `object` ([Details](content-properties-document.md)) 16 | -------------------------------------------------------------------------------- /docs/mdast-properties-align.md: -------------------------------------------------------------------------------- 1 | # Untitled array in MDAST Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/mdast#/properties/align 5 | ``` 6 | 7 | For tables, an align field can be present. If present, it must be a list of alignTypes. It represents how cells in columns are aligned. 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [mdast.schema.json\*](mdast.schema.json "open original schema") | 12 | 13 | ## align Type 14 | 15 | `string[]` 16 | -------------------------------------------------------------------------------- /docs/rawrequest-definitions-rawrequest-properties-headers-properties.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in Raw Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/rawrequest#/definitions/rawrequest/properties/headers/properties 5 | ``` 6 | 7 | 8 | 9 | 10 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 11 | | :------------------ | ---------- | -------------- | ----------------------- | :---------------- | --------------------- | ------------------- | ------------------------------------------------------------------------- | 12 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [rawrequest.schema.json\*](rawrequest.schema.json "open original schema") | 13 | 14 | ## properties Type 15 | 16 | unknown 17 | -------------------------------------------------------------------------------- /docs/rawrequest-definitions-rawrequest-properties-params-properties.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in Raw Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/rawrequest#/definitions/rawrequest/properties/params/properties 5 | ``` 6 | 7 | 8 | 9 | 10 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 11 | | :------------------ | ---------- | -------------- | ----------------------- | :---------------- | --------------------- | ------------------- | ------------------------------------------------------------------------- | 12 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [rawrequest.schema.json\*](rawrequest.schema.json "open original schema") | 13 | 14 | ## properties Type 15 | 16 | unknown 17 | -------------------------------------------------------------------------------- /docs/meta-definitions-meta-properties-tagname.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Meta Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/meta#/definitions/meta/properties/tagname 5 | ``` 6 | 7 | The element tag name to use for the section instead of the default `div` one (i.e. `section`, `main`, `aside`) 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [meta.schema.json\*](meta.schema.json "open original schema") | 12 | 13 | ## tagname Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/response-properties-body-anyof-1.md: -------------------------------------------------------------------------------- 1 | # Untitled object in Response Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/response#/properties/body/anyOf/1 5 | ``` 6 | 7 | The JSON object to represent the body of the response 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [response.schema.json\*](response.schema.json "open original schema") | 12 | 13 | ## 1 Type 14 | 15 | `object` ([Details](response-properties-body-anyof-1.md)) 16 | -------------------------------------------------------------------------------- /docs/response-properties-document.md: -------------------------------------------------------------------------------- 1 | # Untitled object in Response Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/response#/properties/document 5 | ``` 6 | 7 | The DOM-compatible representation of the response document 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [response.schema.json\*](response.schema.json "open original schema") | 12 | 13 | ## document Type 14 | 15 | `object` ([Details](response-properties-document.md)) 16 | -------------------------------------------------------------------------------- /src/html/set-content-type.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2021 Adobe. All rights reserved. 3 | * This file is licensed to you under the Apache License, Version 2.0 (the "License"); 4 | * you may not use this file except in compliance with the License. You may obtain a copy 5 | * of the License at http://www.apache.org/licenses/LICENSE-2.0 6 | * 7 | * Unless required by applicable law or agreed to in writing, software distributed under 8 | * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS 9 | * OF ANY KIND, either express or implied. See the License for the specific language 10 | * governing permissions and limitations under the License. 11 | */ 12 | import { setdefault } from 'ferrum'; 13 | 14 | export default function type(mime) { 15 | return function setmime(context) { 16 | const res = setdefault(context, 'response', {}); 17 | const head = setdefault(res, 'headers', {}); 18 | setdefault(head, 'Content-Type', mime); 19 | }; 20 | } 21 | -------------------------------------------------------------------------------- /docs/mdast-properties-data-hproperties.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in MDAST Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/mdast#/properties/data/hProperties 5 | ``` 6 | 7 | May be used to define extra DOM element properties 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [mdast.schema.json\*](mdast.schema.json "open original schema") | 12 | 13 | ## hProperties Type 14 | 15 | `object[]` ([Details](mdast-properties-data-hproperties-items.md)) 16 | -------------------------------------------------------------------------------- /docs/request-properties-path.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/request#/properties/path 5 | ``` 6 | 7 | The path of the client request URL 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [request.schema.json\*](request.schema.json "open original schema") | 12 | 13 | ## path Type 14 | 15 | `string` 16 | 17 | ## path Examples 18 | 19 | ```json 20 | "/docs/api/general/index.nav.html" 21 | ``` 22 | -------------------------------------------------------------------------------- /docs/request-properties-rootpath.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/request#/properties/rootPath 5 | ``` 6 | 7 | The request root path of the current strain. 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [request.schema.json\*](request.schema.json "open original schema") | 12 | 13 | ## rootPath Type 14 | 15 | `string` 16 | 17 | ## rootPath Examples 18 | 19 | ```json 20 | "/docs/api" 21 | ``` 22 | -------------------------------------------------------------------------------- /docs/rawrequest-definitions-rawrequest-properties-headers-additionalproperties.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Raw Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/rawrequest#/definitions/rawrequest/properties/headers/additionalProperties 5 | ``` 6 | 7 | 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [rawrequest.schema.json\*](rawrequest.schema.json "open original schema") | 12 | 13 | ## additionalProperties Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/secrets-properties-resolve_gitref_service.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Secrets Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/secrets#/properties/RESOLVE_GITREF_SERVICE 5 | ``` 6 | 7 | API endpoint or action name to the service that resolves github refs to commit SHAs. 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [secrets.schema.json\*](secrets.schema.json "open original schema") | 12 | 13 | ## RESOLVE\_GITREF\_SERVICE Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/secrets-properties-test_boolean.md: -------------------------------------------------------------------------------- 1 | # Untitled boolean in Secrets Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/secrets#/properties/TEST_BOOLEAN 5 | ``` 6 | 7 | 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [secrets.schema.json\*](secrets.schema.json "open original schema") | 12 | 13 | ## TEST\_BOOLEAN Type 14 | 15 | `boolean` 16 | 17 | ## TEST\_BOOLEAN Default Value 18 | 19 | The default value is: 20 | 21 | ```json 22 | true 23 | ``` 24 | -------------------------------------------------------------------------------- /docs/rawrequest-definitions-rawrequest-properties-params-properties-repo.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Raw Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/rawrequest#/definitions/rawrequest/properties/params/properties/repo 5 | ``` 6 | 7 | Repository where content originates 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [rawrequest.schema.json\*](rawrequest.schema.json "open original schema") | 12 | 13 | ## repo Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/rawrequest-definitions-rawrequest-properties-params-properties-strain.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Raw Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/rawrequest#/definitions/rawrequest/properties/params/properties/strain 5 | ``` 6 | 7 | The resolved strain (variant) 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [rawrequest.schema.json\*](rawrequest.schema.json "open original schema") | 12 | 13 | ## strain Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /test/fixtures/sections/headerparagraph.json: -------------------------------------------------------------------------------- 1 | { 2 | "intro": "This is a paragraph.", 3 | "title": "Header and one paragraph", 4 | "meta": { 5 | "types": [ 6 | "has-text", 7 | "has-heading", 8 | "nb-text-1", 9 | "nb-heading-1", 10 | "is-heading-text", 11 | "is-heading" 12 | ] 13 | }, 14 | "type": "root", 15 | "children": [ 16 | { 17 | "type": "heading", 18 | "depth": 1, 19 | "children": [ 20 | { 21 | "type": "text", 22 | "value": "Header and one paragraph" 23 | } 24 | ], 25 | "meta": { 26 | "types": [ 27 | "is-heading" 28 | ] 29 | } 30 | }, 31 | { 32 | "type": "paragraph", 33 | "children": [ 34 | { 35 | "type": "text", 36 | "value": "This is a paragraph." 37 | } 38 | ], 39 | "meta": { 40 | "types": [ 41 | "is-text" 42 | ] 43 | } 44 | } 45 | ] 46 | } 47 | -------------------------------------------------------------------------------- /docs/action-properties-markupconfig.md: -------------------------------------------------------------------------------- 1 | # Untitled object in Action Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/action#/properties/markupconfig 5 | ``` 6 | 7 | A [markup configuration](https://github.com/adobe/helix-shared/blob/master/docs/markup.md) 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :---------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [action.schema.json\*](action.schema.json "open original schema") | 12 | 13 | ## markupconfig Type 14 | 15 | `object` ([Details](action-properties-markupconfig.md)) 16 | -------------------------------------------------------------------------------- /docs/request-properties-querystring.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/request#/properties/queryString 5 | ``` 6 | 7 | The original query string. 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [request.schema.json\*](request.schema.json "open original schema") | 12 | 13 | ## queryString Type 14 | 15 | `string` 16 | 17 | ## queryString Examples 18 | 19 | ```json 20 | "?parameter1=foo¶meter2=bar" 21 | ``` 22 | -------------------------------------------------------------------------------- /docs/secrets-patternproperties-a-z0-9_.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in Secrets Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/secrets#/patternProperties/[A-Z0-9_]+ 5 | ``` 6 | 7 | 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [secrets.schema.json\*](secrets.schema.json "open original schema") | 12 | 13 | ## \[A-Z0-9\_]+ Type 14 | 15 | any of the folllowing: `boolean` or `integer` or `number` or `string` ([Details](secrets-patternproperties-a-z0-9_.md)) 16 | -------------------------------------------------------------------------------- /docs/rawrequest-definitions-rawrequest-properties-params-properties-ref.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Raw Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/rawrequest#/definitions/rawrequest/properties/params/properties/ref 5 | ``` 6 | 7 | Name of the branch or tag or the SHA of the commit 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [rawrequest.schema.json\*](rawrequest.schema.json "open original schema") | 12 | 13 | ## ref Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/request-properties-selector.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/request#/properties/selector 5 | ``` 6 | 7 | The selector (sub-type indicator). 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [request.schema.json\*](request.schema.json "open original schema") | 12 | 13 | ## selector Type 14 | 15 | `string` 16 | 17 | ## selector Examples 18 | 19 | ```json 20 | "" 21 | ``` 22 | 23 | ```json 24 | "nav" 25 | ``` 26 | -------------------------------------------------------------------------------- /docs/request-properties-url.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/request#/properties/url 5 | ``` 6 | 7 | The path and request parameters of the client request URL. 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [request.schema.json\*](request.schema.json "open original schema") | 12 | 13 | ## url Type 14 | 15 | `string` 16 | 17 | ## url Examples 18 | 19 | ```json 20 | "/docs/api/general/index.nav.html?a=1" 21 | ``` 22 | -------------------------------------------------------------------------------- /docs/rawrequest-definitions-rawrequest-properties-headers-properties-x-backend-name-metaenum.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in Raw Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/rawrequest#/definitions/rawrequest/properties/headers/properties/x-backend-name/meta:enum 5 | ``` 6 | 7 | 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [rawrequest.schema.json\*](rawrequest.schema.json "open original schema") | 12 | 13 | ## meta:enum Type 14 | 15 | unknown 16 | -------------------------------------------------------------------------------- /docs/request-properties-pathinfo.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/request#/properties/pathInfo 5 | ``` 6 | 7 | The part of the client path that is relative to the rootPath. 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [request.schema.json\*](request.schema.json "open original schema") | 12 | 13 | ## pathInfo Type 14 | 15 | `string` 16 | 17 | ## pathInfo Examples 18 | 19 | ```json 20 | "/general/index.nav.html" 21 | ``` 22 | -------------------------------------------------------------------------------- /docs/section-definitions-section-properties-children.md: -------------------------------------------------------------------------------- 1 | # Untitled array in Section Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/section#/definitions/section/properties/children 5 | ``` 6 | 7 | The AST nodes making up the section. Section dividers are not included. 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [section.schema.json\*](section.schema.json "open original schema") | 12 | 13 | ## children Type 14 | 15 | `object[]` ([MDAST](content-properties-mdast.md)) 16 | -------------------------------------------------------------------------------- /docs/mdast-properties-checked.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in MDAST Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/mdast#/properties/checked 5 | ``` 6 | 7 | A checked field can be present. It represents whether the item is done (when true), not done (when false), or indeterminate or not applicable (when null or not present). 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [mdast.schema.json\*](mdast.schema.json "open original schema") | 12 | 13 | ## checked Type 14 | 15 | `boolean` 16 | -------------------------------------------------------------------------------- /docs/rawrequest-definitions-rawrequest-properties-headers-properties-x-request-id.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Raw Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/rawrequest#/definitions/rawrequest/properties/headers/properties/x-request-id 5 | ``` 6 | 7 | Request ID generated by OpenWhisk 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [rawrequest.schema.json\*](rawrequest.schema.json "open original schema") | 12 | 13 | ## x-request-id Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/request-properties-extension.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/request#/properties/extension 5 | ``` 6 | 7 | The extension of the requested resource. 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [request.schema.json\*](request.schema.json "open original schema") | 12 | 13 | ## extension Type 14 | 15 | `string` 16 | 17 | ## extension Examples 18 | 19 | ```json 20 | "html" 21 | ``` 22 | 23 | ```json 24 | "json" 25 | ``` 26 | -------------------------------------------------------------------------------- /docs/secrets-properties-github_token.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Secrets Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/secrets#/properties/GITHUB_TOKEN 5 | ``` 6 | 7 | GitHub access token to use while fetching markdown. See . 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [secrets.schema.json\*](secrets.schema.json "open original schema") | 12 | 13 | ## GITHUB\_TOKEN Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/secrets-properties-xml_pretty.md: -------------------------------------------------------------------------------- 1 | # Untitled boolean in Secrets Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/secrets#/properties/XML_PRETTY 5 | ``` 6 | 7 | Print XML with line breaks and indentation 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [secrets.schema.json\*](secrets.schema.json "open original schema") | 12 | 13 | ## XML\_PRETTY Type 14 | 15 | `boolean` 16 | 17 | ## XML\_PRETTY Default Value 18 | 19 | The default value is: 20 | 21 | ```json 22 | true 23 | ``` 24 | -------------------------------------------------------------------------------- /docs/rawrequest-definitions-rawrequest-properties-headers-properties-x-cdn-request-id.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Raw Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/rawrequest#/definitions/rawrequest/properties/headers/properties/x-cdn-request-id 5 | ``` 6 | 7 | Request ID generated by the CDN 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [rawrequest.schema.json\*](rawrequest.schema.json "open original schema") | 12 | 13 | ## x-cdn-request-id Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/rawrequest-definitions-rawrequest-properties-headers-properties-x-backend-name.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Raw Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/rawrequest#/definitions/rawrequest/properties/headers/properties/x-backend-name 5 | ``` 6 | 7 | Name of the Backend handling the request. 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [rawrequest.schema.json\*](rawrequest.schema.json "open original schema") | 12 | 13 | ## x-backend-name Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/rawrequest-definitions-rawrequest-properties-params-additionalproperties.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Raw Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/rawrequest#/definitions/rawrequest/properties/params/additionalProperties 5 | ``` 6 | 7 | All other parameters are interpreted as string. 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [rawrequest.schema.json\*](rawrequest.schema.json "open original schema") | 12 | 13 | ## additionalProperties Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/mdast-properties-spread.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in MDAST Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/mdast#/properties/spread 5 | ``` 6 | 7 | A spread field can be present. It represents that any of its items is separated by a blank line from its siblings or contains two or more children (when true), or not (when false or not present). 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [mdast.schema.json\*](mdast.schema.json "open original schema") | 12 | 13 | ## spread Type 14 | 15 | `boolean` 16 | -------------------------------------------------------------------------------- /docs/rawrequest-definitions-rawrequest-properties-params-properties-branch.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Raw Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/rawrequest#/definitions/rawrequest/properties/params/properties/branch 5 | ``` 6 | 7 | Name of the branch or tag. defaults back to the value of 'ref' if missing. 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [rawrequest.schema.json\*](rawrequest.schema.json "open original schema") | 12 | 13 | ## branch Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/rawrequest-definitions-rawrequest-properties-params-properties-owner.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Raw Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/rawrequest#/definitions/rawrequest/properties/params/properties/owner 5 | ``` 6 | 7 | Owner of the GitHub repository. This is the name of a user or organization. 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [rawrequest.schema.json\*](rawrequest.schema.json "open original schema") | 12 | 13 | ## owner Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/secrets-properties-http_timeout.md: -------------------------------------------------------------------------------- 1 | # Untitled integer in Secrets Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/secrets#/properties/HTTP_TIMEOUT 5 | ``` 6 | 7 | Timeout for outgoing HTTP requests in milliseconds 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [secrets.schema.json\*](secrets.schema.json "open original schema") | 12 | 13 | ## HTTP\_TIMEOUT Type 14 | 15 | `integer` 16 | 17 | ## HTTP\_TIMEOUT Default Value 18 | 19 | The default value is: 20 | 21 | ```json 22 | 1000 23 | ``` 24 | -------------------------------------------------------------------------------- /docs/rawrequest-definitions-rawrequest-properties-method.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Raw Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/rawrequest#/definitions/rawrequest/properties/method 5 | ``` 6 | 7 | The HTTP method of the request made to OpenWhisk (or Simulator). Note: OpenWhisk converts all methods to lowercase. 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [rawrequest.schema.json\*](rawrequest.schema.json "open original schema") | 12 | 13 | ## method Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/rawrequest-definitions-rawrequest-properties-headers-properties-x-openwhisk-activation-id.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Raw Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/rawrequest#/definitions/rawrequest/properties/headers/properties/x-openwhisk-activation-id 5 | ``` 6 | 7 | OpenWhisk Activation ID 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [rawrequest.schema.json\*](rawrequest.schema.json "open original schema") | 12 | 13 | ## x-openwhisk-activation-id Type 14 | 15 | `string` 16 | -------------------------------------------------------------------------------- /docs/secrets-properties-embed_selector.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Secrets Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/secrets#/properties/EMBED_SELECTOR 5 | ``` 6 | 7 | Selector to be used when resolving internal embeds. 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [secrets.schema.json\*](secrets.schema.json "open original schema") | 12 | 13 | ## EMBED\_SELECTOR Type 14 | 15 | `string` 16 | 17 | ## EMBED\_SELECTOR Default Value 18 | 19 | The default value is: 20 | 21 | ```json 22 | "embed" 23 | ``` 24 | -------------------------------------------------------------------------------- /docs/mdast-properties-depth.md: -------------------------------------------------------------------------------- 1 | # Untitled integer in MDAST Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/mdast#/properties/depth 5 | ``` 6 | 7 | The heading level 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [mdast.schema.json\*](mdast.schema.json "open original schema") | 12 | 13 | ## depth Type 14 | 15 | `integer` 16 | 17 | ## depth Constraints 18 | 19 | **maximum**: the value of this number must smaller than or equal to: `6` 20 | 21 | **minimum**: the value of this number must greater than or equal to: `1` 22 | -------------------------------------------------------------------------------- /docs/secrets-properties-images_min_size.md: -------------------------------------------------------------------------------- 1 | # Untitled integer in Secrets Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/secrets#/properties/IMAGES_MIN_SIZE 5 | ``` 6 | 7 | Minimum physical width of responsive images to generate 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [secrets.schema.json\*](secrets.schema.json "open original schema") | 12 | 13 | ## IMAGES\_MIN\_SIZE Type 14 | 15 | `integer` 16 | 17 | ## IMAGES\_MIN\_SIZE Default Value 18 | 19 | The default value is: 20 | 21 | ```json 22 | 480 23 | ``` 24 | -------------------------------------------------------------------------------- /docs/position.schema.json: -------------------------------------------------------------------------------- 1 | {"meta:license":["Copyright 2018 Adobe. All rights reserved.","This file is licensed to you under the Apache License, Version 2.0 (the \"License\");","you may not use this file except in compliance with the License. You may obtain a copy","of the License at http://www.apache.org/licenses/LICENSE-2.0","","Unless required by applicable law or agreed to in writing, software distributed under","the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS","OF ANY KIND, either express or implied. See the License for the specific language","governing permissions and limitations under the License."],"$id":"https://ns.adobe.com/helix/pipeline/position","$schema":"http://json-schema.org/draft-07/schema#","type":"object","title":"Position","meta:status":"stable","description":"Marks the position of an AST node in the original text flow","additionalProperties":false,"properties":{"start":{"$ref":"https://ns.adobe.com/helix/pipeline/textcoordinates"},"end":{"$ref":"https://ns.adobe.com/helix/pipeline/textcoordinates"},"indent":{"type":"array"}}} 2 | -------------------------------------------------------------------------------- /docs/context-properties-error.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in Context Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/context#/properties/error 5 | ``` 6 | 7 | An error message that has been generated during pipeline processing. 8 | When this property is present, all other values can be ignored. 9 | 10 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 11 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 12 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [context.schema.json\*](context.schema.json "open original schema") | 13 | 14 | ## error Type 15 | 16 | any of the folllowing: `string` or `object` ([Details](context-properties-error.md)) 17 | -------------------------------------------------------------------------------- /docs/rawrequest-definitions-rawrequest-properties-params-properties-path.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Raw Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/rawrequest#/definitions/rawrequest/properties/params/properties/path 5 | ``` 6 | 7 | Path to the requested (Markdown) file 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [rawrequest.schema.json\*](rawrequest.schema.json "open original schema") | 12 | 13 | ## path Type 14 | 15 | `string` 16 | 17 | ## path Examples 18 | 19 | ```json 20 | "/general/index.md" 21 | ``` 22 | -------------------------------------------------------------------------------- /docs/textcoordinates.schema.json: -------------------------------------------------------------------------------- 1 | {"meta:license":["Copyright 2018 Adobe. All rights reserved.","This file is licensed to you under the Apache License, Version 2.0 (the \"License\");","you may not use this file except in compliance with the License. You may obtain a copy","of the License at http://www.apache.org/licenses/LICENSE-2.0","","Unless required by applicable law or agreed to in writing, software distributed under","the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS","OF ANY KIND, either express or implied. See the License for the specific language","governing permissions and limitations under the License."],"$id":"https://ns.adobe.com/helix/pipeline/textcoordinates","$schema":"http://json-schema.org/draft-07/schema#","type":"object","title":"Text Coordinates","meta:status":"stabilizing","description":"A position in a text document","additionalProperties":false,"properties":{"line":{"type":"number","description":"Line number"},"column":{"type":"number","description":"Column number"},"offset":{"type":"number","description":"Character in the entire document"}}} 2 | -------------------------------------------------------------------------------- /src/xml/check-xml.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2018 Adobe. All rights reserved. 3 | * This file is licensed to you under the Apache License, Version 2.0 (the "License"); 4 | * you may not use this file except in compliance with the License. You may obtain a copy 5 | * of the License at http://www.apache.org/licenses/LICENSE-2.0 6 | * 7 | * Unless required by applicable law or agreed to in writing, software distributed under 8 | * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS 9 | * OF ANY KIND, either express or implied. See the License for the specific language 10 | * governing permissions and limitations under the License. 11 | */ 12 | import { parseString } from 'xml2js'; 13 | 14 | export default function check({ response }, { logger }) { 15 | if (!response.body) { 16 | logger.debug('No XML to validate'); 17 | return; 18 | } 19 | 20 | logger.debug('Validating XML'); 21 | parseString(response.body, { trim: true }, (err) => { 22 | if (err) { 23 | throw new Error(`Error parsing XML: ${err}`); 24 | } 25 | }); 26 | } 27 | -------------------------------------------------------------------------------- /test/fixtures/sections/paragraphwithlink.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "This is a paragraph with a link!", 3 | "intro": "This is a paragraph with a link!", 4 | "meta": { 5 | "types": [ 6 | "has-text", 7 | "has-link", 8 | "nb-text-2", 9 | "nb-link-1", 10 | "is-text-link", 11 | "is-text" 12 | ] 13 | }, 14 | "type": "root", 15 | "children": [ 16 | { 17 | "type": "paragraph", 18 | "children": [ 19 | { 20 | "type": "text", 21 | "value": "This is a paragraph with a " 22 | }, 23 | { 24 | "type": "link", 25 | "title": null, 26 | "url": "/index.html", 27 | "children": [ 28 | { 29 | "type": "text", 30 | "value": "link" 31 | } 32 | ] 33 | }, 34 | { 35 | "type": "text", 36 | "value": "!" 37 | } 38 | ], 39 | "meta": { 40 | "types": [ 41 | "is-text", 42 | "has-link" 43 | ] 44 | } 45 | } 46 | ] 47 | } 48 | -------------------------------------------------------------------------------- /docs/mdast-properties-image.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in MDAST Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/mdast#/properties/image 5 | ``` 6 | 7 | Path (can be relative) to the first image in the document 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [mdast.schema.json\*](mdast.schema.json "open original schema") | 12 | 13 | ## image Type 14 | 15 | `string` 16 | 17 | ## image Constraints 18 | 19 | **URI reference**: the string must be a URI reference, according to [RFC 3986](https://tools.ietf.org/html/rfc3986 "check the specification") 20 | -------------------------------------------------------------------------------- /test/fixtures/sections/headerimage.json: -------------------------------------------------------------------------------- 1 | { 2 | "intro": "Header and one image", 3 | "image": "./helix_logo.png", 4 | "title": "Header and one image", 5 | "meta": { 6 | "types": [ 7 | "has-image", 8 | "has-heading", 9 | "nb-image-1", 10 | "nb-heading-1", 11 | "is-heading-image", 12 | "is-heading" 13 | ] 14 | }, 15 | "type": "root", 16 | "children": [ 17 | { 18 | "type": "heading", 19 | "depth": 1, 20 | "children": [ 21 | { 22 | "type": "text", 23 | "value": "Header and one image" 24 | } 25 | ], 26 | "meta": { 27 | "types": [ 28 | "is-heading" 29 | ] 30 | } 31 | }, 32 | { 33 | "type": "paragraph", 34 | "children": [ 35 | { 36 | "type": "image", 37 | "title": null, 38 | "url": "./helix_logo.png", 39 | "alt": "helix-logo" 40 | } 41 | ], 42 | "meta": { 43 | "types": [ 44 | "has-image" 45 | ] 46 | } 47 | } 48 | ] 49 | } 50 | -------------------------------------------------------------------------------- /src/html/coerce-secrets.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2021 Adobe. All rights reserved. 3 | * This file is licensed to you under the Apache License, Version 2.0 (the "License"); 4 | * you may not use this file except in compliance with the License. You may obtain a copy 5 | * of the License at http://www.apache.org/licenses/LICENSE-2.0 6 | * 7 | * Unless required by applicable law or agreed to in writing, software distributed under 8 | * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS 9 | * OF ANY KIND, either express or implied. See the License for the specific language 10 | * governing permissions and limitations under the License. 11 | */ 12 | import ajv from '../utils/validator.js'; 13 | 14 | export default function coerce(action) { 15 | const defaultsetter = ajv(action.logger, { useDefaults: true, coerceTypes: true }); 16 | if (!action.secrets) { 17 | action.secrets = {}; 18 | } 19 | action.logger.debug('Coercing secrets'); 20 | defaultsetter.validate('https://ns.adobe.com/helix/pipeline/secrets', action.secrets); 21 | return action; 22 | } 23 | -------------------------------------------------------------------------------- /docs/content-properties-image.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Content Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/content#/properties/image 5 | ``` 6 | 7 | Path (can be relative) to the first image in the document 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [content.schema.json\*](content.schema.json "open original schema") | 12 | 13 | ## image Type 14 | 15 | `string` 16 | 17 | ## image Constraints 18 | 19 | **URI reference**: the string must be a URI reference, according to [RFC 3986](https://tools.ietf.org/html/rfc3986 "check the specification") 20 | -------------------------------------------------------------------------------- /docs/rawrequest-definitions-rawrequest-properties-params-properties-rootpath.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Raw Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/rawrequest#/definitions/rawrequest/properties/params/properties/rootPath 5 | ``` 6 | 7 | The request root path of the current strain. 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [rawrequest.schema.json\*](rawrequest.schema.json "open original schema") | 12 | 13 | ## rootPath Type 14 | 15 | `string` 16 | 17 | ## rootPath Examples 18 | 19 | ```json 20 | "/docs/api" 21 | ``` 22 | -------------------------------------------------------------------------------- /test/setup-env.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2021 Adobe. All rights reserved. 3 | * This file is licensed to you under the Apache License, Version 2.0 (the "License"); 4 | * you may not use this file except in compliance with the License. You may obtain a copy 5 | * of the License at http://www.apache.org/licenses/LICENSE-2.0 6 | * 7 | * Unless required by applicable law or agreed to in writing, software distributed under 8 | * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS 9 | * OF ANY KIND, either express or implied. See the License for the specific language 10 | * governing permissions and limitations under the License. 11 | */ 12 | import { resolve } from 'path'; 13 | import { fileURLToPath } from 'url'; 14 | 15 | // eslint-disable-next-line no-console 16 | console.log('Forcing HTTP/1.1 for Helix-Fetch'); 17 | process.env.HELIX_FETCH_FORCE_HTTP1 = 'true'; 18 | process.env.HELIX_PIPELINE_FORCE_HTTP1 = 'true'; 19 | 20 | global.__rootdir = resolve(fileURLToPath(import.meta.url), '..', '..'); 21 | global.__testdir = resolve(fileURLToPath(import.meta.url), '..'); 22 | -------------------------------------------------------------------------------- /docs/secrets-properties-http_timeout_external.md: -------------------------------------------------------------------------------- 1 | # Untitled integer in Secrets Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/secrets#/properties/HTTP_TIMEOUT_EXTERNAL 5 | ``` 6 | 7 | Timeout for outgoing HTTP requests to external services in milliseconds 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [secrets.schema.json\*](secrets.schema.json "open original schema") | 12 | 13 | ## HTTP\_TIMEOUT\_EXTERNAL Type 14 | 15 | `integer` 16 | 17 | ## HTTP\_TIMEOUT\_EXTERNAL Default Value 18 | 19 | The default value is: 20 | 21 | ```json 22 | 20000 23 | ``` 24 | -------------------------------------------------------------------------------- /docs/mdast-properties-url.md: -------------------------------------------------------------------------------- 1 | # Untitled string in MDAST Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/mdast#/properties/url 5 | ``` 6 | 7 | For resources, an url field must be present. It represents a URL to the referenced resource. 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [mdast.schema.json\*](mdast.schema.json "open original schema") | 12 | 13 | ## url Type 14 | 15 | `string` 16 | 17 | ## url Constraints 18 | 19 | **URI reference**: the string must be a URI reference, according to [RFC 3986](https://tools.ietf.org/html/rfc3986 "check the specification") 20 | -------------------------------------------------------------------------------- /docs/secrets-properties-content_proxy_url.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Secrets Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/secrets#/properties/CONTENT_PROXY_URL 5 | ``` 6 | 7 | URL of the content proxy service. 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [secrets.schema.json\*](secrets.schema.json "open original schema") | 12 | 13 | ## CONTENT\_PROXY\_URL Type 14 | 15 | `string` 16 | 17 | ## CONTENT\_PROXY\_URL Constraints 18 | 19 | **URI**: the string must be a URI, according to [RFC 3986](https://tools.ietf.org/html/rfc3986 "check the specification") 20 | -------------------------------------------------------------------------------- /docs/section-definitions-section-properties-type.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in Section Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/section#/definitions/section/properties/type 5 | ``` 6 | 7 | The MDAST node type. Each section can be treated as a standalone document. 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [section.schema.json\*](section.schema.json "open original schema") | 12 | 13 | ## type Type 14 | 15 | unknown 16 | 17 | ## type Constraints 18 | 19 | **constant**: the value of this property must be equal to: 20 | 21 | ```json 22 | "root" 23 | ``` 24 | -------------------------------------------------------------------------------- /src/utils/is-production.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2018 Adobe. All rights reserved. 3 | * This file is licensed to you under the Apache License, Version 2.0 (the "License"); 4 | * you may not use this file except in compliance with the License. You may obtain a copy 5 | * of the License at http://www.apache.org/licenses/LICENSE-2.0 6 | * 7 | * Unless required by applicable law or agreed to in writing, software distributed under 8 | * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS 9 | * OF ANY KIND, either express or implied. See the License for the specific language 10 | * governing permissions and limitations under the License. 11 | */ 12 | /** 13 | * Returns true when run inside an OpenWhisk action or Lambda Function, false otherwise. 14 | */ 15 | export default function production() { 16 | try { 17 | // eslint-disable-next-line no-underscore-dangle 18 | return Boolean(process.env.__OW_ACTIVATION_ID) || Boolean(process.env.AWS_LAMBDA_FUNCTION_NAME); 19 | } catch (e) { 20 | // this error only occurs when running inside OpenWhisk 21 | return true; 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /docs/mdast-properties-children-items.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in MDAST Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/mdast#/properties/children/items 5 | ``` 6 | 7 | 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [mdast.schema.json\*](mdast.schema.json "open original schema") | 12 | 13 | ## items Type 14 | 15 | merged type ([Details](mdast-properties-children-items.md)) 16 | 17 | one (and only one) of 18 | 19 | * [MDAST](content-properties-mdast.md "check type definition") 20 | 21 | * [Untitled undefined type in MDAST](section-definitions-section.md "check type definition") 22 | -------------------------------------------------------------------------------- /docs/meta-definitions-meta-properties-image.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Section Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/section#/definitions/section/properties/image 5 | ``` 6 | 7 | Path (can be relative) to the first image in the document 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [section.schema.json\*](section.schema.json "open original schema") | 12 | 13 | ## image Type 14 | 15 | `string` 16 | 17 | ## image Constraints 18 | 19 | **URI reference**: the string must be a URI reference, according to [RFC 3986](https://tools.ietf.org/html/rfc3986 "check the specification") 20 | -------------------------------------------------------------------------------- /docs/rawrequest-definitions-rawrequest-properties-params-properties-__ow_headers.md: -------------------------------------------------------------------------------- 1 | # Untitled object in Raw Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/rawrequest#/definitions/rawrequest/properties/params/properties/__ow_headers 5 | ``` 6 | 7 | Deprecated: The original OpenWhisk request headers 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [rawrequest.schema.json\*](rawrequest.schema.json "open original schema") | 12 | 13 | ## \_\_ow\_headers Type 14 | 15 | `object` ([Details](rawrequest-definitions-rawrequest-properties-params-properties-__ow_headers.md)) 16 | -------------------------------------------------------------------------------- /src/utils/table-handler.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2018 Adobe. All rights reserved. 3 | * This file is licensed to you under the Apache License, Version 2.0 (the "License"); 4 | * you may not use this file except in compliance with the License. You may obtain a copy 5 | * of the License at http://www.apache.org/licenses/LICENSE-2.0 6 | * 7 | * Unless required by applicable law or agreed to in writing, software distributed under 8 | * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS 9 | * OF ANY KIND, either express or implied. See the License for the specific language 10 | * governing permissions and limitations under the License. 11 | */ 12 | import { table as fallback } from 'mdast-util-to-hast/lib/handlers/table.js'; 13 | 14 | export default function table() { 15 | return function handler(h, node) { 16 | // remove 'none' from align 17 | if (node.align) { 18 | for (let i = 0; i < node.align.length; i += 1) { 19 | if (node.align[i] === 'none') { 20 | node.align[i] = null; 21 | } 22 | } 23 | } 24 | return fallback(h, node); 25 | }; 26 | } 27 | -------------------------------------------------------------------------------- /docs/section-definitions-section-properties-image.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Section Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/section#/definitions/section/properties/image 5 | ``` 6 | 7 | Path (can be relative) to the first image in the document 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [section.schema.json\*](section.schema.json "open original schema") | 12 | 13 | ## image Type 14 | 15 | `string` 16 | 17 | ## image Constraints 18 | 19 | **URI reference**: the string must be a URI reference, according to [RFC 3986](https://tools.ietf.org/html/rfc3986 "check the specification") 20 | -------------------------------------------------------------------------------- /docs/secrets-properties-embed_service.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Secrets Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/secrets#/properties/EMBED_SERVICE 5 | ``` 6 | 7 | URL of an Embed Service that takes the appended URL and returns an embeddable HTML representation. 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [secrets.schema.json\*](secrets.schema.json "open original schema") | 12 | 13 | ## EMBED\_SERVICE Type 14 | 15 | `string` 16 | 17 | ## EMBED\_SERVICE Default Value 18 | 19 | The default value is: 20 | 21 | ```json 22 | "https://helix-pages.anywhere.run/helix-services/embed@v1" 23 | ``` 24 | -------------------------------------------------------------------------------- /docs/response-properties-body.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in Response Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/response#/properties/body 5 | ``` 6 | 7 | 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [response.schema.json\*](response.schema.json "open original schema") | 12 | 13 | ## body Type 14 | 15 | merged type ([Details](response-properties-body.md)) 16 | 17 | any of 18 | 19 | * [Untitled undefined type in Response](response-properties-body-anyof-0.md "check type definition") 20 | 21 | * [Untitled object in Response](response-properties-body-anyof-1.md "check type definition") 22 | -------------------------------------------------------------------------------- /docs/mdast-properties-code.md: -------------------------------------------------------------------------------- 1 | # Untitled string in MDAST Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/mdast#/properties/code 5 | ``` 6 | 7 | Icon code 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [mdast.schema.json\*](mdast.schema.json "open original schema") | 12 | 13 | ## code Type 14 | 15 | `string` 16 | 17 | ## code Constraints 18 | 19 | **pattern**: the string must match the following regular expression: 20 | 21 | ```regexp 22 | :#*[a-zA-Z_-]+[a-zA-Z0-9]*: 23 | ``` 24 | 25 | [try pattern](https://regexr.com/?expression=%3A%23*%5Ba-zA-Z_-%5D%2B%5Ba-zA-Z0-9%5D*%3A "try regular expression with regexr.com") 26 | -------------------------------------------------------------------------------- /src/html/smartypants.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2018 Adobe. All rights reserved. 3 | * This file is licensed to you under the Apache License, Version 2.0 (the "License"); 4 | * you may not use this file except in compliance with the License. You may obtain a copy 5 | * of the License at http://www.apache.org/licenses/LICENSE-2.0 6 | * 7 | * Unless required by applicable law or agreed to in writing, software distributed under 8 | * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS 9 | * OF ANY KIND, either express or implied. See the License for the specific language 10 | * governing permissions and limitations under the License. 11 | */ 12 | import { retext } from 'retext'; 13 | import { visit } from 'unist-util-visit'; 14 | import smartypants from 'retext-smartypants'; 15 | 16 | const smart = retext().use(smartypants); 17 | 18 | export default function reformat({ content }) { 19 | if (!content.mdast) { 20 | return; 21 | } 22 | visit(content.mdast, (node) => { 23 | if (node.type === 'text' && node.value.match(/(--)|(\.\.\.)|(['"`])/)) { 24 | node.value = smart.processSync(node.value).value; 25 | } 26 | }); 27 | } 28 | -------------------------------------------------------------------------------- /docs/secrets-properties-sanitize_dom.md: -------------------------------------------------------------------------------- 1 | # Untitled boolean in Secrets Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/secrets#/properties/SANITIZE_DOM 5 | ``` 6 | 7 | Sanitize the HTML output to guard against XSS attacks. 8 | 9 | **Note:** this flag applies a pretty aggressive DOM filtering that will strip out a lot of HTML that your authors might find useful. The setting is meant for processing truly untrusted inputs, such as comments in a social media site. 10 | 11 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 12 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 13 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [secrets.schema.json\*](secrets.schema.json "open original schema") | 14 | 15 | ## SANITIZE\_DOM Type 16 | 17 | `boolean` 18 | -------------------------------------------------------------------------------- /docs/secrets-properties-data_embed_service.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Secrets Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/secrets#/properties/DATA_EMBED_SERVICE 5 | ``` 6 | 7 | URL of a DataEmbed Service that takes the appended URL and returns an iterable JSON representation. 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [secrets.schema.json\*](secrets.schema.json "open original schema") | 12 | 13 | ## DATA\_EMBED\_SERVICE Type 14 | 15 | `string` 16 | 17 | ## DATA\_EMBED\_SERVICE Default Value 18 | 19 | The default value is: 20 | 21 | ```json 22 | "https://adobeioruntime.net/api/v1/web/helix/helix-services/data-embed@v2" 23 | ``` 24 | -------------------------------------------------------------------------------- /docs/mdast-properties-align-items.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in MDAST Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/mdast#/properties/align/items 5 | ``` 6 | 7 | 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [mdast.schema.json\*](mdast.schema.json "open original schema") | 12 | 13 | ## items Type 14 | 15 | `string` 16 | 17 | ## items Constraints 18 | 19 | **enum**: the value of this property must be equal to one of the following values: 20 | 21 | | Value | Explanation | 22 | | :--------- | :---------- | 23 | | `"left"` | | 24 | | `"right"` | | 25 | | `"center"` | | 26 | | `"none"` | | 27 | | `null` | | 28 | -------------------------------------------------------------------------------- /src/utils/link-handler.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2018 Adobe. All rights reserved. 3 | * This file is licensed to you under the Apache License, Version 2.0 (the "License"); 4 | * you may not use this file except in compliance with the License. You may obtain a copy 5 | * of the License at http://www.apache.org/licenses/LICENSE-2.0 6 | * 7 | * Unless required by applicable law or agreed to in writing, software distributed under 8 | * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS 9 | * OF ANY KIND, either express or implied. See the License for the specific language 10 | * governing permissions and limitations under the License. 11 | */ 12 | import { link as fallback } from 'mdast-util-to-hast/lib/handlers/link.js'; 13 | import { parse, serialize } from 'uri-js'; 14 | 15 | export default function link({ extension = 'html' } = {}) { 16 | return function handler(h, node) { 17 | const n = { ...node }; 18 | const uriParts = parse(n.url); 19 | if (!uriParts.scheme && uriParts.path) { 20 | uriParts.path = uriParts.path.replace(/\.md$/, `.${extension}`); 21 | n.url = serialize(uriParts, { absolutePath: true }); 22 | } 23 | return fallback(h, n); 24 | }; 25 | } 26 | -------------------------------------------------------------------------------- /docs/secrets-properties-repo_api_root.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Secrets Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/secrets#/properties/REPO_API_ROOT 5 | ``` 6 | 7 | The base URL for all GitHub API operations 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [secrets.schema.json\*](secrets.schema.json "open original schema") | 12 | 13 | ## REPO\_API\_ROOT Type 14 | 15 | `string` 16 | 17 | ## REPO\_API\_ROOT Constraints 18 | 19 | **URI**: the string must be a URI, according to [RFC 3986](https://tools.ietf.org/html/rfc3986 "check the specification") 20 | 21 | ## REPO\_API\_ROOT Default Value 22 | 23 | The default value is: 24 | 25 | ```json 26 | "https://api.github.com/" 27 | ``` 28 | -------------------------------------------------------------------------------- /src/json/emit-json.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 Adobe. All rights reserved. 3 | * This file is licensed to you under the Apache License, Version 2.0 (the "License"); 4 | * you may not use this file except in compliance with the License. You may obtain a copy 5 | * of the License at http://www.apache.org/licenses/LICENSE-2.0 6 | * 7 | * Unless required by applicable law or agreed to in writing, software distributed under 8 | * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS 9 | * OF ANY KIND, either express or implied. See the License for the specific language 10 | * governing permissions and limitations under the License. 11 | */ 12 | import { setdefault } from 'ferrum'; 13 | 14 | export default function emit(context, { logger }) { 15 | const content = setdefault(context, 'content', {}); 16 | const response = setdefault(context, 'response', {}); 17 | 18 | if (response.body) { 19 | logger.debug('Response body already exists'); 20 | return; 21 | } 22 | if (!content.json) { 23 | logger.debug('No JSON to emit'); 24 | return; 25 | } 26 | 27 | logger.debug(`Emitting JSON from ${typeof content.json}`); 28 | response.body = JSON.parse(JSON.stringify(content.json)); 29 | } 30 | -------------------------------------------------------------------------------- /docs/context.schema.json: -------------------------------------------------------------------------------- 1 | {"meta:license":["Copyright 2018 Adobe. All rights reserved.","This file is licensed to you under the Apache License, Version 2.0 (the \"License\");","you may not use this file except in compliance with the License. You may obtain a copy","of the License at http://www.apache.org/licenses/LICENSE-2.0","","Unless required by applicable law or agreed to in writing, software distributed under","the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS","OF ANY KIND, either express or implied. See the License for the specific language","governing permissions and limitations under the License."],"$id":"https://ns.adobe.com/helix/pipeline/context","$schema":"http://json-schema.org/draft-07/schema#","title":"Context","type":"object","meta:status":"stabilizing","description":"The context thingie.","additionalProperties":false,"properties":{"error":{"type":["string","object"],"description":"An error message that has been generated during pipeline processing.\nWhen this property is present, all other values can be ignored."},"request":{"$ref":"https://ns.adobe.com/helix/pipeline/request"},"content":{"$ref":"https://ns.adobe.com/helix/pipeline/content"},"response":{"$ref":"https://ns.adobe.com/helix/pipeline/response"}}} 2 | -------------------------------------------------------------------------------- /docs/secrets-properties-data_embed_allowlist.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Secrets Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/secrets#/properties/DATA_EMBED_ALLOWLIST 5 | ``` 6 | 7 | Comma-separated list of allowed hostnames for data embeds. Supports `*.example.com` as a subdomain wildcard. Use `*` to allow all embeds (potentially insecure and conflicting with `EMBED_ALLOWLIST`) 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [secrets.schema.json\*](secrets.schema.json "open original schema") | 12 | 13 | ## DATA\_EMBED\_ALLOWLIST Type 14 | 15 | `string` 16 | 17 | ## DATA\_EMBED\_ALLOWLIST Default Value 18 | 19 | The default value is: 20 | 21 | ```json 22 | "docs.google.com, *.sharepoint.com" 23 | ``` 24 | -------------------------------------------------------------------------------- /docs/request-properties-params-additionalproperties.md: -------------------------------------------------------------------------------- 1 | # Untitled undefined type in Request Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/request#/properties/params/additionalProperties 5 | ``` 6 | 7 | 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [request.schema.json\*](request.schema.json "open original schema") | 12 | 13 | ## additionalProperties Type 14 | 15 | merged type ([Details](request-properties-params-additionalproperties.md)) 16 | 17 | any of 18 | 19 | * [Untitled string in Request](request-properties-params-additionalproperties-anyof-0.md "check type definition") 20 | 21 | * [Untitled array in Request](request-properties-params-additionalproperties-anyof-1.md "check type definition") 22 | -------------------------------------------------------------------------------- /docs/secrets-properties-repo_raw_root.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Secrets Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/secrets#/properties/REPO_RAW_ROOT 5 | ``` 6 | 7 | The Base URL for retrieving raw text files from GitHub 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [secrets.schema.json\*](secrets.schema.json "open original schema") | 12 | 13 | ## REPO\_RAW\_ROOT Type 14 | 15 | `string` 16 | 17 | ## REPO\_RAW\_ROOT Constraints 18 | 19 | **URI**: the string must be a URI, according to [RFC 3986](https://tools.ietf.org/html/rfc3986 "check the specification") 20 | 21 | ## REPO\_RAW\_ROOT Default Value 22 | 23 | The default value is: 24 | 25 | ```json 26 | "https://raw.githubusercontent.com/" 27 | ``` 28 | -------------------------------------------------------------------------------- /test/fixtures/wordembeds.md: -------------------------------------------------------------------------------- 1 | Hello, Word Embed! 2 | 3 | 4 | 5 | Here’s an image with a QR Code: The QR Code resolves to the url of a Youtube clip. This image will be replaced by a Link+Image-style Embed. 6 | 7 | 8 | 9 | [![](https://hlx.blob.core.windows.net/external/aa59825575016ba5bb9f1ee54be5d7efc23e3032#image.png)](https://www.youtube.com/watch?v=85UKLsvQEIA) 10 | 11 | 12 | 13 | Here’s a picture of Helix: 14 | 15 | 16 | 17 | ![This is Helix](https://hlx.blob.core.windows.net/external/78133967c7b3baeda8a658be2928a49e9e46e3d4#image.png) 18 | 19 | And another example with a QR code: 20 | 21 | 22 | 23 | [![](https://hlx.blob.core.windows.net/external/e4f94908929f83caea5221f91b9d12bdac245afa#image.png)](https://www.youtube.com/watch?v=m7atGkba-Z8) 24 | 25 | 26 | 27 | A image with a QR code that doesn’t resolve to an URL: 28 | 29 | ![](https://hlx.blob.core.windows.net/external/bdb0328f42d0a803ede5f0f01bf2274ff337eb1b#image.png) 30 | 31 | And here’s a link: 32 | 33 | [Link + Image-Style Embeds](https://github.com/adobe/helix-pipeline/blob/master/docs/markdown.md#link--image-style-embeds) 34 | 35 | 36 | 37 | And just an url: 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | -------------------------------------------------------------------------------- /src/html/validate.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2021 Adobe. All rights reserved. 3 | * This file is licensed to you under the Apache License, Version 2.0 (the "License"); 4 | * you may not use this file except in compliance with the License. You may obtain a copy 5 | * of the License at http://www.apache.org/licenses/LICENSE-2.0 6 | * 7 | * Unless required by applicable law or agreed to in writing, software distributed under 8 | * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS 9 | * OF ANY KIND, either express or implied. See the License for the specific language 10 | * governing permissions and limitations under the License. 11 | */ 12 | import ajv from '../utils/validator.js'; 13 | 14 | export default function validate(context, action, index) { 15 | const validator = ajv(action.logger); 16 | const cvalid = validator.validate('https://ns.adobe.com/helix/pipeline/context', context); 17 | if (!cvalid) { 18 | throw new Error(`Invalid Context at step ${index}: \n${validator.enhancedErrorsText()}`); 19 | } 20 | const avalid = validator.validate('https://ns.adobe.com/helix/pipeline/action', action); 21 | if (!avalid) { 22 | throw new Error(`Invalid Action at step ${index}: \n${validator.enhancedErrorsText()}`); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /index.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2018 Adobe. All rights reserved. 3 | * This file is licensed to you under the Apache License, Version 2.0 (the "License"); 4 | * you may not use this file except in compliance with the License. You may obtain a copy 5 | * of the License at http://www.apache.org/licenses/LICENSE-2.0 6 | * 7 | * Unless required by applicable law or agreed to in writing, software distributed under 8 | * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS 9 | * OF ANY KIND, either express or implied. See the License for the specific language 10 | * governing permissions and limitations under the License. 11 | */ 12 | 13 | import { pipe, pre, log } from './src/defaults/default.js'; 14 | 15 | import vdom from './src/utils/mdast-to-vdom.js'; 16 | import types from './src/utils/match-section-types.js'; 17 | 18 | export { default as Pipeline } from './src/pipeline.js'; 19 | export { default as UniversalAction } from './src/universal.js'; 20 | 21 | /** 22 | * @module pipeline 23 | * @typedef {import("./src/action").Action} Action 24 | * @typedef {import("./src/context").Context} Context 25 | */ 26 | 27 | export const utils = { 28 | vdom, 29 | types, 30 | }; 31 | 32 | export const defaults = { 33 | pipe, 34 | pre, 35 | log, 36 | }; 37 | -------------------------------------------------------------------------------- /test/fixtures/googleembeds.md: -------------------------------------------------------------------------------- 1 | Hello, Google Docs Embed! 2 | 3 | 4 | 5 | Here’s an image with a QR Code: The QR Code resolves to the url of a Youtube clip. This image will be replaced by a Link+Image-style Embed. 6 | 7 | 8 | 9 | [![Lars explains the future.](https://hlx.blob.core.windows.net/external/aa59825575016ba5bb9f1ee54be5d7efc23e3032#image.png)](https://www.youtube.com/watch?v=85UKLsvQEIA) 10 | 11 | 12 | 13 | Here’s a picture of Helix: 14 | 15 | 16 | 17 | ![](https://hlx.blob.core.windows.net/external/78133967c7b3baeda8a658be2928a49e9e46e3d4#image.png) 18 | 19 | And another example with a QR code: 20 | 21 | 22 | 23 | [![Cybertruck event](https://hlx.blob.core.windows.net/external/e4f94908929f83caea5221f91b9d12bdac245afa#image.png)](https://www.youtube.com/watch?v=m7atGkba-Z8) 24 | 25 | 26 | 27 | A image with a QR code that doesn’t resolve to an URL: 28 | 29 | ![](https://hlx.blob.core.windows.net/external/bdb0328f42d0a803ede5f0f01bf2274ff337eb1b#image.png) 30 | 31 | And here’s a link: 32 | 33 | [Link + Image-Style Embeds](https://github.com/adobe/helix-pipeline/blob/master/docs/markdown.md#link--image-style-embeds) 34 | 35 | 36 | 37 | And just an url: 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | -------------------------------------------------------------------------------- /src/html/removeHlxProps.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 Adobe. All rights reserved. 3 | * This file is licensed to you under the Apache License, Version 2.0 (the "License"); 4 | * you may not use this file except in compliance with the License. You may obtain a copy 5 | * of the License at http://www.apache.org/licenses/LICENSE-2.0 6 | * 7 | * Unless required by applicable law or agreed to in writing, software distributed under 8 | * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS 9 | * OF ANY KIND, either express or implied. See the License for the specific language 10 | * governing permissions and limitations under the License. 11 | */ 12 | export default function clean({ response }) { 13 | response.document.querySelectorAll('[class]').forEach((el) => { 14 | // Remove all `hlx-*` classes on the elements 15 | el.classList.value.split(' ') 16 | .filter((cls) => cls.indexOf('hlx-') === 0) 17 | .forEach((cls) => el.classList.remove(cls)); 18 | if (!el.classList.length) { 19 | el.removeAttribute('class'); 20 | } 21 | 22 | // Remove all `data-hlx-*` attributes on these elements 23 | Object.keys(el.dataset) 24 | .filter((key) => key.match(/^hlx[A-Z]/)) 25 | .forEach((key) => delete el.dataset[key]); 26 | }); 27 | } 28 | -------------------------------------------------------------------------------- /src/html/flag-esi.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2018 Adobe. All rights reserved. 3 | * This file is licensed to you under the Apache License, Version 2.0 (the "License"); 4 | * you may not use this file except in compliance with the License. You may obtain a copy 5 | * of the License at http://www.apache.org/licenses/LICENSE-2.0 6 | * 7 | * Unless required by applicable law or agreed to in writing, software distributed under 8 | * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS 9 | * OF ANY KIND, either express or implied. See the License for the specific language 10 | * governing permissions and limitations under the License. 11 | */ 12 | import merge from 'lodash/merge.js'; 13 | 14 | /** 15 | * Detects if ESI tags are used in the repose body. Intended to be used as 16 | * a predicate in the pipeline construction. 17 | * @param {Context} param0 the pipeline context 18 | */ 19 | export function esi({ response }) { 20 | return Boolean(response && response.body && /${response.body}`).window.document; 24 | response.document.serialize = () => response.document.body.innerHTML; 25 | } 26 | delete response.body; 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /docs/mdast-properties-data.md: -------------------------------------------------------------------------------- 1 | # Untitled object in MDAST Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/mdast#/properties/data 5 | ``` 6 | 7 | data is guaranteed to never be specified by unist or specifications implementing unist. Free data space. 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :-------------------------------------------------------------- | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [mdast.schema.json\*](mdast.schema.json "open original schema") | 12 | 13 | ## data Type 14 | 15 | `object` ([Details](mdast-properties-data.md)) 16 | 17 | # data Properties 18 | 19 | | Property | Type | Required | Nullable | Defined by | 20 | | :-------------------- | :--- | :------- | :---------- | :--------- | 21 | | Additional Properties | Any | Optional | can be null | | 22 | 23 | ## Additional Properties 24 | 25 | Additional properties are allowed and do not have to follow a specific schema 26 | -------------------------------------------------------------------------------- /src/schemas/position.schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "meta:license": [ 3 | "Copyright 2018 Adobe. All rights reserved.", 4 | "This file is licensed to you under the Apache License, Version 2.0 (the \"License\");", 5 | "you may not use this file except in compliance with the License. You may obtain a copy", 6 | "of the License at http://www.apache.org/licenses/LICENSE-2.0", 7 | "", 8 | "Unless required by applicable law or agreed to in writing, software distributed under", 9 | "the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS", 10 | "OF ANY KIND, either express or implied. See the License for the specific language", 11 | "governing permissions and limitations under the License." 12 | ], 13 | "$id": "https://ns.adobe.com/helix/pipeline/position", 14 | "$schema": "http://json-schema.org/draft-07/schema#", 15 | "type": "object", 16 | "title": "Position", 17 | "meta:status": "stable", 18 | "description": "Marks the position of an AST node in the original text flow", 19 | "additionalProperties": false, 20 | "properties": { 21 | "start": { 22 | "$ref": "https://ns.adobe.com/helix/pipeline/textcoordinates" 23 | }, 24 | "end": { 25 | "$ref": "https://ns.adobe.com/helix/pipeline/textcoordinates" 26 | }, 27 | "indent": { 28 | "type": "array" 29 | } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /src/html/fetch-markupconfig.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2020 Adobe. All rights reserved. 3 | * This file is licensed to you under the Apache License, Version 2.0 (the "License"); 4 | * you may not use this file except in compliance with the License. You may obtain a copy 5 | * of the License at http://www.apache.org/licenses/LICENSE-2.0 6 | * 7 | * Unless required by applicable law or agreed to in writing, software distributed under 8 | * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS 9 | * OF ANY KIND, either express or implied. See the License for the specific language 10 | * governing permissions and limitations under the License. 11 | */ 12 | export default async function fetchMarkupConfig(context, action) { 13 | const { request, downloader } = action; 14 | 15 | const { 16 | owner, repo, ref, 17 | } = request.params || {}; 18 | const path = '/helix-markup.yaml'; 19 | 20 | // ignore markup config for non-github content 21 | if (!owner || !repo) { 22 | return; 23 | } 24 | 25 | try { 26 | // schedule fetch task 27 | downloader.fetchGithub({ 28 | owner, 29 | repo, 30 | ref, 31 | path, 32 | id: 'markupconfig', 33 | }); 34 | } catch (err) { 35 | // throw error if no status error 36 | /* istanbul ignore next */ 37 | if (!err.status) { 38 | throw err; 39 | } 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /test/split-sections.test.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2018 Adobe. All rights reserved. 3 | * This file is licensed to you under the Apache License, Version 2.0 (the "License"); 4 | * you may not use this file except in compliance with the License. You may obtain a copy 5 | * of the License at http://www.apache.org/licenses/LICENSE-2.0 6 | * 7 | * Unless required by applicable law or agreed to in writing, software distributed under 8 | * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS 9 | * OF ANY KIND, either express or implied. See the License for the specific language 10 | * governing permissions and limitations under the License. 11 | */ 12 | /* eslint-env mocha */ 13 | import { logging } from '@adobe/helix-testutils'; 14 | 15 | import parse from '../src/html/parse-markdown.js'; 16 | import split from '../src/html/split-sections.js'; 17 | import { assertMatch } from './markdown-utils.js'; 18 | 19 | const logger = logging.createTestLogger({ 20 | // tune this for debugging 21 | level: 'info', 22 | }); 23 | 24 | function callback(body) { 25 | const data = { content: { body } }; 26 | parse(data, { logger }); 27 | split(data, { logger }); 28 | return data.content.mdast.children; 29 | } 30 | 31 | describe('Test Section Splitting', () => { 32 | it('Parses markdown with sections', () => { 33 | assertMatch('sections', callback); 34 | }); 35 | }); 36 | -------------------------------------------------------------------------------- /src/html/set-surrogate-key.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2018 Adobe. All rights reserved. 3 | * This file is licensed to you under the Apache License, Version 2.0 (the "License"); 4 | * you may not use this file except in compliance with the License. You may obtain a copy 5 | * of the License at http://www.apache.org/licenses/LICENSE-2.0 6 | * 7 | * Unless required by applicable law or agreed to in writing, software distributed under 8 | * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS 9 | * OF ANY KIND, either express or implied. See the License for the specific language 10 | * governing permissions and limitations under the License. 11 | */ 12 | import { 13 | join, map, setdefault, type, 14 | } from 'ferrum'; 15 | import { computeSurrogateKey } from '@adobe/helix-shared-utils'; 16 | 17 | export default function key(context, { logger }) { 18 | const cont = setdefault(context, 'content', {}); 19 | const res = setdefault(context, 'response', {}); 20 | const headers = setdefault(res, 'headers', {}); 21 | 22 | // somebody already set a surrogate key 23 | if (headers['Surrogate-Key'] || !(type(cont.sources) === Array)) { 24 | logger.debug('Keeping existing Surrogate-Key header'); 25 | return; 26 | } 27 | 28 | logger.debug('Setting Surrogate-Key header'); 29 | headers['Surrogate-Key'] = join(' ')(map(cont.sources, computeSurrogateKey)); 30 | } 31 | -------------------------------------------------------------------------------- /src/html/set-last-modified.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2021 Adobe. All rights reserved. 3 | * This file is licensed to you under the Apache License, Version 2.0 (the "License"); 4 | * you may not use this file except in compliance with the License. You may obtain a copy 5 | * of the License at http://www.apache.org/licenses/LICENSE-2.0 6 | * 7 | * Unless required by applicable law or agreed to in writing, software distributed under 8 | * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS 9 | * OF ANY KIND, either express or implied. See the License for the specific language 10 | * governing permissions and limitations under the License. 11 | */ 12 | import { setdefault } from 'ferrum'; 13 | 14 | export default function lastModified(context, { logger }) { 15 | const content = setdefault(context, 'content', {}); 16 | const res = setdefault(context, 'response', {}); 17 | const headers = setdefault(res, 'headers', {}); 18 | 19 | // somebody already set a last-modified key 20 | if (headers['Last-Modified']) { 21 | logger.debug('Keeping existing Last-Modified header'); 22 | return; 23 | } 24 | if (content.data) { 25 | const { data: { lastModified: lastModifiedDateTime } } = content; 26 | if (lastModifiedDateTime) { 27 | logger.debug('Setting Last-Modified header'); 28 | headers['Last-Modified'] = lastModifiedDateTime; 29 | } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /src/schemas/textcoordinates.schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "meta:license": [ 3 | "Copyright 2018 Adobe. All rights reserved.", 4 | "This file is licensed to you under the Apache License, Version 2.0 (the \"License\");", 5 | "you may not use this file except in compliance with the License. You may obtain a copy", 6 | "of the License at http://www.apache.org/licenses/LICENSE-2.0", 7 | "", 8 | "Unless required by applicable law or agreed to in writing, software distributed under", 9 | "the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS", 10 | "OF ANY KIND, either express or implied. See the License for the specific language", 11 | "governing permissions and limitations under the License." 12 | ], 13 | "$id": "https://ns.adobe.com/helix/pipeline/textcoordinates", 14 | "$schema": "http://json-schema.org/draft-07/schema#", 15 | "type": "object", 16 | "title": "Text Coordinates", 17 | "meta:status": "stabilizing", 18 | "description": "A position in a text document", 19 | "additionalProperties": false, 20 | "properties": { 21 | "line": { 22 | "type": "number", 23 | "description": "Line number" 24 | }, 25 | "column": { 26 | "type": "number", 27 | "description": "Column number" 28 | }, 29 | "offset": { 30 | "type": "number", 31 | "description": "Character in the entire document" 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /src/html/shared-cache.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2018 Adobe. All rights reserved. 3 | * This file is licensed to you under the Apache License, Version 2.0 (the "License"); 4 | * you may not use this file except in compliance with the License. You may obtain a copy 5 | * of the License at http://www.apache.org/licenses/LICENSE-2.0 6 | * 7 | * Unless required by applicable law or agreed to in writing, software distributed under 8 | * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS 9 | * OF ANY KIND, either express or implied. See the License for the specific language 10 | * governing permissions and limitations under the License. 11 | */ 12 | import { foldl, pairs, setdefault } from 'ferrum'; 13 | 14 | export function uncached({ response }) { 15 | return !(response && response.headers && response.headers['Cache-Control']); 16 | } 17 | 18 | export function cache(context) { 19 | const res = setdefault(context, 'response', {}); 20 | const headers = setdefault(res, 'headers', {}); 21 | const directives = { 22 | 's-maxage': 30 * 24 * 3600, // serve from cache (without revalidation) for 30 days 23 | 'stale-while-revalidate': 365 * 24 * 3600, // serve stale (while revalidating in background) for a year 24 | }; 25 | 26 | headers['Cache-Control'] = foldl( 27 | pairs(directives), 28 | '', 29 | (a, [key, value]) => `${a + (a ? ', ' : '') + key}=${value}`, 30 | ); 31 | } 32 | -------------------------------------------------------------------------------- /src/html/stringify-response.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2019 Adobe. All rights reserved. 3 | * This file is licensed to you under the Apache License, Version 2.0 (the "License"); 4 | * you may not use this file except in compliance with the License. You may obtain a copy 5 | * of the License at http://www.apache.org/licenses/LICENSE-2.0 6 | * 7 | * Unless required by applicable law or agreed to in writing, software distributed under 8 | * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS 9 | * OF ANY KIND, either express or implied. See the License for the specific language 10 | * governing permissions and limitations under the License. 11 | */ 12 | export default function stringify({ response }, { logger }) { 13 | if (response.body) { 14 | logger.debug('stringify: ignoring already defined context.response.body'); 15 | return; 16 | } 17 | if (!response.document) { 18 | throw Error('no response'); 19 | } 20 | const doc = response.document; 21 | if (doc.serialize) { 22 | response.body = doc.serialize(); 23 | } else if (doc.doctype) { 24 | response.body = `${doc.documentElement.outerHTML}`; 25 | } else if (doc.documentElement) { 26 | response.body = doc.documentElement.outerHTML; 27 | } else if (doc.innerHTML) { 28 | response.body = doc.innerHTML; 29 | } else { 30 | throw Error(`unexpected context.response.document: ${doc}`); 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /src/schemas/index.cjs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2021 Adobe. All rights reserved. 3 | * This file is licensed to you under the Apache License, Version 2.0 (the "License"); 4 | * you may not use this file except in compliance with the License. You may obtain a copy 5 | * of the License at http://www.apache.org/licenses/LICENSE-2.0 6 | * 7 | * Unless required by applicable law or agreed to in writing, software distributed under 8 | * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS 9 | * OF ANY KIND, either express or implied. See the License for the specific language 10 | * governing permissions and limitations under the License. 11 | */ 12 | /* eslint-disable global-require */ 13 | module.exports = [ 14 | require('@adobe/helix-shared-config/src/schemas/markupconfig.schema.json'), 15 | require('@adobe/helix-shared-config/src/schemas/markup.schema.json'), 16 | require('@adobe/helix-shared-config/src/schemas/markupmapping.schema.json'), 17 | require('./action.schema.json'), 18 | require('./content.schema.json'), 19 | require('./context.schema.json'), 20 | require('./mdast.schema.json'), 21 | require('./meta.schema.json'), 22 | require('./position.schema.json'), 23 | require('./rawrequest.schema.json'), 24 | require('./request.schema.json'), 25 | require('./response.schema.json'), 26 | require('./secrets.schema.json'), 27 | require('./section.schema.json'), 28 | require('./textcoordinates.schema.json'), 29 | ]; 30 | -------------------------------------------------------------------------------- /.eslintrc.cjs: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2021 Adobe. All rights reserved. 3 | * This file is licensed to you under the Apache License, Version 2.0 (the "License"); 4 | * you may not use this file except in compliance with the License. You may obtain a copy 5 | * of the License at http://www.apache.org/licenses/LICENSE-2.0 6 | * 7 | * Unless required by applicable law or agreed to in writing, software distributed under 8 | * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS 9 | * OF ANY KIND, either express or implied. See the License for the specific language 10 | * governing permissions and limitations under the License. 11 | */ 12 | 13 | module.exports = { 14 | root: true, 15 | extends: '@adobe/helix', 16 | env: { 17 | node: true, 18 | es6: true, 19 | }, 20 | parserOptions: { 21 | sourceType: 'module', 22 | ecmaVersion: 2020, 23 | }, 24 | rules: { 25 | 'import/extensions': [2, 'ignorePackages'], 26 | 'import/prefer-default-export': 0, 27 | 28 | // Allow while (true) infinite loops 29 | 'no-constant-condition': ['error', { checkLoops: false }], 30 | 31 | // Quite useful to mark values as unused 32 | 'no-underscore-dangle': 'off', 33 | 34 | // We have quite a lot of use cases where assignment to function 35 | // parameters is definitely desirable 36 | 'no-param-reassign': 'off', 37 | }, 38 | globals: { 39 | __rootdir: true, 40 | __testdir: true, 41 | }, 42 | }; 43 | -------------------------------------------------------------------------------- /src/html/rewrite-blob-images.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2020 Adobe. All rights reserved. 3 | * This file is licensed to you under the Apache License, Version 2.0 (the "License"); 4 | * you may not use this file except in compliance with the License. You may obtain a copy 5 | * of the License at http://www.apache.org/licenses/LICENSE-2.0 6 | * 7 | * Unless required by applicable law or agreed to in writing, software distributed under 8 | * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS 9 | * OF ANY KIND, either express or implied. See the License for the specific language 10 | * governing permissions and limitations under the License. 11 | */ 12 | /** 13 | * Rewrite blob store image URLs to /hlx_* URLs 14 | * 15 | * @param {Document} document The (vdom) document 16 | */ 17 | function images(document) { 18 | document.querySelectorAll('img').forEach((img) => { 19 | if (/^https:\/\/hlx\.blob\.core\.windows\.net\/external\//.test(img.src)) { 20 | const { pathname, hash } = new URL(img.src); 21 | const filename = pathname.split('/').pop(); 22 | 23 | // remove width/height from hash, since helix-pages doesn't support it yet 24 | const extension = hash.split('?').shift().split('.').pop() || 'jpg'; 25 | img.src = `./media_${filename}.${extension}`; 26 | } 27 | }); 28 | } 29 | 30 | export default function rewrite({ content }) { 31 | if (content.document) { 32 | images(content.document); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /test/fixtures/sections/headerparaimage.json: -------------------------------------------------------------------------------- 1 | { 2 | "image": "./helix_logo.png", 3 | "intro": "This is a paragraph.", 4 | "title": "Header, a paragraph and one image", 5 | "meta": { 6 | "types": [ 7 | "has-image", 8 | "has-text", 9 | "has-heading", 10 | "nb-image-1", 11 | "nb-text-1", 12 | "nb-heading-1", 13 | "is-heading-image-text", 14 | "is-heading-image", 15 | "is-heading" 16 | ] 17 | }, 18 | "type": "root", 19 | "children": [ 20 | { 21 | "type": "heading", 22 | "depth": 1, 23 | "children": [ 24 | { 25 | "type": "text", 26 | "value": "Header, a paragraph and one image" 27 | } 28 | ], 29 | "meta": { 30 | "types": [ 31 | "is-heading" 32 | ] 33 | } 34 | }, 35 | { 36 | "type": "paragraph", 37 | "children": [ 38 | { 39 | "type": "text", 40 | "value": "This is a paragraph." 41 | } 42 | ], 43 | "meta": { 44 | "types": [ 45 | "is-text" 46 | ] 47 | } 48 | }, 49 | { 50 | "type": "paragraph", 51 | "children": [ 52 | { 53 | "type": "image", 54 | "title": null, 55 | "url": "./helix_logo.png", 56 | "alt": "helix-logo" 57 | } 58 | ], 59 | "meta": { 60 | "types": [ 61 | "has-image" 62 | ] 63 | } 64 | } 65 | ] 66 | } 67 | -------------------------------------------------------------------------------- /test/fixtures/index-unmodified.md: -------------------------------------------------------------------------------- 1 | 17 | ![helix-logo](./helix_logo.png) 18 | 19 | # Helix - {{project.name}} 20 | 21 | It works! {{project.name}} is up and running. 22 | 23 | ## What's next? 24 | 25 | 1. Try editing `index.md` and see what happens. 26 | 2. Try editing `src/html.htl` to change the HTML output 27 | 3. Try editing `src/static/style.css` to change the way this page looks 28 | 29 | ## And then? 30 | 31 | 4. Commit your changes: `git commit -a` 32 | 5. Publish your project to GitHub: `git add git remote add origin https://github.com/user/repo.git && git push` 33 | 6. Deploy the project: `hlx deploy` 34 | 7. Make it visible to the world: `hlx publish` -------------------------------------------------------------------------------- /docs/secrets-properties-embed_allowlist.md: -------------------------------------------------------------------------------- 1 | # Untitled string in Secrets Schema 2 | 3 | ```txt 4 | https://ns.adobe.com/helix/pipeline/secrets#/properties/EMBED_ALLOWLIST 5 | ``` 6 | 7 | Comma-separated list of allowed hostnames for embeds. Supports `*.example.com` as a subdomain wildcard. Use `*` to allow all embeds (potentially insecure and conflicting with `DATA_EMBED_ALLOWLIST`) 8 | 9 | | Abstract | Extensible | Status | Identifiable | Custom Properties | Additional Properties | Access Restrictions | Defined In | 10 | | :------------------ | :--------- | :------------- | :---------------------- | :---------------- | :-------------------- | :------------------ | :------------------------------------------------------------------ | 11 | | Can be instantiated | No | Unknown status | Unknown identifiability | Forbidden | Allowed | none | [secrets.schema.json\*](secrets.schema.json "open original schema") | 12 | 13 | ## EMBED\_ALLOWLIST Type 14 | 15 | `string` 16 | 17 | ## EMBED\_ALLOWLIST Default Value 18 | 19 | The default value is: 20 | 21 | ```json 22 | "www.youtube.com, unsplash.com, soundcloud.com, lottiefiles.com, www.slideshare.net, vimeo.com, www.instagram.com, twitter.com, open.spotify.com, web.spotify.com, player.vimeo.com, www.linkedin.com, w.soundcloud.com, www.slideshare.net, youtu.be, media.giphy.com, video.tv.adobe.com, api.soundcloud.com, xd.adobe.com" 23 | ``` 24 | --------------------------------------------------------------------------------