Skip to content

Releases: vivid-planet/comet

7.0.0-beta.3

02 Jul 12:01
cdc861c
Compare
Choose a tag to compare
7.0.0-beta.3 Pre-release
Pre-release

@comet/admin@7.0.0-beta.3

Major Changes

  • ce5eaed: Move the ScopeIndicator from the ToolbarBreadcrumbs to the Toolbar

@comet/cms-admin@7.0.0-beta.3

Major Changes

  • 06768a7: Make icon required for top level menu and group items

    This fixes the problem, that there was no icon or text to display in the collapsed state of the menu if no icon was passed.
    Icons are required for all top level menu items and the items of groups. Groups themselves do not require an icon.

@comet/cms-api@7.0.0-beta.3

Major Changes

  • caefa1c: Rename DateFilter to DateTimeFilter

    This leaves room for a future DateFilter that only filters by date, not time.

    Upgrading

    1. Change import
    - import { DateFilter } from "@comet/cms-api";
    + import { DateTimeFilter } from "@comet/cms-api";
    1. Re-run API Generator.
  • fe22985: API Generator: Replace graphql-type-json with graphql-scalars for JSON columns

    Upgrading

    1. Install graphql-scalars: npm install graphql-scalars

    2. Uninstall graphql-type-json: npm uninstall graphql-type-json

    3. Update imports:

      - import { GraphQLJSONObject } from "graphql-type-json";
      + import { GraphQLJSONObject } from "graphql-scalars";

Minor Changes

  • 5e87134: API Generator: Add support for filtering one-to-many relations by id

Patch Changes

  • 9c8a9a1: API Generator: Add missing type for integer fields in input type

@comet/eslint-config@7.0.0-beta.3

Major Changes

  • 7a473ab: Prevent @mui/icons-material icon imports

    Icons used in Comet DXP applications should match the Comet CI.
    Use icons from @comet/admin-icons instead.

6.14.1

27 Jun 08:24
d77237d
Compare
Choose a tag to compare

@comet/cms-site@6.14.1

Patch Changes

  • 84a25ad: Remove <a> tag from DamFileDownloadLinkBlock

    The block incorrectly added the tag which prevents styling it in the application. The tag has been removed to achieve the same behavior as in the other link blocks, e.g. ExternalLinkBlock.

6.14.0

26 Jun 10:43
7bb17eb
Compare
Choose a tag to compare

@comet/admin@6.14.0

Minor Changes

  • 2fc764e: Add OnChangeField helper to listen to field changes

    Example

    <OnChangeField name="product">
        {(value, previousValue) => {
            // Will be called when field 'product' changes
        }}
    </OnChangeField>

Patch Changes

  • 012a768: Fix infinite update loop in useAsyncOptionsProps

@comet/admin-icons@6.14.0

Minor Changes

  • efccc42: Add YouTube and Vimeo icons

@comet/admin-theme@6.14.0

Patch Changes

  • 2de81e4: Fix top position of end-adornment in MuiAutocomplete

@comet/cms-admin@6.14.0

Minor Changes

  • 73dfb61: Add PhoneLinkBlock and EmailLinkBlock

  • 9055ff7: Remove label from DamVideoBlock file field

    This was done to streamline it with the DamImageBlock.

  • dddb03d: Add capability to generate alt texts and titles for images in DAM

    You can find instructions for adding this feature to your project in the docs.

  • acfcef9: The documentTypes prop of PagesPage now also accepts a function mapping categories to document types

    Previously, only the supported documentTypes of the current category could be passed to the PagesPage.
    That made it impossible to verify if a document can be moved to another category.
    If a document was moved to a category that didn't support its type, the PageTree crashed.

    If a mapping function is passed to documentTypes, documents can only be moved to categories that support their type.

    <PagesPage
    -   documentTypes={pageTreeDocumentTypes}
    +   documentTypes={(category): Record<DocumentType, DocumentInterface> => {
    +       if (category === "TopMenu") {
    +           return {
    +               Page,
    +               PredefinedPage,
    +           };
    +       }
    +
    +       return {
    +           Page,
    +           PredefinedPage,
    +           Link,
    +       };
    +   }}
        // ...
    />
  • 61a43d2: Add a menu item to PixelImageBlock, SvgImageBlock and DamVideoBlock that opens the chosen file in the DAM

    Note: This feature only works if the DependenciesConfig is configured for DamFile:

    // App.tsx
    
    <DependenciesConfigProvider
        entityDependencyMap={{
    +       DamFile: createDamFileDependency(),
            // ...
        }}
    >

@comet/blocks-api@6.14.0

Minor Changes

  • 73dfb61: Add PhoneLinkBlock and EmailLinkBlock

  • 87ef5fa: YouTubeVideoBlock: Add validation for identifier

    Must be either a valid YouTube URL or video identifier.

@comet/cms-api@6.14.0

Minor Changes

  • 73dfb61: Add PhoneLinkBlock and EmailLinkBlock

  • dddb03d: Add capability to generate alt texts and titles for images in DAM

    You can find instructions for adding this feature to your project in the docs.

  • 73dfb61: Add IsPhoneNumber and isPhoneNumber validators to validate phone numbers

Patch Changes

  • b7dbd7a: Export DisablePermissionCheck constant to enable usage in application code

@comet/cms-site@6.14.0

Minor Changes

  • 73dfb61: Add PhoneLinkBlock and EmailLinkBlock

7.0.0-beta.2

24 Jun 11:10
4af452b
Compare
Choose a tag to compare
7.0.0-beta.2 Pre-release
Pre-release

@comet/cms-admin@7.0.0-beta.2

Major Changes

  • 3574617: Remove EditPageLayout

    You can completely remove EditPageLayout from your application.
    Instead, use MainContent to wrap all your page content except the Toolbar.
    If needed, wrap MainContent and Toolbar in a fragment.

    Example:

    - <EditPageLayout>
    + <>
          <Toolbar>
              // ...
          </Toolbar>
    -     <div>
    +     <MainContent>
              // ...
    -     </div>
    +     </MainContent>
    - </EditPageLayout>
    + </>

Minor Changes

  • acfcef9: The documentTypes prop of PagesPage now also accepts a function mapping categories to document types

    Previously, only the supported documentTypes of the current category could be passed to the PagesPage.
    That made it impossible to verify if a document can be moved to another category.
    If a document was moved to a category that didn't support its type, the PageTree crashed.

    If a mapping function is passed to documentTypes, documents can only be moved to categories that support their type.

    <PagesPage
    -   documentTypes={pageTreeDocumentTypes}
    +   documentTypes={(category): Record<DocumentType, DocumentInterface> => {
    +       if (category === "TopMenu") {
    +           return {
    +               Page,
    +               PredefinedPage,
    +           };
    +       }
    +
    +       return {
    +           Page,
    +           PredefinedPage,
    +           Link,
    +       };
    +   }}
        // ...
    />
  • 61a43d2: Add a menu item to PixelImageBlock, SvgImageBlock and DamVideoBlock that opens the chosen file in the DAM

    Note: This feature only works if the DependenciesConfig is configured for DamFile:

    // App.tsx
    
    <DependenciesConfigProvider
        entityDependencyMap={{
    +       DamFile: createDamFileDependency(),
            // ...
        }}
    >

Patch Changes

  • e106a02: Make the ContentScopeIndicator show the scope label instead of the scope value

@comet/admin@7.0.0-beta.2

Minor Changes

  • 2fc764e: Add OnChangeField helper to listen to field changes

    Example

    <OnChangeField name="product">
        {(value, previousValue) => {
            // Will be called when field 'product' changes
        }}
    </OnChangeField>

@comet/blocks-api@7.0.0-beta.2

Minor Changes

  • 87ef5fa: YouTubeVideoBlock: Add validation for identifier

    Must be either a valid YouTube URL or video identifier.

@comet/cms-api@7.0.0-beta.2

Minor Changes

  • 2f0675b: API Generator: Add support for filtering many-to-many-relations by id

@comet/admin-theme@7.0.0-beta.2

Patch Changes

  • 2de81e4: Fix top position of end-adornment in MuiAutocomplete

6.13.0

13 Jun 07:33
7ae1b2d
Compare
Choose a tag to compare

@comet/admin@6.13.0

Minor Changes

  • 5e25348: Add a dialog option to the translation feature

    If enabled a dialog will open when pressing the translation button showing the original text and an editable translation

    Control if the dialog should be shown for the current scope via the showApplyTranslationDialog prop (default: true)

     <ContentTranslationServiceProvider
         enabled={true}
    +   showApplyTranslationDialog={true}
         translate={...}
     >
  • 796e832: Add AutocompleteField and AsyncAutocompleteField components

    Examples

    <AutocompleteField
        name="autocomplete"
        label="Autocomplete"
        options={[
            { value: "chocolate", label: "Chocolate" },
            { value: "strawberry", label: "Strawberry" },
            { value: "vanilla", label: "Vanilla" },
        ]}
        getOptionLabel={(option: Option) => option.label}
        isOptionEqualToValue={(option: Option, value: Option) => option.value === value.value}
        fullWidth
    />
    <AsyncAutocompleteField
        name="asyncAutocomplete"
        label="Async Autocomplete"
        loadOptions={async () => {
            // Load options here
        }}
        getOptionLabel={(option: Option) => option.label}
        isOptionEqualToValue={(option: Option, value: Option) => option.value === value.value}
        fullWidth
    />

@comet/admin-rte@6.13.0

Minor Changes

  • 5e25348: Add a dialog option to the translation feature

    If enabled a dialog will open when pressing the translation button showing the original text and an editable translation

    Control if the dialog should be shown for the current scope via the showApplyTranslationDialog prop (default: true)

     <ContentTranslationServiceProvider
         enabled={true}
    +   showApplyTranslationDialog={true}
         translate={...}
     >

@comet/cms-admin@6.13.0

Minor Changes

  • c51b250: Add loading spinner to IFrameViewer

    This feature was added to inform users that the iframe is loading. It is particularly useful when loading takes a long time due to a slow network connection or a large amount of content or data. The feedback remains visible until the iframe is fully loaded and the onLoad event is triggered.

  • dcf3f70: Add overrideAcceptedMimeTypes configuration to DAM

    If set, only the mimetypes specified in overrideAcceptedMimeTypes will be accepted.

    You must configure overrideAcceptedMimeTypes in the API and the admin interface:

    API:

    // app.module.ts
    
    DamModule.register({
        damConfig: {
            // ...
    +       overrideAcceptedMimeTypes: ["image/png"],
            // ...
        },
        // ...
    }),

    Admin:

    // App.tsx
    
     <DamConfigProvider
         value={{
             // ...
    +       overrideAcceptedMimeTypes: ["image/png"],
         }}
     >

Patch Changes

  • aee7ae4: Use the same logic for checking the user's content scope in Admin as it is used in the API.

@comet/cms-api@6.13.0

Minor Changes

  • 2a5e00b: API Generator: Add list option to @CrudGenerator() to allow disabling the list query

    Related DTO classes will still be generated as they might be useful for application code.

  • dcf3f70: Add overrideAcceptedMimeTypes configuration to DAM

    If set, only the mimetypes specified in overrideAcceptedMimeTypes will be accepted.

    You must configure overrideAcceptedMimeTypes in the API and the admin interface:

    API:

    // app.module.ts
    
    DamModule.register({
        damConfig: {
            // ...
    +       overrideAcceptedMimeTypes: ["image/png"],
            // ...
        },
        // ...
    }),

    Admin:

    // App.tsx
    
     <DamConfigProvider
         value={{
             // ...
    +       overrideAcceptedMimeTypes: ["image/png"],
         }}
     >
  • 07a7291: Adjust searchToMikroOrmQuery function to reduce the amount of irrelevant results

    This is done by using a combination of AND- and OR-queries. For example, a search of red shirt won't give all products containing red OR shirt but rather returns all products that have the words red AND shirt in some column. The words don't have to be in the same column.

Patch Changes

  • 5bbb2ee: API Generator: Don't add skipScopeCheck when the entity has a @ScopedEntity() decorator
  • ebdd108: API Generator: Fix imports in generated code for more than one level deep relations
  • b925f94: API Generator: Support relation with primary key type int (in addition to integer)

@comet/cms-site@6.13.0

Minor Changes

7.0.0-beta.1

12 Jun 09:19
b925f94
Compare
Choose a tag to compare
7.0.0-beta.1 Pre-release
Pre-release

@comet/cms-admin@7.0.0-beta.1

Major Changes

  • c3940df: Replace additionalMimeTypes and overrideAcceptedMimeTypes in DamConfigProvider with acceptedMimeTypes

    You can now add mime types like this:

    <DamConfigProvider
        value={{
            acceptedMimeTypes: [...damDefaultAcceptedMimetypes, "something-else"],
        }}
    >
        {/* ... */}
    </DamConfigProvider>

    And remove them like this:

    <DamConfigProvider
        value={{
            acceptedMimeTypes: damDefaultAcceptedMimetypes.filter((mimeType) => mimeType !== "application/zip"),
        }}
    >
        {/* ... */}
    </DamConfigProvider>

    Don't forget to also remove/add the mime types in the API's DamModule

@comet/cms-api@7.0.0-beta.1

Major Changes

  • c3940df: Replace additionalMimeTypes and overrideAcceptedMimeTypes in DamModule#damConfig with acceptedMimeTypes

    You can now add mime types like this:

    DamModule.register({
        damConfig: {
            acceptedMimeTypes: [...damDefaultAcceptedMimetypes, "something-else"],
        },
    });

    And remove them like this:

    DamModule.register({
        damConfig: {
            acceptedMimeTypes: damDefaultAcceptedMimetypes.filter((mimeType) => mimeType !== "application/zip"),
        },
    });

    Don't forget to also remove/add the mime types in the admin's DamConfigProvider

  • c3940df: Rename defaultDamAcceptedMimetypes to damDefaultAcceptedMimetypes

Minor Changes

  • f38ecc1: API Generator: Add support for enum array filter and sort

Patch Changes

  • 10424c7: Fix SvgImageBlock in site by always loading fileUrl

7.0.0-beta.0

06 Jun 11:24
14fb4ae
Compare
Choose a tag to compare
7.0.0-beta.0 Pre-release
Pre-release

@comet/admin-color-picker@7.0.0-beta.0

Major Changes

  • b87c3c2: Replace the componentsProps prop with slotProps in ColorPicker and remove the ColorPickerComponentsProps type

  • cb544bc: Remove clearable prop and add a required prop to ColorPicker

    The clear button will automatically be shown for all optional fields.

  • 92eae2b: Change the method of overriding the styling of Admin components

     const theme = createCometTheme({
         components: {
             CometAdminMyComponent: {
                 styleOverrides: {
    -                root: {
    -                    "&$hasShadow": {
    -                        boxShadow: "2px 2px 5px 0 rgba(0, 0, 0, 0.25)",
    -                    },
    -                    "& $header": {
    -                        backgroundColor: "lime",
    -                    },
    -                },
    +                hasShadow: {
    +                    boxShadow: "2px 2px 5px 0 rgba(0, 0, 0, 0.25)",
    +                },
    +                header: {
    +                    backgroundColor: "lime",
    +                },
                 },
             },
         },
     });
    • Overriding a component's styles using withStyles is no longer supported. Use the sx and slotProps props instead:
    -import { withStyles } from "@mui/styles";
    -
    -const StyledMyComponent = withStyles({
    -    root: {
    -        backgroundColor: "lime",
    -    },
    -    header: {
    -        backgroundColor: "fuchsia",
    -    },
    -})(MyComponent);
    -
    -// ...
    -
    -<StyledMyComponent title="Hello World" />;
    +<MyComponent
    +    title="Hello World"
    +    sx={{
    +        backgroundColor: "lime",
    +    }}
    +    slotProps={{
    +        header: {
    +            sx: {
    +                backgroundColor: "fuchsia",
    +            },
    +        },
    +    }}
    +/>
    • The module augmentation for the DefaultTheme type from @mui/styles/defaultTheme is no longer needed and needs to be removed from the admins theme file, usually located in admin/src/theme.ts:
    -declare module "@mui/styles/defaultTheme" {
    -    // eslint-disable-next-line @typescript-eslint/no-empty-interface
    -    export interface DefaultTheme extends Theme {}
    -}
    • Class-keys originating from MUI components have been removed from Comet Admin components, causing certain class-names and styleOverrides to no longer be applied.
      The components root class-key is not affected. Other class-keys will retain the class-names and styleOverrides from the underlying MUI component.
      For example, in ClearInputAdornment (when used with position="end") the class-name CometAdminClearInputAdornment-positionEnd and the styleOverrides for CometAdminClearInputAdornment.positionEnd will no longer be applied.
      The component will retain the class-names MuiInputAdornment-positionEnd, MuiInputAdornment-root, and CometAdminClearInputAdornment-root.
      Also, the styleOverrides for MuiInputAdornment.positionEnd, MuiInputAdornment.root, and CometAdminClearInputAdornment.root will continue to be applied.

      This affects the following components:

      • AppHeader
      • AppHeaderMenuButton
      • ClearInputAdornment
      • Tooltip
      • CancelButton
      • DeleteButton
      • OkayButton
      • SaveButton
      • StackBackButton
      • DatePicker
      • DateRangePicker
      • TimePicker
    • For more details, see MUI's migration guide: https://mui.com/material-ui/migration/v5-style-changes/#mui-styles

Patch Changes

  • b5753e6: Allow partial props in the theme's defaultProps instead of requiring all props when setting the defaultProps of a component

@comet/admin-date-time@7.0.0-beta.0

Major Changes

  • ad73068: Change DatePicker and DateRangePicker values from Date to string

    This affects the value prop and the value returned by the onChange event.

    The value of DatePicker is a string in the format YYYY-MM-DD.
    The value of DateRangePicker is an object with start and end keys, each as a string in the format YYYY-MM-DD.

    The code that handles values from these components may need to be adjusted.
    This may include how the values are stored in or sent to the database.

    -   const [date, setDate] = useState<Date | undefined>(new Date("2024-03-10"));
    +   const [date, setDate] = useState<string | undefined>("2024-03-10");
        return <DatePicker value={date} onChange={setDate} />;
        const [dateRange, setDateRange] = useState<DateRange | undefined>({
    -       start: new Date("2024-03-10"),
    -       end: new Date("2024-03-16"),
    +       start: "2024-03-10",
    +       end: "2024-03-16",
        });
        return <DateRangePicker value={dateRange} onChange={setDateRange} />;

    The reason for this change is that when selecting a date like 2024-04-10 in a timezone ahead of UTC, it would be stored in a Date object as e.g. 2024-04-09T22:00:00.000Z. When only the date is saved to the database, without the time, it would be saved as 2024-04-09, which differs from the selected date.

  • cb544bc: Remove the clearable prop and add a required prop to DateRangePicker, DateTimePicker, TimePicker and TimeRangePicker

    The clear button will automatically be shown for all optional fields.

  • b87c3c2: Rename multiple props and class-keys and remove the componentsProps types:

    • DatePicker:

      • Replace the componentsProps prop with slotProps
      • Remove the DatePickerComponentsProps type
    • DateRangePicker:

      • Replace the componentsProps prop with slotProps
      • Remove the DateRangePickerComponentsProps type
      • Rename the calendar class-key to dateRange
    • DateTimePicker:

      • Replace the componentsProps prop with slotProps
      • Remove the DateTimePickerComponentsProps type
      • Replace the formControl class-key with two separate class-keys: dateFormControl and timeFormControl
    • TimeRangePicker:

      • Replace the componentsProps prop with slotProps
      • Remove the TimeRangePickerComponentsProps and TimeRangePickerIndividualPickerProps types
      • Replace the formControl class-key with two separate class-keys: startFormControl and endFormControl
      • Replace the timePicker class-key with two separate class-keys: startTimePicker and endTimePicker
  • f8114cd: Remove clearable prop from DatePicker

    The clear button will automatically be shown for all optional fields.

  • 92eae2b: Change the method of overriding the styling of Admin components

     const theme = createCometTheme({
         components: {
             CometAdminMyComponent: {
                 styleOverrides: {
    -                root: {
    -                    "&$hasShadow": {
    -                        boxShadow: "2px 2px 5px 0 rgba(0, 0, 0, 0.25)",
    -                    },
    -                    "& $header": {
    -                        backgroundColor: "lime",
    -                    },
    -                },
    +                hasShadow: {
    +                    boxShadow: "2px 2px 5px 0 rgba(0, 0, 0, 0.25)",
    +                },
    +                header: {
    +                    backgroundColor: "lime",
    +                },
                 },
             },
         },
     });
    • Overriding a component's styles using withStyles is no longer supported. Use the sx and slotProps props instead:
    -import { withStyles } from "@mui/styles";
    -
    -const StyledMyComponent = withStyles({
    -    root: {
    -        backgroundColor: "lime",
    -    },
    -    header: {
    -        backgroundColor: "fuchsia",
    -    },
    -})(MyComponent);
    -
    -// ...
    -
    -<StyledMyComponent title="Hello World" />;
    +<MyComponent
    +    title="Hello World"
    +    sx={{
    +        backgroundColor: "lime",
    +    }}
    +    slotProps={{
    +        header: {
    +            sx: {
    +                backgroundColor: "fuchsia",
    +            },
    +        },
    +    }}
    +/>
    • The module augmentation for the DefaultTheme type from @mui/styles/defaultTheme is no longer needed and needs to be removed from the admins t...
Read more

6.12.0

05 Jun 13:39
9f583b2
Compare
Choose a tag to compare

@comet/admin@6.12.0

Minor Changes

  • 16ffa7b: Add FinalFormAsyncSelect, AsyncSelectField, and FinalFormAsyncAutocomplete components

    Thin wrappers to ease using useAsyncOptionsProps() with FinalFormSelect and FinalFormAutocomplete.

    Example

    Previously:

    const asyncOptionsProps = useAsyncOptionsProps(async () => {
        // Load options here
    });
    
    // ...
    
    <Field component={FinalFormAsyncAutocomplete} {...asyncOptionsProps} />;

    Now:

    <Field
        component={FinalFormAsyncAutocomplete}
        loadOptions={async () => {
            // Load options here
        }}
    />

@comet/admin-theme@6.12.0

Minor Changes

@comet/cms-admin@6.12.0

Minor Changes

  • 3ee8c7a: Add a DamFileDownloadLinkBlock that can be used to download a file or open it in a new tab

    Also, add new /dam/files/download/:hash/:fileId/:filename endpoint for downloading assets.

@comet/cms-api@6.12.0

Minor Changes

  • 3ee8c7a: Add a DamFileDownloadLinkBlock that can be used to download a file or open it in a new tab

    Also, add new /dam/files/download/:hash/:fileId/:filename endpoint for downloading assets.

  • 0597b1e: Add DisablePermissionCheck constant for use in @RequiredPermission decorator

    You can disable authorization for a resolver or operation by adding the decorator @RequiredPermission(DisablePermissionCheck)

Patch Changes

  • 6717682: API CrudSingleGenerator: Run transformToBlockData() for block fields on create

  • b158e6a: ChangesCheckerConsole: Start exactly matching job or all partially matching jobs

    Previously, the first job with a partially matching content scope was started.
    Doing so could lead to problems when multiple jobs with overlapping content scopes exist.
    For instance, jobs with the scopes { domain: "main", language: "de" } and { domain: "main", language: "en" } both partially match a change in { domain: "main", language: "de" }.
    To fix this, we either start a single job if the content scope matches exactly or start all jobs with partially matching content scopes.

@comet/cms-site@6.12.0

Minor Changes

  • 3ee8c7a: Add a DamFileDownloadLinkBlock that can be used to download a file or open it in a new tab

    Also, add new /dam/files/download/:hash/:fileId/:filename endpoint for downloading assets.

@comet/admin-rte@6.12.0

Patch Changes

  • dc7eaec: Hide translation button for FinalFormSearchTextField

6.11.0

31 May 08:33
53ee875
Compare
Choose a tag to compare

@comet/admin@6.11.0

Minor Changes

  • 8e3dec5: Change writeClipboardText/readClipboardText clipboard fallback to in-memory

    Using the local storage as a fallback caused issues when writing clipboard contents larger than 5MB.
    Changing the fallback to in-memory resolves the issue.

@comet/cms-admin@6.11.0

Minor Changes

  • e10753b: Allow disabling the "Open preview" button in the PageTree for certain document types

    The "Open preview" button is shown for all document types in the PageTree.
    But some document types (e.g., links) don't have a preview.
    Clicking on the preview button leads to an error page.

    Now, it's possible to disable the button by setting hasNoSitePreview for the document:

    export const Link: DocumentInterface<Pick<GQLLink, "content">, GQLLinkInput> = {
        // ...
    +   hasNoSitePreview: true,
    };
  • fdf9fa7: Per default disable the automatic creation of redirects when changing a document's slug if the document is unpublished or archived

Patch Changes

  • 815ba51: Fix link target validation in ExternalLinkBlock

    Previously, two different validation checks were used.
    This resulted in an error when saving an invalid link target but no error message was shown.

@comet/cms-api@6.11.0

Minor Changes

  • 0db10a5: Add a console script to import redirects from a csv file

    You can use the script like this: npm run console import-redirects file-to-import.csv

    The CSV file must look like this:

    source;target;target_type;comment;scope_domain
    /test-source;/test-target;internal;Internal Example;main
    /test-source-external;https://www.comet-dxp.com/;external;External Example;secondary
    

@comet/blocks-api@6.11.0

Patch Changes

  • 93a84b6: Fix type of youtubeIdentifier in YouTubeVideoBlock

    Previously, it was incorrectly typed as required. Now it's optional.

5.8.6

31 May 08:24
93a84b6
Compare
Choose a tag to compare

@comet/blocks-api@5.8.6

Patch Changes

  • 7af4e0d: Fix type of youtubeIdentifier in YouTubeVideoBlock

    Previously, it was incorrectly typed as required. Now it's optional.