Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release 2023-11-02 #55

Merged
merged 67 commits into from
Nov 2, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
67 commits
Select commit Hold shift + click to select a range
fde8bad
update Blitz and Next
JohannaPeanut Oct 16, 2023
b9e645e
remove getAdminStatus and replace with blitz's Page.authenticate = { …
JohannaPeanut Oct 16, 2023
bf42b75
add LabeledTextFieldFormat
JohannaPeanut Oct 16, 2023
aa16402
add unit to LabeledTextFieldFormat
JohannaPeanut Oct 17, 2023
223b33c
Admin/Subsections: add multiple create for subsection in /admin
JohannaPeanut Oct 17, 2023
2530c9e
add page /number as working example for #1026
elsueno Oct 18, 2023
d0ffae2
Admin/Subsection: add SubsectionTableAdmin, replace table
JohannaPeanut Oct 18, 2023
dd6c56f
Admin/Project: add field for felt url
JohannaPeanut Oct 18, 2023
251b461
Admin/Subsection: update subsections with felt data
JohannaPeanut Oct 18, 2023
784a0bd
handle deletion of comma properly
elsueno Oct 19, 2023
21fafe6
clean up
JohannaPeanut Oct 20, 2023
fd86834
Admin/Subsection: update authorization
JohannaPeanut Oct 20, 2023
9cbe63b
Admin/Subsection: refetch data and update UI after updating subsections
JohannaPeanut Oct 20, 2023
077deae
Subsection/Form: make start, end, geometry field readonly in edit for…
JohannaPeanut Oct 20, 2023
71650c2
Import bike network geometries from Felt (#53)
JohannaPeanut Oct 20, 2023
d240394
add and use <LabeledCurrencyField>
elsueno Oct 20, 2023
a149b54
Merge branch 'format-num-input' into develop
elsueno Oct 20, 2023
7e8ce4b
Admin/Subsection: clean up and update styling
JohannaPeanut Oct 20, 2023
507c259
Admin/Subsection: upfate default prefix
JohannaPeanut Oct 20, 2023
c9a8040
Admin/Subsection: include delete button and edit link in table
JohannaPeanut Oct 20, 2023
2273e6d
Admin/Subsection: fix nullish url validation
JohannaPeanut Oct 20, 2023
45e663b
clean up
JohannaPeanut Oct 20, 2023
f5d3c4b
Subsubsection: add fields trafficLoad, traffciloadDate, maxSpeed
JohannaPeanut Oct 23, 2023
8fd07d1
Subsubsection: add fields cost estimation
JohannaPeanut Oct 23, 2023
e0394a3
uninstall unused package
JohannaPeanut Oct 24, 2023
6df4a58
QualityLevel: update url
JohannaPeanut Oct 24, 2023
0baaa36
QualityLevel: fix wording
JohannaPeanut Oct 24, 2023
d70e3ff
SubsubsectionStatus: add model, add field in subsubsection
JohannaPeanut Oct 25, 2023
eaed485
Subsection: update schema for start / end
JohannaPeanut Oct 25, 2023
cc3c1f6
Project: update url structure felt url
JohannaPeanut Oct 25, 2023
9b52ccb
fix texts
JohannaPeanut Oct 25, 2023
53ec28c
Subsection: fix schema for bulk mode
JohannaPeanut Oct 25, 2023
8035f21
LabeledTextfield: add prop for leading inline addon
JohannaPeanut Oct 25, 2023
7e9cf60
clean up
JohannaPeanut Oct 25, 2023
853a19c
Subsection: fix 'pa' as prefix for pa slug
JohannaPeanut Oct 25, 2023
4f741e6
clean up
JohannaPeanut Oct 25, 2023
baf3549
Subsection: add custom error field for wrong felt url in bulk mode
JohannaPeanut Oct 25, 2023
3cee277
fix
JohannaPeanut Oct 25, 2023
9e477eb
fix text, clean up
JohannaPeanut Oct 26, 2023
9a1658c
Subsection: add link to project on admin bulk mode page
JohannaPeanut Oct 27, 2023
5f8ce73
Subsection: update schema, int to float fields
JohannaPeanut Oct 27, 2023
40ef9e0
Subsection/Form: update wording, destructuring of props
JohannaPeanut Oct 27, 2023
abbe352
Form/DB: add shared zod schema for numeric nullable input fields
JohannaPeanut Oct 27, 2023
a159d4c
Subsection/Form: update prop readonly fields
JohannaPeanut Oct 27, 2023
05e4378
Core: fix formatting functions
JohannaPeanut Oct 27, 2023
ec587cf
Form: rename LabeledFormatNumberField, add configuration for decimal …
JohannaPeanut Oct 27, 2023
5388311
Subsubsection/Form: use LabeledFormatNumberField
JohannaPeanut Oct 27, 2023
5dacc64
clean up
JohannaPeanut Oct 27, 2023
80cc3e9
Use shortTitle instead of css to be consistent
tordans Sep 20, 2023
4206f8f
Change command `postdev` (which runs after `npm run dev`) to stop doc…
tordans Oct 30, 2023
729b7c9
Admin/Subsection: replace API
JohannaPeanut Oct 30, 2023
4311ffc
Admin/Subsection: add Zod validation for API response, return updated…
JohannaPeanut Oct 30, 2023
223a5c9
update Blitz and Next
JohannaPeanut Oct 16, 2023
fff5cb9
remove getAdminStatus and replace with blitz's Page.authenticate = { …
JohannaPeanut Oct 16, 2023
090bb64
Update blitz and next, refactor Admin authorization (#54)
JohannaPeanut Oct 30, 2023
4c7a4cf
Merge branch 'refactor-admin-auth' into develop
JohannaPeanut Oct 31, 2023
151a9af
remove workaround
JohannaPeanut Oct 31, 2023
d3074ff
Admin/Subsection: authorization
JohannaPeanut Oct 31, 2023
bcc40da
Admin/Subsection: mark felt updated subsections in UI
JohannaPeanut Oct 31, 2023
555867c
Update package-lock.json
JohannaPeanut Oct 31, 2023
df3de24
fix
JohannaPeanut Oct 31, 2023
ad41515
Admin/Subsection: update workflows
JohannaPeanut Oct 31, 2023
f439726
Form/DB: clean up, comment for shared InputNumberOrNullSchema
JohannaPeanut Oct 31, 2023
1961b49
fix deployment workflow
JohannaPeanut Nov 1, 2023
7333f3e
Admin/Subsection: transform multilinestring from felt api response
JohannaPeanut Nov 1, 2023
faefd95
Project/Form: add help text
JohannaPeanut Nov 1, 2023
0f92657
Admin/Subsection: disable button while API fetch
JohannaPeanut Nov 1, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .env.local.example
Original file line number Diff line number Diff line change
Expand Up @@ -19,3 +19,6 @@ S3_UPLOAD_BUCKET=trassenscout
S3_UPLOAD_KEY=AAAAAAAAAAAAAAAAAAAA
S3_UPLOAD_REGION=eu-central-1
S3_UPLOAD_SECRET=AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

# Get from https://felt.com/ => Settings
FELT_TOKEN=felt_pat_AAAAAAAAAAAAAAAAAAAAAA
3 changes: 2 additions & 1 deletion .github/workflows/deploy-app-production.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,12 +15,13 @@ jobs:
secrets:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
DATABASE_URL: ${{ secrets.DATABASE_URL_PRODUCTION }}
DATABASE_URL: ${{ secrets.DATABASE_URL_PRODUCTION }}
SESSION_SECRET_KEY: ${{ secrets.SESSION_SECRET_KEY_PRODUCTION }}
NGINX_HTPASSWD: ${{ secrets.NGINX_HTPASSWD }}
MAILJET_APIKEY_PUBLIC: ${{ secrets.MAILJET_APIKEY_PUBLIC }}
MAILJET_APIKEY_PRIVATE: ${{ secrets.MAILJET_APIKEY_PRIVATE }}
S3_UPLOAD_KEY: ${{ secrets.S3_UPLOAD_KEY }}
S3_UPLOAD_SECRET: ${{ secrets.S3_UPLOAD_SECRET }}
FELT_TOKEN: ${{ secrets.FELT_TOKEN }}
ASSETS_BUCKET_HOST: ${{ secrets.ASSETS_BUCKET_HOST }}
ASSETS_BUCKET_PATH: ${{ secrets.ASSETS_BUCKET_PATH_PRODUCTION }}
3 changes: 2 additions & 1 deletion .github/workflows/deploy-app-staging.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,12 +15,13 @@ jobs:
secrets:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
DATABASE_URL: ${{ secrets.DATABASE_URL_STAGING }}
DATABASE_URL: ${{ secrets.DATABASE_URL_STAGING }}
SESSION_SECRET_KEY: ${{ secrets.SESSION_SECRET_KEY_STAGING }}
NGINX_HTPASSWD: ${{ secrets.NGINX_HTPASSWD }}
MAILJET_APIKEY_PUBLIC: ${{ secrets.MAILJET_APIKEY_PUBLIC }}
MAILJET_APIKEY_PRIVATE: ${{ secrets.MAILJET_APIKEY_PRIVATE }}
S3_UPLOAD_KEY: ${{ secrets.S3_UPLOAD_KEY }}
FELT_TOKEN: ${{ secrets.FELT_TOKEN }}
S3_UPLOAD_SECRET: ${{ secrets.S3_UPLOAD_SECRET }}
ASSETS_BUCKET_HOST: ${{ secrets.ASSETS_BUCKET_HOST }}
ASSETS_BUCKET_PATH: ${{ secrets.ASSETS_BUCKET_PATH_STAGING }}
3 changes: 2 additions & 1 deletion .github/workflows/deploy-app-tinkering.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,12 +15,13 @@ jobs:
secrets:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
DATABASE_URL: ${{ secrets.DATABASE_URL_TINKERING }}
DATABASE_URL: ${{ secrets.DATABASE_URL_TINKERING }}
SESSION_SECRET_KEY: ${{ secrets.SESSION_SECRET_KEY_TINKERING }}
NGINX_HTPASSWD: ${{ secrets.NGINX_HTPASSWD }}
MAILJET_APIKEY_PUBLIC: ${{ secrets.MAILJET_APIKEY_PUBLIC }}
MAILJET_APIKEY_PRIVATE: ${{ secrets.MAILJET_APIKEY_PRIVATE }}
S3_UPLOAD_KEY: ${{ secrets.S3_UPLOAD_KEY }}
S3_UPLOAD_SECRET: ${{ secrets.S3_UPLOAD_SECRET }}
FELT_TOKEN: ${{ secrets.FELT_TOKEN }}
ASSETS_BUCKET_HOST: ${{ secrets.ASSETS_BUCKET_HOST }}
ASSETS_BUCKET_PATH: ${{ secrets.ASSETS_BUCKET_PATH_TINKERING }}
4 changes: 3 additions & 1 deletion .github/workflows/deploy-app.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,8 @@ on:
required: true
S3_UPLOAD_SECRET:
required: true
FELT_TOKEN:
required: true
ASSETS_BUCKET_HOST:
required: true
ASSETS_BUCKET_PATH:
Expand All @@ -45,7 +47,6 @@ jobs:
build-push-deploy-docker-images:
runs-on: ubuntu-latest
steps:

- uses: actions/checkout@v3

- name: Upgrade AWS CLI version and setup lightsailctl
Expand Down Expand Up @@ -115,6 +116,7 @@ jobs:
S3_UPLOAD_BUCKET: ${{ inputs.S3_UPLOAD_BUCKET }}
S3_UPLOAD_REGION: ${{ inputs.S3_UPLOAD_REGION }}
S3_UPLOAD_ROOTFOLDER: ${{ inputs.S3_UPLOAD_ROOTFOLDER }}
FELT_TOKEN: ${{ secrets.FELT_TOKEN }}
ASSETS_BUCKET_HOST: ${{ secrets.ASSETS_BUCKET_HOST }}
ASSETS_BUCKET_PATH: ${{ secrets.ASSETS_BUCKET_PATH }}

Expand Down
1 change: 1 addition & 0 deletions .github/workflows/deployment-config.yml.tpl
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ containers:
S3_UPLOAD_BUCKET: ${S3_UPLOAD_BUCKET}
S3_UPLOAD_REGION: ${S3_UPLOAD_REGION}
S3_UPLOAD_ROOTFOLDER: ${S3_UPLOAD_ROOTFOLDER}
FELT_TOKEN: ${FELT_TOKEN}
image: public.ecr.aws/n0p8j4k5/trassenscout/app:${GITHUB_SHA}
ports:
"3000": HTTP
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
-- AlterTable
ALTER TABLE "Project" ADD COLUMN "felt_subsection_geometry_source_url" TEXT;
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
-- AlterTable
ALTER TABLE "Subsubsection" ADD COLUMN "maxSpeed" INTEGER,
ADD COLUMN "trafficLoad" INTEGER,
ADD COLUMN "trafficLoadDate" TIMESTAMP(3);
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
-- AlterTable
ALTER TABLE "Subsubsection" ADD COLUMN "constructionCosts" INTEGER,
ADD COLUMN "contributionsThirdParties" INTEGER,
ADD COLUMN "deliveryCosts" INTEGER,
ADD COLUMN "expensesOfficialOrders" INTEGER,
ADD COLUMN "expensesTechnicalVerification" INTEGER,
ADD COLUMN "grantsOtherFunding" INTEGER,
ADD COLUMN "landAcquisitionCosts" INTEGER,
ADD COLUMN "nonEligibleExpenses" INTEGER,
ADD COLUMN "ownFunds" INTEGER,
ADD COLUMN "planningCosts" INTEGER,
ADD COLUMN "revenuesEconomicIncome" INTEGER;
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
-- AlterTable
ALTER TABLE "Subsubsection" ADD COLUMN "subsubsectionStatusId" INTEGER;

-- CreateTable
CREATE TABLE "SubsubsectionStatus" (
"id" SERIAL NOT NULL,
"createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updatedAt" TIMESTAMP(3) NOT NULL,
"slug" TEXT NOT NULL,
"title" TEXT NOT NULL,
"projectId" INTEGER NOT NULL,

CONSTRAINT "SubsubsectionStatus_pkey" PRIMARY KEY ("id")
);

-- CreateIndex
CREATE UNIQUE INDEX "SubsubsectionStatus_projectId_slug_key" ON "SubsubsectionStatus"("projectId", "slug");

-- AddForeignKey
ALTER TABLE "Subsubsection" ADD CONSTRAINT "Subsubsection_subsubsectionStatusId_fkey" FOREIGN KEY ("subsubsectionStatusId") REFERENCES "SubsubsectionStatus"("id") ON DELETE SET NULL ON UPDATE CASCADE;

-- AddForeignKey
ALTER TABLE "SubsubsectionStatus" ADD CONSTRAINT "SubsubsectionStatus_projectId_fkey" FOREIGN KEY ("projectId") REFERENCES "Project"("id") ON DELETE RESTRICT ON UPDATE CASCADE;
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
-- AlterTable
ALTER TABLE "Subsubsection" ALTER COLUMN "maxSpeed" SET DATA TYPE DOUBLE PRECISION,
ALTER COLUMN "constructionCosts" SET DATA TYPE DOUBLE PRECISION,
ALTER COLUMN "contributionsThirdParties" SET DATA TYPE DOUBLE PRECISION,
ALTER COLUMN "deliveryCosts" SET DATA TYPE DOUBLE PRECISION,
ALTER COLUMN "expensesOfficialOrders" SET DATA TYPE DOUBLE PRECISION,
ALTER COLUMN "expensesTechnicalVerification" SET DATA TYPE DOUBLE PRECISION,
ALTER COLUMN "grantsOtherFunding" SET DATA TYPE DOUBLE PRECISION,
ALTER COLUMN "landAcquisitionCosts" SET DATA TYPE DOUBLE PRECISION,
ALTER COLUMN "nonEligibleExpenses" SET DATA TYPE DOUBLE PRECISION,
ALTER COLUMN "ownFunds" SET DATA TYPE DOUBLE PRECISION,
ALTER COLUMN "planningCosts" SET DATA TYPE DOUBLE PRECISION,
ALTER COLUMN "revenuesEconomicIncome" SET DATA TYPE DOUBLE PRECISION;
98 changes: 67 additions & 31 deletions db/schema.prisma
Original file line number Diff line number Diff line change
Expand Up @@ -97,18 +97,19 @@ model Token {
// }

model Project {
id Int @id @default(autoincrement())
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
id Int @id @default(autoincrement())
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
//
slug String @unique // shortTitle and URL Slug
subTitle String?
description String?
logoSrc String?
partnerLogoSrcs String[]
slug String @unique // shortTitle and URL Slug
subTitle String?
description String?
logoSrc String?
partnerLogoSrcs String[]
felt_subsection_geometry_source_url String?
//
manager User? @relation(fields: [managerId], references: [id])
managerId Int?
manager User? @relation(fields: [managerId], references: [id])
managerId Int?

surveyResponseTopics SurveyResponseTopic[]
subsections Subsection[]
Expand All @@ -119,6 +120,7 @@ model Project {
Operator Operator[]
Survey Survey[]
qualityLevels QualityLevel[]
SubsubsectionStatus SubsubsectionStatus[]
}

model Membership {
Expand Down Expand Up @@ -222,32 +224,51 @@ model Subsection {
}

model Subsubsection {
id Int @id @default(autoincrement())
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
id Int @id @default(autoincrement())
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
//
slug String // shortTitle and URL Slug
subTitle String?
type SubsubsectionTypeEnum @default(ROUTE) // Führungform
geometry Json
labelPos LabelPositionEnum @default(top)
task String // Maßnahmentyp
length Float? // Kilometer
width Float? // Meter
costEstimate Float? // Euro
description String? // Anmerkungen
mapillaryKey String?
slug String // shortTitle and URL Slug
subTitle String?
type SubsubsectionTypeEnum @default(ROUTE) // Führungform
geometry Json
labelPos LabelPositionEnum @default(top)
task String // Maßnahmentyp
length Float? // Kilometer
width Float? // Meter
costEstimate Float? // Euro
description String? // Anmerkungen
mapillaryKey String?

maxSpeed Float? // Maximalgeschwindigkeit
trafficLoad Int? // Verkehrsbelastung
trafficLoadDate DateTime? // Datum der Verkehrsbelastung

planningCosts Float? // Planungskosten
deliveryCosts Float? // Lieferkosten
constructionCosts Float? // Baukosten
landAcquisitionCosts Float? // Grunderwerbskosten
expensesOfficialOrders Float? // Ausgaben aufgrund behördlicher Anordnungen
expensesTechnicalVerification Float? // Ausgaben für den fachtechnischen Nachweis usw.
nonEligibleExpenses Float? // Nicht zuwendungsfähige Ausgaben
revenuesEconomicIncome Float? // Erlöse und wirtschafltiche Einnahmen
contributionsThirdParties Float? // Beiträge Dritter
grantsOtherFunding Float? // Zuwendungen aus anderen Förderprogrammen
ownFunds Float? // Einsatz Eigenmittel

//
qualityLevel QualityLevel? @relation(fields: [qualityLevelId], references: [id])
qualityLevelId Int?
qualityLevel QualityLevel? @relation(fields: [qualityLevelId], references: [id])
qualityLevelId Int?
//
manager User? @relation(fields: [managerId], references: [id])
managerId Int?
manager User? @relation(fields: [managerId], references: [id])
managerId Int?
//
subsection Subsection @relation(fields: [subsectionId], references: [id])
subsectionId Int
subsection Subsection @relation(fields: [subsectionId], references: [id])
subsectionId Int
//
uploads Upload[]
uploads Upload[]
SubsubsectionStatus SubsubsectionStatus? @relation(fields: [subsubsectionStatusId], references: [id])
subsubsectionStatusId Int?

@@unique([subsectionId, slug])
}
Expand All @@ -272,6 +293,21 @@ model QualityLevel {
@@unique([projectId, slug])
}

model SubsubsectionStatus {
id Int @id @default(autoincrement())
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
//
slug String // shortTitle and URL Slug
title String
//
project Project @relation(fields: [projectId], references: [id])
projectId Int
Subsubsection Subsubsection[]

@@unique([projectId, slug])
}

model Stakeholdernote {
id Int @id @default(autoincrement())
createdAt DateTime @default(now())
Expand Down
4 changes: 3 additions & 1 deletion db/seeds.ts
Original file line number Diff line number Diff line change
@@ -1,14 +1,15 @@
import seedCalendarEntries from "./seeds/calenderEntries"
import seedContacts from "./seeds/contacts"
import seedUploads from "./seeds/uploads"
import seedMemberships from "./seeds/memberships"
import seedOperators from "./seeds/operators"
import seedProjects from "./seeds/projects"
import seedQualityLevels from "./seeds/qualityLevels"
import seedStakeholdernotes from "./seeds/stakeholdernotes"
import seedSubsections from "./seeds/subsections"
import seedSubsubsectionStatus from "./seeds/subsubsectionStatus"
import seedSurveyResponseTopics from "./seeds/surveyresponsetopics"
import seedSurveys from "./seeds/surveys"
import seedUploads from "./seeds/uploads"
import seedUsers from "./seeds/users"

/*
Expand All @@ -27,6 +28,7 @@ const seed = async () => {
await seedUploads()
await seedSurveys()
await seedSurveyResponseTopics()
await seedSubsubsectionStatus()
}

export default seed
4 changes: 4 additions & 0 deletions db/seeds/projects.ts
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ const seedProjects = async () => {
Sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr.`,
managerId: null,
logoSrc: "rsv8-logo.png",
felt_subsection_geometry_source_url: null,
partnerLogoSrcs: ["rsv8-logo.png", "test.png"],
},
{
Expand All @@ -18,6 +19,7 @@ Sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,
description: null,
managerId: null,
logoSrc: null,
felt_subsection_geometry_source_url: null,
partnerLogoSrcs: [],
},
{
Expand All @@ -26,6 +28,7 @@ Sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,
description: null,
managerId: null,
logoSrc: null,
felt_subsection_geometry_source_url: null,
partnerLogoSrcs: [],
},
{
Expand All @@ -34,6 +37,7 @@ Sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,
description: null,
managerId: null,
logoSrc: null,
felt_subsection_geometry_source_url: null,
partnerLogoSrcs: [],
},
]
Expand Down
Loading
Loading