Maurizio Vitale 91b5164ab2 fix(core): fix DropZoneDirective listener leak from bind(this) mismatch [AAE-50892] (#12200)
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.
2026-08-27 12:56:51 +01:00
2022-08-25 10:50:30 +01:00
2016-06-29 11:42:48 +01:00

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.yaml can run scripts
  • Protects during pnpm install and pnpm add

Layer 2: Security database check

  • pnpm run add checks packages against OSV and GitHub Advisory databases BEFORE installing
  • Pre-commit hook blocks commits containing known malicious packages

Layer 3: npm blocked

  • Running npm install will 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
S
Description
Alfresco Angular Components
Readme
776 MiB
Languages
TypeScript 91.9%
HTML 4.3%
SCSS 1.9%
JavaScript 1%
C 0.7%
Other 0.2%