@payloadcms/ui 4.0.0-canary.38 → 4.0.0-canary.39
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/elements/Autosave/index.d.ts.map +1 -1
- package/dist/elements/Autosave/index.js +10 -3
- package/dist/elements/Autosave/index.js.map +1 -1
- package/dist/elements/CodeEditor/CodeEditor.d.ts.map +1 -1
- package/dist/elements/CodeEditor/CodeEditor.js +5 -0
- package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
- package/dist/elements/DocumentDrawer/types.d.ts +1 -5
- package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
- package/dist/elements/DocumentDrawer/types.js.map +1 -1
- package/dist/elements/EditUpload/library.css +6 -13
- package/dist/elements/FileManager/index.d.ts.map +1 -1
- package/dist/elements/FileManager/index.js +6 -1
- package/dist/elements/FileManager/index.js.map +1 -1
- package/dist/elements/ListControls/types.d.ts +0 -10
- package/dist/elements/ListControls/types.d.ts.map +1 -1
- package/dist/elements/ListControls/types.js.map +1 -1
- package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
- package/dist/elements/ListDrawer/DrawerContent.js +1 -2
- package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
- package/dist/elements/ListDrawer/Provider.d.ts +0 -6
- package/dist/elements/ListDrawer/Provider.d.ts.map +1 -1
- package/dist/elements/ListDrawer/Provider.js.map +1 -1
- package/dist/elements/PublishButton/index.d.ts.map +1 -1
- package/dist/elements/PublishButton/index.js +71 -8
- package/dist/elements/PublishButton/index.js.map +1 -1
- package/dist/elements/PublishButton/validateAllLocales.d.ts +11 -0
- package/dist/elements/PublishButton/validateAllLocales.d.ts.map +1 -0
- package/dist/elements/PublishButton/validateAllLocales.js +263 -0
- package/dist/elements/PublishButton/validateAllLocales.js.map +1 -0
- package/dist/elements/RelationshipTable/AddNewButton.d.ts.map +1 -1
- package/dist/elements/RelationshipTable/AddNewButton.js +3 -0
- package/dist/elements/RelationshipTable/AddNewButton.js.map +1 -1
- package/dist/elements/SaveDraftButton/index.d.ts.map +1 -1
- package/dist/elements/SaveDraftButton/index.js +15 -2
- package/dist/elements/SaveDraftButton/index.js.map +1 -1
- package/dist/elements/Upload/getEditorFileSrc.d.ts +11 -0
- package/dist/elements/Upload/getEditorFileSrc.d.ts.map +1 -0
- package/dist/elements/Upload/getEditorFileSrc.js +6 -0
- package/dist/elements/Upload/getEditorFileSrc.js.map +1 -0
- package/dist/elements/Upload/index.d.ts.map +1 -1
- package/dist/elements/Upload/index.js +6 -1
- package/dist/elements/Upload/index.js.map +1 -1
- package/dist/exports/client/{CodeEditor-UKD3EPUY.js → CodeEditor-S7MOGZSR.js} +2 -2
- package/dist/exports/client/chunk-Z42OBP5U.js +27 -0
- package/dist/exports/client/chunk-Z42OBP5U.js.map +7 -0
- package/dist/exports/client/index.js +27 -27
- package/dist/exports/client/index.js.map +4 -4
- package/dist/exports/shared/index.js +2 -2
- package/dist/exports/shared/index.js.map +3 -3
- package/dist/forms/Form/fieldReducer.d.ts.map +1 -1
- package/dist/forms/Form/fieldReducer.js +6 -9
- package/dist/forms/Form/fieldReducer.js.map +1 -1
- package/dist/forms/Form/index.d.ts.map +1 -1
- package/dist/forms/Form/index.js +0 -1
- package/dist/forms/Form/index.js.map +1 -1
- package/dist/forms/Form/types.d.ts +0 -5
- package/dist/forms/Form/types.d.ts.map +1 -1
- package/dist/forms/Form/types.js.map +1 -1
- package/dist/forms/useField/types.d.ts +0 -4
- package/dist/forms/useField/types.d.ts.map +1 -1
- package/dist/forms/useField/types.js.map +1 -1
- package/dist/layouts/Root/getRootLayoutData.d.ts +2 -2
- package/dist/layouts/Root/getRootLayoutData.d.ts.map +1 -1
- package/dist/layouts/Root/getRootLayoutData.js +8 -4
- package/dist/layouts/Root/getRootLayoutData.js.map +1 -1
- package/dist/layouts/Root/index.js +1 -5
- package/dist/layouts/Root/index.js.map +1 -1
- package/dist/providers/ListQuery/types.d.ts +0 -4
- package/dist/providers/ListQuery/types.d.ts.map +1 -1
- package/dist/providers/ListQuery/types.js.map +1 -1
- package/dist/providers/TableColumns/RenderDefaultCell/index.d.ts.map +1 -1
- package/dist/providers/TableColumns/RenderDefaultCell/index.js +1 -2
- package/dist/providers/TableColumns/RenderDefaultCell/index.js.map +1 -1
- package/dist/providers/TableColumns/types.d.ts +1 -34
- package/dist/providers/TableColumns/types.d.ts.map +1 -1
- package/dist/providers/TableColumns/types.js.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/utilities/appendCacheTag.d.ts +1 -0
- package/dist/utilities/appendCacheTag.d.ts.map +1 -1
- package/dist/utilities/appendCacheTag.js +2 -1
- package/dist/utilities/appendCacheTag.js.map +1 -1
- package/dist/utilities/traverseForLocalizedFields.d.ts +7 -2
- package/dist/utilities/traverseForLocalizedFields.d.ts.map +1 -1
- package/dist/utilities/traverseForLocalizedFields.js +22 -8
- package/dist/utilities/traverseForLocalizedFields.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js +2 -12
- package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Checkbox/index.js +2 -2
- package/dist/views/Version/RenderFieldsToDiff/fields/Checkbox/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js +2 -2
- package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js +2 -2
- package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js +2 -2
- package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js +2 -2
- package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js +2 -2
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.d.ts.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js +2 -2
- package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js +8 -8
- package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js +2 -2
- package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.d.ts.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.js +2 -2
- package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.js.map +1 -1
- package/dist/widgets/RecentlyViewed/index.css +3 -2
- package/package.json +4 -4
- package/dist/exports/client/chunk-6XCSN54Q.js +0 -27
- package/dist/exports/client/chunk-6XCSN54Q.js.map +0 -7
- /package/dist/exports/client/{CodeEditor-UKD3EPUY.js.map → CodeEditor-S7MOGZSR.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["getTranslation","React","FieldDiffContainer","getHTMLDiffComponents","generateLabelFromValue","baseClass","Relationship","comparisonValue","valueFrom","field","i18n","locale","nestingLevel","parentIsLocalized","req","versionValue","valueTo","hasMany","Array","isArray","polymorphic","relationTo","_jsx","ManyRelationshipDiff","SingleRelationshipDiff","args","ReactDOMServer","default","localeToUse","payload","config","localization","defaultLocale","titleFrom","titleTo","Promise","all","value","resolve","FromComponent","RelationshipDocumentDiff","showPill","title","ToComponent","NoValue","className","t","From","To","fromHTML","renderToStaticMarkup","toHTML","diff","tokenizeByCharacter","label","fromArr","toArr","titlesFrom","titlesTo","map","val","makeNodes","list","titles","idx","hasFrom","length","hasTo","fromNodes","toNodes","_Fragment","pillLabel","collectionConfig","collections","labels","singular","slug","_jsxs","id"],"sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Relationship/index.tsx"],"sourcesContent":["import type {\n PayloadRequest,\n RelationshipField,\n RelationshipFieldDiffServerProps,\n TypeWithID,\n} from 'payload'\n\nimport { getTranslation, type I18nClient } from '@payloadcms/translations'\nimport React from 'react'\n\nimport { FieldDiffContainer } from '../../../../../elements/FieldDiffContainer/index.js'\nimport { getHTMLDiffComponents } from '../../../../../elements/HTMLDiff/index.js'\nimport { generateLabelFromValue } from './generateLabelFromValue.js'\nimport './index.css'\n\nconst baseClass = 'relationship-diff'\n\nexport type RelationshipValue =\n | { relationTo: string; value: number | string | TypeWithID }\n | (number | string | TypeWithID)\n\nexport const Relationship: React.FC<RelationshipFieldDiffServerProps> = ({\n comparisonValue: valueFrom,\n field,\n i18n,\n locale,\n nestingLevel,\n parentIsLocalized,\n req,\n versionValue: valueTo,\n}) => {\n const hasMany =\n ('hasMany' in field && field.hasMany) ||\n // Check data structure (handles block swaps where schema may not match data)\n Array.isArray(valueFrom) ||\n Array.isArray(valueTo)\n const polymorphic = Array.isArray(field.relationTo)\n\n if (hasMany) {\n return (\n <ManyRelationshipDiff\n field={field}\n i18n={i18n}\n locale={locale}\n nestingLevel={nestingLevel}\n parentIsLocalized={parentIsLocalized}\n polymorphic={polymorphic}\n req={req}\n valueFrom={valueFrom as RelationshipValue[] | undefined}\n valueTo={valueTo as RelationshipValue[] | undefined}\n />\n )\n }\n\n return (\n <SingleRelationshipDiff\n field={field}\n i18n={i18n}\n locale={locale}\n nestingLevel={nestingLevel}\n parentIsLocalized={parentIsLocalized}\n polymorphic={polymorphic}\n req={req}\n valueFrom={valueFrom as RelationshipValue}\n valueTo={valueTo as RelationshipValue}\n />\n )\n}\n\nexport const SingleRelationshipDiff: React.FC<{\n field: RelationshipField\n i18n: I18nClient\n locale: string\n nestingLevel?: number\n parentIsLocalized: boolean\n polymorphic: boolean\n req: PayloadRequest\n valueFrom: RelationshipValue\n valueTo: RelationshipValue\n}> = async (args) => {\n const {\n field,\n i18n,\n locale,\n nestingLevel,\n parentIsLocalized,\n polymorphic,\n req,\n valueFrom,\n valueTo,\n } = args\n\n const ReactDOMServer = (await import('react-dom/server')).default\n\n const localeToUse =\n locale ??\n (req.payload.config?.localization && req.payload.config?.localization?.defaultLocale) ??\n 'en'\n\n // Generate titles asynchronously before creating components\n const [titleFrom, titleTo] = await Promise.all([\n valueFrom\n ? generateLabelFromValue({\n field,\n locale: localeToUse,\n parentIsLocalized,\n req,\n value: valueFrom,\n })\n : Promise.resolve(null),\n valueTo\n ? generateLabelFromValue({\n field,\n locale: localeToUse,\n parentIsLocalized,\n req,\n value: valueTo,\n })\n : Promise.resolve(null),\n ])\n\n const FromComponent = valueFrom ? (\n <RelationshipDocumentDiff\n field={field}\n i18n={i18n}\n locale={locale}\n parentIsLocalized={parentIsLocalized}\n polymorphic={polymorphic}\n relationTo={\n polymorphic\n ? (valueFrom as { relationTo: string; value: TypeWithID }).relationTo\n : (field.relationTo as string)\n }\n req={req}\n showPill={true}\n title={titleFrom}\n value={valueFrom}\n />\n ) : null\n const ToComponent = valueTo ? (\n <RelationshipDocumentDiff\n field={field}\n i18n={i18n}\n locale={locale}\n parentIsLocalized={parentIsLocalized}\n polymorphic={polymorphic}\n relationTo={\n polymorphic\n ? (valueTo as { relationTo: string; value: TypeWithID }).relationTo\n : (field.relationTo as string)\n }\n req={req}\n showPill={true}\n title={titleTo}\n value={valueTo}\n />\n ) : null\n\n const NoValue = <div className=\"diff-no-value\">{i18n.t('general:noValue')}</div>\n\n let From: React.ReactNode = NoValue\n let To: React.ReactNode = NoValue\n\n if (FromComponent || ToComponent) {\n const fromHTML = FromComponent ? ReactDOMServer.renderToStaticMarkup(FromComponent) : '<p></p>'\n const toHTML = ToComponent ? ReactDOMServer.renderToStaticMarkup(ToComponent) : '<p></p>'\n\n const diff = getHTMLDiffComponents({\n fromHTML,\n toHTML,\n tokenizeByCharacter: false,\n })\n\n From = FromComponent ? diff.From : NoValue\n To = ToComponent ? diff.To : NoValue\n }\n\n return (\n <FieldDiffContainer\n className={`${baseClass}-container ${baseClass}-container--hasOne`}\n From={From}\n i18n={i18n}\n label={{ label: field.label, locale }}\n nestingLevel={nestingLevel}\n To={To}\n />\n )\n}\n\nconst ManyRelationshipDiff: React.FC<{\n field: RelationshipField\n i18n: I18nClient\n locale: string\n nestingLevel?: number\n parentIsLocalized: boolean\n polymorphic: boolean\n req: PayloadRequest\n valueFrom: RelationshipValue[] | undefined\n valueTo: RelationshipValue[] | undefined\n}> = async ({\n field,\n i18n,\n locale,\n nestingLevel,\n parentIsLocalized,\n polymorphic,\n req,\n valueFrom,\n valueTo,\n}) => {\n const ReactDOMServer = (await import('react-dom/server')).default\n\n const fromArr = Array.isArray(valueFrom) ? valueFrom : []\n const toArr = Array.isArray(valueTo) ? valueTo : []\n\n const localeToUse =\n locale ??\n (req.payload.config?.localization && req.payload.config?.localization?.defaultLocale) ??\n 'en'\n\n // Generate all titles asynchronously before creating components\n const [titlesFrom, titlesTo] = await Promise.all([\n Promise.all(\n fromArr.map((val) =>\n generateLabelFromValue({\n field,\n locale: localeToUse,\n parentIsLocalized,\n req,\n value: val,\n }),\n ),\n ),\n Promise.all(\n toArr.map((val) =>\n generateLabelFromValue({\n field,\n locale: localeToUse,\n parentIsLocalized,\n req,\n value: val,\n }),\n ),\n ),\n ])\n\n const makeNodes = (list: RelationshipValue[], titles: string[]) =>\n list.map((val, idx) => (\n <RelationshipDocumentDiff\n field={field}\n i18n={i18n}\n key={idx}\n locale={locale}\n parentIsLocalized={parentIsLocalized}\n polymorphic={polymorphic}\n relationTo={\n polymorphic\n ? (val as { relationTo: string; value: TypeWithID }).relationTo\n : (field.relationTo as string)\n }\n req={req}\n showPill={polymorphic}\n title={titles[idx]}\n value={val}\n />\n ))\n\n const NoValue = <div className=\"diff-no-value\">{i18n.t('general:noValue')}</div>\n\n const hasFrom = fromArr.length > 0\n const hasTo = toArr.length > 0\n\n let From: React.ReactNode = NoValue\n let To: React.ReactNode = NoValue\n\n if (hasFrom || hasTo) {\n const fromNodes = hasFrom ? makeNodes(fromArr, titlesFrom) : []\n const toNodes = hasTo ? makeNodes(toArr, titlesTo) : []\n\n const fromHTML = hasFrom ? ReactDOMServer.renderToStaticMarkup(<>{fromNodes}</>) : ''\n const toHTML = hasTo ? ReactDOMServer.renderToStaticMarkup(<>{toNodes}</>) : ''\n\n const diff = getHTMLDiffComponents({\n fromHTML,\n toHTML,\n tokenizeByCharacter: false,\n })\n\n From = hasFrom ? diff.From : NoValue\n To = hasTo ? diff.To : NoValue\n }\n\n return (\n <FieldDiffContainer\n className={`${baseClass}-container ${baseClass}-container--hasMany`}\n From={From}\n i18n={i18n}\n label={{ label: field.label, locale }}\n nestingLevel={nestingLevel}\n To={To}\n />\n )\n}\n\nconst RelationshipDocumentDiff = ({\n field,\n i18n,\n locale,\n parentIsLocalized,\n polymorphic,\n relationTo,\n req,\n showPill = false,\n title,\n value,\n}: {\n field: RelationshipField\n i18n: I18nClient\n locale: string\n parentIsLocalized: boolean\n polymorphic: boolean\n relationTo: string\n req: PayloadRequest\n showPill?: boolean\n title: null | string\n value: RelationshipValue\n}) => {\n let pillLabel: null | string = null\n if (showPill) {\n const collectionConfig = req.payload.collections[relationTo].config\n pillLabel = collectionConfig.labels?.singular\n ? getTranslation(collectionConfig.labels.singular, i18n)\n : collectionConfig.slug\n }\n\n return (\n <div\n className={`${baseClass}`}\n data-enable-match=\"true\"\n data-id={\n polymorphic\n ? (value as { relationTo: string; value: TypeWithID }).value.id\n : (value as TypeWithID).id\n }\n data-relation-to={relationTo}\n >\n {pillLabel && (\n <span className={`${baseClass}__pill`} data-enable-match=\"false\">\n {pillLabel}\n </span>\n )}\n <strong className={`${baseClass}__info`} data-enable-match=\"false\">\n {title}\n </strong>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["getTranslation","React","FieldDiffContainer","getHTMLDiffComponents","generateLabelFromValue","baseClass","Relationship","field","i18n","locale","nestingLevel","parentIsLocalized","req","valueFrom","valueTo","hasMany","Array","isArray","polymorphic","relationTo","_jsx","ManyRelationshipDiff","SingleRelationshipDiff","args","ReactDOMServer","default","localeToUse","payload","config","localization","defaultLocale","titleFrom","titleTo","Promise","all","value","resolve","FromComponent","RelationshipDocumentDiff","showPill","title","ToComponent","NoValue","className","t","From","To","fromHTML","renderToStaticMarkup","toHTML","diff","tokenizeByCharacter","label","fromArr","toArr","titlesFrom","titlesTo","map","val","makeNodes","list","titles","idx","hasFrom","length","hasTo","fromNodes","toNodes","_Fragment","pillLabel","collectionConfig","collections","labels","singular","slug","_jsxs","id"],"sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Relationship/index.tsx"],"sourcesContent":["import type {\n PayloadRequest,\n RelationshipField,\n RelationshipFieldDiffServerProps,\n TypeWithID,\n} from 'payload'\n\nimport { getTranslation, type I18nClient } from '@payloadcms/translations'\nimport React from 'react'\n\nimport { FieldDiffContainer } from '../../../../../elements/FieldDiffContainer/index.js'\nimport { getHTMLDiffComponents } from '../../../../../elements/HTMLDiff/index.js'\nimport { generateLabelFromValue } from './generateLabelFromValue.js'\nimport './index.css'\n\nconst baseClass = 'relationship-diff'\n\nexport type RelationshipValue =\n | { relationTo: string; value: number | string | TypeWithID }\n | (number | string | TypeWithID)\n\nexport const Relationship: React.FC<RelationshipFieldDiffServerProps> = ({\n field,\n i18n,\n locale,\n nestingLevel,\n parentIsLocalized,\n req,\n valueFrom,\n valueTo,\n}) => {\n const hasMany =\n ('hasMany' in field && field.hasMany) ||\n // Check data structure (handles block swaps where schema may not match data)\n Array.isArray(valueFrom) ||\n Array.isArray(valueTo)\n const polymorphic = Array.isArray(field.relationTo)\n\n if (hasMany) {\n return (\n <ManyRelationshipDiff\n field={field}\n i18n={i18n}\n locale={locale}\n nestingLevel={nestingLevel}\n parentIsLocalized={parentIsLocalized}\n polymorphic={polymorphic}\n req={req}\n valueFrom={valueFrom as RelationshipValue[] | undefined}\n valueTo={valueTo as RelationshipValue[] | undefined}\n />\n )\n }\n\n return (\n <SingleRelationshipDiff\n field={field}\n i18n={i18n}\n locale={locale}\n nestingLevel={nestingLevel}\n parentIsLocalized={parentIsLocalized}\n polymorphic={polymorphic}\n req={req}\n valueFrom={valueFrom as RelationshipValue}\n valueTo={valueTo as RelationshipValue}\n />\n )\n}\n\nexport const SingleRelationshipDiff: React.FC<{\n field: RelationshipField\n i18n: I18nClient\n locale: string\n nestingLevel?: number\n parentIsLocalized: boolean\n polymorphic: boolean\n req: PayloadRequest\n valueFrom: RelationshipValue\n valueTo: RelationshipValue\n}> = async (args) => {\n const {\n field,\n i18n,\n locale,\n nestingLevel,\n parentIsLocalized,\n polymorphic,\n req,\n valueFrom,\n valueTo,\n } = args\n\n const ReactDOMServer = (await import('react-dom/server')).default\n\n const localeToUse =\n locale ??\n (req.payload.config?.localization && req.payload.config?.localization?.defaultLocale) ??\n 'en'\n\n // Generate titles asynchronously before creating components\n const [titleFrom, titleTo] = await Promise.all([\n valueFrom\n ? generateLabelFromValue({\n field,\n locale: localeToUse,\n parentIsLocalized,\n req,\n value: valueFrom,\n })\n : Promise.resolve(null),\n valueTo\n ? generateLabelFromValue({\n field,\n locale: localeToUse,\n parentIsLocalized,\n req,\n value: valueTo,\n })\n : Promise.resolve(null),\n ])\n\n const FromComponent = valueFrom ? (\n <RelationshipDocumentDiff\n field={field}\n i18n={i18n}\n locale={locale}\n parentIsLocalized={parentIsLocalized}\n polymorphic={polymorphic}\n relationTo={\n polymorphic\n ? (valueFrom as { relationTo: string; value: TypeWithID }).relationTo\n : (field.relationTo as string)\n }\n req={req}\n showPill={true}\n title={titleFrom}\n value={valueFrom}\n />\n ) : null\n const ToComponent = valueTo ? (\n <RelationshipDocumentDiff\n field={field}\n i18n={i18n}\n locale={locale}\n parentIsLocalized={parentIsLocalized}\n polymorphic={polymorphic}\n relationTo={\n polymorphic\n ? (valueTo as { relationTo: string; value: TypeWithID }).relationTo\n : (field.relationTo as string)\n }\n req={req}\n showPill={true}\n title={titleTo}\n value={valueTo}\n />\n ) : null\n\n const NoValue = <div className=\"diff-no-value\">{i18n.t('general:noValue')}</div>\n\n let From: React.ReactNode = NoValue\n let To: React.ReactNode = NoValue\n\n if (FromComponent || ToComponent) {\n const fromHTML = FromComponent ? ReactDOMServer.renderToStaticMarkup(FromComponent) : '<p></p>'\n const toHTML = ToComponent ? ReactDOMServer.renderToStaticMarkup(ToComponent) : '<p></p>'\n\n const diff = getHTMLDiffComponents({\n fromHTML,\n toHTML,\n tokenizeByCharacter: false,\n })\n\n From = FromComponent ? diff.From : NoValue\n To = ToComponent ? diff.To : NoValue\n }\n\n return (\n <FieldDiffContainer\n className={`${baseClass}-container ${baseClass}-container--hasOne`}\n From={From}\n i18n={i18n}\n label={{ label: field.label, locale }}\n nestingLevel={nestingLevel}\n To={To}\n />\n )\n}\n\nconst ManyRelationshipDiff: React.FC<{\n field: RelationshipField\n i18n: I18nClient\n locale: string\n nestingLevel?: number\n parentIsLocalized: boolean\n polymorphic: boolean\n req: PayloadRequest\n valueFrom: RelationshipValue[] | undefined\n valueTo: RelationshipValue[] | undefined\n}> = async ({\n field,\n i18n,\n locale,\n nestingLevel,\n parentIsLocalized,\n polymorphic,\n req,\n valueFrom,\n valueTo,\n}) => {\n const ReactDOMServer = (await import('react-dom/server')).default\n\n const fromArr = Array.isArray(valueFrom) ? valueFrom : []\n const toArr = Array.isArray(valueTo) ? valueTo : []\n\n const localeToUse =\n locale ??\n (req.payload.config?.localization && req.payload.config?.localization?.defaultLocale) ??\n 'en'\n\n // Generate all titles asynchronously before creating components\n const [titlesFrom, titlesTo] = await Promise.all([\n Promise.all(\n fromArr.map((val) =>\n generateLabelFromValue({\n field,\n locale: localeToUse,\n parentIsLocalized,\n req,\n value: val,\n }),\n ),\n ),\n Promise.all(\n toArr.map((val) =>\n generateLabelFromValue({\n field,\n locale: localeToUse,\n parentIsLocalized,\n req,\n value: val,\n }),\n ),\n ),\n ])\n\n const makeNodes = (list: RelationshipValue[], titles: string[]) =>\n list.map((val, idx) => (\n <RelationshipDocumentDiff\n field={field}\n i18n={i18n}\n key={idx}\n locale={locale}\n parentIsLocalized={parentIsLocalized}\n polymorphic={polymorphic}\n relationTo={\n polymorphic\n ? (val as { relationTo: string; value: TypeWithID }).relationTo\n : (field.relationTo as string)\n }\n req={req}\n showPill={polymorphic}\n title={titles[idx]}\n value={val}\n />\n ))\n\n const NoValue = <div className=\"diff-no-value\">{i18n.t('general:noValue')}</div>\n\n const hasFrom = fromArr.length > 0\n const hasTo = toArr.length > 0\n\n let From: React.ReactNode = NoValue\n let To: React.ReactNode = NoValue\n\n if (hasFrom || hasTo) {\n const fromNodes = hasFrom ? makeNodes(fromArr, titlesFrom) : []\n const toNodes = hasTo ? makeNodes(toArr, titlesTo) : []\n\n const fromHTML = hasFrom ? ReactDOMServer.renderToStaticMarkup(<>{fromNodes}</>) : ''\n const toHTML = hasTo ? ReactDOMServer.renderToStaticMarkup(<>{toNodes}</>) : ''\n\n const diff = getHTMLDiffComponents({\n fromHTML,\n toHTML,\n tokenizeByCharacter: false,\n })\n\n From = hasFrom ? diff.From : NoValue\n To = hasTo ? diff.To : NoValue\n }\n\n return (\n <FieldDiffContainer\n className={`${baseClass}-container ${baseClass}-container--hasMany`}\n From={From}\n i18n={i18n}\n label={{ label: field.label, locale }}\n nestingLevel={nestingLevel}\n To={To}\n />\n )\n}\n\nconst RelationshipDocumentDiff = ({\n field,\n i18n,\n locale,\n parentIsLocalized,\n polymorphic,\n relationTo,\n req,\n showPill = false,\n title,\n value,\n}: {\n field: RelationshipField\n i18n: I18nClient\n locale: string\n parentIsLocalized: boolean\n polymorphic: boolean\n relationTo: string\n req: PayloadRequest\n showPill?: boolean\n title: null | string\n value: RelationshipValue\n}) => {\n let pillLabel: null | string = null\n if (showPill) {\n const collectionConfig = req.payload.collections[relationTo].config\n pillLabel = collectionConfig.labels?.singular\n ? getTranslation(collectionConfig.labels.singular, i18n)\n : collectionConfig.slug\n }\n\n return (\n <div\n className={`${baseClass}`}\n data-enable-match=\"true\"\n data-id={\n polymorphic\n ? (value as { relationTo: string; value: TypeWithID }).value.id\n : (value as TypeWithID).id\n }\n data-relation-to={relationTo}\n >\n {pillLabel && (\n <span className={`${baseClass}__pill`} data-enable-match=\"false\">\n {pillLabel}\n </span>\n )}\n <strong className={`${baseClass}__info`} data-enable-match=\"false\">\n {title}\n </strong>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Select/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAuB,0BAA0B,EAAE,MAAM,SAAS,CAAA;AAG9E,OAAO,KAAK,MAAM,OAAO,CAAA;AASzB,OAAO,aAAa,CAAA;AAmDpB,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,0BAA0B,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Select/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAuB,0BAA0B,EAAE,MAAM,SAAS,CAAA;AAG9E,OAAO,KAAK,MAAM,OAAO,CAAA;AASzB,OAAO,aAAa,CAAA;AAmDpB,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,0BAA0B,CAuDvD,CAAA"}
|
|
@@ -40,11 +40,11 @@ const getTranslatedOptions = (options, i18n) => {
|
|
|
40
40
|
export const Select = t0 => {
|
|
41
41
|
const $ = _c(7);
|
|
42
42
|
const {
|
|
43
|
-
comparisonValue: valueFrom,
|
|
44
43
|
field,
|
|
45
44
|
locale,
|
|
46
45
|
nestingLevel,
|
|
47
|
-
|
|
46
|
+
valueFrom,
|
|
47
|
+
valueTo
|
|
48
48
|
} = t0;
|
|
49
49
|
const {
|
|
50
50
|
i18n
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","getTranslation","React","FieldDiffContainer","escapeDiffHTML","getHTMLDiffComponents","unescapeDiffHTML","useTranslation","baseClass","getOptionsToRender","value","options","hasMany","Array","isArray","map","val","find","option","String","getTranslatedOptions","i18n","translatedLabel","label","join","Select","t0","$","
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","getTranslation","React","FieldDiffContainer","escapeDiffHTML","getHTMLDiffComponents","unescapeDiffHTML","useTranslation","baseClass","getOptionsToRender","value","options","hasMany","Array","isArray","map","val","find","option","String","getTranslatedOptions","i18n","translatedLabel","label","join","Select","t0","$","field","locale","nestingLevel","valueFrom","valueTo","renderedValueFrom","JSON","stringify","renderedValueTo","t1","t2","t3","From","To","fromHTML","postProcess","toHTML","tokenizeByCharacter","_jsx","className"],"sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Select/index.tsx"],"sourcesContent":["'use client'\nimport type { I18nClient } from '@payloadcms/translations'\nimport type { Option, SelectField, SelectFieldDiffClientProps } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React from 'react'\n\nimport { FieldDiffContainer } from '../../../../../elements/FieldDiffContainer/index.js'\nimport {\n escapeDiffHTML,\n getHTMLDiffComponents,\n unescapeDiffHTML,\n} from '../../../../../elements/HTMLDiff/index.js'\nimport { useTranslation } from '../../../../../providers/Translation/index.js'\nimport './index.css'\n\nconst baseClass = 'select-diff'\n\nconst getOptionsToRender = (\n value: string,\n options: SelectField['options'],\n hasMany: boolean,\n): Option | Option[] => {\n if (hasMany && Array.isArray(value)) {\n return value.map(\n (val) =>\n options.find((option) => (typeof option === 'string' ? option : option.value) === val) ||\n String(val),\n )\n }\n return (\n options.find((option) => (typeof option === 'string' ? option : option.value) === value) ||\n String(value)\n )\n}\n\n/**\n * Translates option labels while ensuring they are strings.\n * If `options.label` is a JSX element, it falls back to `options.value` because `DiffViewer`\n * expects all values to be strings.\n */\nconst getTranslatedOptions = (options: Option | Option[], i18n: I18nClient): string => {\n if (Array.isArray(options)) {\n return options\n .map((option) => {\n if (typeof option === 'string') {\n return option\n }\n const translatedLabel = getTranslation(option.label, i18n)\n\n // Ensure the result is a string, otherwise use option.value\n return typeof translatedLabel === 'string' ? translatedLabel : option.value\n })\n .join(', ')\n }\n\n if (typeof options === 'string') {\n return options\n }\n\n const translatedLabel = getTranslation(options.label, i18n)\n\n return typeof translatedLabel === 'string' ? translatedLabel : options.value\n}\n\nexport const Select: React.FC<SelectFieldDiffClientProps> = ({\n field,\n locale,\n nestingLevel,\n valueFrom,\n valueTo,\n}) => {\n const { i18n } = useTranslation()\n\n const options = 'options' in field && field.options\n\n const renderedValueFrom =\n typeof valueFrom !== 'undefined'\n ? getTranslatedOptions(\n getOptionsToRender(\n typeof valueFrom === 'string' ? valueFrom : JSON.stringify(valueFrom),\n options,\n field.hasMany,\n ),\n i18n,\n )\n : ''\n\n const renderedValueTo =\n typeof valueTo !== 'undefined'\n ? getTranslatedOptions(\n getOptionsToRender(\n typeof valueTo === 'string' ? valueTo : JSON.stringify(valueTo),\n options,\n field.hasMany,\n ),\n i18n,\n )\n : ''\n\n const { From, To } = getHTMLDiffComponents({\n fromHTML: '<p>' + escapeDiffHTML(renderedValueFrom) + '</p>',\n postProcess: unescapeDiffHTML,\n toHTML: '<p>' + escapeDiffHTML(renderedValueTo) + '</p>',\n tokenizeByCharacter: true,\n })\n\n return (\n <FieldDiffContainer\n className={baseClass}\n From={From}\n i18n={i18n}\n label={{\n label: field.label,\n locale,\n }}\n nestingLevel={nestingLevel}\n To={To}\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -14,9 +14,9 @@ export const Tabs = props => {
|
|
|
14
14
|
const $ = _c(13);
|
|
15
15
|
const {
|
|
16
16
|
baseVersionField,
|
|
17
|
-
comparisonValue: valueFrom,
|
|
18
17
|
field,
|
|
19
|
-
|
|
18
|
+
valueFrom,
|
|
19
|
+
valueTo
|
|
20
20
|
} = props;
|
|
21
21
|
const {
|
|
22
22
|
selectedLocales
|
|
@@ -40,11 +40,11 @@ export const Tabs = props => {
|
|
|
40
40
|
return selectedLocales.map((locale, index) => {
|
|
41
41
|
const localizedTabProps = {
|
|
42
42
|
...props,
|
|
43
|
-
comparisonValue: valueFrom?.[tab.name]?.[locale],
|
|
44
43
|
fieldTab,
|
|
45
44
|
locale,
|
|
46
45
|
tab,
|
|
47
|
-
|
|
46
|
+
valueFrom: valueFrom?.[tab.name]?.[locale],
|
|
47
|
+
valueTo: valueTo?.[tab.name]?.[locale]
|
|
48
48
|
};
|
|
49
49
|
return _jsx("div", {
|
|
50
50
|
className: `${baseClass}__tab-locale`,
|
|
@@ -60,10 +60,10 @@ export const Tabs = props => {
|
|
|
60
60
|
if ("name" in tab && tab.name) {
|
|
61
61
|
const namedTabProps = {
|
|
62
62
|
...props,
|
|
63
|
-
comparisonValue: valueFrom?.[tab.name],
|
|
64
63
|
fieldTab,
|
|
65
64
|
tab,
|
|
66
|
-
|
|
65
|
+
valueFrom: valueFrom?.[tab.name],
|
|
66
|
+
valueTo: valueTo?.[tab.name]
|
|
67
67
|
};
|
|
68
68
|
return _jsx(Tab, {
|
|
69
69
|
...namedTabProps
|
|
@@ -107,12 +107,12 @@ export const Tabs = props => {
|
|
|
107
107
|
const Tab = t0 => {
|
|
108
108
|
const $ = _c(10);
|
|
109
109
|
const {
|
|
110
|
-
comparisonValue: valueFrom,
|
|
111
110
|
fieldTab,
|
|
112
111
|
locale,
|
|
113
112
|
parentIsLocalized,
|
|
114
113
|
tab,
|
|
115
|
-
|
|
114
|
+
valueFrom,
|
|
115
|
+
valueTo
|
|
116
116
|
} = t0;
|
|
117
117
|
const {
|
|
118
118
|
i18n
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","getTranslation","React","useTranslation","useSelectedLocales","DiffCollapser","RenderVersionFieldsToDiff","baseClass","Tabs","props","$","baseVersionField","
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","getTranslation","React","useTranslation","useSelectedLocales","DiffCollapser","RenderVersionFieldsToDiff","baseClass","Tabs","props","$","baseVersionField","field","valueFrom","valueTo","selectedLocales","t0","tabs","t1","tab","i","fields","length","fieldTab","_jsx","className","children","localized","map","locale","index","localizedTabProps","name","Tab","join","namedTabProps","parentIsLocalized","i18n","Label","label","_jsxs","versionFields"],"sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Tabs/index.tsx"],"sourcesContent":["'use client'\nimport type {\n ClientTab,\n FieldDiffClientProps,\n TabsFieldClient,\n TabsFieldDiffClientProps,\n VersionTab,\n} from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React from 'react'\n\nimport { useTranslation } from '../../../../../providers/Translation/index.js'\nimport './index.css'\nimport { useSelectedLocales } from '../../../Default/SelectedLocalesContext.js'\nimport { DiffCollapser } from '../../DiffCollapser/index.js'\nimport { RenderVersionFieldsToDiff } from '../../RenderVersionFieldsToDiff.js'\n\nconst baseClass = 'tabs-diff'\n\nexport const Tabs: React.FC<TabsFieldDiffClientProps> = (props) => {\n const { baseVersionField, field, valueFrom, valueTo } = props\n const { selectedLocales } = useSelectedLocales()\n\n return (\n <div className={baseClass}>\n {baseVersionField.tabs.map((tab, i) => {\n if (!tab?.fields?.length) {\n return null\n }\n const fieldTab = field.tabs?.[i]\n if (!fieldTab) {\n return null\n }\n return (\n <div className={`${baseClass}__tab`} key={i}>\n {(() => {\n if ('name' in fieldTab && selectedLocales && fieldTab.localized) {\n // Named localized tab\n return selectedLocales.map((locale, index) => {\n const localizedTabProps: TabProps = {\n ...props,\n fieldTab,\n locale,\n tab,\n valueFrom: valueFrom?.[tab.name]?.[locale],\n valueTo: valueTo?.[tab.name]?.[locale],\n }\n return (\n <div className={`${baseClass}__tab-locale`} key={[locale, index].join('-')}>\n <div className={`${baseClass}__tab-locale-value`}>\n <Tab key={locale} {...localizedTabProps} />\n </div>\n </div>\n )\n })\n } else if ('name' in tab && tab.name) {\n // Named tab\n const namedTabProps: TabProps = {\n ...props,\n fieldTab,\n tab,\n valueFrom: valueFrom?.[tab.name],\n valueTo: valueTo?.[tab.name],\n }\n return <Tab key={i} {...namedTabProps} />\n } else {\n // Unnamed tab\n return <Tab fieldTab={fieldTab} key={i} {...props} tab={tab} />\n }\n })()}\n </div>\n )\n })}\n </div>\n )\n}\n\ntype TabProps = {\n fieldTab: ClientTab\n tab: VersionTab\n} & FieldDiffClientProps<TabsFieldClient>\n\nconst Tab: React.FC<TabProps> = ({\n fieldTab,\n locale,\n parentIsLocalized,\n tab,\n valueFrom,\n valueTo,\n}) => {\n const { i18n } = useTranslation()\n const { selectedLocales } = useSelectedLocales()\n\n if (!tab.fields?.length) {\n return null\n }\n\n return (\n <DiffCollapser\n fields={fieldTab.fields}\n Label={\n 'label' in tab &&\n tab.label &&\n typeof tab.label !== 'function' && (\n <span>\n {locale && <span className={`${baseClass}__locale-label`}>{locale}</span>}\n {getTranslation(tab.label, i18n)}\n </span>\n )\n }\n locales={selectedLocales}\n parentIsLocalized={parentIsLocalized || fieldTab.localized}\n valueFrom={valueFrom}\n valueTo={valueTo}\n >\n <RenderVersionFieldsToDiff versionFields={tab.fields} />\n </DiffCollapser>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","React","FieldDiffContainer","escapeDiffHTML","getHTMLDiffComponents","unescapeDiffHTML","useTranslation","baseClass","formatValue","value","tokenizeByCharacter","String","JSON","stringify","undefined","Text","t0","$","
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","React","FieldDiffContainer","escapeDiffHTML","getHTMLDiffComponents","unescapeDiffHTML","useTranslation","baseClass","formatValue","value","tokenizeByCharacter","String","JSON","stringify","undefined","Text","t0","$","field","locale","nestingLevel","valueFrom","valueTo","i18n","placeholder","t1","label","formattedValueFrom","formattedValueTo","length","renderedValueFrom","renderedValueTo","From","To","fromHTML","fromLabel","t","postProcess","toHTML","toLabel","_jsx","className"],"sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Text/index.tsx"],"sourcesContent":["'use client'\nimport type { TextFieldDiffClientProps } from 'payload'\n\nimport React from 'react'\n\nimport { FieldDiffContainer } from '../../../../../elements/FieldDiffContainer/index.js'\nimport {\n escapeDiffHTML,\n getHTMLDiffComponents,\n unescapeDiffHTML,\n} from '../../../../../elements/HTMLDiff/index.js'\nimport { useTranslation } from '../../../../../providers/Translation/index.js'\nimport './index.css'\n\nconst baseClass = 'text-diff'\n\nfunction formatValue(value: unknown): {\n tokenizeByCharacter: boolean\n value: string\n} {\n if (typeof value === 'string') {\n return { tokenizeByCharacter: true, value: escapeDiffHTML(value) }\n }\n if (typeof value === 'number') {\n return {\n tokenizeByCharacter: true,\n value: String(value),\n }\n }\n if (typeof value === 'boolean') {\n return {\n tokenizeByCharacter: false,\n value: String(value),\n }\n }\n\n if (value && typeof value === 'object') {\n return {\n tokenizeByCharacter: false,\n value: `<pre>${escapeDiffHTML(JSON.stringify(value, null, 2))}</pre>`,\n }\n }\n\n return {\n tokenizeByCharacter: true,\n value: undefined,\n }\n}\n\nexport const Text: React.FC<TextFieldDiffClientProps> = ({\n field,\n locale,\n nestingLevel,\n valueFrom,\n valueTo,\n}) => {\n const { i18n } = useTranslation()\n\n let placeholder = ''\n\n if (valueTo == valueFrom) {\n placeholder = `<span class=\"html-diff-no-value\"><span>`\n }\n\n const formattedValueFrom = formatValue(valueFrom)\n const formattedValueTo = formatValue(valueTo)\n\n let tokenizeByCharacter = true\n if (formattedValueFrom.value?.length) {\n tokenizeByCharacter = formattedValueFrom.tokenizeByCharacter\n } else if (formattedValueTo.value?.length) {\n tokenizeByCharacter = formattedValueTo.tokenizeByCharacter\n }\n\n const renderedValueFrom = formattedValueFrom.value ?? placeholder\n const renderedValueTo: string = formattedValueTo.value ?? placeholder\n\n const { From, To } = getHTMLDiffComponents({\n fromHTML: '<p>' + renderedValueFrom + '</p>',\n fromLabel: i18n.t('version:comparingAgainst'),\n postProcess: unescapeDiffHTML,\n toHTML: '<p>' + renderedValueTo + '</p>',\n tokenizeByCharacter,\n toLabel: i18n.t('version:version'),\n })\n\n return (\n <FieldDiffContainer\n className={baseClass}\n From={From}\n i18n={i18n}\n label={{\n label: field.label,\n locale,\n }}\n nestingLevel={nestingLevel}\n To={To}\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Upload/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,QAAQ,EACR,cAAc,EACd,UAAU,EACV,WAAW,EACX,0BAA0B,EAC3B,MAAM,SAAS,CAAA;AAEhB,OAAO,EAAkB,KAAK,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC1E,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,OAAO,aAAa,CAAA;AAKpB,KAAK,gBAAgB,GAAG,CAAC,QAAQ,GAAG,UAAU,CAAC,GAAG,MAAM,GAAG,MAAM,CAAA;AACjE,KAAK,aAAa,GAAG;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,CAAC,QAAQ,GAAG,UAAU,CAAC,GAAG,MAAM,GAAG,MAAM,CAAA;CAAE,CAAA;AAE7F,KAAK,SAAS,GAAG,gBAAgB,GAAG,aAAa,CAAA;AAEjD,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,0BAA0B,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Upload/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,QAAQ,EACR,cAAc,EACd,UAAU,EACV,WAAW,EACX,0BAA0B,EAC3B,MAAM,SAAS,CAAA;AAEhB,OAAO,EAAkB,KAAK,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC1E,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,OAAO,aAAa,CAAA;AAKpB,KAAK,gBAAgB,GAAG,CAAC,QAAQ,GAAG,UAAU,CAAC,GAAG,MAAM,GAAG,MAAM,CAAA;AACjE,KAAK,aAAa,GAAG;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,CAAC,QAAQ,GAAG,UAAU,CAAC,GAAG,MAAM,GAAG,MAAM,CAAA;CAAE,CAAA;AAE7F,KAAK,SAAS,GAAG,gBAAgB,GAAG,aAAa,CAAA;AAEjD,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,0BAA0B,CAgCvD,CAAA;AAED,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC;IACvC,KAAK,EAAE,WAAW,CAAA;IAClB,IAAI,EAAE,UAAU,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,WAAW,EAAE,OAAO,CAAA;IACpB,GAAG,EAAE,cAAc,CAAA;IACnB,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;IAC3B,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;CAC1B,CAiFA,CAAA;AAED,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC;IACtC,KAAK,EAAE,WAAW,CAAA;IAClB,IAAI,EAAE,UAAU,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,WAAW,EAAE,OAAO,CAAA;IACpB,GAAG,EAAE,cAAc,CAAA;IACnB,SAAS,EAAE,SAAS,CAAA;IACpB,OAAO,EAAE,SAAS,CAAA;CACnB,CA2DA,CAAA"}
|
|
@@ -8,13 +8,13 @@ import { File } from '../../../../../graphics/File/index.js';
|
|
|
8
8
|
const baseClass = 'upload-diff';
|
|
9
9
|
export const Upload = args => {
|
|
10
10
|
const {
|
|
11
|
-
comparisonValue: valueFrom,
|
|
12
11
|
field,
|
|
13
12
|
i18n,
|
|
14
13
|
locale,
|
|
15
14
|
nestingLevel,
|
|
16
15
|
req,
|
|
17
|
-
|
|
16
|
+
valueFrom,
|
|
17
|
+
valueTo
|
|
18
18
|
} = args;
|
|
19
19
|
const hasMany = 'hasMany' in field && field.hasMany && Array.isArray(valueTo);
|
|
20
20
|
const polymorphic = Array.isArray(field.relationTo);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["getTranslation","React","FieldDiffContainer","getHTMLDiffComponents","File","baseClass","Upload","args","comparisonValue","valueFrom","field","i18n","locale","nestingLevel","req","versionValue","valueTo","hasMany","Array","isArray","polymorphic","relationTo","_jsx","HasManyUploadDiff","SingleUploadDiff","ReactDOMServer","default","From","To","showCollectionSlug","getUploadDocKey","uploadDoc","value","id","FromComponents","map","UploadDocumentDiff","ToComponents","diffResult","fromHTML","component","renderToStaticMarkup","join","toHTML","tokenizeByCharacter","className","label","FromComponent","ToComponent","fromHtml","toHtml","thumbnailSRC","thumbnailURL","url","filename","t","pillLabel","collectionSlug","uploadConfig","payload","collections","config","labels","singular","slug","polyValue","alt","_jsxs","length","src"],"sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Upload/index.tsx"],"sourcesContent":["import type {\n FileData,\n PayloadRequest,\n TypeWithID,\n UploadField,\n UploadFieldDiffServerProps,\n} from 'payload'\n\nimport { getTranslation, type I18nClient } from '@payloadcms/translations'\nimport React from 'react'\n\nimport { FieldDiffContainer } from '../../../../../elements/FieldDiffContainer/index.js'\nimport { getHTMLDiffComponents } from '../../../../../elements/HTMLDiff/index.js'\nimport './index.css'\nimport { File } from '../../../../../graphics/File/index.js'\n\nconst baseClass = 'upload-diff'\n\ntype NonPolyUploadDoc = (FileData & TypeWithID) | number | string\ntype PolyUploadDoc = { relationTo: string; value: (FileData & TypeWithID) | number | string }\n\ntype UploadDoc = NonPolyUploadDoc | PolyUploadDoc\n\nexport const Upload: React.FC<UploadFieldDiffServerProps> = (args) => {\n const {\n comparisonValue: valueFrom,\n field,\n i18n,\n locale,\n nestingLevel,\n req,\n versionValue: valueTo,\n } = args\n const hasMany = 'hasMany' in field && field.hasMany && Array.isArray(valueTo)\n const polymorphic = Array.isArray(field.relationTo)\n\n if (hasMany) {\n return (\n <HasManyUploadDiff\n field={field}\n i18n={i18n}\n locale={locale}\n nestingLevel={nestingLevel}\n polymorphic={polymorphic}\n req={req}\n valueFrom={valueFrom as UploadDoc[]}\n valueTo={valueTo as UploadDoc[]}\n />\n )\n }\n\n return (\n <SingleUploadDiff\n field={field}\n i18n={i18n}\n locale={locale}\n nestingLevel={nestingLevel}\n polymorphic={polymorphic}\n req={req}\n valueFrom={valueFrom as UploadDoc}\n valueTo={valueTo as UploadDoc}\n />\n )\n}\n\nexport const HasManyUploadDiff: React.FC<{\n field: UploadField\n i18n: I18nClient\n locale: string\n nestingLevel?: number\n polymorphic: boolean\n req: PayloadRequest\n valueFrom: Array<UploadDoc>\n valueTo: Array<UploadDoc>\n}> = async (args) => {\n const { field, i18n, locale, nestingLevel, polymorphic, req, valueFrom, valueTo } = args\n const ReactDOMServer = (await import('react-dom/server')).default\n\n let From: React.ReactNode = ''\n let To: React.ReactNode = ''\n\n const showCollectionSlug = Array.isArray(field.relationTo)\n\n const getUploadDocKey = (uploadDoc: UploadDoc): number | string => {\n if (typeof uploadDoc === 'object' && 'relationTo' in uploadDoc) {\n // Polymorphic case\n const value = uploadDoc.value\n return typeof value === 'object' ? value.id : value\n }\n // Non-polymorphic case\n return typeof uploadDoc === 'object' ? uploadDoc.id : uploadDoc\n }\n\n const FromComponents = valueFrom\n ? valueFrom.map((uploadDoc) => (\n <UploadDocumentDiff\n i18n={i18n}\n key={getUploadDocKey(uploadDoc)}\n polymorphic={polymorphic}\n relationTo={field.relationTo}\n req={req}\n showCollectionSlug={showCollectionSlug}\n uploadDoc={uploadDoc}\n />\n ))\n : null\n const ToComponents = valueTo\n ? valueTo.map((uploadDoc) => (\n <UploadDocumentDiff\n i18n={i18n}\n key={getUploadDocKey(uploadDoc)}\n polymorphic={polymorphic}\n relationTo={field.relationTo}\n req={req}\n showCollectionSlug={showCollectionSlug}\n uploadDoc={uploadDoc}\n />\n ))\n : null\n\n const diffResult = getHTMLDiffComponents({\n fromHTML:\n `<div class=\"${baseClass}-hasMany\">` +\n (FromComponents\n ? FromComponents.map(\n (component) => `<div>${ReactDOMServer.renderToStaticMarkup(component)}</div>`,\n ).join('')\n : '') +\n '</div>',\n toHTML:\n `<div class=\"${baseClass}-hasMany\">` +\n (ToComponents\n ? ToComponents.map(\n (component) => `<div>${ReactDOMServer.renderToStaticMarkup(component)}</div>`,\n ).join('')\n : '') +\n '</div>',\n tokenizeByCharacter: false,\n })\n From = diffResult.From\n To = diffResult.To\n\n return (\n <FieldDiffContainer\n className={`${baseClass}-container ${baseClass}-container--hasMany`}\n From={From}\n i18n={i18n}\n label={{\n label: field.label,\n locale,\n }}\n nestingLevel={nestingLevel}\n To={To}\n />\n )\n}\n\nexport const SingleUploadDiff: React.FC<{\n field: UploadField\n i18n: I18nClient\n locale: string\n nestingLevel?: number\n polymorphic: boolean\n req: PayloadRequest\n valueFrom: UploadDoc\n valueTo: UploadDoc\n}> = async (args) => {\n const { field, i18n, locale, nestingLevel, polymorphic, req, valueFrom, valueTo } = args\n\n const ReactDOMServer = (await import('react-dom/server')).default\n\n let From: React.ReactNode = ''\n let To: React.ReactNode = ''\n\n const showCollectionSlug = Array.isArray(field.relationTo)\n\n const FromComponent = valueFrom ? (\n <UploadDocumentDiff\n i18n={i18n}\n polymorphic={polymorphic}\n relationTo={field.relationTo}\n req={req}\n showCollectionSlug={showCollectionSlug}\n uploadDoc={valueFrom}\n />\n ) : null\n const ToComponent = valueTo ? (\n <UploadDocumentDiff\n i18n={i18n}\n polymorphic={polymorphic}\n relationTo={field.relationTo}\n req={req}\n showCollectionSlug={showCollectionSlug}\n uploadDoc={valueTo}\n />\n ) : null\n\n const fromHtml = FromComponent\n ? ReactDOMServer.renderToStaticMarkup(FromComponent)\n : '<p>' + '' + '</p>'\n const toHtml = ToComponent\n ? ReactDOMServer.renderToStaticMarkup(ToComponent)\n : '<p>' + '' + '</p>'\n\n const diffResult = getHTMLDiffComponents({\n fromHTML: fromHtml,\n toHTML: toHtml,\n tokenizeByCharacter: false,\n })\n From = diffResult.From\n To = diffResult.To\n\n return (\n <FieldDiffContainer\n className={`${baseClass}-container ${baseClass}-container--hasOne`}\n From={From}\n i18n={i18n}\n label={{\n label: field.label,\n locale,\n }}\n nestingLevel={nestingLevel}\n To={To}\n />\n )\n}\n\nconst UploadDocumentDiff = (args: {\n i18n: I18nClient\n polymorphic: boolean\n relationTo: string | string[]\n req: PayloadRequest\n showCollectionSlug?: boolean\n uploadDoc: UploadDoc\n}) => {\n const { i18n, polymorphic, relationTo, req, showCollectionSlug, uploadDoc } = args\n\n let thumbnailSRC: string = ''\n\n const value = polymorphic\n ? (uploadDoc as { relationTo: string; value: FileData & TypeWithID }).value\n : (uploadDoc as FileData & TypeWithID)\n\n if (value && typeof value === 'object' && 'thumbnailURL' in value) {\n thumbnailSRC =\n (typeof value.thumbnailURL === 'string' && value.thumbnailURL) ||\n (typeof value.url === 'string' && value.url) ||\n ''\n }\n\n let filename: string\n if (value && typeof value === 'object') {\n filename = value.filename\n } else {\n filename = `${i18n.t('general:untitled')} - ID: ${uploadDoc as number | string}`\n }\n\n let pillLabel: null | string = null\n\n if (showCollectionSlug) {\n let collectionSlug: string\n if (polymorphic && typeof uploadDoc === 'object' && 'relationTo' in uploadDoc) {\n collectionSlug = uploadDoc.relationTo\n } else {\n collectionSlug = typeof relationTo === 'string' ? relationTo : relationTo[0]\n }\n const uploadConfig = req.payload.collections[collectionSlug].config\n pillLabel = uploadConfig.labels?.singular\n ? getTranslation(uploadConfig.labels.singular, i18n)\n : uploadConfig.slug\n }\n\n let id: number | string | undefined\n if (polymorphic && typeof uploadDoc === 'object' && 'relationTo' in uploadDoc) {\n const polyValue = uploadDoc.value\n id = typeof polyValue === 'object' ? polyValue.id : polyValue\n } else if (typeof uploadDoc === 'object' && 'id' in uploadDoc) {\n id = uploadDoc.id\n } else if (typeof uploadDoc === 'string' || typeof uploadDoc === 'number') {\n id = uploadDoc\n }\n\n const alt =\n (value && typeof value === 'object' && (value as { alt?: string }).alt) || filename || ''\n\n return (\n <div\n className={`${baseClass}`}\n data-enable-match=\"true\"\n data-id={id}\n data-relation-to={relationTo}\n >\n <div className={`${baseClass}__card`}>\n <div className={`${baseClass}__thumbnail`}>\n {thumbnailSRC?.length ? <img alt={alt} src={thumbnailSRC} /> : <File />}\n </div>\n {pillLabel && (\n <div className={`${baseClass}__pill`} data-enable-match=\"false\">\n <span>{pillLabel}</span>\n </div>\n )}\n <div className={`${baseClass}__info`} data-enable-match=\"false\">\n <strong>{filename}</strong>\n </div>\n </div>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["getTranslation","React","FieldDiffContainer","getHTMLDiffComponents","File","baseClass","Upload","args","field","i18n","locale","nestingLevel","req","valueFrom","valueTo","hasMany","Array","isArray","polymorphic","relationTo","_jsx","HasManyUploadDiff","SingleUploadDiff","ReactDOMServer","default","From","To","showCollectionSlug","getUploadDocKey","uploadDoc","value","id","FromComponents","map","UploadDocumentDiff","ToComponents","diffResult","fromHTML","component","renderToStaticMarkup","join","toHTML","tokenizeByCharacter","className","label","FromComponent","ToComponent","fromHtml","toHtml","thumbnailSRC","thumbnailURL","url","filename","t","pillLabel","collectionSlug","uploadConfig","payload","collections","config","labels","singular","slug","polyValue","alt","_jsxs","length","src"],"sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Upload/index.tsx"],"sourcesContent":["import type {\n FileData,\n PayloadRequest,\n TypeWithID,\n UploadField,\n UploadFieldDiffServerProps,\n} from 'payload'\n\nimport { getTranslation, type I18nClient } from '@payloadcms/translations'\nimport React from 'react'\n\nimport { FieldDiffContainer } from '../../../../../elements/FieldDiffContainer/index.js'\nimport { getHTMLDiffComponents } from '../../../../../elements/HTMLDiff/index.js'\nimport './index.css'\nimport { File } from '../../../../../graphics/File/index.js'\n\nconst baseClass = 'upload-diff'\n\ntype NonPolyUploadDoc = (FileData & TypeWithID) | number | string\ntype PolyUploadDoc = { relationTo: string; value: (FileData & TypeWithID) | number | string }\n\ntype UploadDoc = NonPolyUploadDoc | PolyUploadDoc\n\nexport const Upload: React.FC<UploadFieldDiffServerProps> = (args) => {\n const { field, i18n, locale, nestingLevel, req, valueFrom, valueTo } = args\n const hasMany = 'hasMany' in field && field.hasMany && Array.isArray(valueTo)\n const polymorphic = Array.isArray(field.relationTo)\n\n if (hasMany) {\n return (\n <HasManyUploadDiff\n field={field}\n i18n={i18n}\n locale={locale}\n nestingLevel={nestingLevel}\n polymorphic={polymorphic}\n req={req}\n valueFrom={valueFrom as UploadDoc[]}\n valueTo={valueTo as UploadDoc[]}\n />\n )\n }\n\n return (\n <SingleUploadDiff\n field={field}\n i18n={i18n}\n locale={locale}\n nestingLevel={nestingLevel}\n polymorphic={polymorphic}\n req={req}\n valueFrom={valueFrom as UploadDoc}\n valueTo={valueTo as UploadDoc}\n />\n )\n}\n\nexport const HasManyUploadDiff: React.FC<{\n field: UploadField\n i18n: I18nClient\n locale: string\n nestingLevel?: number\n polymorphic: boolean\n req: PayloadRequest\n valueFrom: Array<UploadDoc>\n valueTo: Array<UploadDoc>\n}> = async (args) => {\n const { field, i18n, locale, nestingLevel, polymorphic, req, valueFrom, valueTo } = args\n const ReactDOMServer = (await import('react-dom/server')).default\n\n let From: React.ReactNode = ''\n let To: React.ReactNode = ''\n\n const showCollectionSlug = Array.isArray(field.relationTo)\n\n const getUploadDocKey = (uploadDoc: UploadDoc): number | string => {\n if (typeof uploadDoc === 'object' && 'relationTo' in uploadDoc) {\n // Polymorphic case\n const value = uploadDoc.value\n return typeof value === 'object' ? value.id : value\n }\n // Non-polymorphic case\n return typeof uploadDoc === 'object' ? uploadDoc.id : uploadDoc\n }\n\n const FromComponents = valueFrom\n ? valueFrom.map((uploadDoc) => (\n <UploadDocumentDiff\n i18n={i18n}\n key={getUploadDocKey(uploadDoc)}\n polymorphic={polymorphic}\n relationTo={field.relationTo}\n req={req}\n showCollectionSlug={showCollectionSlug}\n uploadDoc={uploadDoc}\n />\n ))\n : null\n const ToComponents = valueTo\n ? valueTo.map((uploadDoc) => (\n <UploadDocumentDiff\n i18n={i18n}\n key={getUploadDocKey(uploadDoc)}\n polymorphic={polymorphic}\n relationTo={field.relationTo}\n req={req}\n showCollectionSlug={showCollectionSlug}\n uploadDoc={uploadDoc}\n />\n ))\n : null\n\n const diffResult = getHTMLDiffComponents({\n fromHTML:\n `<div class=\"${baseClass}-hasMany\">` +\n (FromComponents\n ? FromComponents.map(\n (component) => `<div>${ReactDOMServer.renderToStaticMarkup(component)}</div>`,\n ).join('')\n : '') +\n '</div>',\n toHTML:\n `<div class=\"${baseClass}-hasMany\">` +\n (ToComponents\n ? ToComponents.map(\n (component) => `<div>${ReactDOMServer.renderToStaticMarkup(component)}</div>`,\n ).join('')\n : '') +\n '</div>',\n tokenizeByCharacter: false,\n })\n From = diffResult.From\n To = diffResult.To\n\n return (\n <FieldDiffContainer\n className={`${baseClass}-container ${baseClass}-container--hasMany`}\n From={From}\n i18n={i18n}\n label={{\n label: field.label,\n locale,\n }}\n nestingLevel={nestingLevel}\n To={To}\n />\n )\n}\n\nexport const SingleUploadDiff: React.FC<{\n field: UploadField\n i18n: I18nClient\n locale: string\n nestingLevel?: number\n polymorphic: boolean\n req: PayloadRequest\n valueFrom: UploadDoc\n valueTo: UploadDoc\n}> = async (args) => {\n const { field, i18n, locale, nestingLevel, polymorphic, req, valueFrom, valueTo } = args\n\n const ReactDOMServer = (await import('react-dom/server')).default\n\n let From: React.ReactNode = ''\n let To: React.ReactNode = ''\n\n const showCollectionSlug = Array.isArray(field.relationTo)\n\n const FromComponent = valueFrom ? (\n <UploadDocumentDiff\n i18n={i18n}\n polymorphic={polymorphic}\n relationTo={field.relationTo}\n req={req}\n showCollectionSlug={showCollectionSlug}\n uploadDoc={valueFrom}\n />\n ) : null\n const ToComponent = valueTo ? (\n <UploadDocumentDiff\n i18n={i18n}\n polymorphic={polymorphic}\n relationTo={field.relationTo}\n req={req}\n showCollectionSlug={showCollectionSlug}\n uploadDoc={valueTo}\n />\n ) : null\n\n const fromHtml = FromComponent\n ? ReactDOMServer.renderToStaticMarkup(FromComponent)\n : '<p>' + '' + '</p>'\n const toHtml = ToComponent\n ? ReactDOMServer.renderToStaticMarkup(ToComponent)\n : '<p>' + '' + '</p>'\n\n const diffResult = getHTMLDiffComponents({\n fromHTML: fromHtml,\n toHTML: toHtml,\n tokenizeByCharacter: false,\n })\n From = diffResult.From\n To = diffResult.To\n\n return (\n <FieldDiffContainer\n className={`${baseClass}-container ${baseClass}-container--hasOne`}\n From={From}\n i18n={i18n}\n label={{\n label: field.label,\n locale,\n }}\n nestingLevel={nestingLevel}\n To={To}\n />\n )\n}\n\nconst UploadDocumentDiff = (args: {\n i18n: I18nClient\n polymorphic: boolean\n relationTo: string | string[]\n req: PayloadRequest\n showCollectionSlug?: boolean\n uploadDoc: UploadDoc\n}) => {\n const { i18n, polymorphic, relationTo, req, showCollectionSlug, uploadDoc } = args\n\n let thumbnailSRC: string = ''\n\n const value = polymorphic\n ? (uploadDoc as { relationTo: string; value: FileData & TypeWithID }).value\n : (uploadDoc as FileData & TypeWithID)\n\n if (value && typeof value === 'object' && 'thumbnailURL' in value) {\n thumbnailSRC =\n (typeof value.thumbnailURL === 'string' && value.thumbnailURL) ||\n (typeof value.url === 'string' && value.url) ||\n ''\n }\n\n let filename: string\n if (value && typeof value === 'object') {\n filename = value.filename\n } else {\n filename = `${i18n.t('general:untitled')} - ID: ${uploadDoc as number | string}`\n }\n\n let pillLabel: null | string = null\n\n if (showCollectionSlug) {\n let collectionSlug: string\n if (polymorphic && typeof uploadDoc === 'object' && 'relationTo' in uploadDoc) {\n collectionSlug = uploadDoc.relationTo\n } else {\n collectionSlug = typeof relationTo === 'string' ? relationTo : relationTo[0]\n }\n const uploadConfig = req.payload.collections[collectionSlug].config\n pillLabel = uploadConfig.labels?.singular\n ? getTranslation(uploadConfig.labels.singular, i18n)\n : uploadConfig.slug\n }\n\n let id: number | string | undefined\n if (polymorphic && typeof uploadDoc === 'object' && 'relationTo' in uploadDoc) {\n const polyValue = uploadDoc.value\n id = typeof polyValue === 'object' ? polyValue.id : polyValue\n } else if (typeof uploadDoc === 'object' && 'id' in uploadDoc) {\n id = uploadDoc.id\n } else if (typeof uploadDoc === 'string' || typeof uploadDoc === 'number') {\n id = uploadDoc\n }\n\n const alt =\n (value && typeof value === 'object' && (value as { alt?: string }).alt) || filename || ''\n\n return (\n <div\n className={`${baseClass}`}\n data-enable-match=\"true\"\n data-id={id}\n data-relation-to={relationTo}\n >\n <div className={`${baseClass}__card`}>\n <div className={`${baseClass}__thumbnail`}>\n {thumbnailSRC?.length ? <img alt={alt} src={thumbnailSRC} /> : <File />}\n </div>\n {pillLabel && (\n <div className={`${baseClass}__pill`} data-enable-match=\"false\">\n <span>{pillLabel}</span>\n </div>\n )}\n <div className={`${baseClass}__info`} data-enable-match=\"false\">\n <strong>{filename}</strong>\n </div>\n </div>\n </div>\n )\n}\n"],"mappings":";AAQA,SAASA,cAAc,QAAyB;AAChD,OAAOC,KAAA,MAAW;AAElB,SAASC,kBAAkB,QAAQ;AACnC,SAASC,qBAAqB,QAAQ;AACtC,OAAO;AACP,SAASC,IAAI,QAAQ;AAErB,MAAMC,SAAA,GAAY;AAOlB,OAAO,MAAMC,MAAA,GAAgDC,IAAA;EAC3D,MAAM;IAAEC,KAAK;IAAEC,IAAI;IAAEC,MAAM;IAAEC,YAAY;IAAEC,GAAG;IAAEC,SAAS;IAAEC;EAAO,CAAE,GAAGP,IAAA;EACvE,MAAMQ,OAAA,GAAU,aAAaP,KAAA,IAASA,KAAA,CAAMO,OAAO,IAAIC,KAAA,CAAMC,OAAO,CAACH,OAAA;EACrE,MAAMI,WAAA,GAAcF,KAAA,CAAMC,OAAO,CAACT,KAAA,CAAMW,UAAU;EAElD,IAAIJ,OAAA,EAAS;IACX,oBACEK,IAAA,CAACC,iBAAA;MACCb,KAAA,EAAOA,KAAA;MACPC,IAAA,EAAMA,IAAA;MACNC,MAAA,EAAQA,MAAA;MACRC,YAAA,EAAcA,YAAA;MACdO,WAAA,EAAaA,WAAA;MACbN,GAAA,EAAKA,GAAA;MACLC,SAAA,EAAWA,SAAA;MACXC,OAAA,EAASA;;EAGf;EAEA,oBACEM,IAAA,CAACE,gBAAA;IACCd,KAAA,EAAOA,KAAA;IACPC,IAAA,EAAMA,IAAA;IACNC,MAAA,EAAQA,MAAA;IACRC,YAAA,EAAcA,YAAA;IACdO,WAAA,EAAaA,WAAA;IACbN,GAAA,EAAKA,GAAA;IACLC,SAAA,EAAWA,SAAA;IACXC,OAAA,EAASA;;AAGf;AAEA,OAAO,MAAMO,iBAAA,GASR,MAAOd,IAAA;EACV,MAAM;IAAEC,KAAK;IAAEC,IAAI;IAAEC,MAAM;IAAEC,YAAY;IAAEO,WAAW;IAAEN,GAAG;IAAEC,SAAS;IAAEC;EAAO,CAAE,GAAGP,IAAA;EACpF,MAAMgB,cAAA,GAAiB,CAAC,MAAM,MAAM,CAAC,mBAAkB,EAAGC,OAAO;EAEjE,IAAIC,IAAA,GAAwB;EAC5B,IAAIC,EAAA,GAAsB;EAE1B,MAAMC,kBAAA,GAAqBX,KAAA,CAAMC,OAAO,CAACT,KAAA,CAAMW,UAAU;EAEzD,MAAMS,eAAA,GAAmBC,SAAA;IACvB,IAAI,OAAOA,SAAA,KAAc,YAAY,gBAAgBA,SAAA,EAAW;MAC9D;MACA,MAAMC,KAAA,GAAQD,SAAA,CAAUC,KAAK;MAC7B,OAAO,OAAOA,KAAA,KAAU,WAAWA,KAAA,CAAMC,EAAE,GAAGD,KAAA;IAChD;IACA;IACA,OAAO,OAAOD,SAAA,KAAc,WAAWA,SAAA,CAAUE,EAAE,GAAGF,SAAA;EACxD;EAEA,MAAMG,cAAA,GAAiBnB,SAAA,GACnBA,SAAA,CAAUoB,GAAG,CAAEJ,SAAA,iBACbT,IAAA,CAACc,kBAAA;IACCzB,IAAA,EAAMA,IAAA;IAENS,WAAA,EAAaA,WAAA;IACbC,UAAA,EAAYX,KAAA,CAAMW,UAAU;IAC5BP,GAAA,EAAKA,GAAA;IACLe,kBAAA,EAAoBA,kBAAA;IACpBE,SAAA,EAAWA;KALND,eAAA,CAAgBC,SAAA,MAQzB;EACJ,MAAMM,YAAA,GAAerB,OAAA,GACjBA,OAAA,CAAQmB,GAAG,CAAEJ,SAAA,iBACXT,IAAA,CAACc,kBAAA;IACCzB,IAAA,EAAMA,IAAA;IAENS,WAAA,EAAaA,WAAA;IACbC,UAAA,EAAYX,KAAA,CAAMW,UAAU;IAC5BP,GAAA,EAAKA,GAAA;IACLe,kBAAA,EAAoBA,kBAAA;IACpBE,SAAA,EAAWA;KALND,eAAA,CAAgBC,SAAA,MAQzB;EAEJ,MAAMO,UAAA,GAAajC,qBAAA,CAAsB;IACvCkC,QAAA,EACE,eAAehC,SAAA,YAAqB,IACnC2B,cAAA,GACGA,cAAA,CAAeC,GAAG,CACfK,SAAA,IAAc,QAAQf,cAAA,CAAegB,oBAAoB,CAACD,SAAA,SAAkB,EAC7EE,IAAI,CAAC,MACP,EAAC,IACL;IACFC,MAAA,EACE,eAAepC,SAAA,YAAqB,IACnC8B,YAAA,GACGA,YAAA,CAAaF,GAAG,CACbK,SAAA,IAAc,QAAQf,cAAA,CAAegB,oBAAoB,CAACD,SAAA,SAAkB,EAC7EE,IAAI,CAAC,MACP,EAAC,IACL;IACFE,mBAAA,EAAqB;EACvB;EACAjB,IAAA,GAAOW,UAAA,CAAWX,IAAI;EACtBC,EAAA,GAAKU,UAAA,CAAWV,EAAE;EAElB,oBACEN,IAAA,CAAClB,kBAAA;IACCyC,SAAA,EAAW,GAAGtC,SAAA,cAAuBA,SAAA,qBAA8B;IACnEoB,IAAA,EAAMA,IAAA;IACNhB,IAAA,EAAMA,IAAA;IACNmC,KAAA,EAAO;MACLA,KAAA,EAAOpC,KAAA,CAAMoC,KAAK;MAClBlC;IACF;IACAC,YAAA,EAAcA,YAAA;IACde,EAAA,EAAIA;;AAGV;AAEA,OAAO,MAAMJ,gBAAA,GASR,MAAOf,IAAA;EACV,MAAM;IAAEC,KAAK;IAAEC,IAAI;IAAEC,MAAM;IAAEC,YAAY;IAAEO,WAAW;IAAEN,GAAG;IAAEC,SAAS;IAAEC;EAAO,CAAE,GAAGP,IAAA;EAEpF,MAAMgB,cAAA,GAAiB,CAAC,MAAM,MAAM,CAAC,mBAAkB,EAAGC,OAAO;EAEjE,IAAIC,IAAA,GAAwB;EAC5B,IAAIC,EAAA,GAAsB;EAE1B,MAAMC,kBAAA,GAAqBX,KAAA,CAAMC,OAAO,CAACT,KAAA,CAAMW,UAAU;EAEzD,MAAM0B,aAAA,GAAgBhC,SAAA,gBACpBO,IAAA,CAACc,kBAAA;IACCzB,IAAA,EAAMA,IAAA;IACNS,WAAA,EAAaA,WAAA;IACbC,UAAA,EAAYX,KAAA,CAAMW,UAAU;IAC5BP,GAAA,EAAKA,GAAA;IACLe,kBAAA,EAAoBA,kBAAA;IACpBE,SAAA,EAAWhB;OAEX;EACJ,MAAMiC,WAAA,GAAchC,OAAA,gBAClBM,IAAA,CAACc,kBAAA;IACCzB,IAAA,EAAMA,IAAA;IACNS,WAAA,EAAaA,WAAA;IACbC,UAAA,EAAYX,KAAA,CAAMW,UAAU;IAC5BP,GAAA,EAAKA,GAAA;IACLe,kBAAA,EAAoBA,kBAAA;IACpBE,SAAA,EAAWf;OAEX;EAEJ,MAAMiC,QAAA,GAAWF,aAAA,GACbtB,cAAA,CAAegB,oBAAoB,CAACM,aAAA,IACpC,QAAQ,KAAK;EACjB,MAAMG,MAAA,GAASF,WAAA,GACXvB,cAAA,CAAegB,oBAAoB,CAACO,WAAA,IACpC,QAAQ,KAAK;EAEjB,MAAMV,UAAA,GAAajC,qBAAA,CAAsB;IACvCkC,QAAA,EAAUU,QAAA;IACVN,MAAA,EAAQO,MAAA;IACRN,mBAAA,EAAqB;EACvB;EACAjB,IAAA,GAAOW,UAAA,CAAWX,IAAI;EACtBC,EAAA,GAAKU,UAAA,CAAWV,EAAE;EAElB,oBACEN,IAAA,CAAClB,kBAAA;IACCyC,SAAA,EAAW,GAAGtC,SAAA,cAAuBA,SAAA,oBAA6B;IAClEoB,IAAA,EAAMA,IAAA;IACNhB,IAAA,EAAMA,IAAA;IACNmC,KAAA,EAAO;MACLA,KAAA,EAAOpC,KAAA,CAAMoC,KAAK;MAClBlC;IACF;IACAC,YAAA,EAAcA,YAAA;IACde,EAAA,EAAIA;;AAGV;AAEA,MAAMQ,kBAAA,GAAsB3B,IAAA;EAQ1B,MAAM;IAAEE,IAAI;IAAES,WAAW;IAAEC,UAAU;IAAEP,GAAG;IAAEe,kBAAkB;IAAEE;EAAS,CAAE,GAAGtB,IAAA;EAE9E,IAAI0C,YAAA,GAAuB;EAE3B,MAAMnB,KAAA,GAAQZ,WAAA,GACVW,SAAC,CAAmEC,KAAK,GACxED,SAAA;EAEL,IAAIC,KAAA,IAAS,OAAOA,KAAA,KAAU,YAAY,kBAAkBA,KAAA,EAAO;IACjEmB,YAAA,GACE,OAAQnB,KAAA,CAAMoB,YAAY,KAAK,YAAYpB,KAAA,CAAMoB,YAAY,IAC5D,OAAOpB,KAAA,CAAMqB,GAAG,KAAK,YAAYrB,KAAA,CAAMqB,GAAG,IAC3C;EACJ;EAEA,IAAIC,QAAA;EACJ,IAAItB,KAAA,IAAS,OAAOA,KAAA,KAAU,UAAU;IACtCsB,QAAA,GAAWtB,KAAA,CAAMsB,QAAQ;EAC3B,OAAO;IACLA,QAAA,GAAW,GAAG3C,IAAA,CAAK4C,CAAC,CAAC,6BAA6BxB,SAAA,EAA8B;EAClF;EAEA,IAAIyB,SAAA,GAA2B;EAE/B,IAAI3B,kBAAA,EAAoB;IACtB,IAAI4B,cAAA;IACJ,IAAIrC,WAAA,IAAe,OAAOW,SAAA,KAAc,YAAY,gBAAgBA,SAAA,EAAW;MAC7E0B,cAAA,GAAiB1B,SAAA,CAAUV,UAAU;IACvC,OAAO;MACLoC,cAAA,GAAiB,OAAOpC,UAAA,KAAe,WAAWA,UAAA,GAAaA,UAAU,CAAC,EAAE;IAC9E;IACA,MAAMqC,YAAA,GAAe5C,GAAA,CAAI6C,OAAO,CAACC,WAAW,CAACH,cAAA,CAAe,CAACI,MAAM;IACnEL,SAAA,GAAYE,YAAA,CAAaI,MAAM,EAAEC,QAAA,GAC7B7D,cAAA,CAAewD,YAAA,CAAaI,MAAM,CAACC,QAAQ,EAAEpD,IAAA,IAC7C+C,YAAA,CAAaM,IAAI;EACvB;EAEA,IAAI/B,EAAA;EACJ,IAAIb,WAAA,IAAe,OAAOW,SAAA,KAAc,YAAY,gBAAgBA,SAAA,EAAW;IAC7E,MAAMkC,SAAA,GAAYlC,SAAA,CAAUC,KAAK;IACjCC,EAAA,GAAK,OAAOgC,SAAA,KAAc,WAAWA,SAAA,CAAUhC,EAAE,GAAGgC,SAAA;EACtD,OAAO,IAAI,OAAOlC,SAAA,KAAc,YAAY,QAAQA,SAAA,EAAW;IAC7DE,EAAA,GAAKF,SAAA,CAAUE,EAAE;EACnB,OAAO,IAAI,OAAOF,SAAA,KAAc,YAAY,OAAOA,SAAA,KAAc,UAAU;IACzEE,EAAA,GAAKF,SAAA;EACP;EAEA,MAAMmC,GAAA,GACJlC,KAAC,IAAS,OAAOA,KAAA,KAAU,YAAYA,KAAC,CAA2BkC,GAAG,IAAKZ,QAAA,IAAY;EAEzF,oBACEhC,IAAA,CAAC;IACCuB,SAAA,EAAW,GAAGtC,SAAA,EAAW;IACzB,qBAAkB;IAClB,WAAS0B,EAAA;IACT,oBAAkBZ,UAAA;cAElB,aAAA8C,KAAA,CAAC;MAAItB,SAAA,EAAW,GAAGtC,SAAA,QAAiB;8BAClCe,IAAA,CAAC;QAAIuB,SAAA,EAAW,GAAGtC,SAAA,aAAsB;kBACtC4C,YAAA,EAAciB,MAAA,gBAAS9C,IAAA,CAAC;UAAI4C,GAAA,EAAKA,GAAA;UAAKG,GAAA,EAAKlB;0BAAmB7B,IAAA,CAAChB,IAAA;UAEjEkD,SAAA,iBACClC,IAAA,CAAC;QAAIuB,SAAA,EAAW,GAAGtC,SAAA,QAAiB;QAAE,qBAAkB;kBACtD,aAAAe,IAAA,CAAC;oBAAMkC;;uBAGXlC,IAAA,CAAC;QAAIuB,SAAA,EAAW,GAAGtC,SAAA,QAAiB;QAAE,qBAAkB;kBACtD,aAAAe,IAAA,CAAC;oBAAQgC;;;;;AAKnB","ignoreList":[]}
|
|
@@ -92,7 +92,7 @@
|
|
|
92
92
|
);
|
|
93
93
|
|
|
94
94
|
/* Match the thumbnail, two text lines, padding, metadata gap, and card border. */
|
|
95
|
-
|
|
95
|
+
--recents-content-height: max(
|
|
96
96
|
calc(var(--spacer-6) * 5),
|
|
97
97
|
calc(
|
|
98
98
|
(var(--recents-card-width) - var(--stroke-width-small) * 2) * 3 / 4 +
|
|
@@ -100,6 +100,7 @@
|
|
|
100
100
|
var(--stroke-width-small) * 2
|
|
101
101
|
)
|
|
102
102
|
);
|
|
103
|
+
min-block-size: var(--recents-content-height);
|
|
103
104
|
position: relative;
|
|
104
105
|
}
|
|
105
106
|
|
|
@@ -217,7 +218,7 @@
|
|
|
217
218
|
align-items: center;
|
|
218
219
|
justify-content: center;
|
|
219
220
|
gap: var(--spacer-2);
|
|
220
|
-
min-
|
|
221
|
+
min-block-size: var(--recents-content-height);
|
|
221
222
|
padding: var(--spacer-5) var(--spacer-3);
|
|
222
223
|
border: var(--stroke-width-small) dashed var(--color-border);
|
|
223
224
|
border-radius: var(--radius-large);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@payloadcms/ui",
|
|
3
|
-
"version": "4.0.0-canary.
|
|
3
|
+
"version": "4.0.0-canary.39",
|
|
4
4
|
"homepage": "https://payloadcms.com",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -320,7 +320,7 @@
|
|
|
320
320
|
"ts-essentials": "10.0.3",
|
|
321
321
|
"use-context-selector": "2.0.0",
|
|
322
322
|
"uuid": "14.0.0",
|
|
323
|
-
"@payloadcms/translations": "4.0.0-canary.
|
|
323
|
+
"@payloadcms/translations": "4.0.0-canary.39"
|
|
324
324
|
},
|
|
325
325
|
"devDependencies": {
|
|
326
326
|
"@babel/cli": "7.27.2",
|
|
@@ -335,12 +335,12 @@
|
|
|
335
335
|
"esbuild": "0.27.1",
|
|
336
336
|
"esbuild-sass-plugin": "3.3.1",
|
|
337
337
|
"@payloadcms/eslint-config": "3.28.0",
|
|
338
|
-
"payload": "4.0.0-canary.
|
|
338
|
+
"payload": "4.0.0-canary.39"
|
|
339
339
|
},
|
|
340
340
|
"peerDependencies": {
|
|
341
341
|
"react": "^19.0.1 || ^19.1.2 || ^19.2.1",
|
|
342
342
|
"react-dom": "^19.0.1 || ^19.1.2 || ^19.2.1",
|
|
343
|
-
"payload": "4.0.0-canary.
|
|
343
|
+
"payload": "4.0.0-canary.39"
|
|
344
344
|
},
|
|
345
345
|
"engines": {
|
|
346
346
|
"node": ">=24.15.0"
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
// Workaround for react-datepicker and other cjs dependencies potentially inserting require("react") statements
|
|
3
|
-
import * as requireReact from 'react';
|
|
4
|
-
import * as requireReactDom from 'react-dom';
|
|
5
|
-
|
|
6
|
-
function require(m) {
|
|
7
|
-
if (m === 'react') return requireReact;
|
|
8
|
-
if (m === 'react-dom') return requireReactDom;
|
|
9
|
-
throw new Error(`Unknown module ${m}`);
|
|
10
|
-
}
|
|
11
|
-
// Workaround end
|
|
12
|
-
|
|
13
|
-
import{h as he}from"./chunk-AVJIZPR3.js";import{c as Lr}from"react/compiler-runtime";import{jsx as Qe}from"react/jsx-runtime";function ve(t,e){(e==null||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function et(t){if(Array.isArray(t))return t}function tt(t,e,r){return(e=at(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function rt(t,e){var r=t==null?null:typeof Symbol<"u"&&t[Symbol.iterator]||t["@@iterator"];if(r!=null){var n,i,o,a,u=[],c=!0,s=!1;try{if(o=(r=r.call(t)).next,e!==0)for(;!(c=(n=o.call(r)).done)&&(u.push(n.value),u.length!==e);c=!0);}catch(d){s=!0,i=d}finally{try{if(!c&&r.return!=null&&(a=r.return(),Object(a)!==a))return}finally{if(s)throw i}}return u}}function nt(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
14
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function be(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(t,i).enumerable})),r.push.apply(r,n)}return r}function ie(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?be(Object(r),!0).forEach(function(n){tt(t,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):be(Object(r)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(r,n))})}return t}function ye(t,e){if(t==null)return{};var r,n,i=ot(t,e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(n=0;n<o.length;n++)r=o[n],e.indexOf(r)===-1&&{}.propertyIsEnumerable.call(t,r)&&(i[r]=t[r])}return i}function ot(t,e){if(t==null)return{};var r={};for(var n in t)if({}.hasOwnProperty.call(t,n)){if(e.indexOf(n)!==-1)continue;r[n]=t[n]}return r}function we(t,e){return et(t)||rt(t,e)||ct(t,e)||nt()}function it(t,e){if(typeof t!="object"||!t)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var n=r.call(t,e);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}function at(t){var e=it(t,"string");return typeof e=="symbol"?e:e+""}function ct(t,e){if(t){if(typeof t=="string")return ve(t,e);var r={}.toString.call(t).slice(8,-1);return r==="Object"&&t.constructor&&(r=t.constructor.name),r==="Map"||r==="Set"?Array.from(t):r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?ve(t,e):void 0}}function ut(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function Me(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(t,i).enumerable})),r.push.apply(r,n)}return r}function Oe(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?Me(Object(r),!0).forEach(function(n){ut(t,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):Me(Object(r)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(r,n))})}return t}function st(){for(var t=arguments.length,e=new Array(t),r=0;r<t;r++)e[r]=arguments[r];return function(n){return e.reduceRight(function(i,o){return o(i)},n)}}function F(t){return function e(){for(var r=this,n=arguments.length,i=new Array(n),o=0;o<n;o++)i[o]=arguments[o];return i.length>=t.length?t.apply(this,i):function(){for(var a=arguments.length,u=new Array(a),c=0;c<a;c++)u[c]=arguments[c];return e.apply(r,[].concat(i,u))}}}function J(t){return{}.toString.call(t).includes("Object")}function lt(t){return!Object.keys(t).length}function U(t){return typeof t=="function"}function dt(t,e){return Object.prototype.hasOwnProperty.call(t,e)}function ft(t,e){return J(e)||$("changeType"),Object.keys(e).some(function(r){return!dt(t,r)})&&$("changeField"),e}function mt(t){U(t)||$("selectorType")}function pt(t){U(t)||J(t)||$("handlerType"),J(t)&&Object.values(t).some(function(e){return!U(e)})&&$("handlersType")}function gt(t){t||$("initialIsRequired"),J(t)||$("initialType"),lt(t)&&$("initialContent")}function ht(t,e){throw new Error(t[e]||t.default)}var vt={initialIsRequired:"initial state is required",initialType:"initial state should be an object",initialContent:"initial state shouldn't be an empty object",handlerType:"handler should be an object or a function",handlersType:"all handlers should be a functions",selectorType:"selector should be a function",changeType:"provided value of changes should be an object",changeField:'it seams you want to change a field in the state which is not specified in the "initial" state',default:"an unknown error accured in `state-local` package"},$=F(ht)(vt),Y={changes:ft,selector:mt,handler:pt,initial:gt};function bt(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};Y.initial(t),Y.handler(e);var r={current:t},n=F(Mt)(r,e),i=F(wt)(r),o=F(Y.changes)(t),a=F(yt)(r);function u(){var s=arguments.length>0&&arguments[0]!==void 0?arguments[0]:function(d){return d};return Y.selector(s),s(r.current)}function c(s){st(n,i,o,a)(s)}return[u,c]}function yt(t,e){return U(e)?e(t.current):e}function wt(t,e){return t.current=Oe(Oe({},t.current),e),e}function Mt(t,e,r){return U(e)?e(t.current):Object.keys(r).forEach(function(n){var i;return(i=e[n])===null||i===void 0?void 0:i.call(e,t.current[n])}),r}var Ot={create:bt},je=Ot;var Se={paths:{vs:"https://cdn.jsdelivr.net/npm/monaco-editor@0.55.1/min/vs"}};function Ce(t){return function e(){for(var r=this,n=arguments.length,i=new Array(n),o=0;o<n;o++)i[o]=arguments[o];return i.length>=t.length?t.apply(this,i):function(){for(var a=arguments.length,u=new Array(a),c=0;c<a;c++)u[c]=arguments[c];return e.apply(r,[].concat(i,u))}}}function Pe(t){return{}.toString.call(t).includes("Object")}function jt(t){return t||xe("configIsRequired"),Pe(t)||xe("configType"),t.urls?(St(),{paths:{vs:t.urls.monacoBase}}):t}function St(){console.warn(Ee.deprecation)}function Ct(t,e){throw new Error(t[e]||t.default)}var Ee={configIsRequired:"the configuration object is required",configType:"the configuration object should be an object",default:"an unknown error accured in `@monaco-editor/loader` package",deprecation:`Deprecation warning!
|
|
15
|
-
You are using deprecated way of configuration.
|
|
16
|
-
|
|
17
|
-
Instead of using
|
|
18
|
-
monaco.config({ urls: { monacoBase: '...' } })
|
|
19
|
-
use
|
|
20
|
-
monaco.config({ paths: { vs: '...' } })
|
|
21
|
-
|
|
22
|
-
For more please check the link https://github.com/suren-atoyan/monaco-loader#config
|
|
23
|
-
`},xe=Ce(Ct)(Ee),Te={config:jt};var Ae=function(){for(var e=arguments.length,r=new Array(e),n=0;n<e;n++)r[n]=arguments[n];return function(i){return r.reduceRight(function(o,a){return a(o)},i)}};function ae(t,e){return Object.keys(e).forEach(function(r){e[r]instanceof Object&&t[r]&&Object.assign(e[r],ae(t[r],e[r]))}),ie(ie({},t),e)}var Pt={type:"cancelation",msg:"operation is manually canceled"};function Q(t){var e=!1,r=new Promise(function(n,i){t.then(function(o){return e?i(Pt):n(o)}),t.catch(i)});return r.cancel=function(){return e=!0},r}var xt=["monaco"],Et=je.create({config:Se,isInitialized:!1,resolve:null,reject:null,monaco:null}),ke=we(Et,2),q=ke[0],X=ke[1];function Tt(t){var e=Te.config(t),r=e.monaco,n=ye(e,xt);X(function(i){return{config:ae(i.config,n),monaco:r}})}function At(){var t=q(function(e){var r=e.monaco,n=e.isInitialized,i=e.resolve;return{monaco:r,isInitialized:n,resolve:i}});if(!t.isInitialized){if(X({isInitialized:!0}),t.monaco)return t.resolve(t.monaco),Q(ce);if(window.monaco&&window.monaco.editor)return Le(window.monaco),t.resolve(window.monaco),Q(ce);Ae(kt,Dt)(Rt)}return Q(ce)}function kt(t){return document.body.appendChild(t)}function Lt(t){var e=document.createElement("script");return t&&(e.src=t),e}function Dt(t){var e=q(function(n){var i=n.config,o=n.reject;return{config:i,reject:o}}),r=Lt("".concat(e.config.paths.vs,"/loader.js"));return r.onload=function(){return t()},r.onerror=e.reject,r}function Rt(){var t=q(function(r){var n=r.config,i=r.resolve,o=r.reject;return{config:n,resolve:i,reject:o}}),e=window.require;e.config(t.config),e(["vs/editor/editor.main"],function(r){var n=r.m||r;Le(n),t.resolve(n)},function(r){t.reject(r)})}function Le(t){q().monaco||X({monaco:t})}function It(){return q(function(t){var e=t.monaco;return e})}var ce=new Promise(function(t,e){return X({resolve:t,reject:e})}),_={config:Tt,init:At,__getMonacoInstance:It};import{memo as Nt}from"react";import Ht,{useState as De,useRef as B,useCallback as Re,useEffect as Ie}from"react";import{memo as $t}from"react";import ue from"react";import Wt from"react";import{useEffect as Gt}from"react";import{useEffect as Jt,useRef as Qt}from"react";import{useState as yn}from"react";import{memo as nr}from"react";import or,{useState as Ne,useEffect as Z,useRef as N,useCallback as ir}from"react";import{useEffect as ar,useRef as cr}from"react";var _t={wrapper:{display:"flex",position:"relative",textAlign:"initial"},fullWidth:{width:"100%"},hide:{display:"none"}},se=_t,Bt={container:{display:"flex",height:"100%",width:"100%",justifyContent:"center",alignItems:"center"}},zt=Bt;function Vt({children:t}){return Wt.createElement("div",{style:zt.container},t)}var Ft=Vt,Ut=Ft;function qt({width:t,height:e,isEditorReady:r,loading:n,_ref:i,className:o,wrapperProps:a}){return ue.createElement("section",{style:{...se.wrapper,width:t,height:e},...a},!r&&ue.createElement(Ut,null,n),ue.createElement("div",{ref:i,style:{...se.fullWidth,...!r&&se.hide},className:o}))}var Kt=qt,He=$t(Kt);function Yt(t){Gt(t,[])}var $e=Yt;function Xt(t,e,r=!0){let n=Qt(!0);Jt(n.current||!r?()=>{n.current=!1}:t,e)}var E=Xt;function K(){}function z(t,e,r,n){return Zt(t,n)||er(t,e,r,n)}function Zt(t,e){return t.editor.getModel(_e(t,e))}function er(t,e,r,n){return t.editor.createModel(e,r,n?_e(t,n):void 0)}function _e(t,e){return t.Uri.parse(e)}function tr({original:t,modified:e,language:r,originalLanguage:n,modifiedLanguage:i,originalModelPath:o,modifiedModelPath:a,keepCurrentOriginalModel:u=!1,keepCurrentModifiedModel:c=!1,theme:s="light",loading:d="Loading...",options:p={},height:R="100%",width:M="100%",className:T,wrapperProps:I={},beforeMount:w=K,onMount:L=K}){let[y,O]=De(!1),[P,h]=De(!0),g=B(null),v=B(null),j=B(null),b=B(L),l=B(w),S=B(!1);$e(()=>{let m=_.init();return m.then(f=>(v.current=f)&&h(!1)).catch(f=>f?.type!=="cancelation"&&console.error("Monaco initialization: error:",f)),()=>g.current?A():m.cancel()}),E(()=>{if(g.current&&v.current){let m=g.current.getOriginalEditor(),f=z(v.current,t||"",n||r||"text",o||"");f!==m.getModel()&&m.setModel(f)}},[o],y),E(()=>{if(g.current&&v.current){let m=g.current.getModifiedEditor(),f=z(v.current,e||"",i||r||"text",a||"");f!==m.getModel()&&m.setModel(f)}},[a],y),E(()=>{let m=g.current.getModifiedEditor();m.getOption(v.current.editor.EditorOption.readOnly)?m.setValue(e||""):e!==m.getValue()&&(m.executeEdits("",[{range:m.getModel().getFullModelRange(),text:e||"",forceMoveMarkers:!0}]),m.pushUndoStop())},[e],y),E(()=>{g.current?.getModel()?.original.setValue(t||"")},[t],y),E(()=>{let{original:m,modified:f}=g.current.getModel();v.current.editor.setModelLanguage(m,n||r||"text"),v.current.editor.setModelLanguage(f,i||r||"text")},[r,n,i],y),E(()=>{v.current?.editor.setTheme(s)},[s],y),E(()=>{g.current?.updateOptions(p)},[p],y);let x=Re(()=>{if(!v.current)return;l.current(v.current);let m=z(v.current,t||"",n||r||"text",o||""),f=z(v.current,e||"",i||r||"text",a||"");g.current?.setModel({original:m,modified:f})},[r,e,i,t,n,o,a]),k=Re(()=>{!S.current&&j.current&&(g.current=v.current.editor.createDiffEditor(j.current,{automaticLayout:!0,...p}),x(),v.current?.editor.setTheme(s),O(!0),S.current=!0)},[p,s,x]);Ie(()=>{y&&b.current(g.current,v.current)},[y]),Ie(()=>{!P&&!y&&k()},[P,y,k]);function A(){let m=g.current?.getModel();u||m?.original?.dispose(),c||m?.modified?.dispose(),g.current?.dispose()}return Ht.createElement(He,{width:M,height:R,isEditorReady:y,loading:d,_ref:j,className:T,wrapperProps:I})}var rr=tr,vn=Nt(rr);function ur(t){let e=cr();return ar(()=>{e.current=t},[t]),e.current}var sr=ur,ee=new Map;function lr({defaultValue:t,defaultLanguage:e,defaultPath:r,value:n,language:i,path:o,theme:a="light",line:u,loading:c="Loading...",options:s={},overrideServices:d={},saveViewState:p=!0,keepCurrentModel:R=!1,width:M="100%",height:T="100%",className:I,wrapperProps:w={},beforeMount:L=K,onMount:y=K,onChange:O,onValidate:P=K}){let[h,g]=Ne(!1),[v,j]=Ne(!0),b=N(null),l=N(null),S=N(null),x=N(y),k=N(L),A=N(),m=N(n),f=sr(o),D=N(!1),W=N(!1);$e(()=>{let C=_.init();return C.then(H=>(b.current=H)&&j(!1)).catch(H=>H?.type!=="cancelation"&&console.error("Monaco initialization: error:",H)),()=>l.current?Ze():C.cancel()}),E(()=>{let C=z(b.current,t||n||"",e||i||"",o||r||"");C!==l.current?.getModel()&&(p&&ee.set(f,l.current?.saveViewState()),l.current?.setModel(C),p&&l.current?.restoreViewState(ee.get(o)))},[o],h),E(()=>{l.current?.updateOptions(s)},[s],h),E(()=>{!l.current||n===void 0||(l.current.getOption(b.current.editor.EditorOption.readOnly)?l.current.setValue(n):n!==l.current.getValue()&&(W.current=!0,l.current.executeEdits("",[{range:l.current.getModel().getFullModelRange(),text:n,forceMoveMarkers:!0}]),l.current.pushUndoStop(),W.current=!1))},[n],h),E(()=>{let C=l.current?.getModel();C&&i&&b.current?.editor.setModelLanguage(C,i)},[i],h),E(()=>{u!==void 0&&l.current?.revealLine(u)},[u],h),E(()=>{b.current?.editor.setTheme(a)},[a],h);let ge=ir(()=>{if(!(!S.current||!b.current)&&!D.current){k.current(b.current);let C=o||r,H=z(b.current,n||t||"",e||i||"",C||"");l.current=b.current?.editor.create(S.current,{model:H,automaticLayout:!0,...s},d),p&&l.current.restoreViewState(ee.get(C)),b.current.editor.setTheme(a),u!==void 0&&l.current.revealLine(u),g(!0),D.current=!0}},[t,e,r,n,i,o,s,d,p,a,u]);Z(()=>{h&&x.current(l.current,b.current)},[h]),Z(()=>{!v&&!h&&ge()},[v,h,ge]),m.current=n,Z(()=>{h&&O&&(A.current?.dispose(),A.current=l.current?.onDidChangeModelContent(C=>{W.current||O(l.current.getValue(),C)}))},[h,O]),Z(()=>{if(h){let C=b.current.editor.onDidChangeMarkers(H=>{let ne=l.current.getModel()?.uri;if(ne&&H.find(oe=>oe.path===ne.path)){let oe=b.current.editor.getModelMarkers({resource:ne});P?.(oe)}});return()=>{C?.dispose()}}return()=>{}},[h,P]);function Ze(){A.current?.dispose(),R?p&&ee.set(o,l.current.saveViewState()):l.current.getModel()?.dispose(),l.current.dispose()}return or.createElement(He,{width:M,height:T,isEditorReady:h,loading:c,_ref:S,className:I,wrapperProps:w})}var dr=lr,fr=nr(dr),te=fr;import Xe,{useState as Dr}from"react";import{c as jr}from"react/compiler-runtime";import{jsx as Sr}from"react/jsx-runtime";import{createContext as Cr,use as qe,useEffect as de,useState as fe}from"react";import{c as vr}from"react/compiler-runtime";import{jsx as ze}from"react/jsx-runtime";import{createContext as br,use as yr,useCallback as wr,useEffect as Mr,useMemo as Be}from"react";import{c as mr}from"react/compiler-runtime";import{useEffect as pr,useRef as gr,useState as hr}from"react";function We(t,e){let r=mr(5),[n,i]=hr(t),o=gr(t),a,u;r[0]!==t?(a=()=>{Object.is(o.current,t)||(o.current=t,i(t))},u=[t],r[0]=t,r[1]=a,r[2]=u):(a=r[1],u=r[2]),pr(a,u);let c=n??e,s;return r[3]!==c?(s=[c,i],r[3]=c,r[4]=s):s=r[4],s}var Ve=br(void 0),Or=({children:t,config:e})=>{let[r,n]=We(e),{collectionsBySlug:i,globalsBySlug:o}=Be(()=>{let c={},s={};for(let d of r.collections)c[d.slug]=d;for(let d of r.globals)s[d.slug]=d;return{collectionsBySlug:c,globalsBySlug:s}},[r]),a=wr(c=>"collectionSlug"in c&&c.collectionSlug?i[c.collectionSlug]??null:"globalSlug"in c&&c.globalSlug?o[c.globalSlug]??null:null,[i,o]),u=Be(()=>({config:r,getEntityConfig:a,setConfig:n}),[r,a,n]);return ze(Ve,{value:u,children:t})},le=()=>yr(Ve),Rn=t=>{let e=vr(7),{children:r,config:n}=t,{config:i,setConfig:o}=le(),a,u;if(e[0]!==n||e[1]!==o?(a=()=>{o(n)},u=[n,o],e[0]=n,e[1]=o,e[2]=a,e[3]=u):(a=e[2],u=e[3]),Mr(a,u),i!==n&&i.unauthenticated!==n.unauthenticated){let c;return e[4]!==r||e[5]!==n?(c=ze(Or,{config:n,children:r}),e[4]=r,e[5]=n,e[6]=c):c=e[6],c}return r};var Fe="light";var Pr={autoMode:!0,highContrastMode:!1,setHighContrastMode:()=>null,setTheme:()=>null,theme:"light"},me=Cr(void 0);function Ue(t,e,r){let n=new Date;n.setTime(n.getTime()+r*24*60*60*1e3);let i="expires="+n.toUTCString();document.cookie=t+"="+e+";"+i+";path=/"}var xr=t=>{let e=window.document.cookie.split("; ").find(n=>n.startsWith(`${t}=`))?.split("=")[1],r=e==="light"||e==="dark"?e:window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light";return document.documentElement.setAttribute("data-theme",r),{isAutoMode:e!=="light"&&e!=="dark",theme:r}},Er=t=>{let e=window.document.cookie.split("; ").find(n=>n.startsWith(`${t}=`))?.split("=")[1]??null,r=e==="true"?!0:e==="false"?!1:!!(window.matchMedia&&window.matchMedia("(prefers-contrast: more)").matches);return r?document.documentElement.setAttribute("data-enhanced-contrast",""):document.documentElement.removeAttribute("data-enhanced-contrast"),r},Tr=t=>t==="auto"||t==="light"||t==="dark",Un=t=>{let e=jr(32),{children:r,highContrastMode:n,theme:i}=t,o=qe(me),a=o!==void 0,{config:u}=le(),c=u.admin.theme,s=`${u.cookiePrefix||"payload"}-theme`,d=`${u.cookiePrefix||"payload"}-high-contrast-mode`,p=he().get("theme")?.toLowerCase(),[R,M]=fe(i??Fe),[T,I]=fe(!a),[w,L]=fe(a?o.highContrastMode??!1:n??!1),y;e[0]!==a||e[1]!==o||e[2]!==s?(y=(f,D)=>{if(a&&!D?.scoped){o.setTheme(f,D);return}let W=f==="auto"?window.matchMedia?.("(prefers-color-scheme: dark)").matches?"dark":"light":f;M(W),I(f==="auto"),a||(Ue(s,f,f==="auto"?-1:365),document.documentElement.setAttribute("data-theme",W))},e[0]=a,e[1]=o,e[2]=s,e[3]=y):y=e[3];let O=y,P;e[4]!==d||e[5]!==a||e[6]!==o?(P=(f,D)=>{if(a&&!D?.scoped){o.setHighContrastMode(f,D);return}L(f),a||(Ue(d,String(f),365),f?document.documentElement.setAttribute("data-enhanced-contrast",""):document.documentElement.removeAttribute("data-enhanced-contrast"))},e[4]=d,e[5]=a,e[6]=o,e[7]=P):P=e[7];let h=P,g;e[8]!==a||e[9]!==o?(g=()=>{a&&L(o.highContrastMode)},e[8]=a,e[9]=o,e[10]=g):g=e[10];let v=o?.highContrastMode,j;e[11]!==a||e[12]!==v?(j=[a,v],e[11]=a,e[12]=v,e[13]=j):j=e[13],de(g,j);let b,l;e[14]!==a||e[15]!==c||e[16]!==O||e[17]!==s||e[18]!==p?(b=()=>{if(a||c!=="all")return;if(Tr(p)){O(p);return}let{isAutoMode:f,theme:D}=xr(s);M(D),I(f)},l=[a,c,s,p,O],e[14]=a,e[15]=c,e[16]=O,e[17]=s,e[18]=p,e[19]=b,e[20]=l):(b=e[19],l=e[20]),de(b,l);let S,x;e[21]!==d||e[22]!==a?(S=()=>{a||L(Er(d))},x=[a,d],e[21]=d,e[22]=a,e[23]=S,e[24]=x):(S=e[23],x=e[24]),de(S,x);let k=a?o.autoMode:T,A=a?o.theme:R,m;return e[25]!==r||e[26]!==w||e[27]!==h||e[28]!==O||e[29]!==k||e[30]!==A?(m=Sr(me,{value:{autoMode:k,highContrastMode:w,setHighContrastMode:h,setTheme:O,theme:A},children:r}),e[25]=r,e[26]=w,e[27]=h,e[28]=O,e[29]=k,e[30]=A,e[31]=m):m=e[31],m},Ke=()=>qe(me)??Pr;import{c as kr}from"react/compiler-runtime";import{jsx as G}from"react/jsx-runtime";import"react";import{c as Ar}from"react/compiler-runtime";import*as V from"react";var Ge=(t,e)=>{let r=Ar(9),n=e===void 0?!1:e,[i,o]=V.useState(!1),a=V.useRef(void 0),u;r[0]!==t?(u=()=>(o(!1),clearTimeout(a.current),a.current=setTimeout(()=>{o(!0)},t),()=>{clearTimeout(a.current)}),r[0]=t,r[1]=u):u=r[1];let c=u,s,d;r[2]!==c||r[3]!==n?(s=()=>{n&&c()},d=[c,n],r[2]=c,r[3]=n,r[4]=s,r[5]=d):(s=r[4],d=r[5]),V.useEffect(s,d);let p;return r[6]!==i||r[7]!==c?(p=[i,c],r[6]=i,r[7]=c,r[8]=p):p=r[8],p};var Ye="shimmer-effect",pe=({animationDelay:t="0ms",className:e,disableInlineStyles:r=!1,height:n="60px",transparent:i,width:o="100%",...a})=>G("div",{...a,className:[Ye,i&&`${Ye}--transparent`,e].filter(Boolean).join(" "),style:{...a?.style||{},height:!r&&(typeof n=="number"?`${n}px`:n),width:!r&&(typeof o=="number"?`${o}px`:o)},children:G("div",{className:"shimmer-effect__shine",style:{animationDelay:t}})}),Zn=t=>{let e=kr(9),{className:r,count:n,height:i,renderDelay:o,shimmerDelay:a,shimmerItemClassName:u,width:c}=t,s=o===void 0?500:o,d=a===void 0?25:a,p=typeof d=="number"?`${d}ms`:d,[R]=Ge(s,!0);if(!R)return null;let M;e[0]!==n?(M=[...Array(n)],e[0]=n,e[1]=M):M=e[1];let T;return e[2]!==r||e[3]!==i||e[4]!==p||e[5]!==u||e[6]!==M||e[7]!==c?(T=G("div",{className:r,children:M.map((I,w)=>G("div",{className:u,children:G(pe,{animationDelay:`calc(${w} * ${p})`,height:i,width:c})},w))}),e[2]=r,e[3]=i,e[4]=p,e[5]=u,e[6]=M,e[7]=c,e[8]=T):T=e[8],T};var re={insertSpaces:!1,tabSize:4,trimAutoWhitespace:!1},Je={fontSize:11,hideCursorInOverviewRuler:!0,lineDecorationsWidth:12,lineHeight:16,lineNumbersMinChars:3,minimap:{enabled:!1},overviewRulerBorder:!1,readOnly:!1,scrollbar:{alwaysConsumeMouseWheel:!1},scrollBeyondLastLine:!1,wordWrap:"on"};var Rr="default"in te?te.default:te,Ir="code-editor";function Nr(t){t.editor.defineTheme("payload-light",{base:"vs",colors:{"editor.background":"#00000000","editor.lineHighlightBackground":"#00000000","editor.lineHighlightBorder":"#00000000","editorGutter.background":"#00000000","editorLineNumber.activeForeground":"#0000004d","editorLineNumber.foreground":"#0000004d"},inherit:!0,rules:[{foreground:"cb0b96",token:"keyword"},{foreground:"005cc5",token:"identifier"},{foreground:"093077",token:"type.identifier"},{foreground:"093077",token:"delimiter"},{foreground:"093077",token:"delimiter.bracket"},{foreground:"c53e0d",token:"string"},{foreground:"093077",token:"number"},{foreground:"6a737d",token:"comment"}]}),t.editor.defineTheme("payload-dark",{base:"vs-dark",colors:{"editor.background":"#00000000","editor.lineHighlightBackground":"#00000000","editor.lineHighlightBorder":"#00000000","editorGutter.background":"#00000000","editorLineNumber.activeForeground":"#ffffffb3","editorLineNumber.foreground":"#ffffffb3"},inherit:!0,rules:[]})}var Hr=t=>{let e=Lr(10),{className:r,maxHeight:n,minHeight:i,options:o,readOnly:a,recalculatedHeightAt:u,value:c,...s}=t,d=i===void 0?48:i,p=Xe.useRef(u),{insertSpaces:R,tabSize:M,trimAutoWhitespace:T,...I}=o||{},w=o?.padding?(o.padding.top||0)+(o.padding?.bottom||0):0,[L,y]=Dr(d),{theme:O}=Ke(),P=s?.defaultLanguage?`language--${s.defaultLanguage}`:"",h=a&&"read-only",g;e[0]!==r||e[1]!==P||e[2]!==h?(g=[Ir,r,P,h].filter(Boolean),e[0]=r,e[1]=P,e[2]=h,e[3]=g):g=e[3];let v=g.join(" "),j,b;return e[4]!==d||e[5]!==w||e[6]!==u||e[7]!==c?(j=()=>{u&&u>p.current&&(y(c?Math.max(d,c.split(`
|
|
24
|
-
`).length*16+2+w+16):d),p.current=u)},b=[c,d,w,u],e[4]=d,e[5]=w,e[6]=u,e[7]=c,e[8]=j,e[9]=b):(j=e[8],b=e[9]),Xe.useEffect(j,b),Qe(Rr,{beforeMount:Nr,className:v,height:n?Math.min(L,n):L,loading:Qe(pe,{height:d}),options:{...Je,...I,readOnly:!!a,detectIndentation:!1,insertSpaces:void 0,tabSize:void 0,trimAutoWhitespace:void 0},theme:O==="dark"?"payload-dark":"payload-light",value:c,...s,onChange:(l,S)=>{s.onChange?.(l,S),y(l?Math.max(d,l.split(`
|
|
25
|
-
`).length*16+2+w+16):d)},onMount:(l,S)=>{s.onMount?.(l,S);let x=l.getDomNode();if(x?.closest('[contenteditable="true"]')){l.updateOptions({editContext:!1});let A=["copy","cut","paste"],m=$r;for(let f of A)x.addEventListener(f,m);l.onDidDispose(()=>{for(let f of A)x.removeEventListener(f,m)})}let k=l.getModel();k&&k.updateOptions({insertSpaces:R??re.insertSpaces,tabSize:M??re.tabSize,trimAutoWhitespace:T??re.trimAutoWhitespace}),y(Math.max(d,l.getValue().split(`
|
|
26
|
-
`).length*16+2+w+16))}})},so=Hr;function $r(t){t.stopPropagation()}export{We as a,Or as b,le as c,Rn as d,Fe as e,Un as f,Ke as g,Ge as h,pe as i,Zn as j,re as k,so as l};
|
|
27
|
-
//# sourceMappingURL=chunk-6XCSN54Q.js.map
|