peryl 1.5.6 → 1.5.8
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/demo/hsml-app-form_demo.ts +22 -1
- package/demo/hsml-app-test_demo.ts +3 -0
- package/dist/browser-esmodule/hsml-app.js +30 -19
- package/dist/browser-esmodule/hsml-app.js.map +1 -1
- package/dist/browser-esmodule/index.js +33 -20
- package/dist/browser-esmodule/index.js.map +1 -1
- package/dist/browser-esmodule/validators-moment.js +3 -1
- package/dist/browser-esmodule/validators-moment.js.map +1 -1
- package/dist/browser-esmodule/validators-numeral.js +3 -1
- package/dist/browser-esmodule/validators-numeral.js.map +1 -1
- package/dist/browser-esmodule/validators.js +4 -2
- package/dist/browser-esmodule/validators.js.map +1 -1
- package/dist/browser-umd/hsml-app.js +1 -1
- package/dist/browser-umd/hsml-app.js.map +1 -1
- package/dist/browser-umd/index.js +1 -1
- package/dist/browser-umd/index.js.map +1 -1
- package/dist/browser-umd/validators-moment.js +1 -1
- package/dist/browser-umd/validators-moment.js.map +1 -1
- package/dist/browser-umd/validators-numeral.js +1 -1
- package/dist/browser-umd/validators-numeral.js.map +1 -1
- package/dist/browser-umd/validators.js +1 -1
- package/dist/browser-umd/validators.js.map +1 -1
- package/dist/demo/hsml-app-form-validation_demo.0a96208f.js +2 -0
- package/dist/demo/hsml-app-form-validation_demo.0a96208f.js.map +1 -0
- package/dist/demo/hsml-app-form-validation_demo.f978a37a.js +2 -0
- package/dist/demo/hsml-app-form-validation_demo.f978a37a.js.map +1 -0
- package/dist/demo/hsml-app-form-validation_demo.html +1 -1
- package/dist/demo/hsml-app-form_demo.9b60b61c.js +2 -0
- package/dist/demo/hsml-app-form_demo.9b60b61c.js.map +1 -0
- package/dist/demo/hsml-app-form_demo.c90fa370.js +2 -0
- package/dist/demo/hsml-app-form_demo.c90fa370.js.map +1 -0
- package/dist/demo/hsml-app-form_demo.html +1 -1
- package/dist/demo/hsml-app-test_demo.6a8e9136.js +2 -0
- package/dist/demo/hsml-app-test_demo.6a8e9136.js.map +1 -0
- package/dist/demo/hsml-app-test_demo.ab25579c.js +2 -0
- package/dist/demo/hsml-app-test_demo.ab25579c.js.map +1 -0
- package/dist/demo/hsml-app-test_demo.html +1 -1
- package/dist/demo/hsml-app-tictactoe_demo.8645fee1.js +2 -0
- package/dist/demo/hsml-app-tictactoe_demo.8645fee1.js.map +1 -0
- package/dist/demo/hsml-app-tictactoe_demo.d217c5b7.js +2 -0
- package/dist/demo/hsml-app-tictactoe_demo.d217c5b7.js.map +1 -0
- package/dist/demo/hsml-app-tictactoe_demo.html +1 -1
- package/dist/demo/hsml-app_demo.4bfc35c1.js +2 -0
- package/dist/demo/hsml-app_demo.4bfc35c1.js.map +1 -0
- package/dist/demo/hsml-app_demo.fce5f266.js +2 -0
- package/dist/demo/hsml-app_demo.fce5f266.js.map +1 -0
- package/dist/demo/hsml-app_demo.html +1 -1
- package/dist/demo/hsml-appel_demo.24f802cc.js +2 -0
- package/dist/demo/hsml-appel_demo.24f802cc.js.map +1 -0
- package/dist/demo/hsml-appel_demo.e6368c6c.js +2 -0
- package/dist/demo/hsml-appel_demo.e6368c6c.js.map +1 -0
- package/dist/demo/hsml-appel_demo.html +1 -1
- package/dist/demo/hsml-appi_demo.2e622dfe.js +2 -0
- package/dist/demo/hsml-appi_demo.2e622dfe.js.map +1 -0
- package/dist/demo/hsml-appi_demo.dd571d2a.js +2 -0
- package/dist/demo/hsml-appi_demo.dd571d2a.js.map +1 -0
- package/dist/demo/hsml-appi_demo.html +1 -1
- package/dist/demo/validators_demo.6a5913d0.js.map +1 -1
- package/dist/demo/validators_demo.8a773c14.js.map +1 -1
- package/dist/hsml-app.d.ts +3 -4
- package/dist/hsml-app.js +22 -13
- package/dist/hsml-app.js.map +1 -1
- package/dist/validators.d.ts +1 -0
- package/dist/validators.js +3 -2
- package/dist/validators.js.map +1 -1
- package/package.json +1 -1
- package/src/hsml-app.ts +26 -21
- package/src/validators.ts +3 -1
- package/dist/demo/hsml-app-form-validation_demo.15177b24.js +0 -2
- package/dist/demo/hsml-app-form-validation_demo.15177b24.js.map +0 -1
- package/dist/demo/hsml-app-form-validation_demo.4382a0eb.js +0 -2
- package/dist/demo/hsml-app-form-validation_demo.4382a0eb.js.map +0 -1
- package/dist/demo/hsml-app-form_demo.51d49351.js +0 -2
- package/dist/demo/hsml-app-form_demo.51d49351.js.map +0 -1
- package/dist/demo/hsml-app-form_demo.be641ffa.js +0 -2
- package/dist/demo/hsml-app-form_demo.be641ffa.js.map +0 -1
- package/dist/demo/hsml-app-test_demo.ed8a7474.js +0 -2
- package/dist/demo/hsml-app-test_demo.ed8a7474.js.map +0 -1
- package/dist/demo/hsml-app-test_demo.f40ed9d3.js +0 -2
- package/dist/demo/hsml-app-test_demo.f40ed9d3.js.map +0 -1
- package/dist/demo/hsml-app-tictactoe_demo.729eb1bc.js +0 -2
- package/dist/demo/hsml-app-tictactoe_demo.729eb1bc.js.map +0 -1
- package/dist/demo/hsml-app-tictactoe_demo.dd4b41dd.js +0 -2
- package/dist/demo/hsml-app-tictactoe_demo.dd4b41dd.js.map +0 -1
- package/dist/demo/hsml-app_demo.51bb6b99.js +0 -2
- package/dist/demo/hsml-app_demo.51bb6b99.js.map +0 -1
- package/dist/demo/hsml-app_demo.b99fc1e8.js +0 -2
- package/dist/demo/hsml-app_demo.b99fc1e8.js.map +0 -1
- package/dist/demo/hsml-appel_demo.2870f567.js +0 -2
- package/dist/demo/hsml-appel_demo.2870f567.js.map +0 -1
- package/dist/demo/hsml-appel_demo.32b75e99.js +0 -2
- package/dist/demo/hsml-appel_demo.32b75e99.js.map +0 -1
- package/dist/demo/hsml-appi_demo.1a389c5c.js +0 -2
- package/dist/demo/hsml-appi_demo.1a389c5c.js.map +0 -1
- package/dist/demo/hsml-appi_demo.3c7ab926.js +0 -2
- package/dist/demo/hsml-appi_demo.3c7ab926.js.map +0 -1
|
@@ -145,6 +145,16 @@ const view: HView<State, Actions> = function (state) {
|
|
|
145
145
|
]
|
|
146
146
|
]
|
|
147
147
|
]],
|
|
148
|
+
["p", [
|
|
149
|
+
["label", ["Data",
|
|
150
|
+
["input.w3-input", {
|
|
151
|
+
type: "file",
|
|
152
|
+
name: "file",
|
|
153
|
+
accept: "application/json,.json",
|
|
154
|
+
multiple: false
|
|
155
|
+
}]
|
|
156
|
+
]]
|
|
157
|
+
]],
|
|
148
158
|
["button.w3-btn.w3-blue", "Submit"]
|
|
149
159
|
]
|
|
150
160
|
]
|
|
@@ -163,7 +173,18 @@ const dispatcher: HDispatcher<State, Actions> = async function (action, state) {
|
|
|
163
173
|
break;
|
|
164
174
|
|
|
165
175
|
case Actions.change:
|
|
166
|
-
console.log("FormActions.change",
|
|
176
|
+
console.log("FormActions.change", action.data);
|
|
177
|
+
if (action.data.file) {
|
|
178
|
+
const file = action.data.file as File;
|
|
179
|
+
// Read the file as text
|
|
180
|
+
console.log("FormActions.change file text:", await file.text());
|
|
181
|
+
// Abuse response to read json data
|
|
182
|
+
console.log("FormActions.change file json:", JSON.stringify(await new Response(file).json(), null, 4));
|
|
183
|
+
// Read the file as ArrayBuffer to handle binary data
|
|
184
|
+
console.log("FormActions.change file ArrayBuffer:", new Uint8Array(await file.arrayBuffer()));
|
|
185
|
+
// Read large data chunk by chunk
|
|
186
|
+
console.log("FormActions.change file stream:", file.stream());
|
|
187
|
+
}
|
|
167
188
|
break;
|
|
168
189
|
|
|
169
190
|
case Actions.submit:
|
|
@@ -28,9 +28,11 @@ const counterDispatcher: HDispatcher<CounterState, CounterActions> = async funct
|
|
|
28
28
|
// console.log("happ counter:", this);
|
|
29
29
|
|
|
30
30
|
switch (action.type) {
|
|
31
|
+
|
|
31
32
|
case HAppActions.mount:
|
|
32
33
|
this.windowDispatchOn();
|
|
33
34
|
break;
|
|
35
|
+
|
|
34
36
|
case HAppActions.umount:
|
|
35
37
|
this.windowDispatchOff();
|
|
36
38
|
break;
|
|
@@ -48,6 +50,7 @@ const counterDispatcher: HDispatcher<CounterState, CounterActions> = async funct
|
|
|
48
50
|
state.count = state.count + action.data as number;
|
|
49
51
|
setTimeout(() => dispatch(CounterActions.dec, 1), 1e3); // async call
|
|
50
52
|
break;
|
|
53
|
+
|
|
51
54
|
case CounterActions.dec:
|
|
52
55
|
state.count = state.count - action.data as number;
|
|
53
56
|
break;
|
|
@@ -981,7 +981,6 @@ var $9adf8bc2f1ba310f$export$3dcd9fad60135c2c;
|
|
|
981
981
|
HAppActions["init"] = "happ-init";
|
|
982
982
|
HAppActions["mount"] = "happ-mount";
|
|
983
983
|
HAppActions["umount"] = "happ-umount";
|
|
984
|
-
HAppActions["update"] = "happ-update";
|
|
985
984
|
HAppActions["action"] = "happ-action";
|
|
986
985
|
HAppActions["attribute"] = "happ-attribute";
|
|
987
986
|
})($9adf8bc2f1ba310f$export$3dcd9fad60135c2c || ($9adf8bc2f1ba310f$export$3dcd9fad60135c2c = {}));
|
|
@@ -1069,6 +1068,28 @@ class $9adf8bc2f1ba310f$export$8cfef5dc37c46888 {
|
|
|
1069
1068
|
}
|
|
1070
1069
|
});
|
|
1071
1070
|
}
|
|
1071
|
+
_dispatchElement(type, data) {
|
|
1072
|
+
return $9adf8bc2f1ba310f$var$__awaiter(this, void 0, void 0, function*() {
|
|
1073
|
+
this.customElement && $9adf8bc2f1ba310f$var$elementDispatchCustomEvent(this.customElement, $9adf8bc2f1ba310f$export$3dcd9fad60135c2c.action, {
|
|
1074
|
+
type: type,
|
|
1075
|
+
data: data
|
|
1076
|
+
});
|
|
1077
|
+
!this.customElement && this.element && $9adf8bc2f1ba310f$var$elementDispatchCustomEvent(this.element, $9adf8bc2f1ba310f$export$3dcd9fad60135c2c.action, {
|
|
1078
|
+
type: type,
|
|
1079
|
+
data: data
|
|
1080
|
+
});
|
|
1081
|
+
});
|
|
1082
|
+
}
|
|
1083
|
+
_dispatchWindow(type, data) {
|
|
1084
|
+
return $9adf8bc2f1ba310f$var$__awaiter(this, void 0, void 0, function*() {
|
|
1085
|
+
window.dispatchEvent(new CustomEvent($9adf8bc2f1ba310f$export$3dcd9fad60135c2c.action, {
|
|
1086
|
+
detail: {
|
|
1087
|
+
type: type,
|
|
1088
|
+
data: data
|
|
1089
|
+
}
|
|
1090
|
+
}));
|
|
1091
|
+
});
|
|
1092
|
+
}
|
|
1072
1093
|
windowDispatchOn() {
|
|
1073
1094
|
if (!this._windowEventListener) {
|
|
1074
1095
|
this._windowEventListener = (event)=>{
|
|
@@ -1094,24 +1115,6 @@ class $9adf8bc2f1ba310f$export$8cfef5dc37c46888 {
|
|
|
1094
1115
|
this.dispatch = (type, data, scope)=>$9adf8bc2f1ba310f$var$__awaiter(this, void 0, void 0, function*() {
|
|
1095
1116
|
return this._dispatchAction(type, data, undefined, scope);
|
|
1096
1117
|
});
|
|
1097
|
-
this._dispatchElement = (type, data)=>$9adf8bc2f1ba310f$var$__awaiter(this, void 0, void 0, function*() {
|
|
1098
|
-
this.customElement && $9adf8bc2f1ba310f$var$elementDispatchCustomEvent(this.customElement, $9adf8bc2f1ba310f$export$3dcd9fad60135c2c.action, {
|
|
1099
|
-
type: type,
|
|
1100
|
-
data: data
|
|
1101
|
-
});
|
|
1102
|
-
!this.customElement && this.element && $9adf8bc2f1ba310f$var$elementDispatchCustomEvent(this.element, $9adf8bc2f1ba310f$export$3dcd9fad60135c2c.action, {
|
|
1103
|
-
type: type,
|
|
1104
|
-
data: data
|
|
1105
|
-
});
|
|
1106
|
-
});
|
|
1107
|
-
this._dispatchWindow = (type, data)=>$9adf8bc2f1ba310f$var$__awaiter(this, void 0, void 0, function*() {
|
|
1108
|
-
window.dispatchEvent(new CustomEvent($9adf8bc2f1ba310f$export$3dcd9fad60135c2c.action, {
|
|
1109
|
-
detail: {
|
|
1110
|
-
type: type,
|
|
1111
|
-
data: data
|
|
1112
|
-
}
|
|
1113
|
-
}));
|
|
1114
|
-
});
|
|
1115
1118
|
this.render = ()=>{
|
|
1116
1119
|
if (this.debug) {
|
|
1117
1120
|
const t0 = performance.now();
|
|
@@ -1322,6 +1325,14 @@ function $9adf8bc2f1ba310f$var$formInputData(el) {
|
|
|
1322
1325
|
};
|
|
1323
1326
|
else data = iel.checked ? String(iel.value) : null;
|
|
1324
1327
|
break;
|
|
1328
|
+
case "file":
|
|
1329
|
+
const files = iel.files;
|
|
1330
|
+
const value = files.length === 1 ? files[0] : files;
|
|
1331
|
+
if (iel.name) data = {
|
|
1332
|
+
[iel.name]: value
|
|
1333
|
+
};
|
|
1334
|
+
else data = value;
|
|
1335
|
+
break;
|
|
1325
1336
|
}
|
|
1326
1337
|
break;
|
|
1327
1338
|
case "SELECT":
|