Skip to content

Instantly share code, notes, and snippets.

View usulpro's full-sized avatar
🟢

Oleg Proskurin usulpro

🟢
View GitHub Profile
@usulpro
usulpro / Script1.groq
Last active January 9, 2022 13:28
Can’t you still have references to your draft documents in Sanity CMS? Setting up a full-fledged preview environment for your content
* [_type == "post"] {
...,
author->
}
@usulpro
usulpro / ohai.gif
Created April 4, 2020 21:20 — forked from Qix-/ohai.gif
ohaider
ohai.gif
@usulpro
usulpro / block8.js
Last active January 14, 2020 07:12
import { addDecorator } from '@storybook/react';
import { withGraphCMS } from '@focusreactive/storybook-addon-graphcms';
addDecorator(withGraphCMS({ endpoint: CMS_ENDPOINT, token: CMS_TOKEN, projectId: 'YOUR_PROJECT_ID', stage: 'master' }))
import { addDecorator } from '@storybook/react';
import { withGraphQL } from '@focusreactive/storybook-graphql-kit';
addDecorator(withGraphQL({ endpoint: CMS_ENDPOINT, token: CMS_TOKEN }));
yarn add --dev @focusreactive/storybook-graphql-kit
// speakers.stories.js
import { QueryParams } from '@focusreactive/storybook-graphql-kit';
import { speakersQuery } from '../speaker.query';
export const speakers = ({ graphQlResponse: { result } }) => result.map(({ name, bio }) => (<div><h2>{name}</h2><p>{bio}</p></div>));
speakers.story = {
name: 'Conference Speakers',
@usulpro
usulpro / block5.js
Last active January 13, 2020 22:02
// speakers.stories.js
import { QueryParams } from '@focusreactive/storybook-graphql-kit';
import { speakersQuery } from '../speaker.query';
export const speakers = Query({
name: 'Conference Speakers',
story: ({ graphQlResponse: { result } }) => result.map(({ name, bio }) => (<div><h2>{name}</h2><p>{bio}</p></div>)),
query,
// speakers.stories.js
import { Query } from '@focusreactive/storybook-graphql-kit';
import { speakersQuery } from '../speaker.query';
export const speakers = Query({
name: 'Conference Speakers',
query,
vars: { conferenceTitle: 'React_Day_Berlin', eventYear: 'Y2019' },
// speakers.stories.js
import { Query } from '@focusreactive/storybook-graphql-kit';
import { speakersQuery } from '../speaker.query';
export const speakers = Query({
name: 'Conference Speakers',
speakersQuery,
vars: { conferenceTitle: 'React_Day_Berlin', eventYear: 'Y2019' },
searchVars: { name: '' },
@usulpro
usulpro / block1.js
Last active December 18, 2019 17:33
// speakers.query.js
export const speakersQuery = /* GraphQL */ `
query($conferenceTitle: ConferenceTitle, $eventYear: EventYear, $name: String) {
result: speakers(
where: {
conferenceEvents_some: { year: $eventYear, conferenceBrand: { title: $conferenceTitle } }
name_contains: $name
}
) {