@prismicio/react 2.0.0-beta.5 → 2.0.0-beta.6
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 +12 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +113 -15
- package/dist/index.mjs +12 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
- package/src/PrismicRichText.tsx +13 -12
- package/src/PrismicText.tsx +2 -1
- package/src/SliceZone.tsx +68 -1
- package/src/clientHooks.ts +54 -0
- package/src/index.ts +1 -0
- package/src/useStatefulPrismicClientMethod.ts +1 -0
package/dist/index.d.ts
CHANGED
|
@@ -233,12 +233,13 @@ declare type PrismicTextProps = {
|
|
|
233
233
|
* @example Rendering a Rich Text field as plain text.
|
|
234
234
|
*
|
|
235
235
|
* ```jsx
|
|
236
|
-
* <PrismicText field={document.data.content}
|
|
236
|
+
* <PrismicText field={document.data.content} />;
|
|
237
237
|
* ```
|
|
238
238
|
*
|
|
239
239
|
* @param props - Props for the component.
|
|
240
240
|
*
|
|
241
241
|
* @returns The Rich Text field's content as plain text.
|
|
242
|
+
*
|
|
242
243
|
* @see Learn about Rich Text fields {@link https://prismic.io/docs/core-concepts/rich-text-title}
|
|
243
244
|
*/
|
|
244
245
|
declare const PrismicText: (props: PrismicTextProps) => JSX.Element | null;
|
|
@@ -286,12 +287,12 @@ declare type PrismicRichTextProps = {
|
|
|
286
287
|
*
|
|
287
288
|
* ```jsx
|
|
288
289
|
* (type, node, content, children) => {
|
|
289
|
-
*
|
|
290
|
-
*
|
|
291
|
-
*
|
|
292
|
-
*
|
|
293
|
-
*
|
|
294
|
-
* }
|
|
290
|
+
* switch (type) {
|
|
291
|
+
* case "heading1": {
|
|
292
|
+
* return <Heading>{chidlren}</Heading>;
|
|
293
|
+
* }
|
|
294
|
+
* }
|
|
295
|
+
* };
|
|
295
296
|
* ```
|
|
296
297
|
*/
|
|
297
298
|
components?: JSXMapSerializer | JSXFunctionSerializer;
|
|
@@ -327,23 +328,24 @@ declare type PrismicRichTextProps = {
|
|
|
327
328
|
* @example Rendering a Rich Text field using the default HTMl elements.
|
|
328
329
|
*
|
|
329
330
|
* ```jsx
|
|
330
|
-
* <PrismicRichText field={document.data.content}
|
|
331
|
+
* <PrismicRichText field={document.data.content} />;
|
|
331
332
|
* ```
|
|
332
333
|
*
|
|
333
334
|
* @example Rendering a Rich Text field using a custom set of React components.
|
|
334
335
|
*
|
|
335
336
|
* ```jsx
|
|
336
337
|
* <PrismicRichText
|
|
337
|
-
*
|
|
338
|
-
*
|
|
339
|
-
*
|
|
340
|
-
*
|
|
341
|
-
*
|
|
338
|
+
* field={document.data.content}
|
|
339
|
+
* components={{
|
|
340
|
+
* heading1: ({ children }) => <Heading>{children}</Heading>,
|
|
341
|
+
* }}
|
|
342
|
+
* />;
|
|
342
343
|
* ```
|
|
343
344
|
*
|
|
344
345
|
* @param props - Props for the component.
|
|
345
346
|
*
|
|
346
347
|
* @returns The Rich Text field's content as React components.
|
|
348
|
+
*
|
|
347
349
|
* @see Learn about Rich Text fields {@link https://prismic.io/docs/core-concepts/rich-text-title}
|
|
348
350
|
* @see Learn about Rich Text serializers {@link https://prismic.io/docs/core-concepts/html-serializer}
|
|
349
351
|
*/
|
|
@@ -418,6 +420,35 @@ declare type SliceZoneComponents<TSlice extends SliceLike = SliceLike, TContext
|
|
|
418
420
|
* cannot be found in `<SliceZone>`.
|
|
419
421
|
*/
|
|
420
422
|
declare const TODOSliceComponent: <TSlice extends SliceLike<string>, TContext>({ slice, }: SliceComponentProps<TSlice, TContext>) => JSX.Element | null;
|
|
423
|
+
/**
|
|
424
|
+
* Arguments for a `<SliceZone>` `resolver` function.
|
|
425
|
+
*/
|
|
426
|
+
declare type SliceZoneResolverArgs<TSlice extends SliceLike = SliceLike> = {
|
|
427
|
+
/**
|
|
428
|
+
* The Slice to resolve to a React component.
|
|
429
|
+
*/
|
|
430
|
+
slice: TSlice;
|
|
431
|
+
/**
|
|
432
|
+
* The name of the Slice.
|
|
433
|
+
*/
|
|
434
|
+
sliceName: TSlice["slice_type"];
|
|
435
|
+
/**
|
|
436
|
+
* The index of the Slice in the Slice Zone.
|
|
437
|
+
*/
|
|
438
|
+
i: number;
|
|
439
|
+
};
|
|
440
|
+
/**
|
|
441
|
+
* A function that determines the rendered React component for each Slice in the
|
|
442
|
+
* Slice Zone. If a nullish value is returned, the component will fallback to
|
|
443
|
+
* the `components` or `defaultComponent` props to determine the rendered component.
|
|
444
|
+
*
|
|
445
|
+
* @deprecated Use the `components` prop instead.
|
|
446
|
+
*
|
|
447
|
+
* @param args - Arguments for the resolver function.
|
|
448
|
+
*
|
|
449
|
+
* @returns The React component to render for a Slice.
|
|
450
|
+
*/
|
|
451
|
+
declare type SliceZoneResolver<TSlice extends SliceLike = SliceLike, TContext = unknown> = (args: SliceZoneResolverArgs<TSlice>) => SliceComponentType<TSlice, TContext> | undefined | null;
|
|
421
452
|
/**
|
|
422
453
|
* React props for the `<SliceZone>` component.
|
|
423
454
|
*
|
|
@@ -433,6 +464,17 @@ declare type SliceZoneProps<TSlice extends SliceLike = SliceLike, TContext = unk
|
|
|
433
464
|
* A record mapping Slice types to React components.
|
|
434
465
|
*/
|
|
435
466
|
components?: SliceZoneComponents<TSlice, TContext>;
|
|
467
|
+
/**
|
|
468
|
+
* A function that determines the rendered React component for each Slice in
|
|
469
|
+
* the Slice Zone.
|
|
470
|
+
*
|
|
471
|
+
* @deprecated Use the `components` prop instead.
|
|
472
|
+
*
|
|
473
|
+
* @param args - Arguments for the resolver function.
|
|
474
|
+
*
|
|
475
|
+
* @returns The React component to render for a Slice.
|
|
476
|
+
*/
|
|
477
|
+
resolver?: SliceZoneResolver<TSlice, TContext>;
|
|
436
478
|
/**
|
|
437
479
|
* The React component rendered if a component mapping from the `components`
|
|
438
480
|
* prop cannot be found.
|
|
@@ -453,10 +495,12 @@ declare type SliceZoneProps<TSlice extends SliceLike = SliceLike, TContext = unk
|
|
|
453
495
|
*
|
|
454
496
|
* @typeParam TSlice - The type(s) of a Slice in the Slice Zone.
|
|
455
497
|
* @typeParam TContext - Arbitrary data made available to all Slice components.
|
|
498
|
+
*
|
|
456
499
|
* @returns The Slice Zone's content as React components.
|
|
500
|
+
*
|
|
457
501
|
* @see Learn about Prismic Slices and Slice Zones {@link https://prismic.io/docs/core-concepts/slices}
|
|
458
502
|
*/
|
|
459
|
-
declare const SliceZone: <TSlice extends SliceLike<string>, TContext>({ slices, components, defaultComponent, context, }: SliceZoneProps<TSlice, TContext>) => JSX.Element;
|
|
503
|
+
declare const SliceZone: <TSlice extends SliceLike<string>, TContext>({ slices, components, resolver, defaultComponent, context, }: SliceZoneProps<TSlice, TContext>) => JSX.Element;
|
|
460
504
|
|
|
461
505
|
/**
|
|
462
506
|
* Props for `<PrismicToolbar>`.
|
|
@@ -554,10 +598,13 @@ declare const usePrismicPreviewResolver: (args?: UsePrismicPreviewResolverArgs)
|
|
|
554
598
|
*
|
|
555
599
|
* @remarks
|
|
556
600
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
601
|
+
*
|
|
557
602
|
* @typeParam TDocument - Type of Prismic documents returned
|
|
603
|
+
*
|
|
558
604
|
* @param params - Parameters to filter, sort, and paginate results
|
|
559
605
|
*
|
|
560
606
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
607
|
+
*
|
|
561
608
|
* @see Underlying `@prismicio/client` method {@link proto.get}
|
|
562
609
|
*/
|
|
563
610
|
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 +614,13 @@ declare const usePrismicDocuments: <TDocument extends prismicT.PrismicDocument<R
|
|
|
567
614
|
*
|
|
568
615
|
* @remarks
|
|
569
616
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
617
|
+
*
|
|
570
618
|
* @typeParam TDocument - Type of the Prismic document returned
|
|
619
|
+
*
|
|
571
620
|
* @param params - Parameters to filter, sort, and paginate results
|
|
572
621
|
*
|
|
573
622
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
623
|
+
*
|
|
574
624
|
* @see Underlying `@prismicio/client` method {@link proto.getFirst}
|
|
575
625
|
*/
|
|
576
626
|
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 +630,13 @@ declare const useFirstPrismicDocument: <TDocument extends prismicT.PrismicDocume
|
|
|
580
630
|
*
|
|
581
631
|
* @remarks
|
|
582
632
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
633
|
+
*
|
|
583
634
|
* @typeParam TDocument - Type of Prismic documents returned
|
|
635
|
+
*
|
|
584
636
|
* @param params - Parameters to filter and sort results
|
|
585
637
|
*
|
|
586
638
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
639
|
+
*
|
|
587
640
|
* @see Underlying `@prismicio/client` method {@link proto.getAll}
|
|
588
641
|
*/
|
|
589
642
|
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 +647,14 @@ declare const useAllPrismicDocumentsDangerously: <TDocument extends prismicT.Pri
|
|
|
594
647
|
*
|
|
595
648
|
* @remarks
|
|
596
649
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
650
|
+
*
|
|
597
651
|
* @typeParam TDocument - Type of the Prismic document returned
|
|
652
|
+
*
|
|
598
653
|
* @param id - ID of the document
|
|
599
654
|
* @param params - Parameters to filter, sort, and paginate results
|
|
600
655
|
*
|
|
601
656
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
657
|
+
*
|
|
602
658
|
* @see Underlying `@prismicio/client` method {@link proto.getByID}
|
|
603
659
|
*/
|
|
604
660
|
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 +663,14 @@ declare const usePrismicDocumentByID: <TDocument extends prismicT.PrismicDocumen
|
|
|
607
663
|
*
|
|
608
664
|
* @remarks
|
|
609
665
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
666
|
+
*
|
|
610
667
|
* @typeParam TDocument - Type of Prismic documents returned
|
|
668
|
+
*
|
|
611
669
|
* @param ids - A list of document IDs
|
|
612
670
|
* @param params - Parameters to filter, sort, and paginate results
|
|
613
671
|
*
|
|
614
672
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
673
|
+
*
|
|
615
674
|
* @see Underlying `@prismicio/client` method {@link proto.getByIDs}
|
|
616
675
|
*/
|
|
617
676
|
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 +679,14 @@ declare const usePrismicDocumentsByIDs: <TDocument extends prismicT.PrismicDocum
|
|
|
620
679
|
*
|
|
621
680
|
* @remarks
|
|
622
681
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
682
|
+
*
|
|
623
683
|
* @typeParam TDocument - Type of Prismic documents returned
|
|
684
|
+
*
|
|
624
685
|
* @param ids - A list of document IDs
|
|
625
686
|
* @param params - Parameters to filter and sort results
|
|
626
687
|
*
|
|
627
688
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
689
|
+
*
|
|
628
690
|
* @see Underlying `@prismicio/client` method {@link proto.getAllByIDs}
|
|
629
691
|
*/
|
|
630
692
|
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 +696,15 @@ declare const useAllPrismicDocumentsByIDs: <TDocument extends prismicT.PrismicDo
|
|
|
634
696
|
*
|
|
635
697
|
* @remarks
|
|
636
698
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
699
|
+
*
|
|
637
700
|
* @typeParam TDocument - Type of the Prismic document returned
|
|
701
|
+
*
|
|
638
702
|
* @param documentType - The API ID of the document's Custom Type
|
|
639
703
|
* @param uid - UID of the document
|
|
640
704
|
* @param params - Parameters to filter, sort, and paginate results
|
|
641
705
|
*
|
|
642
706
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
707
|
+
*
|
|
643
708
|
* @see Underlying `@prismicio/client` method {@link proto.getByUID}
|
|
644
709
|
*/
|
|
645
710
|
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 +714,15 @@ declare const usePrismicDocumentByUID: <TDocument extends prismicT.PrismicDocume
|
|
|
649
714
|
*
|
|
650
715
|
* @remarks
|
|
651
716
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
717
|
+
*
|
|
652
718
|
* @typeParam TDocument - Type of the Prismic document returned
|
|
719
|
+
*
|
|
653
720
|
* @param documentType - The API ID of the document's Custom Type
|
|
654
721
|
* @param uids - A list of document UIDs.
|
|
655
722
|
* @param params - Parameters to filter, sort, and paginate results
|
|
656
723
|
*
|
|
657
724
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
725
|
+
*
|
|
658
726
|
* @see Underlying `@prismicio/client` method {@link proto.getByUID}
|
|
659
727
|
*/
|
|
660
728
|
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 +732,15 @@ declare const usePrismicDocumentsByUIDs: <TDocument extends prismicT.PrismicDocu
|
|
|
664
732
|
*
|
|
665
733
|
* @remarks
|
|
666
734
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
735
|
+
*
|
|
667
736
|
* @typeParam TDocument - Type of the Prismic document returned
|
|
737
|
+
*
|
|
668
738
|
* @param documentType - The API ID of the document's Custom Type
|
|
669
739
|
* @param uids - A list of document UIDs.
|
|
670
740
|
* @param params - Parameters to filter, sort, and paginate results
|
|
671
741
|
*
|
|
672
742
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
743
|
+
*
|
|
673
744
|
* @see Underlying `@prismicio/client` method {@link proto.getByUID}
|
|
674
745
|
*/
|
|
675
746
|
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 +750,14 @@ declare const useAllPrismicDocumentsByUIDs: <TDocument extends prismicT.PrismicD
|
|
|
679
750
|
*
|
|
680
751
|
* @remarks
|
|
681
752
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
753
|
+
*
|
|
682
754
|
* @typeParam TDocument - Type of the Prismic document returned
|
|
755
|
+
*
|
|
683
756
|
* @param documentType - The API ID of the singleton Custom Type
|
|
684
757
|
* @param params - Parameters to filter, sort, and paginate results
|
|
685
758
|
*
|
|
686
759
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
760
|
+
*
|
|
687
761
|
* @see Underlying `@prismicio/client` method {@link proto.getSingle}
|
|
688
762
|
*/
|
|
689
763
|
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 +766,14 @@ declare const useSinglePrismicDocument: <TDocument extends prismicT.PrismicDocum
|
|
|
692
766
|
*
|
|
693
767
|
* @remarks
|
|
694
768
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
769
|
+
*
|
|
695
770
|
* @typeParam TDocument - Type of Prismic documents returned
|
|
771
|
+
*
|
|
696
772
|
* @param documentType - The API ID of the Custom Type
|
|
697
773
|
* @param params - Parameters to filter, sort, and paginate results
|
|
698
774
|
*
|
|
699
775
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
776
|
+
*
|
|
700
777
|
* @see Underlying `@prismicio/client` method {@link proto.getByType}
|
|
701
778
|
*/
|
|
702
779
|
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 +783,14 @@ declare const usePrismicDocumentsByType: <TDocument extends prismicT.PrismicDocu
|
|
|
706
783
|
*
|
|
707
784
|
* @remarks
|
|
708
785
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
786
|
+
*
|
|
709
787
|
* @typeParam TDocument - Type of Prismic documents returned
|
|
788
|
+
*
|
|
710
789
|
* @param documentType - The API ID of the Custom Type
|
|
711
790
|
* @param params - Parameters to filter and sort results
|
|
712
791
|
*
|
|
713
792
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
793
|
+
*
|
|
714
794
|
* @see Underlying `@prismicio/client` method {@link proto.getAllByType}
|
|
715
795
|
*/
|
|
716
796
|
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 +799,14 @@ declare const useAllPrismicDocumentsByType: <TDocument extends prismicT.PrismicD
|
|
|
719
799
|
*
|
|
720
800
|
* @remarks
|
|
721
801
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
802
|
+
*
|
|
722
803
|
* @typeParam TDocument - Type of Prismic documents returned
|
|
804
|
+
*
|
|
723
805
|
* @param tag - The tag that must be included on a document
|
|
724
806
|
* @param params - Parameters to filter, sort, and paginate results
|
|
725
807
|
*
|
|
726
808
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
809
|
+
*
|
|
727
810
|
* @see Underlying `@prismicio/client` method {@link proto.getByTag}
|
|
728
811
|
*/
|
|
729
812
|
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 +815,14 @@ declare const usePrismicDocumentsByTag: <TDocument extends prismicT.PrismicDocum
|
|
|
732
815
|
*
|
|
733
816
|
* @remarks
|
|
734
817
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
818
|
+
*
|
|
735
819
|
* @typeParam TDocument - Type of Prismic documents returned
|
|
820
|
+
*
|
|
736
821
|
* @param tag - The tag that must be included on a document
|
|
737
822
|
* @param params - Parameters to filter and sort results
|
|
738
823
|
*
|
|
739
824
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
825
|
+
*
|
|
740
826
|
* @see Underlying `@prismicio/client` method {@link proto.getAllByTag}
|
|
741
827
|
*/
|
|
742
828
|
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 +832,14 @@ declare const useAllPrismicDocumentsByTag: <TDocument extends prismicT.PrismicDo
|
|
|
746
832
|
*
|
|
747
833
|
* @remarks
|
|
748
834
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
835
|
+
*
|
|
749
836
|
* @typeParam TDocument - Type of Prismic documents returned
|
|
837
|
+
*
|
|
750
838
|
* @param tags - A list of tags that must be included on a document
|
|
751
839
|
* @param params - Parameters to filter, sort, and paginate results
|
|
752
840
|
*
|
|
753
841
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
842
|
+
*
|
|
754
843
|
* @see Underlying `@prismicio/client` method {@link proto.getByTags}
|
|
755
844
|
*/
|
|
756
845
|
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 +849,14 @@ declare const usePrismicDocumentsBySomeTags: <TDocument extends prismicT.Prismic
|
|
|
760
849
|
*
|
|
761
850
|
* @remarks
|
|
762
851
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
852
|
+
*
|
|
763
853
|
* @typeParam TDocument - Type of Prismic documents returned
|
|
854
|
+
*
|
|
764
855
|
* @param tags - A list of tags that must be included on a document
|
|
765
856
|
* @param params - Parameters to filter and sort results
|
|
766
857
|
*
|
|
767
858
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
859
|
+
*
|
|
768
860
|
* @see Underlying `@prismicio/client` method {@link proto.getAllByTags}
|
|
769
861
|
*/
|
|
770
862
|
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 +866,14 @@ declare const useAllPrismicDocumentsBySomeTags: <TDocument extends prismicT.Pris
|
|
|
774
866
|
*
|
|
775
867
|
* @remarks
|
|
776
868
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
869
|
+
*
|
|
777
870
|
* @typeParam TDocument - Type of Prismic documents returned
|
|
871
|
+
*
|
|
778
872
|
* @param tags - A list of tags that must be included on a document
|
|
779
873
|
* @param params - Parameters to filter, sort, and paginate results
|
|
780
874
|
*
|
|
781
875
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
876
|
+
*
|
|
782
877
|
* @see Underlying `@prismicio/client` method {@link proto.getByTags}
|
|
783
878
|
*/
|
|
784
879
|
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 +883,16 @@ declare const usePrismicDocumentsByEveryTag: <TDocument extends prismicT.Prismic
|
|
|
788
883
|
*
|
|
789
884
|
* @remarks
|
|
790
885
|
* An additional `@prismicio/client` instance can be provided at `params.client`.
|
|
886
|
+
*
|
|
791
887
|
* @typeParam TDocument - Type of Prismic documents returned
|
|
888
|
+
*
|
|
792
889
|
* @param tags - A list of tags that must be included on a document
|
|
793
890
|
* @param params - Parameters to filter and sort results
|
|
794
891
|
*
|
|
795
892
|
* @returns The composable payload {@link ClientHookReturnType}
|
|
893
|
+
*
|
|
796
894
|
* @see Underlying `@prismicio/client` method {@link proto.getAllByTags}
|
|
797
895
|
*/
|
|
798
896
|
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
897
|
|
|
800
|
-
export { JSXFunctionSerializer, JSXMapSerializer, LinkProps, PrismicClientHookState, PrismicContextValue, PrismicLink, PrismicLinkProps, PrismicProvider, PrismicProviderProps, PrismicRichText, PrismicRichTextProps, PrismicText, PrismicTextProps, PrismicToolbar, PrismicToolbarProps, SliceComponentProps, SliceComponentType, SliceLike, SliceZone, SliceZoneComponents, SliceZoneLike, SliceZoneProps, TODOSliceComponent, UsePrismicPreviewResolverArgs, useAllPrismicDocumentsByEveryTag, useAllPrismicDocumentsByIDs, useAllPrismicDocumentsBySomeTags, useAllPrismicDocumentsByTag, useAllPrismicDocumentsByType, useAllPrismicDocumentsByUIDs, useAllPrismicDocumentsDangerously, useFirstPrismicDocument, usePrismicClient, usePrismicContext, usePrismicDocumentByID, usePrismicDocumentByUID, usePrismicDocuments, usePrismicDocumentsByEveryTag, usePrismicDocumentsByIDs, usePrismicDocumentsBySomeTags, usePrismicDocumentsByTag, usePrismicDocumentsByType, usePrismicDocumentsByUIDs, usePrismicPreviewResolver, useSinglePrismicDocument };
|
|
898
|
+
export { 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 };
|
package/dist/index.mjs
CHANGED
|
@@ -255,12 +255,23 @@ const TODOSliceComponent = __PRODUCTION__ ? () => null : ({
|
|
|
255
255
|
const SliceZone = ({
|
|
256
256
|
slices = [],
|
|
257
257
|
components = {},
|
|
258
|
+
resolver,
|
|
258
259
|
defaultComponent = TODOSliceComponent,
|
|
259
260
|
context = {}
|
|
260
261
|
}) => {
|
|
261
262
|
const renderedSlices = React.useMemo(() => {
|
|
262
263
|
return slices.map((slice, index) => {
|
|
263
|
-
|
|
264
|
+
let Comp = components[slice.slice_type] || defaultComponent;
|
|
265
|
+
if (resolver) {
|
|
266
|
+
const resolvedComp = resolver({
|
|
267
|
+
slice,
|
|
268
|
+
sliceName: slice.slice_type,
|
|
269
|
+
i: index
|
|
270
|
+
});
|
|
271
|
+
if (resolvedComp) {
|
|
272
|
+
Comp = resolvedComp;
|
|
273
|
+
}
|
|
274
|
+
}
|
|
264
275
|
const key = JSON.stringify(slice);
|
|
265
276
|
return /* @__PURE__ */ React.createElement(Comp, {
|
|
266
277
|
key,
|