Skip to content

Instantly share code, notes, and snippets.

const Fieldtype = {
template: `
<div v-if="model.urlList">
<div class="uk-flex uk-flex-middle" v-for="(locale, key) in options" :key="locale">
<div v-html="locale" />
<input type="text" class="form-control" id="basic-url" aria-describedby="basic-addon3" :value="model.urlList[key]" @input="validate($event, key)">
<div>/</div>
<div v-if="showError[key]">!!! Url invalid</div>
</div>
</div>
@onefriendaday
onefriendaday / Fieldtype.js
Created June 14, 2019 12:18
Storyblok Fieldtype validation
const Fieldtype = {
mixins: [window.Storyblok.plugin],
template: `
<div>
<input
class="uk-width-1-1"
type="number"
@input="validate"
:step="1"
ref="input"
@onefriendaday
onefriendaday / loop.js
Created June 14, 2019 11:36
Get all stories
const StoryblokClient = require('storyblok-js-client')
const Storyblok = new StoryblokClient({
token: 'TOKEN'
})
const Sync = {
getAll(page) {
return Storyblok.get(`stories`, {
per_page: 25,
@onefriendaday
onefriendaday / Page.js
Last active June 3, 2019 14:39
Get storyblok links in gatsby
import React from 'react'
import Components from './components.js';
import { StaticQuery, graphql } from "gatsby"
class Navi extends React.Component {
constructor(props) {
super(props)
const nest = (items, id = 0) => items
.filter(item => item.parent_id === id)
@onefriendaday
onefriendaday / sync.js
Last active May 13, 2019 11:36
Script to access all alternates of a "default" folder.
const StoryblokClient = require('storyblok-js-client')
const Storyblok = new StoryblokClient({
oauthToken: 'TOKEN'
})
const spaceId = SPACE_ID
const Sync = {
dimensions: [],
const Fieldtype = {
mixins: [window.Storyblok.plugin],
template: `
<div>
<input
class="uk-width-1-1"
type="number"
@input="validate"
:step="options.step || 1"
ref="input"
const Fieldtype = {
mixins: [window.Storyblok.plugin],
template: `<div>
<h4>Padding</h4>
<div class="uk-grid uk-margin-bottom" v-if="isReady">
<div class="uk-width-1-2">
Top
<select v-model="model.normal.top" class="uk-width-1-1">
<option v-for="item in options" :value="item" :key="item.id">{{ item.name }}</option>
</select>
@onefriendaday
onefriendaday / Fieldtype.js
Created April 25, 2019 12:56
Cloudinary Storyblok Fieldtype
const Fieldtype = {
mixins: [window.Storyblok.plugin],
template: `<div>
<div v-if="modalOpen" style="height: 800px">
<a class="uk-button uk-display-block" @click="closeModal">Close</a>
</div>
<a v-else class="uk-button uk-display-block" @click="openCloudinary">Select image</a>
</div>`,
data() {
return {
@onefriendaday
onefriendaday / index.js
Created March 19, 2019 15:40
Process to sync folders and user roles to the target environment
const StoryblokClient = require('storyblok-js-client')
const Storyblok = new StoryblokClient({
oauthToken: PROTECTED_VAR
})
const sourceSpaceId = SOURCE_SPACE_ID
const targetSpaceId = TARGET_SPACE_ID
const Sync = {
@onefriendaday
onefriendaday / index.js
Created March 19, 2019 15:37
Creates or updates content of folders that are existing
const StoryblokClient = require('storyblok-js-client')
const Storyblok = new StoryblokClient({
oauthToken: PROTECTED_VAR
})
const sourceSpaceId = SOURCE_SPACE_ID
const targetSpaceId = TARGET_SPACE_ID
const Sync = {