This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Add to your schema like... | |
// {name: `pageBuilderTemplatePopulator`, type: `string`, inputComponent: TemplatePopulator}, | |
import {Button, Grid} from '@sanity/ui' | |
import React, {useCallback, useState} from 'react' | |
import sanityClient from 'part:@sanity/base/client' | |
const client = sanityClient.withConfig({apiVersion: `2021-05-19`}) | |
const contentData = [ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import React from 'react' | |
import {Text, Spinner, Card} from '@sanity/ui' | |
import Preview from 'part:@sanity/base/preview' | |
import schema from 'part:@sanity/base/schema' | |
import useListeningQuery from './useListeningQuery' | |
export default function CustomPreview(props) { | |
const {id} = props |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* This is a Custom Input POC for a Reference field with defined search parameters on the target document | |
* The built-in reference field currently can filter results but only statically, not using the search query | |
* | |
* This custom input is NOT recommended as it lacks some of the amazing features of the built-in refernce field | |
* It's also a bit wonky in terms of the UI, but it's a start | |
* But it does solve this one specific use case | |
*/ | |
import React from 'react' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import React, {useEffect, useState, useRef} from 'react' | |
import documentStore from 'part:@sanity/base/datastore/document' | |
import {catchError, distinctUntilChanged} from 'rxjs/operators' | |
import isEqual from 'react-fast-compare' | |
type Params = Record<string, string | number | boolean | string[]> | |
interface ListenQueryOptions { | |
tag?: string | |
apiVersion?: string |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* eslint-disable react/prop-types */ | |
/* eslint-disable react/jsx-no-bind */ | |
import React, {useState, useCallback, useMemo} from 'react' | |
import {SearchIcon, ArrowRightIcon} from '@sanity/icons' | |
import {useToast, Text, Flex, Box, Button, Autocomplete, Label, Stack} from '@sanity/ui' | |
import sanityClient from 'part:@sanity/base/client' | |
export const MARKETS = [ | |
{ | |
name: `DE`, |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const sanityClient = require('@sanity/client') | |
const fs = require('fs') | |
const client = sanityClient({ | |
apiVersion: '2021-04-01', | |
dataset: `XXX`, | |
projectId: `XXX`, | |
useCdn: true, | |
}) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import React from 'react' | |
import S from '@sanity/desk-tool/structure-builder' | |
import schema from 'part:@sanity/base/schema' | |
import userStore from 'part:@sanity/base/user' | |
// npm i pluralize | |
import pluralize from 'pluralize' | |
// BYO "Flag" component for an Icon | |
// import Flag from '../components/Flag/index' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import {useState, useMemo, useEffect} from 'react' | |
import {useDocumentOperation} from '@sanity/react-hooks' | |
import {FiZap, FiZapOff} from 'react-icons/fi' | |
export function ToggleLive({id, type, draft, published, onComplete}) { | |
const {patch, publish} = useDocumentOperation(id, type) | |
const doc = useMemo(() => draft || published, [draft, published]) | |
const [isPublishing, setIsPublishing] = useState(false) | |
const [dialogOpen, setDialogOpen] = useState(false) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import React from 'react' | |
import PropTypes from 'prop-types' | |
import {withDocument} from 'part:@sanity/form-builder' | |
import {Stack, Card, Box, Text, Flex} from '@sanity/ui' | |
import {FiGitBranch, FiGitCommit, FiZap, FiAlertOctagon, FiFileText, FiFile} from 'react-icons/fi' | |
import DEFAULT_VARIANT from '../../lib/defaultVariant' | |
const Message = React.forwardRef(({document}, ref) => { | |
const {_id, variant, live, _createdAt} = document |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import React from 'react' | |
import {Stack, Card, Flex, Switch, Label, Box, Text, Autocomplete, Button} from '@sanity/ui' | |
import {AddIcon, TrashIcon} from '@sanity/icons' | |
import {daysOfTheWeek, hoursOfTheDay} from './data' | |
export default function TradingHours() { | |
// Update how trading times are searched for | |
const handleAutocompleteFilter = (query, option) => { | |
// Treat a search for 1.00 as 1:00 |