@vxrn/emitter 1.14.4 → 1.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/index.cjs +32 -20
- package/dist/cjs/index.native.js +54 -27
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/esm/index.js +20 -10
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/index.mjs +20 -10
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/index.native.js +42 -17
- package/dist/esm/index.native.js.map +1 -1
- package/package.json +2 -2
package/dist/cjs/index.cjs
CHANGED
|
@@ -3,20 +3,22 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
3
3
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
4
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
5
|
var __export = (target, all) => {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
6
|
+
for (var name in all) __defProp(target, name, {
|
|
7
|
+
get: all[name],
|
|
8
|
+
enumerable: true
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
13
14
|
get: () => from[key],
|
|
14
15
|
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
15
16
|
});
|
|
16
|
-
|
|
17
|
-
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
18
20
|
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
19
|
-
value:
|
|
21
|
+
value: true
|
|
20
22
|
}), mod);
|
|
21
23
|
var index_exports = {};
|
|
22
24
|
__export(index_exports, {
|
|
@@ -30,26 +32,36 @@ class Emitter {
|
|
|
30
32
|
this.value = value;
|
|
31
33
|
}
|
|
32
34
|
disposables = /* @__PURE__ */new Set();
|
|
33
|
-
listen = disposable =>
|
|
34
|
-
this.disposables.
|
|
35
|
-
|
|
35
|
+
listen = disposable => {
|
|
36
|
+
this.disposables.add(disposable);
|
|
37
|
+
return () => {
|
|
38
|
+
this.disposables.delete(disposable);
|
|
39
|
+
};
|
|
40
|
+
};
|
|
36
41
|
emit = next => {
|
|
37
|
-
this.value = next
|
|
42
|
+
this.value = next;
|
|
43
|
+
this.disposables.forEach(cb => {
|
|
38
44
|
cb(next);
|
|
39
45
|
});
|
|
40
46
|
};
|
|
41
47
|
use = (cb, args) => {
|
|
42
|
-
(0, import_react.useLayoutEffect)(() =>
|
|
48
|
+
(0, import_react.useLayoutEffect)(() => {
|
|
49
|
+
return this.listen(cb);
|
|
50
|
+
}, args ?? []);
|
|
43
51
|
};
|
|
44
52
|
useValue = () => {
|
|
45
53
|
const [state, setState] = (0, import_react.useState)(this.value);
|
|
46
|
-
|
|
54
|
+
this.use(setState);
|
|
55
|
+
return state;
|
|
47
56
|
};
|
|
48
|
-
nextValue = () =>
|
|
49
|
-
|
|
50
|
-
dispose
|
|
57
|
+
nextValue = () => {
|
|
58
|
+
return new Promise(res => {
|
|
59
|
+
const dispose = this.listen(val => {
|
|
60
|
+
dispose();
|
|
61
|
+
res(val);
|
|
62
|
+
});
|
|
51
63
|
});
|
|
52
|
-
}
|
|
64
|
+
};
|
|
53
65
|
}
|
|
54
66
|
function createEmitter(defaultValue) {
|
|
55
67
|
return new Emitter(defaultValue);
|
package/dist/cjs/index.native.js
CHANGED
|
@@ -5,20 +5,22 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
5
5
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
6
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
7
|
var __export = (target, all) => {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
8
|
+
for (var name in all) __defProp(target, name, {
|
|
9
|
+
get: all[name],
|
|
10
|
+
enumerable: true
|
|
11
|
+
});
|
|
12
|
+
};
|
|
13
|
+
var __copyProps = (to, from, except, desc) => {
|
|
14
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
15
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
15
16
|
get: () => from[key],
|
|
16
17
|
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
17
18
|
});
|
|
18
|
-
|
|
19
|
-
|
|
19
|
+
}
|
|
20
|
+
return to;
|
|
21
|
+
};
|
|
20
22
|
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
21
|
-
value:
|
|
23
|
+
value: true
|
|
22
24
|
}), mod);
|
|
23
25
|
var index_exports = {};
|
|
24
26
|
__export(index_exports, {
|
|
@@ -28,39 +30,64 @@ __export(index_exports, {
|
|
|
28
30
|
module.exports = __toCommonJS(index_exports);
|
|
29
31
|
var import_react = require("react");
|
|
30
32
|
function _class_call_check(instance, Constructor) {
|
|
31
|
-
if (!(instance instanceof Constructor))
|
|
33
|
+
if (!(instance instanceof Constructor)) {
|
|
34
|
+
throw new TypeError("Cannot call a class as a function");
|
|
35
|
+
}
|
|
32
36
|
}
|
|
33
37
|
function _define_property(obj, key, value) {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
38
|
+
if (key in obj) {
|
|
39
|
+
Object.defineProperty(obj, key, {
|
|
40
|
+
value,
|
|
41
|
+
enumerable: true,
|
|
42
|
+
configurable: true,
|
|
43
|
+
writable: true
|
|
44
|
+
});
|
|
45
|
+
} else {
|
|
46
|
+
obj[key] = value;
|
|
47
|
+
}
|
|
48
|
+
return obj;
|
|
40
49
|
}
|
|
41
50
|
var Emitter = function Emitter2(value) {
|
|
42
51
|
"use strict";
|
|
43
52
|
|
|
44
53
|
var _this = this;
|
|
45
|
-
_class_call_check(this, Emitter2)
|
|
46
|
-
|
|
54
|
+
_class_call_check(this, Emitter2);
|
|
55
|
+
_define_property(this, "value", void 0);
|
|
56
|
+
_define_property(this, "disposables", void 0);
|
|
57
|
+
_define_property(this, "listen", void 0);
|
|
58
|
+
_define_property(this, "emit", void 0);
|
|
59
|
+
_define_property(this, "use", void 0);
|
|
60
|
+
_define_property(this, "useValue", void 0);
|
|
61
|
+
_define_property(this, "nextValue", void 0);
|
|
62
|
+
this.value = value;
|
|
63
|
+
this.disposables = /* @__PURE__ */new Set();
|
|
64
|
+
this.listen = function (disposable) {
|
|
65
|
+
_this.disposables.add(disposable);
|
|
66
|
+
return function () {
|
|
47
67
|
_this.disposables.delete(disposable);
|
|
48
68
|
};
|
|
49
|
-
}
|
|
50
|
-
|
|
69
|
+
};
|
|
70
|
+
this.emit = function (next) {
|
|
71
|
+
_this.value = next;
|
|
72
|
+
_this.disposables.forEach(function (cb) {
|
|
51
73
|
cb(next);
|
|
52
74
|
});
|
|
53
|
-
}
|
|
75
|
+
};
|
|
76
|
+
this.use = function (cb, args) {
|
|
54
77
|
(0, import_react.useLayoutEffect)(function () {
|
|
55
78
|
return _this.listen(cb);
|
|
56
|
-
}, args
|
|
57
|
-
}
|
|
79
|
+
}, args !== null && args !== void 0 ? args : []);
|
|
80
|
+
};
|
|
81
|
+
this.useValue = function () {
|
|
58
82
|
var [state, setState] = (0, import_react.useState)(_this.value);
|
|
59
|
-
|
|
60
|
-
|
|
83
|
+
_this.use(setState);
|
|
84
|
+
return state;
|
|
85
|
+
};
|
|
86
|
+
this.nextValue = function () {
|
|
61
87
|
return new Promise(function (res) {
|
|
62
88
|
var dispose = _this.listen(function (val) {
|
|
63
|
-
dispose()
|
|
89
|
+
dispose();
|
|
90
|
+
res(val);
|
|
64
91
|
});
|
|
65
92
|
});
|
|
66
93
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","index_exports","Emitter","createEmitter","module","exports","import_react","require","_class_call_check","instance","Constructor","TypeError","_define_property","obj","configurable","writable","Emitter2","_this","disposables","Set","listen","disposable","add","delete","emit","next","forEach","cb","use","args","useLayoutEffect","useValue","state","setState","useState","nextValue","Promise","res","dispose","val","defaultValue"],"sources":["index.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable:
|
|
1
|
+
{"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","index_exports","Emitter","createEmitter","module","exports","import_react","require","_class_call_check","instance","Constructor","TypeError","_define_property","obj","configurable","writable","Emitter2","_this","disposables","Set","listen","disposable","add","delete","emit","next","forEach","cb","use","args","useLayoutEffect","useValue","state","setState","useState","nextValue","Promise","res","dispose","val","defaultValue"],"sources":["index.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar index_exports = {};\n__export(index_exports, {\n Emitter: () => Emitter,\n createEmitter: () => createEmitter\n});\nmodule.exports = __toCommonJS(index_exports);\nvar import_react = require(\"react\");\nfunction _class_call_check(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\nfunction _define_property(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nvar Emitter = function Emitter2(value) {\n \"use strict\";\n var _this = this;\n _class_call_check(this, Emitter2);\n _define_property(this, \"value\", void 0);\n _define_property(this, \"disposables\", void 0);\n _define_property(this, \"listen\", void 0);\n _define_property(this, \"emit\", void 0);\n _define_property(this, \"use\", void 0);\n _define_property(this, \"useValue\", void 0);\n _define_property(this, \"nextValue\", void 0);\n this.value = value;\n this.disposables = /* @__PURE__ */ new Set();\n this.listen = function(disposable) {\n _this.disposables.add(disposable);\n return function() {\n _this.disposables.delete(disposable);\n };\n };\n this.emit = function(next) {\n _this.value = next;\n _this.disposables.forEach(function(cb) {\n cb(next);\n });\n };\n this.use = function(cb, args) {\n (0, import_react.useLayoutEffect)(function() {\n return _this.listen(cb);\n }, args !== null && args !== void 0 ? args : []);\n };\n this.useValue = function() {\n var [state, setState] = (0, import_react.useState)(_this.value);\n _this.use(setState);\n return state;\n };\n this.nextValue = function() {\n return new Promise(function(res) {\n var dispose = _this.listen(function(val) {\n dispose();\n res(val);\n });\n });\n };\n};\nfunction createEmitter(defaultValue) {\n return new Emitter(defaultValue);\n}\n//# sourceMappingURL=index.js.map\n"],"mappings":"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","ignoreList":[]}
|
package/dist/esm/index.js
CHANGED
|
@@ -4,26 +4,36 @@ class Emitter {
|
|
|
4
4
|
this.value = value;
|
|
5
5
|
}
|
|
6
6
|
disposables = /* @__PURE__ */new Set();
|
|
7
|
-
listen = disposable =>
|
|
8
|
-
this.disposables.
|
|
9
|
-
|
|
7
|
+
listen = disposable => {
|
|
8
|
+
this.disposables.add(disposable);
|
|
9
|
+
return () => {
|
|
10
|
+
this.disposables.delete(disposable);
|
|
11
|
+
};
|
|
12
|
+
};
|
|
10
13
|
emit = next => {
|
|
11
|
-
this.value = next
|
|
14
|
+
this.value = next;
|
|
15
|
+
this.disposables.forEach(cb => {
|
|
12
16
|
cb(next);
|
|
13
17
|
});
|
|
14
18
|
};
|
|
15
19
|
use = (cb, args) => {
|
|
16
|
-
useLayoutEffect(() =>
|
|
20
|
+
useLayoutEffect(() => {
|
|
21
|
+
return this.listen(cb);
|
|
22
|
+
}, args ?? []);
|
|
17
23
|
};
|
|
18
24
|
useValue = () => {
|
|
19
25
|
const [state, setState] = useState(this.value);
|
|
20
|
-
|
|
26
|
+
this.use(setState);
|
|
27
|
+
return state;
|
|
21
28
|
};
|
|
22
|
-
nextValue = () =>
|
|
23
|
-
|
|
24
|
-
dispose
|
|
29
|
+
nextValue = () => {
|
|
30
|
+
return new Promise(res => {
|
|
31
|
+
const dispose = this.listen(val => {
|
|
32
|
+
dispose();
|
|
33
|
+
res(val);
|
|
34
|
+
});
|
|
25
35
|
});
|
|
26
|
-
}
|
|
36
|
+
};
|
|
27
37
|
}
|
|
28
38
|
function createEmitter(defaultValue) {
|
|
29
39
|
return new Emitter(defaultValue);
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useLayoutEffect","useState","Emitter","constructor","value","disposables","Set","listen","disposable","add","delete","emit","next","forEach","cb","use","args","useValue","state","setState","nextValue","Promise","res","dispose","val","createEmitter","defaultValue"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,eAAA,EAAiBC,QAAA,QAAgB;AAEnC,MAAMC,OAAA,CAAiB;EAG5BC,YAAmBC,KAAA,EAAW;IAAX,KAAAA,KAAA,GAAAA,KAAA;EAAY;EAFvBC,WAAA,GAAc,mBAAIC,GAAA,CAAuB;EAIjDC,MAAA,GAAUC,UAAA,
|
|
1
|
+
{"version":3,"names":["useLayoutEffect","useState","Emitter","constructor","value","disposables","Set","listen","disposable","add","delete","emit","next","forEach","cb","use","args","useValue","state","setState","nextValue","Promise","res","dispose","val","createEmitter","defaultValue"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,eAAA,EAAiBC,QAAA,QAAgB;AAEnC,MAAMC,OAAA,CAAiB;EAG5BC,YAAmBC,KAAA,EAAW;IAAX,KAAAA,KAAA,GAAAA,KAAA;EAAY;EAFvBC,WAAA,GAAc,mBAAIC,GAAA,CAAuB;EAIjDC,MAAA,GAAUC,UAAA,IAAgC;IACxC,KAAKH,WAAA,CAAYI,GAAA,CAAID,UAAU;IAC/B,OAAO,MAAM;MACX,KAAKH,WAAA,CAAYK,MAAA,CAAOF,UAAU;IACpC;EACF;EAEAG,IAAA,GAAQC,IAAA,IAAY;IAClB,KAAKR,KAAA,GAAQQ,IAAA;IACb,KAAKP,WAAA,CAAYQ,OAAA,CAASC,EAAA,IAAO;MAC/BA,EAAA,CAAGF,IAAI;IACT,CAAC;EACH;EAEAG,GAAA,GAAMA,CAACD,EAAA,EAAqBE,IAAA,KAAiB;IAC3ChB,eAAA,CAAgB,MAAM;MACpB,OAAO,KAAKO,MAAA,CAAOO,EAAE;IACvB,GAAGE,IAAA,IAAQ,EAAE;EACf;EAEAC,QAAA,GAAWA,CAAA,KAAM;IACf,MAAM,CAACC,KAAA,EAAOC,QAAQ,IAAIlB,QAAA,CAAwB,KAAKG,KAAK;IAC5D,KAAKW,GAAA,CAAII,QAAQ;IACjB,OAAOD,KAAA;EACT;EAEAE,SAAA,GAAYA,CAAA,KAAkB;IAC5B,OAAO,IAAIC,OAAA,CAAYC,GAAA,IAAQ;MAC7B,MAAMC,OAAA,GAAU,KAAKhB,MAAA,CAAQiB,GAAA,IAAQ;QACnCD,OAAA,CAAQ;QACRD,GAAA,CAAIE,GAAG;MACT,CAAC;IACH,CAAC;EACH;AACF;AAEO,SAASC,cAAiBC,YAAA,EAAkB;EACjD,OAAO,IAAIxB,OAAA,CAAWwB,YAAY;AACpC","ignoreList":[]}
|
package/dist/esm/index.mjs
CHANGED
|
@@ -4,26 +4,36 @@ class Emitter {
|
|
|
4
4
|
this.value = value;
|
|
5
5
|
}
|
|
6
6
|
disposables = /* @__PURE__ */new Set();
|
|
7
|
-
listen = disposable =>
|
|
8
|
-
this.disposables.
|
|
9
|
-
|
|
7
|
+
listen = disposable => {
|
|
8
|
+
this.disposables.add(disposable);
|
|
9
|
+
return () => {
|
|
10
|
+
this.disposables.delete(disposable);
|
|
11
|
+
};
|
|
12
|
+
};
|
|
10
13
|
emit = next => {
|
|
11
|
-
this.value = next
|
|
14
|
+
this.value = next;
|
|
15
|
+
this.disposables.forEach(cb => {
|
|
12
16
|
cb(next);
|
|
13
17
|
});
|
|
14
18
|
};
|
|
15
19
|
use = (cb, args) => {
|
|
16
|
-
useLayoutEffect(() =>
|
|
20
|
+
useLayoutEffect(() => {
|
|
21
|
+
return this.listen(cb);
|
|
22
|
+
}, args ?? []);
|
|
17
23
|
};
|
|
18
24
|
useValue = () => {
|
|
19
25
|
const [state, setState] = useState(this.value);
|
|
20
|
-
|
|
26
|
+
this.use(setState);
|
|
27
|
+
return state;
|
|
21
28
|
};
|
|
22
|
-
nextValue = () =>
|
|
23
|
-
|
|
24
|
-
dispose
|
|
29
|
+
nextValue = () => {
|
|
30
|
+
return new Promise(res => {
|
|
31
|
+
const dispose = this.listen(val => {
|
|
32
|
+
dispose();
|
|
33
|
+
res(val);
|
|
34
|
+
});
|
|
25
35
|
});
|
|
26
|
-
}
|
|
36
|
+
};
|
|
27
37
|
}
|
|
28
38
|
function createEmitter(defaultValue) {
|
|
29
39
|
return new Emitter(defaultValue);
|
package/dist/esm/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useLayoutEffect","useState","Emitter","constructor","value","disposables","Set","listen","disposable","add","delete","emit","next","forEach","cb","use","args","useValue","state","setState","nextValue","Promise","res","dispose","val","createEmitter","defaultValue"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,eAAA,EAAiBC,QAAA,QAAgB;AAEnC,MAAMC,OAAA,CAAiB;EAG5BC,YAAmBC,KAAA,EAAW;IAAX,KAAAA,KAAA,GAAAA,KAAA;EAAY;EAFvBC,WAAA,GAAc,mBAAIC,GAAA,CAAuB;EAIjDC,MAAA,GAAUC,UAAA,
|
|
1
|
+
{"version":3,"names":["useLayoutEffect","useState","Emitter","constructor","value","disposables","Set","listen","disposable","add","delete","emit","next","forEach","cb","use","args","useValue","state","setState","nextValue","Promise","res","dispose","val","createEmitter","defaultValue"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,eAAA,EAAiBC,QAAA,QAAgB;AAEnC,MAAMC,OAAA,CAAiB;EAG5BC,YAAmBC,KAAA,EAAW;IAAX,KAAAA,KAAA,GAAAA,KAAA;EAAY;EAFvBC,WAAA,GAAc,mBAAIC,GAAA,CAAuB;EAIjDC,MAAA,GAAUC,UAAA,IAAgC;IACxC,KAAKH,WAAA,CAAYI,GAAA,CAAID,UAAU;IAC/B,OAAO,MAAM;MACX,KAAKH,WAAA,CAAYK,MAAA,CAAOF,UAAU;IACpC;EACF;EAEAG,IAAA,GAAQC,IAAA,IAAY;IAClB,KAAKR,KAAA,GAAQQ,IAAA;IACb,KAAKP,WAAA,CAAYQ,OAAA,CAASC,EAAA,IAAO;MAC/BA,EAAA,CAAGF,IAAI;IACT,CAAC;EACH;EAEAG,GAAA,GAAMA,CAACD,EAAA,EAAqBE,IAAA,KAAiB;IAC3ChB,eAAA,CAAgB,MAAM;MACpB,OAAO,KAAKO,MAAA,CAAOO,EAAE;IACvB,GAAGE,IAAA,IAAQ,EAAE;EACf;EAEAC,QAAA,GAAWA,CAAA,KAAM;IACf,MAAM,CAACC,KAAA,EAAOC,QAAQ,IAAIlB,QAAA,CAAwB,KAAKG,KAAK;IAC5D,KAAKW,GAAA,CAAII,QAAQ;IACjB,OAAOD,KAAA;EACT;EAEAE,SAAA,GAAYA,CAAA,KAAkB;IAC5B,OAAO,IAAIC,OAAA,CAAYC,GAAA,IAAQ;MAC7B,MAAMC,OAAA,GAAU,KAAKhB,MAAA,CAAQiB,GAAA,IAAQ;QACnCD,OAAA,CAAQ;QACRD,GAAA,CAAIE,GAAG;MACT,CAAC;IACH,CAAC;EACH;AACF;AAEO,SAASC,cAAiBC,YAAA,EAAkB;EACjD,OAAO,IAAIxB,OAAA,CAAWwB,YAAY;AACpC","ignoreList":[]}
|
package/dist/esm/index.native.js
CHANGED
|
@@ -1,38 +1,63 @@
|
|
|
1
1
|
import { useLayoutEffect, useState } from "react";
|
|
2
2
|
function _class_call_check(instance, Constructor) {
|
|
3
|
-
if (!(instance instanceof Constructor))
|
|
3
|
+
if (!(instance instanceof Constructor)) {
|
|
4
|
+
throw new TypeError("Cannot call a class as a function");
|
|
5
|
+
}
|
|
4
6
|
}
|
|
5
7
|
function _define_property(obj, key, value) {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
8
|
+
if (key in obj) {
|
|
9
|
+
Object.defineProperty(obj, key, {
|
|
10
|
+
value,
|
|
11
|
+
enumerable: true,
|
|
12
|
+
configurable: true,
|
|
13
|
+
writable: true
|
|
14
|
+
});
|
|
15
|
+
} else {
|
|
16
|
+
obj[key] = value;
|
|
17
|
+
}
|
|
18
|
+
return obj;
|
|
12
19
|
}
|
|
13
20
|
var Emitter = function Emitter2(value) {
|
|
14
21
|
"use strict";
|
|
15
22
|
|
|
16
23
|
var _this = this;
|
|
17
|
-
_class_call_check(this, Emitter2)
|
|
18
|
-
|
|
24
|
+
_class_call_check(this, Emitter2);
|
|
25
|
+
_define_property(this, "value", void 0);
|
|
26
|
+
_define_property(this, "disposables", void 0);
|
|
27
|
+
_define_property(this, "listen", void 0);
|
|
28
|
+
_define_property(this, "emit", void 0);
|
|
29
|
+
_define_property(this, "use", void 0);
|
|
30
|
+
_define_property(this, "useValue", void 0);
|
|
31
|
+
_define_property(this, "nextValue", void 0);
|
|
32
|
+
this.value = value;
|
|
33
|
+
this.disposables = /* @__PURE__ */new Set();
|
|
34
|
+
this.listen = function (disposable) {
|
|
35
|
+
_this.disposables.add(disposable);
|
|
36
|
+
return function () {
|
|
19
37
|
_this.disposables.delete(disposable);
|
|
20
38
|
};
|
|
21
|
-
}
|
|
22
|
-
|
|
39
|
+
};
|
|
40
|
+
this.emit = function (next) {
|
|
41
|
+
_this.value = next;
|
|
42
|
+
_this.disposables.forEach(function (cb) {
|
|
23
43
|
cb(next);
|
|
24
44
|
});
|
|
25
|
-
}
|
|
45
|
+
};
|
|
46
|
+
this.use = function (cb, args) {
|
|
26
47
|
useLayoutEffect(function () {
|
|
27
48
|
return _this.listen(cb);
|
|
28
|
-
}, args
|
|
29
|
-
}
|
|
49
|
+
}, args !== null && args !== void 0 ? args : []);
|
|
50
|
+
};
|
|
51
|
+
this.useValue = function () {
|
|
30
52
|
var [state, setState] = useState(_this.value);
|
|
31
|
-
|
|
32
|
-
|
|
53
|
+
_this.use(setState);
|
|
54
|
+
return state;
|
|
55
|
+
};
|
|
56
|
+
this.nextValue = function () {
|
|
33
57
|
return new Promise(function (res) {
|
|
34
58
|
var dispose = _this.listen(function (val) {
|
|
35
|
-
dispose()
|
|
59
|
+
dispose();
|
|
60
|
+
res(val);
|
|
36
61
|
});
|
|
37
62
|
});
|
|
38
63
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useLayoutEffect","useState","_class_call_check","instance","Constructor","TypeError","_define_property","obj","key","value","Object","defineProperty","enumerable","configurable","writable","Emitter","Emitter2","_this","disposables","Set","listen","disposable","add","delete","emit","next"
|
|
1
|
+
{"version":3,"names":["useLayoutEffect","useState","_class_call_check","instance","Constructor","TypeError","_define_property","obj","key","value","Object","defineProperty","enumerable","configurable","writable","Emitter","Emitter2","_this","disposables","Set","listen","disposable","add","delete","emit","next"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,eAAA,EAAiBC,QAAA,QAAgB;AAEnC,SAAMC,iBAAiBA,CAAAC,QAAA,EAAAC,WAAA;EAG5B,MAAAD,QAAmB,YAAWC,WAAA;IAAX,UAAAC,SAAA;EAAY;AAAA;AAFkB,SAIjDC,gBAAUA,CAAAC,GAAgC,EAAAC,GAAA,EAAAC,KAAA;EACxC,IAAAD,GAAK,IAAAD,GAAA;IACLG,MAAA,CAAOC,cAAM,CAAAJ,GAAA,EAAAC,GAAA;MACXC,KAAK;MACPG,UAAA;MACFC,YAAA;MAEAC,QAAQ;IACN;EACA,OAAK;IACHP,GAAA,CAAAC,GAAG,IAAIC,KAAA;EAAA;EAEX,OAAAF,GAAA;AAAA;AAGE,IAAAQ,OAAA,YAAgBC,QAAMA,CAAAP,KAAA;EACpB,YAAO;;EAAc,IACvBQ,KAAG,OAAU;EACff,iBAAA,OAAAc,QAAA;EAEAV,gBAAW,CAAM;EACfA,gBAAc,oBAAY,EAAwB,KAAK;EACvDA,gBAAS,KAAQ;EACjBA,gBAAO;EACTA,gBAAA;EAEAA,gBAAY,KAAkB;EAC5BA,gBAAW,KAAW,EAAC,WAAQ;EAC7B,KAAAG,KAAM,GAAAA,KAAA;EACJ,KAAAS,WAAQ,sBAAAC,GAAA;EACR,KAAAC,MAAI,GAAG,UAAAC,UAAA;IAAAJ,KACR,CAAAC,WAAA,CAAAI,GAAA,CAAAD,UAAA;IACH,OAAC;MACHJ,KAAA,CAAAC,WAAA,CAAAK,MAAA,CAAAF,UAAA;IACF;EAEO;EACL,KAAAG,IAAO,GAAI,UAAWC,IAAA;IACxBR,KAAA,CAAAR,KAAA,GAAAgB,IAAA","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vxrn/emitter",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.15.0",
|
|
4
4
|
"sideEffects": false,
|
|
5
5
|
"source": "src/index.ts",
|
|
6
6
|
"types": "./src/index.ts",
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"react": "^19.2.0"
|
|
30
30
|
},
|
|
31
31
|
"devDependencies": {
|
|
32
|
-
"@tamagui/build": "2.0.0-rc.
|
|
32
|
+
"@tamagui/build": "2.0.0-rc.36-1775258360494",
|
|
33
33
|
"react": "19.2.0"
|
|
34
34
|
},
|
|
35
35
|
"publishConfig": {
|