Socket
Book a DemoInstallSign in
Socket

@axelspringer/mango-pagemanager

Package Overview
Dependencies
Maintainers
9
Versions
188
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@axelspringer/mango-pagemanager

Mango Page Manager

1.0.0-beta.121
latest
npmnpm
Version published
Weekly downloads
188
Maintainers
9
Weekly downloads
 
Created
Source

:smiley_cat: Mango Page Manager


Taylor Swift Volkswagen TypeScript MIT license

Getting Started

requires a node version >= 6 and an npm version >= 3.x.x

we do provide a help command to display all possible arguments

# Install the base package and the plugin (could also be global -g)
npm i @axelspringer/mango-pagemanager

Usage

Create a pagemanager.ts file with the following content.

import Vue from 'vue'
import IFrame from '../components/post'
import MangoPageManager from '@axelspringer/mango-pagemanager'

// use pagemanager
Vue.use(PageManager)

export default new PageManager({
  blocks: [
    {
      pageBlock: 'inline_frame',
      component: iFrame
    }
  ]
})

This configures the Page Manager to map a page block to a component.

import { Vue, Component } from 'vue-property-decorator'
import HOME_QUERY from '../../graphql/home.graphql'

@Component
export default class Home extends Vue {

  /**
   *
   */
  public blocks = []

  /**
   * Render function
   *
   * @param h
   */
  public render() {
    return (
      <main class='start'>
        <pagemanager-renderer blocks={this.blocks || []} />
      </main>
    )
  }
}

The pagemanager exposes $pageblock on the component with the page block data to render. You have to add a name property. This is the property on which the Page Manager data and blocks are matched.

import { Vue, Component } from 'vue-property-decorator'

export function renderInnerHtml(h, atts) {
  return atts.map(att => h('iframe', { attrs: att.value }))
}

@Component({
  name: 'iFrame'
})
export default class iFrame extends Vue {
  public render(h) {
    if (!this.$pageblock) return null

    return (<div>{renderInnerHtml(h, this.$pageblock)}</div>)
  }
}

License

MIT

FAQs

Package last updated on 26 Sep 2018

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

About

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.

  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc

U.S. Patent No. 12,346,443 & 12,314,394. Other pending.