Socket
Socket
Sign inDemoInstall

@yamiteru/cynic

Package Overview
Dependencies
0
Maintainers
1
Versions
19
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 3.2.0 to 3.3.0

6

dist/index.d.ts

@@ -1,2 +0,1 @@

import { EventEmitter } from "events";
declare const SET: unique symbol;

@@ -15,7 +14,6 @@ declare const ON_CLEAR: unique symbol;

export function size<O>(event$: Event<O>): number;
export function has<O>($event: Event<O>, callback: TCallback<O>): boolean;
export function has<O>(event$: Event<O>, callback: TCallback<O>): boolean;
export function clear<I, O>(event$: Event<O>): void;
export function fromTarget<O>(target: EventTarget, type: string, subs?: TCallback<O>[]): Event<O>;
export function fromEmitter<O>(emitter: EventEmitter, type: string, subs?: TCallback<O>[]): Event<O>;
export function once<O>(subs?: TCallback<O>[]): Event<O>;
//# sourceMappingURL=index.d.ts.map

@@ -29,3 +29,3 @@ function $parcel$exportWildcard(dest, source) {

return {
[$e1d9e69861c0ee79$export$5e8f180ef0142226]: subs && new Set(subs)
[$e1d9e69861c0ee79$export$5e8f180ef0142226]: subs ? new Set(subs) : false
};

@@ -60,3 +60,3 @@ }

function $c9e258e8c825c755$export$346677f925de839c(event$) {
return event$[$e1d9e69861c0ee79$export$5e8f180ef0142226]?.$c9e258e8c825c755$export$346677f925de839c || 0;
return event$[$e1d9e69861c0ee79$export$5e8f180ef0142226] ? event$[$e1d9e69861c0ee79$export$5e8f180ef0142226].size : 0;
}

@@ -69,4 +69,4 @@

function $514f40b04d64f4e6$export$a4f4bb6b1453fff5($event, callback) {
return $event[$e1d9e69861c0ee79$export$5e8f180ef0142226]?.$514f40b04d64f4e6$export$a4f4bb6b1453fff5(callback) || false;
function $514f40b04d64f4e6$export$a4f4bb6b1453fff5(event$, callback) {
return event$[$e1d9e69861c0ee79$export$5e8f180ef0142226] ? event$[$e1d9e69861c0ee79$export$5e8f180ef0142226].has(callback) : false;
}

@@ -88,39 +88,16 @@

var $3f6c853c9ad136ca$exports = {};
$parcel$export($3f6c853c9ad136ca$exports, "fromTarget", () => $3f6c853c9ad136ca$export$83bbfe56b7693998);
var $2938d486d5952a46$exports = {};
$parcel$export($2938d486d5952a46$exports, "once", () => $2938d486d5952a46$export$d2de3aaeafa91619);
function $3f6c853c9ad136ca$export$83bbfe56b7693998(target, type, subs = []) {
const $event = $a1c4a171850df66e$export$6cd530ed55e06764(subs);
const callback = (v)=>$135ecce5f69ee703$export$89b472e03be495df($event, v)
;
target.addEventListener(type, callback);
return {
...$event,
[$e1d9e69861c0ee79$export$a222d8dacac11c54]: ()=>target.removeEventListener(type, callback)
};
function $2938d486d5952a46$export$d2de3aaeafa91619(subs = []) {
return $a1c4a171850df66e$export$6cd530ed55e06764([
...subs,
(_, this$)=>$0c7a43d1ad7f036a$export$42ffd38884aecdac(this$)
]);
}
var $7d3a57290066691b$exports = {};
$parcel$export($7d3a57290066691b$exports, "fromEmitter", () => $7d3a57290066691b$export$d692b5265cd99b71);
function $7d3a57290066691b$export$d692b5265cd99b71(emitter, type, subs = []) {
const $event = $a1c4a171850df66e$export$6cd530ed55e06764(subs);
const callback = (v)=>$135ecce5f69ee703$export$89b472e03be495df($event, v)
;
emitter.addListener(type, callback);
return {
...$event,
[$e1d9e69861c0ee79$export$a222d8dacac11c54]: ()=>emitter.removeListener(type, callback)
};
}
$parcel$exportWildcard(module.exports, $a1c4a171850df66e$exports);

@@ -133,6 +110,5 @@ $parcel$exportWildcard(module.exports, $9b31693306eb8804$exports);

$parcel$exportWildcard(module.exports, $ba2c07b5499f050e$exports);
$parcel$exportWildcard(module.exports, $3f6c853c9ad136ca$exports);
$parcel$exportWildcard(module.exports, $7d3a57290066691b$exports);
$parcel$exportWildcard(module.exports, $2938d486d5952a46$exports);
//# sourceMappingURL=index.js.map
{
"name": "@yamiteru/cynic",
"version": "3.2.0",
"version": "3.3.0",
"license": "MIT",

@@ -39,21 +39,17 @@ "author": "Miroslav Vršecký <yamiteru@icloud.com>",

"npm": "yarn test && yarn build && yarn publish",
"benchmark": "ts-node-dev --respawn --transpile-only __benchmarks__/index.ts"
"benchmark": "ts-node __benchmarks__/index.ts"
},
"devDependencies": {
"@parcel/config-default": "^2.4.1",
"@parcel/config-default": "2.4.1",
"@parcel/packager-ts": "2.4.1",
"@parcel/transformer-typescript-types": "2.4.1",
"@types/benchmark": "^2.1.1",
"@types/benchmark": "2.1.1",
"@types/jest": "27.4.1",
"@types/node": "16.11.27",
"benchmark": "^2.1.4",
"events": "3.3.0",
"benchmark": "2.1.4",
"jest": "27.5.1",
"microtime": "^3.0.0",
"mitt": "^3.0.0",
"nano-pubsub": "^2.0.1",
"nanoid": "^3.3.3",
"parcel": "2.4.1",
"rxjs": "7.5.5",
"ts-jest": "27.1.4",
"ts-node-dev": "1.1.8",
"ts-node": "10.7.0",
"typescript": "4.6.3"

@@ -60,0 +56,0 @@ },

# Cynic
Tiny and simple TS pub/sub library with great focus on performance.
Tiny and simple TS pub/sub library with great focus on performance.
_(run `yarn benchmark` too see how much faster Cynic is)_

@@ -26,3 +27,3 @@ ## Concept

```typescript
for (const $event of player) {
for (const event$ of player) {
clear(event$);

@@ -41,19 +42,10 @@ }

```typescript
// Non-mapped event
const $playerPosition = event<{ x: number, y: number, z: number }>();
// Event w/ input
const playerPosition$ = event<{ x: number, y: number, z: number }>();
// Mapped event
const $trigger = event<boolean, "active" | "inactive">((v) => v ? "active": "inactive");
// Event w/o input
const clicked$ = event<undefined>();
// Validated event
const $onlyPositive event<number>((v) => v >= 0 ? v: undefined);
// Event with no input
const $clicked = trigger();
// Readonly event
const $readonlyTrigger = readonly($trigger);
// Event from EventTarget or EventEmitter
const $onWindowResize = from(window, "resize");
// Event that triggers only once
const once$ = once<number>();
```

@@ -64,3 +56,3 @@

```typescript
const playerPositionUnsubscribe = subscribe($playerPosition, (pos) => {
const playerPositionUnsubscribe = subscribe(playerPosition$, (pos) => {
notifyEnemies(pos);

@@ -75,8 +67,5 @@ updateChunks(pos);

// event
publish($playerPosition, {
publish(playerPosition$, {
x: 10, y: 0, z: 4
});
// trigger
publish($clicked);
```

@@ -87,3 +76,3 @@

```typescript
const subCount = size($playerPosition);
const subCount = size(playerPosition$);
```

@@ -94,3 +83,3 @@

```typescript
const hasLog = has($playerPosition, console.log);
const hasLog = has(playerPosition$, console.log);
```

@@ -101,3 +90,3 @@

```typescript
clear($playerPosition);
clear(playerPosition$);
```

@@ -104,0 +93,0 @@

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc