@prismicio/react 2.0.0-beta.5 → 2.0.0-beta.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +50 -32
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +140 -16
- package/dist/{index.mjs → index.js} +49 -34
- package/dist/index.js.map +1 -0
- package/package.json +15 -15
- package/src/PrismicLink.tsx +7 -3
- package/src/PrismicRichText.tsx +13 -12
- package/src/PrismicText.tsx +2 -1
- package/src/PrismicToolbar.tsx +18 -12
- package/src/SliceZone.tsx +69 -2
- package/src/clientHooks.ts +54 -0
- package/src/index.ts +9 -0
- package/src/usePrismicPreviewResolver.ts +6 -1
- package/src/useStatefulPrismicClientMethod.ts +29 -27
- package/dist/index.mjs.map +0 -1
package/dist/index.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ import * as React from 'react';
|
|
|
3
3
|
import * as prismicH from '@prismicio/helpers';
|
|
4
4
|
import * as prismicT from '@prismicio/types';
|
|
5
5
|
import * as prismicR from '@prismicio/richtext';
|
|
6
|
+
export { Element } from '@prismicio/richtext';
|
|
6
7
|
|
|
7
8
|
declare type ComponentProps<T> = T extends React.ComponentType<infer U> ? U : T extends keyof JSX.IntrinsicElements ? React.ComponentProps<T> : unknown;
|
|
8
9
|
/**
|
|
@@ -99,7 +100,7 @@ declare type PrismicLinkProps<InternalComponent extends string | React.Component
|
|
|
99
100
|
* @returns The internal or external link component depending on whether the
|
|
100
101
|
* link is internal or external.
|
|
101
102
|
*/
|
|
102
|
-
declare const PrismicLink: <InternalComponent extends string | React.ComponentType<LinkProps
|
|
103
|
+
declare const PrismicLink: <InternalComponent extends string | React.ComponentType<LinkProps> = "a", ExternalComponent extends string | React.ComponentType<LinkProps> = "a", LinkResolverFunction extends prismicH.LinkResolverFunction<string> = prismicH.LinkResolverFunction<string>>(props: PrismicLinkProps<InternalComponent, ExternalComponent, LinkResolverFunction>) => JSX.Element | null;
|
|
103
104
|
|
|
104
105
|
/**
|
|
105
106
|
* A function mapping Rich Text block types to React Components. It is used to
|
|
@@ -233,12 +234,13 @@ declare type PrismicTextProps = {
|
|
|
233
234
|
* @example Rendering a Rich Text field as plain text.
|
|
234
235
|
*
|
|
235
236
|
* ```jsx
|
|
236
|
-
* <PrismicText field={document.data.content}
|
|
237
|
+
* <PrismicText field={document.data.content} />;
|
|
237
238
|
* ```
|
|
238
239
|
*
|
|
239
240
|
* @param props - Props for the component.
|
|
240
241
|
*
|
|
241
242
|
* @returns The Rich Text field's content as plain text.
|
|
243
|
+
*
|
|
242
244
|
* @see Learn about Rich Text fields {@link https://prismic.io/docs/core-concepts/rich-text-title}
|
|
243
245
|
*/
|
|
244
246
|
declare const PrismicText: (props: PrismicTextProps) => JSX.Element | null;
|
|
@@ -286,12 +288,12 @@ declare type PrismicRichTextProps = {
|
|
|
286
288
|
*
|
|
287
289
|
* ```jsx
|
|
288
290
|
* (type, node, content, children) => {
|
|
289
|
-
*
|
|
290
|
-
*
|
|
291
|
-
*
|
|
292
|
-
*
|
|
293
|
-
*
|
|
294
|
-
* }
|
|
291
|
+
* switch (type) {
|
|
292
|
+
* case "heading1": {
|
|
293
|
+
* return <Heading>{chidlren}</Heading>;
|
|
294
|
+
* }
|
|
295
|
+
* }
|
|
296
|
+
* };
|
|
295
297
|
* ```
|
|
296
298
|
*/
|
|
297
299
|
components?: JSXMapSerializer | JSXFunctionSerializer;
|
|
@@ -327,23 +329,24 @@ declare type PrismicRichTextProps = {
|
|
|
327
329
|
* @example Rendering a Rich Text field using the default HTMl elements.
|
|
328
330
|
*
|
|
329
331
|
* ```jsx
|
|
330
|
-
* <PrismicRichText field={document.data.content}
|
|
332
|
+
* <PrismicRichText field={document.data.content} />;
|
|
331
333
|
* ```
|
|
332
334
|
*
|
|
333
335
|
* @example Rendering a Rich Text field using a custom set of React components.
|
|
334
336
|
*
|
|
335
337
|
* ```jsx
|
|
336
338
|
* <PrismicRichText
|
|
337
|
-
*
|
|
338
|
-
*
|
|
339
|
-
*
|
|
340
|
-
*
|
|
341
|
-
*
|
|
339
|
+
* field={document.data.content}
|
|
340
|
+
* components={{
|
|
341
|
+
* heading1: ({ children }) => <Heading>{children}</Heading>,
|
|
342
|
+
* }}
|
|
343
|
+
* />;
|
|
342
344
|
* ```
|
|
343
345
|
*
|
|
344
346
|
* @param props - Props for the component.
|
|
345
347
|
*
|
|
346
348
|
* @returns The Rich Text field's content as React components.
|
|
349
|
+
*
|
|
347
350
|
* @see Learn about Rich Text fields {@link https://prismic.io/docs/core-concepts/rich-text-title}
|
|
348
351
|
* @see Learn about Rich Text serializers {@link https://prismic.io/docs/core-concepts/html-serializer}
|
|
349
352
|
*/
|
|
@@ -418,6 +421,35 @@ declare type SliceZoneComponents<TSlice extends SliceLike = SliceLike, TContext
|
|
|
418
421
|
* cannot be found in `<SliceZone>`.
|
|
419
422
|
*/
|
|
420
423
|
declare const TODOSliceComponent: <TSlice extends SliceLike<string>, TContext>({ slice, }: SliceComponentProps<TSlice, TContext>) => JSX.Element | null;
|
|
424
|
+
/**
|
|
425
|
+
* Arguments for a `<SliceZone>` `resolver` function.
|
|
426
|
+
*/
|
|
427
|
+
declare type SliceZoneResolverArgs<TSlice extends SliceLike = SliceLike> = {
|
|
428
|
+
/**
|
|
429
|
+
* The Slice to resolve to a React component.
|
|
430
|
+
*/
|
|
431
|
+
slice: TSlice;
|
|
432
|
+
/**
|
|
433
|
+
* The name of the Slice.
|
|
434
|
+
*/
|
|
435
|
+
sliceName: TSlice["slice_type"];
|
|
436
|
+
/**
|
|
437
|
+
* The index of the Slice in the Slice Zone.
|
|
438
|
+
*/
|
|
439
|
+
i: number;
|
|
440
|
+
};
|
|
441
|
+
/**
|
|
442
|
+
* A function that determines the rendered React component for each Slice in the
|
|
443
|
+
* Slice Zone. If a nullish value is returned, the component will fallback to
|
|
444
|
+
* the `components` or `defaultComponent` props to determine the rendered component.
|
|
445
|
+
*
|
|
446
|
+
* @deprecated Use the `components` prop instead.
|
|
447
|
+
*
|
|
448
|
+
* @param args - Arguments for the resolver function.
|
|
449
|
+
*
|
|
450
|
+
* @returns The React component to render for a Slice.
|
|
451
|
+
*/
|
|
452
|
+
declare type SliceZoneResolver<TSlice extends SliceLike = SliceLike, TContext = unknown> = (args: SliceZoneResolverArgs<TSlice>) => SliceComponentType<TSlice, TContext> | undefined | null;
|
|
421
453
|
/**
|
|
422
454
|
* React props for the `<SliceZone>` component.
|
|
423
455
|
*
|
|
@@ -433,6 +465,17 @@ declare type SliceZoneProps<TSlice extends SliceLike = SliceLike, TContext = unk
|
|
|
433
465
|
* A record mapping Slice types to React components.
|
|
434
466
|
*/
|
|
435
467
|
components?: SliceZoneComponents<TSlice, TContext>;
|
|
468
|
+
/**
|
|
469
|
+
* A function that determines the rendered React component for each Slice in
|
|
470
|
+
* the Slice Zone.
|
|
471
|
+
*
|
|
472
|
+
* @deprecated Use the `components` prop instead.
|
|
473
|
+
*
|
|
474
|
+
* @param args - Arguments for the resolver function.
|
|
475
|
+
*
|
|
476
|
+
* @returns The React component to render for a Slice.
|
|
477
|
+
*/
|
|
478
|
+
resolver?: SliceZoneResolver<TSlice, TContext>;
|
|
436
479
|
/**
|
|
437
480
|
* The React component rendered if a component mapping from the `components`
|
|
438
481
|
* prop cannot be found.
|
|
@@ -453,10 +496,12 @@ declare type SliceZoneProps<TSlice extends SliceLike = SliceLike, TContext = unk
|
|
|
453
496
|
*
|
|
454
497
|
* @typeParam TSlice - The type(s) of a Slice in the Slice Zone.
|
|
455
498
|
* @typeParam TContext - Arbitrary data made available to all Slice components.
|
|
499
|
+
*
|
|
456
500
|
* @returns The Slice Zone's content as React components.
|
|
501
|
+
*
|
|
457
502
|
* @see Learn about Prismic Slices and Slice Zones {@link https://prismic.io/docs/core-concepts/slices}
|
|
458
503
|
*/
|
|
459
|
-
declare const SliceZone: <TSlice extends SliceLike<string>, TContext>({ slices, components, defaultComponent, context, }: SliceZoneProps<TSlice, TContext>) => JSX.Element;
|
|
504
|
+
declare const SliceZone: <TSlice extends SliceLike<string>, TContext>({ slices, components, resolver, defaultComponent, context, }: SliceZoneProps<TSlice, TContext>) => JSX.Element;
|
|
460
505
|
|
|
461
506
|
/**
|
|
462
507
|
* Props for `<PrismicToolbar>`.
|
|
@@ -554,10 +599,13 @@ declare const usePrismicPreviewResolver: (args?: UsePrismicPreviewResolverArgs)
|
|
|
554
599
|
*
|
|
555
600
|
* @remarks
|
|
556
601
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
602
|
+
*
|
|
557
603
|
* @typeParam TDocument - Type of Prismic documents returned
|
|
604
|
+
*
|
|
558
605
|
* @param params - Parameters to filter, sort, and paginate results
|
|
559
606
|
*
|
|
560
607
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
608
|
+
*
|
|
561
609
|
* @see Underlying `@prismicio/client` method {@link proto.get}
|
|
562
610
|
*/
|
|
563
611
|
declare const usePrismicDocuments: <TDocument extends prismicT.PrismicDocument<Record<string, prismicT.AnyRegularField | prismicT.GroupField<Record<string, prismicT.AnyRegularField>> | prismicT.SliceZone<prismicT.Slice<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>> | prismicT.SharedSlice<string, prismicT.SharedSliceVariation<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>>>>>, string, string>>(params?: (Partial<_prismicio_client.BuildQueryURLArgs> & HookOnlyParameters) | undefined) => ClientHookReturnType<prismicT.Query<TDocument>>;
|
|
@@ -567,10 +615,13 @@ declare const usePrismicDocuments: <TDocument extends prismicT.PrismicDocument<R
|
|
|
567
615
|
*
|
|
568
616
|
* @remarks
|
|
569
617
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
618
|
+
*
|
|
570
619
|
* @typeParam TDocument - Type of the Prismic document returned
|
|
620
|
+
*
|
|
571
621
|
* @param params - Parameters to filter, sort, and paginate results
|
|
572
622
|
*
|
|
573
623
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
624
|
+
*
|
|
574
625
|
* @see Underlying `@prismicio/client` method {@link proto.getFirst}
|
|
575
626
|
*/
|
|
576
627
|
declare const useFirstPrismicDocument: <TDocument extends prismicT.PrismicDocument<Record<string, prismicT.AnyRegularField | prismicT.GroupField<Record<string, prismicT.AnyRegularField>> | prismicT.SliceZone<prismicT.Slice<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>> | prismicT.SharedSlice<string, prismicT.SharedSliceVariation<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>>>>>, string, string>>(params?: (Partial<_prismicio_client.BuildQueryURLArgs> & HookOnlyParameters) | undefined) => ClientHookReturnType<TDocument>;
|
|
@@ -580,10 +631,13 @@ declare const useFirstPrismicDocument: <TDocument extends prismicT.PrismicDocume
|
|
|
580
631
|
*
|
|
581
632
|
* @remarks
|
|
582
633
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
634
|
+
*
|
|
583
635
|
* @typeParam TDocument - Type of Prismic documents returned
|
|
636
|
+
*
|
|
584
637
|
* @param params - Parameters to filter and sort results
|
|
585
638
|
*
|
|
586
639
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
640
|
+
*
|
|
587
641
|
* @see Underlying `@prismicio/client` method {@link proto.getAll}
|
|
588
642
|
*/
|
|
589
643
|
declare const useAllPrismicDocumentsDangerously: <TDocument extends prismicT.PrismicDocument<Record<string, prismicT.AnyRegularField | prismicT.GroupField<Record<string, prismicT.AnyRegularField>> | prismicT.SliceZone<prismicT.Slice<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>> | prismicT.SharedSlice<string, prismicT.SharedSliceVariation<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>>>>>, string, string>>(params?: (Partial<Omit<_prismicio_client.BuildQueryURLArgs, "page">> & {
|
|
@@ -594,11 +648,14 @@ declare const useAllPrismicDocumentsDangerously: <TDocument extends prismicT.Pri
|
|
|
594
648
|
*
|
|
595
649
|
* @remarks
|
|
596
650
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
651
|
+
*
|
|
597
652
|
* @typeParam TDocument - Type of the Prismic document returned
|
|
653
|
+
*
|
|
598
654
|
* @param id - ID of the document
|
|
599
655
|
* @param params - Parameters to filter, sort, and paginate results
|
|
600
656
|
*
|
|
601
657
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
658
|
+
*
|
|
602
659
|
* @see Underlying `@prismicio/client` method {@link proto.getByID}
|
|
603
660
|
*/
|
|
604
661
|
declare const usePrismicDocumentByID: <TDocument extends prismicT.PrismicDocument<Record<string, prismicT.AnyRegularField | prismicT.GroupField<Record<string, prismicT.AnyRegularField>> | prismicT.SliceZone<prismicT.Slice<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>> | prismicT.SharedSlice<string, prismicT.SharedSliceVariation<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>>>>>, string, string>>(id: string, params?: (Partial<_prismicio_client.BuildQueryURLArgs> & HookOnlyParameters) | undefined) => ClientHookReturnType<TDocument>;
|
|
@@ -607,11 +664,14 @@ declare const usePrismicDocumentByID: <TDocument extends prismicT.PrismicDocumen
|
|
|
607
664
|
*
|
|
608
665
|
* @remarks
|
|
609
666
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
667
|
+
*
|
|
610
668
|
* @typeParam TDocument - Type of Prismic documents returned
|
|
669
|
+
*
|
|
611
670
|
* @param ids - A list of document IDs
|
|
612
671
|
* @param params - Parameters to filter, sort, and paginate results
|
|
613
672
|
*
|
|
614
673
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
674
|
+
*
|
|
615
675
|
* @see Underlying `@prismicio/client` method {@link proto.getByIDs}
|
|
616
676
|
*/
|
|
617
677
|
declare const usePrismicDocumentsByIDs: <TDocument extends prismicT.PrismicDocument<Record<string, prismicT.AnyRegularField | prismicT.GroupField<Record<string, prismicT.AnyRegularField>> | prismicT.SliceZone<prismicT.Slice<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>> | prismicT.SharedSlice<string, prismicT.SharedSliceVariation<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>>>>>, string, string>>(id: string[], params?: (Partial<_prismicio_client.BuildQueryURLArgs> & HookOnlyParameters) | undefined) => ClientHookReturnType<prismicT.Query<TDocument>>;
|
|
@@ -620,11 +680,14 @@ declare const usePrismicDocumentsByIDs: <TDocument extends prismicT.PrismicDocum
|
|
|
620
680
|
*
|
|
621
681
|
* @remarks
|
|
622
682
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
683
|
+
*
|
|
623
684
|
* @typeParam TDocument - Type of Prismic documents returned
|
|
685
|
+
*
|
|
624
686
|
* @param ids - A list of document IDs
|
|
625
687
|
* @param params - Parameters to filter and sort results
|
|
626
688
|
*
|
|
627
689
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
690
|
+
*
|
|
628
691
|
* @see Underlying `@prismicio/client` method {@link proto.getAllByIDs}
|
|
629
692
|
*/
|
|
630
693
|
declare const useAllPrismicDocumentsByIDs: <TDocument extends prismicT.PrismicDocument<Record<string, prismicT.AnyRegularField | prismicT.GroupField<Record<string, prismicT.AnyRegularField>> | prismicT.SliceZone<prismicT.Slice<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>> | prismicT.SharedSlice<string, prismicT.SharedSliceVariation<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>>>>>, string, string>>(id: string[], params?: (Partial<_prismicio_client.BuildQueryURLArgs> & HookOnlyParameters) | undefined) => ClientHookReturnType<TDocument[]>;
|
|
@@ -634,12 +697,15 @@ declare const useAllPrismicDocumentsByIDs: <TDocument extends prismicT.PrismicDo
|
|
|
634
697
|
*
|
|
635
698
|
* @remarks
|
|
636
699
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
700
|
+
*
|
|
637
701
|
* @typeParam TDocument - Type of the Prismic document returned
|
|
702
|
+
*
|
|
638
703
|
* @param documentType - The API ID of the document's Custom Type
|
|
639
704
|
* @param uid - UID of the document
|
|
640
705
|
* @param params - Parameters to filter, sort, and paginate results
|
|
641
706
|
*
|
|
642
707
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
708
|
+
*
|
|
643
709
|
* @see Underlying `@prismicio/client` method {@link proto.getByUID}
|
|
644
710
|
*/
|
|
645
711
|
declare const usePrismicDocumentByUID: <TDocument extends prismicT.PrismicDocument<Record<string, prismicT.AnyRegularField | prismicT.GroupField<Record<string, prismicT.AnyRegularField>> | prismicT.SliceZone<prismicT.Slice<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>> | prismicT.SharedSlice<string, prismicT.SharedSliceVariation<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>>>>>, string, string>>(documentType: string, uid: string, params?: (Partial<_prismicio_client.BuildQueryURLArgs> & HookOnlyParameters) | undefined) => ClientHookReturnType<TDocument>;
|
|
@@ -649,12 +715,15 @@ declare const usePrismicDocumentByUID: <TDocument extends prismicT.PrismicDocume
|
|
|
649
715
|
*
|
|
650
716
|
* @remarks
|
|
651
717
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
718
|
+
*
|
|
652
719
|
* @typeParam TDocument - Type of the Prismic document returned
|
|
720
|
+
*
|
|
653
721
|
* @param documentType - The API ID of the document's Custom Type
|
|
654
722
|
* @param uids - A list of document UIDs.
|
|
655
723
|
* @param params - Parameters to filter, sort, and paginate results
|
|
656
724
|
*
|
|
657
725
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
726
|
+
*
|
|
658
727
|
* @see Underlying `@prismicio/client` method {@link proto.getByUID}
|
|
659
728
|
*/
|
|
660
729
|
declare const usePrismicDocumentsByUIDs: <TDocument extends prismicT.PrismicDocument<Record<string, prismicT.AnyRegularField | prismicT.GroupField<Record<string, prismicT.AnyRegularField>> | prismicT.SliceZone<prismicT.Slice<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>> | prismicT.SharedSlice<string, prismicT.SharedSliceVariation<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>>>>>, string, string>>(documentType: string, uids: string[], params?: (Partial<_prismicio_client.BuildQueryURLArgs> & HookOnlyParameters) | undefined) => ClientHookReturnType<prismicT.Query<TDocument>>;
|
|
@@ -664,12 +733,15 @@ declare const usePrismicDocumentsByUIDs: <TDocument extends prismicT.PrismicDocu
|
|
|
664
733
|
*
|
|
665
734
|
* @remarks
|
|
666
735
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
736
|
+
*
|
|
667
737
|
* @typeParam TDocument - Type of the Prismic document returned
|
|
738
|
+
*
|
|
668
739
|
* @param documentType - The API ID of the document's Custom Type
|
|
669
740
|
* @param uids - A list of document UIDs.
|
|
670
741
|
* @param params - Parameters to filter, sort, and paginate results
|
|
671
742
|
*
|
|
672
743
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
744
|
+
*
|
|
673
745
|
* @see Underlying `@prismicio/client` method {@link proto.getByUID}
|
|
674
746
|
*/
|
|
675
747
|
declare const useAllPrismicDocumentsByUIDs: <TDocument extends prismicT.PrismicDocument<Record<string, prismicT.AnyRegularField | prismicT.GroupField<Record<string, prismicT.AnyRegularField>> | prismicT.SliceZone<prismicT.Slice<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>> | prismicT.SharedSlice<string, prismicT.SharedSliceVariation<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>>>>>, string, string>>(documentType: string, uids: string[], params?: (Partial<_prismicio_client.BuildQueryURLArgs> & HookOnlyParameters) | undefined) => ClientHookReturnType<TDocument[]>;
|
|
@@ -679,11 +751,14 @@ declare const useAllPrismicDocumentsByUIDs: <TDocument extends prismicT.PrismicD
|
|
|
679
751
|
*
|
|
680
752
|
* @remarks
|
|
681
753
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
754
|
+
*
|
|
682
755
|
* @typeParam TDocument - Type of the Prismic document returned
|
|
756
|
+
*
|
|
683
757
|
* @param documentType - The API ID of the singleton Custom Type
|
|
684
758
|
* @param params - Parameters to filter, sort, and paginate results
|
|
685
759
|
*
|
|
686
760
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
761
|
+
*
|
|
687
762
|
* @see Underlying `@prismicio/client` method {@link proto.getSingle}
|
|
688
763
|
*/
|
|
689
764
|
declare const useSinglePrismicDocument: <TDocument extends prismicT.PrismicDocument<Record<string, prismicT.AnyRegularField | prismicT.GroupField<Record<string, prismicT.AnyRegularField>> | prismicT.SliceZone<prismicT.Slice<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>> | prismicT.SharedSlice<string, prismicT.SharedSliceVariation<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>>>>>, string, string>>(documentType: string, params?: (Partial<_prismicio_client.BuildQueryURLArgs> & HookOnlyParameters) | undefined) => ClientHookReturnType<TDocument>;
|
|
@@ -692,11 +767,14 @@ declare const useSinglePrismicDocument: <TDocument extends prismicT.PrismicDocum
|
|
|
692
767
|
*
|
|
693
768
|
* @remarks
|
|
694
769
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
770
|
+
*
|
|
695
771
|
* @typeParam TDocument - Type of Prismic documents returned
|
|
772
|
+
*
|
|
696
773
|
* @param documentType - The API ID of the Custom Type
|
|
697
774
|
* @param params - Parameters to filter, sort, and paginate results
|
|
698
775
|
*
|
|
699
776
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
777
|
+
*
|
|
700
778
|
* @see Underlying `@prismicio/client` method {@link proto.getByType}
|
|
701
779
|
*/
|
|
702
780
|
declare const usePrismicDocumentsByType: <TDocument extends prismicT.PrismicDocument<Record<string, prismicT.AnyRegularField | prismicT.GroupField<Record<string, prismicT.AnyRegularField>> | prismicT.SliceZone<prismicT.Slice<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>> | prismicT.SharedSlice<string, prismicT.SharedSliceVariation<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>>>>>, string, string>>(documentType: string, params?: (Partial<_prismicio_client.BuildQueryURLArgs> & HookOnlyParameters) | undefined) => ClientHookReturnType<prismicT.Query<TDocument>>;
|
|
@@ -706,11 +784,14 @@ declare const usePrismicDocumentsByType: <TDocument extends prismicT.PrismicDocu
|
|
|
706
784
|
*
|
|
707
785
|
* @remarks
|
|
708
786
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
787
|
+
*
|
|
709
788
|
* @typeParam TDocument - Type of Prismic documents returned
|
|
789
|
+
*
|
|
710
790
|
* @param documentType - The API ID of the Custom Type
|
|
711
791
|
* @param params - Parameters to filter and sort results
|
|
712
792
|
*
|
|
713
793
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
794
|
+
*
|
|
714
795
|
* @see Underlying `@prismicio/client` method {@link proto.getAllByType}
|
|
715
796
|
*/
|
|
716
797
|
declare const useAllPrismicDocumentsByType: <TDocument extends prismicT.PrismicDocument<Record<string, prismicT.AnyRegularField | prismicT.GroupField<Record<string, prismicT.AnyRegularField>> | prismicT.SliceZone<prismicT.Slice<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>> | prismicT.SharedSlice<string, prismicT.SharedSliceVariation<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>>>>>, string, string>>(documentType: string, params?: (Partial<Omit<_prismicio_client.BuildQueryURLArgs, "page">> & HookOnlyParameters) | undefined) => ClientHookReturnType<TDocument[]>;
|
|
@@ -719,11 +800,14 @@ declare const useAllPrismicDocumentsByType: <TDocument extends prismicT.PrismicD
|
|
|
719
800
|
*
|
|
720
801
|
* @remarks
|
|
721
802
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
803
|
+
*
|
|
722
804
|
* @typeParam TDocument - Type of Prismic documents returned
|
|
805
|
+
*
|
|
723
806
|
* @param tag - The tag that must be included on a document
|
|
724
807
|
* @param params - Parameters to filter, sort, and paginate results
|
|
725
808
|
*
|
|
726
809
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
810
|
+
*
|
|
727
811
|
* @see Underlying `@prismicio/client` method {@link proto.getByTag}
|
|
728
812
|
*/
|
|
729
813
|
declare const usePrismicDocumentsByTag: <TDocument extends prismicT.PrismicDocument<Record<string, prismicT.AnyRegularField | prismicT.GroupField<Record<string, prismicT.AnyRegularField>> | prismicT.SliceZone<prismicT.Slice<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>> | prismicT.SharedSlice<string, prismicT.SharedSliceVariation<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>>>>>, string, string>>(tag: string, params?: (Partial<_prismicio_client.BuildQueryURLArgs> & HookOnlyParameters) | undefined) => ClientHookReturnType<prismicT.Query<TDocument>>;
|
|
@@ -732,11 +816,14 @@ declare const usePrismicDocumentsByTag: <TDocument extends prismicT.PrismicDocum
|
|
|
732
816
|
*
|
|
733
817
|
* @remarks
|
|
734
818
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
819
|
+
*
|
|
735
820
|
* @typeParam TDocument - Type of Prismic documents returned
|
|
821
|
+
*
|
|
736
822
|
* @param tag - The tag that must be included on a document
|
|
737
823
|
* @param params - Parameters to filter and sort results
|
|
738
824
|
*
|
|
739
825
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
826
|
+
*
|
|
740
827
|
* @see Underlying `@prismicio/client` method {@link proto.getAllByTag}
|
|
741
828
|
*/
|
|
742
829
|
declare const useAllPrismicDocumentsByTag: <TDocument extends prismicT.PrismicDocument<Record<string, prismicT.AnyRegularField | prismicT.GroupField<Record<string, prismicT.AnyRegularField>> | prismicT.SliceZone<prismicT.Slice<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>> | prismicT.SharedSlice<string, prismicT.SharedSliceVariation<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>>>>>, string, string>>(tag: string, params?: (Partial<Omit<_prismicio_client.BuildQueryURLArgs, "page">> & HookOnlyParameters) | undefined) => ClientHookReturnType<TDocument[]>;
|
|
@@ -746,11 +833,14 @@ declare const useAllPrismicDocumentsByTag: <TDocument extends prismicT.PrismicDo
|
|
|
746
833
|
*
|
|
747
834
|
* @remarks
|
|
748
835
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
836
|
+
*
|
|
749
837
|
* @typeParam TDocument - Type of Prismic documents returned
|
|
838
|
+
*
|
|
750
839
|
* @param tags - A list of tags that must be included on a document
|
|
751
840
|
* @param params - Parameters to filter, sort, and paginate results
|
|
752
841
|
*
|
|
753
842
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
843
|
+
*
|
|
754
844
|
* @see Underlying `@prismicio/client` method {@link proto.getByTags}
|
|
755
845
|
*/
|
|
756
846
|
declare const usePrismicDocumentsBySomeTags: <TDocument extends prismicT.PrismicDocument<Record<string, prismicT.AnyRegularField | prismicT.GroupField<Record<string, prismicT.AnyRegularField>> | prismicT.SliceZone<prismicT.Slice<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>> | prismicT.SharedSlice<string, prismicT.SharedSliceVariation<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>>>>>, string, string>>(tag: string[], params?: (Partial<_prismicio_client.BuildQueryURLArgs> & HookOnlyParameters) | undefined) => ClientHookReturnType<prismicT.Query<TDocument>>;
|
|
@@ -760,11 +850,14 @@ declare const usePrismicDocumentsBySomeTags: <TDocument extends prismicT.Prismic
|
|
|
760
850
|
*
|
|
761
851
|
* @remarks
|
|
762
852
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
853
|
+
*
|
|
763
854
|
* @typeParam TDocument - Type of Prismic documents returned
|
|
855
|
+
*
|
|
764
856
|
* @param tags - A list of tags that must be included on a document
|
|
765
857
|
* @param params - Parameters to filter and sort results
|
|
766
858
|
*
|
|
767
859
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
860
|
+
*
|
|
768
861
|
* @see Underlying `@prismicio/client` method {@link proto.getAllByTags}
|
|
769
862
|
*/
|
|
770
863
|
declare const useAllPrismicDocumentsBySomeTags: <TDocument extends prismicT.PrismicDocument<Record<string, prismicT.AnyRegularField | prismicT.GroupField<Record<string, prismicT.AnyRegularField>> | prismicT.SliceZone<prismicT.Slice<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>> | prismicT.SharedSlice<string, prismicT.SharedSliceVariation<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>>>>>, string, string>>(tag: string[], params?: (Partial<Omit<_prismicio_client.BuildQueryURLArgs, "page">> & HookOnlyParameters) | undefined) => ClientHookReturnType<TDocument[]>;
|
|
@@ -774,11 +867,14 @@ declare const useAllPrismicDocumentsBySomeTags: <TDocument extends prismicT.Pris
|
|
|
774
867
|
*
|
|
775
868
|
* @remarks
|
|
776
869
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
870
|
+
*
|
|
777
871
|
* @typeParam TDocument - Type of Prismic documents returned
|
|
872
|
+
*
|
|
778
873
|
* @param tags - A list of tags that must be included on a document
|
|
779
874
|
* @param params - Parameters to filter, sort, and paginate results
|
|
780
875
|
*
|
|
781
876
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
877
|
+
*
|
|
782
878
|
* @see Underlying `@prismicio/client` method {@link proto.getByTags}
|
|
783
879
|
*/
|
|
784
880
|
declare const usePrismicDocumentsByEveryTag: <TDocument extends prismicT.PrismicDocument<Record<string, prismicT.AnyRegularField | prismicT.GroupField<Record<string, prismicT.AnyRegularField>> | prismicT.SliceZone<prismicT.Slice<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>> | prismicT.SharedSlice<string, prismicT.SharedSliceVariation<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>>>>>, string, string>>(tag: string[], params?: (Partial<_prismicio_client.BuildQueryURLArgs> & HookOnlyParameters) | undefined) => ClientHookReturnType<prismicT.Query<TDocument>>;
|
|
@@ -788,13 +884,41 @@ declare const usePrismicDocumentsByEveryTag: <TDocument extends prismicT.Prismic
|
|
|
788
884
|
*
|
|
789
885
|
* @remarks
|
|
790
886
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
887
|
+
*
|
|
791
888
|
* @typeParam TDocument - Type of Prismic documents returned
|
|
889
|
+
*
|
|
792
890
|
* @param tags - A list of tags that must be included on a document
|
|
793
891
|
* @param params - Parameters to filter and sort results
|
|
794
892
|
*
|
|
795
893
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
894
|
+
*
|
|
796
895
|
* @see Underlying `@prismicio/client` method {@link proto.getAllByTags}
|
|
797
896
|
*/
|
|
798
897
|
declare const useAllPrismicDocumentsByEveryTag: <TDocument extends prismicT.PrismicDocument<Record<string, prismicT.AnyRegularField | prismicT.GroupField<Record<string, prismicT.AnyRegularField>> | prismicT.SliceZone<prismicT.Slice<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>> | prismicT.SharedSlice<string, prismicT.SharedSliceVariation<string, Record<string, prismicT.AnyRegularField>, Record<string, prismicT.AnyRegularField>>>>>, string, string>>(tag: string[], params?: (Partial<Omit<_prismicio_client.BuildQueryURLArgs, "page">> & HookOnlyParameters) | undefined) => ClientHookReturnType<TDocument[]>;
|
|
799
898
|
|
|
800
|
-
|
|
899
|
+
/**
|
|
900
|
+
* @deprecated Renamed to `Element` (without an "s").
|
|
901
|
+
*/
|
|
902
|
+
declare const Elements: {
|
|
903
|
+
readonly heading1: "heading1";
|
|
904
|
+
readonly heading2: "heading2";
|
|
905
|
+
readonly heading3: "heading3";
|
|
906
|
+
readonly heading4: "heading4";
|
|
907
|
+
readonly heading5: "heading5";
|
|
908
|
+
readonly heading6: "heading6";
|
|
909
|
+
readonly paragraph: "paragraph";
|
|
910
|
+
readonly preformatted: "preformatted";
|
|
911
|
+
readonly strong: "strong";
|
|
912
|
+
readonly em: "em";
|
|
913
|
+
readonly listItem: "list-item";
|
|
914
|
+
readonly oListItem: "o-list-item";
|
|
915
|
+
readonly list: "group-list-item";
|
|
916
|
+
readonly oList: "group-o-list-item";
|
|
917
|
+
readonly image: "image";
|
|
918
|
+
readonly embed: "embed";
|
|
919
|
+
readonly hyperlink: "hyperlink";
|
|
920
|
+
readonly label: "label";
|
|
921
|
+
readonly span: "span";
|
|
922
|
+
};
|
|
923
|
+
|
|
924
|
+
export { Elements, JSXFunctionSerializer, JSXMapSerializer, LinkProps, PrismicClientHookState, PrismicContextValue, PrismicLink, PrismicLinkProps, PrismicProvider, PrismicProviderProps, PrismicRichText, PrismicRichTextProps, PrismicText, PrismicTextProps, PrismicToolbar, PrismicToolbarProps, SliceComponentProps, SliceComponentType, SliceLike, SliceZone, SliceZoneComponents, SliceZoneLike, SliceZoneProps, SliceZoneResolver, TODOSliceComponent, UsePrismicPreviewResolverArgs, useAllPrismicDocumentsByEveryTag, useAllPrismicDocumentsByIDs, useAllPrismicDocumentsBySomeTags, useAllPrismicDocumentsByTag, useAllPrismicDocumentsByType, useAllPrismicDocumentsByUIDs, useAllPrismicDocumentsDangerously, useFirstPrismicDocument, usePrismicClient, usePrismicContext, usePrismicDocumentByID, usePrismicDocumentByUID, usePrismicDocuments, usePrismicDocumentsByEveryTag, usePrismicDocumentsByIDs, usePrismicDocumentsBySomeTags, usePrismicDocumentsByTag, usePrismicDocumentsByType, usePrismicDocumentsByUIDs, usePrismicPreviewResolver, useSinglePrismicDocument };
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import * as prismicH from '@prismicio/helpers';
|
|
3
3
|
import * as prismicR from '@prismicio/richtext';
|
|
4
|
+
import { Element } from '@prismicio/richtext';
|
|
5
|
+
export { Element } from '@prismicio/richtext';
|
|
4
6
|
|
|
5
7
|
const PrismicContext = React.createContext({});
|
|
6
8
|
const PrismicProvider = ({
|
|
@@ -255,13 +257,24 @@ const TODOSliceComponent = __PRODUCTION__ ? () => null : ({
|
|
|
255
257
|
const SliceZone = ({
|
|
256
258
|
slices = [],
|
|
257
259
|
components = {},
|
|
260
|
+
resolver,
|
|
258
261
|
defaultComponent = TODOSliceComponent,
|
|
259
262
|
context = {}
|
|
260
263
|
}) => {
|
|
261
264
|
const renderedSlices = React.useMemo(() => {
|
|
262
265
|
return slices.map((slice, index) => {
|
|
263
|
-
|
|
264
|
-
|
|
266
|
+
let Comp = components[slice.slice_type] || defaultComponent;
|
|
267
|
+
if (resolver) {
|
|
268
|
+
const resolvedComp = resolver({
|
|
269
|
+
slice,
|
|
270
|
+
sliceName: slice.slice_type,
|
|
271
|
+
i: index
|
|
272
|
+
});
|
|
273
|
+
if (resolvedComp) {
|
|
274
|
+
Comp = resolvedComp;
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
const key = `${index}-${JSON.stringify(slice)}`;
|
|
265
278
|
return /* @__PURE__ */ React.createElement(Comp, {
|
|
266
279
|
key,
|
|
267
280
|
slice,
|
|
@@ -278,14 +291,18 @@ const PrismicToolbar = ({
|
|
|
278
291
|
repositoryName,
|
|
279
292
|
type = "new"
|
|
280
293
|
}) => {
|
|
294
|
+
const src = `https://static.cdn.prismic.io/prismic.js?repo=${repositoryName}${type === "new" ? "&type=new" : ""}`;
|
|
281
295
|
React.useEffect(() => {
|
|
282
|
-
const
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
296
|
+
const existingScript = document.querySelector(`script[src="${src}"]`);
|
|
297
|
+
if (!existingScript) {
|
|
298
|
+
const script = document.createElement("script");
|
|
299
|
+
script.src = src;
|
|
300
|
+
script.defer = true;
|
|
301
|
+
script.dataset.prismicToolbar = "";
|
|
302
|
+
script.dataset.repositoryName = repositoryName;
|
|
303
|
+
script.dataset.type = type;
|
|
304
|
+
document.body.appendChild(script);
|
|
305
|
+
}
|
|
289
306
|
}, [repositoryName, type]);
|
|
290
307
|
return null;
|
|
291
308
|
};
|
|
@@ -310,21 +327,6 @@ const reducer = (state, action) => {
|
|
|
310
327
|
const initialState = {
|
|
311
328
|
state: "idle"
|
|
312
329
|
};
|
|
313
|
-
const getParamHookDependencies = (params) => {
|
|
314
|
-
return [
|
|
315
|
-
params.ref,
|
|
316
|
-
params.lang,
|
|
317
|
-
params.page,
|
|
318
|
-
params.after,
|
|
319
|
-
params.fetch,
|
|
320
|
-
params.pageSize,
|
|
321
|
-
params.orderings,
|
|
322
|
-
params.fetchLinks,
|
|
323
|
-
params.graphQuery,
|
|
324
|
-
params.predicates,
|
|
325
|
-
params.accessToken
|
|
326
|
-
];
|
|
327
|
-
};
|
|
328
330
|
const isParams = (value) => {
|
|
329
331
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
330
332
|
};
|
|
@@ -339,17 +341,26 @@ const useStatefulPrismicClientMethod = (methodName, args, explicitClient) => {
|
|
|
339
341
|
const client = usePrismicClient(explicitClient || lastArgExplicitClient);
|
|
340
342
|
const [state, dispatch] = React.useReducer(reducer, initialState);
|
|
341
343
|
React.useEffect(() => {
|
|
342
|
-
if (
|
|
343
|
-
|
|
344
|
-
|
|
344
|
+
if (!skip) {
|
|
345
|
+
{
|
|
346
|
+
dispatch(["start"]);
|
|
347
|
+
}
|
|
348
|
+
client[methodName].call(client, ...argsWithoutParams, params).then((result) => {
|
|
349
|
+
{
|
|
350
|
+
dispatch(["succeed", result]);
|
|
351
|
+
}
|
|
352
|
+
}).catch((error) => {
|
|
353
|
+
{
|
|
354
|
+
dispatch(["fail", error]);
|
|
355
|
+
}
|
|
356
|
+
});
|
|
345
357
|
}
|
|
346
358
|
}, [
|
|
347
359
|
client,
|
|
348
|
-
state.state,
|
|
349
|
-
skip,
|
|
350
360
|
methodName,
|
|
351
|
-
|
|
352
|
-
|
|
361
|
+
skip,
|
|
362
|
+
JSON.stringify(argsWithoutParams),
|
|
363
|
+
JSON.stringify(params)
|
|
353
364
|
]);
|
|
354
365
|
return React.useMemo(() => [
|
|
355
366
|
state.data,
|
|
@@ -361,9 +372,11 @@ const useStatefulPrismicClientMethod = (methodName, args, explicitClient) => {
|
|
|
361
372
|
};
|
|
362
373
|
|
|
363
374
|
const usePrismicPreviewResolver = (args = {}) => {
|
|
375
|
+
const context = usePrismicContext();
|
|
376
|
+
const linkResolver = args.linkResolver || context.linkResolver;
|
|
364
377
|
const result = useStatefulPrismicClientMethod("resolvePreviewURL", [
|
|
365
378
|
{
|
|
366
|
-
linkResolver
|
|
379
|
+
linkResolver,
|
|
367
380
|
defaultURL: args.defaultURL || "/",
|
|
368
381
|
previewToken: args.previewToken,
|
|
369
382
|
documentID: args.documentID
|
|
@@ -398,5 +411,7 @@ const useAllPrismicDocumentsBySomeTags = (...args) => useStatefulPrismicClientMe
|
|
|
398
411
|
const usePrismicDocumentsByEveryTag = (...args) => useStatefulPrismicClientMethod("getByEveryTag", args);
|
|
399
412
|
const useAllPrismicDocumentsByEveryTag = (...args) => useStatefulPrismicClientMethod("getAllByEveryTag", args);
|
|
400
413
|
|
|
401
|
-
|
|
402
|
-
|
|
414
|
+
const Elements = Element;
|
|
415
|
+
|
|
416
|
+
export { Elements, PrismicLink, PrismicProvider, PrismicRichText, PrismicText, PrismicToolbar, SliceZone, TODOSliceComponent, useAllPrismicDocumentsByEveryTag, useAllPrismicDocumentsByIDs, useAllPrismicDocumentsBySomeTags, useAllPrismicDocumentsByTag, useAllPrismicDocumentsByType, useAllPrismicDocumentsByUIDs, useAllPrismicDocumentsDangerously, useFirstPrismicDocument, usePrismicClient, usePrismicContext, usePrismicDocumentByID, usePrismicDocumentByUID, usePrismicDocuments, usePrismicDocumentsByEveryTag, usePrismicDocumentsByIDs, usePrismicDocumentsBySomeTags, usePrismicDocumentsByTag, usePrismicDocumentsByType, usePrismicDocumentsByUIDs, usePrismicPreviewResolver, useSinglePrismicDocument };
|
|
417
|
+
//# sourceMappingURL=index.js.map
|