@dashkite/joy 0.3.16 → 0.4.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.
@@ -1,48 +1,130 @@
1
1
  "use strict";
2
-
3
2
  Object.defineProperty(exports, "__esModule", {
4
- value: true
3
+ value: true
5
4
  });
6
- exports.timer = exports.sleep = exports.milliseconds = exports.benchmark = void 0;
7
-
8
- var _function = require("./function.js");
9
-
10
- var benchmark, milliseconds, sleep, timer;
11
- exports.timer = timer;
12
- exports.sleep = sleep;
13
- exports.milliseconds = milliseconds;
14
- exports.benchmark = benchmark;
15
- exports.timer = timer = (0, _function.curry)(function (interval, action) {
16
- var id;
17
- id = setTimeout(action, interval);
18
- return function () {
19
- return clearTimeout(id);
20
- };
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ benchmark: function() {
13
+ return benchmark;
14
+ },
15
+ debounce: function() {
16
+ return debounce;
17
+ },
18
+ default: function() {
19
+ return _default //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiL0BkYXNoa2l0ZS9qb3kvc3JjL3RpbWUuY29mZmVlIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLElBQUEsU0FBQSxFQUFBLFFBQUEsRUFBQSxNQUFBLEVBQUEsS0FBQSxFQUFBLFlBQUEsRUFBQSxLQUFBLEVBQUE7O0FBQUEsT0FBQTtFQUFRLEtBQVI7Q0FBQSxNQUFBOztBQUVBLEtBQUEsR0FBUSxLQUFBLENBQU0sUUFBQSxDQUFDLFFBQUQsRUFBVyxNQUFYLENBQUE7QUFDZCxNQUFBO0VBQUUsRUFBQSxHQUFLLFVBQUEsQ0FBVyxNQUFYLEVBQW1CLFFBQW5CO1NBQ0wsUUFBQSxDQUFBLENBQUE7V0FBRyxZQUFBLENBQWMsRUFBZDtFQUFIO0FBRlksQ0FBTjs7QUFJUixLQUFBLEdBQVEsUUFBQSxDQUFDLFFBQUQsQ0FBQTtTQUNOLElBQUksT0FBSixDQUFZLFFBQUEsQ0FBQyxPQUFELENBQUE7V0FBYSxVQUFBLENBQVcsT0FBWCxFQUFvQixRQUFwQjtFQUFiLENBQVo7QUFETTs7QUFHUixZQUFBLEdBQ0ssMERBQUgsR0FDRSxRQUFBLENBQUEsQ0FBQTtTQUFHLFdBQVcsQ0FBQyxHQUFaLENBQUE7QUFBSCxDQURGLEdBR0UsUUFBQSxDQUFBLENBQUE7U0FBRyxJQUFJLENBQUMsR0FBTCxDQUFBO0FBQUg7O0FBRUosU0FBQSxHQUFZLFFBQUEsQ0FBQyxDQUFELENBQUE7QUFDWixNQUFBLENBQUEsRUFBQSxHQUFBLEVBQUE7RUFBRSxLQUFBLEdBQVEsWUFBQSxDQUFBO0VBQ1IsSUFBRyx1REFBSDtXQUNFLENBQUMsQ0FBQyxJQUFGLENBQU8sUUFBQSxDQUFBLENBQUE7YUFBRyxZQUFBLENBQUEsQ0FBQSxHQUFpQjtJQUFwQixDQUFQLEVBREY7R0FBQSxNQUFBO1dBR0UsWUFBQSxDQUFBLENBQUEsR0FBaUIsTUFIbkI7O0FBRlU7O0FBT1osUUFBQSxHQUFjLENBQUEsUUFBQSxDQUFFLElBQUYsQ0FBQTtTQUNaLFFBQUEsQ0FBRSxRQUFGLEVBQVksQ0FBWixDQUFBO1dBQW1CLFFBQUEsQ0FBQSxDQUFBO0FBQ3JCLFVBQUE7TUFBSSxHQUFBLEdBQU0sSUFBSSxDQUFDLEdBQUwsQ0FBQTtNQUNOLElBQUcsQ0FBRSxHQUFBLEdBQU0sSUFBUixDQUFBLEdBQWlCLFFBQXBCO1FBQ0UsSUFBQSxHQUFPO2VBQ0osSUFGTDs7SUFGaUI7RUFBbkI7QUFEWSxDQUFBLEVBQVM7O0FBT3ZCLEtBQUEsR0FBUSxRQUFBLENBQUEsQ0FBQTtTQUNOLElBQUksT0FBSixDQUFZLFFBQUEsQ0FBRSxPQUFGLENBQUE7V0FDVixjQUFBLENBQWUsT0FBZjtFQURVLENBQVo7QUFETSxFQTdCUjs7OztBQW1DQSxNQUFBLEdBQVMsUUFBQSxDQUFBLENBQUE7QUFDVCxNQUFBO0VBQUUsSUFBQSxHQUFPO1NBQ0osQ0FBQSxRQUFBLENBQUMsQ0FBRSxPQUFGLEVBQVcsU0FBWCxFQUFzQixLQUF0QixFQUE2QixNQUE3QixFQUFxQyxJQUFyQyxDQUFELENBQUE7SUFFRCxDQUFFLE9BQUYsRUFBVyxTQUFYLENBQUE7QUFBeUIsY0FBTyxJQUFJLENBQUMsTUFBWjtBQUFBLGFBQ2xCLENBRGtCO2lCQUNYO1lBQUM7Y0FBRSxPQUFBLEVBQVM7WUFBWCxDQUFEO1lBQW9CLEdBQUEsSUFBcEI7O0FBRFcsYUFFbEIsQ0FGa0I7aUJBRVg7QUFGVztVQUdsQixNQUFNLElBQUksS0FBSixDQUFVLDJCQUFWO0FBSFk7O0lBS3pCLEtBQUEsR0FBUSxJQUFJLENBQUMsR0FBTCxDQUFBO0lBRVIsSUFBQSxHQUFPLFFBQUEsQ0FBQSxDQUFBO2FBQ0wsQ0FBRSxNQUFBLEdBQVMsU0FBQSxDQUFBLENBQVgsQ0FBQSxJQUNFLENBQUMsQ0FBRSxJQUFJLENBQUMsR0FBTCxDQUFBLENBQUEsR0FBYSxLQUFmLENBQUEsR0FBeUIsT0FBTyxDQUFDLE9BQWxDO0lBRkc7SUFJUCxNQUFBLEdBQVM7V0FFVCxJQUFJLE9BQUosQ0FBWSxNQUFBLFFBQUEsQ0FBRSxPQUFGLENBQUE7QUFDVixhQUF1QixDQUFDLElBQUEsQ0FBQSxDQUF4QjtRQUFFLENBQUEsTUFBTSxLQUFBLENBQU0sQ0FBTixDQUFOO01BQUY7YUFDQSxPQUFBLENBQVEsTUFBUjtJQUZVLENBQVo7RUFmQyxDQUFBLEVBQStDLENBQUE7QUFGM0M7O0FBcUJULE9BQUE7RUFDRSxLQURGO0VBRUUsS0FGRjtFQUdFLFlBSEY7RUFJRSxTQUpGO0VBS0UsUUFMRjtFQU1FLEtBTkY7RUFPRSxNQVBGOzs7QUFVQSxPQUFBLFFBQWUsQ0FDYixLQURhLEVBRWIsS0FGYSxFQUdiLFlBSGEsRUFJYixTQUphLEVBS2IsUUFMYSxFQU1iLEtBTmEsRUFPYixNQVBhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtjdXJyeX0gZnJvbSBcIi4vZnVuY3Rpb25cIlxuXG50aW1lciA9IGN1cnJ5IChpbnRlcnZhbCwgYWN0aW9uKSAtPlxuICBpZCA9IHNldFRpbWVvdXQoYWN0aW9uLCBpbnRlcnZhbClcbiAgLT4gY2xlYXJUaW1lb3V0KCBpZCApXG5cbnNsZWVwID0gKGludGVydmFsKSAtPlxuICBuZXcgUHJvbWlzZSAocmVzb2x2ZSkgLT4gc2V0VGltZW91dCByZXNvbHZlLCBpbnRlcnZhbFxuXG5taWxsaXNlY29uZHMgPVxuICBpZiBwZXJmb3JtYW5jZT9cbiAgICAtPiBwZXJmb3JtYW5jZS5ub3coKVxuICBlbHNlXG4gICAgLT4gRGF0ZS5ub3coKVxuXG5iZW5jaG1hcmsgPSAoZikgLT5cbiAgc3RhcnQgPSBtaWxsaXNlY29uZHMoKVxuICBpZiAociA9IGYoKSk/LnRoZW4/XG4gICAgci50aGVuIC0+IG1pbGxpc2Vjb25kcygpIC0gc3RhcnRcbiAgZWxzZVxuICAgIG1pbGxpc2Vjb25kcygpIC0gc3RhcnRcblxuZGVib3VuY2UgPSBkbyAoIGxhc3QgPSAwICkgLT5cbiAgKCBpbnRlcnZhbCwgZiApIC0+IC0+XG4gICAgbm93ID0gRGF0ZS5ub3coKVxuICAgIGlmICggbm93IC0gbGFzdCApID4gaW50ZXJ2YWxcbiAgICAgIGxhc3QgPSBub3dcbiAgICAgIGRvIGZcblxuZnJhbWUgPSAtPlxuICBuZXcgUHJvbWlzZSAoIHJlc29sdmUgKSAtPlxuICAgIHF1ZXVlTWljcm90YXNrIHJlc29sdmVcblxuIyB3ZSdyZSBmb3JjZWQgdG8gdXNlIERhdGUubm93IGJlbG93XG4jIGJlY2F1c2UgTm9kZSBkb2Vzbid0IGluY2x1ZGUgaXQgYXMgYSBnbG9iYWxcbmV4cGVjdCA9IC0+XG4gIGFyZ3MgPSBhcmd1bWVudHNcbiAgZG8gKHsgb3B0aW9ucywgcHJlZGljYXRlLCBzdGFydCwgcmVzdWx0LCBkb25lIH0gPSB7fSkgLT5cblxuICAgIFsgb3B0aW9ucywgcHJlZGljYXRlIF0gPSBzd2l0Y2ggYXJncy5sZW5ndGhcbiAgICAgIHdoZW4gMSB0aGVuIFt7IHRpbWVvdXQ6IDEwMDAgfSwgYXJncy4uLiBdXG4gICAgICB3aGVuIDIgdGhlbiBhcmdzXG4gICAgICBlbHNlIHRocm93IG5ldyBFcnJvciBcImV4cGVjdDogaW52YWxpZCBhcmd1bWVudHNcIlxuXG4gICAgc3RhcnQgPSBEYXRlLm5vdygpXG5cbiAgICBkb25lID0gLT5cbiAgICAgICggcmVzdWx0ID0gcHJlZGljYXRlKCkpIHx8XG4gICAgICAgICgoIERhdGUubm93KCkgLSBzdGFydCApID4gb3B0aW9ucy50aW1lb3V0IClcblxuICAgIHJlc3VsdCA9IGZhbHNlXG5cbiAgICBuZXcgUHJvbWlzZSAoIHJlc29sdmUgKSAtPlxuICAgICAgKCBhd2FpdCBzbGVlcCAxKSB3aGlsZSAhZG9uZSgpXG4gICAgICByZXNvbHZlIHJlc3VsdFxuXG5leHBvcnQge1xuICBzbGVlcFxuICB0aW1lclxuICBtaWxsaXNlY29uZHNcbiAgYmVuY2htYXJrXG4gIGRlYm91bmNlXG4gIGZyYW1lXG4gIGV4cGVjdFxufVxuXG5leHBvcnQgZGVmYXVsdCB7XG4gIHNsZWVwXG4gIHRpbWVyXG4gIG1pbGxpc2Vjb25kc1xuICBiZW5jaG1hcmtcbiAgZGVib3VuY2VcbiAgZnJhbWVcbiAgZXhwZWN0XG59XG4iXX0=
20
+ //# sourceURL=/@dashkite/joy/src/time.coffee
21
+ ;
22
+ },
23
+ expect: function() {
24
+ return expect;
25
+ },
26
+ frame: function() {
27
+ return frame;
28
+ },
29
+ milliseconds: function() {
30
+ return milliseconds;
31
+ },
32
+ sleep: function() {
33
+ return sleep;
34
+ },
35
+ timer: function() {
36
+ return timer;
37
+ }
21
38
  });
22
-
23
- exports.sleep = sleep = function (interval) {
24
- return new Promise(function (resolve) {
25
- return setTimeout(resolve, interval);
26
- });
39
+ const _function = require("./function");
40
+ var benchmark, debounce, expect, frame, milliseconds, sleep, timer;
41
+ timer = (0, _function.curry)(function(interval, action) {
42
+ var id;
43
+ id = setTimeout(action, interval);
44
+ return function() {
45
+ return clearTimeout(id);
46
+ };
47
+ });
48
+ sleep = function(interval) {
49
+ return new Promise(function(resolve) {
50
+ return setTimeout(resolve, interval);
51
+ });
27
52
  };
28
-
29
- exports.milliseconds = milliseconds = typeof performance !== "undefined" && performance !== null ? function () {
30
- return performance.now();
31
- } : function () {
32
- return Date.now();
53
+ milliseconds = typeof performance !== "undefined" && performance !== null ? function() {
54
+ return performance.now();
55
+ } : function() {
56
+ return Date.now();
33
57
  };
34
-
35
- exports.benchmark = benchmark = function (f) {
36
- var r, ref, start;
37
- start = milliseconds();
38
-
39
- if (((ref = r = f()) != null ? ref.then : void 0) != null) {
40
- return r.then(function () {
41
- return milliseconds() - start;
58
+ benchmark = function(f) {
59
+ var r, ref, start;
60
+ start = milliseconds();
61
+ if (((ref = r = f()) != null ? ref.then : void 0) != null) {
62
+ return r.then(function() {
63
+ return milliseconds() - start;
64
+ });
65
+ } else {
66
+ return milliseconds() - start;
67
+ }
68
+ };
69
+ debounce = function(last) {
70
+ return function(interval, f) {
71
+ return function() {
72
+ var now;
73
+ now = Date.now();
74
+ if (now - last > interval) {
75
+ last = now;
76
+ return f();
77
+ }
78
+ };
79
+ };
80
+ }(0);
81
+ frame = function() {
82
+ return new Promise(function(resolve) {
83
+ return queueMicrotask(resolve);
42
84
  });
43
- } else {
44
- return milliseconds() - start;
45
- }
46
85
  };
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy90aW1lLmNvZmZlZSJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxJQUFBLFNBQUEsRUFBQSxZQUFBLEVBQUEsS0FBQSxFQUFBLEtBQUE7Ozs7O0FBRUEsZ0JBQUEsS0FBQSxHQUFRLHFCQUFNLFVBQUEsUUFBQSxFQUFBLE1BQUEsRUFBQTtBQUNkLE1BQUEsRUFBQTtBQUFFLEVBQUEsRUFBQSxHQUFLLFVBQUEsQ0FBQSxNQUFBLEVBQUEsUUFBQSxDQUFMO1NBQ0EsWUFBQTtXQUFHLFlBQUEsQ0FBQSxFQUFBLEM7QUFBSCxHO0FBRk0sQ0FBQSxDQUFSOztBQUlBLGdCQUFBLEtBQUEsR0FBUSxVQUFBLFFBQUEsRUFBQTtTQUNOLElBQUEsT0FBQSxDQUFZLFVBQUEsT0FBQSxFQUFBO1dBQWEsVUFBQSxDQUFBLE9BQUEsRUFBQSxRQUFBLEM7QUFBekIsR0FBQSxDO0FBRE0sQ0FBUjs7QUFJQSx1QkFBQSxZQUFBLEdBQ0ssT0FBQSxXQUFBLEtBQUEsV0FBQSxJQUFBLFdBQUEsS0FBSCxJQUFHLEdBQ0QsWUFBQTtTQUFHLFdBQVcsQ0FBWCxHQUFBLEU7QUFETCxDQUFHLEdBR0QsWUFBQTtTQUFHLElBQUksQ0FBSixHQUFBLEU7QUFBSCxDQUpKOztBQU1BLG9CQUFBLFNBQUEsR0FBWSxVQUFBLENBQUEsRUFBQTtBQUNaLE1BQUEsQ0FBQSxFQUFBLEdBQUEsRUFBQSxLQUFBO0FBQUUsRUFBQSxLQUFBLEdBQVEsWUFBQSxFQUFSOztBQUNBLE1BQUcsQ0FBQSxDQUFBLEdBQUEsR0FBQSxDQUFBLEdBQUEsQ0FBQSxFQUFBLEtBQUEsSUFBQSxHQUFBLEdBQUEsQ0FBQSxJQUFBLEdBQUEsS0FBQSxDQUFBLEtBQUgsSUFBQSxFQUFBO1dBQ0UsQ0FBQyxDQUFELElBQUEsQ0FBTyxZQUFBO2FBQUcsWUFBQSxLQUFpQixLO0FBRDdCLEtBQ0UsQztBQURGLEdBQUEsTUFBQTtXQUdFLFlBQUEsS0FIRixLOztBQUZVLENBQVoiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2N1cnJ5fSBmcm9tIFwiLi9mdW5jdGlvblwiXG5cbnRpbWVyID0gY3VycnkgKGludGVydmFsLCBhY3Rpb24pIC0+XG4gIGlkID0gc2V0VGltZW91dChhY3Rpb24sIGludGVydmFsKVxuICAtPiBjbGVhclRpbWVvdXQoIGlkIClcblxuc2xlZXAgPSAoaW50ZXJ2YWwpIC0+XG4gIG5ldyBQcm9taXNlIChyZXNvbHZlKSAtPiBzZXRUaW1lb3V0IHJlc29sdmUsIGludGVydmFsXG5cblxubWlsbGlzZWNvbmRzID1cbiAgaWYgcGVyZm9ybWFuY2U/XG4gICAgLT4gcGVyZm9ybWFuY2Uubm93KClcbiAgZWxzZVxuICAgIC0+IERhdGUubm93KClcblxuYmVuY2htYXJrID0gKGYpIC0+XG4gIHN0YXJ0ID0gbWlsbGlzZWNvbmRzKClcbiAgaWYgKHIgPSBmKCkpPy50aGVuP1xuICAgIHIudGhlbiAtPiBtaWxsaXNlY29uZHMoKSAtIHN0YXJ0XG4gIGVsc2VcbiAgICBtaWxsaXNlY29uZHMoKSAtIHN0YXJ0XG5cbmV4cG9ydCB7XG4gIHNsZWVwXG4gIHRpbWVyXG4gIG1pbGxpc2Vjb25kc1xuICBiZW5jaG1hcmtcbn1cbiJdLCJzb3VyY2VSb290IjoiIn0=
48
- //# sourceURL=src/time.coffee
86
+ // we're forced to use Date.now below
87
+ // because Node doesn't include it as a global
88
+ expect = function() {
89
+ var args;
90
+ args = arguments;
91
+ return function({ options, predicate, start, result, done }) {
92
+ [options, predicate] = function() {
93
+ switch(args.length){
94
+ case 1:
95
+ return [
96
+ {
97
+ timeout: 1000
98
+ },
99
+ ...args
100
+ ];
101
+ case 2:
102
+ return args;
103
+ default:
104
+ throw new Error("expect: invalid arguments");
105
+ }
106
+ }();
107
+ start = Date.now();
108
+ done = function() {
109
+ return (result = predicate()) || Date.now() - start > options.timeout;
110
+ };
111
+ result = false;
112
+ return new Promise(async function(resolve) {
113
+ while(!done()){
114
+ await sleep(1);
115
+ }
116
+ return resolve(result);
117
+ });
118
+ }({});
119
+ };
120
+ const _default = {
121
+ sleep,
122
+ timer,
123
+ milliseconds,
124
+ benchmark,
125
+ debounce,
126
+ frame,
127
+ expect
128
+ };
129
+
130
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9AZGFzaGtpdGUvam95L3NyYy90aW1lLmNvZmZlZSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2N1cnJ5fSBmcm9tIFwiLi9mdW5jdGlvblwiXG5cbnRpbWVyID0gY3VycnkgKGludGVydmFsLCBhY3Rpb24pIC0+XG4gIGlkID0gc2V0VGltZW91dChhY3Rpb24sIGludGVydmFsKVxuICAtPiBjbGVhclRpbWVvdXQoIGlkIClcblxuc2xlZXAgPSAoaW50ZXJ2YWwpIC0+XG4gIG5ldyBQcm9taXNlIChyZXNvbHZlKSAtPiBzZXRUaW1lb3V0IHJlc29sdmUsIGludGVydmFsXG5cbm1pbGxpc2Vjb25kcyA9XG4gIGlmIHBlcmZvcm1hbmNlP1xuICAgIC0+IHBlcmZvcm1hbmNlLm5vdygpXG4gIGVsc2VcbiAgICAtPiBEYXRlLm5vdygpXG5cbmJlbmNobWFyayA9IChmKSAtPlxuICBzdGFydCA9IG1pbGxpc2Vjb25kcygpXG4gIGlmIChyID0gZigpKT8udGhlbj9cbiAgICByLnRoZW4gLT4gbWlsbGlzZWNvbmRzKCkgLSBzdGFydFxuICBlbHNlXG4gICAgbWlsbGlzZWNvbmRzKCkgLSBzdGFydFxuXG5kZWJvdW5jZSA9IGRvICggbGFzdCA9IDAgKSAtPlxuICAoIGludGVydmFsLCBmICkgLT4gLT5cbiAgICBub3cgPSBEYXRlLm5vdygpXG4gICAgaWYgKCBub3cgLSBsYXN0ICkgPiBpbnRlcnZhbFxuICAgICAgbGFzdCA9IG5vd1xuICAgICAgZG8gZlxuXG5mcmFtZSA9IC0+XG4gIG5ldyBQcm9taXNlICggcmVzb2x2ZSApIC0+XG4gICAgcXVldWVNaWNyb3Rhc2sgcmVzb2x2ZVxuXG4jIHdlJ3JlIGZvcmNlZCB0byB1c2UgRGF0ZS5ub3cgYmVsb3dcbiMgYmVjYXVzZSBOb2RlIGRvZXNuJ3QgaW5jbHVkZSBpdCBhcyBhIGdsb2JhbFxuZXhwZWN0ID0gLT5cbiAgYXJncyA9IGFyZ3VtZW50c1xuICBkbyAoeyBvcHRpb25zLCBwcmVkaWNhdGUsIHN0YXJ0LCByZXN1bHQsIGRvbmUgfSA9IHt9KSAtPlxuXG4gICAgWyBvcHRpb25zLCBwcmVkaWNhdGUgXSA9IHN3aXRjaCBhcmdzLmxlbmd0aFxuICAgICAgd2hlbiAxIHRoZW4gW3sgdGltZW91dDogMTAwMCB9LCBhcmdzLi4uIF1cbiAgICAgIHdoZW4gMiB0aGVuIGFyZ3NcbiAgICAgIGVsc2UgdGhyb3cgbmV3IEVycm9yIFwiZXhwZWN0OiBpbnZhbGlkIGFyZ3VtZW50c1wiXG5cbiAgICBzdGFydCA9IERhdGUubm93KClcblxuICAgIGRvbmUgPSAtPlxuICAgICAgKCByZXN1bHQgPSBwcmVkaWNhdGUoKSkgfHxcbiAgICAgICAgKCggRGF0ZS5ub3coKSAtIHN0YXJ0ICkgPiBvcHRpb25zLnRpbWVvdXQgKVxuXG4gICAgcmVzdWx0ID0gZmFsc2VcblxuICAgIG5ldyBQcm9taXNlICggcmVzb2x2ZSApIC0+XG4gICAgICAoIGF3YWl0IHNsZWVwIDEpIHdoaWxlICFkb25lKClcbiAgICAgIHJlc29sdmUgcmVzdWx0XG5cbmV4cG9ydCB7XG4gIHNsZWVwXG4gIHRpbWVyXG4gIG1pbGxpc2Vjb25kc1xuICBiZW5jaG1hcmtcbiAgZGVib3VuY2VcbiAgZnJhbWVcbiAgZXhwZWN0XG59XG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgc2xlZXBcbiAgdGltZXJcbiAgbWlsbGlzZWNvbmRzXG4gIGJlbmNobWFya1xuICBkZWJvdW5jZVxuICBmcmFtZVxuICBleHBlY3Rcbn1cbiJdLCJuYW1lcyI6WyJiZW5jaG1hcmsiLCJkZWJvdW5jZSIsImV4cGVjdCIsImZyYW1lIiwibWlsbGlzZWNvbmRzIiwic2xlZXAiLCJ0aW1lciIsImN1cnJ5IiwiaW50ZXJ2YWwiLCJhY3Rpb24iLCJpZCIsInNldFRpbWVvdXQiLCJjbGVhclRpbWVvdXQiLCJQcm9taXNlIiwicmVzb2x2ZSIsInBlcmZvcm1hbmNlIiwibm93IiwiRGF0ZSIsImYiLCJyIiwicmVmIiwic3RhcnQiLCJ0aGVuIiwibGFzdCIsInF1ZXVlTWljcm90YXNrIiwiYXJncyIsImFyZ3VtZW50cyIsIm9wdGlvbnMiLCJwcmVkaWNhdGUiLCJyZXN1bHQiLCJkb25lIiwibGVuZ3RoIiwidGltZW91dCIsIkVycm9yIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztJQTRERUEsU0FKRjtlQUlFQTs7SUFDQUMsUUFMRjtlQUtFQTs7SUFLRixPQUFlO2VBQWY7Ozs7SUFIRUMsTUFQRjtlQU9FQTs7SUFEQUMsS0FORjtlQU1FQTs7SUFIQUMsWUFIRjtlQUdFQTs7SUFGQUMsS0FERjtlQUNFQTs7SUFDQUMsS0FGRjtlQUVFQTs7OzBCQTFERjtBQUFBLElBQUFOLFdBQUFDLFVBQUFDLFFBQUFDLE9BQUFDLGNBQUFDLE9BQUFDO0FBRUFBLFFBQVFDLElBQUFBLGVBQUEsRUFBTSxTQUFDQyxRQUFELEVBQVdDLE1BQVg7SUFDZCxJQUFBQztJQUFFQSxLQUFLQyxXQUFXRixRQUFRRDtXQUN4QjtlQUFHSSxhQUFjRjtJQUFqQjtBQUZZO0FBSWRMLFFBQVEsU0FBQ0csUUFBRDtXQUNOLElBQUlLLFFBQVEsU0FBQ0MsT0FBRDtlQUFhSCxXQUFXRyxTQUFTTjtJQUFqQztBQUROO0FBR1JKLGVBQ0ssT0FBQVcsZ0JBQUEsZUFBQUEsZ0JBQUEsT0FDRDtXQUFHQSxZQUFZQyxHQUFaO0FBQUgsSUFFQTtXQUFHQyxLQUFLRCxHQUFMO0FBQUg7QUFFSmhCLFlBQVksU0FBQ2tCLENBQUQ7SUFDWixJQUFBQyxHQUFBQyxLQUFBQztJQUFFQSxRQUFRakI7SUFDUixJQUFHLENBQUEsQUFBQWdCLENBQUFBLE1BQUFELElBQUFELEdBQUEsS0FBQSxPQUFBRSxJQUFBRSxJQUFBLEdBQUEsS0FBQSxDQUFBLEtBQUEsTUFBSDtlQUNFSCxFQUFFRyxJQUFGLENBQU87bUJBQUdsQixpQkFBaUJpQjtRQUFwQjtXQURUO2VBR0VqQixpQkFBaUJpQjs7QUFMVDtBQU9acEIsV0FBYyxTQUFFc0IsSUFBRjtXQUNaLFNBQUVmLFFBQUYsRUFBWVUsQ0FBWjtlQUFtQjtZQUNyQixJQUFBRjtZQUFJQSxNQUFNQyxLQUFLRCxHQUFMO1lBQ04sSUFBRyxBQUFFQSxNQUFNTyxPQUFTZixVQUFwQjtnQkFDRWUsT0FBT1A7dUJBQ0pFOztRQUpZO0lBQW5CO0FBRFksRUFBUztBQU92QmYsUUFBUTtXQUNOLElBQUlVLFFBQVEsU0FBRUMsT0FBRjtlQUNWVSxlQUFlVjtJQURMO0FBRE47OztBQU1SWixTQUFTO0lBQ1QsSUFBQXVCO0lBQUVBLE9BQU9DO1dBQ0osU0FBQyxFQUFFQyxPQUFGLEVBQVdDLFNBQVgsRUFBc0JQLEtBQXRCLEVBQTZCUSxNQUE3QixFQUFxQ0MsSUFBckMsRUFBRDtRQUVELENBQUVILFNBQVNDLFVBQVgsR0FBQTtZQUF5QixPQUFPSCxLQUFLTSxNQUFaO2dCQUFBLEtBQ2xCOzJCQUFPO3dCQUFDOzRCQUFFQyxTQUFTO3dCQUFYOzJCQUFtQlA7O2dCQURULEtBRWxCOzJCQUFPQTtnQkFGVztvQkFHbEIsTUFBTSxJQUFJUSxNQUFNO1lBSEU7O1FBS3pCWixRQUFRSixLQUFLRCxHQUFMO1FBRVJjLE9BQU87bUJBQ0wsQUFBRUQsQ0FBQUEsU0FBU0QsV0FBQSxLQUNSLEFBQUVYLEtBQUtELEdBQUwsS0FBYUssUUFBVU0sUUFBUUssT0FBbEM7UUFGRztRQUlQSCxTQUFTO2VBRVQsSUFBSWhCLFFBQVEsZUFBRUMsT0FBRjtZQUNWLE1BQXVCLENBQUNnQixPQUF4QjtnQkFBRSxNQUFNekIsTUFBTTtZQUFkO21CQUNBUyxRQUFRZTtRQUZFO0lBZlgsRUFBK0MsQ0FBQTtBQUYzQztNQStCVCxXQUFlO0lBQ2J4QjtJQUNBQztJQUNBRjtJQUNBSjtJQUNBQztJQUNBRTtJQUNBRDtBQVBhIn0=
@@ -1,161 +1,252 @@
1
1
  "use strict";
2
-
3
2
  Object.defineProperty(exports, "__esModule", {
4
- value: true
3
+ value: true
5
4
  });
6
- exports.prototype = exports.isWeakMap = exports.isUndefined = exports.isTypedArray = exports.isType = exports.isSynonymousType = exports.isSynonymousKind = exports.isSymbol = exports.isString = exports.isSet = exports.isRegularFunction = exports.isRegExp = exports.isReagent = exports.isReactor = exports.isPrototype = exports.isPromise = exports.isObject = exports.isNumber = exports.isNaN = exports.isMap = exports.isKind = exports.isIterator = exports.isIterable = exports.isInteger = exports.isGeneratorFunction = exports.isFunction = exports.isFinite = exports.isError = exports.isDefined = exports.isDate = exports.isDataView = exports.isBuffer = exports.isBoolean = exports.isBigInt = exports.isAsyncIterator = exports.isAsyncIterable = exports.isAsyncFunction = exports.isArrayBuffer = exports.isArray = exports.isAny = exports.instanceOf = exports.Type = void 0;
7
-
8
- var _function = require("./function.js");
9
-
10
- var _predicate = require("./predicate.js");
11
-
12
- var GeneratorFunction, Type, instanceOf, isAny, isArray, isArrayBuffer, isAsyncFunction, isAsyncIterable, isAsyncIterator, isBigInt, isBoolean, isBuffer, isDataView, isDate, isDefined, isError, isFinite, isFunction, isGeneratorFunction, isInteger, isIterable, isIterator, isKind, isMap, isNaN, isNumber, isObject, isPromise, isPrototype, isReactor, isReagent, isRegExp, isRegularFunction, isSet, isString, isSymbol, isSynonymousKind, isSynonymousType, isType, isTypedArray, isUndefined, isWeakMap, prototype;
13
- exports.prototype = prototype;
14
- exports.isWeakMap = isWeakMap;
15
- exports.isUndefined = isUndefined;
16
- exports.isTypedArray = isTypedArray;
17
- exports.isType = isType;
18
- exports.isSynonymousType = isSynonymousType;
19
- exports.isSynonymousKind = isSynonymousKind;
20
- exports.isSymbol = isSymbol;
21
- exports.isString = isString;
22
- exports.isSet = isSet;
23
- exports.isRegularFunction = isRegularFunction;
24
- exports.isRegExp = isRegExp;
25
- exports.isReagent = isReagent;
26
- exports.isReactor = isReactor;
27
- exports.isPrototype = isPrototype;
28
- exports.isPromise = isPromise;
29
- exports.isObject = isObject;
30
- exports.isNumber = isNumber;
31
- exports.isNaN = isNaN;
32
- exports.isMap = isMap;
33
- exports.isKind = isKind;
34
- exports.isIterator = isIterator;
35
- exports.isIterable = isIterable;
36
- exports.isInteger = isInteger;
37
- exports.isGeneratorFunction = isGeneratorFunction;
38
- exports.isFunction = isFunction;
39
- exports.isFinite = isFinite;
40
- exports.isError = isError;
41
- exports.isDefined = isDefined;
42
- exports.isDate = isDate;
43
- exports.isDataView = isDataView;
44
- exports.isBuffer = isBuffer;
45
- exports.isBoolean = isBoolean;
46
- exports.isBigInt = isBigInt;
47
- exports.isAsyncIterator = isAsyncIterator;
48
- exports.isAsyncIterable = isAsyncIterable;
49
- exports.isAsyncFunction = isAsyncFunction;
50
- exports.isArrayBuffer = isArrayBuffer;
51
- exports.isArray = isArray;
52
- exports.isAny = isAny;
53
- exports.instanceOf = instanceOf;
54
- exports.Type = Type;
55
-
56
- exports.prototype = prototype = function (value) {
57
- if (value != null) {
58
- return Object.getPrototypeOf(value);
59
- }
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ Type: function() {
13
+ return Type;
14
+ },
15
+ instanceOf: function() {
16
+ return instanceOf;
17
+ },
18
+ isAny: function() {
19
+ return isAny;
20
+ },
21
+ isArray: function() {
22
+ return isArray;
23
+ },
24
+ isArrayBuffer: function() {
25
+ return isArrayBuffer;
26
+ },
27
+ isAsyncFunction: function() {
28
+ return isAsyncFunction;
29
+ },
30
+ isAsyncIterable: function() {
31
+ return isAsyncIterable;
32
+ },
33
+ isAsyncIterator: function() {
34
+ return isAsyncIterator;
35
+ },
36
+ isBigInt: function() {
37
+ return isBigInt;
38
+ },
39
+ isBoolean: function() {
40
+ return isBoolean;
41
+ },
42
+ isBuffer: function() {
43
+ return isBuffer;
44
+ },
45
+ isDataView: function() {
46
+ return isDataView;
47
+ },
48
+ isDate: function() {
49
+ return isDate;
50
+ },
51
+ isDefined: function() {
52
+ return isDefined;
53
+ },
54
+ isError: function() {
55
+ return isError;
56
+ },
57
+ isFinite: function() {
58
+ return isFinite;
59
+ },
60
+ isFunction: function() {
61
+ return isFunction;
62
+ },
63
+ isGeneratorFunction: function() {
64
+ return isGeneratorFunction;
65
+ },
66
+ isInteger: function() {
67
+ return isInteger;
68
+ },
69
+ isIterable: function() {
70
+ return isIterable;
71
+ },
72
+ isIterator: function() {
73
+ return isIterator;
74
+ },
75
+ isKind: function() {
76
+ return isKind;
77
+ },
78
+ isMap: function() {
79
+ return isMap;
80
+ },
81
+ isNaN: function() {
82
+ return isNaN;
83
+ },
84
+ isNull: function() {
85
+ return isNull;
86
+ },
87
+ isNumber: function() {
88
+ return isNumber;
89
+ },
90
+ isObject: function() {
91
+ return isObject;
92
+ },
93
+ isPromise: function() {
94
+ return isPromise;
95
+ },
96
+ isPrototype: function() {
97
+ return isPrototype;
98
+ },
99
+ isReactor: function() {
100
+ return isReactor;
101
+ },
102
+ isReagent: function() {
103
+ return isReagent;
104
+ },
105
+ isRegExp: function() {
106
+ return isRegExp;
107
+ },
108
+ isRegularFunction: function() {
109
+ return isRegularFunction;
110
+ },
111
+ isSet: function() {
112
+ return isSet;
113
+ },
114
+ isString: function() {
115
+ return isString;
116
+ },
117
+ isSymbol: function() {
118
+ return isSymbol;
119
+ },
120
+ isSynonymousKind: function() {
121
+ return isSynonymousKind;
122
+ },
123
+ isSynonymousType: function() {
124
+ return isSynonymousType;
125
+ },
126
+ isType: function() {
127
+ return isType;
128
+ },
129
+ isTypedArray: function() {
130
+ return isTypedArray;
131
+ },
132
+ isURL: function() {
133
+ return isURL;
134
+ },
135
+ isUndefined: function() {
136
+ return isUndefined;
137
+ },
138
+ isWeakMap: function() {
139
+ return isWeakMap;
140
+ },
141
+ prototype: function() {
142
+ return prototype;
143
+ }
144
+ });
145
+ const _function = require("./function");
146
+ const _predicate = require("./predicate");
147
+ var GeneratorFunction, Type, instanceOf, isAny, isArray, isArrayBuffer, isAsyncFunction, isAsyncIterable, isAsyncIterator, isBigInt, isBoolean, isBuffer, isDataView, isDate, isDefined, isError, isFinite, isFunction, isGeneratorFunction, isInteger, isIterable, isIterator, isKind, isMap, isNaN, isNull, isNumber, isObject, isPromise, isPrototype, isReactor, isReagent, isRegExp, isRegularFunction, isSet, isString, isSymbol, isSynonymousKind, isSynonymousType, isType, isTypedArray, isURL, isUndefined, isWeakMap, prototype;
148
+ prototype = function(value) {
149
+ if (value != null) {
150
+ return Object.getPrototypeOf(value);
151
+ }
60
152
  };
61
-
62
- exports.isPrototype = isPrototype = (0, _function.curry)(function (p, value) {
63
- return p != null && p === prototype(value);
153
+ isPrototype = (0, _function.curry)(function(p, value) {
154
+ return p != null && p === prototype(value);
64
155
  });
65
- exports.isType = isType = (0, _function.curry)(function (type, value) {
66
- return isPrototype(type != null ? type.prototype : void 0, value);
156
+ isType = (0, _function.curry)(function(type, value) {
157
+ return isPrototype(type != null ? type.prototype : void 0, value);
67
158
  });
68
- exports.isSynonymousType = isSynonymousType = (0, _function.curry)(function (type, value) {
69
- return (type != null ? type.name : void 0) === value.constructor.name;
159
+ isSynonymousType = (0, _function.curry)(function(type, value) {
160
+ return (type != null ? type.name : void 0) === value.constructor.name;
70
161
  });
71
- exports.isKind = isKind = (0, _function.curry)(function (type, value) {
72
- try {
73
- return value instanceof type;
74
- } catch (error) {
75
- return false;
76
- }
162
+ isKind = (0, _function.curry)(function(type, value) {
163
+ return isType(type, value) || function() {
164
+ try {
165
+ return value instanceof type;
166
+ } catch (error) {
167
+ return false;
168
+ }
169
+ }();
77
170
  });
78
- exports.isSynonymousKind = isSynonymousKind = (0, _function.curry)(function (type, value) {
79
- return value != null && (isSynonymousType(type, value) || isSynonymousKind(type, prototype(value)));
171
+ isSynonymousKind = (0, _function.curry)(function(type, value) {
172
+ return value != null && (isSynonymousType(type, value) || isSynonymousKind(type, prototype(value)));
80
173
  });
81
- exports.isAny = isAny = (0, _function.wrap)(true); // TODO: is this correct? to check generally for a derived type
174
+ isAny = (0, _function.wrap)(true);
175
+ // TODO: is this correct? to check generally for a derived type
82
176
  // needs tests ....
83
177
  // isDerived = curry (type, value) -> isKind type, value::
84
-
85
- exports.isNumber = isNumber = (0, _predicate.any)([isType(Number), isType(BigInt)]);
86
- exports.isNaN = isNaN = Number.isNaN;
87
- exports.isFinite = isFinite = Number.isFinite;
88
- exports.isInteger = isInteger = Number.isInteger;
89
- exports.isBigInt = isBigInt = isType(BigInt);
90
- exports.isBoolean = isBoolean = isType(Boolean);
91
- exports.isSymbol = isSymbol = isType(Symbol);
92
- exports.isDate = isDate = isType(Date);
93
- exports.isRegExp = isRegExp = isType(RegExp);
94
- exports.isString = isString = isType(String);
95
- exports.isRegularFunction = isRegularFunction = isType(Function);
96
- exports.isObject = isObject = isType(Object);
97
- exports.isArray = isArray = Array.isArray;
98
- exports.isMap = isMap = isType(Map);
99
- exports.isWeakMap = isWeakMap = isType(WeakMap);
100
- exports.isSet = isSet = isType(Set);
101
- exports.isError = isError = isKind(Error);
102
-
103
- exports.isDefined = isDefined = function (x) {
104
- return x != null;
178
+ isNumber = (0, _predicate.any)([
179
+ isType(Number),
180
+ isType(BigInt)
181
+ ]);
182
+ isNaN = Number.isNaN;
183
+ isFinite = Number.isFinite;
184
+ isInteger = Number.isInteger;
185
+ isBigInt = isType(BigInt);
186
+ isBoolean = isType(Boolean);
187
+ isSymbol = isType(Symbol);
188
+ isDate = isType(Date);
189
+ isRegExp = isType(RegExp);
190
+ isString = isType(String);
191
+ isRegularFunction = isType(Function);
192
+ isObject = isType(Object);
193
+ isArray = Array.isArray;
194
+ isMap = isType(Map);
195
+ isWeakMap = isType(WeakMap);
196
+ isSet = isType(Set);
197
+ isError = isKind(Error);
198
+ isURL = isType(URL);
199
+ isDefined = function(x) {
200
+ return x != null;
105
201
  };
106
-
107
- exports.isUndefined = isUndefined = function (x) {
108
- return x == null;
202
+ isUndefined = function(x) {
203
+ return x == null;
109
204
  };
110
-
111
- GeneratorFunction = function* () {
112
- return yield null;
113
- }.constructor;
114
-
115
- exports.isGeneratorFunction = isGeneratorFunction = isType(GeneratorFunction);
116
- exports.isPromise = isPromise = isType(Promise);
117
- exports.isAsyncFunction = isAsyncFunction = isType(async function () {
118
- return await null;
119
- }.constructor);
120
- exports.isFunction = isFunction = isKind(Function);
121
- exports.instanceOf = instanceOf = (0, _function.curry)(function (t, x) {
122
- return x instanceof t;
205
+ isNull = isUndefined;
206
+ GeneratorFunction = (function*() {
207
+ return yield null;
208
+ }).constructor;
209
+ isGeneratorFunction = isType(GeneratorFunction);
210
+ isPromise = isType(Promise);
211
+ isAsyncFunction = isType((async function() {
212
+ return await null;
213
+ }).constructor);
214
+ isFunction = isKind(Function);
215
+ instanceOf = (0, _function.curry)(function(t, x) {
216
+ return x instanceof t;
123
217
  });
124
- exports.Type = Type = {
125
- create: function (type) {
126
- return new type();
127
- },
128
- define: function (parent = Object) {
129
- return class extends parent {};
130
- }
218
+ Type = {
219
+ create: function(type) {
220
+ return new type();
221
+ },
222
+ define: function(parent = Object) {
223
+ return class extends parent {
224
+ };
225
+ }
131
226
  };
132
-
133
227
  if (typeof Buffer !== "undefined" && Buffer !== null) {
134
- exports.isBuffer = isBuffer = isType(Buffer);
228
+ isBuffer = isType(Buffer);
135
229
  } else {
136
- exports.isBuffer = isBuffer = function (x) {
137
- return false;
138
- };
230
+ isBuffer = function(x) {
231
+ return false;
232
+ };
139
233
  }
140
-
141
- exports.isArrayBuffer = isArrayBuffer = isType(ArrayBuffer);
142
- exports.isDataView = isDataView = isType(DataView);
143
- exports.isTypedArray = isTypedArray = isKind(prototype(Uint8Array));
144
-
145
- exports.isIterable = isIterable = function (x) {
146
- return isFunction(x != null ? x[Symbol.iterator] : void 0);
234
+ isArrayBuffer = isType(ArrayBuffer);
235
+ isDataView = isType(DataView);
236
+ isTypedArray = isKind(prototype(Uint8Array));
237
+ isIterable = function(x) {
238
+ return isFunction(x != null ? x[Symbol.iterator] : void 0);
147
239
  };
148
-
149
- exports.isIterator = isIterator = function (x) {
150
- return isFunction(x != null ? x.next : void 0) && isIterable(x);
240
+ isIterator = function(x) {
241
+ return isFunction(x != null ? x.next : void 0) && isIterable(x);
151
242
  };
152
-
153
- exports.isReagent = isReagent = exports.isAsyncIterable = isAsyncIterable = function (x) {
154
- return isFunction(x != null ? x[Symbol.asyncIterator] : void 0);
243
+ isReagent = isAsyncIterable = function(x) {
244
+ return isFunction(x != null ? x[Symbol.asyncIterator] : void 0);
155
245
  };
156
-
157
- exports.isReactor = isReactor = exports.isAsyncIterator = isAsyncIterator = function (x) {
158
- return isFunction(x != null ? x.next : void 0) && isReagent(x);
246
+ isReactor = isAsyncIterator = function(x) {
247
+ return isFunction(x != null ? x.next : void 0) && isReagent(x);
159
248
  };
160
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNyYy90eXBlLmNvZmZlZSJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBLElBQUEsaUJBQUEsRUFBQSxJQUFBLEVBQUEsVUFBQSxFQUFBLEtBQUEsRUFBQSxPQUFBLEVBQUEsYUFBQSxFQUFBLGVBQUEsRUFBQSxlQUFBLEVBQUEsZUFBQSxFQUFBLFFBQUEsRUFBQSxTQUFBLEVBQUEsUUFBQSxFQUFBLFVBQUEsRUFBQSxNQUFBLEVBQUEsU0FBQSxFQUFBLE9BQUEsRUFBQSxRQUFBLEVBQUEsVUFBQSxFQUFBLG1CQUFBLEVBQUEsU0FBQSxFQUFBLFVBQUEsRUFBQSxVQUFBLEVBQUEsTUFBQSxFQUFBLEtBQUEsRUFBQSxLQUFBLEVBQUEsUUFBQSxFQUFBLFFBQUEsRUFBQSxTQUFBLEVBQUEsV0FBQSxFQUFBLFNBQUEsRUFBQSxTQUFBLEVBQUEsUUFBQSxFQUFBLGlCQUFBLEVBQUEsS0FBQSxFQUFBLFFBQUEsRUFBQSxRQUFBLEVBQUEsZ0JBQUEsRUFBQSxnQkFBQSxFQUFBLE1BQUEsRUFBQSxZQUFBLEVBQUEsV0FBQSxFQUFBLFNBQUEsRUFBQSxTQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUdBLG9CQUFBLFNBQUEsR0FBWSxVQUFBLEtBQUEsRUFBQTtBQUFXLE1BQUcsS0FBQSxJQUFILElBQUEsRUFBQTtXQUFlLE1BQU0sQ0FBTixjQUFBLENBQWYsS0FBZSxDOztBQUExQixDQUFaOztBQUVBLHNCQUFBLFdBQUEsR0FBYyxxQkFBTSxVQUFBLENBQUEsRUFBQSxLQUFBLEVBQUE7U0FBYyxDQUFBLElBQUEsSUFBQSxJQUFNLENBQUEsS0FBSyxTQUFBLENBQUEsS0FBQSxDO0FBQS9CLENBQUEsQ0FBZDtBQUVBLGlCQUFBLE1BQUEsR0FBUyxxQkFBTSxVQUFBLElBQUEsRUFBQSxLQUFBLEVBQUE7U0FBaUIsV0FBQSxDQUFBLElBQUEsSUFBQSxJQUFBLEdBQVksSUFBSSxDQUFFLFNBQWxCLEdBQWtCLEtBQWxCLENBQUEsRUFBQSxLQUFBLEM7QUFBdkIsQ0FBQSxDQUFUO0FBRUEsMkJBQUEsZ0JBQUEsR0FBbUIscUJBQU0sVUFBQSxJQUFBLEVBQUEsS0FBQSxFQUFBO3lCQUN2QixJQUFJLENBQUUsSSxHQUFBLEtBQU4sQyxNQUFjLEtBQUssQ0FBQyxXQUFOLENBQWtCLEk7QUFEZixDQUFBLENBQW5CO0FBR0EsaUJBQUEsTUFBQSxHQUFTLHFCQUFNLFVBQUEsSUFBQSxFQUFBLEtBQUEsRUFBQTtBQUNiLE1BQUE7V0FDRSxLQUFBLFlBREYsSTtBQUVBLEdBRkEsQ0FFQSxPQUFBLEtBQUEsRUFBQTtXQUFBLEs7O0FBSE8sQ0FBQSxDQUFUO0FBTUEsMkJBQUEsZ0JBQUEsR0FBbUIscUJBQU0sVUFBQSxJQUFBLEVBQUEsS0FBQSxFQUFBO1NBQ3ZCLEtBQUEsSUFBQSxJQUFBLEtBQVksZ0JBQUEsQ0FBQSxJQUFBLEVBQUQsS0FBQyxDQUFELElBQ1IsZ0JBQUEsQ0FBQSxJQUFBLEVBQXdCLFNBQUEsQ0FEakIsS0FDaUIsQ0FBeEIsQ0FESCxDO0FBRGlCLENBQUEsQ0FBbkI7QUFJQSxnQkFBQSxLQUFBLEdBQVEsb0JBdEJSLElBc0JRLENBQVIsQzs7OztBQU1BLG1CQUFBLFFBQUEsR0FBVyxvQkFBSSxDQUNiLE1BQUEsQ0FEYSxNQUNiLENBRGEsRUFFYixNQUFBLENBRlMsTUFFVCxDQUZhLENBQUosQ0FBWDtBQUtBLGdCQUFBLEtBQUEsR0FBUSxNQUFNLENBQUMsS0FBZjtBQUVBLG1CQUFBLFFBQUEsR0FBVyxNQUFNLENBQUMsUUFBbEI7QUFFQSxvQkFBQSxTQUFBLEdBQVksTUFBTSxDQUFDLFNBQW5CO0FBRUEsbUJBQUEsUUFBQSxHQUFXLE1BQUEsQ0FBQSxNQUFBLENBQVg7QUFFQSxvQkFBQSxTQUFBLEdBQVksTUFBQSxDQUFBLE9BQUEsQ0FBWjtBQUVBLG1CQUFBLFFBQUEsR0FBVyxNQUFBLENBQUEsTUFBQSxDQUFYO0FBRUEsaUJBQUEsTUFBQSxHQUFTLE1BQUEsQ0FBQSxJQUFBLENBQVQ7QUFFQSxtQkFBQSxRQUFBLEdBQVcsTUFBQSxDQUFBLE1BQUEsQ0FBWDtBQUVBLG1CQUFBLFFBQUEsR0FBVyxNQUFBLENBQUEsTUFBQSxDQUFYO0FBRUEsNEJBQUEsaUJBQUEsR0FBb0IsTUFBQSxDQUFBLFFBQUEsQ0FBcEI7QUFFQSxtQkFBQSxRQUFBLEdBQVcsTUFBQSxDQUFBLE1BQUEsQ0FBWDtBQUVBLGtCQUFBLE9BQUEsR0FBVSxLQUFLLENBQUMsT0FBaEI7QUFFQSxnQkFBQSxLQUFBLEdBQVEsTUFBQSxDQUFBLEdBQUEsQ0FBUjtBQUVBLG9CQUFBLFNBQUEsR0FBWSxNQUFBLENBQUEsT0FBQSxDQUFaO0FBRUEsZ0JBQUEsS0FBQSxHQUFRLE1BQUEsQ0FBQSxHQUFBLENBQVI7QUFFQSxrQkFBQSxPQUFBLEdBQVUsTUFBQSxDQUFBLEtBQUEsQ0FBVjs7QUFFQSxvQkFBQSxTQUFBLEdBQVksVUFBQSxDQUFBLEVBQUE7U0FBTyxDQUFBLElBQUEsSTtBQUFQLENBQVo7O0FBRUEsc0JBQUEsV0FBQSxHQUFjLFVBQUEsQ0FBQSxFQUFBO1NBQVEsQ0FBQSxJQUFBLEk7QUFBUixDQUFkOztBQUVBLGlCQUFBLEdBQXFCLGFBQUE7QUFBRyxTQUFBLE1BQUEsSUFBQTtBQUFKLENBQUEsQ0FBZ0IsV0FBcEM7O0FBRUEsOEJBQUEsbUJBQUEsR0FBc0IsTUFBQSxDQUFBLGlCQUFBLENBQXRCO0FBRUEsb0JBQUEsU0FBQSxHQUFZLE1BQUEsQ0FBQSxPQUFBLENBQVo7QUFFQSwwQkFBQSxlQUFBLEdBQWtCLE1BQUEsQ0FBUSxrQkFBQTtBQUFHLFNBQUEsTUFBQSxJQUFBO0FBQUosQ0FBQSxDQUFQLFdBQUEsQ0FBbEI7QUFFQSxxQkFBQSxVQUFBLEdBQWEsTUFBQSxDQUFBLFFBQUEsQ0FBYjtBQUVBLHFCQUFBLFVBQUEsR0FBYSxxQkFBTSxVQUFBLENBQUEsRUFBQSxDQUFBLEVBQUE7U0FBVSxDQUFBLFlBQWEsQztBQUE3QixDQUFBLENBQWI7QUFFQSxlQUFBLElBQUEsR0FDRTtBQUFBLEVBQUEsTUFBQSxFQUFRLFVBQUEsSUFBQSxFQUFBO1dBQVUsSUFBQSxJQUFBLEU7QUFBbEIsR0FBQTtBQUNBLEVBQUEsTUFBQSxFQUFRLFVBQUMsTUFBQSxHQUFELE1BQUEsRUFBQTtXQUFxQixjQUFjLE1BQWQsQ0FBQSxFO0FBQXJCO0FBRFIsQ0FERjs7QUFJQSxJQUFHLE9BQUEsTUFBQSxLQUFBLFdBQUEsSUFBQSxNQUFBLEtBQUgsSUFBQSxFQUFBO0FBQ0UscUJBQUEsUUFBQSxHQUFXLE1BQUEsQ0FEYixNQUNhLENBQVg7QUFERixDQUFBLE1BQUE7QUFHRSxxQkFBQSxRQUFBLEdBQVcsVUFBQSxDQUFBLEVBQUE7V0FBTyxLO0FBSHBCLEdBR0U7OztBQUVGLHdCQUFBLGFBQUEsR0FBZ0IsTUFBQSxDQUFBLFdBQUEsQ0FBaEI7QUFDQSxxQkFBQSxVQUFBLEdBQWEsTUFBQSxDQUFBLFFBQUEsQ0FBYjtBQUNBLHVCQUFBLFlBQUEsR0FBZSxNQUFBLENBQU8sU0FBQSxDQUFQLFVBQU8sQ0FBUCxDQUFmOztBQUVBLHFCQUFBLFVBQUEsR0FBYSxVQUFBLENBQUEsRUFBQTtTQUFPLFVBQUEsQ0FBQSxDQUFBLElBQUEsSUFBQSxHQUFXLENBQUMsQ0FBRSxNQUFNLENBQVIsUUFBQSxDQUFaLEdBQVksS0FBWixDQUFBLEM7QUFBUCxDQUFiOztBQUVBLHFCQUFBLFVBQUEsR0FBYSxVQUFBLENBQUEsRUFBQTtTQUFRLFVBQUEsQ0FBQSxDQUFBLElBQUEsSUFBQSxHQUFXLENBQUMsQ0FBRSxJQUFkLEdBQWMsS0FBZixDQUFDLENBQUQsSUFBeUIsVUFBQSxDQUFELENBQUMsQztBQUFoQyxDQUFiOztBQUVBLG9CQUFBLFNBQUEsNkJBQVksZUFBQSxHQUFrQixVQUFBLENBQUEsRUFBQTtTQUFPLFVBQUEsQ0FBQSxDQUFBLElBQUEsSUFBQSxHQUFXLENBQUMsQ0FBRSxNQUFNLENBQVIsYUFBQSxDQUFaLEdBQVksS0FBWixDQUFBLEM7QUFBUCxDQUE5Qjs7QUFFQSxvQkFBQSxTQUFBLDZCQUFZLGVBQUEsR0FBa0IsVUFBQSxDQUFBLEVBQUE7U0FBUSxVQUFBLENBQUEsQ0FBQSxJQUFBLElBQUEsR0FBVyxDQUFDLENBQUUsSUFBZCxHQUFjLEtBQWYsQ0FBQyxDQUFELElBQXlCLFNBQUEsQ0FBRCxDQUFDLEM7QUFBaEMsQ0FBOUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjdXJyeSwgd3JhcCB9IGZyb20gXCIuL2Z1bmN0aW9uXCJcbmltcG9ydCB7IGFueSB9IGZyb20gXCIuL3ByZWRpY2F0ZVwiXG5cbnByb3RvdHlwZSA9ICh2YWx1ZSkgLT4gaWYgdmFsdWU/IHRoZW4gT2JqZWN0LmdldFByb3RvdHlwZU9mIHZhbHVlXG5cbmlzUHJvdG90eXBlID0gY3VycnkgKHAsIHZhbHVlKSAtPiBwPyAmJiBwID09IHByb3RvdHlwZSB2YWx1ZVxuXG5pc1R5cGUgPSBjdXJyeSAodHlwZSwgdmFsdWUpIC0+IGlzUHJvdG90eXBlIHR5cGU/LnByb3RvdHlwZSwgdmFsdWVcblxuaXNTeW5vbnltb3VzVHlwZSA9IGN1cnJ5ICh0eXBlLCB2YWx1ZSkgLT5cbiAgdHlwZT8ubmFtZSA9PSB2YWx1ZS5jb25zdHJ1Y3Rvci5uYW1lXG5cbmlzS2luZCA9IGN1cnJ5ICh0eXBlLCB2YWx1ZSkgLT5cbiAgdHJ5XG4gICAgdmFsdWUgaW5zdGFuY2VvZiB0eXBlXG4gIGNhdGNoXG4gICAgZmFsc2VcblxuaXNTeW5vbnltb3VzS2luZCA9IGN1cnJ5ICh0eXBlLCB2YWx1ZSkgLT5cbiAgdmFsdWU/ICYmICgoaXNTeW5vbnltb3VzVHlwZSB0eXBlLCB2YWx1ZSkgfHxcbiAgICAoaXNTeW5vbnltb3VzS2luZCB0eXBlLCAocHJvdG90eXBlIHZhbHVlKSkpXG5cbmlzQW55ID0gd3JhcCB0cnVlXG5cbiMgVE9ETzogaXMgdGhpcyBjb3JyZWN0PyB0byBjaGVjayBnZW5lcmFsbHkgZm9yIGEgZGVyaXZlZCB0eXBlXG4jIG5lZWRzIHRlc3RzIC4uLi5cbiMgaXNEZXJpdmVkID0gY3VycnkgKHR5cGUsIHZhbHVlKSAtPiBpc0tpbmQgdHlwZSwgdmFsdWU6OlxuXG5pc051bWJlciA9IGFueSBbXG4gIGlzVHlwZSBOdW1iZXJcbiAgaXNUeXBlIEJpZ0ludFxuXVxuXG5pc05hTiA9IE51bWJlci5pc05hTlxuXG5pc0Zpbml0ZSA9IE51bWJlci5pc0Zpbml0ZVxuXG5pc0ludGVnZXIgPSBOdW1iZXIuaXNJbnRlZ2VyXG5cbmlzQmlnSW50ID0gaXNUeXBlIEJpZ0ludFxuXG5pc0Jvb2xlYW4gPSBpc1R5cGUgQm9vbGVhblxuXG5pc1N5bWJvbCA9IGlzVHlwZSBTeW1ib2xcblxuaXNEYXRlID0gaXNUeXBlIERhdGVcblxuaXNSZWdFeHAgPSBpc1R5cGUgUmVnRXhwXG5cbmlzU3RyaW5nID0gaXNUeXBlIFN0cmluZ1xuXG5pc1JlZ3VsYXJGdW5jdGlvbiA9IGlzVHlwZSBGdW5jdGlvblxuXG5pc09iamVjdCA9IGlzVHlwZSBPYmplY3RcblxuaXNBcnJheSA9IEFycmF5LmlzQXJyYXlcblxuaXNNYXAgPSBpc1R5cGUgTWFwXG5cbmlzV2Vha01hcCA9IGlzVHlwZSBXZWFrTWFwXG5cbmlzU2V0ID0gaXNUeXBlIFNldFxuXG5pc0Vycm9yID0gaXNLaW5kIEVycm9yXG5cbmlzRGVmaW5lZCA9ICh4KSAtPiB4P1xuXG5pc1VuZGVmaW5lZCA9ICh4KSAtPiAheD9cblxuR2VuZXJhdG9yRnVuY3Rpb24gPSAoLT4geWllbGQgbnVsbCkuY29uc3RydWN0b3JcblxuaXNHZW5lcmF0b3JGdW5jdGlvbiA9IGlzVHlwZSBHZW5lcmF0b3JGdW5jdGlvblxuXG5pc1Byb21pc2UgPSBpc1R5cGUgUHJvbWlzZVxuXG5pc0FzeW5jRnVuY3Rpb24gPSBpc1R5cGUgKC0+IGF3YWl0IG51bGwpLmNvbnN0cnVjdG9yXG5cbmlzRnVuY3Rpb24gPSBpc0tpbmQgRnVuY3Rpb25cblxuaW5zdGFuY2VPZiA9IGN1cnJ5ICh0LCB4KSAtPiB4IGluc3RhbmNlb2YgdFxuXG5UeXBlID1cbiAgY3JlYXRlOiAodHlwZSkgLT4gbmV3IHR5cGVcbiAgZGVmaW5lOiAocGFyZW50ID0gT2JqZWN0KSAtPiBjbGFzcyBleHRlbmRzIHBhcmVudFxuXG5pZiBCdWZmZXI/XG4gIGlzQnVmZmVyID0gaXNUeXBlIEJ1ZmZlclxuZWxzZVxuICBpc0J1ZmZlciA9ICh4KSAtPiBmYWxzZVxuXG5pc0FycmF5QnVmZmVyID0gaXNUeXBlIEFycmF5QnVmZmVyXG5pc0RhdGFWaWV3ID0gaXNUeXBlIERhdGFWaWV3XG5pc1R5cGVkQXJyYXkgPSBpc0tpbmQgcHJvdG90eXBlIFVpbnQ4QXJyYXlcblxuaXNJdGVyYWJsZSA9ICh4KSAtPiBpc0Z1bmN0aW9uIHg/W1N5bWJvbC5pdGVyYXRvcl1cblxuaXNJdGVyYXRvciA9ICh4KSAtPiAoaXNGdW5jdGlvbiB4Py5uZXh0KSAmJiAoaXNJdGVyYWJsZSB4KVxuXG5pc1JlYWdlbnQgPSBpc0FzeW5jSXRlcmFibGUgPSAoeCkgLT4gaXNGdW5jdGlvbiB4P1tTeW1ib2wuYXN5bmNJdGVyYXRvcl1cblxuaXNSZWFjdG9yID0gaXNBc3luY0l0ZXJhdG9yID0gKHgpIC0+IChpc0Z1bmN0aW9uIHg/Lm5leHQpICYmIChpc1JlYWdlbnQgeClcblxuZXhwb3J0IHtcbiAgcHJvdG90eXBlXG4gIGlzUHJvdG90eXBlXG4gIGlzVHlwZVxuICBpc0tpbmRcbiAgaXNTeW5vbnltb3VzVHlwZVxuICBpc1N5bm9ueW1vdXNLaW5kXG4gIFR5cGVcbiAgaW5zdGFuY2VPZlxuICBpc0RlZmluZWRcbiAgaXNVbmRlZmluZWRcbiAgaXNBbnlcbiAgaXNCb29sZWFuXG4gIGlzU3RyaW5nXG4gIGlzU3ltYm9sXG4gIGlzTnVtYmVyXG4gIGlzTmFOXG4gIGlzRmluaXRlXG4gIGlzSW50ZWdlclxuICBpc0JpZ0ludFxuICBpc0RhdGVcbiAgaXNFcnJvclxuICBpc1JlZ0V4cFxuICBpc1Byb21pc2VcbiAgaXNPYmplY3RcbiAgaXNBcnJheVxuICBpc01hcFxuICBpc1dlYWtNYXBcbiAgaXNTZXRcbiAgaXNSZWd1bGFyRnVuY3Rpb25cbiAgaXNHZW5lcmF0b3JGdW5jdGlvblxuICBpc0FzeW5jRnVuY3Rpb25cbiAgaXNGdW5jdGlvblxuICBpc0J1ZmZlclxuICBpc0FycmF5QnVmZmVyXG4gIGlzRGF0YVZpZXdcbiAgaXNUeXBlZEFycmF5XG4gIGlzSXRlcmFibGVcbiAgaXNJdGVyYXRvclxuICBpc1JlYWdlbnRcbiAgaXNBc3luY0l0ZXJhYmxlXG4gIGlzUmVhY3RvclxuICBpc0FzeW5jSXRlcmF0b3Jcbn1cbiJdLCJzb3VyY2VSb290IjoiIn0=
161
- //# sourceURL=src/type.coffee
249
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiL0BkYXNoa2l0ZS9qb3kvc3JjL3R5cGUuY29mZmVlIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLElBQUEsaUJBQUEsRUFBQSxJQUFBLEVBQUEsVUFBQSxFQUFBLEtBQUEsRUFBQSxPQUFBLEVBQUEsYUFBQSxFQUFBLGVBQUEsRUFBQSxlQUFBLEVBQUEsZUFBQSxFQUFBLFFBQUEsRUFBQSxTQUFBLEVBQUEsUUFBQSxFQUFBLFVBQUEsRUFBQSxNQUFBLEVBQUEsU0FBQSxFQUFBLE9BQUEsRUFBQSxRQUFBLEVBQUEsVUFBQSxFQUFBLG1CQUFBLEVBQUEsU0FBQSxFQUFBLFVBQUEsRUFBQSxVQUFBLEVBQUEsTUFBQSxFQUFBLEtBQUEsRUFBQSxLQUFBLEVBQUEsTUFBQSxFQUFBLFFBQUEsRUFBQSxRQUFBLEVBQUEsU0FBQSxFQUFBLFdBQUEsRUFBQSxTQUFBLEVBQUEsU0FBQSxFQUFBLFFBQUEsRUFBQSxpQkFBQSxFQUFBLEtBQUEsRUFBQSxRQUFBLEVBQUEsUUFBQSxFQUFBLGdCQUFBLEVBQUEsZ0JBQUEsRUFBQSxNQUFBLEVBQUEsWUFBQSxFQUFBLEtBQUEsRUFBQSxXQUFBLEVBQUEsU0FBQSxFQUFBOztBQUFBLE9BQUE7RUFBUyxLQUFUO0VBQWdCLElBQWhCO0NBQUEsTUFBQTs7QUFDQSxPQUFBO0VBQVMsR0FBVDtDQUFBLE1BQUE7O0FBRUEsU0FBQSxHQUFZLFFBQUEsQ0FBQyxLQUFELENBQUE7RUFBVyxJQUFHLGFBQUg7V0FBZSxNQUFNLENBQUMsY0FBUCxDQUFzQixLQUF0QixFQUFmOztBQUFYOztBQUVaLFdBQUEsR0FBYyxLQUFBLENBQU0sUUFBQSxDQUFDLENBQUQsRUFBSSxLQUFKLENBQUE7U0FBYyxXQUFBLElBQU0sQ0FBQSxLQUFLLFNBQUEsQ0FBVSxLQUFWO0FBQXpCLENBQU47O0FBRWQsTUFBQSxHQUFTLEtBQUEsQ0FBTSxRQUFBLENBQUMsSUFBRCxFQUFPLEtBQVAsQ0FBQTtTQUFpQixX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RUFxQkUsTUFyQkY7RUFzQkUsT0F0QkY7RUF1QkUsUUF2QkY7RUF3QkUsU0F4QkY7RUF5QkUsUUF6QkY7RUEwQkUsT0ExQkY7RUEyQkUsS0EzQkY7RUE0QkUsU0E1QkY7RUE2QkUsS0E3QkY7RUE4QkUsS0E5QkY7RUErQkUsaUJBL0JGO0VBZ0NFLG1CQWhDRjtFQWlDRSxlQWpDRjtFQWtDRSxVQWxDRjtFQW1DRSxRQW5DRjtFQW9DRSxhQXBDRjtFQXFDRSxVQXJDRjtFQXNDRSxZQXRDRjtFQXVDRSxVQXZDRjtFQXdDRSxVQXhDRjtFQXlDRSxTQXpDRjtFQTBDRSxlQTFDRjtFQTJDRSxTQTNDRjtFQTRDRSxlQTVDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGN1cnJ5LCB3cmFwIH0gZnJvbSBcIi4vZnVuY3Rpb25cIlxuaW1wb3J0IHsgYW55IH0gZnJvbSBcIi4vcHJlZGljYXRlXCJcblxucHJvdG90eXBlID0gKHZhbHVlKSAtPiBpZiB2YWx1ZT8gdGhlbiBPYmplY3QuZ2V0UHJvdG90eXBlT2YgdmFsdWVcblxuaXNQcm90b3R5cGUgPSBjdXJyeSAocCwgdmFsdWUpIC0+IHA/ICYmIHAgPT0gcHJvdG90eXBlIHZhbHVlXG5cbmlzVHlwZSA9IGN1cnJ5ICh0eXBlLCB2YWx1ZSkgLT4gaXNQcm90b3R5cGUgdHlwZT8ucHJvdG90eXBlLCB2YWx1ZVxuXG5pc1N5bm9ueW1vdXNUeXBlID0gY3VycnkgKHR5cGUsIHZhbHVlKSAtPlxuICB0eXBlPy5uYW1lID09IHZhbHVlLmNvbnN0cnVjdG9yLm5hbWVcblxuaXNLaW5kID0gY3VycnkgKHR5cGUsIHZhbHVlKSAtPlxuICAoIGlzVHlwZSB0eXBlLCB2YWx1ZSApIHx8IGRvIC0+XG4gICAgdHJ5XG4gICAgICB2YWx1ZSBpbnN0YW5jZW9mIHR5cGVcbiAgICBjYXRjaFxuICAgICAgZmFsc2VcblxuaXNTeW5vbnltb3VzS2luZCA9IGN1cnJ5ICh0eXBlLCB2YWx1ZSkgLT5cbiAgdmFsdWU/ICYmICgoaXNTeW5vbnltb3VzVHlwZSB0eXBlLCB2YWx1ZSkgfHxcbiAgICAoaXNTeW5vbnltb3VzS2luZCB0eXBlLCAocHJvdG90eXBlIHZhbHVlKSkpXG5cbmlzQW55ID0gd3JhcCB0cnVlXG5cbiMgVE9ETzogaXMgdGhpcyBjb3JyZWN0PyB0byBjaGVjayBnZW5lcmFsbHkgZm9yIGEgZGVyaXZlZCB0eXBlXG4jIG5lZWRzIHRlc3RzIC4uLi5cbiMgaXNEZXJpdmVkID0gY3VycnkgKHR5cGUsIHZhbHVlKSAtPiBpc0tpbmQgdHlwZSwgdmFsdWU6OlxuXG5pc051bWJlciA9IGFueSBbXG4gIGlzVHlwZSBOdW1iZXJcbiAgaXNUeXBlIEJpZ0ludFxuXVxuXG5pc05hTiA9IE51bWJlci5pc05hTlxuXG5pc0Zpbml0ZSA9IE51bWJlci5pc0Zpbml0ZVxuXG5pc0ludGVnZXIgPSBOdW1iZXIuaXNJbnRlZ2VyXG5cbmlzQmlnSW50ID0gaXNUeXBlIEJpZ0ludFxuXG5pc0Jvb2xlYW4gPSBpc1R5cGUgQm9vbGVhblxuXG5pc1N5bWJvbCA9IGlzVHlwZSBTeW1ib2xcblxuaXNEYXRlID0gaXNUeXBlIERhdGVcblxuaXNSZWdFeHAgPSBpc1R5cGUgUmVnRXhwXG5cbmlzU3RyaW5nID0gaXNUeXBlIFN0cmluZ1xuXG5pc1JlZ3VsYXJGdW5jdGlvbiA9IGlzVHlwZSBGdW5jdGlvblxuXG5pc09iamVjdCA9IGlzVHlwZSBPYmplY3RcblxuaXNBcnJheSA9IEFycmF5LmlzQXJyYXlcblxuaXNNYXAgPSBpc1R5cGUgTWFwXG5cbmlzV2Vha01hcCA9IGlzVHlwZSBXZWFrTWFwXG5cbmlzU2V0ID0gaXNUeXBlIFNldFxuXG5pc0Vycm9yID0gaXNLaW5kIEVycm9yXG5cbmlzVVJMID0gaXNUeXBlIFVSTFxuXG5pc0RlZmluZWQgPSAoeCkgLT4geD9cblxuaXNVbmRlZmluZWQgPSAoeCkgLT4gIXg/XG5cbmlzTnVsbCA9IGlzVW5kZWZpbmVkXG5cbkdlbmVyYXRvckZ1bmN0aW9uID0gKC0+IHlpZWxkIG51bGwpLmNvbnN0cnVjdG9yXG5cbmlzR2VuZXJhdG9yRnVuY3Rpb24gPSBpc1R5cGUgR2VuZXJhdG9yRnVuY3Rpb25cblxuaXNQcm9taXNlID0gaXNUeXBlIFByb21pc2VcblxuaXNBc3luY0Z1bmN0aW9uID0gaXNUeXBlICgtPiBhd2FpdCBudWxsKS5jb25zdHJ1Y3RvclxuXG5pc0Z1bmN0aW9uID0gaXNLaW5kIEZ1bmN0aW9uXG5cbmluc3RhbmNlT2YgPSBjdXJyeSAodCwgeCkgLT4geCBpbnN0YW5jZW9mIHRcblxuVHlwZSA9XG4gIGNyZWF0ZTogKHR5cGUpIC0+IG5ldyB0eXBlXG4gIGRlZmluZTogKHBhcmVudCA9IE9iamVjdCkgLT4gY2xhc3MgZXh0ZW5kcyBwYXJlbnRcblxuaWYgQnVmZmVyP1xuICBpc0J1ZmZlciA9IGlzVHlwZSBCdWZmZXJcbmVsc2VcbiAgaXNCdWZmZXIgPSAoeCkgLT4gZmFsc2VcblxuaXNBcnJheUJ1ZmZlciA9IGlzVHlwZSBBcnJheUJ1ZmZlclxuaXNEYXRhVmlldyA9IGlzVHlwZSBEYXRhVmlld1xuaXNUeXBlZEFycmF5ID0gaXNLaW5kIHByb3RvdHlwZSBVaW50OEFycmF5XG5cbmlzSXRlcmFibGUgPSAoeCkgLT4gaXNGdW5jdGlvbiB4P1tTeW1ib2wuaXRlcmF0b3JdXG5cbmlzSXRlcmF0b3IgPSAoeCkgLT4gKGlzRnVuY3Rpb24geD8ubmV4dCkgJiYgKGlzSXRlcmFibGUgeClcblxuaXNSZWFnZW50ID0gaXNBc3luY0l0ZXJhYmxlID0gKHgpIC0+IGlzRnVuY3Rpb24geD9bU3ltYm9sLmFzeW5jSXRlcmF0b3JdXG5cbmlzUmVhY3RvciA9IGlzQXN5bmNJdGVyYXRvciA9ICh4KSAtPiAoaXNGdW5jdGlvbiB4Py5uZXh0KSAmJiAoaXNSZWFnZW50IHgpXG5cbmV4cG9ydCB7XG4gIHByb3RvdHlwZVxuICBpc1Byb3RvdHlwZVxuICBpc1R5cGVcbiAgaXNLaW5kXG4gIGlzU3lub255bW91c1R5cGVcbiAgaXNTeW5vbnltb3VzS2luZFxuICBUeXBlXG4gIGluc3RhbmNlT2ZcbiAgaXNEZWZpbmVkXG4gIGlzVW5kZWZpbmVkXG4gIGlzTnVsbFxuICBpc0FueVxuICBpc0Jvb2xlYW5cbiAgaXNTdHJpbmdcbiAgaXNTeW1ib2xcbiAgaXNOdW1iZXJcbiAgaXNOYU5cbiAgaXNGaW5pdGVcbiAgaXNJbnRlZ2VyXG4gIGlzQmlnSW50XG4gIGlzRGF0ZVxuICBpc0Vycm9yXG4gIGlzUmVnRXhwXG4gIGlzUHJvbWlzZVxuICBpc09iamVjdFxuICBpc0FycmF5XG4gIGlzTWFwXG4gIGlzV2Vha01hcFxuICBpc1NldFxuICBpc1VSTFxuICBpc1JlZ3VsYXJGdW5jdGlvblxuICBpc0dlbmVyYXRvckZ1bmN0aW9uXG4gIGlzQXN5bmNGdW5jdGlvblxuICBpc0Z1bmN0aW9uXG4gIGlzQnVmZmVyXG4gIGlzQXJyYXlCdWZmZXJcbiAgaXNEYXRhVmlld1xuICBpc1R5cGVkQXJyYXlcbiAgaXNJdGVyYWJsZVxuICBpc0l0ZXJhdG9yXG4gIGlzUmVhZ2VudFxuICBpc0FzeW5jSXRlcmFibGVcbiAgaXNSZWFjdG9yXG4gIGlzQXN5bmNJdGVyYXRvclxufVxuIl19
250
+ //# sourceURL=/@dashkite/joy/src/type.coffee
251
+
252
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9AZGFzaGtpdGUvam95L3NyYy90eXBlLmNvZmZlZSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjdXJyeSwgd3JhcCB9IGZyb20gXCIuL2Z1bmN0aW9uXCJcbmltcG9ydCB7IGFueSB9IGZyb20gXCIuL3ByZWRpY2F0ZVwiXG5cbnByb3RvdHlwZSA9ICh2YWx1ZSkgLT4gaWYgdmFsdWU/IHRoZW4gT2JqZWN0LmdldFByb3RvdHlwZU9mIHZhbHVlXG5cbmlzUHJvdG90eXBlID0gY3VycnkgKHAsIHZhbHVlKSAtPiBwPyAmJiBwID09IHByb3RvdHlwZSB2YWx1ZVxuXG5pc1R5cGUgPSBjdXJyeSAodHlwZSwgdmFsdWUpIC0+IGlzUHJvdG90eXBlIHR5cGU/LnByb3RvdHlwZSwgdmFsdWVcblxuaXNTeW5vbnltb3VzVHlwZSA9IGN1cnJ5ICh0eXBlLCB2YWx1ZSkgLT5cbiAgdHlwZT8ubmFtZSA9PSB2YWx1ZS5jb25zdHJ1Y3Rvci5uYW1lXG5cbmlzS2luZCA9IGN1cnJ5ICh0eXBlLCB2YWx1ZSkgLT5cbiAgKCBpc1R5cGUgdHlwZSwgdmFsdWUgKSB8fCBkbyAtPlxuICAgIHRyeVxuICAgICAgdmFsdWUgaW5zdGFuY2VvZiB0eXBlXG4gICAgY2F0Y2hcbiAgICAgIGZhbHNlXG5cbmlzU3lub255bW91c0tpbmQgPSBjdXJyeSAodHlwZSwgdmFsdWUpIC0+XG4gIHZhbHVlPyAmJiAoKGlzU3lub255bW91c1R5cGUgdHlwZSwgdmFsdWUpIHx8XG4gICAgKGlzU3lub255bW91c0tpbmQgdHlwZSwgKHByb3RvdHlwZSB2YWx1ZSkpKVxuXG5pc0FueSA9IHdyYXAgdHJ1ZVxuXG4jIFRPRE86IGlzIHRoaXMgY29ycmVjdD8gdG8gY2hlY2sgZ2VuZXJhbGx5IGZvciBhIGRlcml2ZWQgdHlwZVxuIyBuZWVkcyB0ZXN0cyAuLi4uXG4jIGlzRGVyaXZlZCA9IGN1cnJ5ICh0eXBlLCB2YWx1ZSkgLT4gaXNLaW5kIHR5cGUsIHZhbHVlOjpcblxuaXNOdW1iZXIgPSBhbnkgW1xuICBpc1R5cGUgTnVtYmVyXG4gIGlzVHlwZSBCaWdJbnRcbl1cblxuaXNOYU4gPSBOdW1iZXIuaXNOYU5cblxuaXNGaW5pdGUgPSBOdW1iZXIuaXNGaW5pdGVcblxuaXNJbnRlZ2VyID0gTnVtYmVyLmlzSW50ZWdlclxuXG5pc0JpZ0ludCA9IGlzVHlwZSBCaWdJbnRcblxuaXNCb29sZWFuID0gaXNUeXBlIEJvb2xlYW5cblxuaXNTeW1ib2wgPSBpc1R5cGUgU3ltYm9sXG5cbmlzRGF0ZSA9IGlzVHlwZSBEYXRlXG5cbmlzUmVnRXhwID0gaXNUeXBlIFJlZ0V4cFxuXG5pc1N0cmluZyA9IGlzVHlwZSBTdHJpbmdcblxuaXNSZWd1bGFyRnVuY3Rpb24gPSBpc1R5cGUgRnVuY3Rpb25cblxuaXNPYmplY3QgPSBpc1R5cGUgT2JqZWN0XG5cbmlzQXJyYXkgPSBBcnJheS5pc0FycmF5XG5cbmlzTWFwID0gaXNUeXBlIE1hcFxuXG5pc1dlYWtNYXAgPSBpc1R5cGUgV2Vha01hcFxuXG5pc1NldCA9IGlzVHlwZSBTZXRcblxuaXNFcnJvciA9IGlzS2luZCBFcnJvclxuXG5pc1VSTCA9IGlzVHlwZSBVUkxcblxuaXNEZWZpbmVkID0gKHgpIC0+IHg/XG5cbmlzVW5kZWZpbmVkID0gKHgpIC0+ICF4P1xuXG5pc051bGwgPSBpc1VuZGVmaW5lZFxuXG5HZW5lcmF0b3JGdW5jdGlvbiA9ICgtPiB5aWVsZCBudWxsKS5jb25zdHJ1Y3RvclxuXG5pc0dlbmVyYXRvckZ1bmN0aW9uID0gaXNUeXBlIEdlbmVyYXRvckZ1bmN0aW9uXG5cbmlzUHJvbWlzZSA9IGlzVHlwZSBQcm9taXNlXG5cbmlzQXN5bmNGdW5jdGlvbiA9IGlzVHlwZSAoLT4gYXdhaXQgbnVsbCkuY29uc3RydWN0b3JcblxuaXNGdW5jdGlvbiA9IGlzS2luZCBGdW5jdGlvblxuXG5pbnN0YW5jZU9mID0gY3VycnkgKHQsIHgpIC0+IHggaW5zdGFuY2VvZiB0XG5cblR5cGUgPVxuICBjcmVhdGU6ICh0eXBlKSAtPiBuZXcgdHlwZVxuICBkZWZpbmU6IChwYXJlbnQgPSBPYmplY3QpIC0+IGNsYXNzIGV4dGVuZHMgcGFyZW50XG5cbmlmIEJ1ZmZlcj9cbiAgaXNCdWZmZXIgPSBpc1R5cGUgQnVmZmVyXG5lbHNlXG4gIGlzQnVmZmVyID0gKHgpIC0+IGZhbHNlXG5cbmlzQXJyYXlCdWZmZXIgPSBpc1R5cGUgQXJyYXlCdWZmZXJcbmlzRGF0YVZpZXcgPSBpc1R5cGUgRGF0YVZpZXdcbmlzVHlwZWRBcnJheSA9IGlzS2luZCBwcm90b3R5cGUgVWludDhBcnJheVxuXG5pc0l0ZXJhYmxlID0gKHgpIC0+IGlzRnVuY3Rpb24geD9bU3ltYm9sLml0ZXJhdG9yXVxuXG5pc0l0ZXJhdG9yID0gKHgpIC0+IChpc0Z1bmN0aW9uIHg/Lm5leHQpICYmIChpc0l0ZXJhYmxlIHgpXG5cbmlzUmVhZ2VudCA9IGlzQXN5bmNJdGVyYWJsZSA9ICh4KSAtPiBpc0Z1bmN0aW9uIHg/W1N5bWJvbC5hc3luY0l0ZXJhdG9yXVxuXG5pc1JlYWN0b3IgPSBpc0FzeW5jSXRlcmF0b3IgPSAoeCkgLT4gKGlzRnVuY3Rpb24geD8ubmV4dCkgJiYgKGlzUmVhZ2VudCB4KVxuXG5leHBvcnQge1xuICBwcm90b3R5cGVcbiAgaXNQcm90b3R5cGVcbiAgaXNUeXBlXG4gIGlzS2luZFxuICBpc1N5bm9ueW1vdXNUeXBlXG4gIGlzU3lub255bW91c0tpbmRcbiAgVHlwZVxuICBpbnN0YW5jZU9mXG4gIGlzRGVmaW5lZFxuICBpc1VuZGVmaW5lZFxuICBpc051bGxcbiAgaXNBbnlcbiAgaXNCb29sZWFuXG4gIGlzU3RyaW5nXG4gIGlzU3ltYm9sXG4gIGlzTnVtYmVyXG4gIGlzTmFOXG4gIGlzRmluaXRlXG4gIGlzSW50ZWdlclxuICBpc0JpZ0ludFxuICBpc0RhdGVcbiAgaXNFcnJvclxuICBpc1JlZ0V4cFxuICBpc1Byb21pc2VcbiAgaXNPYmplY3RcbiAgaXNBcnJheVxuICBpc01hcFxuICBpc1dlYWtNYXBcbiAgaXNTZXRcbiAgaXNVUkxcbiAgaXNSZWd1bGFyRnVuY3Rpb25cbiAgaXNHZW5lcmF0b3JGdW5jdGlvblxuICBpc0FzeW5jRnVuY3Rpb25cbiAgaXNGdW5jdGlvblxuICBpc0J1ZmZlclxuICBpc0FycmF5QnVmZmVyXG4gIGlzRGF0YVZpZXdcbiAgaXNUeXBlZEFycmF5XG4gIGlzSXRlcmFibGVcbiAgaXNJdGVyYXRvclxuICBpc1JlYWdlbnRcbiAgaXNBc3luY0l0ZXJhYmxlXG4gIGlzUmVhY3RvclxuICBpc0FzeW5jSXRlcmF0b3Jcbn1cbiJdLCJuYW1lcyI6WyJUeXBlIiwiaW5zdGFuY2VPZiIsImlzQW55IiwiaXNBcnJheSIsImlzQXJyYXlCdWZmZXIiLCJpc0FzeW5jRnVuY3Rpb24iLCJpc0FzeW5jSXRlcmFibGUiLCJpc0FzeW5jSXRlcmF0b3IiLCJpc0JpZ0ludCIsImlzQm9vbGVhbiIsImlzQnVmZmVyIiwiaXNEYXRhVmlldyIsImlzRGF0ZSIsImlzRGVmaW5lZCIsImlzRXJyb3IiLCJpc0Zpbml0ZSIsImlzRnVuY3Rpb24iLCJpc0dlbmVyYXRvckZ1bmN0aW9uIiwiaXNJbnRlZ2VyIiwiaXNJdGVyYWJsZSIsImlzSXRlcmF0b3IiLCJpc0tpbmQiLCJpc01hcCIsImlzTmFOIiwiaXNOdWxsIiwiaXNOdW1iZXIiLCJpc09iamVjdCIsImlzUHJvbWlzZSIsImlzUHJvdG90eXBlIiwiaXNSZWFjdG9yIiwiaXNSZWFnZW50IiwiaXNSZWdFeHAiLCJpc1JlZ3VsYXJGdW5jdGlvbiIsImlzU2V0IiwiaXNTdHJpbmciLCJpc1N5bWJvbCIsImlzU3lub255bW91c0tpbmQiLCJpc1N5bm9ueW1vdXNUeXBlIiwiaXNUeXBlIiwiaXNUeXBlZEFycmF5IiwiaXNVUkwiLCJpc1VuZGVmaW5lZCIsImlzV2Vha01hcCIsInByb3RvdHlwZSIsIkdlbmVyYXRvckZ1bmN0aW9uIiwidmFsdWUiLCJPYmplY3QiLCJnZXRQcm90b3R5cGVPZiIsImN1cnJ5IiwicCIsInR5cGUiLCJuYW1lIiwiY29uc3RydWN0b3IiLCJlcnJvciIsIndyYXAiLCJhbnkiLCJOdW1iZXIiLCJCaWdJbnQiLCJCb29sZWFuIiwiU3ltYm9sIiwiRGF0ZSIsIlJlZ0V4cCIsIlN0cmluZyIsIkZ1bmN0aW9uIiwiQXJyYXkiLCJNYXAiLCJXZWFrTWFwIiwiU2V0IiwiRXJyb3IiLCJVUkwiLCJ4IiwiUHJvbWlzZSIsInQiLCJjcmVhdGUiLCJkZWZpbmUiLCJwYXJlbnQiLCJCdWZmZXIiLCJBcnJheUJ1ZmZlciIsIkRhdGFWaWV3IiwiVWludDhBcnJheSIsIml0ZXJhdG9yIiwibmV4dCIsImFzeW5jSXRlcmF0b3IiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0lBa0hFQSxJQVBGO2VBT0VBOztJQUNBQyxVQVJGO2VBUUVBOztJQUlBQyxLQVpGO2VBWUVBOztJQWNBQyxPQTFCRjtlQTBCRUE7O0lBVUFDLGFBcENGO2VBb0NFQTs7SUFIQUMsZUFqQ0Y7ZUFpQ0VBOztJQVNBQyxlQTFDRjtlQTBDRUE7O0lBRUFDLGVBNUNGO2VBNENFQTs7SUF4QkFDLFFBcEJGO2VBb0JFQTs7SUFQQUMsU0FiRjtlQWFFQTs7SUFzQkFDLFFBbkNGO2VBbUNFQTs7SUFFQUMsVUFyQ0Y7ZUFxQ0VBOztJQWhCQUMsTUFyQkY7ZUFxQkVBOztJQVpBQyxTQVRGO2VBU0VBOztJQWFBQyxPQXRCRjtlQXNCRUE7O0lBSkFDLFFBbEJGO2VBa0JFQTs7SUFnQkFDLFVBbENGO2VBa0NFQTs7SUFGQUMsbUJBaENGO2VBZ0NFQTs7SUFiQUMsU0FuQkY7ZUFtQkVBOztJQW9CQUMsVUF2Q0Y7ZUF1Q0VBOztJQUNBQyxVQXhDRjtlQXdDRUE7O0lBcENBQyxNQUpGO2VBSUVBOztJQXVCQUMsS0EzQkY7ZUEyQkVBOztJQVZBQyxLQWpCRjtlQWlCRUE7O0lBTkFDLE1BWEY7ZUFXRUE7O0lBS0FDLFFBaEJGO2VBZ0JFQTs7SUFTQUMsUUF6QkY7ZUF5QkVBOztJQURBQyxTQXhCRjtlQXdCRUE7O0lBdEJBQyxXQUZGO2VBRUVBOztJQXlDQUMsU0EzQ0Y7ZUEyQ0VBOztJQUZBQyxTQXpDRjtlQXlDRUE7O0lBbEJBQyxRQXZCRjtlQXVCRUE7O0lBUUFDLGlCQS9CRjtlQStC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