Skip to content
This repository has been archived by the owner on May 20, 2024. It is now read-only.

Latest commit

 

History

History
116 lines (76 loc) · 4.03 KB

README.md

File metadata and controls

116 lines (76 loc) · 4.03 KB

🚨 Replaced by @prismicio/helpers 📣

prismic-dom is deprecated and replaced by @prismicio/helpers v2. All functions from prismic-dom have been moved into the more general @prismicio/helpers package. Moving forward, only security updates will be released to prismic-dom.

See the @prismicio/helpers v2 Migration Guide to learn how to upgrade your project.

JavaScript library with static helpers to render HTML with Prismic API V2 BETA

npm version Build Status

It's meant to work in pair with the prismic-javascript library, a new javascript kit for the prismic API v2 available here:

Installation

Prismic Api Endpoint

Your endpoint must contains "v2" at the end, otherwise it means that you're working on the API V1 so this library won't work for you.

apiEndpoint: your-repo-name.prismic.io/api/v2

NPM

npm install prismic-dom --save

CDN

https://unpkg.com/prismic-dom

(You may need to adapt the version number)

Downloadable version

On our release page: https://github.com/prismicio/prismic-dom/releases.

The kit is universal, it can be used:

  • Server-side with NodeJS
  • Client-side as part of your build with Browserify, Webpack
  • Client-side with a simple script tag

Demo project

You can find an integration of prismic content with the new API V2 in the following project:

Usage

With NodeJS, you can expose PrismicDOM directly in your locals to have it in your templates:

import PrismicDOM from 'prismic-dom';

res.locals.DOM = PrismicDOM;

Render a RichText:

  • As Html
  DOM.RichText.asHtml(mydoc.data.myrichtext, linkResolver)
  • As Text
  DOM.RichText.asText(mydoc.data.myrichtext)

Get a URL from a Link fragment of any kind

//link resolver not required if sure that it's not a document link
DOM.Link.url(mydoc.data.mylink, ctx.linkResolver)

Convert a Date as string from the API to an ISO Date:

DOM.Date(mydoc.data.mydate)

Install the kit locally

Source files are in the src/ directory. You only need Node.js and npm to work on the codebase.

npm install
npm run dev

Documentation

Please document any new feature or bugfix using the JSDoc syntax. You don't need to generate the documentation, we'll do that.

If you feel an existing area of code is lacking documentation, feel free to write it; but please do so on its own branch and pull-request.

If you find existing code that is not optimally documented and wish to make it better, we really appreciate it; but you should document it on its own branch and its own pull request.

License

This software is licensed under the Apache 2 license, quoted below.

Copyright 2013-2017 Prismic.io (http://prismic.io).

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this project 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 CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.