9.0.0-beta.3
Pre-release@comet/admin@9.0.0-beta.3
Major Changes
-
3c81ff0: Remove
hasClearableContentprop fromClearInputAdornmentThe component now always renders when included in the component tree. Callers should conditionally render the component instead of passing the
hasClearableContentprop.Migration:
Before:
<ClearInputAdornment position="end" hasClearableContent={Boolean(value)} onClick={() => onChange("")} />
After:
{ value && <ClearInputAdornment position="end" onClick={() => onChange("")} />; }
Patch Changes
-
cabba53: Fix
DataGridPaginationpage information not pluralizing "items"The default message for
comet.dataGridPagination.pageInformationused a fixed plural form, forcing translations to follow the same shape. In languages with distinct singular/plural forms, this produced an incorrect result whenitemsTotal === 1. The default message now uses ICUpluralsyntax so translators can branch on count.Projects that maintain their own translation of
comet.dataGridPagination.pageInformationshould update it to usepluralwithoneandotherbranches.
@comet/admin-generator@9.0.0-beta.3
Minor Changes
- f1e6145: Add
initialPageSizeoption toGridConfigfor the Admin Generator. When set, the value is passed aspageSizetouseDataGridRemotein the generated DataGrid code.
@comet/cms-admin@9.0.0-beta.3
Minor Changes
-
dc8f29c: Add
SitePreviewActiontoDocumentInterfaceAllows overriding the site preview button in the page tree row actions on a per-document-type basis. When set, the provided component replaces the default preview
RowActionsItem, enabling custom preview URL construction (e.g., using additional GraphQL queries or scope data).Example
import { RowActionsItem } from "@comet/admin"; import { Preview } from "@comet/admin-icons"; import { type DocumentInterface, openSitePreviewWindow, type SitePreviewActionProps } from "@comet/cms-admin"; function PageSitePreviewAction({ pageTreeNode }: SitePreviewActionProps) { // Use hooks to construct a custom preview URL const previewPath = useCustomPreviewPath(pageTreeNode); return ( <RowActionsItem icon={<Preview />} disabled={!previewPath} onClick={() => { if (previewPath) { openSitePreviewWindow(previewPath, "/custom-root"); } }} > Open preview </RowActionsItem> ); } export const Page: DocumentInterface = { // ... SitePreviewAction: PageSitePreviewAction, };
-
71dce06: Make DataGrid columns in DAM sortable
Make Name, Type/Format, Info, Creation, and Latest Change columns in the
FolderDataGridsortable via column header clicks, using the standardmuiGridSortToGqlpattern from generated grids. Remove the separate Sort dropdown from the toolbar. Sort state is now stored in URL params instead of localStorage.
Patch Changes
-
1475f4a: Hide selective actions of DAM more actions menu in
ChooseDamFileDialog -
8a93124: Fix
hideContextMenunot hiding the context menu column in the DAMDataGridThe visibility flag was applied to a no-longer-existing
contextMenucolumn id; the column had been renamed toactions. The flag now targets the correct column. -
f29b2d7: Deprecate
ChooseFileDialogexportChooseFileDialogwas renamed toChooseDamFileDialog -
4729b3f: Prevent links in the
TableBlockRTE cell preview from opening when editing a cellDouble-clicking a cell to edit it would open any link in the preview.
Pointer events are now disabled on the preview, while text selection still works.
@comet/api-generator@9.0.0-beta.3
Minor Changes
- dd51208: Update TypeScript compilation target to ES2023 and lib to ES2023 to match the required Node.js v22
Patch Changes
- 8642996: Fix
MODULE_NOT_FOUNDerrors caused by extensionless deep imports of@nestjs/graphqlinternals.@nestjs/graphql13.3.0 tightened itsexportsmap so that the"./*": "./*"pattern no longer maps to.jsautomatically. All deep imports of@nestjs/graphqlinternals now use explicit.jsextensions.
@comet/brevo-api@9.0.0-beta.3
Major Changes
-
77a371e: Prevent importing dev dependencies in the API
Add
import/no-extraneous-dependenciesrule withdevDependenciesrestriction to the NestJS ESLint config, preventing accidental imports of dev-only packages in production source files. Dev dependencies may only be imported in test files.Fix
@comet/brevo-apito correctly declare@nestjs/graphql,graphql,graphql-scalars,lodash.isequal, anduuidas dependencies/peerDependencies instead of devDependencies, since they are imported in source code.
Minor Changes
- dd51208: Update TypeScript compilation target to ES2023 and lib to ES2023 to match the required Node.js v22
@comet/cms-api@9.0.0-beta.3
Major Changes
-
0e7d7e9: Import blob storage backends dynamically
BlobStorageAzureConfig,BlobStorageAzureStorage,BlobStorageFileConfig, andBlobStorageFileStorageare no longer exported from@comet/cms-apias they are now loaded dynamically based on the configured driver. Only the relevant backend class is imported, which avoids loading unused optional dependencies (e.g.,@azure/storage-bloboraws-sdk). -
962a320: Remove
importDamFileByDownloadmutation -
2ea835c: Rename
RedirectSourceTypeValuestoRedirectSourceType
Minor Changes
-
a50793a: Add
listFilesmethod toBlobStorageBackendService -
cac2b3b: Add fullText query support for PageTree (pageTreeFullTextSearch query)
to enable add a fullText column for a PageTree document (Page or others):
@Index({ type: "fulltext" }) @Property<Page>({ nullable: true, type: new FullTextType(), onUpdate: (page) => blockToMikroOrmFullText(page.content) }) searchableContent?: string;and enable fullText option for PageTreeModule
-
dd51208: Update TypeScript compilation target to ES2023 and lib to ES2023 to match the required Node.js v22
Patch Changes
- f6a2932: Fix
MODULE_NOT_FOUNDerrors caused by extensionless deep imports of@nestjs/graphqlinternals.@nestjs/graphql13.3.0 tightened itsexportsmap so that the"./*": "./*"pattern no longer maps to.jsautomatically. All deep imports of@nestjs/graphqlinternals now use explicit.jsextensions. - 71dce06: Support sorting folders by size (child count) in
FoldersService - 802b0b8: Remove
sharpdependency by parsing the dominant color directly from the 1x1 PNG produced by imgproxy - 8bf0e5b: Remove unused
ts-morphdependency - 8722deb: Upgrade
file-typedependency from v16 to v21
@comet/cli@9.0.0-beta.3
Minor Changes
-
9746947:
install-agent-skills: also install skills fromagentic-plugin/skills/In addition to the existing
skills/directory, the command now installs skills fromagentic-plugin/skills/. This allows shipping agent skills as part of a Claude Code plugin (with a.claude-plugin/plugin.jsonmanifest) without losing the ability to install them viainstall-agent-skills.Both directories are also fetched (via git sparse checkout) when consuming external repos listed in
agent-skills.json.skills/keeps priority overagentic-plugin/skills/.
Patch Changes
-
560a8f2: Cache
getSiteConfigsandop readcalls to avoid redundant executionWhen a template contains multiple placeholders for the same environment,
getSiteConfigs(env)andop readwere called repeatedly with identical arguments. Both are now cached per invocation so each uniqueenvand each uniqueop://URI is resolved only once.
@comet/eslint-config@9.0.0-beta.3
Major Changes
-
23a09c2: Add
curlyESLint rule to enforce braces for control statementsThis rule requires braces around the body of all control statements (if, else, for, while, etc.) to improve code readability and reduce diff size when adding statements.
-
1f903b6: Enable
@typescript-eslint/no-import-type-side-effectsrule -
77a371e: Prevent importing dev dependencies in the API
Add
import/no-extraneous-dependenciesrule withdevDependenciesrestriction to the NestJS ESLint config, preventing accidental imports of dev-only packages in production source files. Dev dependencies may only be imported in test files.Fix
@comet/brevo-apito correctly declare@nestjs/graphql,graphql,graphql-scalars,lodash.isequal, anduuidas dependencies/peerDependencies instead of devDependencies, since they are imported in source code.
Patch Changes
- c57e54e: Allow
console.infoandconsole.debugin theno-consoleESLint rule
@comet/mail-react@9.0.0-beta.3
Minor Changes
- 92a475f:
MjmlWrappernow applies the themes content background color by default when used within aThemeProviderorMjmlMailRoot
Patch Changes
-
92a475f: Fix
MjmlSectionoverridingMjmlWrapper's backgroundWhen rendered inside a custom
MjmlWrapper,MjmlSectionno longer applies its theme-defaultbackgroundColor, so the wrapper's background is now visible through its sections. An explicitbackgroundColorprop onMjmlSectionstill takes precedence. Sections rendered outside of a wrapper continue to receive the theme default as before.
@comet/site-react@9.0.0-beta.3
Patch Changes
-
e125c84: Use
OnetrustActiveGroupsinstead ofConsentIntegrationDatainuseOneTrustCookieApiConsentIntegrationDatais used for OneTrust's internal logging and can benull, which causeduseOneTrustCookieApito crash. As recommended by OneTrust support,window.OnetrustActiveGroupsis used instead, as it is always available when the consent banner is implemented.