Initial commit: notification-elements-demo app

Interactive Angular 19 demo for @sda/notification-elements-ui with
6 sections: Bell & Feed, Notification Center, Inbox, Comments &
Threads, Mention Input, and Full-Featured layout. Includes mock
data, dark mode toggle, and real-time event log.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Giuliano Silvestro
2026-02-13 21:49:19 +10:00
commit 5d0c9ec7eb
36473 changed files with 3778146 additions and 0 deletions

40
node_modules/hyperdyperid/CHANGELOG.md generated vendored Normal file
View File

@@ -0,0 +1,40 @@
# [1.2.0](https://github.com/streamich/hyperdyperid/compare/v1.1.0...v1.2.0) (2022-04-23)
### Features
* 🎸 add TypeScript ambient type annotations ([cc564fe](https://github.com/streamich/hyperdyperid/commit/cc564fe8eac6198d85b16b6da04fc3a780499f0e))
# [1.1.0](https://github.com/streamich/hyperdyperid/compare/v1.0.1...v1.1.0) (2022-04-23)
### Features
* 🎸 add str3_36 generators ([0ba3630](https://github.com/streamich/hyperdyperid/commit/0ba363069703fb80005555e74f2f469148f31fa7))
* 🎸 export xorshift32() and add randomU32() functions ([e342869](https://github.com/streamich/hyperdyperid/commit/e34286971ae90064bd4391b6a01d87d2d7a94d86))
### Performance Improvements
* ⚡️ update benchmarks ([6504b3d](https://github.com/streamich/hyperdyperid/commit/6504b3d54b29e8677f057612fec06783d9752a1e))
* ⚡️ update randomU32() benchmarks ([6bde79d](https://github.com/streamich/hyperdyperid/commit/6bde79deaee6a5f8c7781ba180675b9bf0ad3a51))
## [1.0.1](https://github.com/streamich/hyperdyperid/compare/v1.0.0...v1.0.1) (2020-10-12)
### Bug Fixes
* 🐛 initialize seeds using 32 bits ([3090f3c](https://github.com/streamich/hyperdyperid/commit/3090f3ce5d2a8392fb52d75bcc76cf7c2c41e76e))
# 1.0.0 (2020-10-12)
### Features
* 🎸 add hyperid() and str() methods ([7a06b5a](https://github.com/streamich/hyperdyperid/commit/7a06b5adc1a94df5cc99de1d687b69b9d396e8f4))
* 🎸 implement fast ID generators ([cda3d98](https://github.com/streamich/hyperdyperid/commit/cda3d98a07627d5b3cb2c07d0dde02517d4c34eb))
### Performance Improvements
* ⚡️ improve benchmarks ([1f10d9d](https://github.com/streamich/hyperdyperid/commit/1f10d9d76853d94648b545a8b4d3592dc1203857))

21
node_modules/hyperdyperid/LICENSE generated vendored Normal file
View File

@@ -0,0 +1,21 @@
MIT License
Copyright (c) 2020 Vadim @streamich Dalecky
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

77
node_modules/hyperdyperid/README.md generated vendored Normal file
View File

@@ -0,0 +1,77 @@
# `hyperdyperid`
Fastest random ID and random string generation for Node.js
- `str3_36` &mdash; generates random 3 character Base36 alphanumeric string.
- `str5_36` &mdash; generates random 5 character Base36 alphanumeric string.
- `str6_36` &mdash; generates random 6 character Base36 alphanumeric string.
- `str10_36` &mdash; generates random 10 character alphanumeric string.
- `str(len [, alphabet])` &mdash; generates any length random string using an `alphabet`. Use like `str(10, '0123456789')`.
- `hyperid` &mdash; generates "hyperid" like ID.
- `xorshift32` &mdash; iterates through pseudo random numbers using "xorshift32" algorithm. This used
to be the algorithm behind `Math.random()` in V8, then it switched to "xorshift64".
- `randomU32(min, max)` &mdash; generate a random 32-bit integer.
## Usage
Install
```
yarn add hyperdyperid
```
Generate base36 10-character string:
```js
const {str10_36} = require('hyperdyperid/lib/str10_36');
str10_36();
// lxifpmidcr
// cn41vpmtxo
// dj2u5ghp3r
// 6yro5d0g9l
```
## Performance
Ran on Mac Mini M1.
Random ID generation:
```
node -v
v16.14.2
node benchmarks/main.js
hyperdyperid xorshift32() x 241,258,490 ops/sec ±1.97% (78 runs sampled)
hyperdyperid str3_36() x 203,361,942 ops/sec ±1.57% (82 runs sampled)
hyperdyperid str5_36() x 124,134,559 ops/sec ±1.74% (85 runs sampled)
hyperdyperid str6_36() x 125,011,053 ops/sec ±2.48% (70 runs sampled)
hyperdyperid str10_36() x 19,445,199 ops/sec ±1.92% (84 runs sampled)
hyperdyperid str(5) x 5,940,801 ops/sec ±1.70% (82 runs sampled)
hyperdyperid str(10) x 2,798,758 ops/sec ±1.45% (65 runs sampled)
hyperdyperid hyperid() x 26,317,209 ops/sec ±2.61% (76 runs sampled)
hyperid x 17,018,022 ops/sec ±1.66% (84 runs sampled)
Math.random() x 72,294,752 ops/sec ±1.65% (83 runs sampled)
Math.random().toString() x 4,503,932 ops/sec ±2.68% (80 runs sampled)
nanoid x 470,470 ops/sec ±3.17% (77 runs sampled)
shortid x 41,870 ops/sec ±6.21% (67 runs sampled)
Fastest is hyperdyperid xorshift32()
```
Random integer generation:
```
node -v
v16.14.2
node benchmarks/randomU32.js
randomU32(min, max) x 248,233,310 ops/sec ±1.91% (73 runs sampled)
Math.random() * (max - min + 1) + min x 35,034,863 ops/sec ±1.75% (81 runs sampled)
Fastest is randomU32(min, max)
```
## License
[MIT © Vadim Dalecky](LICENSE).

View File

@@ -0,0 +1,10 @@
const {randomU32} = require('../randomU32');
test('works', () => {
for (let i = 0; i < 1000; i++) {
const min = Math.round(Math.random() * 0xFFFFFF);
const max = min + Math.round(Math.random() * 0xFFFFFF);
const num = randomU32(min, max);
expect(num >= min && num <= max).toBe(true);
}
});

View File

@@ -0,0 +1 @@
test('...', () => {});

27
node_modules/hyperdyperid/lib/codegen.js generated vendored Normal file
View File

@@ -0,0 +1,27 @@
const fs = require('fs');
const fd = fs.openSync(__dirname + '/maps.js', 'w+');
const map1 = {};
for (var i = 0; i < 36; i++) {
map1[i] = i.toString(36);
}
fs.writeSync(fd, 'exports.map1 = JSON.parse(' + JSON.stringify(JSON.stringify(map1)) + ');\n\n');
const map2 = {};
for (var i = 0; i < 36; i++) {
for (var j = 0; j < 36; j++) {
map2[i * 36 + j] = i.toString(36) + j.toString(36);
}
}
fs.writeSync(fd, 'exports.map2 = JSON.parse(' + JSON.stringify(JSON.stringify(map2)) + ');\n\n');
const map3 = {};
for (var i = 0; i < 36; i++) {
for (var j = 0; j < 36; j++) {
for (var k = 0; k < 36; k++) {
map3[(i * 36 * 36) + (j * 36) + k] = i.toString(36) + j.toString(36) + k.toString(36);
}
}
}
fs.writeSync(fd, 'exports.map3 = JSON.parse(' + JSON.stringify(JSON.stringify(map3)) + ');\n\n');

1
node_modules/hyperdyperid/lib/hyperid.d.ts generated vendored Normal file
View File

@@ -0,0 +1 @@
export const hyperid: () => string;

22
node_modules/hyperdyperid/lib/hyperid.js generated vendored Normal file
View File

@@ -0,0 +1,22 @@
const {str} = require("./str");
const alphabet = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
function hyperid() {
var prefix = str(22, alphabet) + '/';
Number(prefix);
var count = 0;
return function instance() {
return prefix + count++;
}
}
exports.hyperid = hyperid;
// const instance = hyperid();
// console.log(instance());
// console.log(instance());
// console.log(instance());
// console.log(instance());
// console.log(instance());
// console.log(instance());

6
node_modules/hyperdyperid/lib/maps.js generated vendored Normal file

File diff suppressed because one or more lines are too long

4
node_modules/hyperdyperid/lib/randomU32.d.ts generated vendored Normal file
View File

@@ -0,0 +1,4 @@
/**
* Generates a random 32-bit unsigned integer, in the [min, max] range.
*/
export const randomU32: (min: number, max: number) => number;

9
node_modules/hyperdyperid/lib/randomU32.js generated vendored Normal file
View File

@@ -0,0 +1,9 @@
var x = 1 + Math.round(Math.random() * ((-1>>>0)-1));
/** Generate a random 32-bit unsigned integer in the specified [min, max] range. */
function randomU32(min, max) {
x ^= x << 13; x ^= x >>> 17; x ^= x << 5;
return (x >>> 0) % (max - min + 1) + min;
}
exports.randomU32 = randomU32;

1
node_modules/hyperdyperid/lib/str.d.ts generated vendored Normal file
View File

@@ -0,0 +1 @@
export function str(length: number, alphabet: string): string;

13
node_modules/hyperdyperid/lib/str.js generated vendored Normal file
View File

@@ -0,0 +1,13 @@
var defaultAlphabet = 'abcdefghijklmnopqrstuvwxyz0123456789';
function str(length, alphabet) {
alphabet = alphabet || defaultAlphabet;
var str = '';
var alphabetLength = alphabet.length;
for (var i = 0; i < length; i++) {
str += alphabet.charAt(Math.floor(Math.random() * alphabetLength));
}
return str;
}
exports.str = str;

3
node_modules/hyperdyperid/lib/str10_36.d.ts generated vendored Normal file
View File

@@ -0,0 +1,3 @@
export type Str10_36 = () => string;
export function makestr10_36(): Str10_36;
export const str10_36: Str10_36;

36
node_modules/hyperdyperid/lib/str10_36.js generated vendored Normal file
View File

@@ -0,0 +1,36 @@
var makestr5_36 = require("./str5_36").makestr5_36;
function makestr10_36() {
var gen1 = makestr5_36();
var gen2 = makestr5_36();
return function str10_36() {
return gen1() + gen2();
}
}
exports.makestr10_36 = makestr10_36;
exports.str10_36 = makestr10_36();
// const {map2, map3} = require('./maps');
// function makestr10_36() {
// var x = (1 + (Math.random() * (0xFFFF - 1))) | 0;
// var y = (1 + (Math.random() * (0xFFFF - 1))) | 0;
// return function str10_36() {
// x ^= x << 13;
// x ^= x >> 17;
// x ^= x << 5;
// y ^= y << 13;
// y ^= y >> 17;
// y ^= y << 5;
// var a = x >>> 1;
// var b = y >>> 1;
// return map3[a % 46656] + map2[(a >> 18) % 1296] + map3[b % 46656] + map2[(b >> 18) % 1296];
// }
// }
// console.log(exports.str10_36());
// console.log(exports.str10_36());
// console.log(exports.str10_36());
// console.log(exports.str10_36());
// console.log(exports.str10_36());

3
node_modules/hyperdyperid/lib/str3_36.d.ts generated vendored Normal file
View File

@@ -0,0 +1,3 @@
export type Str3_36 = () => string;
export function makestr3_36(): Str3_36;
export const str3_36: Str3_36;

15
node_modules/hyperdyperid/lib/str3_36.js generated vendored Normal file
View File

@@ -0,0 +1,15 @@
const {map3} = require('./maps');
function makestr3_36() {
var x = 1 + Math.round(Math.random()*((-1>>>0)-1));
return function str3_36() {
x ^= x << 13;
x ^= x >> 17;
x ^= x << 5;
var val = x >>> 1;
return map3[val % 46656];
}
}
exports.makestr3_36 = makestr3_36;
exports.str3_36 = makestr3_36();

3
node_modules/hyperdyperid/lib/str5_36.d.ts generated vendored Normal file
View File

@@ -0,0 +1,3 @@
export type Str5_36 = () => string;
export function makestr5_36(): Str5_36;
export const str5_36: Str5_36;

15
node_modules/hyperdyperid/lib/str5_36.js generated vendored Normal file
View File

@@ -0,0 +1,15 @@
const {map2, map3} = require('./maps');
function makestr5_36() {
var x = 1 + Math.round(Math.random()*((-1>>>0)-1));
return function str5_36() {
x ^= x << 13;
x ^= x >> 17;
x ^= x << 5;
var val = x >>> 1;
return map3[val % 46656] + map2[(val >> 18) % 1296];
}
}
exports.makestr5_36 = makestr5_36;
exports.str5_36 = makestr5_36();

3
node_modules/hyperdyperid/lib/str6_36.d.ts generated vendored Normal file
View File

@@ -0,0 +1,3 @@
export type Str6_36 = () => string;
export function makestr6_36(): Str6_36;
export const str6_36: Str6_36;

15
node_modules/hyperdyperid/lib/str6_36.js generated vendored Normal file
View File

@@ -0,0 +1,15 @@
const {map3} = require('./maps');
function makestr6_36() {
var x = 1 + Math.round(Math.random()*((-1>>>0)-1));
return function str6_36() {
x ^= x << 13;
x ^= x >> 17;
x ^= x << 5;
var val = x >>> 1;
return map3[val % 46656] + map3[(val >> 16) % 46656];
}
}
exports.makestr6_36 = makestr6_36;
exports.str6_36 = makestr6_36();

3
node_modules/hyperdyperid/lib/xorshift32.d.ts generated vendored Normal file
View File

@@ -0,0 +1,3 @@
export type XorShift32 = () => number;
export const makexorshift32: () => XorShift32;
export const xorshift32: XorShift32;

15
node_modules/hyperdyperid/lib/xorshift32.js generated vendored Normal file
View File

@@ -0,0 +1,15 @@
function makexorshift32() {
var x = 1 + Math.round(Math.random() * ((-1>>>0)-1));
return function xorshift32() {
x ^= x << 13;
x ^= x >> 17;
x ^= x << 5;
return x;
};
}
var xorshift32 = makexorshift32();
exports.makexorshift32 = makexorshift32;
exports.xorshift32 = xorshift32;

51
node_modules/hyperdyperid/package.json generated vendored Normal file
View File

@@ -0,0 +1,51 @@
{
"name": "hyperdyperid",
"version": "1.2.0",
"description": "",
"author": {
"name": "streamich",
"url": "https://github.com/streamich"
},
"homepage": "https://github.com/streamich/hyperdyperid",
"repository": "streamich/hyperdyperid",
"license": "MIT",
"engines": {
"node": ">=10.18"
},
"main": "lib/index.js",
"files": [
"lib/"
],
"types": "lib/index.d.ts",
"typings": "lib/index.d.ts",
"scripts": {
"test": "jest --config='jest.config.js'",
"release": "semantic-release"
},
"keywords": [],
"dependencies": {},
"devDependencies": {
"@semantic-release/changelog": "^5.0.1",
"@semantic-release/git": "^9.0.0",
"@semantic-release/npm": "^7.0.6",
"@types/jest": "^26.0.14",
"benchmark": "^2.1.4",
"hyperid": "2.0.5",
"jest": "^26.4.2",
"semantic-release": "^17.1.2",
"nanoid": "^3.1.12",
"shortid": "^2.2.15"
},
"release": {
"verifyConditions": [
"@semantic-release/changelog",
"@semantic-release/npm",
"@semantic-release/git"
],
"prepare": [
"@semantic-release/changelog",
"@semantic-release/npm",
"@semantic-release/git"
]
}
}