@prismicio/svelte 0.0.11 → 0.1.1

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.
Files changed (57) hide show
  1. package/README.md +29 -30
  2. package/dist/PrismicEmbed.svelte +8 -7
  3. package/dist/PrismicEmbed.svelte.d.ts +7 -7
  4. package/dist/PrismicImage.svelte +58 -64
  5. package/dist/PrismicImage.svelte.d.ts +270 -44
  6. package/dist/PrismicLink.svelte +16 -13
  7. package/dist/PrismicLink.svelte.d.ts +242 -35
  8. package/dist/PrismicRichText/DefaultComponent.svelte +1 -8
  9. package/dist/PrismicRichText/DefaultComponent.svelte.d.ts +4 -9
  10. package/dist/PrismicRichText/PrismicRichText.svelte +8 -14
  11. package/dist/PrismicRichText/PrismicRichText.svelte.d.ts +12 -33
  12. package/dist/PrismicRichText/Serialize.svelte +16 -15
  13. package/dist/PrismicRichText/Serialize.svelte.d.ts +7 -8
  14. package/dist/PrismicText.svelte +28 -4
  15. package/dist/PrismicText.svelte.d.ts +7 -10
  16. package/dist/SliceZone/SliceZone.svelte +12 -9
  17. package/dist/SliceZone/SliceZone.svelte.d.ts +41 -13
  18. package/dist/SliceZone/{TodoSliceComponent.svelte → TodoComponent.svelte} +2 -1
  19. package/dist/SliceZone/TodoComponent.svelte.d.ts +20 -0
  20. package/dist/index.d.ts +1 -0
  21. package/dist/lib/devMsg.d.ts +16 -0
  22. package/dist/lib/devMsg.js +19 -0
  23. package/dist/types.d.ts +7 -0
  24. package/dist/types.js +1 -0
  25. package/package.json +52 -112
  26. package/src/PrismicEmbed.svelte +30 -0
  27. package/src/PrismicImage.svelte +168 -0
  28. package/src/PrismicLink.svelte +60 -0
  29. package/{dist/src/lib → src}/PrismicRichText/DefaultComponent.svelte +3 -15
  30. package/src/PrismicRichText/PrismicRichText.svelte +32 -0
  31. package/src/PrismicRichText/Serialize.svelte +36 -0
  32. package/src/PrismicText.svelte +58 -0
  33. package/{dist/src/lib → src}/SliceZone/SliceZone.svelte +29 -21
  34. package/{dist/src/lib/SliceZone/TodoSliceComponent.svelte → src/SliceZone/TodoComponent.svelte} +2 -1
  35. package/{dist/src/lib → src}/index.ts +2 -0
  36. package/src/lib/devMsg.ts +20 -0
  37. package/src/types.ts +15 -0
  38. package/dist/SliceZone/TodoSliceComponent.svelte.d.ts +0 -20
  39. package/dist/src/app.html +0 -12
  40. package/dist/src/global.d.ts +0 -1
  41. package/dist/src/lib/PrismicEmbed.svelte +0 -29
  42. package/dist/src/lib/PrismicImage.svelte +0 -192
  43. package/dist/src/lib/PrismicLink.svelte +0 -64
  44. package/dist/src/lib/PrismicRichText/PrismicRichText.svelte +0 -67
  45. package/dist/src/lib/PrismicRichText/Serialize.svelte +0 -33
  46. package/dist/src/lib/PrismicText.svelte +0 -29
  47. package/dist/src/routes/+page.server.ts +0 -19
  48. package/dist/src/routes/+page.svelte +0 -62
  49. package/dist/src/routes/components/Emphasis.svelte +0 -3
  50. package/dist/src/routes/slices/CodeSnippet.svelte +0 -19
  51. package/dist/src/routes/slices/RichText.svelte +0 -12
  52. package/dist/src/types/CodeSnippetSlice.type.ts +0 -7
  53. package/dist/src/types/ExampleDocument.type.ts +0 -8
  54. package/dist/src/types/PageDocument.type.ts +0 -7
  55. package/dist/src/types/RichTextSlice.type.ts +0 -7
  56. package/dist/src/types/Route.type.ts +0 -14
  57. package/dist/src/types/index.ts +0 -5
@@ -1,9 +1,7 @@
1
- import { SvelteComponentTyped } from "svelte";
2
- import * as prismicH from "@prismicio/helpers";
3
- import type * as prismicT from "@prismicio/types";
1
+ import { SvelteComponent } from "svelte";
2
+ import { type AsLinkAttrsConfig, type LinkField, type PrismicDocument } from "@prismicio/client";
4
3
  declare const __propDef: {
5
4
  props: {
6
- prefix?: string | null | undefined;
7
5
  referrerpolicy?: ReferrerPolicy | null | undefined;
8
6
  accesskey?: string | null | undefined;
9
7
  autofocus?: boolean | null | undefined;
@@ -30,6 +28,7 @@ declare const __propDef: {
30
28
  about?: string | null | undefined;
31
29
  datatype?: string | null | undefined;
32
30
  inlist?: any;
31
+ prefix?: string | null | undefined;
33
32
  property?: string | null | undefined;
34
33
  resource?: string | null | undefined;
35
34
  typeof?: string | null | undefined;
@@ -46,17 +45,15 @@ declare const __propDef: {
46
45
  results?: number | null | undefined;
47
46
  security?: string | null | undefined;
48
47
  unselectable?: "on" | "off" | null | undefined;
49
- inputmode?: "url" | "search" | "none" | "text" | "tel" | "email" | "numeric" | "decimal" | null | undefined;
48
+ inputmode?: "search" | "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | null | undefined;
50
49
  is?: string | null | undefined;
51
50
  'bind:innerHTML'?: string | null | undefined;
52
51
  'bind:textContent'?: string | null | undefined;
53
52
  'bind:innerText'?: string | null | undefined;
54
- 'data-sveltekit-keepfocus'?: true | "" | "off" | null | undefined;
55
- 'data-sveltekit-noscroll'?: true | "" | "off" | null | undefined;
56
- 'data-sveltekit-preload-code'?: true | "" | "eager" | "off" | "viewport" | "hover" | "tap" | null | undefined;
57
- 'data-sveltekit-preload-data'?: true | "" | "off" | "hover" | "tap" | null | undefined;
58
- 'data-sveltekit-reload'?: true | "" | "off" | null | undefined;
59
- 'data-sveltekit-replacestate'?: true | "" | "off" | null | undefined;
53
+ 'bind:contentRect'?: DOMRectReadOnly | null | undefined;
54
+ 'bind:contentBoxSize'?: ResizeObserverSize[] | null | undefined;
55
+ 'bind:borderBoxSize'?: ResizeObserverSize[] | null | undefined;
56
+ 'bind:devicePixelContentBoxSize'?: ResizeObserverSize[] | null | undefined;
60
57
  'aria-activedescendant'?: string | null | undefined;
61
58
  'aria-atomic'?: import("svelte/elements").Booleanish | null | undefined;
62
59
  'aria-autocomplete'?: "list" | "none" | "inline" | "both" | null | undefined;
@@ -119,13 +116,9 @@ declare const __propDef: {
119
116
  'on:beforeinput'?: import("svelte/elements").EventHandler<InputEvent, HTMLAnchorElement> | null | undefined;
120
117
  'on:input'?: import("svelte/elements").FormEventHandler<HTMLAnchorElement> | null | undefined;
121
118
  'on:reset'?: import("svelte/elements").FormEventHandler<HTMLAnchorElement> | null | undefined;
122
- 'on:submit'?: import("svelte/elements").EventHandler<Event & {
123
- readonly submitter: HTMLElement | null;
124
- }, HTMLAnchorElement> | null | undefined;
119
+ 'on:submit'?: import("svelte/elements").EventHandler<SubmitEvent, HTMLAnchorElement> | null | undefined;
125
120
  'on:invalid'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
126
- 'on:formdata'?: import("svelte/elements").EventHandler<Event & {
127
- readonly formData: FormData;
128
- }, HTMLAnchorElement> | null | undefined;
121
+ 'on:formdata'?: import("svelte/elements").EventHandler<FormDataEvent, HTMLAnchorElement> | null | undefined;
129
122
  'on:load'?: import("svelte/elements").EventHandler<Event, Element> | null | undefined;
130
123
  'on:error'?: import("svelte/elements").EventHandler<Event, Element> | null | undefined;
131
124
  'on:toggle'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
@@ -216,31 +209,245 @@ declare const __propDef: {
216
209
  hreflang?: string | null | undefined;
217
210
  media?: string | null | undefined;
218
211
  ping?: string | null | undefined;
219
- rel?: string | null | undefined;
220
212
  target?: import("svelte/elements").HTMLAttributeAnchorTarget | null | undefined;
221
213
  type?: string | null | undefined;
222
214
  'sapper:noscroll'?: true | null | undefined;
223
215
  'sapper:prefetch'?: true | null | undefined;
224
216
  /**
225
- * A Prismic Link field, Content Relationship field, Link to Media field or
226
- * Document.
217
+ * The `rel` attribute for the link. By default, `"noreferrer"` is provided
218
+ * if the link's URL is external. This prop can be provided a function to
219
+ * use the link's metadata to determine the `rel` value.
220
+ */
221
+ rel?: string | AsLinkAttrsConfig["rel"];
222
+ /**
223
+ * A Prismic link field, content relationship field, or link to media
224
+ * field.
227
225
  */
228
- field: prismicT.LinkField | prismicT.PrismicDocument;
226
+ field: LinkField;
227
+ document?: undefined;
228
+ } | {
229
+ referrerpolicy?: ReferrerPolicy | null | undefined;
230
+ accesskey?: string | null | undefined;
231
+ autofocus?: boolean | null | undefined;
232
+ class?: string | null | undefined;
233
+ contenteditable?: import("svelte/elements").Booleanish | "inherit" | null | undefined;
234
+ contextmenu?: string | null | undefined;
235
+ dir?: string | null | undefined;
236
+ draggable?: import("svelte/elements").Booleanish | null | undefined;
237
+ enterkeyhint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | null | undefined;
238
+ hidden?: boolean | null | undefined;
239
+ id?: string | null | undefined;
240
+ lang?: string | null | undefined;
241
+ part?: string | null | undefined;
242
+ placeholder?: string | null | undefined;
243
+ slot?: string | null | undefined;
244
+ spellcheck?: import("svelte/elements").Booleanish | null | undefined;
245
+ style?: string | null | undefined;
246
+ tabindex?: number | null | undefined;
247
+ title?: string | null | undefined;
248
+ translate?: "" | "yes" | "no" | null | undefined;
249
+ inert?: boolean | null | undefined;
250
+ radiogroup?: string | null | undefined;
251
+ role?: import("svelte/elements").AriaRole | null | undefined;
252
+ about?: string | null | undefined;
253
+ datatype?: string | null | undefined;
254
+ inlist?: any;
255
+ prefix?: string | null | undefined;
256
+ property?: string | null | undefined;
257
+ resource?: string | null | undefined;
258
+ typeof?: string | null | undefined;
259
+ vocab?: string | null | undefined;
260
+ autocapitalize?: string | null | undefined;
261
+ autocorrect?: string | null | undefined;
262
+ autosave?: string | null | undefined;
263
+ color?: string | null | undefined;
264
+ itemprop?: string | null | undefined;
265
+ itemscope?: boolean | null | undefined;
266
+ itemtype?: string | null | undefined;
267
+ itemid?: string | null | undefined;
268
+ itemref?: string | null | undefined;
269
+ results?: number | null | undefined;
270
+ security?: string | null | undefined;
271
+ unselectable?: "on" | "off" | null | undefined;
272
+ inputmode?: "search" | "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | null | undefined;
273
+ is?: string | null | undefined;
274
+ 'bind:innerHTML'?: string | null | undefined;
275
+ 'bind:textContent'?: string | null | undefined;
276
+ 'bind:innerText'?: string | null | undefined;
277
+ 'bind:contentRect'?: DOMRectReadOnly | null | undefined;
278
+ 'bind:contentBoxSize'?: ResizeObserverSize[] | null | undefined;
279
+ 'bind:borderBoxSize'?: ResizeObserverSize[] | null | undefined;
280
+ 'bind:devicePixelContentBoxSize'?: ResizeObserverSize[] | null | undefined;
281
+ 'aria-activedescendant'?: string | null | undefined;
282
+ 'aria-atomic'?: import("svelte/elements").Booleanish | null | undefined;
283
+ 'aria-autocomplete'?: "list" | "none" | "inline" | "both" | null | undefined;
284
+ 'aria-busy'?: import("svelte/elements").Booleanish | null | undefined;
285
+ 'aria-checked'?: boolean | "true" | "false" | "mixed" | null | undefined;
286
+ 'aria-colcount'?: number | null | undefined;
287
+ 'aria-colindex'?: number | null | undefined;
288
+ 'aria-colspan'?: number | null | undefined;
289
+ 'aria-controls'?: string | null | undefined;
290
+ 'aria-current'?: "page" | import("svelte/elements").Booleanish | "step" | "location" | "date" | "time" | null | undefined;
291
+ 'aria-describedby'?: string | null | undefined;
292
+ 'aria-details'?: string | null | undefined;
293
+ 'aria-disabled'?: import("svelte/elements").Booleanish | null | undefined;
294
+ 'aria-dropeffect'?: "link" | "none" | "copy" | "execute" | "move" | "popup" | null | undefined;
295
+ 'aria-errormessage'?: string | null | undefined;
296
+ 'aria-expanded'?: import("svelte/elements").Booleanish | null | undefined;
297
+ 'aria-flowto'?: string | null | undefined;
298
+ 'aria-grabbed'?: import("svelte/elements").Booleanish | null | undefined;
299
+ 'aria-haspopup'?: import("svelte/elements").Booleanish | "dialog" | "grid" | "listbox" | "menu" | "tree" | null | undefined;
300
+ 'aria-hidden'?: import("svelte/elements").Booleanish | null | undefined;
301
+ 'aria-invalid'?: import("svelte/elements").Booleanish | "grammar" | "spelling" | null | undefined;
302
+ 'aria-keyshortcuts'?: string | null | undefined;
303
+ 'aria-label'?: string | null | undefined;
304
+ 'aria-labelledby'?: string | null | undefined;
305
+ 'aria-level'?: number | null | undefined;
306
+ 'aria-live'?: "off" | "assertive" | "polite" | null | undefined;
307
+ 'aria-modal'?: import("svelte/elements").Booleanish | null | undefined;
308
+ 'aria-multiline'?: import("svelte/elements").Booleanish | null | undefined;
309
+ 'aria-multiselectable'?: import("svelte/elements").Booleanish | null | undefined;
310
+ 'aria-orientation'?: "horizontal" | "vertical" | null | undefined;
311
+ 'aria-owns'?: string | null | undefined;
312
+ 'aria-placeholder'?: string | null | undefined;
313
+ 'aria-posinset'?: number | null | undefined;
314
+ 'aria-pressed'?: boolean | "true" | "false" | "mixed" | null | undefined;
315
+ 'aria-readonly'?: import("svelte/elements").Booleanish | null | undefined;
316
+ 'aria-relevant'?: "text" | "additions" | "additions removals" | "additions text" | "all" | "removals" | "removals additions" | "removals text" | "text additions" | "text removals" | null | undefined;
317
+ 'aria-required'?: import("svelte/elements").Booleanish | null | undefined;
318
+ 'aria-roledescription'?: string | null | undefined;
319
+ 'aria-rowcount'?: number | null | undefined;
320
+ 'aria-rowindex'?: number | null | undefined;
321
+ 'aria-rowspan'?: number | null | undefined;
322
+ 'aria-selected'?: import("svelte/elements").Booleanish | null | undefined;
323
+ 'aria-setsize'?: number | null | undefined;
324
+ 'aria-sort'?: "none" | "ascending" | "descending" | "other" | null | undefined;
325
+ 'aria-valuemax'?: number | null | undefined;
326
+ 'aria-valuemin'?: number | null | undefined;
327
+ 'aria-valuenow'?: number | null | undefined;
328
+ 'aria-valuetext'?: string | null | undefined;
329
+ 'on:copy'?: import("svelte/elements").ClipboardEventHandler<HTMLAnchorElement> | null | undefined;
330
+ 'on:cut'?: import("svelte/elements").ClipboardEventHandler<HTMLAnchorElement> | null | undefined;
331
+ 'on:paste'?: import("svelte/elements").ClipboardEventHandler<HTMLAnchorElement> | null | undefined;
332
+ 'on:compositionend'?: import("svelte/elements").CompositionEventHandler<HTMLAnchorElement> | null | undefined;
333
+ 'on:compositionstart'?: import("svelte/elements").CompositionEventHandler<HTMLAnchorElement> | null | undefined;
334
+ 'on:compositionupdate'?: import("svelte/elements").CompositionEventHandler<HTMLAnchorElement> | null | undefined;
335
+ 'on:focus'?: import("svelte/elements").FocusEventHandler<HTMLAnchorElement> | null | undefined;
336
+ 'on:focusin'?: import("svelte/elements").FocusEventHandler<HTMLAnchorElement> | null | undefined;
337
+ 'on:focusout'?: import("svelte/elements").FocusEventHandler<HTMLAnchorElement> | null | undefined;
338
+ 'on:blur'?: import("svelte/elements").FocusEventHandler<HTMLAnchorElement> | null | undefined;
339
+ 'on:change'?: import("svelte/elements").FormEventHandler<HTMLAnchorElement> | null | undefined;
340
+ 'on:beforeinput'?: import("svelte/elements").EventHandler<InputEvent, HTMLAnchorElement> | null | undefined;
341
+ 'on:input'?: import("svelte/elements").FormEventHandler<HTMLAnchorElement> | null | undefined;
342
+ 'on:reset'?: import("svelte/elements").FormEventHandler<HTMLAnchorElement> | null | undefined;
343
+ 'on:submit'?: import("svelte/elements").EventHandler<SubmitEvent, HTMLAnchorElement> | null | undefined;
344
+ 'on:invalid'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
345
+ 'on:formdata'?: import("svelte/elements").EventHandler<FormDataEvent, HTMLAnchorElement> | null | undefined;
346
+ 'on:load'?: import("svelte/elements").EventHandler<Event, Element> | null | undefined;
347
+ 'on:error'?: import("svelte/elements").EventHandler<Event, Element> | null | undefined;
348
+ 'on:toggle'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
349
+ 'on:keydown'?: import("svelte/elements").KeyboardEventHandler<HTMLAnchorElement> | null | undefined;
350
+ 'on:keypress'?: import("svelte/elements").KeyboardEventHandler<HTMLAnchorElement> | null | undefined;
351
+ 'on:keyup'?: import("svelte/elements").KeyboardEventHandler<HTMLAnchorElement> | null | undefined;
352
+ 'on:abort'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
353
+ 'on:canplay'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
354
+ 'on:canplaythrough'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
355
+ 'on:cuechange'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
356
+ 'on:durationchange'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
357
+ 'on:emptied'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
358
+ 'on:encrypted'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
359
+ 'on:ended'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
360
+ 'on:loadeddata'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
361
+ 'on:loadedmetadata'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
362
+ 'on:loadstart'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
363
+ 'on:pause'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
364
+ 'on:play'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
365
+ 'on:playing'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
366
+ 'on:progress'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
367
+ 'on:ratechange'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
368
+ 'on:seeked'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
369
+ 'on:seeking'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
370
+ 'on:stalled'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
371
+ 'on:suspend'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
372
+ 'on:timeupdate'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
373
+ 'on:volumechange'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
374
+ 'on:waiting'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
375
+ 'on:auxclick'?: import("svelte/elements").MouseEventHandler<HTMLAnchorElement> | null | undefined;
376
+ 'on:click'?: import("svelte/elements").MouseEventHandler<HTMLAnchorElement> | null | undefined;
377
+ 'on:contextmenu'?: import("svelte/elements").MouseEventHandler<HTMLAnchorElement> | null | undefined;
378
+ 'on:dblclick'?: import("svelte/elements").MouseEventHandler<HTMLAnchorElement> | null | undefined;
379
+ 'on:drag'?: import("svelte/elements").DragEventHandler<HTMLAnchorElement> | null | undefined;
380
+ 'on:dragend'?: import("svelte/elements").DragEventHandler<HTMLAnchorElement> | null | undefined;
381
+ 'on:dragenter'?: import("svelte/elements").DragEventHandler<HTMLAnchorElement> | null | undefined;
382
+ 'on:dragexit'?: import("svelte/elements").DragEventHandler<HTMLAnchorElement> | null | undefined;
383
+ 'on:dragleave'?: import("svelte/elements").DragEventHandler<HTMLAnchorElement> | null | undefined;
384
+ 'on:dragover'?: import("svelte/elements").DragEventHandler<HTMLAnchorElement> | null | undefined;
385
+ 'on:dragstart'?: import("svelte/elements").DragEventHandler<HTMLAnchorElement> | null | undefined;
386
+ 'on:drop'?: import("svelte/elements").DragEventHandler<HTMLAnchorElement> | null | undefined;
387
+ 'on:mousedown'?: import("svelte/elements").MouseEventHandler<HTMLAnchorElement> | null | undefined;
388
+ 'on:mouseenter'?: import("svelte/elements").MouseEventHandler<HTMLAnchorElement> | null | undefined;
389
+ 'on:mouseleave'?: import("svelte/elements").MouseEventHandler<HTMLAnchorElement> | null | undefined;
390
+ 'on:mousemove'?: import("svelte/elements").MouseEventHandler<HTMLAnchorElement> | null | undefined;
391
+ 'on:mouseout'?: import("svelte/elements").MouseEventHandler<HTMLAnchorElement> | null | undefined;
392
+ 'on:mouseover'?: import("svelte/elements").MouseEventHandler<HTMLAnchorElement> | null | undefined;
393
+ 'on:mouseup'?: import("svelte/elements").MouseEventHandler<HTMLAnchorElement> | null | undefined;
394
+ 'on:select'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
395
+ 'on:selectionchange'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
396
+ 'on:selectstart'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
397
+ 'on:touchcancel'?: import("svelte/elements").TouchEventHandler<HTMLAnchorElement> | null | undefined;
398
+ 'on:touchend'?: import("svelte/elements").TouchEventHandler<HTMLAnchorElement> | null | undefined;
399
+ 'on:touchmove'?: import("svelte/elements").TouchEventHandler<HTMLAnchorElement> | null | undefined;
400
+ 'on:touchstart'?: import("svelte/elements").TouchEventHandler<HTMLAnchorElement> | null | undefined;
401
+ 'on:gotpointercapture'?: import("svelte/elements").PointerEventHandler<HTMLAnchorElement> | null | undefined;
402
+ 'on:pointercancel'?: import("svelte/elements").PointerEventHandler<HTMLAnchorElement> | null | undefined;
403
+ 'on:pointerdown'?: import("svelte/elements").PointerEventHandler<HTMLAnchorElement> | null | undefined;
404
+ 'on:pointerenter'?: import("svelte/elements").PointerEventHandler<HTMLAnchorElement> | null | undefined;
405
+ 'on:pointerleave'?: import("svelte/elements").PointerEventHandler<HTMLAnchorElement> | null | undefined;
406
+ 'on:pointermove'?: import("svelte/elements").PointerEventHandler<HTMLAnchorElement> | null | undefined;
407
+ 'on:pointerout'?: import("svelte/elements").PointerEventHandler<HTMLAnchorElement> | null | undefined;
408
+ 'on:pointerover'?: import("svelte/elements").PointerEventHandler<HTMLAnchorElement> | null | undefined;
409
+ 'on:pointerup'?: import("svelte/elements").PointerEventHandler<HTMLAnchorElement> | null | undefined;
410
+ 'on:lostpointercapture'?: import("svelte/elements").PointerEventHandler<HTMLAnchorElement> | null | undefined;
411
+ 'on:scroll'?: import("svelte/elements").UIEventHandler<HTMLAnchorElement> | null | undefined;
412
+ 'on:resize'?: import("svelte/elements").UIEventHandler<HTMLAnchorElement> | null | undefined;
413
+ 'on:wheel'?: import("svelte/elements").WheelEventHandler<HTMLAnchorElement> | null | undefined;
414
+ 'on:animationstart'?: import("svelte/elements").AnimationEventHandler<HTMLAnchorElement> | null | undefined;
415
+ 'on:animationend'?: import("svelte/elements").AnimationEventHandler<HTMLAnchorElement> | null | undefined;
416
+ 'on:animationiteration'?: import("svelte/elements").AnimationEventHandler<HTMLAnchorElement> | null | undefined;
417
+ 'on:transitionstart'?: import("svelte/elements").TransitionEventHandler<HTMLAnchorElement> | null | undefined;
418
+ 'on:transitionrun'?: import("svelte/elements").TransitionEventHandler<HTMLAnchorElement> | null | undefined;
419
+ 'on:transitionend'?: import("svelte/elements").TransitionEventHandler<HTMLAnchorElement> | null | undefined;
420
+ 'on:transitioncancel'?: import("svelte/elements").TransitionEventHandler<HTMLAnchorElement> | null | undefined;
421
+ 'on:outrostart'?: import("svelte/elements").EventHandler<CustomEvent<null>, HTMLAnchorElement> | null | undefined;
422
+ 'on:outroend'?: import("svelte/elements").EventHandler<CustomEvent<null>, HTMLAnchorElement> | null | undefined;
423
+ 'on:introstart'?: import("svelte/elements").EventHandler<CustomEvent<null>, HTMLAnchorElement> | null | undefined;
424
+ 'on:introend'?: import("svelte/elements").EventHandler<CustomEvent<null>, HTMLAnchorElement> | null | undefined;
425
+ 'on:message'?: import("svelte/elements").MessageEventHandler<HTMLAnchorElement> | null | undefined;
426
+ 'on:messageerror'?: import("svelte/elements").MessageEventHandler<HTMLAnchorElement> | null | undefined;
427
+ 'on:visibilitychange'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
428
+ 'on:cancel'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
429
+ 'on:close'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
430
+ 'on:fullscreenchange'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
431
+ 'on:fullscreenerror'?: import("svelte/elements").EventHandler<Event, HTMLAnchorElement> | null | undefined;
432
+ download?: any;
433
+ hreflang?: string | null | undefined;
434
+ media?: string | null | undefined;
435
+ ping?: string | null | undefined;
436
+ target?: import("svelte/elements").HTMLAttributeAnchorTarget | null | undefined;
437
+ type?: string | null | undefined;
438
+ 'sapper:noscroll'?: true | null | undefined;
439
+ 'sapper:prefetch'?: true | null | undefined;
229
440
  /**
230
- * The Link Resolver used to resolve links.
231
- *
232
- * @remarks
233
- * If your app uses Route Resolvers when querying for your Prismic
234
- * repository's content, a Link Resolver does not need to be provided.
235
- * @see Learn about Link Resolvers and Route Resolvers {@link https://prismic.io/docs/core-concepts/link-resolver-route-resolver}
441
+ * The `rel` attribute for the link. By default, `"noreferrer"` is provided
442
+ * if the link's URL is external. This prop can be provided a function to
443
+ * use the link's metadata to determine the `rel` value.
236
444
  */
237
- linkResolver?: prismicH.LinkResolverFunction | undefined;
445
+ rel?: string | AsLinkAttrsConfig["rel"];
238
446
  /**
239
- * PrismicLink does not accept an `href` property. The `href` attribute is
240
- * generated based on the field provided. If an `href` attribute is
241
- * provided, it will be ignored.
447
+ * A Prismic document.
242
448
  */
243
- href?: undefined;
449
+ document: PrismicDocument;
450
+ field?: undefined;
244
451
  };
245
452
  events: {
246
453
  [evt: string]: CustomEvent<any>;
@@ -253,15 +460,15 @@ export type PrismicLinkProps = typeof __propDef.props;
253
460
  export type PrismicLinkEvents = typeof __propDef.events;
254
461
  export type PrismicLinkSlots = typeof __propDef.slots;
255
462
  /**
256
- * Component to render a Prismic Link, Link to Media, Content Relationship, or whole Document as an `a` tag.
463
+ * Component to render a Prismic link, link to media, content relationship, or whole document as an `a` tag.
257
464
  *
258
465
  * @example Rendering a Link field:
259
466
  * ```svelte
260
467
  * <PrismicLink field={document.data.example_link}>
261
468
  * Example anchor text.
262
469
  * </PrismicLink>
263
- * ```
470
+ * ```
264
471
  */
265
- export default class PrismicLink extends SvelteComponentTyped<PrismicLinkProps, PrismicLinkEvents, PrismicLinkSlots> {
472
+ export default class PrismicLink extends SvelteComponent<PrismicLinkProps, PrismicLinkEvents, PrismicLinkSlots> {
266
473
  }
267
474
  export {};
@@ -2,13 +2,6 @@
2
2
  import PrismicImage from "../PrismicImage.svelte";
3
3
  import PrismicLink from "../PrismicLink.svelte";
4
4
  export let node;
5
- export let key;
6
- export let text;
7
- export let type;
8
- key;
9
- text;
10
- type;
11
- export let linkResolver = void 0;
12
5
  </script>
13
6
 
14
7
  {#if node.type === "heading1"}
@@ -46,7 +39,7 @@ export let linkResolver = void 0;
46
39
  {:else if node.type === "embed"}
47
40
  <PrismicEmbed field={node.oembed} />
48
41
  {:else if node.type === "hyperlink"}
49
- <PrismicLink {linkResolver} field={node.data}><slot /></PrismicLink>
42
+ <PrismicLink field={node.data}><slot /></PrismicLink>
50
43
  {:else if node.type === "label"}
51
44
  <span class={node.data.label}><slot /></span>
52
45
  {:else}
@@ -1,13 +1,8 @@
1
- import { SvelteComponentTyped } from "svelte";
2
- import type { LinkResolverFunction } from "@prismicio/helpers";
3
- import type { TreeNode } from "@prismicio/richtext";
1
+ import { SvelteComponent } from "svelte";
2
+ import type { RTAnyNode } from "@prismicio/client";
4
3
  declare const __propDef: {
5
4
  props: {
6
- node: TreeNode["node"];
7
- key: TreeNode["key"];
8
- text: TreeNode["text"];
9
- type: TreeNode["type"];
10
- linkResolver?: LinkResolverFunction | undefined;
5
+ node: RTAnyNode;
11
6
  };
12
7
  events: {
13
8
  [evt: string]: CustomEvent<any>;
@@ -19,6 +14,6 @@ declare const __propDef: {
19
14
  export type DefaultComponentProps = typeof __propDef.props;
20
15
  export type DefaultComponentEvents = typeof __propDef.events;
21
16
  export type DefaultComponentSlots = typeof __propDef.slots;
22
- export default class DefaultComponent extends SvelteComponentTyped<DefaultComponentProps, DefaultComponentEvents, DefaultComponentSlots> {
17
+ export default class DefaultComponent extends SvelteComponent<DefaultComponentProps, DefaultComponentEvents, DefaultComponentSlots> {
23
18
  }
24
19
  export {};
@@ -1,25 +1,19 @@
1
- <script>import {
2
- asTree,
3
- wrapMapSerializer
4
- } from "@prismicio/richtext";
1
+ <script>import { asTree } from "@prismicio/richtext";
5
2
  import Serialize from "./Serialize.svelte";
6
- export let field = [];
7
- export let linkResolver = void 0;
8
- export let components = void 0;
3
+ export let field;
4
+ export let components = {};
9
5
  $:
10
- resolvedSerializer = typeof components === "object" ? wrapMapSerializer(components) : components;
11
- $:
12
- nodes = asTree(field).children;
6
+ children = asTree(field).children;
13
7
  </script>
14
8
 
15
9
  <!--
16
10
  @component
17
- Component to render a Prismic Rich Text or Title field as HTML.
11
+ Component to render a Prismic rich text field.
18
12
 
19
- @example Rendering a Link field:
13
+ @example Rendering a rich text field:
20
14
  ```svelte
21
15
  <PrismicRichText field={document.data.example_rich_text} />
22
- ```
16
+ ```
23
17
  -->
24
18
 
25
- <Serialize {nodes} serializer={resolvedSerializer} {linkResolver} />
19
+ <Serialize {children} {components} />
@@ -1,36 +1,15 @@
1
- import { SvelteComponentTyped } from "svelte";
2
- import type { SvelteComponent } from "svelte";
3
- import { type RichTextFunctionSerializer, type RichTextMapSerializer, type TreeNode } from "@prismicio/richtext";
4
- import type { LinkResolverFunction } from "@prismicio/helpers";
1
+ import { SvelteComponent } from "svelte";
2
+ import type { RichTextField } from "@prismicio/client";
5
3
  declare const __propDef: {
6
4
  props: {
7
5
  /**
8
- * The Prismic Rich Text field to render.
9
- */ field?: [] | [import("@prismicio/types").RTNode, ...import("@prismicio/types").RTNode[]] | undefined;
6
+ * The Prismic rich text field to render.
7
+ */ field: RichTextField;
10
8
  /**
11
- * The Link Resolver used to resolve links.
12
- *
13
- * @remarks
14
- * If your app uses Route Resolvers when querying for your Prismic
15
- * repository's content, a Link Resolver does not need to be provided.
16
- * @see Learn about Link Resolvers and Route Resolvers {@link https://prismic.io/docs/route-resolver}
17
- */ linkResolver?: LinkResolverFunction | undefined;
18
- /**
19
- * An object that maps Rich Text blocks to Svelte components.
20
- *
21
- * **Important**: Your components must be wrapped in a function. For example:
22
- * `{ heading1: () => Heading }`, not: `{ heading1: Heading }`.
23
- *
24
- * @example A serializer that modififes `h1` elements:
25
- *
26
- * ```js
27
- * import Title from "./Title.svelte";
28
- *
29
- * const richTextSerializer = {
30
- * h1: () => Title,
31
- * };
32
- * ```
33
- */ components?: RichTextMapSerializer<typeof SvelteComponent, TreeNode> | RichTextFunctionSerializer<typeof SvelteComponent, TreeNode> | undefined;
9
+ * An object that maps a rich text block type to a Svelte component.
10
+ */ components?: Partial<Record<"list" | "heading1" | "heading2" | "heading3" | "heading4" | "heading5" | "heading6" | "paragraph" | "preformatted" | "strong" | "em" | "listItem" | "oListItem" | "oList" | "image" | "embed" | "hyperlink" | "label" | "span", new (...args: any[]) => SvelteComponent<Partial<{
11
+ node: import("@prismicio/client").RTAnyNode;
12
+ }>, any, any>>> | undefined;
34
13
  };
35
14
  events: {
36
15
  [evt: string]: CustomEvent<any>;
@@ -41,13 +20,13 @@ export type PrismicRichTextProps = typeof __propDef.props;
41
20
  export type PrismicRichTextEvents = typeof __propDef.events;
42
21
  export type PrismicRichTextSlots = typeof __propDef.slots;
43
22
  /**
44
- * Component to render a Prismic Rich Text or Title field as HTML.
23
+ * Component to render a Prismic rich text field.
45
24
  *
46
- * @example Rendering a Link field:
25
+ * @example Rendering a rich text field:
47
26
  * ```svelte
48
27
  * <PrismicRichText field={document.data.example_rich_text} />
49
- * ```
28
+ * ```
50
29
  */
51
- export default class PrismicRichText extends SvelteComponentTyped<PrismicRichTextProps, PrismicRichTextEvents, PrismicRichTextSlots> {
30
+ export default class PrismicRichText extends SvelteComponent<PrismicRichTextProps, PrismicRichTextEvents, PrismicRichTextSlots> {
52
31
  }
53
32
  export {};
@@ -1,22 +1,23 @@
1
- <script>import Default from "./DefaultComponent.svelte";
2
- export let serializer;
3
- export let nodes = [];
4
- export let linkResolver = void 0;
1
+ <script>import DefaultComponent from "./DefaultComponent.svelte";
2
+ export let components = {};
3
+ export let children;
4
+ const rewrittenNodeTypes = {
5
+ "list-item": "listItem",
6
+ "o-list-item": "oListItem",
7
+ "group-list-item": "list",
8
+ "group-o-list-item": "oList"
9
+ };
5
10
  </script>
6
11
 
7
- {#each nodes as node}
12
+ {#each children as child}
8
13
  <svelte:component
9
- this={(serializer &&
10
- serializer(node.type, node.node, node.text, node.children, node.key)) ||
11
- Default}
12
- type={node.type}
13
- node={node.node}
14
- text={node.text}
15
- key={node.key}
16
- {linkResolver}
14
+ this={components[rewrittenNodeTypes[child.type] || child.type] ||
15
+ DefaultComponent}
16
+ node={child.node}
17
+ key={child.key}
17
18
  >
18
- {#if node.children.length > 0}
19
- <svelte:self nodes={node.children} {serializer} />
19
+ {#if child.children.length > 0}
20
+ <svelte:self children={child.children} {components} />
20
21
  {/if}
21
22
  </svelte:component>
22
23
  {/each}
@@ -1,12 +1,11 @@
1
- import { SvelteComponentTyped } from "svelte";
2
- import type { SvelteComponent } from "svelte";
3
- import type { RichTextFunctionSerializer, TreeNode } from "@prismicio/richtext";
4
- import type { LinkResolverFunction } from "@prismicio/helpers";
1
+ import { SvelteComponent } from "svelte";
2
+ import type { asTree } from "@prismicio/richtext";
5
3
  declare const __propDef: {
6
4
  props: {
7
- serializer: RichTextFunctionSerializer<typeof SvelteComponent, TreeNode> | undefined;
8
- nodes?: TreeNode[] | undefined;
9
- linkResolver?: LinkResolverFunction | undefined;
5
+ components?: Partial<Record<"list" | "heading1" | "heading2" | "heading3" | "heading4" | "heading5" | "heading6" | "paragraph" | "preformatted" | "strong" | "em" | "listItem" | "oListItem" | "oList" | "image" | "embed" | "hyperlink" | "label" | "span", new (...args: any[]) => SvelteComponent<Partial<{
6
+ node: import("@prismicio/client").RTAnyNode;
7
+ }>, any, any>>> | undefined;
8
+ children: ReturnType<typeof asTree>["children"];
10
9
  };
11
10
  events: {
12
11
  [evt: string]: CustomEvent<any>;
@@ -16,6 +15,6 @@ declare const __propDef: {
16
15
  export type SerializeProps = typeof __propDef.props;
17
16
  export type SerializeEvents = typeof __propDef.events;
18
17
  export type SerializeSlots = typeof __propDef.slots;
19
- export default class Serialize extends SvelteComponentTyped<SerializeProps, SerializeEvents, SerializeSlots> {
18
+ export default class Serialize extends SvelteComponent<SerializeProps, SerializeEvents, SerializeSlots> {
20
19
  }
21
20
  export {};
@@ -1,16 +1,40 @@
1
- <script>import * as prismicH from "@prismicio/helpers";
1
+ <script>import { isFilled, asText } from "@prismicio/client";
2
+ import { DEV } from "esm-env";
3
+ import { devMsg } from "./lib/devMsg";
2
4
  export let field;
3
5
  export let separator = void 0;
6
+ export let fallback = void 0;
7
+ if (DEV) {
8
+ if ("className" in $$restProps) {
9
+ console.warn(
10
+ `[PrismicText] className cannot be passed to <PrismicText> since it renders plain text without a wrapping component. For more details, see ${devMsg(
11
+ "classname-is-not-a-valid-prop"
12
+ )}.`,
13
+ field
14
+ );
15
+ }
16
+ if (typeof field === "string") {
17
+ throw new Error(
18
+ `[PrismicText] The "field" prop only accepts a Rich Text or Title field's value but was provided a different type of field instead (e.g. a Key Text or Select field). You can resolve this error by rendering the field value inline without <PrismicText>. For more details, see ${devMsg(
19
+ "prismictext-works-only-with-rich-text-and-title-fields"
20
+ )}`
21
+ );
22
+ }
23
+ }
4
24
  </script>
5
25
 
6
- <!--
26
+ <!--
7
27
  @component
8
28
  Component to render a Prismic Rich Text or Title field as plain text.
9
-
29
+
10
30
  @example Rendering a Rich Text field:
11
31
  ```svelte
12
32
  <PrismicText field={document.data.example_rich_text} />
13
33
  ```
14
34
  -->
15
35
 
16
- {@html prismicH.asText(field, separator)}
36
+ {#if isFilled.richText(field)}
37
+ {asText(field, { separator })}
38
+ {:else if fallback !== undefined}
39
+ {fallback}
40
+ {/if}
@@ -1,14 +1,11 @@
1
- import { SvelteComponentTyped } from "svelte";
2
- import type { RichTextField as RichTextFieldType } from "@prismicio/types";
3
- import type { TitleField as TitleFieldType } from "@prismicio/types";
1
+ import { SvelteComponent } from "svelte";
2
+ import type { RichTextField } from "@prismicio/client";
4
3
  declare const __propDef: {
5
4
  props: {
6
- /**
7
- * A Rich Text or Title field from Prismic.
8
- */ field: TitleFieldType | RichTextFieldType;
9
- /**
10
- * The separator used between blocks. Defaults to `\n`.
11
- */ separator?: string | undefined;
5
+ [x: string]: any;
6
+ field: RichTextField;
7
+ separator?: string | undefined;
8
+ fallback?: string | undefined;
12
9
  };
13
10
  events: {
14
11
  [evt: string]: CustomEvent<any>;
@@ -26,6 +23,6 @@ export type PrismicTextSlots = typeof __propDef.slots;
26
23
  * <PrismicText field={document.data.example_rich_text} />
27
24
  * ```
28
25
  */
29
- export default class PrismicText extends SvelteComponentTyped<PrismicTextProps, PrismicTextEvents, PrismicTextSlots> {
26
+ export default class PrismicText extends SvelteComponent<PrismicTextProps, PrismicTextEvents, PrismicTextSlots> {
30
27
  }
31
28
  export {};