sygnal 1.1.3 → 1.2.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/jsx.js +13 -0
- package/dist/pragma/fn.js +102 -0
- package/dist/pragma/index.js +147 -0
- package/dist/pragma/is.js +80 -0
- package/package.json +6 -2
- package/sygnal-1.1.3.tgz +0 -0
- package/dist/sygnal.min.js +0 -8
package/dist/jsx.js
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "jsx", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function get() {
|
|
9
|
+
return _index.createElement;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
|
|
13
|
+
var _index = require("./pragma/index");
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.reduceDeep = exports.omit = exports.mapObject = exports.flatifyKeys = exports.extend = exports.deepifyKeys = exports.assign = void 0;
|
|
9
|
+
|
|
10
|
+
var _extend2 = _interopRequireDefault(require("extend"));
|
|
11
|
+
|
|
12
|
+
var is = _interopRequireWildcard(require("./is"));
|
|
13
|
+
|
|
14
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
15
|
+
|
|
16
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
17
|
+
|
|
18
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
19
|
+
|
|
20
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
21
|
+
|
|
22
|
+
var extend = function extend() {
|
|
23
|
+
for (var _len = arguments.length, objs = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
24
|
+
objs[_key] = arguments[_key];
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
return _extend2["default"].apply(void 0, [true].concat(objs));
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
exports.extend = extend;
|
|
31
|
+
|
|
32
|
+
var assign = function assign() {
|
|
33
|
+
for (var _len2 = arguments.length, objs = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
|
|
34
|
+
objs[_key2] = arguments[_key2];
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
return _extend2["default"].apply(void 0, [false].concat(objs));
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
exports.assign = assign;
|
|
41
|
+
|
|
42
|
+
var reduceDeep = function reduceDeep(arr, fn, initial) {
|
|
43
|
+
var result = initial;
|
|
44
|
+
|
|
45
|
+
for (var i = 0; i < arr.length; i++) {
|
|
46
|
+
var value = arr[i];
|
|
47
|
+
|
|
48
|
+
if (is.array(value)) {
|
|
49
|
+
result = reduceDeep(value, fn, result);
|
|
50
|
+
} else {
|
|
51
|
+
result = fn(result, value);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
return result;
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
exports.reduceDeep = reduceDeep;
|
|
59
|
+
|
|
60
|
+
var mapObject = function mapObject(obj, fn) {
|
|
61
|
+
return Object.keys(obj).map(function (key) {
|
|
62
|
+
return fn(key, obj[key]);
|
|
63
|
+
}).reduce(function (acc, curr) {
|
|
64
|
+
return extend(acc, curr);
|
|
65
|
+
}, {});
|
|
66
|
+
};
|
|
67
|
+
|
|
68
|
+
exports.mapObject = mapObject;
|
|
69
|
+
|
|
70
|
+
var deepifyKeys = function deepifyKeys(obj, modules) {
|
|
71
|
+
return mapObject(obj, function (key, val) {
|
|
72
|
+
var dashIndex = key.indexOf('-');
|
|
73
|
+
|
|
74
|
+
if (dashIndex > -1 && modules[key.slice(0, dashIndex)] !== undefined) {
|
|
75
|
+
var moduleData = _defineProperty({}, key.slice(dashIndex + 1), val);
|
|
76
|
+
|
|
77
|
+
return _defineProperty({}, key.slice(0, dashIndex), moduleData);
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
return _defineProperty({}, key, val);
|
|
81
|
+
});
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
exports.deepifyKeys = deepifyKeys;
|
|
85
|
+
|
|
86
|
+
var flatifyKeys = function flatifyKeys(obj) {
|
|
87
|
+
return mapObject(obj, function (mod, data) {
|
|
88
|
+
return !is.object(data) ? _defineProperty({}, mod, data) : mapObject(flatifyKeys(data), function (key, val) {
|
|
89
|
+
return _defineProperty({}, "".concat(mod, "-").concat(key), val);
|
|
90
|
+
});
|
|
91
|
+
});
|
|
92
|
+
};
|
|
93
|
+
|
|
94
|
+
exports.flatifyKeys = flatifyKeys;
|
|
95
|
+
|
|
96
|
+
var omit = function omit(key, obj) {
|
|
97
|
+
return mapObject(obj, function (mod, data) {
|
|
98
|
+
return mod !== key ? _defineProperty({}, mod, data) : {};
|
|
99
|
+
});
|
|
100
|
+
};
|
|
101
|
+
|
|
102
|
+
exports.omit = omit;
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports["default"] = exports.createElementWithModules = exports.createElement = void 0;
|
|
9
|
+
|
|
10
|
+
var is = _interopRequireWildcard(require("./is"));
|
|
11
|
+
|
|
12
|
+
var fn = _interopRequireWildcard(require("./fn"));
|
|
13
|
+
|
|
14
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
15
|
+
|
|
16
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
17
|
+
|
|
18
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
19
|
+
|
|
20
|
+
// Const fnName = (...params) => guard ? default : ...
|
|
21
|
+
var createTextElement = function createTextElement(text) {
|
|
22
|
+
return !is.text(text) ? undefined : {
|
|
23
|
+
text: text,
|
|
24
|
+
sel: undefined,
|
|
25
|
+
data: undefined,
|
|
26
|
+
children: undefined,
|
|
27
|
+
elm: undefined,
|
|
28
|
+
key: undefined
|
|
29
|
+
};
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
var considerSvg = function considerSvg(vnode) {
|
|
33
|
+
return !is.svg(vnode) ? vnode : fn.assign(vnode, {
|
|
34
|
+
data: fn.omit('props', fn.extend(vnode.data, {
|
|
35
|
+
ns: 'http://www.w3.org/2000/svg',
|
|
36
|
+
attrs: fn.omit('className', fn.extend(vnode.data.props, {
|
|
37
|
+
"class": vnode.data.props ? vnode.data.props.className : undefined
|
|
38
|
+
}))
|
|
39
|
+
}))
|
|
40
|
+
}, {
|
|
41
|
+
children: is.undefinedv(vnode.children) ? undefined : vnode.children.map(function (child) {
|
|
42
|
+
return considerSvg(child);
|
|
43
|
+
})
|
|
44
|
+
});
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
var rewrites = {
|
|
48
|
+
"for": 'attrs',
|
|
49
|
+
role: 'attrs',
|
|
50
|
+
tabindex: 'attrs',
|
|
51
|
+
'aria-*': 'attrs',
|
|
52
|
+
key: null
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
var rewriteModules = function rewriteModules(data, modules) {
|
|
56
|
+
return fn.mapObject(data, function (key, val) {
|
|
57
|
+
var inner = _defineProperty({}, key, val);
|
|
58
|
+
|
|
59
|
+
if (rewrites[key] && modules[rewrites[key]] !== undefined) {
|
|
60
|
+
return _defineProperty({}, rewrites[key], inner);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
if (rewrites[key] === null) {
|
|
64
|
+
return {};
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
var keys = Object.keys(rewrites);
|
|
68
|
+
|
|
69
|
+
for (var i = 0; i < keys.length; i++) {
|
|
70
|
+
var k = keys[i];
|
|
71
|
+
|
|
72
|
+
if (k.charAt(k.length - 1) === '*' && key.indexOf(k.slice(0, -1)) === 0 && modules[rewrites[k]] !== undefined) {
|
|
73
|
+
return _defineProperty({}, rewrites[k], inner);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
if (modules[key] !== undefined) {
|
|
78
|
+
return _defineProperty({}, modules[key] ? modules[key] : key, val);
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
if (modules.props !== undefined) {
|
|
82
|
+
return {
|
|
83
|
+
props: inner
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
return inner;
|
|
88
|
+
});
|
|
89
|
+
};
|
|
90
|
+
|
|
91
|
+
var sanitizeData = function sanitizeData(data, modules) {
|
|
92
|
+
return considerSvg(rewriteModules(fn.deepifyKeys(data, modules), modules));
|
|
93
|
+
};
|
|
94
|
+
|
|
95
|
+
var sanitizeText = function sanitizeText(children) {
|
|
96
|
+
return children.length > 1 || !is.text(children[0]) ? undefined : children[0].toString();
|
|
97
|
+
};
|
|
98
|
+
|
|
99
|
+
var sanitizeChildren = function sanitizeChildren(children) {
|
|
100
|
+
return fn.reduceDeep(children, function (acc, child) {
|
|
101
|
+
var vnode = is.vnode(child) ? child : createTextElement(child);
|
|
102
|
+
acc.push(vnode);
|
|
103
|
+
return acc;
|
|
104
|
+
}, []);
|
|
105
|
+
};
|
|
106
|
+
|
|
107
|
+
var defaultModules = {
|
|
108
|
+
attrs: '',
|
|
109
|
+
props: '',
|
|
110
|
+
"class": '',
|
|
111
|
+
data: 'dataset',
|
|
112
|
+
style: '',
|
|
113
|
+
hook: '',
|
|
114
|
+
on: ''
|
|
115
|
+
};
|
|
116
|
+
|
|
117
|
+
var createElementWithModules = function createElementWithModules(modules) {
|
|
118
|
+
return function (sel, data) {
|
|
119
|
+
if (is.fun(sel)) {
|
|
120
|
+
sel = sel.name || 'unnamed';
|
|
121
|
+
console.error('JSX Error: A capitalized tag name was used, but was transpiled to a nameless function. Either use a named function or a lower case tag name to avoid this problem');
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
for (var _len = arguments.length, children = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {
|
|
125
|
+
children[_key - 2] = arguments[_key];
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
var text = sanitizeText(children, modules);
|
|
129
|
+
return considerSvg({
|
|
130
|
+
sel: sel,
|
|
131
|
+
data: data ? sanitizeData(data, modules) : {},
|
|
132
|
+
children: text ? undefined : sanitizeChildren(children),
|
|
133
|
+
text: text,
|
|
134
|
+
elm: undefined,
|
|
135
|
+
key: data ? data.key : undefined
|
|
136
|
+
});
|
|
137
|
+
};
|
|
138
|
+
};
|
|
139
|
+
|
|
140
|
+
exports.createElementWithModules = createElementWithModules;
|
|
141
|
+
var createElement = createElementWithModules(defaultModules);
|
|
142
|
+
exports.createElement = createElement;
|
|
143
|
+
var _default = {
|
|
144
|
+
createElement: createElement,
|
|
145
|
+
createElementWithModules: createElementWithModules
|
|
146
|
+
};
|
|
147
|
+
exports["default"] = _default;
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.vnode = exports.undefinedv = exports.text = exports.svg = exports.string = exports.object = exports.number = exports.nullv = exports.fun = exports.array = void 0;
|
|
7
|
+
|
|
8
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
9
|
+
|
|
10
|
+
var nullv = function nullv(v) {
|
|
11
|
+
return v === null;
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
exports.nullv = nullv;
|
|
15
|
+
|
|
16
|
+
var undefinedv = function undefinedv(v) {
|
|
17
|
+
return v === undefined;
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
exports.undefinedv = undefinedv;
|
|
21
|
+
|
|
22
|
+
var number = function number(v) {
|
|
23
|
+
return typeof v === 'number';
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
exports.number = number;
|
|
27
|
+
|
|
28
|
+
var string = function string(v) {
|
|
29
|
+
return typeof v === 'string';
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
exports.string = string;
|
|
33
|
+
|
|
34
|
+
var text = function text(v) {
|
|
35
|
+
return string(v) || number(v);
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
exports.text = text;
|
|
39
|
+
|
|
40
|
+
var array = function array(v) {
|
|
41
|
+
return Array.isArray(v);
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
exports.array = array;
|
|
45
|
+
|
|
46
|
+
var object = function object(v) {
|
|
47
|
+
return _typeof(v) === 'object' && v !== null;
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
exports.object = object;
|
|
51
|
+
|
|
52
|
+
var fun = function fun(v) {
|
|
53
|
+
return typeof v === 'function';
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
exports.fun = fun;
|
|
57
|
+
|
|
58
|
+
var vnode = function vnode(v) {
|
|
59
|
+
return object(v) && 'sel' in v && 'data' in v && 'children' in v && 'text' in v;
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
exports.vnode = vnode;
|
|
63
|
+
var svgPropsMap = {
|
|
64
|
+
svg: 1,
|
|
65
|
+
circle: 1,
|
|
66
|
+
ellipse: 1,
|
|
67
|
+
line: 1,
|
|
68
|
+
polygon: 1,
|
|
69
|
+
polyline: 1,
|
|
70
|
+
rect: 1,
|
|
71
|
+
g: 1,
|
|
72
|
+
path: 1,
|
|
73
|
+
text: 1
|
|
74
|
+
};
|
|
75
|
+
|
|
76
|
+
var svg = function svg(v) {
|
|
77
|
+
return v.sel in svgPropsMap;
|
|
78
|
+
};
|
|
79
|
+
|
|
80
|
+
exports.svg = svg;
|
package/package.json
CHANGED
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "sygnal",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.2.0",
|
|
4
4
|
"description": "An intuitive framework for building fast and small components or applications based on Cycle.js",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
|
-
"exports":
|
|
6
|
+
"exports": {
|
|
7
|
+
".": "./dist/index.js",
|
|
8
|
+
"./jsx": "./dist/jsx.js"
|
|
9
|
+
},
|
|
7
10
|
"scripts": {
|
|
8
11
|
"test": "echo \"Tests to come...\"",
|
|
9
12
|
"build": "npx babel src --out-dir dist",
|
|
@@ -32,6 +35,7 @@
|
|
|
32
35
|
"@cycle/isolate": "^5.2.0",
|
|
33
36
|
"@cycle/run": "^5.7.0",
|
|
34
37
|
"@cycle/state": "^1.7.0",
|
|
38
|
+
"extend": "^3.0.2",
|
|
35
39
|
"xstream": "^11.14.0"
|
|
36
40
|
},
|
|
37
41
|
"devDependencies": {
|
package/sygnal-1.1.3.tgz
ADDED
|
Binary file
|
package/dist/sygnal.min.js
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports["default"]=collection;var _isolate=_interopRequireDefault(require("@cycle/isolate")),_state=require("@cycle/state");function _interopRequireDefault(a){return a&&a.__esModule?a:{default:a}}function _defineProperty(a,b,c){return b in a?Object.defineProperty(a,b,{value:c,enumerable:!0,configurable:!0,writable:!0}):a[b]=c,a}function _slicedToArray(a,b){return _arrayWithHoles(a)||_iterableToArrayLimit(a,b)||_unsupportedIterableToArray(a,b)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(a,b){if(a){if("string"==typeof a)return _arrayLikeToArray(a,b);var c=Object.prototype.toString.call(a).slice(8,-1);return"Object"===c&&a.constructor&&(c=a.constructor.name),"Map"===c||"Set"===c?Array.from(a):"Arguments"===c||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(c)?_arrayLikeToArray(a,b):void 0}}function _arrayLikeToArray(a,b){(null==b||b>a.length)&&(b=a.length);for(var c=0,d=Array(b);c<b;c++)d[c]=a[c];return d}function _iterableToArrayLimit(a,b){var c=null==a?null:"undefined"!=typeof Symbol&&a[Symbol.iterator]||a["@@iterator"];if(null!=c){var d,e,f=[],g=!0,h=!1;try{for(c=c.call(a);!(g=(d=c.next()).done)&&(f.push(d.value),!(b&&f.length===b));g=!0);}catch(a){h=!0,e=a}finally{try{g||null==c["return"]||c["return"]()}finally{if(h)throw e}}return f}}function _arrayWithHoles(a){if(Array.isArray(a))return a}function collection(a,b){var c=2<arguments.length&&arguments[2]!==void 0?arguments[2]:["DOM"],d=3<arguments.length&&arguments[3]!==void 0?arguments[3]:["EVENTS"],e=4<arguments.length&&arguments[4]!==void 0?arguments[4]:"STATE";return function(f){var g=_defineProperty({},e,b);return d.forEach(function(a){return g[a]=null}),c.forEach(function(a){return g[a]=null}),makeIsolatedCollection({item:a,itemKey:function itemKey(a){return a.id},itemScope:function itemScope(a){return a},channel:e,collectSinks:function collectSinks(a){return Object.entries(f).reduce(function(b,d){var e=_slicedToArray(d,2),f=e[0],g=e[1];return b[f]=c.includes(f)?a.pickCombine(f):a.pickMerge(f),b},{})}},g,f)}}function makeIsolatedCollection(a,b,c){return(0,_isolate["default"])((0,_state.makeCollection)(a),b)(c)}
|
|
2
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ABORT=void 0,exports["default"]=component;var _isolate=_interopRequireDefault(require("@cycle/isolate")),_collection=_interopRequireDefault(require("./collection.js")),_state2=require("@cycle/state"),_xstream=_interopRequireWildcard(require("xstream")),_delay=_interopRequireDefault(require("xstream/extra/delay.js")),_concat=_interopRequireDefault(require("xstream/extra/concat.js")),_debounce=_interopRequireDefault(require("xstream/extra/debounce.js")),_dropRepeats=_interopRequireDefault(require("xstream/extra/dropRepeats.js"));function _getRequireWildcardCache(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(_getRequireWildcardCache=function(a){return a?c:b})(a)}function _interopRequireWildcard(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!==_typeof(a)&&"function"!=typeof a)return{default:a};var c=_getRequireWildcardCache(b);if(c&&c.has(a))return c.get(a);var d={},e=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var f in a)if("default"!=f&&Object.prototype.hasOwnProperty.call(a,f)){var g=e?Object.getOwnPropertyDescriptor(a,f):null;g&&(g.get||g.set)?Object.defineProperty(d,f,g):d[f]=a[f]}return d["default"]=a,c&&c.set(a,d),d}function _interopRequireDefault(a){return a&&a.__esModule?a:{default:a}}function _toConsumableArray(a){return _arrayWithoutHoles(a)||_iterableToArray(a)||_unsupportedIterableToArray(a)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _iterableToArray(a){if("undefined"!=typeof Symbol&&null!=a[Symbol.iterator]||null!=a["@@iterator"])return Array.from(a)}function _arrayWithoutHoles(a){if(Array.isArray(a))return _arrayLikeToArray(a)}function _slicedToArray(a,b){return _arrayWithHoles(a)||_iterableToArrayLimit(a,b)||_unsupportedIterableToArray(a,b)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(a,b){if(a){if("string"==typeof a)return _arrayLikeToArray(a,b);var c=Object.prototype.toString.call(a).slice(8,-1);return"Object"===c&&a.constructor&&(c=a.constructor.name),"Map"===c||"Set"===c?Array.from(a):"Arguments"===c||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(c)?_arrayLikeToArray(a,b):void 0}}function _arrayLikeToArray(a,b){(null==b||b>a.length)&&(b=a.length);for(var c=0,d=Array(b);c<b;c++)d[c]=a[c];return d}function _iterableToArrayLimit(a,b){var c=null==a?null:"undefined"!=typeof Symbol&&a[Symbol.iterator]||a["@@iterator"];if(null!=c){var d,e,f=[],g=!0,h=!1;try{for(c=c.call(a);!(g=(d=c.next()).done)&&(f.push(d.value),!(b&&f.length===b));g=!0);}catch(a){h=!0,e=a}finally{try{g||null==c["return"]||c["return"]()}finally{if(h)throw e}}return f}}function _arrayWithHoles(a){if(Array.isArray(a))return a}function _classCallCheck(a,b){if(!(a instanceof b))throw new TypeError("Cannot call a class as a function")}function _defineProperties(a,b){for(var c,d=0;d<b.length;d++)c=b[d],c.enumerable=c.enumerable||!1,c.configurable=!0,"value"in c&&(c.writable=!0),Object.defineProperty(a,c.key,c)}function _createClass(a,b,c){return b&&_defineProperties(a.prototype,b),c&&_defineProperties(a,c),Object.defineProperty(a,"prototype",{writable:!1}),a}function ownKeys(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function _objectSpread(a){for(var b,c=1;c<arguments.length;c++)b=null==arguments[c]?{}:arguments[c],c%2?ownKeys(Object(b),!0).forEach(function(c){_defineProperty(a,c,b[c])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(b)):ownKeys(Object(b)).forEach(function(c){Object.defineProperty(a,c,Object.getOwnPropertyDescriptor(b,c))});return a}function _defineProperty(a,b,c){return b in a?Object.defineProperty(a,b,{value:c,enumerable:!0,configurable:!0,writable:!0}):a[b]=c,a}function _typeof(a){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(a){return typeof a}:function(a){return a&&"function"==typeof Symbol&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a},_typeof(a)}var ENVIRONMENT="undefined"!=typeof window&&window||process&&process.env||{},REQUEST_SELECTOR_METHOD="request",BOOTSTRAP_ACTION="BOOTSTRAP",INITIALIZE_ACTION="INITIALIZE",HYDRATE_ACTION="HYDRATE",IS_ROOT_COMPONENT=!0,ABORT="~#~#~ABORT~#~#~";exports.ABORT=ABORT;function component(a){var b=a.name,c=a.sources,d=a.isolateOpts,e=a.stateSourceName,f=void 0===e?"STATE":e;if(c&&"object"!==_typeof(c))throw new Error("Sources must be a Cycle.js sources object:",b);var g="string"==typeof d?_defineProperty({},f,d):!0===d?{}:d;var h="undefined"==typeof c;if("object"==_typeof(g)){var i=function(b){var c=_objectSpread(_objectSpread({},a),{},{sources:b});return new Component(c).sinks};return h?(0,_isolate["default"])(i,g):(0,_isolate["default"])(i,g)(c)}return h?function(b){return new Component(_objectSpread(_objectSpread({},a),{},{sources:b})).sinks}:new Component(a).sinks}var Component=function(){function a(b){var c=this,d=b.name,e=void 0===d?"NO NAME":d,f=b.sources,g=b.intent,h=b.request,i=b.model,j=b.response,k=b.view,l=b.children,m=void 0===l?{}:l,n=b.components,o=void 0===n?{}:n,p=b.initialState,q=b.calculated,r=b.storeCalculatedInState,s=b.DOMSourceName,t=void 0===s?"DOM":s,u=b.stateSourceName,v=void 0===u?"STATE":u,w=b.requestSourceName,x=void 0===w?"HTTP":w;if(_classCallCheck(this,a),!f||"object"!=_typeof(f))throw new Error("Missing or invalid sources");this.name=e,this.sources=f,this.intent=g,this.request=h,this.model=i,this.response=j,this.view=k,this.children=m,this.components=o,this.initialState=p,this.calculated=q,this.storeCalculatedInState=void 0===r||r,this.DOMSourceName=t,this.stateSourceName=v,this.requestSourceName=x,this.sourceNames=Object.keys(f),this.isSubComponent=this.sourceNames.includes("props$");var y=f[v]&&f[v].stream;y&&(this.currentState=p||{},this.sources[this.stateSourceName]=new _state2.StateSource(y.map(function(a){return c.currentState=a,a}))),IS_ROOT_COMPONENT&&"undefined"==typeof this.intent&&"undefined"==typeof this.model&&(this.initialState=p||!0,this.intent=function(){return{__NOOP_ACTION__:_xstream["default"].never()}},this.model={__NOOP_ACTION__:function __NOOP_ACTION__(a){return a}}),IS_ROOT_COMPONENT=!1,this.log=makeLog(e),this.initIntent$(),this.initAction$(),this.initResponse$(),this.initState(),this.initModel$(),this.initSendResponse$(),this.initChildren$(),this.initSubComponentSink$(),this.initVdom$(),this.initSinks()}return _createClass(a,[{key:"initIntent$",value:function initIntent$(){if(this.intent){if("function"!=typeof this.intent)throw new Error("Intent must be a function");if(this.intent$=this.intent(this.sources),!(this.intent$ instanceof _xstream.Stream)&&"object"!=_typeof(this.intent$))throw new Error("Intent must return either an action$ stream or map of event streams")}}},{key:"initAction$",value:function initAction$(){var a=this.sources&&this.sources[this.requestSourceName]||null;if(!this.intent$)return void(this.action$=_xstream["default"].never());var b;if(this.intent$ instanceof _xstream.Stream)b=this.intent$;else{var g=Object.entries(this.intent$).map(function(a){var b=_slicedToArray(a,2),c=b[0],d=b[1];return d.map(function(a){return{type:c,data:a}})});b=_xstream["default"].merge.apply(_xstream["default"],[_xstream["default"].never()].concat(_toConsumableArray(g)))}var c,d=b instanceof _xstream.Stream?b:b.apply&&b(this.sources)||_xstream["default"].never(),e=(0,_concat["default"])(_xstream["default"].of({type:BOOTSTRAP_ACTION}),d).compose((0,_delay["default"])(10));c=a&&"function"==typeof a.select?a.select("initial").flatten():_xstream["default"].never();var f=c.map(function(a){return{type:HYDRATE_ACTION,data:a}});this.action$=_xstream["default"].merge(e,f).compose(this.log(function(a){var b=a.type;return"Action triggered: <".concat(b,">")}))}},{key:"initResponse$",value:function initResponse$(){var a=this;if("undefined"!=typeof this.request){if("object"!=_typeof(this.request))throw new Error("The request parameter must be an object");var b=this.sources[this.requestSourceName],c=Object.entries(this.request),d=c.reduce(function(c,d){var e=_slicedToArray(d,2),f=e[0],g=e[1],h=f.toLowerCase();if("function"!=typeof b[h])throw new Error("Invalid method in request object:",f);var i=Object.entries(g),j=i.reduce(function(c,d){var e=_slicedToArray(d,2),f=e[0],g=e[1],i="[".concat(h.toUpperCase(),"]:").concat(f||"none"),j=_typeof(g);if("undefined"===j)throw new Error("Action for '".concat(f,"' route in request object not specified"));else if("string"!==j&&"function"!==j)throw new Error("Invalid action for '".concat(f,"' route: expecting string or function"));var k="function"===j?"[ FUNCTION ]":"< ".concat(g," >");console.log("[".concat(a.name,"] Adding ").concat(a.requestSourceName," route:"),h.toUpperCase(),"'".concat(f,"' <").concat(k,">"));var l=b[h](f).compose((0,_dropRepeats["default"])(function(c,a){return c.id==a.id})).map(function(b){if(!b||!b.id)throw new Error("No id found in request: ".concat(i));try{var c=b.id,d=b.params,e=b.body,f=b.cookies,h="function"===j?"FUNCTION":g,k={type:h,data:e,req:b,_reqId:c,_action:h},l=new Date().toISOString(),m=b.get?b.get("host"):"0.0.0.0";if(console.log("".concat(l," ").concat(m," ").concat(b.method," ").concat(b.url)),ENVIRONMENT.DEBUG&&a.action$.setDebugListener({next:function next(b){var c=b.type;return console.log("[".concat(a.name,"] Action from ").concat(a.requestSourceName," request: <").concat(c,">"))}}),"function"===j){var n=a.addCalculated(a.currentState),o=g(n,b);return _xstream["default"].of(_objectSpread(_objectSpread({},k),{},{data:o}))}a.action$.shamefullySendNext(k);var p=Object.entries(a.sources),q=p.reduce(function(a,b){var d=_slicedToArray(b,2),e=d[0],f=d[1];if(!f||"function"!=typeof f[REQUEST_SELECTOR_METHOD])return a;var g=f[REQUEST_SELECTOR_METHOD](c);return[].concat(_toConsumableArray(a),[g])},[]);return _xstream["default"].merge.apply(_xstream["default"],_toConsumableArray(q))}catch(a){console.error(a)}}).flatten();return[].concat(_toConsumableArray(c),[l])},[]),k=_xstream["default"].merge.apply(_xstream["default"],_toConsumableArray(j));return[].concat(_toConsumableArray(c),[k])},[]);if(this.response$=_xstream["default"].merge.apply(_xstream["default"],_toConsumableArray(d)).compose(this.log(function(b){return b._action?"[".concat(a.requestSourceName,"] response data received for Action: <").concat(b._action,">"):"[".concat(a.requestSourceName,"] response data received from FUNCTION")})),"undefined"!=typeof this.response&&"undefined"==typeof this.response$)throw new Error("Cannot have a response parameter without a request parameter")}}},{key:"initState",value:function initState(){var a=this;null!=this.model&&(void 0===this.model[INITIALIZE_ACTION]?this.model[INITIALIZE_ACTION]=_defineProperty({},this.stateSourceName,function(b,c){return _objectSpread({},a.addCalculated(c))}):Object.keys(this.model[INITIALIZE_ACTION]).forEach(function(b){b!==a.stateSourceName&&(console.warn("".concat(INITIALIZE_ACTION," can only be used with the ").concat(a.stateSourceName," source... disregarding ").concat(b)),delete a.model[INITIALIZE_ACTION][b])}))}},{key:"initModel$",value:function initModel$(){var a=this;if("undefined"==typeof this.model)return void(this.model$=this.sourceNames.reduce(function(b,a){return b[a]=_xstream["default"].never(),b},{}));var b={type:INITIALIZE_ACTION,data:this.initialState},c=this.initialState?(0,_concat["default"])(_xstream["default"].of(b),this.action$).compose((0,_delay["default"])(0)):this.action$,d=this.makeOnAction(c,!0,this.action$),e=this.makeOnAction(this.action$,!1,this.action$),f=Object.entries(this.model),g={};f.forEach(function(b){var c=_slicedToArray(b,2),f=c[0],h=c[1];if("function"==typeof h&&(h=_defineProperty({},a.stateSourceName,h)),"object"!==_typeof(h))throw new Error("Entry for each action must be an object: ".concat(a.name," ").concat(f));var i=Object.entries(h);i.forEach(function(b){var c=_slicedToArray(b,2),h=c[0],i=c[1],j=h==a.stateSourceName,k=j?d:e,l=k(f,i),m=l.compose(a.log(function(a){if(j)return"State reducer added: <".concat(f,">");var b=a&&(a.type||a.command||a.name||a.key||Array.isArray(a)&&"Array"||a);return"Data sent to [".concat(h,"]: <").concat(f,"> ").concat(b)}));Array.isArray(g[h])?g[h].push(m):g[h]=[m]})});var h=Object.entries(g).reduce(function(a,b){var c=_slicedToArray(b,2),d=c[0],e=c[1];return a[d]=_xstream["default"].merge.apply(_xstream["default"],[_xstream["default"].never()].concat(_toConsumableArray(e))),a},{});this.model$=h}},{key:"initSendResponse$",value:function initSendResponse$(){var a=this,b=_typeof(this.response);if("function"!=b&&"undefined"!=b)throw new Error("The response parameter must be a function");if("undefined"==b)return this.response$&&this.response$.subscribe({next:this.log(function(a){var b=a._reqId,c=a._action;return"Unhandled response for request: ".concat(c," ").concat(b)})}),void(this.sendResponse$=_xstream["default"].never());var c=this.response({select:function select(b){return"undefined"==typeof b?a.response$:(Array.isArray(b)||(b=[b]),a.response$.filter(function(a){var c=a._action;return!(0<b.length)||"FUNCTION"===c||b.includes(c)}))}});if("object"!=_typeof(c))throw new Error("The response function must return an object");var d=Object.entries(c),e=d.reduce(function(a,b){var c=_slicedToArray(b,2),d=c[0],e=c[1],f=e.map(function(a){var b=a._reqId,c=a._action,e=a.data;if(!b)throw new Error("No request id found for response for: ".concat(d));return{_reqId:b,_action:c,command:d,data:e}});return[].concat(_toConsumableArray(a),[f])},[]);this.sendResponse$=_xstream["default"].merge.apply(_xstream["default"],_toConsumableArray(e)).compose(this.log(function(b){var c=b._reqId,d=b._action;return"[".concat(a.requestSourceName,"] response sent for: <").concat(d,">")}))}},{key:"initChildren$",value:function initChildren$(){var a=this,b=this.sourceNames.reduce(function(b,c){return b[c]=c==a.DOMSourceName?{}:[],b},{});this.children$=Object.entries(this.children).reduce(function(b,c){var d=_slicedToArray(c,2),e=d[0],f=d[1],g=f(a.sources);return a.sourceNames.forEach(function(c){c==a.DOMSourceName?b[c][e]=g[c]:b[c].push(g[c])}),b},b)}},{key:"initSubComponentSink$",value:function initSubComponentSink$(){var a=this,b=_xstream["default"].create({start:function start(b){a.newSubComponentSinks=b.next.bind(b)},stop:function stop(){}});b.subscribe({next:function next(a){return a}}),this.subComponentSink$=b.filter(function(a){return 0<Object.keys(a).length})}},{key:"initVdom$",value:function initVdom$(){var a=this;if("function"!=typeof this.view)return void(this.vdom$=_xstream["default"].of(null));var b=this.sources[this.stateSourceName],c=_objectSpread({},this.children$[this.DOMSourceName]),d=b&&b.isolateSource(b,{get:function get(b){return a.addCalculated(b)}}),e=d&&d.stream||_xstream["default"].never();c.state=e,c[this.stateSourceName]=e,this.sources.props$&&(c.props=this.sources.props$),this.sources.children$&&(c.children=this.sources.children$);var f=Object.entries(c).reduce(function(a,b){var c=_slicedToArray(b,2),d=c[0],e=c[1];return a.names.push(d),a.streams.push(e),a},{names:[],streams:[]}),g=_xstream["default"].combine.apply(_xstream["default"],_toConsumableArray(f.streams)),h=g.compose((0,_debounce["default"])(1)).map(function(a){return f.names.reduce(function(b,c,d){return b[c]=a[d],b},{})}),i=Object.keys(this.components);this.vdom$=h.fold(function(b,c){var d=a.view(c)||{sel:"div",data:{},children:[]},e=getComponents(d,i),f=Object.entries(e),g={"::ROOT::":d};if(0===f.length)return g;var h=f.reduce(function(c,d){var e=_slicedToArray(d,2),f=e[0],g=e[1],h=g.sel,i=g.data,j=i.props||{},k=g.children||[],l=i.isCollection||!1,m=i.isSwitchable||!1;if(b[f]){var z=b[f];return c[f]=z,z.props$.shamefullySendNext(j),z.children$.shamefullySendNext(k),c}var n,o,p=a.components[h],q=_xstream["default"].create().startWith(j),r=_xstream["default"].create().startWith(k);if(l){var s;n=new _state2.StateSource(q.map(function(a){return a.value}).remember());var t=_objectSpread(_objectSpread({},a.sources),{},(s={},_defineProperty(s,a.stateSourceName,n),_defineProperty(s,"props$",q),_defineProperty(s,"children$",r),s)),u=a.components[i.component],v={get:function get(a){return a},set:function set(a){return a}};o=(0,_collection["default"])(u,v)(t)}else if(m);else{var w,x=function _lense(a){var b=a.state;if("undefined"==typeof b)return a;if("object"!==_typeof(b))return b;var c=_objectSpread({},a);return delete c.state,_objectSpread(_objectSpread({},c),b)};n=new _state2.StateSource(q.map(x));var A=_objectSpread(_objectSpread({},a.sources),{},(w={},_defineProperty(w,a.stateSourceName,n),_defineProperty(w,"props$",q),_defineProperty(w,"children$",r),w));o=p(A)}var y=o[a.DOMSourceName];return o[a.DOMSourceName]=n.stream.map(function(a){return y.compose((0,_debounce["default"])(2))}).flatten(),c[f]={sink$:o,props$:q,children$:r},c},g);return h},{}).map(function(b){var c=b["::ROOT::"],d=[],e=Object.entries(b).filter(function(a){var b=_slicedToArray(a,1),c=b[0];return"::ROOT::"!==c});if(0===e.length)return _xstream["default"].of(c);var f=e.reduce(function(b,c){var d=_slicedToArray(c,2),e=d[0],f=d[1];return Object.entries(f.sink$).forEach(function(c){var d=_slicedToArray(c,2),e=d[0],f=d[1];b[e]||(b[e]=[]),e!==a.DOMSourceName&&b[e].push(f)}),b},{}),g=Object.entries(f).reduce(function(a,b){var c=_slicedToArray(b,2),d=c[0],e=c[1];return a[d]=_xstream["default"].merge.apply(_xstream["default"],_toConsumableArray(e)),a},{});a.newSubComponentSinks(g);var h=e.map(function(b){var c=_slicedToArray(b,2),e=c[0],f=c[1];return d.push(e),f.sink$[a.DOMSourceName]});return 0===h.length?_xstream["default"].of(c):_xstream["default"].combine.apply(_xstream["default"],_toConsumableArray(h)).map(function(a){var b=a.reduce(function(a,b,c){return a[d[c]]=b,a},{}),e=injectComponents(c,b,i);return e})}).flatten().filter(function(a){return!!a}).remember().compose(this.log("View Rendered"))}},{key:"initSinks",value:function initSinks(){var a=this;this.sinks=this.sourceNames.reduce(function(b,c){if(c==a.DOMSourceName)return b;var d=a.subComponentSink$?a.subComponentSink$.map(function(a){return a[c]}).filter(function(a){return!!a}).flatten():_xstream["default"].never();return b[c]=c===a.stateSourceName?_xstream["default"].merge.apply(_xstream["default"],[a.model$[c]||_xstream["default"].never(),a.sources[a.stateSourceName].stream.filter(function(a){return!1})].concat(_toConsumableArray(a.children$[c]))):_xstream["default"].merge.apply(_xstream["default"],[a.model$[c]||_xstream["default"].never(),d].concat(_toConsumableArray(a.children$[c]))),b},{}),this.sinks[this.DOMSourceName]=this.vdom$,this.sinks[this.requestSourceName]=_xstream["default"].merge(this.sendResponse$,this.sinks[this.requestSourceName])}},{key:"makeOnAction",value:function makeOnAction(a){var b=this,c=!(1<arguments.length&&void 0!==arguments[1])||arguments[1],d=2<arguments.length?arguments[2]:void 0;return d=d||a,function(e,f){var g,h=a.filter(function(a){var b=a.type;return b==e});if("function"==typeof f)g=h.map(function(a){var g=function next(b,c){var f=a._reqId||a.req&&a.req.id,g=f?"object"==_typeof(c)?_objectSpread(_objectSpread({},c),{},{_reqId:f,_action:e}):{data:c,_reqId:f,_action:e}:c;setTimeout(function(){d.shamefullySendNext({type:b,data:g})},10)},h=a.data;if(h&&h.data&&h._reqId&&(h=h.data),c)return function(c){var d=b.isSubComponent?b.currentState:c,e=b.addCalculated(d),i=f(e,h,g,a.req);return i==ABORT?d:b.cleanupCalculated(i)};var i=b.addCalculated(b.currentState),j=f(i,h,g,a.req),k=_typeof(j),l=a._reqId||a.req&&a.req.id;if(["string","number","boolean","function"].includes(k))return j;if("object"==k)return _objectSpread(_objectSpread({},j),{},{_reqId:l,_action:e});if("undefined"==k)return console.warn("'undefined' value sent to ".concat(e)),j;throw new Error("Invalid reducer type for ".concat(e," ").concat(k))}).filter(function(a){return a!=ABORT});else if(void 0===f||!0===f)g=h.map(function(a){var b=a.data;return b});else{var i=f;g=h.mapTo(i)}return g}}},{key:"addCalculated",value:function addCalculated(a){if(!this.calculated||"object"!==_typeof(a))return a;if("object"!==_typeof(this.calculated))throw new Error("'calculated' parameter must be an object mapping calculated state field named to functions");var b=Object.entries(this.calculated),c=b.reduce(function(b,c){var d=_slicedToArray(c,2),f=d[0],g=d[1];if("function"!=typeof g)throw new Error("Missing or invalid calculator function for calculated field '".concat(f));try{b[f]=g(a)}catch(a){console.warn("Calculated field '".concat(f,"' threw an error during calculation: ").concat(a.message))}return b},{});return _objectSpread(_objectSpread({},a),c)}},{key:"cleanupCalculated",value:function cleanupCalculated(a){var b=this;if(this.storeCalculatedInState)return this.addCalculated(a);if(!this.calculated||!a||"object"!==_typeof(a))return a;var c=Object.keys(this.calculated),d=_objectSpread({},a);return c.forEach(function(a){b.initialState&&"undefined"!=typeof b.initialState[a]?d[a]=b.initialState[a]:delete d[a]}),d}}]),a}();function makeLog(a){return function(b){var c="function"==typeof b?b:function(a){return b};return function(b){return b.debug(function(b){("true"==ENVIRONMENT.DEBUG||!0===ENVIRONMENT.DEBUG)&&console.log("[".concat(a,"] ").concat(c(b)))})}}}function getComponents(a,b){var c,d=!!(2<arguments.length&&void 0!==arguments[2])&&arguments[2];if(!a)return{};if(null!==(c=a.data)&&void 0!==c&&c.componentsProcessed)return{};d||(a.data.componentsProcessed=!0);var e=a.sel,f=e&&"collection"===e.toLowerCase(),g=e&&"switchable"===e.toLowerCase(),h=e&&["collection","swtichable"].concat(_toConsumableArray(b)).includes(a.sel),i=a.data&&a.data.props||{},j=a.children||[],k={};if(h){var l=getComponentIdFromElement(a);if(f){if(!i.component)throw new Error("Collection element missing required 'component' property");if("string"!=typeof i.component)throw new Error("Invalid 'component' property of collection element: found ".concat(_typeof(i.component)," requires string"));if(!b.includes(i.component))throw new Error("Specified component for collection not found: ".concat(i.component));i.value&&Array.isArray(i.value)||console.warn("No valid array found in the 'value' property of collection ".concat(i.component,": no collection components will be created")),a.data.isCollection=!0,a.data.component=i.component}else if(g){if(!i.components)throw new Error("Switchable element missing required 'components' property");if("object"!==_typeof(i.components))throw new Error("Invalid 'components' property of switchable element: found ".concat(_typeof(i.components)," requires object mapping names to component factories"));var m=Object.values(i.components);if(!m.every(function(a){return"function"==typeof a}))throw new Error("One or more invalid component factories for switchable element is not a valid component factory");if(!i.current||"string"!=typeof i.current)throw new Error("Missing or invalid 'current' property for switchable element: found ".concat(_typeof(i.current)," requires string"));var n=Object.keys(i.components);if(!n.includes(i.current))throw new Error("Component '".concat(i.current,"' not found in switchable element"));a.data.isSwitchable=!0,a.data.components=i.components,a.data.currentComponent=i.current}else;k[l]=a}return 0<j.length&&j.map(function(a){return getComponents(a,b,!0)}).forEach(function(a){Object.entries(a).forEach(function(a){var b=_slicedToArray(a,2),c=b[0],d=b[1];return k[c]=d})}),k}function injectComponents(a,b,c){var d,e,f,g=!!(3<arguments.length&&arguments[3]!==void 0)&&arguments[3];if(a){if(null!==(d=a.data)&&void 0!==d&&d.componentsInjected)return a;!g&&a.data&&(a.data.componentsInjected=!0);var h=a.sel||"NO SELECTOR",i=["collection","swtichable"].concat(_toConsumableArray(c)).includes(h),j=null===a||void 0===a||null===(e=a.data)||void 0===e?void 0:e.isCollection,k=null===a||void 0===a||null===(f=a.data)||void 0===f?void 0:f.isSwitchable,l=a.data&&a.data.props||{},m=a.children||[];if(i){var n=getComponentIdFromElement(a),o=b[n];return j?(a.sel="div",delete a.elm,a.children=o,a):o}return 0<m.length?(a.children=m.map(function(a){return injectComponents(a,b,c)}).flat(),a):a}}function getComponentIdFromElement(a){var b=a.sel,c=a.data&&a.data.props||{},d=c.id&&JSON.stringify(c.id)||JSON.stringify(c);return"".concat(b,"::").concat(d)}
|
|
3
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports["default"]=eventBusDriver;var _xstream=_interopRequireDefault(require("xstream")),_adapt=require("@cycle/run/lib/adapt");function _interopRequireDefault(a){return a&&a.__esModule?a:{default:a}}function eventBusDriver(a){var b=new EventTarget;return a.subscribe({next:function next(a){return b.dispatchEvent(new CustomEvent("data",{detail:a}))}}),{select:function select(a){var c,d=Array.isArray(a)?a:[a],e=_xstream["default"].create({start:function start(e){c=function(b){var c=b.detail,f=c&&c.data||null;(!a||d.includes(c.type))&&e.next(f)},b.addEventListener("data",c)},stop:function stop(){return b.removeEventListener("data",c)}});return(0,_adapt.adapt)(e)}}}
|
|
4
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports["default"]=logDriver;function logDriver(a){a.addListener({next:function next(a){console.log(a)}})}
|
|
5
|
-
"use strict";var _xstream=_interopRequireDefault(require("xstream"));Object.defineProperty(exports,"__esModule",{value:!0}),exports["default"]=processForm;function _interopRequireDefault(a){return a&&a.__esModule?a:{default:a}}function _slicedToArray(a,b){return _arrayWithHoles(a)||_iterableToArrayLimit(a,b)||_unsupportedIterableToArray(a,b)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _iterableToArrayLimit(a,b){var c=null==a?null:"undefined"!=typeof Symbol&&a[Symbol.iterator]||a["@@iterator"];if(null!=c){var d,e,f=[],g=!0,h=!1;try{for(c=c.call(a);!(g=(d=c.next()).done)&&(f.push(d.value),!(b&&f.length===b));g=!0);}catch(a){h=!0,e=a}finally{try{g||null==c["return"]||c["return"]()}finally{if(h)throw e}}return f}}function _arrayWithHoles(a){if(Array.isArray(a))return a}function _createForOfIteratorHelper(a,b){var c="undefined"!=typeof Symbol&&a[Symbol.iterator]||a["@@iterator"];if(!c){if(Array.isArray(a)||(c=_unsupportedIterableToArray(a))||b&&a&&"number"==typeof a.length){c&&(a=c);var d=0,e=function(){};return{s:e,n:function n(){return d>=a.length?{done:!0}:{done:!1,value:a[d++]}},e:function e(a){throw a},f:e}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var f,g=!0,h=!1;return{s:function s(){c=c.call(a)},n:function n(){var a=c.next();return g=a.done,a},e:function e(a){h=!0,f=a},f:function f(){try{g||null==c["return"]||c["return"]()}finally{if(h)throw f}}}}function _toConsumableArray(a){return _arrayWithoutHoles(a)||_iterableToArray(a)||_unsupportedIterableToArray(a)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(a,b){if(a){if("string"==typeof a)return _arrayLikeToArray(a,b);var c=Object.prototype.toString.call(a).slice(8,-1);return"Object"===c&&a.constructor&&(c=a.constructor.name),"Map"===c||"Set"===c?Array.from(a):"Arguments"===c||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(c)?_arrayLikeToArray(a,b):void 0}}function _iterableToArray(a){if("undefined"!=typeof Symbol&&null!=a[Symbol.iterator]||null!=a["@@iterator"])return Array.from(a)}function _arrayWithoutHoles(a){if(Array.isArray(a))return _arrayLikeToArray(a)}function _arrayLikeToArray(a,b){(null==b||b>a.length)&&(b=a.length);for(var c=0,d=Array(b);c<b;c++)d[c]=a[c];return d}function processForm(a){var b=1<arguments.length&&arguments[1]!==void 0?arguments[1]:{},c=b.events,d=void 0===c?["input","submit"]:c,f=b.preventDefault;"string"==typeof d&&(d=[d]);var g=d.map(function(b){return a.events(b)}),h=_xstream["default"].merge.apply(_xstream["default"],_toConsumableArray(g));return h.map(function(a){(!(void 0!==f)||f)&&a.preventDefault();var b="submit"===a.type?a.srcElement:a.currentTarget,c=new FormData(b),d={};d.event=a,d.eventType=a.type;var e=b.querySelector("input[type=submit]:focus");if(e){var g=e.name,h=e.value;d[g||"submit"]=h}var i,j=_createForOfIteratorHelper(c.entries());try{for(j.s();!(i=j.n()).done;){var k=_slicedToArray(i.value,2),l=k[0],m=k[1];d[l]=m}}catch(a){j.e(a)}finally{j.f()}return d})}
|
|
6
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports["default"]=run;var _run2=require("@cycle/run"),_state=require("@cycle/state"),_dom=require("@cycle/dom"),_eventDriver=_interopRequireDefault(require("./eventDriver")),_logDriver=_interopRequireDefault(require("./logDriver"));function _interopRequireDefault(a){return a&&a.__esModule?a:{default:a}}function ownKeys(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function _objectSpread(a){for(var b,c=1;c<arguments.length;c++)b=null==arguments[c]?{}:arguments[c],c%2?ownKeys(Object(b),!0).forEach(function(c){_defineProperty(a,c,b[c])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(b)):ownKeys(Object(b)).forEach(function(c){Object.defineProperty(a,c,Object.getOwnPropertyDescriptor(b,c))});return a}function _defineProperty(a,b,c){return b in a?Object.defineProperty(a,b,{value:c,enumerable:!0,configurable:!0,writable:!0}):a[b]=c,a}function run(a){var b=1<arguments.length&&arguments[1]!==void 0?arguments[1]:{},c=(0,_state.withState)(a,"STATE"),d={EVENTS:_eventDriver["default"],DOM:(0,_dom.makeDOMDriver)("#root"),LOG:_logDriver["default"]},e=_objectSpread(_objectSpread({},d),b);return(0,_run2.run)(c,e)}
|
|
7
|
-
"use strict";function _typeof(a){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(a){return typeof a}:function(a){return a&&"function"==typeof Symbol&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a},_typeof(a)}Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"ABORT",{enumerable:!0,get:function get(){return _component.ABORT}}),Object.defineProperty(exports,"collection",{enumerable:!0,get:function get(){return _collection["default"]}}),Object.defineProperty(exports,"component",{enumerable:!0,get:function get(){return _component["default"]}}),Object.defineProperty(exports,"processForm",{enumerable:!0,get:function get(){return _processForm["default"]}}),Object.defineProperty(exports,"run",{enumerable:!0,get:function get(){return _run["default"]}}),Object.defineProperty(exports,"switchable",{enumerable:!0,get:function get(){return _switchable["default"]}});var _component=_interopRequireWildcard(require("./component")),_collection=_interopRequireDefault(require("./collection")),_switchable=_interopRequireDefault(require("./switchable")),_processForm=_interopRequireDefault(require("./extra/processForm")),_run=_interopRequireDefault(require("./extra/run"));function _interopRequireDefault(a){return a&&a.__esModule?a:{default:a}}function _getRequireWildcardCache(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(_getRequireWildcardCache=function(a){return a?c:b})(a)}function _interopRequireWildcard(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!==_typeof(a)&&"function"!=typeof a)return{default:a};var c=_getRequireWildcardCache(b);if(c&&c.has(a))return c.get(a);var d={},e=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var f in a)if("default"!=f&&Object.prototype.hasOwnProperty.call(a,f)){var g=e?Object.getOwnPropertyDescriptor(a,f):null;g&&(g.get||g.set)?Object.defineProperty(d,f,g):d[f]=a[f]}return d["default"]=a,c&&c.set(a,d),d}
|
|
8
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports["default"]=switchable;var _xstream=_interopRequireWildcard(require("xstream")),_dropRepeats=_interopRequireDefault(require("xstream/extra/dropRepeats"));function _interopRequireDefault(a){return a&&a.__esModule?a:{default:a}}function _getRequireWildcardCache(a){if("function"!=typeof WeakMap)return null;var b=new WeakMap,c=new WeakMap;return(_getRequireWildcardCache=function(a){return a?c:b})(a)}function _interopRequireWildcard(a,b){if(!b&&a&&a.__esModule)return a;if(null===a||"object"!==_typeof(a)&&"function"!=typeof a)return{default:a};var c=_getRequireWildcardCache(b);if(c&&c.has(a))return c.get(a);var d={},e=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var f in a)if("default"!=f&&Object.prototype.hasOwnProperty.call(a,f)){var g=e?Object.getOwnPropertyDescriptor(a,f):null;g&&(g.get||g.set)?Object.defineProperty(d,f,g):d[f]=a[f]}return d["default"]=a,c&&c.set(a,d),d}function _toConsumableArray(a){return _arrayWithoutHoles(a)||_iterableToArray(a)||_unsupportedIterableToArray(a)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _iterableToArray(a){if("undefined"!=typeof Symbol&&null!=a[Symbol.iterator]||null!=a["@@iterator"])return Array.from(a)}function _arrayWithoutHoles(a){if(Array.isArray(a))return _arrayLikeToArray(a)}function ownKeys(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function _objectSpread(a){for(var b,c=1;c<arguments.length;c++)b=null==arguments[c]?{}:arguments[c],c%2?ownKeys(Object(b),!0).forEach(function(c){_defineProperty(a,c,b[c])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(b)):ownKeys(Object(b)).forEach(function(c){Object.defineProperty(a,c,Object.getOwnPropertyDescriptor(b,c))});return a}function _defineProperty(a,b,c){return b in a?Object.defineProperty(a,b,{value:c,enumerable:!0,configurable:!0,writable:!0}):a[b]=c,a}function _slicedToArray(a,b){return _arrayWithHoles(a)||_iterableToArrayLimit(a,b)||_unsupportedIterableToArray(a,b)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(a,b){if(a){if("string"==typeof a)return _arrayLikeToArray(a,b);var c=Object.prototype.toString.call(a).slice(8,-1);return"Object"===c&&a.constructor&&(c=a.constructor.name),"Map"===c||"Set"===c?Array.from(a):"Arguments"===c||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(c)?_arrayLikeToArray(a,b):void 0}}function _arrayLikeToArray(a,b){(null==b||b>a.length)&&(b=a.length);for(var c=0,d=Array(b);c<b;c++)d[c]=a[c];return d}function _iterableToArrayLimit(a,b){var c=null==a?null:"undefined"!=typeof Symbol&&a[Symbol.iterator]||a["@@iterator"];if(null!=c){var d,e,f=[],g=!0,h=!1;try{for(c=c.call(a);!(g=(d=c.next()).done)&&(f.push(d.value),!(b&&f.length===b));g=!0);}catch(a){h=!0,e=a}finally{try{g||null==c["return"]||c["return"]()}finally{if(h)throw e}}return f}}function _arrayWithHoles(a){if(Array.isArray(a))return a}function _typeof(a){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(a){return typeof a}:function(a){return a&&"function"==typeof Symbol&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a},_typeof(a)}function switchable(a,b,c){var d=3<arguments.length&&arguments[3]!==void 0?arguments[3]:["DOM"],e=4<arguments.length&&arguments[4]!==void 0?arguments[4]:"STATE",f=_typeof(b);if(!b)throw new Error("Missing 'name$' parameter for switchable()");if(!("string"===f||"function"===f||b instanceof _xstream.Stream))throw new Error("Invalid 'name$' parameter for switchable(): expects Stream, String, or Function");if(b instanceof _xstream.Stream){var h=b.compose((0,_dropRepeats["default"])()).startWith(c).remember();return function(b){return _switchable(a,b,h,d)}}var g="function"===f&&b||function(a){return a[b]};return function(b){var f=b&&("string"==typeof e&&b[e]||b.STATE||b.state).stream;if(!f instanceof _xstream.Stream)throw new Error("Could not find the state source: ".concat(e));var h=f.map(g).filter(function(a){return"string"==typeof a}).compose((0,_dropRepeats["default"])()).startWith(c).remember();return _switchable(a,b,h,d,e)}}function _switchable(a,b,c){var d=3<arguments.length&&arguments[3]!==void 0?arguments[3]:["DOM"],e=4<arguments.length&&arguments[4]!==void 0?arguments[4]:"STATE";"string"==typeof d&&(d=[d]);var f=Object.entries(a).map(function(a){var d=_slicedToArray(a,2),f=d[0],g=d[1];if(b[e]){var h=b[e].stream,i=_xstream["default"].combine(c,h).filter(function(a){var b=_slicedToArray(a,2),c=b[0],d=b[1];return c==f}).map(function(a){var b=_slicedToArray(a,2),c=b[0],d=b[1];return d}).remember(),j=new b[e].constructor(i,b[e]._name);return[f,g(_objectSpread(_objectSpread({},b),{},{state:j}))]}return[f,g(b)]}),g=Object.keys(b).reduce(function(a,b){if(d.includes(b))a[b]=c.map(function(a){var c=f.find(function(b){var c=_slicedToArray(b,2),d=c[0],e=c[1];return d===a});return c&&c[1][b]||_xstream["default"].never()}).flatten().remember().startWith("");else{var e=f.filter(function(a){var c=_slicedToArray(a,2),d=c[0],e=c[1];return e[b]!==void 0}).map(function(a){var c=_slicedToArray(a,2),d=c[0],e=c[1];return e[b]});a[b]=_xstream["default"].merge.apply(_xstream["default"],_toConsumableArray(e))}return a},{});return g}
|