Features: - Full RBAC with 3 roles (superadmin/manager/contributor) - Ownership tracking on posts, tasks, campaigns, projects - Task system: assign to anyone, filter combobox, visibility scoping - Team members merged into users table (single source of truth) - Post thumbnails on kanban cards from attachments - Publication link validation before publishing - Interactive onboarding tutorial with Settings restart - Full Arabic/English i18n with RTL layout support - Language toggle in sidebar, IBM Plex Sans Arabic font - Brand-based visibility filtering for non-superadmins - Manager can only create contributors - Profile completion flow for new users - Cookie-based sessions (express-session + SQLite)
1.1 KiB
1.1 KiB
concat-map
Concatenative mapdashery.
example
var concatMap = require('concat-map');
var xs = [ 1, 2, 3, 4, 5, 6 ];
var ys = concatMap(xs, function (x) {
return x % 2 ? [ x - 0.1, x, x + 0.1 ] : [];
});
console.dir(ys);
[ 0.9, 1, 1.1, 2.9, 3, 3.1, 4.9, 5, 5.1 ]
methods
var concatMap = require('concat-map')
concatMap(xs, fn)
Return an array of concatenated elements by calling fn(x, i) for each element
x and each index i in the array xs.
When fn(x, i) returns an array, its result will be concatenated with the
result array. If fn(x, i) returns anything else, that value will be pushed
onto the end of the result array.
install
With npm do:
npm install concat-map
license
MIT
notes
This module was written while sitting high above the ground in a tree.

