Compare commits

7 Commits

Author SHA1 Message Date
leander 2b8197e8a2 generate migrations for photosphere support 2026-04-15 23:44:18 +02:00
leander 3dd2c056b8 add 360 photosphere element support 2026-04-15 23:43:47 +02:00
ponas d0a886a4ae web: bump deps 2026-03-05 22:02:29 +01:00
ponas cc5b53011d dnscms: bump deps 2026-03-05 21:54:58 +01:00
ponas f769898698 dnscms: add django.contrib.postgres 2026-02-16 02:43:23 +01:00
ponas e71db3a0cc dnscms: switch from 1 to 3 gunicorn workers 2026-02-16 02:38:45 +01:00
ponas 355c0b38a5 dnscms: bump deps 2026-02-16 02:37:33 +01:00
20 changed files with 3025 additions and 325 deletions
+1 -1
View File
@@ -37,4 +37,4 @@ USER wagtail
ENV PATH="/app/.venv/bin:$PATH"
RUN python manage.py collectstatic --noinput --clear
CMD ["sh", "-c", "set -xe; python manage.py migrate --noinput && gunicorn dnscms.wsgi:application"]
CMD ["sh", "-c", "set -xe; python manage.py migrate --noinput && gunicorn dnscms.wsgi:application --workers 3"]
@@ -0,0 +1,492 @@
# Generated by Django 6.0.3 on 2026-04-15 20:21
import wagtail.fields
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
("associations", "0025_associationpage_lead"),
]
operations = [
migrations.AlterField(
model_name="associationindex",
name="body",
field=wagtail.fields.StreamField(
[
("paragraph", 0),
("image", 4),
("image_slider", 8),
("horizontal_rule", 10),
("featured", 18),
("page_section_navigation", 19),
("accordion", 23),
("fact_box", 26),
("photo_sphere", 29),
("embed", 30),
("raw_html", 31),
],
block_lookup={
0: ("wagtail.blocks.RichTextBlock", (), {"label": "Rik tekst"}),
1: (
"wagtail.images.blocks.ImageChooserBlock",
(),
{"label": "Bilde"},
),
2: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("fullwidth", "Fullbredde"),
("bleed", "Utfallende"),
("original", "Uendret størrelse"),
],
"icon": "cup",
"label": "Bildeformat",
},
),
3: (
"wagtail.blocks.CharBlock",
(),
{"label": "Bildetekst", "max_length": 512, "required": False},
),
4: (
"wagtail.blocks.StructBlock",
[[("image", 1), ("image_format", 2), ("text", 3)]],
{},
),
5: (
"wagtail.blocks.CharBlock",
(),
{"label": "Tekst", "max_length": 512, "required": False},
),
6: (
"wagtail.blocks.StructBlock",
[[("image", 1), ("text", 5)]],
{},
),
7: (
"wagtail.blocks.ListBlock",
(6,),
{"label": "Bilder", "min_num": 1},
),
8: ("wagtail.blocks.StructBlock", [[("images", 7)]], {}),
9: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("deepBrick", "Dyp tegl"),
("neufPink", "Griserosa"),
("goldenOrange", "Gyllen oransje"),
("goldenBeige", "Gyllen beige"),
("chateauBlue", "Slottsblå"),
],
"label": "Farge",
"required": False,
},
),
10: ("wagtail.blocks.StructBlock", [[("color", 9)]], {}),
11: (
"wagtail.blocks.CharBlock",
(),
{"label": "Tittel", "max_length": 64, "required": True},
),
12: (
"wagtail.blocks.RichTextBlock",
(),
{
"features": ["bold", "italic", "link"],
"label": "Tekst",
"required": True,
},
),
13: (
"wagtail.blocks.PageChooserBlock",
(),
{"header": "Fremhevet side", "required": True},
),
14: (
"wagtail.blocks.CharBlock",
(),
{
"default": "Les mer",
"help_text": 'Lenketeksten som tar deg videre til siden. Tips: Ikke start med "Trykk her"',
"label": "Lenketekst",
"max_length": 64,
"required": True,
},
),
15: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("betongGray", "Betonggrå"),
("deepBrick", "Dyp tegl"),
("neufPink", "Griserosa"),
("goldenOrange", "Gyllen oransje"),
("goldenBeige", "Gyllen beige"),
("chateauBlue", "Slottsblå"),
],
"label": "Bakgrunnsfarge",
},
),
16: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [("left", "Venstre"), ("right", "Høyre")],
"label": "Bildeplassering",
},
),
17: (
"wagtail.images.blocks.ImageChooserBlock",
(),
{
"header": "Overstyr bilde",
"help_text": "Bildet som er tilknyttet undersiden du vil fremheve, vil automatisk brukes. Om det mangler eller du vil overstyre hvilket bilde som et brukes, kan du velge et her.",
"required": False,
},
),
18: (
"wagtail.blocks.StructBlock",
[
[
("title", 11),
("text", 12),
("featured_page", 13),
("link_text", 14),
("background_color", 15),
("image_position", 16),
("featured_image_override", 17),
]
],
{},
),
19: ("dnscms.blocks.PageSectionNavigationBlock", (), {}),
20: (
"wagtail.blocks.CharBlock",
(),
{"label": "Overskrift", "max_length": 64, "required": True},
),
21: (
"wagtail.blocks.StructBlock",
[[("image", 1), ("image_format", 2), ("text", 3)]],
{"label": "Bilde"},
),
22: (
"wagtail.blocks.StreamBlock",
[[("paragraph", 0), ("image", 21)]],
{},
),
23: (
"wagtail.blocks.StructBlock",
[[("heading", 20), ("body", 22)]],
{},
),
24: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("betongGray", "Betonggrå"),
("deepBrick", "Dyp tegl"),
("neufPink", "Griserosa"),
("goldenOrange", "Gyllen oransje"),
("goldenBeige", "Gyllen beige"),
("chateauBlue", "Slottsblå"),
],
"label": "Bakgrunnsfarge",
"required": False,
},
),
25: (
"wagtail.blocks.RichTextBlock",
(),
{
"features": [
"bold",
"italic",
"link",
"ol",
"ul",
"h2",
"h3",
],
"label": "Innhold",
},
),
26: (
"wagtail.blocks.StructBlock",
[[("background_color", 24), ("body", 25)]],
{},
),
27: (
"wagtail.images.blocks.ImageChooserBlock",
(),
{"label": "360°-bilde"},
),
28: (
"wagtail.blocks.CharBlock",
(),
{
"help_text": "Beskrivende tittel på bildet (vises også til skjermlesere)",
"label": "Tittel",
"max_length": 256,
},
),
29: (
"wagtail.blocks.StructBlock",
[[("image", 27), ("title", 28)]],
{},
),
30: ("wagtail.embeds.blocks.EmbedBlock", (), {}),
31: ("wagtail.blocks.RawHTMLBlock", (), {}),
},
default=[("paragraph", "")],
),
),
migrations.AlterField(
model_name="associationpage",
name="body",
field=wagtail.fields.StreamField(
[
("paragraph", 0),
("image", 4),
("image_slider", 8),
("horizontal_rule", 10),
("featured", 18),
("page_section_navigation", 19),
("accordion", 23),
("fact_box", 26),
("photo_sphere", 29),
("embed", 30),
("raw_html", 31),
],
block_lookup={
0: ("wagtail.blocks.RichTextBlock", (), {"label": "Rik tekst"}),
1: (
"wagtail.images.blocks.ImageChooserBlock",
(),
{"label": "Bilde"},
),
2: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("fullwidth", "Fullbredde"),
("bleed", "Utfallende"),
("original", "Uendret størrelse"),
],
"icon": "cup",
"label": "Bildeformat",
},
),
3: (
"wagtail.blocks.CharBlock",
(),
{"label": "Bildetekst", "max_length": 512, "required": False},
),
4: (
"wagtail.blocks.StructBlock",
[[("image", 1), ("image_format", 2), ("text", 3)]],
{},
),
5: (
"wagtail.blocks.CharBlock",
(),
{"label": "Tekst", "max_length": 512, "required": False},
),
6: (
"wagtail.blocks.StructBlock",
[[("image", 1), ("text", 5)]],
{},
),
7: (
"wagtail.blocks.ListBlock",
(6,),
{"label": "Bilder", "min_num": 1},
),
8: ("wagtail.blocks.StructBlock", [[("images", 7)]], {}),
9: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("deepBrick", "Dyp tegl"),
("neufPink", "Griserosa"),
("goldenOrange", "Gyllen oransje"),
("goldenBeige", "Gyllen beige"),
("chateauBlue", "Slottsblå"),
],
"label": "Farge",
"required": False,
},
),
10: ("wagtail.blocks.StructBlock", [[("color", 9)]], {}),
11: (
"wagtail.blocks.CharBlock",
(),
{"label": "Tittel", "max_length": 64, "required": True},
),
12: (
"wagtail.blocks.RichTextBlock",
(),
{
"features": ["bold", "italic", "link"],
"label": "Tekst",
"required": True,
},
),
13: (
"wagtail.blocks.PageChooserBlock",
(),
{"header": "Fremhevet side", "required": True},
),
14: (
"wagtail.blocks.CharBlock",
(),
{
"default": "Les mer",
"help_text": 'Lenketeksten som tar deg videre til siden. Tips: Ikke start med "Trykk her"',
"label": "Lenketekst",
"max_length": 64,
"required": True,
},
),
15: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("betongGray", "Betonggrå"),
("deepBrick", "Dyp tegl"),
("neufPink", "Griserosa"),
("goldenOrange", "Gyllen oransje"),
("goldenBeige", "Gyllen beige"),
("chateauBlue", "Slottsblå"),
],
"label": "Bakgrunnsfarge",
},
),
16: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [("left", "Venstre"), ("right", "Høyre")],
"label": "Bildeplassering",
},
),
17: (
"wagtail.images.blocks.ImageChooserBlock",
(),
{
"header": "Overstyr bilde",
"help_text": "Bildet som er tilknyttet undersiden du vil fremheve, vil automatisk brukes. Om det mangler eller du vil overstyre hvilket bilde som et brukes, kan du velge et her.",
"required": False,
},
),
18: (
"wagtail.blocks.StructBlock",
[
[
("title", 11),
("text", 12),
("featured_page", 13),
("link_text", 14),
("background_color", 15),
("image_position", 16),
("featured_image_override", 17),
]
],
{},
),
19: ("dnscms.blocks.PageSectionNavigationBlock", (), {}),
20: (
"wagtail.blocks.CharBlock",
(),
{"label": "Overskrift", "max_length": 64, "required": True},
),
21: (
"wagtail.blocks.StructBlock",
[[("image", 1), ("image_format", 2), ("text", 3)]],
{"label": "Bilde"},
),
22: (
"wagtail.blocks.StreamBlock",
[[("paragraph", 0), ("image", 21)]],
{},
),
23: (
"wagtail.blocks.StructBlock",
[[("heading", 20), ("body", 22)]],
{},
),
24: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("betongGray", "Betonggrå"),
("deepBrick", "Dyp tegl"),
("neufPink", "Griserosa"),
("goldenOrange", "Gyllen oransje"),
("goldenBeige", "Gyllen beige"),
("chateauBlue", "Slottsblå"),
],
"label": "Bakgrunnsfarge",
"required": False,
},
),
25: (
"wagtail.blocks.RichTextBlock",
(),
{
"features": [
"bold",
"italic",
"link",
"ol",
"ul",
"h2",
"h3",
],
"label": "Innhold",
},
),
26: (
"wagtail.blocks.StructBlock",
[[("background_color", 24), ("body", 25)]],
{},
),
27: (
"wagtail.images.blocks.ImageChooserBlock",
(),
{"label": "360°-bilde"},
),
28: (
"wagtail.blocks.CharBlock",
(),
{
"help_text": "Beskrivende tittel på bildet (vises også til skjermlesere)",
"label": "Tittel",
"max_length": 256,
},
),
29: (
"wagtail.blocks.StructBlock",
[[("image", 27), ("title", 28)]],
{},
),
30: ("wagtail.embeds.blocks.EmbedBlock", (), {}),
31: ("wagtail.blocks.RawHTMLBlock", (), {}),
},
default=[("paragraph", "")],
),
),
]
@@ -0,0 +1,289 @@
# Generated by Django 6.0.3 on 2026-04-15 20:21
import wagtail.fields
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
("contacts", "0017_alter_contactindex_body"),
]
operations = [
migrations.AlterField(
model_name="contactindex",
name="body",
field=wagtail.fields.StreamField(
[
("paragraph", 0),
("image", 4),
("image_slider", 8),
("horizontal_rule", 10),
("featured", 18),
("page_section_navigation", 19),
("accordion", 23),
("fact_box", 26),
("photo_sphere", 29),
("embed", 30),
("raw_html", 31),
("contact_section", 39),
],
block_lookup={
0: ("wagtail.blocks.RichTextBlock", (), {"label": "Rik tekst"}),
1: (
"wagtail.images.blocks.ImageChooserBlock",
(),
{"label": "Bilde"},
),
2: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("fullwidth", "Fullbredde"),
("bleed", "Utfallende"),
("original", "Uendret størrelse"),
],
"icon": "cup",
"label": "Bildeformat",
},
),
3: (
"wagtail.blocks.CharBlock",
(),
{"label": "Bildetekst", "max_length": 512, "required": False},
),
4: (
"wagtail.blocks.StructBlock",
[[("image", 1), ("image_format", 2), ("text", 3)]],
{},
),
5: (
"wagtail.blocks.CharBlock",
(),
{"label": "Tekst", "max_length": 512, "required": False},
),
6: (
"wagtail.blocks.StructBlock",
[[("image", 1), ("text", 5)]],
{},
),
7: (
"wagtail.blocks.ListBlock",
(6,),
{"label": "Bilder", "min_num": 1},
),
8: ("wagtail.blocks.StructBlock", [[("images", 7)]], {}),
9: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("deepBrick", "Dyp tegl"),
("neufPink", "Griserosa"),
("goldenOrange", "Gyllen oransje"),
("goldenBeige", "Gyllen beige"),
("chateauBlue", "Slottsblå"),
],
"label": "Farge",
"required": False,
},
),
10: ("wagtail.blocks.StructBlock", [[("color", 9)]], {}),
11: (
"wagtail.blocks.CharBlock",
(),
{"label": "Tittel", "max_length": 64, "required": True},
),
12: (
"wagtail.blocks.RichTextBlock",
(),
{
"features": ["bold", "italic", "link"],
"label": "Tekst",
"required": True,
},
),
13: (
"wagtail.blocks.PageChooserBlock",
(),
{"header": "Fremhevet side", "required": True},
),
14: (
"wagtail.blocks.CharBlock",
(),
{
"default": "Les mer",
"help_text": 'Lenketeksten som tar deg videre til siden. Tips: Ikke start med "Trykk her"',
"label": "Lenketekst",
"max_length": 64,
"required": True,
},
),
15: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("betongGray", "Betonggrå"),
("deepBrick", "Dyp tegl"),
("neufPink", "Griserosa"),
("goldenOrange", "Gyllen oransje"),
("goldenBeige", "Gyllen beige"),
("chateauBlue", "Slottsblå"),
],
"label": "Bakgrunnsfarge",
},
),
16: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [("left", "Venstre"), ("right", "Høyre")],
"label": "Bildeplassering",
},
),
17: (
"wagtail.images.blocks.ImageChooserBlock",
(),
{
"header": "Overstyr bilde",
"help_text": "Bildet som er tilknyttet undersiden du vil fremheve, vil automatisk brukes. Om det mangler eller du vil overstyre hvilket bilde som et brukes, kan du velge et her.",
"required": False,
},
),
18: (
"wagtail.blocks.StructBlock",
[
[
("title", 11),
("text", 12),
("featured_page", 13),
("link_text", 14),
("background_color", 15),
("image_position", 16),
("featured_image_override", 17),
]
],
{},
),
19: ("dnscms.blocks.PageSectionNavigationBlock", (), {}),
20: (
"wagtail.blocks.CharBlock",
(),
{"label": "Overskrift", "max_length": 64, "required": True},
),
21: (
"wagtail.blocks.StructBlock",
[[("image", 1), ("image_format", 2), ("text", 3)]],
{"label": "Bilde"},
),
22: (
"wagtail.blocks.StreamBlock",
[[("paragraph", 0), ("image", 21)]],
{},
),
23: (
"wagtail.blocks.StructBlock",
[[("heading", 20), ("body", 22)]],
{},
),
24: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("betongGray", "Betonggrå"),
("deepBrick", "Dyp tegl"),
("neufPink", "Griserosa"),
("goldenOrange", "Gyllen oransje"),
("goldenBeige", "Gyllen beige"),
("chateauBlue", "Slottsblå"),
],
"label": "Bakgrunnsfarge",
"required": False,
},
),
25: (
"wagtail.blocks.RichTextBlock",
(),
{
"features": [
"bold",
"italic",
"link",
"ol",
"ul",
"h2",
"h3",
],
"label": "Innhold",
},
),
26: (
"wagtail.blocks.StructBlock",
[[("background_color", 24), ("body", 25)]],
{},
),
27: (
"wagtail.images.blocks.ImageChooserBlock",
(),
{"label": "360°-bilde"},
),
28: (
"wagtail.blocks.CharBlock",
(),
{
"help_text": "Beskrivende tittel på bildet (vises også til skjermlesere)",
"label": "Tittel",
"max_length": 256,
},
),
29: (
"wagtail.blocks.StructBlock",
[[("image", 27), ("title", 28)]],
{},
),
30: ("wagtail.embeds.blocks.EmbedBlock", (), {}),
31: ("wagtail.blocks.RawHTMLBlock", (), {}),
32: (
"wagtail.blocks.RichTextBlock",
(),
{"features": ["bold", "italic", "link"]},
),
33: (
"wagtail.snippets.blocks.SnippetChooserBlock",
("contacts.ContactEntity",),
{},
),
34: ("wagtail.blocks.StructBlock", [[("contact_entity", 33)]], {}),
35: (
"contacts.blocks.ContactListBlock",
(34,),
{"label": "Liste med kontaktpunkter"},
),
36: (
"wagtail.blocks.StreamBlock",
[[("contact_entity_list", 35)]],
{"required": False},
),
37: (
"wagtail.blocks.StructBlock",
[[("title", 11), ("text", 32), ("blocks", 36)]],
{"label": "Kontaktunderseksjon"},
),
38: (
"wagtail.blocks.StreamBlock",
[[("contact_entity_list", 35), ("contact_subsection", 37)]],
{"required": False},
),
39: (
"wagtail.blocks.StructBlock",
[[("title", 11), ("text", 32), ("blocks", 38)]],
{"label": "Kontaktseksjon"},
),
},
),
),
]
+20
View File
@@ -203,6 +203,25 @@ class AccordionBlock(blocks.StructBlock):
label = "Trekkspill"
@register_streamfield_block
class PhotoSphereBlock(blocks.StructBlock):
image = ImageChooserBlock(label="360°-bilde")
title = blocks.CharBlock(
max_length=512,
label="Bildetekst",
required=False,
)
graphql_fields = [
GraphQLImage("image", required=True),
GraphQLString("title", required=False),
]
class Meta:
icon = "globe"
label = "360°-bilde"
@register_streamfield_block
class FactBoxBlock(blocks.StructBlock):
background_color = blocks.ChoiceBlock(
@@ -234,6 +253,7 @@ BASE_BLOCKS = [
("page_section_navigation", PageSectionNavigationBlock()),
("accordion", AccordionBlock()),
("fact_box", FactBoxBlock()),
("photo_sphere", PhotoSphereBlock()),
("embed", EmbedBlock()),
("raw_html", blocks.RawHTMLBlock()),
]
+1
View File
@@ -61,6 +61,7 @@ INSTALLED_APPS = [
"django.contrib.sessions",
"django.contrib.messages",
"django.contrib.staticfiles",
"django.contrib.postgres",
]
MIDDLEWARE = [
@@ -0,0 +1,253 @@
# Generated by Django 6.0.3 on 2026-04-15 20:21
import wagtail.fields
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
("events", "0053_eventpage_lead"),
]
operations = [
migrations.AlterField(
model_name="eventpage",
name="body",
field=wagtail.fields.StreamField(
[
("paragraph", 0),
("image", 4),
("image_slider", 8),
("horizontal_rule", 10),
("featured", 18),
("page_section_navigation", 19),
("accordion", 23),
("fact_box", 26),
("photo_sphere", 29),
("embed", 30),
("raw_html", 31),
],
block_lookup={
0: ("wagtail.blocks.RichTextBlock", (), {"label": "Rik tekst"}),
1: (
"wagtail.images.blocks.ImageChooserBlock",
(),
{"label": "Bilde"},
),
2: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("fullwidth", "Fullbredde"),
("bleed", "Utfallende"),
("original", "Uendret størrelse"),
],
"icon": "cup",
"label": "Bildeformat",
},
),
3: (
"wagtail.blocks.CharBlock",
(),
{"label": "Bildetekst", "max_length": 512, "required": False},
),
4: (
"wagtail.blocks.StructBlock",
[[("image", 1), ("image_format", 2), ("text", 3)]],
{},
),
5: (
"wagtail.blocks.CharBlock",
(),
{"label": "Tekst", "max_length": 512, "required": False},
),
6: (
"wagtail.blocks.StructBlock",
[[("image", 1), ("text", 5)]],
{},
),
7: (
"wagtail.blocks.ListBlock",
(6,),
{"label": "Bilder", "min_num": 1},
),
8: ("wagtail.blocks.StructBlock", [[("images", 7)]], {}),
9: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("deepBrick", "Dyp tegl"),
("neufPink", "Griserosa"),
("goldenOrange", "Gyllen oransje"),
("goldenBeige", "Gyllen beige"),
("chateauBlue", "Slottsblå"),
],
"label": "Farge",
"required": False,
},
),
10: ("wagtail.blocks.StructBlock", [[("color", 9)]], {}),
11: (
"wagtail.blocks.CharBlock",
(),
{"label": "Tittel", "max_length": 64, "required": True},
),
12: (
"wagtail.blocks.RichTextBlock",
(),
{
"features": ["bold", "italic", "link"],
"label": "Tekst",
"required": True,
},
),
13: (
"wagtail.blocks.PageChooserBlock",
(),
{"header": "Fremhevet side", "required": True},
),
14: (
"wagtail.blocks.CharBlock",
(),
{
"default": "Les mer",
"help_text": 'Lenketeksten som tar deg videre til siden. Tips: Ikke start med "Trykk her"',
"label": "Lenketekst",
"max_length": 64,
"required": True,
},
),
15: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("betongGray", "Betonggrå"),
("deepBrick", "Dyp tegl"),
("neufPink", "Griserosa"),
("goldenOrange", "Gyllen oransje"),
("goldenBeige", "Gyllen beige"),
("chateauBlue", "Slottsblå"),
],
"label": "Bakgrunnsfarge",
},
),
16: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [("left", "Venstre"), ("right", "Høyre")],
"label": "Bildeplassering",
},
),
17: (
"wagtail.images.blocks.ImageChooserBlock",
(),
{
"header": "Overstyr bilde",
"help_text": "Bildet som er tilknyttet undersiden du vil fremheve, vil automatisk brukes. Om det mangler eller du vil overstyre hvilket bilde som et brukes, kan du velge et her.",
"required": False,
},
),
18: (
"wagtail.blocks.StructBlock",
[
[
("title", 11),
("text", 12),
("featured_page", 13),
("link_text", 14),
("background_color", 15),
("image_position", 16),
("featured_image_override", 17),
]
],
{},
),
19: ("dnscms.blocks.PageSectionNavigationBlock", (), {}),
20: (
"wagtail.blocks.CharBlock",
(),
{"label": "Overskrift", "max_length": 64, "required": True},
),
21: (
"wagtail.blocks.StructBlock",
[[("image", 1), ("image_format", 2), ("text", 3)]],
{"label": "Bilde"},
),
22: (
"wagtail.blocks.StreamBlock",
[[("paragraph", 0), ("image", 21)]],
{},
),
23: (
"wagtail.blocks.StructBlock",
[[("heading", 20), ("body", 22)]],
{},
),
24: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("betongGray", "Betonggrå"),
("deepBrick", "Dyp tegl"),
("neufPink", "Griserosa"),
("goldenOrange", "Gyllen oransje"),
("goldenBeige", "Gyllen beige"),
("chateauBlue", "Slottsblå"),
],
"label": "Bakgrunnsfarge",
"required": False,
},
),
25: (
"wagtail.blocks.RichTextBlock",
(),
{
"features": [
"bold",
"italic",
"link",
"ol",
"ul",
"h2",
"h3",
],
"label": "Innhold",
},
),
26: (
"wagtail.blocks.StructBlock",
[[("background_color", 24), ("body", 25)]],
{},
),
27: (
"wagtail.images.blocks.ImageChooserBlock",
(),
{"label": "360°-bilde"},
),
28: (
"wagtail.blocks.CharBlock",
(),
{
"help_text": "Beskrivende tittel på bildet (vises også til skjermlesere)",
"label": "Tittel",
"max_length": 256,
},
),
29: (
"wagtail.blocks.StructBlock",
[[("image", 27), ("title", 28)]],
{},
),
30: ("wagtail.embeds.blocks.EmbedBlock", (), {}),
31: ("wagtail.blocks.RawHTMLBlock", (), {}),
},
default=[("paragraph", "")],
),
),
]
@@ -0,0 +1,308 @@
# Generated by Django 6.0.3 on 2026-04-15 20:21
import wagtail.fields
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
("generic", "0026_alter_genericpage_body"),
]
operations = [
migrations.AlterField(
model_name="genericpage",
name="body",
field=wagtail.fields.StreamField(
[
("paragraph", 0),
("image", 4),
("image_slider", 8),
("horizontal_rule", 10),
("featured", 18),
("page_section_navigation", 19),
("accordion", 23),
("fact_box", 26),
("photo_sphere", 29),
("embed", 30),
("raw_html", 31),
("page_section", 36),
],
block_lookup={
0: ("wagtail.blocks.RichTextBlock", (), {"label": "Rik tekst"}),
1: (
"wagtail.images.blocks.ImageChooserBlock",
(),
{"label": "Bilde"},
),
2: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("fullwidth", "Fullbredde"),
("bleed", "Utfallende"),
("original", "Uendret størrelse"),
],
"icon": "cup",
"label": "Bildeformat",
},
),
3: (
"wagtail.blocks.CharBlock",
(),
{"label": "Bildetekst", "max_length": 512, "required": False},
),
4: (
"wagtail.blocks.StructBlock",
[[("image", 1), ("image_format", 2), ("text", 3)]],
{},
),
5: (
"wagtail.blocks.CharBlock",
(),
{"label": "Tekst", "max_length": 512, "required": False},
),
6: (
"wagtail.blocks.StructBlock",
[[("image", 1), ("text", 5)]],
{},
),
7: (
"wagtail.blocks.ListBlock",
(6,),
{"label": "Bilder", "min_num": 1},
),
8: ("wagtail.blocks.StructBlock", [[("images", 7)]], {}),
9: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("deepBrick", "Dyp tegl"),
("neufPink", "Griserosa"),
("goldenOrange", "Gyllen oransje"),
("goldenBeige", "Gyllen beige"),
("chateauBlue", "Slottsblå"),
],
"label": "Farge",
"required": False,
},
),
10: ("wagtail.blocks.StructBlock", [[("color", 9)]], {}),
11: (
"wagtail.blocks.CharBlock",
(),
{"label": "Tittel", "max_length": 64, "required": True},
),
12: (
"wagtail.blocks.RichTextBlock",
(),
{
"features": ["bold", "italic", "link"],
"label": "Tekst",
"required": True,
},
),
13: (
"wagtail.blocks.PageChooserBlock",
(),
{"header": "Fremhevet side", "required": True},
),
14: (
"wagtail.blocks.CharBlock",
(),
{
"default": "Les mer",
"help_text": 'Lenketeksten som tar deg videre til siden. Tips: Ikke start med "Trykk her"',
"label": "Lenketekst",
"max_length": 64,
"required": True,
},
),
15: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("betongGray", "Betonggrå"),
("deepBrick", "Dyp tegl"),
("neufPink", "Griserosa"),
("goldenOrange", "Gyllen oransje"),
("goldenBeige", "Gyllen beige"),
("chateauBlue", "Slottsblå"),
],
"label": "Bakgrunnsfarge",
},
),
16: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [("left", "Venstre"), ("right", "Høyre")],
"label": "Bildeplassering",
},
),
17: (
"wagtail.images.blocks.ImageChooserBlock",
(),
{
"header": "Overstyr bilde",
"help_text": "Bildet som er tilknyttet undersiden du vil fremheve, vil automatisk brukes. Om det mangler eller du vil overstyre hvilket bilde som et brukes, kan du velge et her.",
"required": False,
},
),
18: (
"wagtail.blocks.StructBlock",
[
[
("title", 11),
("text", 12),
("featured_page", 13),
("link_text", 14),
("background_color", 15),
("image_position", 16),
("featured_image_override", 17),
]
],
{},
),
19: ("dnscms.blocks.PageSectionNavigationBlock", (), {}),
20: (
"wagtail.blocks.CharBlock",
(),
{"label": "Overskrift", "max_length": 64, "required": True},
),
21: (
"wagtail.blocks.StructBlock",
[[("image", 1), ("image_format", 2), ("text", 3)]],
{"label": "Bilde"},
),
22: (
"wagtail.blocks.StreamBlock",
[[("paragraph", 0), ("image", 21)]],
{},
),
23: (
"wagtail.blocks.StructBlock",
[[("heading", 20), ("body", 22)]],
{},
),
24: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("betongGray", "Betonggrå"),
("deepBrick", "Dyp tegl"),
("neufPink", "Griserosa"),
("goldenOrange", "Gyllen oransje"),
("goldenBeige", "Gyllen beige"),
("chateauBlue", "Slottsblå"),
],
"label": "Bakgrunnsfarge",
"required": False,
},
),
25: (
"wagtail.blocks.RichTextBlock",
(),
{
"features": [
"bold",
"italic",
"link",
"ol",
"ul",
"h2",
"h3",
],
"label": "Innhold",
},
),
26: (
"wagtail.blocks.StructBlock",
[[("background_color", 24), ("body", 25)]],
{},
),
27: (
"wagtail.images.blocks.ImageChooserBlock",
(),
{"label": "360°-bilde"},
),
28: (
"wagtail.blocks.CharBlock",
(),
{
"help_text": "Beskrivende tittel på bildet (vises også til skjermlesere)",
"label": "Tittel",
"max_length": 256,
},
),
29: (
"wagtail.blocks.StructBlock",
[[("image", 27), ("title", 28)]],
{},
),
30: ("wagtail.embeds.blocks.EmbedBlock", (), {}),
31: ("wagtail.blocks.RawHTMLBlock", (), {}),
32: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("pigHeadLogo", "Grisehodelogo"),
("key", "Nøkkel"),
("ticket", "Billett"),
("shield", "Skjold"),
("bottle", "Flaske"),
("lostProperty", "Hittegods"),
("pigsty", "Grisebinge"),
("wheelchair", "Rullestol"),
("clock", "Klokke"),
("parking", "Parkering"),
("coins", "Mynter"),
],
"label": "Ikon",
"required": False,
},
),
33: ("dnscms.blocks.NeufAddressSectionBlock", (), {}),
34: ("dnscms.blocks.OpeningHoursSectionBlock", (), {}),
35: (
"wagtail.blocks.StreamBlock",
[
[
("paragraph", 0),
("image", 4),
("image_slider", 8),
("horizontal_rule", 10),
("featured", 18),
("accordion", 23),
("fact_box", 26),
("photo_sphere", 29),
("embed", 30),
("raw_html", 31),
("neuf_address", 33),
("opening_hours", 34),
]
],
{},
),
36: (
"wagtail.blocks.StructBlock",
[
[
("title", 11),
("background_color", 24),
("icon", 32),
("body", 35),
]
],
{},
),
},
),
),
]
@@ -0,0 +1,253 @@
# Generated by Django 6.0.3 on 2026-04-15 20:21
import wagtail.fields
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
("news", "0018_newspage_wp_block_json_newspage_wp_link_and_more"),
]
operations = [
migrations.AlterField(
model_name="newspage",
name="body",
field=wagtail.fields.StreamField(
[
("paragraph", 0),
("image", 4),
("image_slider", 8),
("horizontal_rule", 10),
("featured", 18),
("page_section_navigation", 19),
("accordion", 23),
("fact_box", 26),
("photo_sphere", 29),
("embed", 30),
("raw_html", 31),
],
block_lookup={
0: ("wagtail.blocks.RichTextBlock", (), {"label": "Rik tekst"}),
1: (
"wagtail.images.blocks.ImageChooserBlock",
(),
{"label": "Bilde"},
),
2: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("fullwidth", "Fullbredde"),
("bleed", "Utfallende"),
("original", "Uendret størrelse"),
],
"icon": "cup",
"label": "Bildeformat",
},
),
3: (
"wagtail.blocks.CharBlock",
(),
{"label": "Bildetekst", "max_length": 512, "required": False},
),
4: (
"wagtail.blocks.StructBlock",
[[("image", 1), ("image_format", 2), ("text", 3)]],
{},
),
5: (
"wagtail.blocks.CharBlock",
(),
{"label": "Tekst", "max_length": 512, "required": False},
),
6: (
"wagtail.blocks.StructBlock",
[[("image", 1), ("text", 5)]],
{},
),
7: (
"wagtail.blocks.ListBlock",
(6,),
{"label": "Bilder", "min_num": 1},
),
8: ("wagtail.blocks.StructBlock", [[("images", 7)]], {}),
9: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("deepBrick", "Dyp tegl"),
("neufPink", "Griserosa"),
("goldenOrange", "Gyllen oransje"),
("goldenBeige", "Gyllen beige"),
("chateauBlue", "Slottsblå"),
],
"label": "Farge",
"required": False,
},
),
10: ("wagtail.blocks.StructBlock", [[("color", 9)]], {}),
11: (
"wagtail.blocks.CharBlock",
(),
{"label": "Tittel", "max_length": 64, "required": True},
),
12: (
"wagtail.blocks.RichTextBlock",
(),
{
"features": ["bold", "italic", "link"],
"label": "Tekst",
"required": True,
},
),
13: (
"wagtail.blocks.PageChooserBlock",
(),
{"header": "Fremhevet side", "required": True},
),
14: (
"wagtail.blocks.CharBlock",
(),
{
"default": "Les mer",
"help_text": 'Lenketeksten som tar deg videre til siden. Tips: Ikke start med "Trykk her"',
"label": "Lenketekst",
"max_length": 64,
"required": True,
},
),
15: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("betongGray", "Betonggrå"),
("deepBrick", "Dyp tegl"),
("neufPink", "Griserosa"),
("goldenOrange", "Gyllen oransje"),
("goldenBeige", "Gyllen beige"),
("chateauBlue", "Slottsblå"),
],
"label": "Bakgrunnsfarge",
},
),
16: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [("left", "Venstre"), ("right", "Høyre")],
"label": "Bildeplassering",
},
),
17: (
"wagtail.images.blocks.ImageChooserBlock",
(),
{
"header": "Overstyr bilde",
"help_text": "Bildet som er tilknyttet undersiden du vil fremheve, vil automatisk brukes. Om det mangler eller du vil overstyre hvilket bilde som et brukes, kan du velge et her.",
"required": False,
},
),
18: (
"wagtail.blocks.StructBlock",
[
[
("title", 11),
("text", 12),
("featured_page", 13),
("link_text", 14),
("background_color", 15),
("image_position", 16),
("featured_image_override", 17),
]
],
{},
),
19: ("dnscms.blocks.PageSectionNavigationBlock", (), {}),
20: (
"wagtail.blocks.CharBlock",
(),
{"label": "Overskrift", "max_length": 64, "required": True},
),
21: (
"wagtail.blocks.StructBlock",
[[("image", 1), ("image_format", 2), ("text", 3)]],
{"label": "Bilde"},
),
22: (
"wagtail.blocks.StreamBlock",
[[("paragraph", 0), ("image", 21)]],
{},
),
23: (
"wagtail.blocks.StructBlock",
[[("heading", 20), ("body", 22)]],
{},
),
24: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("betongGray", "Betonggrå"),
("deepBrick", "Dyp tegl"),
("neufPink", "Griserosa"),
("goldenOrange", "Gyllen oransje"),
("goldenBeige", "Gyllen beige"),
("chateauBlue", "Slottsblå"),
],
"label": "Bakgrunnsfarge",
"required": False,
},
),
25: (
"wagtail.blocks.RichTextBlock",
(),
{
"features": [
"bold",
"italic",
"link",
"ol",
"ul",
"h2",
"h3",
],
"label": "Innhold",
},
),
26: (
"wagtail.blocks.StructBlock",
[[("background_color", 24), ("body", 25)]],
{},
),
27: (
"wagtail.images.blocks.ImageChooserBlock",
(),
{"label": "360°-bilde"},
),
28: (
"wagtail.blocks.CharBlock",
(),
{
"help_text": "Beskrivende tittel på bildet (vises også til skjermlesere)",
"label": "Tittel",
"max_length": 256,
},
),
29: (
"wagtail.blocks.StructBlock",
[[("image", 27), ("title", 28)]],
{},
),
30: ("wagtail.embeds.blocks.EmbedBlock", (), {}),
31: ("wagtail.blocks.RawHTMLBlock", (), {}),
},
default=[("paragraph", "")],
),
),
]
+5 -5
View File
@@ -6,18 +6,18 @@ authors = [{ name = "EDB", email = "edb@neuf.no" }]
requires-python = ">=3.14, <3.15"
readme = "README.md"
dependencies = [
"wagtail>=7.2.0",
"wagtail>=7.3.1",
"wagtail-grapple>=0.29.0",
"django>=5.2.8",
"django>=6.0.3",
"django-extensions>=4.1",
"psycopg2-binary>=2.9.11,<3",
"gunicorn>=23.0.0",
"whitenoise>=6.11.0",
"gunicorn>=25.1.0",
"whitenoise>=6.12.0",
]
[dependency-groups]
dev = [
"ruff>=0.14.5",
"ruff>=0.15.1",
]
[tool.uv]
@@ -0,0 +1,252 @@
# Generated by Django 6.0.3 on 2026-04-15 20:21
import wagtail.fields
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
("sponsors", "0001_initial"),
]
operations = [
migrations.AlterField(
model_name="sponsorspage",
name="body",
field=wagtail.fields.StreamField(
[
("paragraph", 0),
("image", 4),
("image_slider", 8),
("horizontal_rule", 10),
("featured", 18),
("page_section_navigation", 19),
("accordion", 23),
("fact_box", 26),
("photo_sphere", 29),
("embed", 30),
("raw_html", 31),
],
block_lookup={
0: ("wagtail.blocks.RichTextBlock", (), {"label": "Rik tekst"}),
1: (
"wagtail.images.blocks.ImageChooserBlock",
(),
{"label": "Bilde"},
),
2: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("fullwidth", "Fullbredde"),
("bleed", "Utfallende"),
("original", "Uendret størrelse"),
],
"icon": "cup",
"label": "Bildeformat",
},
),
3: (
"wagtail.blocks.CharBlock",
(),
{"label": "Bildetekst", "max_length": 512, "required": False},
),
4: (
"wagtail.blocks.StructBlock",
[[("image", 1), ("image_format", 2), ("text", 3)]],
{},
),
5: (
"wagtail.blocks.CharBlock",
(),
{"label": "Tekst", "max_length": 512, "required": False},
),
6: (
"wagtail.blocks.StructBlock",
[[("image", 1), ("text", 5)]],
{},
),
7: (
"wagtail.blocks.ListBlock",
(6,),
{"label": "Bilder", "min_num": 1},
),
8: ("wagtail.blocks.StructBlock", [[("images", 7)]], {}),
9: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("deepBrick", "Dyp tegl"),
("neufPink", "Griserosa"),
("goldenOrange", "Gyllen oransje"),
("goldenBeige", "Gyllen beige"),
("chateauBlue", "Slottsblå"),
],
"label": "Farge",
"required": False,
},
),
10: ("wagtail.blocks.StructBlock", [[("color", 9)]], {}),
11: (
"wagtail.blocks.CharBlock",
(),
{"label": "Tittel", "max_length": 64, "required": True},
),
12: (
"wagtail.blocks.RichTextBlock",
(),
{
"features": ["bold", "italic", "link"],
"label": "Tekst",
"required": True,
},
),
13: (
"wagtail.blocks.PageChooserBlock",
(),
{"header": "Fremhevet side", "required": True},
),
14: (
"wagtail.blocks.CharBlock",
(),
{
"default": "Les mer",
"help_text": 'Lenketeksten som tar deg videre til siden. Tips: Ikke start med "Trykk her"',
"label": "Lenketekst",
"max_length": 64,
"required": True,
},
),
15: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("betongGray", "Betonggrå"),
("deepBrick", "Dyp tegl"),
("neufPink", "Griserosa"),
("goldenOrange", "Gyllen oransje"),
("goldenBeige", "Gyllen beige"),
("chateauBlue", "Slottsblå"),
],
"label": "Bakgrunnsfarge",
},
),
16: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [("left", "Venstre"), ("right", "Høyre")],
"label": "Bildeplassering",
},
),
17: (
"wagtail.images.blocks.ImageChooserBlock",
(),
{
"header": "Overstyr bilde",
"help_text": "Bildet som er tilknyttet undersiden du vil fremheve, vil automatisk brukes. Om det mangler eller du vil overstyre hvilket bilde som et brukes, kan du velge et her.",
"required": False,
},
),
18: (
"wagtail.blocks.StructBlock",
[
[
("title", 11),
("text", 12),
("featured_page", 13),
("link_text", 14),
("background_color", 15),
("image_position", 16),
("featured_image_override", 17),
]
],
{},
),
19: ("dnscms.blocks.PageSectionNavigationBlock", (), {}),
20: (
"wagtail.blocks.CharBlock",
(),
{"label": "Overskrift", "max_length": 64, "required": True},
),
21: (
"wagtail.blocks.StructBlock",
[[("image", 1), ("image_format", 2), ("text", 3)]],
{"label": "Bilde"},
),
22: (
"wagtail.blocks.StreamBlock",
[[("paragraph", 0), ("image", 21)]],
{},
),
23: (
"wagtail.blocks.StructBlock",
[[("heading", 20), ("body", 22)]],
{},
),
24: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("betongGray", "Betonggrå"),
("deepBrick", "Dyp tegl"),
("neufPink", "Griserosa"),
("goldenOrange", "Gyllen oransje"),
("goldenBeige", "Gyllen beige"),
("chateauBlue", "Slottsblå"),
],
"label": "Bakgrunnsfarge",
"required": False,
},
),
25: (
"wagtail.blocks.RichTextBlock",
(),
{
"features": [
"bold",
"italic",
"link",
"ol",
"ul",
"h2",
"h3",
],
"label": "Innhold",
},
),
26: (
"wagtail.blocks.StructBlock",
[[("background_color", 24), ("body", 25)]],
{},
),
27: (
"wagtail.images.blocks.ImageChooserBlock",
(),
{"label": "360°-bilde"},
),
28: (
"wagtail.blocks.CharBlock",
(),
{
"help_text": "Beskrivende tittel på bildet (vises også til skjermlesere)",
"label": "Tittel",
"max_length": 256,
},
),
29: (
"wagtail.blocks.StructBlock",
[[("image", 27), ("title", 28)]],
{},
),
30: ("wagtail.embeds.blocks.EmbedBlock", (), {}),
31: ("wagtail.blocks.RawHTMLBlock", (), {}),
},
),
),
]
+42 -43
View File
@@ -73,16 +73,16 @@ wheels = [
[[package]]
name = "django"
version = "5.2.8"
version = "6.0.3"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "asgiref" },
{ name = "sqlparse" },
{ name = "tzdata", marker = "sys_platform == 'win32'" },
]
sdist = { url = "https://files.pythonhosted.org/packages/05/a2/933dbbb3dd9990494960f6e64aca2af4c0745b63b7113f59a822df92329e/django-5.2.8.tar.gz", hash = "sha256:23254866a5bb9a2cfa6004e8b809ec6246eba4b58a7589bc2772f1bcc8456c7f", size = 10849032, upload-time = "2025-11-05T14:07:32.778Z" }
sdist = { url = "https://files.pythonhosted.org/packages/80/e1/894115c6bd70e2c8b66b0c40a3c367d83a5a48c034a4d904d31b62f7c53a/django-6.0.3.tar.gz", hash = "sha256:90be765ee756af8a6cbd6693e56452404b5ad15294f4d5e40c0a55a0f4870fe1", size = 10872701, upload-time = "2026-03-03T13:55:15.026Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/5e/3d/a035a4ee9b1d4d4beee2ae6e8e12fe6dee5514b21f62504e22efcbd9fb46/django-5.2.8-py3-none-any.whl", hash = "sha256:37e687f7bd73ddf043e2b6b97cfe02fcbb11f2dbb3adccc6a2b18c6daa054d7f", size = 8289692, upload-time = "2025-11-05T14:07:28.761Z" },
{ url = "https://files.pythonhosted.org/packages/72/b1/23f2556967c45e34d3d3cf032eb1bd3ef925ee458667fb99052a0b3ea3a6/django-6.0.3-py3-none-any.whl", hash = "sha256:2e5974441491ddb34c3f13d5e7a9f97b07ba03bf70234c0a9c68b79bbb235bc3", size = 8358527, upload-time = "2026-03-03T13:55:10.552Z" },
]
[[package]]
@@ -111,14 +111,14 @@ wheels = [
[[package]]
name = "django-modelcluster"
version = "6.4"
version = "6.4.1"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "django" },
]
sdist = { url = "https://files.pythonhosted.org/packages/74/6a/08b0c902916d401b59d89f355949ef98e539d6abc6029138d819eb55d702/django-modelcluster-6.4.tar.gz", hash = "sha256:0102d00e6b884721ba21e32edb716548e0dead7880e130aa2e04854bd384a42f", size = 28966, upload-time = "2024-12-18T18:24:27.447Z" }
sdist = { url = "https://files.pythonhosted.org/packages/5b/f7/51efcea27d74665230be07b63e631e16204893ef32338a0e671c5ee0cd40/django_modelcluster-6.4.1.tar.gz", hash = "sha256:e736fcee925f83b63218dbf9c869ab50618b0f5e98869a5aa497f7a5331aa263", size = 29029, upload-time = "2025-12-04T12:21:41.907Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/60/c3/74539a9481e9311393e16d8f2d880f384e43c1535c05e0fa949b2fe487ef/django_modelcluster-6.4-py2.py3-none-any.whl", hash = "sha256:839b0ddb4a1a6f5fc7d9f2f029614a84350b41315bdb80a9c8b755baaa2297f2", size = 29041, upload-time = "2024-12-18T18:24:24.95Z" },
{ url = "https://files.pythonhosted.org/packages/a5/e4/ec99d52aa04e204e938564b603f4591e2e82e236ed59af664fee35179e75/django_modelcluster-6.4.1-py2.py3-none-any.whl", hash = "sha256:ccc190cd9e22c24900ea2410bff64d444d48f43f0f4aedeed0f6cd94e2536698", size = 29315, upload-time = "2025-12-04T12:21:39.911Z" },
]
[[package]]
@@ -160,16 +160,16 @@ wheels = [
[[package]]
name = "django-tasks"
version = "0.8.1"
version = "0.9.0"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "django" },
{ name = "django-stubs-ext" },
{ name = "typing-extensions" },
]
sdist = { url = "https://files.pythonhosted.org/packages/ce/d9/3670506bf2a5173310ec221cc7d24585e0d91627d86c1f0a6fbe243fbb4a/django_tasks-0.8.1.tar.gz", hash = "sha256:32673a9f56108ac1ea4664dc62580e5fc3536dd40858b38fd3b6a099913244b7", size = 31407, upload-time = "2025-07-04T15:51:59.68Z" }
sdist = { url = "https://files.pythonhosted.org/packages/60/b1/064645bf246a1f5b46d9638755b1869ea44a6d05e7c7c12841fddebb71f6/django_tasks-0.9.0.tar.gz", hash = "sha256:971b3829efeee68147f7deced8d21b907131b11ec7953af83eb94b11f128a24d", size = 32343, upload-time = "2025-10-17T16:21:08.58Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/c2/56/da9b5df9bad6322d8a2cf38a60ecaa834fc5a9ee995a9647d2e87708ca73/django_tasks-0.8.1-py3-none-any.whl", hash = "sha256:5323f3858f7ea99d899a772b832098d8d694444b291c24f1e0ed5446272b880b", size = 43085, upload-time = "2025-07-04T15:51:58.087Z" },
{ url = "https://files.pythonhosted.org/packages/71/e1/ce539ce1e21be71696649f84b6dbd508b2c0b89b559a6e620478bb126f7c/django_tasks-0.9.0-py3-none-any.whl", hash = "sha256:fddc344934a605d9eafa08ac8ba32c0cde9da23ef534e03a41f09fa0417b535a", size = 44057, upload-time = "2025-10-17T16:21:07.283Z" },
]
[[package]]
@@ -217,17 +217,17 @@ dev = [
[package.metadata]
requires-dist = [
{ name = "django", specifier = ">=5.2.8" },
{ name = "django", specifier = ">=6.0.3" },
{ name = "django-extensions", specifier = ">=4.1" },
{ name = "gunicorn", specifier = ">=23.0.0" },
{ name = "gunicorn", specifier = ">=25.1.0" },
{ name = "psycopg2-binary", specifier = ">=2.9.11,<3" },
{ name = "wagtail", specifier = ">=7.2.0" },
{ name = "wagtail", specifier = ">=7.3.1" },
{ name = "wagtail-grapple", specifier = ">=0.29.0" },
{ name = "whitenoise", specifier = ">=6.11.0" },
{ name = "whitenoise", specifier = ">=6.12.0" },
]
[package.metadata.requires-dev]
dev = [{ name = "ruff", specifier = ">=0.14.5" }]
dev = [{ name = "ruff", specifier = ">=0.15.1" }]
[[package]]
name = "draftjs-exporter"
@@ -311,14 +311,14 @@ wheels = [
[[package]]
name = "gunicorn"
version = "23.0.0"
version = "25.1.0"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "packaging" },
]
sdist = { url = "https://files.pythonhosted.org/packages/34/72/9614c465dc206155d93eff0ca20d42e1e35afc533971379482de953521a4/gunicorn-23.0.0.tar.gz", hash = "sha256:f014447a0101dc57e294f6c18ca6b40227a4c90e9bdb586042628030cba004ec", size = 375031, upload-time = "2024-08-10T20:25:27.378Z" }
sdist = { url = "https://files.pythonhosted.org/packages/66/13/ef67f59f6a7896fdc2c1d62b5665c5219d6b0a9a1784938eb9a28e55e128/gunicorn-25.1.0.tar.gz", hash = "sha256:1426611d959fa77e7de89f8c0f32eed6aa03ee735f98c01efba3e281b1c47616", size = 594377, upload-time = "2026-02-13T11:09:58.989Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/cb/7d/6dac2a6e1eba33ee43f318edbed4ff29151a49b5d37f080aad1e6469bca4/gunicorn-23.0.0-py3-none-any.whl", hash = "sha256:ec400d38950de4dfd418cff8328b2c8faed0edb0d517d3394e457c317908ca4d", size = 85029, upload-time = "2024-08-10T20:25:24.996Z" },
{ url = "https://files.pythonhosted.org/packages/da/73/4ad5b1f6a2e21cf1e85afdaad2b7b1a933985e2f5d679147a1953aaa192c/gunicorn-25.1.0-py3-none-any.whl", hash = "sha256:d0b1236ccf27f72cfe14bce7caadf467186f19e865094ca84221424e839b8b8b", size = 197067, upload-time = "2026-02-13T11:09:57.146Z" },
]
[[package]]
@@ -481,28 +481,27 @@ wheels = [
[[package]]
name = "ruff"
version = "0.14.5"
version = "0.15.1"
source = { registry = "https://pypi.org/simple" }
sdist = { url = "https://files.pythonhosted.org/packages/82/fa/fbb67a5780ae0f704876cb8ac92d6d76da41da4dc72b7ed3565ab18f2f52/ruff-0.14.5.tar.gz", hash = "sha256:8d3b48d7d8aad423d3137af7ab6c8b1e38e4de104800f0d596990f6ada1a9fc1", size = 5615944, upload-time = "2025-11-13T19:58:51.155Z" }
sdist = { url = "https://files.pythonhosted.org/packages/04/dc/4e6ac71b511b141cf626357a3946679abeba4cf67bc7cc5a17920f31e10d/ruff-0.15.1.tar.gz", hash = "sha256:c590fe13fb57c97141ae975c03a1aedb3d3156030cabd740d6ff0b0d601e203f", size = 4540855, upload-time = "2026-02-12T23:09:09.998Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/68/31/c07e9c535248d10836a94e4f4e8c5a31a1beed6f169b31405b227872d4f4/ruff-0.14.5-py3-none-linux_armv6l.whl", hash = "sha256:f3b8248123b586de44a8018bcc9fefe31d23dda57a34e6f0e1e53bd51fd63594", size = 13171630, upload-time = "2025-11-13T19:57:54.894Z" },
{ url = "https://files.pythonhosted.org/packages/8e/5c/283c62516dca697cd604c2796d1487396b7a436b2f0ecc3fd412aca470e0/ruff-0.14.5-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:f7a75236570318c7a30edd7f5491945f0169de738d945ca8784500b517163a72", size = 13413925, upload-time = "2025-11-13T19:57:59.181Z" },
{ url = "https://files.pythonhosted.org/packages/b6/f3/aa319f4afc22cb6fcba2b9cdfc0f03bbf747e59ab7a8c5e90173857a1361/ruff-0.14.5-py3-none-macosx_11_0_arm64.whl", hash = "sha256:6d146132d1ee115f8802356a2dc9a634dbf58184c51bff21f313e8cd1c74899a", size = 12574040, upload-time = "2025-11-13T19:58:02.056Z" },
{ url = "https://files.pythonhosted.org/packages/f9/7f/cb5845fcc7c7e88ed57f58670189fc2ff517fe2134c3821e77e29fd3b0c8/ruff-0.14.5-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e2380596653dcd20b057794d55681571a257a42327da8894b93bbd6111aa801f", size = 13009755, upload-time = "2025-11-13T19:58:05.172Z" },
{ url = "https://files.pythonhosted.org/packages/21/d2/bcbedbb6bcb9253085981730687ddc0cc7b2e18e8dc13cf4453de905d7a0/ruff-0.14.5-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:2d1fa985a42b1f075a098fa1ab9d472b712bdb17ad87a8ec86e45e7fa6273e68", size = 12937641, upload-time = "2025-11-13T19:58:08.345Z" },
{ url = "https://files.pythonhosted.org/packages/a4/58/e25de28a572bdd60ffc6bb71fc7fd25a94ec6a076942e372437649cbb02a/ruff-0.14.5-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:88f0770d42b7fa02bbefddde15d235ca3aa24e2f0137388cc15b2dcbb1f7c7a7", size = 13610854, upload-time = "2025-11-13T19:58:11.419Z" },
{ url = "https://files.pythonhosted.org/packages/7d/24/43bb3fd23ecee9861970978ea1a7a63e12a204d319248a7e8af539984280/ruff-0.14.5-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:3676cb02b9061fee7294661071c4709fa21419ea9176087cb77e64410926eb78", size = 15061088, upload-time = "2025-11-13T19:58:14.551Z" },
{ url = "https://files.pythonhosted.org/packages/23/44/a022f288d61c2f8c8645b24c364b719aee293ffc7d633a2ca4d116b9c716/ruff-0.14.5-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b595bedf6bc9cab647c4a173a61acf4f1ac5f2b545203ba82f30fcb10b0318fb", size = 14734717, upload-time = "2025-11-13T19:58:17.518Z" },
{ url = "https://files.pythonhosted.org/packages/58/81/5c6ba44de7e44c91f68073e0658109d8373b0590940efe5bd7753a2585a3/ruff-0.14.5-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f55382725ad0bdb2e8ee2babcbbfb16f124f5a59496a2f6a46f1d9d99d93e6e2", size = 14028812, upload-time = "2025-11-13T19:58:20.533Z" },
{ url = "https://files.pythonhosted.org/packages/ad/ef/41a8b60f8462cb320f68615b00299ebb12660097c952c600c762078420f8/ruff-0.14.5-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7497d19dce23976bdaca24345ae131a1d38dcfe1b0850ad8e9e6e4fa321a6e19", size = 13825656, upload-time = "2025-11-13T19:58:23.345Z" },
{ url = "https://files.pythonhosted.org/packages/7c/00/207e5de737fdb59b39eb1fac806904fe05681981b46d6a6db9468501062e/ruff-0.14.5-py3-none-manylinux_2_31_riscv64.whl", hash = "sha256:410e781f1122d6be4f446981dd479470af86537fb0b8857f27a6e872f65a38e4", size = 13959922, upload-time = "2025-11-13T19:58:26.537Z" },
{ url = "https://files.pythonhosted.org/packages/bc/7e/fa1f5c2776db4be405040293618846a2dece5c70b050874c2d1f10f24776/ruff-0.14.5-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:c01be527ef4c91a6d55e53b337bfe2c0f82af024cc1a33c44792d6844e2331e1", size = 12932501, upload-time = "2025-11-13T19:58:29.822Z" },
{ url = "https://files.pythonhosted.org/packages/67/d8/d86bf784d693a764b59479a6bbdc9515ae42c340a5dc5ab1dabef847bfaa/ruff-0.14.5-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:f66e9bb762e68d66e48550b59c74314168ebb46199886c5c5aa0b0fbcc81b151", size = 12927319, upload-time = "2025-11-13T19:58:32.923Z" },
{ url = "https://files.pythonhosted.org/packages/ac/de/ee0b304d450ae007ce0cb3e455fe24fbcaaedae4ebaad6c23831c6663651/ruff-0.14.5-py3-none-musllinux_1_2_i686.whl", hash = "sha256:d93be8f1fa01022337f1f8f3bcaa7ffee2d0b03f00922c45c2207954f351f465", size = 13206209, upload-time = "2025-11-13T19:58:35.952Z" },
{ url = "https://files.pythonhosted.org/packages/33/aa/193ca7e3a92d74f17d9d5771a765965d2cf42c86e6f0fd95b13969115723/ruff-0.14.5-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:c135d4b681f7401fe0e7312017e41aba9b3160861105726b76cfa14bc25aa367", size = 13953709, upload-time = "2025-11-13T19:58:39.002Z" },
{ url = "https://files.pythonhosted.org/packages/cc/f1/7119e42aa1d3bf036ffc9478885c2e248812b7de9abea4eae89163d2929d/ruff-0.14.5-py3-none-win32.whl", hash = "sha256:c83642e6fccfb6dea8b785eb9f456800dcd6a63f362238af5fc0c83d027dd08b", size = 12925808, upload-time = "2025-11-13T19:58:42.779Z" },
{ url = "https://files.pythonhosted.org/packages/3b/9d/7c0a255d21e0912114784e4a96bf62af0618e2190cae468cd82b13625ad2/ruff-0.14.5-py3-none-win_amd64.whl", hash = "sha256:9d55d7af7166f143c94eae1db3312f9ea8f95a4defef1979ed516dbb38c27621", size = 14331546, upload-time = "2025-11-13T19:58:45.691Z" },
{ url = "https://files.pythonhosted.org/packages/e5/80/69756670caedcf3b9be597a6e12276a6cf6197076eb62aad0c608f8efce0/ruff-0.14.5-py3-none-win_arm64.whl", hash = "sha256:4b700459d4649e2594b31f20a9de33bc7c19976d4746d8d0798ad959621d64a4", size = 13433331, upload-time = "2025-11-13T19:58:48.434Z" },
{ url = "https://files.pythonhosted.org/packages/23/bf/e6e4324238c17f9d9120a9d60aa99a7daaa21204c07fcd84e2ef03bb5fd1/ruff-0.15.1-py3-none-linux_armv6l.whl", hash = "sha256:b101ed7cf4615bda6ffe65bdb59f964e9f4a0d3f85cbf0e54f0ab76d7b90228a", size = 10367819, upload-time = "2026-02-12T23:09:03.598Z" },
{ url = "https://files.pythonhosted.org/packages/b3/ea/c8f89d32e7912269d38c58f3649e453ac32c528f93bb7f4219258be2e7ed/ruff-0.15.1-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:939c995e9277e63ea632cc8d3fae17aa758526f49a9a850d2e7e758bfef46602", size = 10798618, upload-time = "2026-02-12T23:09:22.928Z" },
{ url = "https://files.pythonhosted.org/packages/5e/0f/1d0d88bc862624247d82c20c10d4c0f6bb2f346559d8af281674cf327f15/ruff-0.15.1-py3-none-macosx_11_0_arm64.whl", hash = "sha256:1d83466455fdefe60b8d9c8df81d3c1bbb2115cede53549d3b522ce2bc703899", size = 10148518, upload-time = "2026-02-12T23:08:58.339Z" },
{ url = "https://files.pythonhosted.org/packages/f5/c8/291c49cefaa4a9248e986256df2ade7add79388fe179e0691be06fae6f37/ruff-0.15.1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a9457e3c3291024866222b96108ab2d8265b477e5b1534c7ddb1810904858d16", size = 10518811, upload-time = "2026-02-12T23:09:31.865Z" },
{ url = "https://files.pythonhosted.org/packages/c3/1a/f5707440e5ae43ffa5365cac8bbb91e9665f4a883f560893829cf16a606b/ruff-0.15.1-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:92c92b003e9d4f7fbd33b1867bb15a1b785b1735069108dfc23821ba045b29bc", size = 10196169, upload-time = "2026-02-12T23:09:17.306Z" },
{ url = "https://files.pythonhosted.org/packages/2a/ff/26ddc8c4da04c8fd3ee65a89c9fb99eaa5c30394269d424461467be2271f/ruff-0.15.1-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1fe5c41ab43e3a06778844c586251eb5a510f67125427625f9eb2b9526535779", size = 10990491, upload-time = "2026-02-12T23:09:25.503Z" },
{ url = "https://files.pythonhosted.org/packages/fc/00/50920cb385b89413f7cdb4bb9bc8fc59c1b0f30028d8bccc294189a54955/ruff-0.15.1-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66a6dd6df4d80dc382c6484f8ce1bcceb55c32e9f27a8b94c32f6c7331bf14fb", size = 11843280, upload-time = "2026-02-12T23:09:19.88Z" },
{ url = "https://files.pythonhosted.org/packages/5d/6d/2f5cad8380caf5632a15460c323ae326f1e1a2b5b90a6ee7519017a017ca/ruff-0.15.1-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6a4a42cbb8af0bda9bcd7606b064d7c0bc311a88d141d02f78920be6acb5aa83", size = 11274336, upload-time = "2026-02-12T23:09:14.907Z" },
{ url = "https://files.pythonhosted.org/packages/a3/1d/5f56cae1d6c40b8a318513599b35ea4b075d7dc1cd1d04449578c29d1d75/ruff-0.15.1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4ab064052c31dddada35079901592dfba2e05f5b1e43af3954aafcbc1096a5b2", size = 11137288, upload-time = "2026-02-12T23:09:07.475Z" },
{ url = "https://files.pythonhosted.org/packages/cd/20/6f8d7d8f768c93b0382b33b9306b3b999918816da46537d5a61635514635/ruff-0.15.1-py3-none-manylinux_2_31_riscv64.whl", hash = "sha256:5631c940fe9fe91f817a4c2ea4e81f47bee3ca4aa646134a24374f3c19ad9454", size = 11070681, upload-time = "2026-02-12T23:08:55.43Z" },
{ url = "https://files.pythonhosted.org/packages/9a/67/d640ac76069f64cdea59dba02af2e00b1fa30e2103c7f8d049c0cff4cafd/ruff-0.15.1-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:68138a4ba184b4691ccdc39f7795c66b3c68160c586519e7e8444cf5a53e1b4c", size = 10486401, upload-time = "2026-02-12T23:09:27.927Z" },
{ url = "https://files.pythonhosted.org/packages/65/3d/e1429f64a3ff89297497916b88c32a5cc88eeca7e9c787072d0e7f1d3e1e/ruff-0.15.1-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:518f9af03bfc33c03bdb4cb63fabc935341bb7f54af500f92ac309ecfbba6330", size = 10197452, upload-time = "2026-02-12T23:09:12.147Z" },
{ url = "https://files.pythonhosted.org/packages/78/83/e2c3bade17dad63bf1e1c2ffaf11490603b760be149e1419b07049b36ef2/ruff-0.15.1-py3-none-musllinux_1_2_i686.whl", hash = "sha256:da79f4d6a826caaea95de0237a67e33b81e6ec2e25fc7e1993a4015dffca7c61", size = 10693900, upload-time = "2026-02-12T23:09:34.418Z" },
{ url = "https://files.pythonhosted.org/packages/a1/27/fdc0e11a813e6338e0706e8b39bb7a1d61ea5b36873b351acee7e524a72a/ruff-0.15.1-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:3dd86dccb83cd7d4dcfac303ffc277e6048600dfc22e38158afa208e8bf94a1f", size = 11227302, upload-time = "2026-02-12T23:09:36.536Z" },
{ url = "https://files.pythonhosted.org/packages/f6/58/ac864a75067dcbd3b95be5ab4eb2b601d7fbc3d3d736a27e391a4f92a5c1/ruff-0.15.1-py3-none-win32.whl", hash = "sha256:660975d9cb49b5d5278b12b03bb9951d554543a90b74ed5d366b20e2c57c2098", size = 10462555, upload-time = "2026-02-12T23:09:29.899Z" },
{ url = "https://files.pythonhosted.org/packages/e0/5e/d4ccc8a27ecdb78116feac4935dfc39d1304536f4296168f91ed3ec00cd2/ruff-0.15.1-py3-none-win_amd64.whl", hash = "sha256:c820fef9dd5d4172a6570e5721704a96c6679b80cf7be41659ed439653f62336", size = 11599956, upload-time = "2026-02-12T23:09:01.157Z" },
{ url = "https://files.pythonhosted.org/packages/2a/07/5bda6a85b220c64c65686bc85bd0bbb23b29c62b3a9f9433fa55f17cda93/ruff-0.15.1-py3-none-win_arm64.whl", hash = "sha256:5ff7d5f0f88567850f45081fac8f4ec212be8d0b963e385c3f7d0d2eb4899416", size = 10874604, upload-time = "2026-02-12T23:09:05.515Z" },
]
[[package]]
@@ -579,7 +578,7 @@ wheels = [
[[package]]
name = "wagtail"
version = "7.2"
version = "7.3.1"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "anyascii" },
@@ -601,9 +600,9 @@ dependencies = [
{ name = "telepath" },
{ name = "willow", extra = ["heif"] },
]
sdist = { url = "https://files.pythonhosted.org/packages/83/1a/79dc8e4cb9ea51f26096e5ce7c8f1619c9534edffe2c7d27b1791e20f2be/wagtail-7.2.tar.gz", hash = "sha256:8a39df908bd64ab029e08bf191f475f54cc914f84aa41e9ae79b41bf41d55ec3", size = 6757172, upload-time = "2025-11-05T12:27:52.195Z" }
sdist = { url = "https://files.pythonhosted.org/packages/4e/f9/e28a1b87ea61c68b74990c9f5c8cb11da9a689e07c8b769acc89121f8523/wagtail-7.3.1.tar.gz", hash = "sha256:2ce131d9a4e7d55fdb5b592d320a758a189174b2cc3966b70a34a1b3dc56f449", size = 6855119, upload-time = "2026-03-03T15:54:48.523Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/2d/da/55b302face51c505ebeb1df349c90455058362d53ed5c29114647a8fdbba/wagtail-7.2-py3-none-any.whl", hash = "sha256:2c0d41545976b57266e84df3f03e7dd812e6a4d0a8d61d5b76863fe021613973", size = 9229326, upload-time = "2025-11-05T12:27:46.459Z" },
{ url = "https://files.pythonhosted.org/packages/bb/0e/5efc903966b966df2261a66cce8cb88909e4ade86f1173a156aadbbd1a06/wagtail-7.3.1-py3-none-any.whl", hash = "sha256:eab131e15ab9edc7ed24143d44271e92af79239e105bc3e173d26c95d2b489b3", size = 9479191, upload-time = "2026-03-03T15:54:42.644Z" },
]
[[package]]
@@ -634,11 +633,11 @@ wheels = [
[[package]]
name = "whitenoise"
version = "6.11.0"
version = "6.12.0"
source = { registry = "https://pypi.org/simple" }
sdist = { url = "https://files.pythonhosted.org/packages/15/95/8c81ec6b6ebcbf8aca2de7603070ccf37dbb873b03f20708e0f7c1664bc6/whitenoise-6.11.0.tar.gz", hash = "sha256:0f5bfce6061ae6611cd9396a8231e088722e4fc67bc13a111be74c738d99375f", size = 26432, upload-time = "2025-09-18T09:16:10.995Z" }
sdist = { url = "https://files.pythonhosted.org/packages/cb/2a/55b3f3a4ec326cd077c1c3defeee656b9298372a69229134d930151acd01/whitenoise-6.12.0.tar.gz", hash = "sha256:f723ebb76a112e98816ff80fcea0a6c9b8ecde835f8ddda25df7a30a3c2db6ad", size = 26841, upload-time = "2026-02-27T00:05:42.028Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/6c/e9/4366332f9295fe0647d7d3251ce18f5615fbcb12d02c79a26f8dba9221b3/whitenoise-6.11.0-py3-none-any.whl", hash = "sha256:b2aeb45950597236f53b5342b3121c5de69c8da0109362aee506ce88e022d258", size = 20197, upload-time = "2025-09-18T09:16:09.754Z" },
{ url = "https://files.pythonhosted.org/packages/db/eb/d5583a11486211f3ebd4b385545ae787f32363d453c19fffd81106c9c138/whitenoise-6.12.0-py3-none-any.whl", hash = "sha256:fc5e8c572e33ebf24795b47b6a7da8da3c00cff2349f5b04c02f28d0cc5a3cc2", size = 20302, upload-time = "2026-02-27T00:05:40.086Z" },
]
[[package]]
@@ -0,0 +1,731 @@
# Generated by Django 6.0.3 on 2026-04-15 20:21
import wagtail.fields
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
("venues", "0024_venuepage_show_in_overview_and_more"),
]
operations = [
migrations.AlterField(
model_name="venueindex",
name="body",
field=wagtail.fields.StreamField(
[
("paragraph", 0),
("image", 4),
("image_slider", 8),
("horizontal_rule", 10),
("featured", 18),
("page_section_navigation", 19),
("accordion", 23),
("fact_box", 26),
("photo_sphere", 29),
("embed", 30),
("raw_html", 31),
],
block_lookup={
0: ("wagtail.blocks.RichTextBlock", (), {"label": "Rik tekst"}),
1: (
"wagtail.images.blocks.ImageChooserBlock",
(),
{"label": "Bilde"},
),
2: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("fullwidth", "Fullbredde"),
("bleed", "Utfallende"),
("original", "Uendret størrelse"),
],
"icon": "cup",
"label": "Bildeformat",
},
),
3: (
"wagtail.blocks.CharBlock",
(),
{"label": "Bildetekst", "max_length": 512, "required": False},
),
4: (
"wagtail.blocks.StructBlock",
[[("image", 1), ("image_format", 2), ("text", 3)]],
{},
),
5: (
"wagtail.blocks.CharBlock",
(),
{"label": "Tekst", "max_length": 512, "required": False},
),
6: (
"wagtail.blocks.StructBlock",
[[("image", 1), ("text", 5)]],
{},
),
7: (
"wagtail.blocks.ListBlock",
(6,),
{"label": "Bilder", "min_num": 1},
),
8: ("wagtail.blocks.StructBlock", [[("images", 7)]], {}),
9: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("deepBrick", "Dyp tegl"),
("neufPink", "Griserosa"),
("goldenOrange", "Gyllen oransje"),
("goldenBeige", "Gyllen beige"),
("chateauBlue", "Slottsblå"),
],
"label": "Farge",
"required": False,
},
),
10: ("wagtail.blocks.StructBlock", [[("color", 9)]], {}),
11: (
"wagtail.blocks.CharBlock",
(),
{"label": "Tittel", "max_length": 64, "required": True},
),
12: (
"wagtail.blocks.RichTextBlock",
(),
{
"features": ["bold", "italic", "link"],
"label": "Tekst",
"required": True,
},
),
13: (
"wagtail.blocks.PageChooserBlock",
(),
{"header": "Fremhevet side", "required": True},
),
14: (
"wagtail.blocks.CharBlock",
(),
{
"default": "Les mer",
"help_text": 'Lenketeksten som tar deg videre til siden. Tips: Ikke start med "Trykk her"',
"label": "Lenketekst",
"max_length": 64,
"required": True,
},
),
15: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("betongGray", "Betonggrå"),
("deepBrick", "Dyp tegl"),
("neufPink", "Griserosa"),
("goldenOrange", "Gyllen oransje"),
("goldenBeige", "Gyllen beige"),
("chateauBlue", "Slottsblå"),
],
"label": "Bakgrunnsfarge",
},
),
16: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [("left", "Venstre"), ("right", "Høyre")],
"label": "Bildeplassering",
},
),
17: (
"wagtail.images.blocks.ImageChooserBlock",
(),
{
"header": "Overstyr bilde",
"help_text": "Bildet som er tilknyttet undersiden du vil fremheve, vil automatisk brukes. Om det mangler eller du vil overstyre hvilket bilde som et brukes, kan du velge et her.",
"required": False,
},
),
18: (
"wagtail.blocks.StructBlock",
[
[
("title", 11),
("text", 12),
("featured_page", 13),
("link_text", 14),
("background_color", 15),
("image_position", 16),
("featured_image_override", 17),
]
],
{},
),
19: ("dnscms.blocks.PageSectionNavigationBlock", (), {}),
20: (
"wagtail.blocks.CharBlock",
(),
{"label": "Overskrift", "max_length": 64, "required": True},
),
21: (
"wagtail.blocks.StructBlock",
[[("image", 1), ("image_format", 2), ("text", 3)]],
{"label": "Bilde"},
),
22: (
"wagtail.blocks.StreamBlock",
[[("paragraph", 0), ("image", 21)]],
{},
),
23: (
"wagtail.blocks.StructBlock",
[[("heading", 20), ("body", 22)]],
{},
),
24: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("betongGray", "Betonggrå"),
("deepBrick", "Dyp tegl"),
("neufPink", "Griserosa"),
("goldenOrange", "Gyllen oransje"),
("goldenBeige", "Gyllen beige"),
("chateauBlue", "Slottsblå"),
],
"label": "Bakgrunnsfarge",
"required": False,
},
),
25: (
"wagtail.blocks.RichTextBlock",
(),
{
"features": [
"bold",
"italic",
"link",
"ol",
"ul",
"h2",
"h3",
],
"label": "Innhold",
},
),
26: (
"wagtail.blocks.StructBlock",
[[("background_color", 24), ("body", 25)]],
{},
),
27: (
"wagtail.images.blocks.ImageChooserBlock",
(),
{"label": "360°-bilde"},
),
28: (
"wagtail.blocks.CharBlock",
(),
{
"help_text": "Beskrivende tittel på bildet (vises også til skjermlesere)",
"label": "Tittel",
"max_length": 256,
},
),
29: (
"wagtail.blocks.StructBlock",
[[("image", 27), ("title", 28)]],
{},
),
30: ("wagtail.embeds.blocks.EmbedBlock", (), {}),
31: ("wagtail.blocks.RawHTMLBlock", (), {}),
},
default=[("paragraph", "")],
),
),
migrations.AlterField(
model_name="venuepage",
name="body",
field=wagtail.fields.StreamField(
[
("paragraph", 0),
("image", 4),
("image_slider", 8),
("horizontal_rule", 10),
("featured", 18),
("page_section_navigation", 19),
("accordion", 23),
("fact_box", 26),
("photo_sphere", 29),
("embed", 30),
("raw_html", 31),
],
block_lookup={
0: ("wagtail.blocks.RichTextBlock", (), {"label": "Rik tekst"}),
1: (
"wagtail.images.blocks.ImageChooserBlock",
(),
{"label": "Bilde"},
),
2: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("fullwidth", "Fullbredde"),
("bleed", "Utfallende"),
("original", "Uendret størrelse"),
],
"icon": "cup",
"label": "Bildeformat",
},
),
3: (
"wagtail.blocks.CharBlock",
(),
{"label": "Bildetekst", "max_length": 512, "required": False},
),
4: (
"wagtail.blocks.StructBlock",
[[("image", 1), ("image_format", 2), ("text", 3)]],
{},
),
5: (
"wagtail.blocks.CharBlock",
(),
{"label": "Tekst", "max_length": 512, "required": False},
),
6: (
"wagtail.blocks.StructBlock",
[[("image", 1), ("text", 5)]],
{},
),
7: (
"wagtail.blocks.ListBlock",
(6,),
{"label": "Bilder", "min_num": 1},
),
8: ("wagtail.blocks.StructBlock", [[("images", 7)]], {}),
9: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("deepBrick", "Dyp tegl"),
("neufPink", "Griserosa"),
("goldenOrange", "Gyllen oransje"),
("goldenBeige", "Gyllen beige"),
("chateauBlue", "Slottsblå"),
],
"label": "Farge",
"required": False,
},
),
10: ("wagtail.blocks.StructBlock", [[("color", 9)]], {}),
11: (
"wagtail.blocks.CharBlock",
(),
{"label": "Tittel", "max_length": 64, "required": True},
),
12: (
"wagtail.blocks.RichTextBlock",
(),
{
"features": ["bold", "italic", "link"],
"label": "Tekst",
"required": True,
},
),
13: (
"wagtail.blocks.PageChooserBlock",
(),
{"header": "Fremhevet side", "required": True},
),
14: (
"wagtail.blocks.CharBlock",
(),
{
"default": "Les mer",
"help_text": 'Lenketeksten som tar deg videre til siden. Tips: Ikke start med "Trykk her"',
"label": "Lenketekst",
"max_length": 64,
"required": True,
},
),
15: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("betongGray", "Betonggrå"),
("deepBrick", "Dyp tegl"),
("neufPink", "Griserosa"),
("goldenOrange", "Gyllen oransje"),
("goldenBeige", "Gyllen beige"),
("chateauBlue", "Slottsblå"),
],
"label": "Bakgrunnsfarge",
},
),
16: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [("left", "Venstre"), ("right", "Høyre")],
"label": "Bildeplassering",
},
),
17: (
"wagtail.images.blocks.ImageChooserBlock",
(),
{
"header": "Overstyr bilde",
"help_text": "Bildet som er tilknyttet undersiden du vil fremheve, vil automatisk brukes. Om det mangler eller du vil overstyre hvilket bilde som et brukes, kan du velge et her.",
"required": False,
},
),
18: (
"wagtail.blocks.StructBlock",
[
[
("title", 11),
("text", 12),
("featured_page", 13),
("link_text", 14),
("background_color", 15),
("image_position", 16),
("featured_image_override", 17),
]
],
{},
),
19: ("dnscms.blocks.PageSectionNavigationBlock", (), {}),
20: (
"wagtail.blocks.CharBlock",
(),
{"label": "Overskrift", "max_length": 64, "required": True},
),
21: (
"wagtail.blocks.StructBlock",
[[("image", 1), ("image_format", 2), ("text", 3)]],
{"label": "Bilde"},
),
22: (
"wagtail.blocks.StreamBlock",
[[("paragraph", 0), ("image", 21)]],
{},
),
23: (
"wagtail.blocks.StructBlock",
[[("heading", 20), ("body", 22)]],
{},
),
24: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("betongGray", "Betonggrå"),
("deepBrick", "Dyp tegl"),
("neufPink", "Griserosa"),
("goldenOrange", "Gyllen oransje"),
("goldenBeige", "Gyllen beige"),
("chateauBlue", "Slottsblå"),
],
"label": "Bakgrunnsfarge",
"required": False,
},
),
25: (
"wagtail.blocks.RichTextBlock",
(),
{
"features": [
"bold",
"italic",
"link",
"ol",
"ul",
"h2",
"h3",
],
"label": "Innhold",
},
),
26: (
"wagtail.blocks.StructBlock",
[[("background_color", 24), ("body", 25)]],
{},
),
27: (
"wagtail.images.blocks.ImageChooserBlock",
(),
{"label": "360°-bilde"},
),
28: (
"wagtail.blocks.CharBlock",
(),
{
"help_text": "Beskrivende tittel på bildet (vises også til skjermlesere)",
"label": "Tittel",
"max_length": 256,
},
),
29: (
"wagtail.blocks.StructBlock",
[[("image", 27), ("title", 28)]],
{},
),
30: ("wagtail.embeds.blocks.EmbedBlock", (), {}),
31: ("wagtail.blocks.RawHTMLBlock", (), {}),
},
default=[("paragraph", "")],
),
),
migrations.AlterField(
model_name="venuerentalindex",
name="body",
field=wagtail.fields.StreamField(
[
("paragraph", 0),
("image", 4),
("image_slider", 8),
("horizontal_rule", 10),
("featured", 18),
("page_section_navigation", 19),
("accordion", 23),
("fact_box", 26),
("photo_sphere", 29),
("embed", 30),
("raw_html", 31),
],
block_lookup={
0: ("wagtail.blocks.RichTextBlock", (), {"label": "Rik tekst"}),
1: (
"wagtail.images.blocks.ImageChooserBlock",
(),
{"label": "Bilde"},
),
2: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("fullwidth", "Fullbredde"),
("bleed", "Utfallende"),
("original", "Uendret størrelse"),
],
"icon": "cup",
"label": "Bildeformat",
},
),
3: (
"wagtail.blocks.CharBlock",
(),
{"label": "Bildetekst", "max_length": 512, "required": False},
),
4: (
"wagtail.blocks.StructBlock",
[[("image", 1), ("image_format", 2), ("text", 3)]],
{},
),
5: (
"wagtail.blocks.CharBlock",
(),
{"label": "Tekst", "max_length": 512, "required": False},
),
6: (
"wagtail.blocks.StructBlock",
[[("image", 1), ("text", 5)]],
{},
),
7: (
"wagtail.blocks.ListBlock",
(6,),
{"label": "Bilder", "min_num": 1},
),
8: ("wagtail.blocks.StructBlock", [[("images", 7)]], {}),
9: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("deepBrick", "Dyp tegl"),
("neufPink", "Griserosa"),
("goldenOrange", "Gyllen oransje"),
("goldenBeige", "Gyllen beige"),
("chateauBlue", "Slottsblå"),
],
"label": "Farge",
"required": False,
},
),
10: ("wagtail.blocks.StructBlock", [[("color", 9)]], {}),
11: (
"wagtail.blocks.CharBlock",
(),
{"label": "Tittel", "max_length": 64, "required": True},
),
12: (
"wagtail.blocks.RichTextBlock",
(),
{
"features": ["bold", "italic", "link"],
"label": "Tekst",
"required": True,
},
),
13: (
"wagtail.blocks.PageChooserBlock",
(),
{"header": "Fremhevet side", "required": True},
),
14: (
"wagtail.blocks.CharBlock",
(),
{
"default": "Les mer",
"help_text": 'Lenketeksten som tar deg videre til siden. Tips: Ikke start med "Trykk her"',
"label": "Lenketekst",
"max_length": 64,
"required": True,
},
),
15: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("betongGray", "Betonggrå"),
("deepBrick", "Dyp tegl"),
("neufPink", "Griserosa"),
("goldenOrange", "Gyllen oransje"),
("goldenBeige", "Gyllen beige"),
("chateauBlue", "Slottsblå"),
],
"label": "Bakgrunnsfarge",
},
),
16: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [("left", "Venstre"), ("right", "Høyre")],
"label": "Bildeplassering",
},
),
17: (
"wagtail.images.blocks.ImageChooserBlock",
(),
{
"header": "Overstyr bilde",
"help_text": "Bildet som er tilknyttet undersiden du vil fremheve, vil automatisk brukes. Om det mangler eller du vil overstyre hvilket bilde som et brukes, kan du velge et her.",
"required": False,
},
),
18: (
"wagtail.blocks.StructBlock",
[
[
("title", 11),
("text", 12),
("featured_page", 13),
("link_text", 14),
("background_color", 15),
("image_position", 16),
("featured_image_override", 17),
]
],
{},
),
19: ("dnscms.blocks.PageSectionNavigationBlock", (), {}),
20: (
"wagtail.blocks.CharBlock",
(),
{"label": "Overskrift", "max_length": 64, "required": True},
),
21: (
"wagtail.blocks.StructBlock",
[[("image", 1), ("image_format", 2), ("text", 3)]],
{"label": "Bilde"},
),
22: (
"wagtail.blocks.StreamBlock",
[[("paragraph", 0), ("image", 21)]],
{},
),
23: (
"wagtail.blocks.StructBlock",
[[("heading", 20), ("body", 22)]],
{},
),
24: (
"wagtail.blocks.ChoiceBlock",
[],
{
"choices": [
("betongGray", "Betonggrå"),
("deepBrick", "Dyp tegl"),
("neufPink", "Griserosa"),
("goldenOrange", "Gyllen oransje"),
("goldenBeige", "Gyllen beige"),
("chateauBlue", "Slottsblå"),
],
"label": "Bakgrunnsfarge",
"required": False,
},
),
25: (
"wagtail.blocks.RichTextBlock",
(),
{
"features": [
"bold",
"italic",
"link",
"ol",
"ul",
"h2",
"h3",
],
"label": "Innhold",
},
),
26: (
"wagtail.blocks.StructBlock",
[[("background_color", 24), ("body", 25)]],
{},
),
27: (
"wagtail.images.blocks.ImageChooserBlock",
(),
{"label": "360°-bilde"},
),
28: (
"wagtail.blocks.CharBlock",
(),
{
"help_text": "Beskrivende tittel på bildet (vises også til skjermlesere)",
"label": "Tittel",
"max_length": 256,
},
),
29: (
"wagtail.blocks.StructBlock",
[[("image", 27), ("title", 28)]],
{},
),
30: ("wagtail.embeds.blocks.EmbedBlock", (), {}),
31: ("wagtail.blocks.RawHTMLBlock", (), {}),
},
default=[("paragraph", "")],
),
),
]
+113 -237
View File
@@ -8,30 +8,31 @@
"name": "neuf-www",
"version": "0.1.0",
"dependencies": {
"@graphql-codegen/cli": "^6.1.1",
"@graphql-codegen/client-preset": "^5.2.2",
"@graphql-codegen/cli": "^6.1.2",
"@graphql-codegen/client-preset": "^5.2.3",
"@parcel/watcher": "^2.5.6",
"@sindresorhus/slugify": "^3.0.0",
"@urql/next": "^2.0.0",
"date-fns": "^4.1.0",
"date-fns-tz": "^3.2.0",
"graphql": "^16.12.0",
"next": "16.1.6",
"nuqs": "^2.8.8",
"graphql": "^16.13.1",
"next": "^16.1.6",
"nuqs": "^2.8.9",
"react": "19.2.4",
"react-dom": "19.2.4",
"react-intersection-observer": "^10.0.2",
"react-intersection-observer": "^10.0.3",
"react-photo-sphere-viewer": "^6.2.3",
"sass": "^1.97.3",
"sharp": "^0.34.5",
"swiper": "^12.1.0",
"swiper": "^12.1.2",
"urql": "^5.0.1",
"use-debounce": "^10.1.0"
},
"devDependencies": {
"@types/node": "^24",
"@types/react": "19.2.11",
"@types/react": "19.2.14",
"@types/react-dom": "19.2.3",
"baseline-browser-mapping": "^2.9.19",
"baseline-browser-mapping": "^2.10.0",
"eslint": "^9",
"eslint-config-next": "16.1.6",
"typescript": "^5"
@@ -61,24 +62,14 @@
}
},
"node_modules/@ardatan/relay-compiler": {
"version": "12.0.3",
"resolved": "https://registry.npmjs.org/@ardatan/relay-compiler/-/relay-compiler-12.0.3.tgz",
"integrity": "sha512-mBDFOGvAoVlWaWqs3hm1AciGHSQE1rqFc/liZTyYz/Oek9yZdT5H26pH2zAFuEiTiBVPPyMuqf5VjOFPI2DGsQ==",
"version": "13.0.0",
"resolved": "https://registry.npmjs.org/@ardatan/relay-compiler/-/relay-compiler-13.0.0.tgz",
"integrity": "sha512-ite4+xng5McO8MflWCi0un0YmnorTujsDnfPfhzYzAgoJ+jkI1pZj6jtmTl8Jptyi1H+Pa0zlatJIsxDD++ETA==",
"license": "MIT",
"dependencies": {
"@babel/generator": "^7.26.10",
"@babel/parser": "^7.26.10",
"@babel/runtime": "^7.26.10",
"chalk": "^4.0.0",
"fb-watchman": "^2.0.0",
"immutable": "~3.7.6",
"invariant": "^2.2.4",
"nullthrows": "^1.1.1",
"relay-runtime": "12.0.0",
"signedsource": "^1.0.0"
},
"bin": {
"relay-compiler": "bin/relay-compiler"
"immutable": "^5.1.5",
"invariant": "^2.2.4"
},
"peerDependencies": {
"graphql": "*"
@@ -123,7 +114,6 @@
"resolved": "https://registry.npmjs.org/@babel/core/-/core-7.28.5.tgz",
"integrity": "sha512-e7jT4DxYvIDLk1ZHmU/m/mB19rex9sv0c2ftBtjSBv+kVM/902eh0fINUzD7UwLLNR+jU585GxUJ8/EBfAM5fw==",
"license": "MIT",
"peer": true,
"dependencies": {
"@babel/code-frame": "^7.27.1",
"@babel/generator": "^7.28.5",
@@ -593,9 +583,9 @@
}
},
"node_modules/@graphql-codegen/cli": {
"version": "6.1.1",
"resolved": "https://registry.npmjs.org/@graphql-codegen/cli/-/cli-6.1.1.tgz",
"integrity": "sha512-Ni8UdZ6D/UTvLvDtPb6PzshI0lTqtLDnmv/2t1w2SYP92H0MMEdAzxB/ujDWwIXm2LzVPvvrGvzzCTMsyXa+mA==",
"version": "6.1.2",
"resolved": "https://registry.npmjs.org/@graphql-codegen/cli/-/cli-6.1.2.tgz",
"integrity": "sha512-BQ49LF0jnQNL12rU1RucTemoX1bHx8slR4B11nOrp4k5NTojhcc1A1czzU5wXCK/1+ezNHrVGONWg3jxZUy08w==",
"license": "MIT",
"dependencies": {
"@babel/generator": "^7.18.13",
@@ -906,20 +896,20 @@
}
},
"node_modules/@graphql-codegen/client-preset": {
"version": "5.2.2",
"resolved": "https://registry.npmjs.org/@graphql-codegen/client-preset/-/client-preset-5.2.2.tgz",
"integrity": "sha512-1xufIJZr04ylx0Dnw49m8Jrx1s1kujUNVm+Tp5cPRsQmgPN9VjB7wWY7CGD8ArStv6Vjb0a31Xnm5I+VzZM+Rw==",
"version": "5.2.3",
"resolved": "https://registry.npmjs.org/@graphql-codegen/client-preset/-/client-preset-5.2.3.tgz",
"integrity": "sha512-zgbk0dTY+KC/8TG00RGct6HnXWJU6jQaty3wAXKl1CvCXTKO73pW8Npph+RSJMTEEXb+QuJL3vyaPiGM1gw8sw==",
"license": "MIT",
"dependencies": {
"@babel/helper-plugin-utils": "^7.20.2",
"@babel/template": "^7.20.7",
"@graphql-codegen/add": "^6.0.0",
"@graphql-codegen/gql-tag-operations": "5.1.2",
"@graphql-codegen/gql-tag-operations": "5.1.3",
"@graphql-codegen/plugin-helpers": "^6.1.0",
"@graphql-codegen/typed-document-node": "^6.1.5",
"@graphql-codegen/typescript": "^5.0.7",
"@graphql-codegen/typescript-operations": "^5.0.7",
"@graphql-codegen/visitor-plugin-common": "^6.2.2",
"@graphql-codegen/typed-document-node": "^6.1.6",
"@graphql-codegen/typescript": "^5.0.8",
"@graphql-codegen/typescript-operations": "^5.0.8",
"@graphql-codegen/visitor-plugin-common": "^6.2.3",
"@graphql-tools/documents": "^1.0.0",
"@graphql-tools/utils": "^10.0.0",
"@graphql-typed-document-node/core": "3.2.0",
@@ -957,13 +947,13 @@
}
},
"node_modules/@graphql-codegen/gql-tag-operations": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/@graphql-codegen/gql-tag-operations/-/gql-tag-operations-5.1.2.tgz",
"integrity": "sha512-BIv66VJ2bKlpfXBeVakJxihBSKnBIdGFLMaFdnGPxqYlKIzaGffjsGbhViPwwBinmBChW4Se6PU4Py7eysYEiA==",
"version": "5.1.3",
"resolved": "https://registry.npmjs.org/@graphql-codegen/gql-tag-operations/-/gql-tag-operations-5.1.3.tgz",
"integrity": "sha512-yh/GTGW5Nf8f/zaCHZwWb04ItWAm+UfUJf7pb6n4SrqRxvWOSJk36LJ4l8UuDW1tmAOobjeXB8HSKSJsUjmA1g==",
"license": "MIT",
"dependencies": {
"@graphql-codegen/plugin-helpers": "^6.1.0",
"@graphql-codegen/visitor-plugin-common": "6.2.2",
"@graphql-codegen/visitor-plugin-common": "6.2.3",
"@graphql-tools/utils": "^10.0.0",
"auto-bind": "~4.0.0",
"tslib": "~2.6.0"
@@ -1013,13 +1003,13 @@
}
},
"node_modules/@graphql-codegen/typed-document-node": {
"version": "6.1.5",
"resolved": "https://registry.npmjs.org/@graphql-codegen/typed-document-node/-/typed-document-node-6.1.5.tgz",
"integrity": "sha512-6dgEPz+YRMzSPpATj7tsKh/L6Y8OZImiyXIUzvSq/dRAEgoinahrES5y/eZQyc7CVxfoFCyHF9KMQQ9jiLn7lw==",
"version": "6.1.6",
"resolved": "https://registry.npmjs.org/@graphql-codegen/typed-document-node/-/typed-document-node-6.1.6.tgz",
"integrity": "sha512-USuQdUWBXij9HQl+GWXuLm05kjpOVwViBfnNi7ijES4HFwAmt/EDAnYSCfUoOHCfFQeWcfqYbtcUGJO9iXiSYQ==",
"license": "MIT",
"dependencies": {
"@graphql-codegen/plugin-helpers": "^6.1.0",
"@graphql-codegen/visitor-plugin-common": "6.2.2",
"@graphql-codegen/visitor-plugin-common": "6.2.3",
"auto-bind": "~4.0.0",
"change-case-all": "1.0.15",
"tslib": "~2.6.0"
@@ -1032,14 +1022,14 @@
}
},
"node_modules/@graphql-codegen/typescript": {
"version": "5.0.7",
"resolved": "https://registry.npmjs.org/@graphql-codegen/typescript/-/typescript-5.0.7.tgz",
"integrity": "sha512-kZwcu9Iat5RWXxLGPnDbG6qVbGTigF25/aGqCG/DCQ1Al8RufSjVXhIOkJBp7QWAqXn3AupHXL1WTMXP7xs4dQ==",
"version": "5.0.8",
"resolved": "https://registry.npmjs.org/@graphql-codegen/typescript/-/typescript-5.0.8.tgz",
"integrity": "sha512-lUW6ari+rXP6tz5B0LXjmV9rEMOphoCZAkt+SJGObLQ6w6544ZsXSsRga/EJiSvZ1fRfm9yaFoErOZ56IVThyg==",
"license": "MIT",
"dependencies": {
"@graphql-codegen/plugin-helpers": "^6.1.0",
"@graphql-codegen/schema-ast": "^5.0.0",
"@graphql-codegen/visitor-plugin-common": "6.2.2",
"@graphql-codegen/visitor-plugin-common": "6.2.3",
"auto-bind": "~4.0.0",
"tslib": "~2.6.0"
},
@@ -1051,14 +1041,14 @@
}
},
"node_modules/@graphql-codegen/typescript-operations": {
"version": "5.0.7",
"resolved": "https://registry.npmjs.org/@graphql-codegen/typescript-operations/-/typescript-operations-5.0.7.tgz",
"integrity": "sha512-5N3myNse1putRQlp8+l1k9ayvc98oq2mPJx0zN8MTOlTBxcb2grVPFRLy5wJJjuv9NffpyCkVJ9LvUaf8mqQgg==",
"version": "5.0.8",
"resolved": "https://registry.npmjs.org/@graphql-codegen/typescript-operations/-/typescript-operations-5.0.8.tgz",
"integrity": "sha512-5H58DnDIy59Q+wcPRu13UnAS7fkMCW/vPI1+g8rHBmxuV9YGyGlVL9lE/fmJ06181hI7G9YGuUaoFYMJFU6bxQ==",
"license": "MIT",
"dependencies": {
"@graphql-codegen/plugin-helpers": "^6.1.0",
"@graphql-codegen/typescript": "^5.0.7",
"@graphql-codegen/visitor-plugin-common": "6.2.2",
"@graphql-codegen/typescript": "^5.0.8",
"@graphql-codegen/visitor-plugin-common": "6.2.3",
"auto-bind": "~4.0.0",
"tslib": "~2.6.0"
},
@@ -1076,9 +1066,9 @@
}
},
"node_modules/@graphql-codegen/visitor-plugin-common": {
"version": "6.2.2",
"resolved": "https://registry.npmjs.org/@graphql-codegen/visitor-plugin-common/-/visitor-plugin-common-6.2.2.tgz",
"integrity": "sha512-wEJ4zJj58PKlXISItZfr0xIHyM1lAuRfoflPegsb1L17Mx5+YzNOy0WAlLele3yzyV89WvCiprFKMcVQ7KfDXg==",
"version": "6.2.3",
"resolved": "https://registry.npmjs.org/@graphql-codegen/visitor-plugin-common/-/visitor-plugin-common-6.2.3.tgz",
"integrity": "sha512-Rewl/QRFfIOXHFK3i/ts4VodsaB4N22kckH1zweTzq7SFodkfrqGrLa/MrGLJ/q6aUuqGiqao7f4Za2IjjkCxw==",
"license": "MIT",
"dependencies": {
"@graphql-codegen/plugin-helpers": "^6.1.0",
@@ -1569,12 +1559,12 @@
}
},
"node_modules/@graphql-tools/relay-operation-optimizer": {
"version": "7.0.27",
"resolved": "https://registry.npmjs.org/@graphql-tools/relay-operation-optimizer/-/relay-operation-optimizer-7.0.27.tgz",
"integrity": "sha512-rdkL1iDMFaGDiHWd7Bwv7hbhrhnljkJaD0MXeqdwQlZVgVdUDlMot2WuF7CEKVgijpH6eSC6AxXMDeqVgSBS2g==",
"version": "7.1.1",
"resolved": "https://registry.npmjs.org/@graphql-tools/relay-operation-optimizer/-/relay-operation-optimizer-7.1.1.tgz",
"integrity": "sha512-va+ZieMlz6Fj18xUbwyQkZ34PsnzIdPT6Ccy1BNOQw1iclQwk52HejLMZeE/4fH+4cu80Q2HXi5+FjCKpmnJCg==",
"license": "MIT",
"dependencies": {
"@ardatan/relay-compiler": "^12.0.3",
"@ardatan/relay-compiler": "^13.0.0",
"@graphql-tools/utils": "^11.0.0",
"tslib": "^2.4.0"
},
@@ -2868,7 +2858,6 @@
"integrity": "sha512-tmmZ3lQxAe/k/+rNnXQRawJ4NjxO2hqiOLTHvWchtGZULp4RyFeh6aU4XdOYBFe2KE1oShQTv4AblOs2iOrNnQ==",
"hasInstallScript": true,
"license": "MIT",
"peer": true,
"dependencies": {
"detect-libc": "^2.0.3",
"is-glob": "^4.0.3",
@@ -3170,6 +3159,16 @@
"url": "https://github.com/sponsors/jonschlinkert"
}
},
"node_modules/@photo-sphere-viewer/core": {
"version": "5.14.1",
"resolved": "https://registry.npmjs.org/@photo-sphere-viewer/core/-/core-5.14.1.tgz",
"integrity": "sha512-qrwUudrX9YZms4c2shlY/H3jUP0oh9FyGEqIDr/95ulNZgKbhQ6C/i8zDQ4j8ooFR4+z5FDORQtGvLgPyX8VCA==",
"license": "MIT",
"peer": true,
"dependencies": {
"three": "^0.179.0"
}
},
"node_modules/@repeaterjs/repeater": {
"version": "3.0.6",
"resolved": "https://registry.npmjs.org/@repeaterjs/repeater/-/repeater-3.0.6.tgz",
@@ -3272,18 +3271,16 @@
"resolved": "https://registry.npmjs.org/@types/node/-/node-24.10.1.tgz",
"integrity": "sha512-GNWcUTRBgIRJD5zj+Tq0fKOJ5XZajIiBroOF0yvj2bSU1WvNdYS/dn9UxwsujGW4JX06dnHyjV2y9rRaybH0iQ==",
"license": "MIT",
"peer": true,
"dependencies": {
"undici-types": "~7.16.0"
}
},
"node_modules/@types/react": {
"version": "19.2.11",
"resolved": "https://registry.npmjs.org/@types/react/-/react-19.2.11.tgz",
"integrity": "sha512-tORuanb01iEzWvMGVGv2ZDhYZVeRMrw453DCSAIn/5yvcSVnMoUMTyf33nQJLahYEnv9xqrTNbgz4qY5EfSh0g==",
"version": "19.2.14",
"resolved": "https://registry.npmjs.org/@types/react/-/react-19.2.14.tgz",
"integrity": "sha512-ilcTH/UniCkMdtexkoCN0bI7pMcJDvmQFPvuPvmEaYA/NSfFTAgdUSLAoVjaRJm7+6PvcM+q1zYOwS4wTYMF9w==",
"dev": true,
"license": "MIT",
"peer": true,
"dependencies": {
"csstype": "^3.2.2"
}
@@ -3352,7 +3349,6 @@
"integrity": "sha512-tK3GPFWbirvNgsNKto+UmB/cRtn6TZfyw0D6IKrW55n6Vbs7KJoZtI//kpTKzE/DUmmnAFD8/Ca46s7Obs92/w==",
"dev": true,
"license": "MIT",
"peer": true,
"dependencies": {
"@typescript-eslint/scope-manager": "8.46.4",
"@typescript-eslint/types": "8.46.4",
@@ -3896,7 +3892,6 @@
"resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz",
"integrity": "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==",
"dev": true,
"peer": true,
"bin": {
"acorn": "bin/acorn"
},
@@ -4142,12 +4137,6 @@
"url": "https://github.com/sponsors/ljharb"
}
},
"node_modules/asap": {
"version": "2.0.6",
"resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz",
"integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==",
"license": "MIT"
},
"node_modules/ast-types-flow": {
"version": "0.0.8",
"resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.8.tgz",
@@ -4214,12 +4203,15 @@
"integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
},
"node_modules/baseline-browser-mapping": {
"version": "2.9.19",
"resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.9.19.tgz",
"integrity": "sha512-ipDqC8FrAl/76p2SSWKSI+H9tFwm7vYqXQrItCuiVPt26Km0jS+NzSsBWAaBusvSbQcfJG+JitdMm+wZAgTYqg==",
"version": "2.10.0",
"resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.0.tgz",
"integrity": "sha512-lIyg0szRfYbiy67j9KN8IyeD7q7hcmqnJ1ddWmNt19ItGpNN64mnllmxUNFIOdOm6by97jlL6wfpTTJrmnjWAA==",
"license": "Apache-2.0",
"bin": {
"baseline-browser-mapping": "dist/cli.js"
"baseline-browser-mapping": "dist/cli.cjs"
},
"engines": {
"node": ">=6.0.0"
}
},
"node_modules/brace-expansion": {
@@ -4262,7 +4254,6 @@
}
],
"license": "MIT",
"peer": true,
"dependencies": {
"baseline-browser-mapping": "^2.8.25",
"caniuse-lite": "^1.0.30001754",
@@ -4277,15 +4268,6 @@
"node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
}
},
"node_modules/bser": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz",
"integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==",
"license": "Apache-2.0",
"dependencies": {
"node-int64": "^0.4.0"
}
},
"node_modules/busboy": {
"version": "1.6.0",
"resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz",
@@ -4632,15 +4614,6 @@
}
}
},
"node_modules/cross-fetch": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.2.0.tgz",
"integrity": "sha512-Q+xVJLoGOeIMXZmbUK4HYk+69cQH6LudR0Vu/pRm2YlU/hDV9CiS0gKUMaWY5f2NeUH9C1nV3bsTlCo0FsTV1Q==",
"license": "MIT",
"dependencies": {
"node-fetch": "^2.7.0"
}
},
"node_modules/cross-inspect": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/cross-inspect/-/cross-inspect-1.0.1.tgz",
@@ -4749,7 +4722,6 @@
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/date-fns/-/date-fns-4.1.0.tgz",
"integrity": "sha512-Ukq0owbQXxa/U3EGtsdVBkR1w7KOQ5gIBqdH2hkvknzZPYvBxb/aa6E8L7tmjFtkwZBu3UXBbjIgPo/Ez4xaNg==",
"peer": true,
"funding": {
"type": "github",
"url": "https://github.com/sponsors/kossnocorp"
@@ -5141,7 +5113,6 @@
"resolved": "https://registry.npmjs.org/eslint/-/eslint-9.25.1.tgz",
"integrity": "sha512-E6Mtz9oGQWDCpV12319d59n4tx9zOTXSTmc8BLVxBx+G/0RdM5MvEEJLU9c0+aleoePYYgVTOsRblx433qmhWQ==",
"dev": true,
"peer": true,
"dependencies": {
"@eslint-community/eslint-utils": "^4.2.0",
"@eslint-community/regexpp": "^4.12.1",
@@ -5348,7 +5319,6 @@
"integrity": "sha512-whOE1HFo/qJDyX4SnXzP4N6zOWn79WhnCUY/iDR0mPfQZO8wcYE4JClzI2oZrhBnnMUCBCHZhO6VQyoBU95mZA==",
"dev": true,
"license": "MIT",
"peer": true,
"dependencies": {
"@rtsao/scc": "^1.1.0",
"array-includes": "^3.1.9",
@@ -5695,36 +5665,6 @@
"reusify": "^1.0.4"
}
},
"node_modules/fb-watchman": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz",
"integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==",
"license": "Apache-2.0",
"dependencies": {
"bser": "2.1.1"
}
},
"node_modules/fbjs": {
"version": "3.0.5",
"resolved": "https://registry.npmjs.org/fbjs/-/fbjs-3.0.5.tgz",
"integrity": "sha512-ztsSx77JBtkuMrEypfhgc3cI0+0h+svqeie7xHbh1k/IKdcydnvadp/mUaGgjAOXQmQSxsqgaRhS3q9fy+1kxg==",
"license": "MIT",
"dependencies": {
"cross-fetch": "^3.1.5",
"fbjs-css-vars": "^1.0.0",
"loose-envify": "^1.0.0",
"object-assign": "^4.1.0",
"promise": "^7.1.1",
"setimmediate": "^1.0.5",
"ua-parser-js": "^1.0.35"
}
},
"node_modules/fbjs-css-vars": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/fbjs-css-vars/-/fbjs-css-vars-1.0.2.tgz",
"integrity": "sha512-b2XGFAFdWZWg0phtAWLHCk836A1Xann+I+Dgd3Gk64MHKZO44FfoD1KxyvbSh0qZsIoXQGGlVztIY+oitJPpRQ==",
"license": "MIT"
},
"node_modules/fetch-blob": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/fetch-blob/-/fetch-blob-3.2.0.tgz",
@@ -6044,11 +5984,10 @@
"license": "MIT"
},
"node_modules/graphql": {
"version": "16.12.0",
"resolved": "https://registry.npmjs.org/graphql/-/graphql-16.12.0.tgz",
"integrity": "sha512-DKKrynuQRne0PNpEbzuEdHlYOMksHSUI8Zc9Unei5gTsMNA2/vMpoMz/yKba50pejK56qj98qM0SjYxAKi13gQ==",
"version": "16.13.1",
"resolved": "https://registry.npmjs.org/graphql/-/graphql-16.13.1.tgz",
"integrity": "sha512-gGgrVCoDKlIZ8fIqXBBb0pPKqDgki0Z/FSKNiQzSGj2uEYHr1tq5wmBegGwJx6QB5S5cM0khSBpi/JFHMCvsmQ==",
"license": "MIT",
"peer": true,
"engines": {
"node": "^12.22.0 || ^14.16.0 || ^16.0.0 || >=17.0.0"
}
@@ -6269,13 +6208,10 @@
}
},
"node_modules/immutable": {
"version": "3.7.6",
"resolved": "https://registry.npmjs.org/immutable/-/immutable-3.7.6.tgz",
"integrity": "sha512-AizQPcaofEtO11RZhPPHBOJRdo/20MKQF9mBLnVkBoyHi1/zXK8fzVdnEpSV9gxqtnh6Qomfp3F0xT5qP/vThw==",
"license": "BSD-3-Clause",
"engines": {
"node": ">=0.8.0"
}
"version": "5.1.5",
"resolved": "https://registry.npmjs.org/immutable/-/immutable-5.1.5.tgz",
"integrity": "sha512-t7xcm2siw+hlUM68I+UEOK+z84RzmN59as9DZ7P1l0994DKUWV7UXBMQZVxaoMSRQ+PBZbHCOoBt7a2wxOMt+A==",
"license": "MIT"
},
"node_modules/import-fresh": {
"version": "3.3.1",
@@ -7427,7 +7363,6 @@
"resolved": "https://registry.npmjs.org/next/-/next-16.1.6.tgz",
"integrity": "sha512-hkyRkcu5x/41KoqnROkfTm2pZVbKxvbZRuNvKXLRXxs3VfyO0WhY50TQS40EuKO9SW3rBj/sF3WbVwDACeMZyw==",
"license": "MIT",
"peer": true,
"dependencies": {
"@next/env": "16.1.6",
"@swc/helpers": "0.5.15",
@@ -7533,28 +7468,16 @@
}
}
},
"node_modules/node-int64": {
"version": "0.4.0",
"resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz",
"integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==",
"license": "MIT"
},
"node_modules/node-releases": {
"version": "2.0.27",
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.27.tgz",
"integrity": "sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA==",
"license": "MIT"
},
"node_modules/nullthrows": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/nullthrows/-/nullthrows-1.1.1.tgz",
"integrity": "sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw==",
"license": "MIT"
},
"node_modules/nuqs": {
"version": "2.8.8",
"resolved": "https://registry.npmjs.org/nuqs/-/nuqs-2.8.8.tgz",
"integrity": "sha512-LF5sw9nWpHyPWzMMu9oho3r9C5DvkpmBIg4LQN78sexIzGaeRx8DWr0uy3YiFx5i2QGZN1Qqcb+OAtEVRa2bnA==",
"version": "2.8.9",
"resolved": "https://registry.npmjs.org/nuqs/-/nuqs-2.8.9.tgz",
"integrity": "sha512-8ou6AEwsxMWSYo2qkfZtYFVzngwbKmg4c00HVxC1fF6CEJv3Fwm6eoZmfVPALB+vw8Udo7KL5uy96PFcYe1BIQ==",
"license": "MIT",
"dependencies": {
"@standard-schema/spec": "1.0.0"
@@ -7967,20 +7890,10 @@
"node": ">= 0.8.0"
}
},
"node_modules/promise": {
"version": "7.3.1",
"resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz",
"integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==",
"license": "MIT",
"dependencies": {
"asap": "~2.0.3"
}
},
"node_modules/prop-types": {
"version": "15.8.1",
"resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz",
"integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==",
"dev": true,
"dependencies": {
"loose-envify": "^1.4.0",
"object-assign": "^4.1.1",
@@ -8020,7 +7933,6 @@
"resolved": "https://registry.npmjs.org/react/-/react-19.2.4.tgz",
"integrity": "sha512-9nfp2hYpCwOjAN+8TZFGhtWEwgvWHXqESH8qT89AT/lWklpLON22Lc8pEtnpsZz7VmawabSU0gCjnj8aC0euHQ==",
"license": "MIT",
"peer": true,
"engines": {
"node": ">=0.10.0"
}
@@ -8030,7 +7942,6 @@
"resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.2.4.tgz",
"integrity": "sha512-AXJdLo8kgMbimY95O2aKQqsz2iWi9jMgKJhRBAxECE4IFxfcazB2LmzloIoibJI3C12IlY20+KFaLv+71bUJeQ==",
"license": "MIT",
"peer": true,
"dependencies": {
"scheduler": "^0.27.0"
},
@@ -8039,9 +7950,9 @@
}
},
"node_modules/react-intersection-observer": {
"version": "10.0.2",
"resolved": "https://registry.npmjs.org/react-intersection-observer/-/react-intersection-observer-10.0.2.tgz",
"integrity": "sha512-lAMzxVWrBko6SLd1jx6l84fVrzJu91hpxHlvD2as2Wec9mDCjdYXwc5xNOFBchpeBir0Y7AGBW+C/AYMa7CSFg==",
"version": "10.0.3",
"resolved": "https://registry.npmjs.org/react-intersection-observer/-/react-intersection-observer-10.0.3.tgz",
"integrity": "sha512-luICLMbs0zxTO/70Zy7K5jOXkABPEVSAF8T3FdZUlctsrIaPLmx8TZe2SSA+CY2HGWfz2INyNTnp82pxNNsShA==",
"license": "MIT",
"peerDependencies": {
"react": "^17.0.0 || ^18.0.0 || ^19.0.0",
@@ -8056,8 +7967,26 @@
"node_modules/react-is": {
"version": "16.13.1",
"resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
"integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==",
"dev": true
"integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="
},
"node_modules/react-photo-sphere-viewer": {
"version": "6.2.3",
"resolved": "https://registry.npmjs.org/react-photo-sphere-viewer/-/react-photo-sphere-viewer-6.2.3.tgz",
"integrity": "sha512-VzG0aY9CI8OIQjdIoJCjYF1QlnLFpN2pM+zKm1JrpAKQrBZ6B+Uxy94vpVQkGDERgn8FWE0+LIntTgAr60pLyQ==",
"license": "MIT",
"dependencies": {
"eventemitter3": "^5.0.1"
},
"engines": {
"node": ">=16",
"npm": ">=8"
},
"peerDependencies": {
"@photo-sphere-viewer/core": ">=5.13.1",
"prop-types": "^15.5.4",
"react": ">=16.0.0",
"react-dom": ">=16.0.0"
}
},
"node_modules/readdirp": {
"version": "4.1.2",
@@ -8113,17 +8042,6 @@
"url": "https://github.com/sponsors/ljharb"
}
},
"node_modules/relay-runtime": {
"version": "12.0.0",
"resolved": "https://registry.npmjs.org/relay-runtime/-/relay-runtime-12.0.0.tgz",
"integrity": "sha512-QU6JKr1tMsry22DXNy9Whsq5rmvwr3LSZiiWV/9+DFpuTWvp+WFhobWMc8TC4OjKFfNhEZy7mOiqUAn5atQtug==",
"license": "MIT",
"dependencies": {
"@babel/runtime": "^7.0.0",
"fbjs": "^3.0.0",
"invariant": "^2.2.4"
}
},
"node_modules/remedial": {
"version": "1.0.8",
"resolved": "https://registry.npmjs.org/remedial/-/remedial-1.0.8.tgz",
@@ -8300,7 +8218,6 @@
"resolved": "https://registry.npmjs.org/sass/-/sass-1.97.3.tgz",
"integrity": "sha512-fDz1zJpd5GycprAbu4Q2PV/RprsRtKC/0z82z0JLgdytmcq0+ujJbJ/09bPGDxCLkKY3Np5cRAOcWiVkLXJURg==",
"license": "MIT",
"peer": true,
"dependencies": {
"chokidar": "^4.0.0",
"immutable": "^5.0.2",
@@ -8316,11 +8233,6 @@
"@parcel/watcher": "^2.4.1"
}
},
"node_modules/sass/node_modules/immutable": {
"version": "5.1.1",
"resolved": "https://registry.npmjs.org/immutable/-/immutable-5.1.1.tgz",
"integrity": "sha512-3jatXi9ObIsPGr3N5hGw/vWWcTkq6hUYhpQz4k0wLC+owqWi/LiugIw9x0EdNZ2yGedKN/HzePiBvaJRXa0Ujg=="
},
"node_modules/scheduler": {
"version": "0.27.0",
"resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.27.0.tgz",
@@ -8396,12 +8308,6 @@
"node": ">= 0.4"
}
},
"node_modules/setimmediate": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz",
"integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==",
"license": "MIT"
},
"node_modules/sharp": {
"version": "0.34.5",
"resolved": "https://registry.npmjs.org/sharp/-/sharp-0.34.5.tgz",
@@ -8559,12 +8465,6 @@
"url": "https://github.com/sponsors/isaacs"
}
},
"node_modules/signedsource": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/signedsource/-/signedsource-1.0.0.tgz",
"integrity": "sha512-6+eerH9fEnNmi/hyM1DXcRK3pWdoMQtlkQ+ns0ntzunjKqp5i3sKCc80ym8Fib3iaYhdJUOPdhlJWj1tvge2Ww==",
"license": "BSD-3-Clause"
},
"node_modules/slash": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz",
@@ -8888,9 +8788,9 @@
}
},
"node_modules/swiper": {
"version": "12.1.0",
"resolved": "https://registry.npmjs.org/swiper/-/swiper-12.1.0.tgz",
"integrity": "sha512-BD4CpAOOyEvZ2f0CDx362ea+vmOwukVcmbsQx+0BhRIaBUz8wvcCd//E7RFmvBZCrfyqXCHUVqmgUwts6ywlxw==",
"version": "12.1.2",
"resolved": "https://registry.npmjs.org/swiper/-/swiper-12.1.2.tgz",
"integrity": "sha512-4gILrI3vXZqoZh71I1PALqukCFgk+gpOwe1tOvz5uE9kHtl2gTDzmYflYCwWvR4LOvCrJi6UEEU+gnuW5BtkgQ==",
"funding": [
{
"type": "patreon",
@@ -8938,6 +8838,13 @@
"url": "https://opencollective.com/node-fetch"
}
},
"node_modules/three": {
"version": "0.179.1",
"resolved": "https://registry.npmjs.org/three/-/three-0.179.1.tgz",
"integrity": "sha512-5y/elSIQbrvKOISxpwXCR4sQqHtGiOI+MKLc3SsBdDXA2hz3Mdp3X59aUp8DyybMa34aeBwbFTpdoLJaUDEWSw==",
"license": "MIT",
"peer": true
},
"node_modules/timeout-signal": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/timeout-signal/-/timeout-signal-2.0.0.tgz",
@@ -8982,7 +8889,6 @@
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz",
"integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==",
"dev": true,
"peer": true,
"engines": {
"node": ">=12"
},
@@ -9141,7 +9047,6 @@
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.4.5.tgz",
"integrity": "sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==",
"devOptional": true,
"peer": true,
"bin": {
"tsc": "bin/tsc",
"tsserver": "bin/tsserver"
@@ -9174,32 +9079,6 @@
"typescript": ">=4.8.4 <6.0.0"
}
},
"node_modules/ua-parser-js": {
"version": "1.0.41",
"resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-1.0.41.tgz",
"integrity": "sha512-LbBDqdIC5s8iROCUjMbW1f5dJQTEFB1+KO9ogbvlb3nm9n4YHa5p4KTvFPWvh2Hs8gZMBuiB1/8+pdfe/tDPug==",
"funding": [
{
"type": "opencollective",
"url": "https://opencollective.com/ua-parser-js"
},
{
"type": "paypal",
"url": "https://paypal.me/faisalman"
},
{
"type": "github",
"url": "https://github.com/sponsors/faisalman"
}
],
"license": "MIT",
"bin": {
"ua-parser-js": "script/cli.js"
},
"engines": {
"node": "*"
}
},
"node_modules/unbox-primitive": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz",
@@ -9354,7 +9233,6 @@
"resolved": "https://registry.npmjs.org/urql/-/urql-5.0.1.tgz",
"integrity": "sha512-r58gYlWvCTC19QvkTaARaCLV9/bp870byH/qbLaw3S7f8i/bC6x2Szub8RVXptiMxWmqq5dyVBjUL9G+xPEuqg==",
"license": "MIT",
"peer": true,
"dependencies": {
"@urql/core": "^6.0.1",
"wonka": "^6.3.2"
@@ -9541,7 +9419,6 @@
"resolved": "https://registry.npmjs.org/ws/-/ws-8.18.3.tgz",
"integrity": "sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==",
"license": "MIT",
"peer": true,
"engines": {
"node": ">=10.0.0"
},
@@ -9604,7 +9481,6 @@
"integrity": "sha512-JInaHOamG8pt5+Ey8kGmdcAcg3OL9reK8ltczgHTAwNhMys/6ThXHityHxVV2p3fkw/c+MAvBHFVYHFZDmjMCQ==",
"dev": true,
"license": "MIT",
"peer": true,
"funding": {
"url": "https://github.com/sponsors/colinhacks"
}
+11 -10
View File
@@ -10,36 +10,37 @@
"codegen": "graphql-codegen"
},
"dependencies": {
"@graphql-codegen/cli": "^6.1.1",
"@graphql-codegen/client-preset": "^5.2.2",
"@graphql-codegen/cli": "^6.1.2",
"@graphql-codegen/client-preset": "^5.2.3",
"@parcel/watcher": "^2.5.6",
"@sindresorhus/slugify": "^3.0.0",
"@urql/next": "^2.0.0",
"date-fns": "^4.1.0",
"date-fns-tz": "^3.2.0",
"graphql": "^16.12.0",
"next": "16.1.6",
"nuqs": "^2.8.8",
"graphql": "^16.13.1",
"next": "^16.1.6",
"nuqs": "^2.8.9",
"react": "19.2.4",
"react-dom": "19.2.4",
"react-intersection-observer": "^10.0.2",
"react-intersection-observer": "^10.0.3",
"react-photo-sphere-viewer": "^6.2.3",
"sass": "^1.97.3",
"sharp": "^0.34.5",
"swiper": "^12.1.0",
"swiper": "^12.1.2",
"urql": "^5.0.1",
"use-debounce": "^10.1.0"
},
"devDependencies": {
"@types/node": "^24",
"@types/react": "19.2.11",
"@types/react": "19.2.14",
"@types/react-dom": "19.2.3",
"baseline-browser-mapping": "^2.9.19",
"baseline-browser-mapping": "^2.10.0",
"eslint": "^9",
"eslint-config-next": "16.1.6",
"typescript": "^5"
},
"overrides": {
"@types/react": "19.2.11",
"@types/react": "19.2.14",
"@types/react-dom": "19.2.3"
}
}
+4
View File
@@ -6,6 +6,7 @@ import { FeaturedBlock } from "./FeaturedBlock";
import { AccordionBlock } from "./AccordionBlock";
import { EmbedBlock } from "./EmbedBlock";
import { FactBoxBlock } from "./FactBoxBlock";
import { PhotoSphereBlock } from "./PhotoSphereBlock";
import { PageSectionBlock, PageSectionNavigationBlock } from "./PageSection";
import { ContactSectionBlock, ContactSubsectionBlock } from "./ContactSection";
import { ContactListBlock } from "./ContactListBlock";
@@ -44,6 +45,9 @@ export const Blocks = ({ blocks, pageContent }: { blocks: any, pageContent?: boo
case "FactBoxBlock":
return <FactBoxBlock key={block.id} block={block} />;
break;
case "PhotoSphereBlock":
return <PhotoSphereBlock key={block.id} block={block} />;
break;
case "PageSectionBlock":
return <PageSectionBlock key={block.id} block={block} />;
break;
@@ -0,0 +1,65 @@
"use client";
import dynamic from "next/dynamic";
import { PhotoSphereBlock as PhotoSphereBlockType } from "@/gql/graphql";
import styles from "./photoSphereBlock.module.scss";
const ReactPhotoSphereViewer = dynamic(
() =>
import("react-photo-sphere-viewer").then(
(mod) => mod.ReactPhotoSphereViewer
),
{
ssr: false,
loading: () => (
<div className={styles.loading} aria-busy="true" aria-label="Laster 360°-bilde">
<span className={styles.loadingText}>Laster 360°-bilde</span>
</div>
),
}
);
type PhotoSphereBlockTypeWithAlias = PhotoSphereBlockType & {
photoSphereImage?: PhotoSphereBlockType["image"];
photoSphereTitle?: string | null;
};
export const PhotoSphereBlock = ({
block,
}: {
block: PhotoSphereBlockTypeWithAlias;
}) => {
const image = block.photoSphereImage ?? block.image;
if (!image?.url) {
return <></>;
}
return (
<figure className={styles.photoSphereWrapper}>
<div
className={styles.photoSphereViewer}
role="img"
aria-label={block.photoSphereTitle ?? image.alt ?? "360°-bilde"}
>
<ReactPhotoSphereViewer
src={image.url}
height="500px"
width="100%"
navbar={["zoom", "fullscreen"]}
littlePlanet={false}
touchmoveTwoFingers
/>
<noscript>
{/* eslint-disable-next-line @next/next/no-img-element */}
<img
src={image.url}
alt={block.photoSphereTitle ?? image.alt ?? "360°-bilde"}
className={styles.fallbackImage}
/>
</noscript>
</div>
{block.photoSphereTitle && <figcaption>{block.photoSphereTitle}</figcaption>}
</figure>
);
};
@@ -0,0 +1,42 @@
.photoSphereWrapper {
max-width: var(--size-width-p);
margin: 0 auto var(--spacing-m);
}
.photoSphereViewer {
width: 100%;
overflow: hidden;
border-radius: 2px;
background: var(--color-betongGray);
position: relative;
}
.loading {
display: flex;
align-items: center;
justify-content: center;
height: 500px;
width: 100%;
background: var(--color-background-secondary);
}
.loadingText {
font-size: var(--font-size-body);
color: var(--color-text-secondary, currentColor);
}
.photoSphereWrapper figcaption {
width: 100%;
max-width: var(--size-width-p);
margin: 0 auto;
padding: var(--spacing-xs) 0 var(--spacing-s);
font-size: var(--font-size-caption);
line-height: 1.4;
opacity: .8;
}
.fallbackImage {
width: 100%;
height: auto;
display: block;
}
+3 -3
View File
@@ -40,7 +40,7 @@ type Documents = {
"\n fragment SponsorsPage on SponsorsPage {\n ... on SponsorsPage {\n title\n seoTitle\n searchDescription\n lead\n body {\n ...Blocks\n }\n sponsors {\n ... on SponsorBlock {\n id\n name\n logo {\n ...Image\n }\n text\n website\n }\n }\n }\n }\n": typeof types.SponsorsPageFragmentDoc,
"\n query venueRentalIndex {\n index: venueRentalIndex {\n ... on VenueRentalIndex {\n ...VenueRentalIndex\n }\n }\n venues: pages(contentType: \"venues.VenuePage\", limit: 100) {\n ... on VenuePage {\n ...Venue\n }\n }\n }\n": typeof types.VenueRentalIndexDocument,
"\n fragment VenueRentalIndex on VenueRentalIndex {\n ... on VenueRentalIndex {\n title\n seoTitle\n searchDescription\n lead\n body {\n ...Blocks\n }\n }\n }\n": typeof types.VenueRentalIndexFragmentDoc,
"\n fragment LeafBlocks on StreamFieldInterface {\n id\n blockType\n field\n ... on RichTextBlock {\n rawValue\n value\n }\n ... on ImageWithTextBlock {\n image {\n ...Image\n }\n imageFormat\n text\n }\n ... on ImageSliderBlock {\n images {\n ... on ImageSliderItemBlock {\n image {\n ...Image\n }\n text\n }\n }\n }\n ... on HorizontalRuleBlock {\n color\n }\n ... on FeaturedBlock {\n title\n featuredBlockText: text\n linkText\n imagePosition\n backgroundColor\n featuredPage {\n contentType\n pageType\n url\n ... on EventPage {\n featuredImage {\n ...Image\n }\n }\n ... on NewsPage {\n featuredImage {\n ...Image\n }\n }\n }\n featuredImageOverride {\n ...Image\n }\n }\n ... on ContactListBlock {\n items {\n blockType\n ... on ContactEntityBlock {\n contactEntity {\n ...ContactEntity\n }\n }\n }\n }\n ... on EmbedBlock {\n url\n embed\n rawEmbed\n }\n ... on FactBoxBlock {\n backgroundColor\n factBoxBody: body\n }\n }\n": typeof types.LeafBlocksFragmentDoc,
"\n fragment LeafBlocks on StreamFieldInterface {\n id\n blockType\n field\n ... on RichTextBlock {\n rawValue\n value\n }\n ... on ImageWithTextBlock {\n image {\n ...Image\n }\n imageFormat\n text\n }\n ... on ImageSliderBlock {\n images {\n ... on ImageSliderItemBlock {\n image {\n ...Image\n }\n text\n }\n }\n }\n ... on HorizontalRuleBlock {\n color\n }\n ... on FeaturedBlock {\n title\n featuredBlockText: text\n linkText\n imagePosition\n backgroundColor\n featuredPage {\n contentType\n pageType\n url\n ... on EventPage {\n featuredImage {\n ...Image\n }\n }\n ... on NewsPage {\n featuredImage {\n ...Image\n }\n }\n }\n featuredImageOverride {\n ...Image\n }\n }\n ... on ContactListBlock {\n items {\n blockType\n ... on ContactEntityBlock {\n contactEntity {\n ...ContactEntity\n }\n }\n }\n }\n ... on EmbedBlock {\n url\n embed\n rawEmbed\n }\n ... on FactBoxBlock {\n backgroundColor\n factBoxBody: body\n }\n ... on PhotoSphereBlock {\n photoSphereImage: image {\n ...Image\n }\n photoSphereTitle: title\n }\n }\n": typeof types.LeafBlocksFragmentDoc,
"\n fragment OneLevelOfBlocks on StreamFieldInterface {\n ...LeafBlocks\n ... on AccordionBlock {\n heading\n body {\n ...LeafBlocks\n }\n }\n ... on PageSectionBlock {\n title\n backgroundColor\n icon\n body {\n ...LeafBlocks\n }\n }\n }\n": typeof types.OneLevelOfBlocksFragmentDoc,
"\n fragment Blocks on StreamFieldInterface {\n ... on AccordionBlock {\n heading\n body {\n ...OneLevelOfBlocks\n }\n }\n ... on PageSectionBlock {\n title\n backgroundColor\n icon\n body {\n ...OneLevelOfBlocks\n }\n }\n ... on ContactSectionBlock {\n title\n text\n blocks {\n ... on ContactSubsectionBlock {\n title\n text\n blocks {\n ...OneLevelOfBlocks\n }\n }\n ...OneLevelOfBlocks\n }\n }\n ...OneLevelOfBlocks\n }\n": typeof types.BlocksFragmentDoc,
"\n fragment Image on CustomImage {\n id\n url\n width\n height\n alt\n attribution\n }\n": typeof types.ImageFragmentDoc,
@@ -84,7 +84,7 @@ const documents: Documents = {
"\n fragment SponsorsPage on SponsorsPage {\n ... on SponsorsPage {\n title\n seoTitle\n searchDescription\n lead\n body {\n ...Blocks\n }\n sponsors {\n ... on SponsorBlock {\n id\n name\n logo {\n ...Image\n }\n text\n website\n }\n }\n }\n }\n": types.SponsorsPageFragmentDoc,
"\n query venueRentalIndex {\n index: venueRentalIndex {\n ... on VenueRentalIndex {\n ...VenueRentalIndex\n }\n }\n venues: pages(contentType: \"venues.VenuePage\", limit: 100) {\n ... on VenuePage {\n ...Venue\n }\n }\n }\n": types.VenueRentalIndexDocument,
"\n fragment VenueRentalIndex on VenueRentalIndex {\n ... on VenueRentalIndex {\n title\n seoTitle\n searchDescription\n lead\n body {\n ...Blocks\n }\n }\n }\n": types.VenueRentalIndexFragmentDoc,
"\n fragment LeafBlocks on StreamFieldInterface {\n id\n blockType\n field\n ... on RichTextBlock {\n rawValue\n value\n }\n ... on ImageWithTextBlock {\n image {\n ...Image\n }\n imageFormat\n text\n }\n ... on ImageSliderBlock {\n images {\n ... on ImageSliderItemBlock {\n image {\n ...Image\n }\n text\n }\n }\n }\n ... on HorizontalRuleBlock {\n color\n }\n ... on FeaturedBlock {\n title\n featuredBlockText: text\n linkText\n imagePosition\n backgroundColor\n featuredPage {\n contentType\n pageType\n url\n ... on EventPage {\n featuredImage {\n ...Image\n }\n }\n ... on NewsPage {\n featuredImage {\n ...Image\n }\n }\n }\n featuredImageOverride {\n ...Image\n }\n }\n ... on ContactListBlock {\n items {\n blockType\n ... on ContactEntityBlock {\n contactEntity {\n ...ContactEntity\n }\n }\n }\n }\n ... on EmbedBlock {\n url\n embed\n rawEmbed\n }\n ... on FactBoxBlock {\n backgroundColor\n factBoxBody: body\n }\n }\n": types.LeafBlocksFragmentDoc,
"\n fragment LeafBlocks on StreamFieldInterface {\n id\n blockType\n field\n ... on RichTextBlock {\n rawValue\n value\n }\n ... on ImageWithTextBlock {\n image {\n ...Image\n }\n imageFormat\n text\n }\n ... on ImageSliderBlock {\n images {\n ... on ImageSliderItemBlock {\n image {\n ...Image\n }\n text\n }\n }\n }\n ... on HorizontalRuleBlock {\n color\n }\n ... on FeaturedBlock {\n title\n featuredBlockText: text\n linkText\n imagePosition\n backgroundColor\n featuredPage {\n contentType\n pageType\n url\n ... on EventPage {\n featuredImage {\n ...Image\n }\n }\n ... on NewsPage {\n featuredImage {\n ...Image\n }\n }\n }\n featuredImageOverride {\n ...Image\n }\n }\n ... on ContactListBlock {\n items {\n blockType\n ... on ContactEntityBlock {\n contactEntity {\n ...ContactEntity\n }\n }\n }\n }\n ... on EmbedBlock {\n url\n embed\n rawEmbed\n }\n ... on FactBoxBlock {\n backgroundColor\n factBoxBody: body\n }\n ... on PhotoSphereBlock {\n photoSphereImage: image {\n ...Image\n }\n photoSphereTitle: title\n }\n }\n": types.LeafBlocksFragmentDoc,
"\n fragment OneLevelOfBlocks on StreamFieldInterface {\n ...LeafBlocks\n ... on AccordionBlock {\n heading\n body {\n ...LeafBlocks\n }\n }\n ... on PageSectionBlock {\n title\n backgroundColor\n icon\n body {\n ...LeafBlocks\n }\n }\n }\n": types.OneLevelOfBlocksFragmentDoc,
"\n fragment Blocks on StreamFieldInterface {\n ... on AccordionBlock {\n heading\n body {\n ...OneLevelOfBlocks\n }\n }\n ... on PageSectionBlock {\n title\n backgroundColor\n icon\n body {\n ...OneLevelOfBlocks\n }\n }\n ... on ContactSectionBlock {\n title\n text\n blocks {\n ... on ContactSubsectionBlock {\n title\n text\n blocks {\n ...OneLevelOfBlocks\n }\n }\n ...OneLevelOfBlocks\n }\n }\n ...OneLevelOfBlocks\n }\n": types.BlocksFragmentDoc,
"\n fragment Image on CustomImage {\n id\n url\n width\n height\n alt\n attribution\n }\n": types.ImageFragmentDoc,
@@ -223,7 +223,7 @@ export function graphql(source: "\n fragment VenueRentalIndex on VenueRentalInd
/**
* The graphql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.
*/
export function graphql(source: "\n fragment LeafBlocks on StreamFieldInterface {\n id\n blockType\n field\n ... on RichTextBlock {\n rawValue\n value\n }\n ... on ImageWithTextBlock {\n image {\n ...Image\n }\n imageFormat\n text\n }\n ... on ImageSliderBlock {\n images {\n ... on ImageSliderItemBlock {\n image {\n ...Image\n }\n text\n }\n }\n }\n ... on HorizontalRuleBlock {\n color\n }\n ... on FeaturedBlock {\n title\n featuredBlockText: text\n linkText\n imagePosition\n backgroundColor\n featuredPage {\n contentType\n pageType\n url\n ... on EventPage {\n featuredImage {\n ...Image\n }\n }\n ... on NewsPage {\n featuredImage {\n ...Image\n }\n }\n }\n featuredImageOverride {\n ...Image\n }\n }\n ... on ContactListBlock {\n items {\n blockType\n ... on ContactEntityBlock {\n contactEntity {\n ...ContactEntity\n }\n }\n }\n }\n ... on EmbedBlock {\n url\n embed\n rawEmbed\n }\n ... on FactBoxBlock {\n backgroundColor\n factBoxBody: body\n }\n }\n"): (typeof documents)["\n fragment LeafBlocks on StreamFieldInterface {\n id\n blockType\n field\n ... on RichTextBlock {\n rawValue\n value\n }\n ... on ImageWithTextBlock {\n image {\n ...Image\n }\n imageFormat\n text\n }\n ... on ImageSliderBlock {\n images {\n ... on ImageSliderItemBlock {\n image {\n ...Image\n }\n text\n }\n }\n }\n ... on HorizontalRuleBlock {\n color\n }\n ... on FeaturedBlock {\n title\n featuredBlockText: text\n linkText\n imagePosition\n backgroundColor\n featuredPage {\n contentType\n pageType\n url\n ... on EventPage {\n featuredImage {\n ...Image\n }\n }\n ... on NewsPage {\n featuredImage {\n ...Image\n }\n }\n }\n featuredImageOverride {\n ...Image\n }\n }\n ... on ContactListBlock {\n items {\n blockType\n ... on ContactEntityBlock {\n contactEntity {\n ...ContactEntity\n }\n }\n }\n }\n ... on EmbedBlock {\n url\n embed\n rawEmbed\n }\n ... on FactBoxBlock {\n backgroundColor\n factBoxBody: body\n }\n }\n"];
export function graphql(source: "\n fragment LeafBlocks on StreamFieldInterface {\n id\n blockType\n field\n ... on RichTextBlock {\n rawValue\n value\n }\n ... on ImageWithTextBlock {\n image {\n ...Image\n }\n imageFormat\n text\n }\n ... on ImageSliderBlock {\n images {\n ... on ImageSliderItemBlock {\n image {\n ...Image\n }\n text\n }\n }\n }\n ... on HorizontalRuleBlock {\n color\n }\n ... on FeaturedBlock {\n title\n featuredBlockText: text\n linkText\n imagePosition\n backgroundColor\n featuredPage {\n contentType\n pageType\n url\n ... on EventPage {\n featuredImage {\n ...Image\n }\n }\n ... on NewsPage {\n featuredImage {\n ...Image\n }\n }\n }\n featuredImageOverride {\n ...Image\n }\n }\n ... on ContactListBlock {\n items {\n blockType\n ... on ContactEntityBlock {\n contactEntity {\n ...ContactEntity\n }\n }\n }\n }\n ... on EmbedBlock {\n url\n embed\n rawEmbed\n }\n ... on FactBoxBlock {\n backgroundColor\n factBoxBody: body\n }\n ... on PhotoSphereBlock {\n photoSphereImage: image {\n ...Image\n }\n photoSphereTitle: title\n }\n }\n"): (typeof documents)["\n fragment LeafBlocks on StreamFieldInterface {\n id\n blockType\n field\n ... on RichTextBlock {\n rawValue\n value\n }\n ... on ImageWithTextBlock {\n image {\n ...Image\n }\n imageFormat\n text\n }\n ... on ImageSliderBlock {\n images {\n ... on ImageSliderItemBlock {\n image {\n ...Image\n }\n text\n }\n }\n }\n ... on HorizontalRuleBlock {\n color\n }\n ... on FeaturedBlock {\n title\n featuredBlockText: text\n linkText\n imagePosition\n backgroundColor\n featuredPage {\n contentType\n pageType\n url\n ... on EventPage {\n featuredImage {\n ...Image\n }\n }\n ... on NewsPage {\n featuredImage {\n ...Image\n }\n }\n }\n featuredImageOverride {\n ...Image\n }\n }\n ... on ContactListBlock {\n items {\n blockType\n ... on ContactEntityBlock {\n contactEntity {\n ...ContactEntity\n }\n }\n }\n }\n ... on EmbedBlock {\n url\n embed\n rawEmbed\n }\n ... on FactBoxBlock {\n backgroundColor\n factBoxBody: body\n }\n ... on PhotoSphereBlock {\n photoSphereImage: image {\n ...Image\n }\n photoSphereTitle: title\n }\n }\n"];
/**
* The graphql function is used to parse GraphQL queries into a document that can be used by GraphQL clients.
*/
+134 -26
View File
File diff suppressed because one or more lines are too long
+6
View File
@@ -164,6 +164,12 @@ const LeafBlocksFragmentDefinition = graphql(`
backgroundColor
factBoxBody: body
}
... on PhotoSphereBlock {
photoSphereImage: image {
...Image
}
photoSphereTitle: title
}
}
`);