Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
53 changes: 53 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,59 @@ All notable changes to the Super Layout Table Extension will be documented in th
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [0.2.18] - 2026-04-04

### Changed
- Updated all 28 dependencies to latest versions (Issue #45)
- Aligned dependency versions with expandable-blocks (v1.3.4) and expandable-blocks-api (v0.3.0)

### Security
- Resolved 1 CRITICAL vulnerability (happy-dom RCE via VM Context Escape)
- Resolved 5 HIGH vulnerabilities in direct dependencies (playwright SSL bypass, axios SSRF, rollup XSS/path traversal, glob command injection)
- Reduced total vulnerabilities from 10 to 4 (remaining are transitive SDK dependencies)

### Updated Dependencies

#### Production
- `lodash` 4.17.21 → 4.18.1
- `@directus/format-title` 12.0.1 → 12.1.2

#### Dev — Major Updates
- `@directus/extensions-sdk` 11.0.10 → 17.1.1
- `@directus/types` 13.2.2 → 15.0.1
- `typescript` 5.x → 6.0.2
- `eslint` 9.x → 10.2.0
- `@eslint/js` 9.x → 10.0.1
- `vitest` 3.2.4 → 4.1.2
- `@vitest/coverage-v8` 3.2.4 → 4.1.2
- `@vitest/ui` 3.2.4 → 4.1.2
- `happy-dom` 18.0.1 → 20.8.9
- `jsdom` 26.1.0 → 29.0.1
- `vue-router` 4.5.1 → 5.0.4
- `vite` added as direct dependency (8.0.3) for Vitest 4 peer requirement

#### Dev — Minor/Patch Updates
- `@directus/utils` 13.0.9 → 13.4.0
- `@typescript-eslint/eslint-plugin` 8.40.0 → 8.58.0
- `@typescript-eslint/parser` 8.40.0 → 8.58.0
- `@vitejs/plugin-vue` 6.0.1 → 6.0.5
- `@playwright/test` 1.54.2 → 1.59.1
- `playwright` 1.54.2 → 1.59.1
- `@types/lodash` 4.14.202 → 4.17.24
- `@types/node` 24.3.0 → 22.19.17
- `chalk` 5.5.0 → 5.6.2
- `eslint-plugin-prettier` 5.5.4 → 5.5.5
- `eslint-plugin-vue` 10.4.0 → 10.8.0
- `prettier` 3.6.2 → 3.8.1
- `vue` 3.5.18 → 3.5.32
- `vue-eslint-parser` 10.2.0 → 10.4.0
- `vue-tsc` 3.0.5 → 3.2.6

### Technical Details
- Workaround for TS 6.0.2 compiler crash with SDK v17 complex types in `index.ts` (config object extracted with `as any`)
- Removed deprecated `baseUrl` from `tsconfig.json` (deprecated in TypeScript 6)
- Regenerated `pnpm-lock.yaml` from scratch

## [0.2.17] - 2026-03-04

### Added
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ A powerful and feature-rich table layout extension for Directus 11+ that enhance

## Version

v0.2.17 - Stable release
v0.2.18 - Stable release

## 🌟 Top Features

Expand Down
12 changes: 7 additions & 5 deletions index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,9 @@ import LayoutComponent from './src/super-table.vue';
import ActionsComponent from './src/actions.vue';
import OptionsComponent from './src/options.vue';

export default defineLayout({
// Workaround: TS 6.0.2 crashes on complex SDK v17 types in defineLayout() inline objects.
// Extract config to bypass the compiler crash (same fix as expandable-blocks).
const layoutConfig = {
id: 'super-layout-table',
name: 'Super Table',
icon: 'table_rows',
Expand All @@ -14,12 +16,12 @@ export default defineLayout({
actions: ActionsComponent,
},
headerShadow: false,
setup(props, { emit }) {
// The component handles everything internally
// Just pass through all props
setup(props: any, { emit }: any) {
return {
...props,
emit,
};
},
});
} as any;

export default defineLayout(layoutConfig);
59 changes: 30 additions & 29 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "directus-extension-super-table",
"version": "0.2.17",
"version": "0.2.18",
"description": "A powerful and feature-rich table layout extension for Directus 11+ with inline editing, quick filters, and manual sorting",
"keywords": [
"directus",
Expand Down Expand Up @@ -61,38 +61,39 @@
"quality:fix": "pnpm run lint:fix && pnpm run format"
},
"dependencies": {
"@directus/format-title": "^12.0.1",
"@directus/format-title": "^12.1.2",
"date-fns": "^4.1.0",
"lodash": "^4.17.21"
"lodash": "^4.18.1"
},
"devDependencies": {
"@directus/extensions-sdk": "^11.0.10",
"@directus/types": "^13.2.2",
"@directus/utils": "^13.0.9",
"@eslint/js": "^9.33.0",
"@playwright/test": "^1.54.2",
"@types/lodash": "^4.14.202",
"@types/node": "^24.3.0",
"@typescript-eslint/eslint-plugin": "^8.40.0",
"@typescript-eslint/parser": "^8.40.0",
"@vitejs/plugin-vue": "^6.0.1",
"@vitest/coverage-v8": "^3.2.4",
"@vitest/ui": "^3.2.4",
"@directus/extensions-sdk": "^17.1.1",
"@directus/types": "^15.0.1",
"@directus/utils": "^13.4.0",
"@eslint/js": "^10.0.1",
"@playwright/test": "^1.59.1",
"@types/lodash": "^4.17.24",
"@types/node": "^22.19.17",
"@typescript-eslint/eslint-plugin": "^8.58.0",
"@typescript-eslint/parser": "^8.58.0",
"@vitejs/plugin-vue": "^6.0.5",
"@vitest/coverage-v8": "^4.1.2",
"@vitest/ui": "^4.1.2",
"@vue/test-utils": "^2.4.6",
"chalk": "^5.5.0",
"eslint": "^9.33.0",
"chalk": "^5.6.2",
"eslint": "^10.2.0",
"eslint-config-prettier": "^10.1.8",
"eslint-plugin-prettier": "^5.5.4",
"eslint-plugin-vue": "^10.4.0",
"happy-dom": "^18.0.1",
"jsdom": "^26.1.0",
"playwright": "^1.54.2",
"prettier": "^3.6.2",
"typescript": "^5.0.0",
"vitest": "^3.2.4",
"vue": "^3.3.0",
"vue-eslint-parser": "^10.2.0",
"vue-router": "^4.5.1",
"vue-tsc": "^3.0.5"
"eslint-plugin-prettier": "^5.5.5",
"eslint-plugin-vue": "^10.8.0",
"happy-dom": "^20.8.9",
"jsdom": "^29.0.1",
"playwright": "^1.59.1",
"prettier": "^3.8.1",
"typescript": "^6.0.2",
"vite": "^8.0.3",
"vitest": "^4.1.2",
"vue": "^3.5.32",
"vue-eslint-parser": "^10.4.0",
"vue-router": "^5.0.4",
"vue-tsc": "^3.2.6"
}
}
Loading
Loading