mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2026-09-02 17:53:30 +00:00
9.2.0-33069610052
addEventListener was called with this.onDragEnter.bind(this), creating a new function reference each time, while removeEventListener was called with the unbound this.onDragEnter. The references never matched, so drag listeners were never removed on destroy. Each surviving listener closed over the directive and its host cell, retaining the whole detached datatable/task-list subtree via the parentNode chain. Heap analysis showed 624 dragenter + 624 dragover + 624 drop listeners bound to detached cells. Store the bound handlers once and use the same references for both add and remove so listeners are properly cleaned up.
Alfresco Application Development Framework (ADF)
Introduction
See the introduction page in our documentation for an overview of ADF along with links to useful starting points.
Prerequisites
Node: 18.x
NPM: 9.x
Also, check out the tutorial: Creating your first ADF Application for full details on what you may need to install before using ADF.
See also
Installation
This project uses pnpm for package management with built-in supply chain attack protection.
pnpm install # install all packages
pnpm run add <package> # add a new package (with security check)
Supply Chain Security
Layer 1: pnpm script blocking
- All lifecycle scripts (postinstall, etc.) are blocked by default
- Only trusted packages in
pnpm-workspace.yamlcan run scripts - Protects during
pnpm installandpnpm add
Layer 2: Security database check
pnpm run addchecks packages against OSV and GitHub Advisory databases BEFORE installing- Pre-commit hook blocks commits containing known malicious packages
Layer 3: npm blocked
- Running
npm installwill fail - enforces pnpm usage
Components
You can find the sources for all ADF components in the lib folder.
Libraries
ADF Libraries list:
Browser Support
All components are supported in the following browsers:
| Browser | Version |
|---|---|
| Chrome | Latest |
| Safari | Latest |
| Firefox | Latest |
| Edge | Latest |
Languages
TypeScript
91.9%
HTML
4.3%
SCSS
1.9%
JavaScript
1%
C
0.7%
Other
0.2%