8.15.0
@comet/admin@8.15.0
Minor Changes
- 39a9bb0: Add support for non-paginated apis in useDataGridExcelExport
- 5b52998: Add tooltip for childless items in closed
MainNavigation
Patch Changes
- cc96333: Fix FinalForm to forward submissionErrors (return from submit handler) correctly
- 180d1e3: Fix required validation for
AsyncAutocompleteFieldwith multiple select - f7b9de9: Fix DataGrid singleSelect filter height to prevent autocomplete values from being truncated
- 0c2435a: Hide
filesInfoTextfrom FileSelect
@comet/admin-generator@8.15.0
Minor Changes
- 82ff4c2: Form field boolean: use
labelas field label (before: checkbox label) and add newcheckboxLabeloption - 14f9ef0: Add support for
<FormattedMessage />in staticSelect values label - 39a9bb0: Make paging conditional in grid generation: only add paging args (
offset,limit) and paging return (totalCount, nestednodes) when the GQL schema query returns a paginated type - cc96333: Add support for custom error responses in update and create mutation and show it in form as submission error
Patch Changes
- 33ac500: Use the GraphQL schema scope type in generated grids when scope comes from context.
- 47ed8cf: Only emit grid sort variables and helpers when the schema supports sorting.
@comet/cms-admin@8.15.0
Minor Changes
- 9333e9c: Readd "Start impersonation" button to UserGrid
Patch Changes
-
2bbb9c1: Fix scope not switching when impersonating a user
Previously, the
ContentScopeProviderblindly restored the scope from localStorage, which could redirect impersonated users to scopes they don't have access to.Now, the stored scope is validated against the user's allowed scopes before being applied. If the stored scope is not allowed, it is cleared from localStorage and the default scope is used instead.
Additionally, the
NODE_ENVguard on persisting the selected scope to localStorage is removed so scope persistence is also done locally again.
@comet/api-generator@8.15.0
Minor Changes
-
cc96333: Add support for custom error responses in update and create mutation and show it in form as submission error
-
0b266f4: Add support for hooksService that allows injecting a custom service into update/create mutation for custom validation logic
Usage example:
export class ProductService implements CrudGeneratorHooksService { async validateCreateInput(input: ProductInput, options: { currentUser: CurrentUser, scope: Scope, args: { department: string } }): Promise<void> { //add custom validation logic here } async validateUpdateInput(input: ProductInput, options: { currentUser: CurrentUser, entity: Product }): Promise<void> { //add custom validation logic here } } @CrudGenerator({ .... hooksService: ProductService }) class Products ...
@comet/brevo-api@8.15.0
Patch Changes
- 317ca97: Fix email campaigns getting stuck in broken state when scheduled in the past
- Replace
@MinDate(new Date())with@MinDate(() => new Date())to evaluate validation at runtime instead of class definition time - Check actual campaign status from Brevo before blocking updates to past-scheduled campaigns
- Only block updates if campaign has actually been sent (not just scheduled in the past)
- Automatically sync local campaign state with Brevo's actual state
- Replace
@comet/cli@8.15.0
Minor Changes
-
7740f1e: Support 1Password references in site configs
Allows referencing secrets stored in 1Password directly in the site config using the
{{ op://... }}syntax. For example:export default ((env) => { return { // ,,, apiKey: `{{ op://example-project-prod/api-key/password }}`, }; }) satisfies GetSiteConfig;
They are then replaced with the actual values by
inject-site-configs.