Skip to content

Releases: vivid-planet/comet

8.0.0-beta.0

27 Feb 16:36
65355e2
Compare
Choose a tag to compare
8.0.0-beta.0 Pre-release
Pre-release

@comet/admin@8.0.0-beta.0

Major Changes

  • 7ce585d: Prevent the selection of DataGrid rows by clicking on them

    According to the Comet design guidelines, rows should be selected using checkboxes, with the checkboxSelection prop, where required.

    <DataGrid
        checkboxSelection
        onRowSelectionModelChange={(newRowSelectionModel) => {
            setRowSelectionModel(newRowSelectionModel);
        }}
        rowSelectionModel={rowSelectionModel}
        // ...
    />

    To restore the previous behavior, set the disableRowSelectionOnClick prop to false in the individual DataGrid component or globally, using the theme's defaultProps.

    <DataGrid
        disableRowSelectionOnClick
        // ...
    />
    const theme = createCometTheme({
        components: {
            MuiDataGrid: {
                defaultProps: {
                    disableRowSelectionOnClick: false,
                },
            },
        },
    });
  • f7429bd: Rename menu components

    To better differentiate between imports from @comet/admin and @mui/material, the following components and related types have been renamed:

    • MenuMainNavigation

    • MenuPropsMainNavigationProps

    • MenuClassKeyMainNavigationClassKey

    • MenuItemMainNavigationItem

    • MenuItemPropsMainNavigationItemProps

    • MenuItemClassKeyMainNavigationItemClassKey

    • MenuCollapsibleItemMainNavigationCollapsibleItem

    • MenuCollapsibleItemPropsMainNavigationCollapsibleItemProps

    • MenuCollapsibleItemClassKeyMainNavigationCollapsibleItemClassKey

    • IWithMenuWithMainNavigation

    • withMenuwithMainNavigation

    • MenuItemAnchorLinkMainNavigationItemAnchorLink

    • MenuItemAnchorLinkPropsMainNavigationItemAnchorLinkProps

    • MenuItemGroupMainNavigationItemGroup

    • MenuItemGroupClassKeyMainNavigationItemGroupClassKey

    • MenuItemGroupPropsMainNavigationItemGroupProps

    • MenuItemRouterLinkMainNavigationItemRouterLink

    • MenuItemRouterLinkPropsMainNavigationItemRouterLinkProps

      Remove MenuContext, use the useMainNavigation() hook instead.

  • b374300: Adapt the styling of Alert to match the updated Comet design

    Remove styling for the text variant of buttons used in Alert.
    Use buttons with the outlined variant instead to adhere to the Comet design guidelines.

     <Alert
         // ...
         action={
    -        <Button variant="text" startIcon={<ArrowRight />}>
    +        <Button variant="outlined" startIcon={<ArrowRight />}>
                 Action Text
             </Button>
         }
         // ...
     >
  • 717ede6: Merge @comet/admin-theme into @comet/admin

    This affects the following exports: breakpointsOptions, breakpointValues, createCometTheme, createTypographyOptions, errorPalette, greyPalette, infoPalette, paletteOptions, primaryPalette, shadows, successPalette, warningPalette.

    Migrating your project

    1. Remove the @comet/admin-theme dependency from your project

    2. Change all imports from @comet/admin-theme to @comet/admin

      -import { createCometTheme } from "@comet/admin-theme";
      +import { createCometTheme } from "@comet/admin";
      
       const theme = createCometTheme();
    3. Remove the no longer required type overrides that were previously required for the custom Typography variants, typically located in admin/src/vendors.d.ts

      -/// <reference types="@comet/admin-theme" />
  • de6d677: Bump @mui/x-data-grid peer dependency to v7

    This has breaking changes in DataGrid.
    Follow the official migration guide to upgrade.

    As well, be aware if you have a date in the data grid, you will need to add a valueGetter

        <DataGrid
            //other props
            columns=[
            {
                field: "updatedAt",
                type: "dateTime",
    +            valueGetter: (params, row) => row.updatedAt && new Date(row.updatedAt)
            }]
        />

    Also, be aware if you have a valueGetter or valueFormatter in the data grid, you will need to change the arguments passing to the functions. Previously, arguments were passed as an object. Now, they are passed directly as individual parameters

        <DataGrid
            //other props
            columns=[
            {
                field: "updatedAt",
                type: "dateTime",
    -           valueGetter: ({params, row}) => row.updatedAt && new Date(row.updatedAt)
    +           valueGetter: (params, row) => row.updatedAt && new Date(row.updatedAt)
    -           valueFormatter: ({value}) => (value ? intl.formatDate(value, { dateStyle: "medium", timeStyle: "short" }) : ""),
    +           valueFormatter: (value) => (value ? intl.formatDate(value, { dateStyle: "medium", timeStyle: "short" }) : ""),
            }]
        />
  • 04e308a: Upgrade to MUI v6

    This only causes minimal breaking changes, see the official migration guide for details.

    It is recommended to run the following codemods in your application:

    npx @mui/codemod@latest v6.0.0/list-item-button-prop admin/src
    npx @mui/codemod@latest v6.0.0/styled admin/src
    npx @mui/codemod@latest v6.0.0/sx-prop admin/src
    npx @mui/codemod@latest v6.0.0/theme-v6 admin/src/theme.ts
  • a8c737b: Redesign the ToolbarBreadcrumbs component

    Due to internal changes, including the props and class keys, custom usages and styling may need to be adjusted.

  • cfa2f85: Bump @mui/x-data-grid peer dependency to v6

    This has breaking changes in DataGrid.
    Follow the official migration guide to upgrade.

    The useDataGridRemote hook has been changed to match the updated DataGrid props:

    - const { pageSize, page, onPageSizeChange } = useDataGridRemote();
    + const { paginationModel, onPaginationModelChange } = useDataGridRemote();

    The muiGridSortToGql helper now expects the columns instead of the apiRef:

    const columns : GridColDef[] = [/* column definitions */];
    const dataGridRemote = useDataGridRemote();
    const persistentColumnState = usePersistentColumnState("persistent_column_state");
    
    -  muiGridSortToGql(dataGridRemote.sortModel, persistentColumnState.apiRef);
    +  muiGridSortToGql(dataGridRemote.sortModel, columns);
  • c5d9a47: Remove custom secondary color styling from Checkbox and Radio

  • 4828880: Remove trigger prop from Tooltip

Minor Changes

  • 682a674: Add support for React 18

Patch Changes

  • 400dd1e: Adapt height of elements in DataGrid depending on the density-prop to match the Comet DXP design
  • b8817b8: Add AppHeaderFillSpaceProps, ClearInputAdornmentClassKey, ToolbarActionButtonClassKey, ToolbarActionButton, CrudMoreActionsMenuClassKey, GridActionsColDef, GridBaseColDef, GridSingleSelectColDef, and TableDndOrderClassKey to the public API
  • eeb21ce: Allow non-full-width fields in FieldSet
  • Updated dependencies [04e308a]
  • Updated dependencies [682a674]
    • @comet/admin-icons@8.0.0-beta.0

@comet/admin-babel-preset@8.0.0-beta.0

Minor Changes

  • 682a674: Add support for React 18

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

Major Changes

  • 04e308a: Upgrade to MUI v6

    This only causes minimal breaking changes, see the official migration guide for details.

    It is recommended to run the following codemods in your application:

    npx @mui/codemod@latest v6.0.0/list-item-button-prop admin/src
    npx @mui/codemod@latest v6.0.0/styled admin/src
    npx @mui/codemod@latest v6.0.0/sx-prop admin/src
    npx @mui/codemod@latest v6.0.0/theme-v6 admin/src/theme.ts

Minor Changes

  • 682a674: Add support for React 18

Patch Changes

  • b8817b8: Add ColorPickerNoColorPreviewProps to the public API
  • Updated dependencies [7ce585d]
  • Updated dependencies [f7429bd]
  • Updated dependencies [b374300]
  • Updated dependencies [717ede6]
  • Updated dependencies [de6d677]
  • Updated dependencies [04e308a]
  • Updated dependencies [400dd1e]
  • Updated dependencies [a8c737b]
  • Updated dependencies [b8817b8]
  • Updated dependencies [eeb21ce]
  • Updated dependencies [cfa2f85]
  • Updated dependencies [c5d9a47]
  • Updated dependencies [4828880]
  • Updated dependencies [682a674]
    • @comet/admin@8.0.0-beta.0
    • @comet/admin-icons@8.0.0-beta.0

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

Major Changes

  • 04e308a: Upgrade to MUI v6

    This only causes minimal breaking changes, see the official migration guide for details.

    It is recommended to run the following codemods in your application:

    npx @mui/codemod@latest v6.0.0/list-item-button-prop admin/src
    npx @mui/codemod@latest v6.0.0/styled admin/src
    npx @mui/codemod@latest v6.0.0/sx-prop admin/src
    npx @mui/codemod@latest v6.0.0/theme-v6 admin/src/theme.ts

Minor Changes

  • 682a674: Add support for React 18

Patch Changes

  • b8817b8: Add DatePickerNavigationClassKey, DatePickerNavigationProps, DateTimePickerClassKey, FinalFormTimePickerProps, TimePickerClassKey, and TimeRangePickerClassKey to the public API
  • Updated dependencies [7ce585d]
  • Updated dependencies [f7429bd]
  • Updated de...
Read more

7.15.0

27 Feb 12:27
a9ab7d9
Compare
Choose a tag to compare

@comet/admin@7.15.0

Minor Changes

  • a189d4e: Support dynamic values for the label prop of SwitchField depending on its checked state

    <SwitchField name="switch" label={(checked) => (checked ? "On" : "Off")} />
  • 7d8c36e: Add the DataGridPanel component to replace MUIs default Panel used by DataGrid to match the Comet DXP design

    It is recommended to add this component to your theme's defaultProps of MuiDataGrid.

    Example theme configuration for admin/src/theme.ts:

    import { DataGridPanel } from "@comet/admin";
    import { createCometTheme } from "@comet/admin-theme";
    import type {} from "@mui/x-data-grid/themeAugmentation";
    
    export const theme = createCometTheme({
        components: {
            MuiDataGrid: {
                defaultProps: {
                    components: {
                        Panel: DataGridPanel,
                    },
                },
            },
        },
    });
  • a189d4e: Allow passing a ReactNode to fieldLabel of CheckboxField and SwitchField

    This enables using FormattedMessage for the label.

    <CheckboxField name="visible" fieldLabel={<FormattedMessage id="exampleForm.visible" defaultMessage="Visible" />} />
    <SwitchField name="visible" fieldLabel={<FormattedMessage id="exampleForm.visible" defaultMessage="Visible" />} />

Patch Changes

  • faa54eb: Fix display of warnings for forms that use both form-level and field-level validation
  • 6827982: Preserve the default Button color when using the sx prop with the textLight or textDark variant

@comet/admin-theme@7.15.0

Minor Changes

  • 7d8c36e: Improve the styling of the filter and columns panels of DataGrid

@comet/blocks-admin@7.15.0

Patch Changes

  • e056e8f: Change "Add column" button label in createColumnsBlock to "Add item"

@comet/cms-admin@7.15.0

Patch Changes

  • 46ab330: Adapt styling of the dashboard header to match the Comet DXP design

@comet/cms-api@7.15.0

Patch Changes

  • 83b8111: Allow use tag in SVG again

    use can be used to define paths once in a SVG and then integrating them multiple times via anchor links: <use xlink:href="#path-id" />. This should not be prohibited.

    It's still not possible to use use to reference external files, since we still prohibit href and xlink:href attributes starting with http://, https:// and javascript:.

  • e6f9641: Add fallback values for users created via ID token

@comet/cms-site@7.15.0

Patch Changes

  • 75fb1d0: Fix block preview not rendering before user interaction

7.14.0

18 Feb 16:07
66e6f79
Compare
Choose a tag to compare

@comet/admin@7.14.0

Minor Changes

  • 6b75f20: Deprecate density prop of DataGridToolbar

    The density setting of the surrounding Data Grid now controls the styling of the toolbar.

@comet/admin-rte@7.14.0

Minor Changes

  • bb041f7: Add content generation capabilities to createSeoBlock

    The SEO block (when created using the createSeoBlock factory) now supports automatic generation of:

    • HTML title
    • Meta description
    • Open Graph title
    • Open Graph description

    See the docs for instructions on enabling this feature.

  • 7f72e82: Add extractTextContents method to blocks

    extractTextContents can be used to extract plain text from blocks. This functionality is particularly useful for operations such as search indexing or using the content for LLM-based tasks. The option includeInvisibleContent can be set to include the content of invisible blocks in the extracted text.

    The method is optional for now, but it is recommended to implement it for all blocks and documents. The default behavior is to return

    • if the state is a string: the string itself
    • otherwise: an empty array

@comet/admin-theme@7.14.0

Patch Changes

  • 9b190db: Fix spacing for ListItemIcon and ListItemAvatar to align with Comet DXP design
  • 84e0636: Fix dialog header height for dialogs with no title

@comet/blocks-admin@7.14.0

Minor Changes

  • 948e07b: Add an override argument to all block factories to follow createCompositeBlock's pattern

  • bb041f7: Add content generation capabilities to createSeoBlock

    The SEO block (when created using the createSeoBlock factory) now supports automatic generation of:

    • HTML title
    • Meta description
    • Open Graph title
    • Open Graph description

    See the docs for instructions on enabling this feature.

  • 7f72e82: Add extractTextContents method to blocks

    extractTextContents can be used to extract plain text from blocks. This functionality is particularly useful for operations such as search indexing or using the content for LLM-based tasks. The option includeInvisibleContent can be set to include the content of invisible blocks in the extracted text.

    The method is optional for now, but it is recommended to implement it for all blocks and documents. The default behavior is to return

    • if the state is a string: the string itself
    • otherwise: an empty array

@comet/cms-admin@7.14.0

Minor Changes

  • 97cd0a3: User Permissions: Use Data Grid instead of a checkbox list for displaying and selecting content scopes

  • bb041f7: Add content generation capabilities to createSeoBlock

    The SEO block (when created using the createSeoBlock factory) now supports automatic generation of:

    • HTML title
    • Meta description
    • Open Graph title
    • Open Graph description

    See the docs for instructions on enabling this feature.

  • 7f72e82: Add extractTextContents method to blocks

    extractTextContents can be used to extract plain text from blocks. This functionality is particularly useful for operations such as search indexing or using the content for LLM-based tasks. The option includeInvisibleContent can be set to include the content of invisible blocks in the extracted text.

    The method is optional for now, but it is recommended to implement it for all blocks and documents. The default behavior is to return

    • if the state is a string: the string itself
    • otherwise: an empty array
  • c71604e: Add an override argument to all block factories to follow createCompositeBlock's pattern

@comet/blocks-api@7.14.0

Patch Changes

  • 7e7a4aa: Fix title field not added to types in createLinkBlock

@comet/cms-api@7.14.0

Minor Changes

  • 99ff035: Pass available permissions to AccessControlService.getPermissionsForUser

  • a84d88c: Ignore filters in @AffectedEntity check

    When using the @AffectedEntity decorator we possibly also want to check entities which are filtered by default. Since we don't know how the entity is handled in the resolver we ignore the filters completely.

  • 3c47c08: Allow passing a language to generateAltText and generateImageTitle

  • bb041f7: Add content generation capabilities to createSeoBlock

    The SEO block (when created using the createSeoBlock factory) now supports automatic generation of:

    • HTML title
    • Meta description
    • Open Graph title
    • Open Graph description

    See the docs for instructions on enabling this feature.

  • 7f72e82: Add extractTextContents method to blocks

    extractTextContents can be used to extract plain text from blocks. This functionality is particularly useful for operations such as search indexing or using the content for LLM-based tasks. The option includeInvisibleContent can be set to include the content of invisible blocks in the extracted text.

    The method is optional for now, but it is recommended to implement it for all blocks and documents. The default behavior is to return

    • if the state is a string: the string itself
    • otherwise: an empty array

Patch Changes

  • 0233d48: Export FileUploadInput
  • 7e7a4aa: Fix title field not added to types in createLinkBlock

@comet/cms-site@7.14.0

Minor Changes

  • 6163b83: Play/pause auto-play videos depending on their visibility

    Start videos in DamVideoBlock, YoutubeVideoBlock and VimeoVideoBlock when the block is in or enters the viewport.
    Pause them when the block is leaving the viewport.

  • d07a6da: Add comment explaining why we omit the alt-prop in PixelImageBlock

Patch Changes

  • 6ff1d70: Fix hasRichTextBlockContent for blocks with no content blocks
  • 8e648a7: Set alt attribute to empty string as default in SvgImageBlock

7.13.0

29 Jan 15:33
437293c
Compare
Choose a tag to compare

@comet/admin@7.13.0

Minor Changes

  • bd562d3: Add disableForcePromptRoute option to StackSwitch

    This can be useful when a navigation in a switch shouldn't trigger a prompt, e.g., when navigating inside a block.

  • 5c06e4b: Reduce MainContent padding on mobile

  • b918c81: Add support for custom components to CrudMoreActionsMenu

    Example

    const CustomAction = () => (
        <CrudMoreActionsMenuItem
            onClick={() => {
                // Perform action
            }}
        >
            <ListItemIcon>
                <Favorite />
            </ListItemIcon>
            Custom Action
        </CrudMoreActionsMenuItem>
    );
    
    <CrudMoreActionsMenu overallActions={[<CustomAction key="custom-action" />]} />;

    Note: Use the CrudMoreActionsMenuItem component or CrudMoreActionsMenuContext to close the menu after clicking an item.

@comet/admin-rte@7.13.0

Patch Changes

  • 86c1d59: Set correct editor height when using the minHeight option

@comet/blocks-admin@7.13.0

Patch Changes

  • bd562d3: Prevent router prompt when using a block with subroutes in a form

@comet/cms-admin@7.13.0

Patch Changes

  • f49370a: Improve SVG validation

    Following tags are banned in SVGs:

    • script
    • [new] foreignObject
    • [new] use
    • [new] image
    • [new] animate
    • [new] animateMotion
    • [new] animateTransform
    • [new] set

    Following attributes are banned:

    • Event handlers (onload, onclick, ...)
    • [new] href and xlink:href (if the value starts with http://, https:// or javascript:)

@comet/cms-api@7.13.0

Patch Changes

  • f49370a: Improve SVG validation

    Following tags are banned in SVGs:

    • script
    • [new] foreignObject
    • [new] use
    • [new] image
    • [new] animate
    • [new] animateMotion
    • [new] animateTransform
    • [new] set

    Following attributes are banned:

    • Event handlers (onload, onclick, ...)
    • [new] href and xlink:href (if the value starts with http://, https:// or javascript:)

@comet/cms-site@7.13.0

Minor Changes

  • f60b636: Extend the usePreview-helpers isSelected and isHovered with optional partial match support

    • When exactMatch is set to true (default), the function checks for exact URL matches.
    • When exactMatch is set to false, the function checks if the selected route starts with the given URL.

7.12.0

21 Jan 10:07
2fe1aab
Compare
Choose a tag to compare

@comet/admin@7.12.0

Minor Changes

  • af51bb4: Make the width of GridToolbarQuickFilter responsive when used inside DataGridToolbar

  • 92b3255: Hide group title in CrudMoreActionsMenu when only one group is present

  • e8003f9: Add a new FillSpace component to replace ToolbarFillSpace and AppHeaderFillSpace

    ToolbarFillSpace and AppHeaderFillSpace are now deprecated.

  • 4f6e6b0: Deprecate FinalFormRadio and FinalFormCheckbox

  • 5583c9c: Export renderFinalFormChildren helper

  • 7da81fa: Add a new Button component to replace ToolbarActionButton and MUI's Button

    Compared to MUI's Button component, the color prop has been removed, and the variant prop now defines those variants, defined by the Comet design guidelines, primary is the default variant.

    -import { Button } from "@mui/material";
    +import { Button } from "@comet/admin";
    
     export const AllButtonVariants = () => (
         <>
    -        <Button variant="contained" color="primary">Primary</Button>
    +        <Button>Primary</Button>
    -        <Button variant="contained" color="secondary">Secondary</Button>
    +        <Button variant="secondary">Secondary</Button>
    -        <Button variant="outlined">Outlined</Button>
    +        <Button variant="outlined">Outlined</Button>
    -        <Button variant="outlined" color="error">Destructive</Button>
    +        <Button variant="destructive">Destructive</Button>
    -        <Button variant="contained" color="success">Success</Button>
    +        <Button variant="success">Success</Button>
    -        <Button variant="text" sx={{ color: "white" }}>Text Light</Button>
    +        <Button variant="textLight">Text Light</Button>
    -        <Button variant="text" sx={{ color: "black" }}>Text Dark</Button>
    +        <Button variant="textDark">Text Dark</Button>
         </>
     );

    Responsive behavior

    ToolbarActionButton is now deprecated.
    Previously, ToolbarActionButton would hide its text content on mobile and add it with a tooltip instead.
    This behavior can now be achieved by setting the responsive prop on the Button component.

    -import { ToolbarActionButton } from "@comet/admin/lib/common/toolbar/actions/ToolbarActionButton";
    +import { Button } from "@comet/admin";
     import { Favorite } from "@comet/admin-icons";
    
     const Example = () => {
    -    return <ToolbarActionButton startIcon={<Favorite />}>Hello</ToolbarActionButton>;
    +    return <Button responsive startIcon={<Favorite />}>Hello</Button>;
     };

Patch Changes

  • 9546356: Fix mobile styling of AppHeaderMenuButton
  • 3ddc227: Adjust the spacings inside Toolbar and DataGridToolbar to match the Comet design
  • 0bb181a: usePersistentColumnState: Prevent Data Grids with the same name to overwrite each others pinned and column-visibility states

@comet/admin-theme@7.12.0

Minor Changes

  • ee59753: Add styling of Card and CardHeader to align with Comet DXP design

Patch Changes

  • 47be4eb: Adapt styling of DialogActions, DialogContent, and DialogTitle to match the Comet DXP design
  • af51bb4: Prevent the input value of GridToolbarQuickFilter from being truncated too early

@comet/blocks-admin@7.12.0

Minor Changes

  • 86479e7: Simplify setting field props when using createCompositeBlockTextField or createCompositeBlockSelectField

    The props can now be set directly without nesting them inside the fieldProps object.

     block: createCompositeBlockTextField({
    -    fieldProps: {
             label: "Title",
             fullWidth: true,
    -    },
     }),
  • af350d0: Add createCompositeBlockSwitchField helper function

    To simplify the creation of a switch field block by hiding the verbose definition of Form, Field and items.

  • 86479e7: Support disabled in select options when using createCompositeBlockSelectField

Patch Changes

  • 5583c9c: Allow passing a function as child to BlocksFinalForm

@comet/cms-admin@7.12.0

Minor Changes

  • 604491d: Validate filename length for uploads to DAM or FileUploads

    The filename can't exceed 255 characters.

Patch Changes

  • 64173b5: Fix page tree node slug validation to prevent URL encoded characters

  • 0837c4c: Hide the "Dependents" tab in the DAM for users without the permission dependencies

  • cf1a829: Remove video/avi, image/psd and video/x-m4v from default accepted mimetypes

    None of this mimetypes had an actual impact:

    • video/avi doesn't actually exist
    • image/psd doesn't exist / is non-standard
    • video/x-m4v is a niche format and the mimetype is not widely used (e.g., Google Chrome and MacOS use video/mp4 instead)

    So removing them shouldn't have any noticeable effects.

  • cf1a829: Add image/x-icon to default accepted mimetypes

    Previously, only image/vnd.microsoft.icon was supported. That could lead to problems uploading .ico files, since
    image/vnd.microsoft.icon and image/x-icon are valid mimetypes for this format.

  • 02dd20a: Export useDamScope hook

    This allows accessing the DAM scope in the application. This might be necessary when developing integrations with a third-party DAM.

  • 9546356: Update default icon of ContentScopeSelect and fix mobile styling for AppHeader components

    • Update the default icon in ContentScopeSelect from <Domain /> to <Language />
    • Fix mobile styling of BuildEntry and ContentScopeSelect and UserHeaderItem

@comet/cms-api@7.12.0

Minor Changes

  • 604491d: Validate filename length for uploads to DAM or FileUploads

    The filename can't exceed 255 characters.

  • 575f1a7: Add ExceptionFilter to replace ExceptionInterceptor

    The main motivation for this change was that the ExceptionInterceptor didn't capture exceptions thrown in guards. This could lead to information leaks, e.g., details about the database schema or the underlying code. This is considered a security risk.

    The ExceptionFilter also catches error within guards. The error format remains unchanged.

    Switching from the ExceptionInterceptor to the ExceptionFilter must be done in the project:

    // main.ts
    
    - app.useGlobalInterceptors(new ExceptionInterceptor(config.debug));
    + app.useGlobalFilters(new ExceptionFilter(config.debug));

Patch Changes

  • 64173b5: Fix page tree node slug validation to prevent URL encoded characters

  • c66a403: Migrate from deprecated @azure/openai package to openai

    See https://learn.microsoft.com/en-us/azure/ai-services/openai/how-to/migration-javascript for more information.

  • 6b4866a: Pass x-preview-dam-urls and x-relative-dam-urls headers to url field resolver in FileImagesResolver

  • cf1a829: Remove video/avi, image/psd and video/x-m4v from default accepted mimetypes

    None of these mimetypes had an actual impact:

    • video/avi doesn't actually exist
    • image/psd doesn't exist / is non-standard
    • video/x-m4v is a niche format and the mimetype is not widely used (e.g., Google Chrome and MacOS use video/mp4 instead)

    So removing them shouldn't have any noticeable effects.

  • cf1a829: Add image/x-icon to default accepted mimetypes

    Previously, only image/vnd.microsoft.icon was supported. That could lead to problems uploading .ico files, since
    image/vnd.microsoft.icon and image/x-icon are valid mimetypes for this format.

  • ff0a037: Prevent image uploads from failing if exif data cannot be parsed

@comet/cli@7.12.0

Minor Changes

  • 753cd6f: Add option for base64 encoding in inject-site-configs command

@comet/cms-site@7.12.0

Patch Changes

  • e92e6df: Prevent the block-preview from becoming unresponsive when rendering an input

6.19.0

21 Jan 15:44
baed503
Compare
Choose a tag to compare

@comet/cms-api@6.19.0

Minor Changes

  • 2fd22e7: Add ExceptionFilter to replace ExceptionInterceptor

    The main motivation for this change was that the ExceptionInterceptor didn't capture exceptions thrown in guards. This could lead to information leaks, e.g., details about the database schema or the underlying code. This is considered a security risk.

    The ExceptionFilter also catches error within guards. The error format remains unchanged.

    Switching from the ExceptionInterceptor to the ExceptionFilter must be done in the project:

    // main.ts
    
    - app.useGlobalInterceptors(new ExceptionInterceptor(config.debug));
    + app.useGlobalFilters(new ExceptionFilter(config.debug));

5.11.0

21 Jan 15:43
baed503
Compare
Choose a tag to compare

@comet/cms-api@5.11.0

Minor Changes

  • f0dd6c2: Add ExceptionFilter to replace ExceptionInterceptor

    The main motivation for this change was that the ExceptionInterceptor didn't capture exceptions thrown in guards. This could lead to information leaks, e.g., details about the database schema or the underlying code. This is considered a security risk.

    The ExceptionFilter also catches error within guards. The error format remains unchanged.

    Switching from the ExceptionInterceptor to the ExceptionFilter must be done in the project:

    // main.ts
    
    - app.useGlobalInterceptors(new ExceptionInterceptor(config.debug));
    + app.useGlobalFilters(new ExceptionFilter(config.debug));

6.18.3

20 Jan 10:07
47be4eb
Compare
Choose a tag to compare

@comet/cms-api@6.18.3

Patch Changes

  • 3f6a819: Pass x-preview-dam-urls header to url field resolver in FileImagesResolver

6.18.2

20 Jan 08:26
af350d0
Compare
Choose a tag to compare

@comet/cms-admin@6.18.2

Patch Changes

  • d16b369: Export useDamScope hook

    This allows accessing the DAM scope in the application. This might be necessary when developing integrations with a third-party DAM.

6.18.1

17 Jan 09:23
63b2acd
Compare
Choose a tag to compare

@comet/cms-admin@6.18.1

Patch Changes

  • e61ebdd: Hide the "Dependents" tab in the DAM for users without the permission dependencies