Skip to content

Feature/properties diff#2822

Open
torqdev wants to merge 9 commits intopimcore:2025.4from
TorqIT:feature/properties-diff
Open

Feature/properties diff#2822
torqdev wants to merge 9 commits intopimcore:2025.4from
TorqIT:feature/properties-diff

Conversation

@torqdev
Copy link
Copy Markdown
Contributor

@torqdev torqdev commented Jan 23, 2026

Properties are versioned for data objects, so included a Properties section in order to be able to see these. Made Documents/Objects/Assets be viewed as: asset [ID: 1] as an initial pass.

Related to: pimcore/studio-backend-bundle#1626

@sonarqubecloud
Copy link
Copy Markdown

sonarqubecloud Bot commented Feb 9, 2026

@markus-moser markus-moser changed the base branch from 1.x to 2025.4 April 7, 2026 14:38
Copy link
Copy Markdown
Contributor

@ValeriaMaltseva ValeriaMaltseva left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks a lot for the contribution! Looks good already, but there are still a few small things to polish :)

if (isEmptyValue(key)) return <></>

const textValue = isCommonSection ? t(`version.${key}`) : t(key)
const isSystemDataField = breadcrumbKey === VersionCategoryName.SYSTEM_DATA
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

breadcrumbKey should be passed as an argument to renderFieldTitle, and isCommonSection can be deleted.

@@ -1,4 +1,5 @@
import { api } from "@sdk/api";
import { DataProperty } from "../properties/properties-api-slice-enhanced";
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We need to remove this code ;)

}

const getPropertiesData = (): IFormattedDataStructureData[] => {
return versionData.properties.map((property) => {
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I propose to add the fallback:
if (isEmpty(versionData?.properties) || !isArray(versionData?.properties)) return []

This helps us avoid typing errors and prevent potential data mismatches.

fieldtype,
config: property.config
} as any,
fieldValue,
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In IFormattedDataStructureData, we have the fieldPath. Please just add fieldPath: ''.

@ValeriaMaltseva
Copy link
Copy Markdown
Contributor

@torqdev
Hi! Thank you very much for your contribution - I really appreciate the work you've done here. The code looks good and works well from a functional perspective :)

I was just thinking about the UI side: it might be worth refining it a bit further before rolling it out to production, so we can deliver a more polished experience from the start (for example, improving navigation so users can open assets/objects directly).

With that in mind, perhaps we could capture this functionality in a separate follow-up task and build on top of your current implementation there. For now, would you be okay with either continuing to iterate on this PR to further refine the UI, or alternatively closing it for the moment and letting the maintenance team pick it up and build on your work in a follow-up?

What do you think?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants