peryl 1.5.21 → 1.5.22

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.
Files changed (47) hide show
  1. package/demo/hsml-appel_demo.html +1 -1
  2. package/demo/hsml-appel_demo.ts +14 -10
  3. package/dist/browser-esmodule/hsml-app.js +24 -25
  4. package/dist/browser-esmodule/hsml-app.js.map +1 -1
  5. package/dist/browser-esmodule/index.js +24 -25
  6. package/dist/browser-esmodule/index.js.map +1 -1
  7. package/dist/browser-umd/hsml-app.js +1 -1
  8. package/dist/browser-umd/hsml-app.js.map +1 -1
  9. package/dist/browser-umd/index.js +1 -1
  10. package/dist/browser-umd/index.js.map +1 -1
  11. package/dist/demo/hsml-app-bysquare_demo.html +1 -1
  12. package/dist/demo/hsml-app-form-validation_demo.html +1 -1
  13. package/dist/demo/hsml-app-form_demo.html +1 -1
  14. package/dist/demo/hsml-app-test_demo.html +1 -1
  15. package/dist/demo/hsml-app-tictactoe_demo.html +1 -1
  16. package/dist/demo/hsml-app_demo.html +1 -1
  17. package/dist/demo/hsml-appel_demo.39c5c95a.js +2 -0
  18. package/dist/demo/hsml-appel_demo.39c5c95a.js.map +1 -0
  19. package/dist/demo/hsml-appel_demo.fd0c6348.js +2 -0
  20. package/dist/demo/hsml-appel_demo.fd0c6348.js.map +1 -0
  21. package/dist/demo/hsml-appel_demo.html +1 -1
  22. package/dist/demo/hsml-appi_demo.26745db2.js +2 -0
  23. package/dist/demo/hsml-appi_demo.26745db2.js.map +1 -0
  24. package/dist/demo/hsml-appi_demo.eab18b83.js +2 -0
  25. package/dist/demo/hsml-appi_demo.eab18b83.js.map +1 -0
  26. package/dist/demo/hsml-appi_demo.html +1 -1
  27. package/dist/hsml-app.d.ts +8 -8
  28. package/dist/hsml-app.js +22 -17
  29. package/dist/hsml-app.js.map +1 -1
  30. package/package.json +1 -1
  31. package/src/hsml-app.ts +51 -29
  32. package/dist/browser-esmodule/google-analytics.js +0 -50
  33. package/dist/browser-esmodule/google-analytics.js.map +0 -1
  34. package/dist/browser-umd/google-analytics.js +0 -2
  35. package/dist/browser-umd/google-analytics.js.map +0 -1
  36. package/dist/demo/hsml-appel_demo.1da052b6.js +0 -2
  37. package/dist/demo/hsml-appel_demo.1da052b6.js.map +0 -1
  38. package/dist/demo/hsml-appel_demo.7fcc74a6.js +0 -2
  39. package/dist/demo/hsml-appel_demo.7fcc74a6.js.map +0 -1
  40. package/dist/demo/hsml-appi_demo.3d3d0e4e.js +0 -2
  41. package/dist/demo/hsml-appi_demo.3d3d0e4e.js.map +0 -1
  42. package/dist/demo/hsml-appi_demo.eac28520.js +0 -2
  43. package/dist/demo/hsml-appi_demo.eac28520.js.map +0 -1
  44. package/dist/google-analytics.d.ts +0 -21
  45. package/dist/google-analytics.js +0 -63
  46. package/dist/google-analytics.js.map +0 -1
  47. package/src/google-analytics.ts +0 -79
@@ -1 +1 @@
1
- {"version":3,"file":"hsml-app.js","sourceRoot":"","sources":["../src/hsml-app.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hsml-app.js","sourceRoot":"","sources":["../src/hsml-app.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,2CAA8C;AAmB9C,IAAY,WAMX;AAND,WAAY,WAAW;IACnB,iCAAkB,CAAA;IAClB,mCAAoB,CAAA;IACpB,qCAAsB,CAAA;IACtB,qCAAsB,CAAA;IACtB,2CAA4B,CAAA;AAChC,CAAC,EANW,WAAW,2BAAX,WAAW,QAMtB;AAYD,IAAY,eAGX;AAHD,WAAY,eAAe;IACvB,sCAAmB,CAAA;IACnB,oCAAiB,CAAA;AACrB,CAAC,EAHW,eAAe,+BAAf,eAAe,QAG1B;AAiBD,MAAM,QAAQ,GAAG,MAAM,CAAC,qBAAqB;IAKzC,UAAU,QAAkB,IAAI,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAE9E,MAAM,UAAU,GAAG,MAAM,CAAC,oBAAoB;IAK1C,UAAU,MAAc,IAAI,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AAE/D,MAAM,SAAS,GAAG,SAAS,CAAC;AAC5B,MAAM,WAAW,GAAG,WAAW,CAAC;AAChC,MAAM,SAAS,GAAG,SAAS,CAAC;AAC5B,MAAM,SAAS,GAAG,SAAS,CAAC;AAE5B,MAAM,IAAI,GAAG,MAAM,CAAC;AAmBpB,SAAgB,IAAI,CAAoC,KASvD;IACG,OAAO,IAAI,IAAI,CACX,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,EAAE,CAEX,CAAC;AACN,CAAC;AAnBD,oBAmBC;AA6BD,SAAgB,MAAM,CAAoC,KASzD;IACG,cAAc,CAAC,MAAM,CACjB,KAAK,CAAC,EAAE,EACR,MAAM,WAAY,SAAQ,WAAW;QACjC,MAAM,KAAK,kBAAkB;;YACzB,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;YAC5B,OAAO,CAAA,MAAA,KAAK,CAAC,UAAU,mCAAI,OAAO,KAAK,KAAK,QAAQ;gBAChD,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAe,CAAC;gBAC9B,CAAC,CAAC,EAAE,CAAC;QACb,CAAC;QAID;YACI,KAAK,EAAE,CAAC;YACR,IAAI,CAAC,OAAO,GAAG,IAAI,IAAI,CACnB,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,UAAU,EAChB,SAAS,EACT,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,EAAE,CAEX,CAAC;YACD,IAAI,CAAC,OAAe,CAAC,aAAa,GAAG,IAAI,CAAC;QAC/C,CAAC;QAED,iBAAiB;YAEb,IAAI,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;YACpC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,UAAiB,CAAC,CAAC;QAC/C,CAAC;QAED,oBAAoB;YAChB,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QAC1B,CAAC;QAED,eAAe;YACX,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QAC1B,CAAC;QAED,wBAAwB,CACpB,QAAgB,EAChB,MAAqB,EACrB,MAAqB;YAErB,IAAI,CAAC,OAAO,CAAC,QAAQ,CACjB,WAAW,CAAC,SAAgB,EAC5B,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QACtC,CAAC;KACJ,CACJ,CAAC;AACN,CAAC;AA7DD,wBA6DC;AAKD,MAAa,IAAI;IAmCb,YACI,KAAoB,EACpB,IAA+B,EAC/B,UAA4C,EAC5C,OAAiC,EACjC,KAAe,EACf,EAAW;QAxBN,SAAI,GAAmC,EAAE,CAAC;QA0CnD,aAAQ,GAA2B,CAC/B,IAAiB,EACjB,IAAU,EACV,KAAsB,EACT,EAAE;YACf,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QAC9D,CAAC,CAAA,CAAA;QAmFD,WAAM,GAAG,GAA2B,EAAE;YAClC,IAAI,IAAI,CAAC,KAAK,EAAE;gBACZ,MAAM,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;gBAC7B,IAAI,KAAK,CAAC;gBACV,IAAI;oBACA,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;iBACjC;gBAAC,OAAO,CAAC,EAAE;oBACR,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;iBACrC;gBACD,MAAM,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;gBAC7B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;gBACrD,OAAO,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,EAAE,CAAC;aACtB;iBAAM;gBACH,IAAI,KAAK,CAAC;gBACV,IAAI;oBACA,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;iBACjC;gBAAC,OAAO,CAAC,EAAE;oBACR,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;iBACrC;gBACD,OAAO,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,EAAE,CAAC;aACtB;QACL,CAAC,CAAA;QAKD,aAAQ,GAAG,CAAC,UAAuB,EAAE,IAAiB,EAAE,KAAY,EAAQ,EAAE;YAC1E,IAAI,GAAG,CAAC,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,WAAW,MAAK,QAAQ,CAAC;gBACnC,CAAC,CAAE,IAAuB,CAAC,KAAK,CAAC;gBACjC,CAAC,CAAC,IAAI,CAAC;YACX,IAAI,IAAI,KAAK,SAAS,IAAI,KAAK,EAAE;gBAC7B,IAAI,KAAK,YAAY,WAAW,EAAE;oBAC9B,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC;iBACvB;qBAAM;oBACH,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAQ,CAAC;iBAOjC;aACJ;YACD,IAAI,CAAC,eAAe,CAAC,UAAU,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QAClD,CAAC,CAAA;QAsBD,UAAK,GAAG,CAAC,CAA0B,EAAQ,EAAE;YACzC,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACpE,IAAI,EAAE,IAAK,EAAU,CAAC,IAAI,CAAC,EAAE;gBACzB,MAAM,CAAC,GAAI,EAAU,CAAC,IAAI,CAA6B,CAAC;gBACxD,CAAC,CAAC,MAAM,EAAE,CAAC;aACd;YACD,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;gBACpB,IAAY,CAAC,OAAO,GAAG,EAAE,CAAC;gBAC1B,EAAU,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;gBACzB,MAAM,KAAK,GAAI,IAAY,CAAC,MAAM,EAAE,CAAC;gBACrC,IAAI,CAAC,UAAU,CAAc,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;gBAC9C,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;aACzD;YACD,OAAO,IAAI,CAAC;QAChB,CAAC,CAAA;QAKD,WAAM,GAAG,GAAS,EAAE;YAChB,IAAI,IAAI,CAAC,OAAO,EAAE;gBACd,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;gBACvD,IAAI,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE;oBACjC,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;iBACtC;gBACD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC;gBAC1D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBACpC,MAAM,CAAC,GAAI,MAAM,CAAC,CAAC,CAAS,CAAC,IAAgC,CAAC;oBAC9D,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,MAAM,EAAE,CAAC;iBACf;gBACD,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,EAAuB;oBACjD,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;iBACrD;gBACD,OAAQ,IAAI,CAAC,OAAe,CAAC,IAAI,CAAC;gBACjC,IAAY,CAAC,OAAO,GAAG,SAAS,CAAC;aACrC;YACD,IAAI,IAAI,CAAC,qBAAqB,EAAE;gBAC5B,MAAM,CAAC,mBAAmB,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,qBAAqB,CAAC,CAAC;aAC9E;YACD,OAAO,IAAI,CAAC;QAChB,CAAC,CAAA;QAKD,WAAM,GAAG,GAAS,EAAE;YAChB,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;gBACpC,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC,GAAG,EAAE;oBAC9B,IAAI,IAAI,CAAC,OAAO,EAAE;wBACd,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;wBAC5B,IAAI,CAAC,UAAU,CAAc,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;qBAC3D;oBACD,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;gBAClC,CAAC,CAAC,CAAC;aACN;YACD,OAAO,IAAI,CAAC;QAChB,CAAC,CAAA;QAED,WAAM,GAAG,GAA0B,EAAE;YACjC,IAAI,IAAI,CAAC,OAAO,EAAE;gBACd,IAAI,IAAI,CAAC,YAAY,EAAE;oBACnB,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;oBAC9B,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;iBACjC;qBAAM;oBACH,OAAO,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;iBAClC;aACJ;YACD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;YAC5B,KAAK,CAAC,IAAI,CACN,CAAC,CAAU,EAAE,EAAE;gBACX,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;oBACd,IAAY,CAAC,OAAO,GAAG,CAAC,CAAC;oBACzB,CAAS,CAAC,IAAI,GAAG,IAAI,CAAC;oBACvB,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;iBACzD;YACL,CAAC,CAAC,CAAC;YACP,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC1B,CAAC,CAAA;QAED,WAAM,GAAG,GAAW,EAAE;YAClB,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;QACtD,CAAC,CAAA;QA3PG,IAAI,CAAC,EAAE,GAAG,EAAE,aAAF,EAAE,cAAF,EAAE,GAAI,IAAI,CAAC;QACrB,IAAI,CAAC,KAAK,GAAG,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,KAAK,CAAC;QAK5B,IAAI,CAAC,KAAK,GAAG,KAAK,EAAE,CAAC;QACrB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,UAAU,GAAG,UAAU,aAAV,UAAU,cAAV,UAAU,GAAI,CAAC,CAAO,CAAC,EAAE,EAAE,gDAAC,OAAA,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAA,GAAA,CAAC,CAAC;QAC5F,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAC5F,CAAC;IAkBa,eAAe,CACzB,IAA4C,EAC5C,IAAU,EACV,KAAa,EACb,KAAsB;;YAEtB,IAAI,IAAI,CAAC,KAAK,EAAE;gBACZ,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;gBACpD,MAAM,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;gBAC7B,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;gBAC/C,MAAM,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;gBAC7B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;aAC/D;iBAAM;gBACH,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;aAClD;QACL,CAAC;KAAA;IAEa,SAAS,CACnB,IAA4C,EAC5C,IAAS,EACT,KAAa,EACb,KAAsB;;YAEtB,IAAI,CAAC,KAAK,EAAE;gBACR,IAAI;oBACA,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,UAAU,CACpC,EAAE,IAAI,EAAE,IAAmB,EAAE,IAAI,EAAE,KAAK,EAAE,EAC1C,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,QAAQ,CAChB,CAAC;oBACF,IAAI,CAAC,UAAU,EAAE;wBACb,IAAI,CAAC,MAAM,EAAE,CAAC;qBACjB;iBACJ;gBAAC,OAAO,CAAC,EAAE;oBACR,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;iBACvC;aACJ;YACD,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACzD,KAAK,KAAK,QAAQ,IAAI,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC3D,CAAC;KAAA;IAEa,gBAAgB,CAC1B,IAA4C,EAC5C,IAAU;;YAEV,IAAI,CAAC,aAAa,IAAI,0BAA0B,CAAC,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;YACzG,CAAC,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,OAAO,IAAI,0BAA0B,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAExH,CAAC;KAAA;IAEa,eAAe,CACzB,IAA4C,EAC5C,IAAU;;YACV,MAAM,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;QAC1F,CAAC;KAAA;IAOD,kBAAkB;QACd,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE;YAC7B,IAAI,CAAC,qBAAqB,GAAG,CAAC,KAAY,EAAE,EAAE;gBAC1C,MAAM,MAAM,GAAI,KAAqB,CAAC,MAA8B,CAAC;gBACrE,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YACrD,CAAC,CAAC;YACF,MAAM,CAAC,gBAAgB,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,qBAAqB,CAAC,CAAC;SAC3E;aAAM;YACH,IAAI,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;SAClD;IACL,CAAC;IAmDO,UAAU,CACd,EAAW,EACX,IAA4B,EAC5B,GAA6B;QAE7B,IAAI,IAAI,CAAC,KAAK,EAAE;YACZ,MAAM,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;YAC7B,IAAA,2BAAe,EAAC,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;YAC/B,MAAM,EAAE,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;YAC7B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;SACrD;aAAM;YACH,IAAA,2BAAe,EAAC,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;SAClC;IACL,CAAC;;AA/ML,oBAySC;AAvSU,QAAG,GAAG,OAAO,CAAC,GAAG,AAAd,CAAe;AAClB,UAAK,GAAG,OAAO,CAAC,KAAK,AAAhB,CAAiB;AACtB,SAAI,GAAG,OAAO,CAAC,IAAI,AAAf,CAAgB;AAuS/B,SAAS,0BAA0B,CAC/B,EAAe,EACf,IAAiB,EACjB,IAAS;;IAET,EAAE,aAAF,EAAE,uBAAF,EAAE,CAAE,aAAa,CAAC,IAAI,WAAW,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC3D,MAAA,MAAC,EAAU,EAAC,KAAK,IAAI,EAAE,CAAC,mDAAG,IAAI,WAAW,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACxE,CAAC;AAsCD,SAAS,QAAQ,CAAC,CAAQ;IACtB,MAAM,EAAE,GAAG,CAAC,CAAC,MAAqB,CAAC;IACnC,QAAQ,EAAE,CAAC,QAAQ,EAAE;QACjB,KAAK,MAAM;YACN,CAAW,CAAC,cAAc,EAAE,CAAC;YAC9B,MAAM,IAAI,GAAa;gBACnB,IAAI,EAAE,EAAE;gBACR,UAAU,EAAE,EAAE;gBACd,KAAK,EAAE,IAAI;aACd,CAAC;YACF,MAAM,GAAG,GAAI,EAAsB,CAAC,QAAQ,CAAC;YAC7C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACjC,MAAM,SAAS,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gBACxC,IAAI,SAAS,IAAI,SAAS,CAAC,IAAI,EAAE;oBAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;oBAC3B,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC;oBAC5B,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC;oBAC9B,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,SAAS,EAAE;wBAC9B,QAAQ,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;qBAC1B;yBAAM,IAAI,OAAO,QAAQ,CAAC,IAAI,CAAC,KAAK,QAAQ,IAAI,QAAQ,CAAC,IAAI,CAAC,YAAY,MAAM,EAAE;wBAC/E,IAAI,KAAK,YAAY,KAAK,EAAE;4BACxB,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAW,EAAE,GAAG,KAAK,CAAC,CAAC;yBACzD;6BAAM;4BACH,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAW,EAAE,KAAe,CAAC,CAAC;yBAChE;qBACJ;yBAAM,IAAI,QAAQ,CAAC,IAAI,CAAC,YAAY,KAAK,EAAE;wBACxC,IAAI,KAAK,YAAY,KAAK,EAAE;4BACxB,QAAQ,CAAC,IAAI,CAAC,GAAI,QAAQ,CAAC,IAAI,CAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;yBACjE;6BAAM;4BACF,QAAQ,CAAC,IAAI,CAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;yBAC9C;qBACJ;yBAAM;wBACH,IAAI,KAAK,YAAY,KAAK,EAAE;4BACxB,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAW,EAAE,GAAG,KAAK,CAAC,CAAC;yBACzD;6BAAM;4BACH,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAW,EAAE,KAAK,CAAC,CAAC;yBACtD;qBACJ;oBACD,IAAI,QAAQ,CAAC,IAAI,CAAC,YAAY,KAAK,EAAE;wBACjC,QAAQ,CAAC,IAAI,CAAC,GAAI,QAAQ,CAAC,IAAI,CAAgB;6BAC1C,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;wBAC7B,IAAK,GAAG,CAAC,CAAC,CAAsB,CAAC,IAAI,KAAK,OAAO,EAAE;4BAC/C,QAAQ,CAAC,IAAI,CAAC,GAAI,QAAQ,CAAC,IAAI,CAAgB,CAAC,MAAM;gCAClD,CAAC,CAAE,QAAQ,CAAC,IAAI,CAAgB,CAAC,CAAC,CAAC;gCACnC,CAAC,CAAC,IAAI,CAAC;yBACd;qBACJ;oBACD,IAAI,SAAS,CAAC,UAAU,EAAE;wBACtB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,UAAU,CAAC;qBAChD;oBACD,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE;wBAClB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;qBACtB;iBACJ;aACJ;YACD,OAAO,IAAI,CAAC;QAChB;YACI,OAAO,aAAa,CAAC,EAAE,CAAC,CAAC;KAChC;AACL,CAAC;AAED,SAAS,aAAa,CAAC,EAAW;IAG9B,MAAM,GAAG,GAAG,EAAsB,CAAC;IACnC,IAAI,GAAG,CAAC,YAAY,EAAE;QAClB,IAAI,KAAK,GAAG,IAAI,CAAC;QACjB,KAAK,MAAM,GAAG,IAAI,GAAG,CAAC,QAAQ,EAAE;YAC5B,IAAI,GAAG,KAAK,aAAa,IAAI,GAAG,KAAK,OAAO,EAAE;gBAC1C,IAAK,GAAG,CAAC,QAAgB,CAAC,GAAG,CAAC,EAAE;oBAC5B,MAAM,IAAI,GAAI,GAAW,CAAC,YAAY,CAAC,CAAC;oBACxC,IAAI,IAAI,EAAE;wBACN,MAAM,GAAG,GAAI,IAAY,CAAC,GAAG,CAAC,CAAC;wBAC/B,IAAI,GAAG,EAAE;4BACL,GAAG,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;4BAE3B,KAAK,GAAG,KAAK,CAAC;4BACd,MAAM;yBACT;6BAAM;4BACH,GAAG,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;4BAE1B,MAAM;yBACT;qBACJ;iBACJ;aACJ;SACJ;QACD,IAAI,KAAK,EAAE;YACP,GAAG,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;SAE7B;KACJ;IAED,IAAI,IAA+B,CAAC;IACpC,QAAQ,EAAE,CAAC,QAAQ,EAAE;QACjB,KAAK,OAAO;YACR,MAAM,GAAG,GAAG,EAAsB,CAAC;YACnC,QAAQ,GAAG,CAAC,IAAI,EAAE;gBACd,KAAK,MAAM,CAAC;gBACZ,KAAK,QAAQ,CAAC;gBACd,KAAK,UAAU,CAAC;gBAChB,KAAK,OAAO,CAAC;gBACb,KAAK,QAAQ,CAAC;gBACd,KAAK,KAAK,CAAC;gBACX,KAAK,KAAK,CAAC;gBACX,KAAK,OAAO,CAAC;gBACb,KAAK,QAAQ,CAAC;gBACd,KAAK,QAAQ;oBACT,IAAI,GAAG;wBACH,IAAI,EAAE,GAAG,CAAC,IAAI;wBACd,KAAK,EAAE,GAAG,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK;wBAC1C,UAAU,EAAE,GAAG,CAAC,iBAAiB;wBACjC,KAAK,EAAE,GAAG,CAAC,QAAQ,CAAC,KAAK;qBAC5B,CAAC;oBACF,MAAM;gBACV,KAAK,QAAQ,CAAC;gBACd,KAAK,OAAO;oBACR,IAAI,GAAG;wBACH,IAAI,EAAE,GAAG,CAAC,IAAI;wBACd,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC;4BAC3B,CAAC,CAAC,IAAI;4BACN,CAAC,CAAC,GAAG,CAAC,aAAa;wBACvB,WAAW,EAAE,GAAG,CAAC,KAAK;wBACtB,UAAU,EAAE,GAAG,CAAC,iBAAiB;wBACjC,KAAK,EAAE,GAAG,CAAC,QAAQ,CAAC,KAAK;qBAC5B,CAAC;oBACF,MAAM;gBACV,KAAK,gBAAgB;oBACjB,IAAI,GAAG;wBACH,IAAI,EAAE,GAAG,CAAC,IAAI;wBACd,KAAK,EAAE,GAAG,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK;wBAC1C,WAAW,EAAE,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC;4BACjC,CAAC,CAAC,IAAI;4BACN,CAAC,CAAC,GAAG,CAAC,aAAa;wBACvB,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC;4BAC/B,CAAC,CAAC,IAAI;4BACN,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC;wBACjC,UAAU,EAAE,GAAG,CAAC,iBAAiB;wBACjC,KAAK,EAAE,GAAG,CAAC,QAAQ,CAAC,KAAK;qBAC5B,CAAC;oBACF,MAAM;gBACV,KAAK,MAAM,CAAC;gBACZ,KAAK,OAAO,CAAC;gBACb,KAAK,MAAM,CAAC;gBACZ,KAAK,MAAM;oBACP,IAAI,GAAG;wBACH,IAAI,EAAE,GAAG,CAAC,IAAI;wBACd,KAAK,EAAE,GAAG,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK;wBAC1C,WAAW,EAAE,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC;4BACjC,CAAC,CAAC,IAAI;4BACN,CAAC,CAAC,GAAG,CAAC,aAAa;wBACvB,SAAS,EAAE,GAAG,CAAC,WAAW;wBAC1B,UAAU,EAAE,GAAG,CAAC,iBAAiB;wBACjC,KAAK,EAAE,GAAG,CAAC,QAAQ,CAAC,KAAK;qBAC5B,CAAC;oBACF,MAAM;gBACV,KAAK,OAAO;oBACR,IAAI,GAAG;wBACH,IAAI,EAAE,GAAG,CAAC,IAAI;wBACd,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;wBACrC,WAAW,EAAE,GAAG,CAAC,KAAK;wBACtB,UAAU,EAAE,GAAG,CAAC,iBAAiB;wBACjC,KAAK,EAAE,GAAG,CAAC,QAAQ,CAAC,KAAK;qBAC5B,CAAC;oBACF,MAAM;gBACV,KAAK,UAAU;oBACX,IAAI,GAAG,CAAC,KAAK,KAAK,IAAI,EAAE;wBACpB,IAAI,GAAG;4BACH,IAAI,EAAE,GAAG,CAAC,IAAI;4BACd,KAAK,EAAE,GAAG,CAAC,OAAO;4BAClB,WAAW,EAAE,GAAG,CAAC,KAAK;4BACtB,UAAU,EAAE,GAAG,CAAC,iBAAiB;4BACjC,KAAK,EAAE,GAAG,CAAC,QAAQ,CAAC,KAAK;yBAC5B,CAAC;qBACL;yBAAM;wBACH,IAAI,GAAG;4BACH,IAAI,EAAE,GAAG,CAAC,IAAI;4BACd,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;4BAC7C,WAAW,EAAE,GAAG,CAAC,KAAK;4BACtB,UAAU,EAAE,GAAG,CAAC,iBAAiB;4BACjC,KAAK,EAAE,GAAG,CAAC,QAAQ,CAAC,KAAK;yBAC5B,CAAC;qBACL;oBACD,MAAM;gBACV,KAAK,MAAM;oBACP,MAAM,KAAK,GAAI,GAAW,CAAC,KAAiB,CAAC;oBAC7C,MAAM,KAAK,GAAQ,GAAG,CAAC,QAAQ;wBAC3B,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;wBACV,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;oBAC3C,IAAI,GAAG;wBACH,IAAI,EAAE,GAAG,CAAC,IAAI;wBACd,KAAK;wBACL,WAAW,EAAE,GAAG,CAAC,KAAK;wBACtB,UAAU,EAAE,GAAG,CAAC,iBAAiB;wBACjC,KAAK,EAAE,GAAG,CAAC,QAAQ,CAAC,KAAK;qBAC5B,CAAC;oBACF,MAAM;aACb;YACD,MAAM;QACV,KAAK,QAAQ;YACT,MAAM,GAAG,GAAG,EAAuB,CAAC;YACpC,IAAI,GAAG,CAAC,QAAQ,EAAE;gBACd,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;gBACjE,IAAI,GAAG;oBACH,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,KAAK,EAAE,MAAM;oBACb,WAAW,EAAE,GAAG,CAAC,KAAK;oBACtB,UAAU,EAAE,GAAG,CAAC,iBAAiB;oBACjC,KAAK,EAAE,GAAG,CAAC,QAAQ,CAAC,KAAK;iBAC5B,CAAC;aACL;iBAAM;gBACH,IAAI,GAAG;oBACH,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,KAAK,EAAE,GAAG,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK;oBAC1C,UAAU,EAAE,GAAG,CAAC,iBAAiB;oBACjC,KAAK,EAAE,GAAG,CAAC,QAAQ,CAAC,KAAK;iBAC5B,CAAC;aACL;YACD,MAAM;QACV,KAAK,UAAU;YACX,MAAM,GAAG,GAAG,EAAyB,CAAC;YACtC,IAAI,GAAG;gBACH,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,KAAK,EAAE,GAAG,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK;gBAC1C,UAAU,EAAE,GAAG,CAAC,iBAAiB;gBACjC,KAAK,EAAE,GAAG,CAAC,QAAQ,CAAC,KAAK;aAC5B,CAAC;YACF,MAAM;QACV,KAAK,QAAQ;YACT,MAAM,GAAG,GAAG,EAAuB,CAAC;YACpC,IAAI,GAAG;gBACH,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,KAAK,EAAE,GAAG,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK;gBAC1C,UAAU,EAAE,GAAG,CAAC,iBAAiB;gBACjC,KAAK,EAAE,GAAG,CAAC,QAAQ,CAAC,KAAK;aAC5B,CAAC;YACF,MAAM;KACb;IACD,OAAO,IAAI,CAAC;AAChB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "peryl",
3
- "version": "1.5.21",
3
+ "version": "1.5.22",
4
4
  "description": "PeRyL TypeScript library and tools for rapid web development",
5
5
  "keywords": [
6
6
  "PeRyL",
package/src/hsml-app.ts CHANGED
@@ -47,12 +47,14 @@ export type HDispatch<HActionType extends string> = (
47
47
  scope?: HDispatchScope | HDispatchScopes
48
48
  ) => Promise<void>;
49
49
 
50
+ type SkipUpdate = true;
51
+
50
52
  export type HDispatcher<State, HActionType extends string> = (
51
53
  // this: HApp<State, HActionType>,
52
54
  action: HAction<HActionType | HAppAction | HAppActions>,
53
55
  state: State,
54
56
  dispatch: HDispatch<HActionType>
55
- ) => Promise<void>;
57
+ ) => Promise<void | SkipUpdate>;
56
58
 
57
59
  const schedule = window.requestAnimationFrame ||
58
60
  // window.webkitRequestAnimationFrame ||
@@ -81,7 +83,8 @@ export interface HAppI<State, HActionType extends string> {
81
83
  dispatcher: HDispatcher<State, HActionType>;
82
84
  element?: Element | string | null;
83
85
  debug?: boolean;
84
- name?: string;
86
+ /** Pattern ^[a-z][a-z0-9-]{0,30}[a-z0-9]$ */
87
+ id?: string;
85
88
  attributes?: string[];
86
89
  }
87
90
 
@@ -97,7 +100,8 @@ export function happ<State, HActionType extends string>(hAppI: {
97
100
  dispatcher: HDispatcher<State, HActionType>;
98
101
  element: Element | string | null;
99
102
  debug?: boolean;
100
- name?: string;
103
+ /** Pattern ^[a-z][a-z0-9-]{0,30}[a-z0-9]$ */
104
+ id?: string;
101
105
  // attributes?: string[];
102
106
  }) {
103
107
  return new HApp<State, HActionType>(
@@ -106,7 +110,7 @@ export function happ<State, HActionType extends string>(hAppI: {
106
110
  hAppI.dispatcher,
107
111
  hAppI.element,
108
112
  hAppI.debug,
109
- hAppI.name
113
+ hAppI.id
110
114
  // hAppI!.attributes
111
115
  );
112
116
  }
@@ -117,8 +121,9 @@ export function happ<State, HActionType extends string>(hAppI: {
117
121
  // hAppI: Class<HAppI<State, HActionType>>,
118
122
  // element?: Element | string | null,
119
123
  // debug? boolean,
120
- // name?: string,
121
- // attributes: string[]
124
+ // /** Pattern ^[a-z][a-z0-9-]{0,30}[a-z0-9]$ */
125
+ // id?: string
126
+ // // attributes?: string[]
122
127
  // ) {
123
128
  // const hapi = new hAppI();
124
129
  // return new HApp<State, HActionType>(
@@ -141,17 +146,20 @@ export function happel<State, HActionType extends string>(hAppI: {
141
146
  state: HState<State>;
142
147
  view: HView<State, HActionType>;
143
148
  dispatcher: HDispatcher<State, HActionType>;
144
- /** Element suffix name, element name patern is `happ-${name}` */
145
- name: string;
149
+ /** Pattern ^[a-z]{0,10}-[a-z0-9-]{0,30}[a-z0-9]$ */
150
+ id: string;
146
151
  /** Element attribute list */
147
- attributes: string[];
152
+ attributes?: string[];
148
153
  debug?: boolean;
149
154
  }): void {
150
155
  customElements.define(
151
- `${HAPP}-${hAppI.name}`,
156
+ hAppI.id,
152
157
  class HAppElement extends HTMLElement {
153
158
  static get observedAttributes() {
154
- return hAppI.attributes;
159
+ const state = hAppI.state();
160
+ return hAppI.attributes ?? typeof state === "object"
161
+ ? Object.keys(state as object)
162
+ : [];
155
163
  }
156
164
 
157
165
  private _happel: HApp<State, HActionType>;
@@ -164,8 +172,8 @@ export function happel<State, HActionType extends string>(hAppI: {
164
172
  hAppI.dispatcher,
165
173
  undefined,
166
174
  hAppI.debug,
167
- hAppI.name,
168
- hAppI.attributes
175
+ hAppI.id
176
+ // hAppI.attributes
169
177
  );
170
178
  (this._happel as any).customElement = this;
171
179
  }
@@ -212,8 +220,9 @@ export class HApp<State, HActionType extends string> implements HHandlerCtx<HAct
212
220
 
213
221
  debug: boolean;
214
222
 
215
- readonly name: string;
216
- readonly attributes: string[];
223
+ /** Pattern ^[a-z][a-z0-9-]{0,30}[a-z0-9]$ */
224
+ readonly id: string;
225
+ // readonly attributes?: string[];
217
226
 
218
227
  readonly element?: HTMLElement;
219
228
  readonly refs: { [key: string]: HTMLElement } = {};
@@ -226,21 +235,32 @@ export class HApp<State, HActionType extends string> implements HHandlerCtx<HAct
226
235
 
227
236
  private _windowActionListener?: (event: Event) => void;
228
237
 
238
+ /**
239
+ * @param state State init function
240
+ * @param view View renderer function
241
+ * @param dispatcher Dispatcher function
242
+ * @param element Root element
243
+ * @param debug Debug mode
244
+ * @param id HApp ID, pattern "^[a-z][a-z0-9-]{0,30}[a-z0-9]$"
245
+ */
229
246
  constructor(
230
247
  state: HState<State>,
231
248
  view: HView<State, HActionType>,
232
249
  dispatcher?: HDispatcher<State, HActionType>,
233
250
  element?: Element | string | null,
234
251
  debug?: boolean ,
235
- name?: string,
236
- attributes?: string[]
252
+ id?: string,
253
+ // attributes?: string[]
237
254
  ) {
255
+ this.id = id ?? HAPP;
238
256
  this.debug = debug ?? false;
239
- this.name = name ?? HAPP;
240
- this.attributes = attributes ?? [];
257
+ // this.attributes = attributes ?? [];
258
+ // this.attributes = attributes ?? typeof state() === "object"
259
+ // ? Object.keys(state() as object)
260
+ // : [];
241
261
  this.state = state();
242
262
  this.view = view;
243
- this.dispatcher = dispatcher ?? (async (a) => HApp.log(this.name, msgAction, a.type, a.data));
263
+ this.dispatcher = dispatcher ?? (async (a) => HApp.log(this.id, msgAction, a.type, a.data));
244
264
  this._dispatchAction(HAppActions.init, this).then(() => element && this.mount(element));
245
265
  }
246
266
 
@@ -267,11 +287,11 @@ export class HApp<State, HActionType extends string> implements HHandlerCtx<HAct
267
287
  scope?: HDispatchScope
268
288
  ): Promise<void> {
269
289
  if (this.debug) {
270
- HApp.log(this.name, msgAction, { type, data, event });
290
+ HApp.log(this.id, msgAction, { type, data, event });
271
291
  const t0 = performance.now();
272
292
  await this._dispatch(type, data, event, scope);
273
293
  const t1 = performance.now();
274
- HApp.log(this.name, msgDispatch, `${t1 - t0} ms`, this.state);
294
+ HApp.log(this.id, msgDispatch, `${t1 - t0} ms`, this.state);
275
295
  } else {
276
296
  await this._dispatch(type, data, event, scope);
277
297
  }
@@ -285,15 +305,17 @@ export class HApp<State, HActionType extends string> implements HHandlerCtx<HAct
285
305
  ): Promise<void> {
286
306
  if (!scope) {
287
307
  try {
288
- await this.dispatcher(
308
+ const skipUpdate = await this.dispatcher(
289
309
  { type: type as HActionType, data, event },
290
310
  this.state,
291
311
  this.dispatch
292
312
  );
313
+ if (!skipUpdate) {
314
+ this.update();
315
+ }
293
316
  } catch (e) {
294
- HApp.error(this.name, msgDispatch, e);
317
+ HApp.error(this.id, msgDispatch, e);
295
318
  }
296
- this.update();
297
319
  }
298
320
  scope === "element" && this._dispatchElement(type, data);
299
321
  scope === "window" && this._dispatchWindow(type, data);
@@ -341,17 +363,17 @@ export class HApp<State, HActionType extends string> implements HHandlerCtx<HAct
341
363
  try {
342
364
  hsmls = this.view(this.state);
343
365
  } catch (e) {
344
- HApp.error(this.name, msgRender, e);
366
+ HApp.error(this.id, msgRender, e);
345
367
  }
346
368
  const t1 = performance.now();
347
- HApp.log(this.name, msgRender, `${t1 - t0} ms`, hsmls);
369
+ HApp.log(this.id, msgRender, `${t1 - t0} ms`, hsmls);
348
370
  return hsmls ?? [];
349
371
  } else {
350
372
  let hsmls;
351
373
  try {
352
374
  hsmls = this.view(this.state);
353
375
  } catch (e) {
354
- HApp.error(this.name, msgRender, e);
376
+ HApp.error(this.id, msgRender, e);
355
377
  }
356
378
  return hsmls ?? [];
357
379
  }
@@ -389,7 +411,7 @@ export class HApp<State, HActionType extends string> implements HHandlerCtx<HAct
389
411
  const t0 = performance.now();
390
412
  hsmls2idomPatch(el, hsml, ctx);
391
413
  const t1 = performance.now();
392
- HApp.log(this.name, msgUpdate, `${t1 - t0} ms`, el);
414
+ HApp.log(this.id, msgUpdate, `${t1 - t0} ms`, el);
393
415
  } else {
394
416
  hsmls2idomPatch(el, hsml, ctx);
395
417
  }
@@ -1,50 +0,0 @@
1
- class $571ecd486c0e84ba$export$2c816677949efbbf {
2
- static init(trackingId, dimensions) {
3
- $571ecd486c0e84ba$export$2c816677949efbbf.ga = new $571ecd486c0e84ba$export$2c816677949efbbf(trackingId, dimensions);
4
- }
5
- static pageview(path, title) {
6
- if ($571ecd486c0e84ba$export$2c816677949efbbf.ga) $571ecd486c0e84ba$export$2c816677949efbbf.ga.pageview(path, title);
7
- }
8
- static event(name, parameters) {
9
- if ($571ecd486c0e84ba$export$2c816677949efbbf.ga) $571ecd486c0e84ba$export$2c816677949efbbf.ga.event(name, parameters);
10
- }
11
- static set(parameters) {
12
- if ($571ecd486c0e84ba$export$2c816677949efbbf.ga) $571ecd486c0e84ba$export$2c816677949efbbf.ga.set(parameters);
13
- }
14
- constructor(trackingId, dimensions){
15
- this._trackingId = trackingId;
16
- this._load();
17
- }
18
- pageview(path, title) {
19
- if (this._trackingId) self.gtag("config", this._trackingId, {
20
- page_path: path,
21
- page_title: title
22
- });
23
- }
24
- event(name, parameters) {
25
- if (this._trackingId) self.gtag("event", name, parameters);
26
- }
27
- set(parameters) {
28
- if (this._trackingId) self.gtag("set", parameters);
29
- }
30
- _load() {
31
- if (this._trackingId) {
32
- const script = document.createElement("script");
33
- script.async = true;
34
- script.src = `https://www.googletagmanager.com/gtag/js?id=${this._trackingId}`;
35
- document.getElementsByTagName("head")[0].appendChild(script);
36
- const script1 = document.createElement("script");
37
- script1.textContent = `
38
- window.dataLayer = window.dataLayer || [];
39
- function gtag(){dataLayer.push(arguments);}
40
- gtag('js', new Date());
41
- gtag('config', '${this._trackingId}');
42
- `;
43
- document.getElementsByTagName("head")[0].appendChild(script1);
44
- }
45
- }
46
- }
47
-
48
-
49
- export {$571ecd486c0e84ba$export$2c816677949efbbf as GA};
50
- //# sourceMappingURL=google-analytics.js.map
@@ -1 +0,0 @@
1
- {"mappings":"AACM,MAAO;IAIT,OAAO,KAAK,UAAkB,EAAE,UAAmB,EAAnD;QACI,0CAAG,EAAE,GAAG,IAAI,0CAAG,YAAY;IAC/B;IAEA,OAAO,SAAS,IAAY,EAAE,KAAc,EAA5C;QACI,IAAI,0CAAG,EAAE,EACL,0CAAG,EAAE,CAAC,QAAQ,CAAC,MAAM;IAE7B;IAEA,OAAO,MAAM,IAAY,EAAE,UAAoC,EAA/D;QACI,IAAI,0CAAG,EAAE,EACL,0CAAG,EAAE,CAAC,KAAK,CAAC,MAAM;IAE1B;IAEA,OAAO,IAAI,UAAmC,EAA9C;QACI,IAAI,0CAAG,EAAE,EACL,0CAAG,EAAE,CAAC,GAAG,CAAC;IAElB;IAIA,YAAY,UAAkB,EAAE,UAAmB,CAAnD;QACI,IAAI,CAAC,WAAW,GAAG;QACnB,IAAI,CAAC,KAAK;IACd;IAEA,SAAS,IAAY,EAAE,KAAc,EAArC;QACI,IAAI,IAAI,CAAC,WAAW,EACf,KAAa,IAAI,CAAC,UAAU,IAAI,CAAC,WAAW,EACzC;YACI,WAAW;YACX,YAAY;QACf;IAEb;IAEA,MAAM,IAAY,EAAE,UAAoC,EAAxD;QACI,IAAI,IAAI,CAAC,WAAW,EACf,KAAa,IAAI,CAAC,SAAS,MAAM;IAE1C;IAEA,IAAI,UAAmC,EAAvC;QACI,IAAI,IAAI,CAAC,WAAW,EACf,KAAa,IAAI,CAAC,OAAO;IAElC;IAEQ,QAAA;QACJ,IAAI,IAAI,CAAC,WAAW,EAAE;YAClB,MAAM,SAAS,SAAS,aAAa,CAAC;YACtC,OAAO,KAAK,GAAG,IAAI;YACnB,OAAO,GAAG,GAAG,CAAA,4CAAA,EAA+C,IAAI,CAAC,WAAW,CAAA,CAAE;YAC9E,SAAS,oBAAoB,CAAC,OAAO,CAAC,EAAE,CAAC,WAAW,CAAC;YAErD,MAAM,UAAU,SAAS,aAAa,CAAC;YACvC,QAAQ,WAAW,GAAG,CAAtB;;;;gCAIsB,EAAA,IAAI,CAAC,WAAW,CAAhB;YACrB,CAAA;YACD,SAAS,oBAAoB,CAAC,OAAO,CAAC,EAAE,CAAC,WAAW,CAAC;QACxD,CAAA;IACL;AAEH","sources":["src/google-analytics.ts"],"sourcesContent":["\nexport class GA {\n\n static ga: GA;\n\n static init(trackingId: string, dimensions?: Object) {\n GA.ga = new GA(trackingId, dimensions);\n }\n\n static pageview(path: string, title?: string): void {\n if (GA.ga) {\n GA.ga.pageview(path, title);\n }\n }\n\n static event(name: string, parameters?: { [k: string]: string }): void {\n if (GA.ga) {\n GA.ga.event(name, parameters);\n }\n }\n\n static set(parameters: { [k: string]: string }): void {\n if (GA.ga) {\n GA.ga.set(parameters);\n }\n }\n\n private _trackingId: string;\n\n constructor(trackingId: string, dimensions?: Object) {\n this._trackingId = trackingId;\n this._load();\n }\n\n pageview(path: string, title?: string): void {\n if (this._trackingId) {\n (self as any).gtag(\"config\", this._trackingId,\n {\n page_path: path,\n page_title: title\n });\n }\n }\n\n event(name: string, parameters?: { [k: string]: string }): void {\n if (this._trackingId) {\n (self as any).gtag(\"event\", name, parameters);\n }\n }\n\n set(parameters: { [k: string]: string }): void {\n if (this._trackingId) {\n (self as any).gtag(\"set\", parameters);\n }\n }\n\n private _load(): void {\n if (this._trackingId) {\n const script = document.createElement(\"script\");\n script.async = true;\n script.src = `https://www.googletagmanager.com/gtag/js?id=${this._trackingId}`;\n document.getElementsByTagName(\"head\")[0].appendChild(script);\n\n const script1 = document.createElement(\"script\");\n script1.textContent = `\n window.dataLayer = window.dataLayer || [];\n function gtag(){dataLayer.push(arguments);}\n gtag('js', new Date());\n gtag('config', '${this._trackingId}');\n `;\n document.getElementsByTagName(\"head\")[0].appendChild(script1);\n }\n }\n\n}\n\n// const ga = new GA(\"track-id\");\n// GA.ga = ga;\n// ga.pageview(\"my-page\");\n"],"names":[],"version":3,"file":"google-analytics.js.map"}
@@ -1,2 +0,0 @@
1
- !function(t,e){if("object"==typeof exports&&"object"==typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var a=e();for(var n in a)("object"==typeof exports?exports:t)[n]=a[n]}}(self,(function(){return function(){"use strict";var t={};return function(){var e=t;Object.defineProperty(e,"__esModule",{value:!0}),e.GA=void 0;class a{static init(t,e){a.ga=new a(t,e)}static pageview(t,e){a.ga&&a.ga.pageview(t,e)}static event(t,e){a.ga&&a.ga.event(t,e)}static set(t){a.ga&&a.ga.set(t)}constructor(t,e){this._trackingId=t,this._load()}pageview(t,e){this._trackingId&&self.gtag("config",this._trackingId,{page_path:t,page_title:e})}event(t,e){this._trackingId&&self.gtag("event",t,e)}set(t){this._trackingId&&self.gtag("set",t)}_load(){if(this._trackingId){const t=document.createElement("script");t.async=!0,t.src=`https://www.googletagmanager.com/gtag/js?id=${this._trackingId}`,document.getElementsByTagName("head")[0].appendChild(t);const e=document.createElement("script");e.textContent=`\n window.dataLayer = window.dataLayer || [];\n function gtag(){dataLayer.push(arguments);}\n gtag('js', new Date());\n gtag('config', '${this._trackingId}');\n `,document.getElementsByTagName("head")[0].appendChild(e)}}}e.GA=a}(),t}()}));
2
- //# sourceMappingURL=google-analytics.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"google-analytics.js","mappings":"CAAA,SAA2CA,EAAMC,GAChD,GAAsB,iBAAZC,SAA0C,iBAAXC,OACxCA,OAAOD,QAAUD,SACb,GAAqB,mBAAXG,QAAyBA,OAAOC,IAC9CD,OAAO,GAAIH,OACP,CACJ,IAAIK,EAAIL,IACR,IAAI,IAAIM,KAAKD,GAAuB,iBAAZJ,QAAuBA,QAAUF,GAAMO,GAAKD,EAAEC,EACvE,CACA,CATD,CASGC,MAAM,WACT,O,wHCTA,MAAaC,EAITC,YAAYC,EAAoBC,GAC5BH,EAAGI,GAAK,IAAIJ,EAAGE,EAAYC,EAC/B,CAEAF,gBAAgBI,EAAcC,GACtBN,EAAGI,IACHJ,EAAGI,GAAGG,SAASF,EAAMC,EAE7B,CAEAL,aAAaO,EAAcC,GACnBT,EAAGI,IACHJ,EAAGI,GAAGM,MAAMF,EAAMC,EAE1B,CAEAR,WAAWQ,GACHT,EAAGI,IACHJ,EAAGI,GAAGO,IAAIF,EAElB,CAIAG,YAAYV,EAAoBC,GAC5BU,KAAKC,YAAcZ,EACnBW,KAAKE,OACT,CAEAR,SAASF,EAAcC,GACfO,KAAKC,aACJf,KAAaiB,KAAK,SAAUH,KAAKC,YAC9B,CACIG,UAAWZ,EACXa,WAAYZ,GAG5B,CAEAI,MAAMF,EAAcC,GACZI,KAAKC,aACJf,KAAaiB,KAAK,QAASR,EAAMC,EAE1C,CAEAE,IAAIF,GACII,KAAKC,aACJf,KAAaiB,KAAK,MAAOP,EAElC,CAEQM,QACJ,GAAIF,KAAKC,YAAa,CAClB,MAAMK,EAASC,SAASC,cAAc,UACtCF,EAAOG,OAAQ,EACfH,EAAOI,IAAM,+CAA+CV,KAAKC,cACjEM,SAASI,qBAAqB,QAAQ,GAAGC,YAAYN,GAErD,MAAMO,EAAUN,SAASC,cAAc,UACvCK,EAAQC,YAAc,uMAIAd,KAAKC,+BAE3BM,SAASI,qBAAqB,QAAQ,GAAGC,YAAYC,E,CAE7D,EAvEJ,M","sources":["webpack://peryl/webpack/universalModuleDefinition","webpack://peryl/./src/google-analytics.ts"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse {\n\t\tvar a = factory();\n\t\tfor(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i];\n\t}\n})(self, function() {\nreturn ","\nexport class GA {\n\n static ga: GA;\n\n static init(trackingId: string, dimensions?: Object) {\n GA.ga = new GA(trackingId, dimensions);\n }\n\n static pageview(path: string, title?: string): void {\n if (GA.ga) {\n GA.ga.pageview(path, title);\n }\n }\n\n static event(name: string, parameters?: { [k: string]: string }): void {\n if (GA.ga) {\n GA.ga.event(name, parameters);\n }\n }\n\n static set(parameters: { [k: string]: string }): void {\n if (GA.ga) {\n GA.ga.set(parameters);\n }\n }\n\n private _trackingId: string;\n\n constructor(trackingId: string, dimensions?: Object) {\n this._trackingId = trackingId;\n this._load();\n }\n\n pageview(path: string, title?: string): void {\n if (this._trackingId) {\n (self as any).gtag(\"config\", this._trackingId,\n {\n page_path: path,\n page_title: title\n });\n }\n }\n\n event(name: string, parameters?: { [k: string]: string }): void {\n if (this._trackingId) {\n (self as any).gtag(\"event\", name, parameters);\n }\n }\n\n set(parameters: { [k: string]: string }): void {\n if (this._trackingId) {\n (self as any).gtag(\"set\", parameters);\n }\n }\n\n private _load(): void {\n if (this._trackingId) {\n const script = document.createElement(\"script\");\n script.async = true;\n script.src = `https://www.googletagmanager.com/gtag/js?id=${this._trackingId}`;\n document.getElementsByTagName(\"head\")[0].appendChild(script);\n\n const script1 = document.createElement(\"script\");\n script1.textContent = `\n window.dataLayer = window.dataLayer || [];\n function gtag(){dataLayer.push(arguments);}\n gtag('js', new Date());\n gtag('config', '${this._trackingId}');\n `;\n document.getElementsByTagName(\"head\")[0].appendChild(script1);\n }\n }\n\n}\n\n// const ga = new GA(\"track-id\");\n// GA.ga = ga;\n// ga.pageview(\"my-page\");\n"],"names":["root","factory","exports","module","define","amd","a","i","self","GA","static","trackingId","dimensions","ga","path","title","pageview","name","parameters","event","set","constructor","this","_trackingId","_load","gtag","page_path","page_title","script","document","createElement","async","src","getElementsByTagName","appendChild","script1","textContent"],"sourceRoot":""}
@@ -1,2 +0,0 @@
1
- !function(){var t="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},n={},e={},o=t.parcelRequirede31;null==o&&((o=function(t){if(t in n)return n[t].exports;if(t in e){var o=e[t];delete e[t];var c={id:t,exports:{}};return n[t]=c,o.call(c.exports,c,c.exports),c.exports}var u=new Error("Cannot find module '"+t+"'");throw u.code="MODULE_NOT_FOUND",u}).register=function(t,n){e[t]=n},t.parcelRequirede31=o);var c,u,i=o("es1PA"),a=function(t,n,e,o){return new(e||(e=Promise))((function(c,u){function i(t){try{r(o.next(t))}catch(t){u(t)}}function a(t){try{r(o.throw(t))}catch(t){u(t)}}function r(t){var n;t.done?c(t.value):(n=t.value,n instanceof e?n:new e((function(t){t(n)}))).then(i,a)}r((o=o.apply(t,n||[])).next())}))};(u=c||(c={})).dec="counter-dec",u.inc="counter-inc",u.count="counter-count";var r;(0,i.happel)({state:function(){return{count:77}},view:function(t){return[["h3",["Counter"]],["p",[["em",["Count"]],": ",t.count," ",["button",{on:["click",c.dec,1]},["-"]],["button",{on:["click",c.inc,2]},["+"]]]]]},dispatcher:function(t,n,e){return a(this,void 0,void 0,(function*(){switch(console.log("action counter:",t),t.type){case i.HAppActions.init:case i.HAppActions.mount:case i.HAppActions.umount:break;case i.HAppActions.attribute:"count"===t.data.attrName&&(n.count=Number(t.data.newVal));break;case c.inc:n.count=n.count+t.data,setTimeout((()=>e(c.dec,1)),1e3),e(c.count,n.count,i.HDispatchScopes.element);break;case c.dec:n.count=n.count-t.data,e(c.count,n.count,i.HDispatchScopes.element)}}))},name:"counter",attributes:["count"],debug:!0}),(r||(r={})).action="app-action";(0,i.happel)({state:function(){return{count:0}},view:function(t){return[["h2",["App count: ",t.count]],["happ-counter",{count:33,on:[i.HAppActions.action,r.action]}]]},dispatcher:function(t,n,e){return a(this,void 0,void 0,(function*(){if(console.log("action:",t),t.type===r.action){const o=t.data;if(o.type===c.count)n.count=o.data,e(c.count,n.count,i.HDispatchScopes.element);else console.log(o)}}))},name:"app",attributes:[],debug:!0})}();
2
- //# sourceMappingURL=hsml-appel_demo.1da052b6.js.map
@@ -1 +0,0 @@
1
- {"mappings":"ofAOKA,EAAAC,E,oTAAAA,EAAAD,MAAc,KACf,kBACAC,EAAA,kBACAA,EAAA,sBAiEJ,IAAKC,GAdL,EAAAC,EAAAC,QAAqC,CACjCC,MAjDuC,WACvC,MAAO,CACHC,MAAO,GAEf,EA8CIC,KA5CqD,SAAUF,GAC/D,MAAO,CACH,CAAC,KAAM,CAAC,YACR,CAAC,IAAK,CACF,CAAC,KAAM,CAAC,UAAW,KAAMA,EAAMC,MAC/B,IACA,CAAC,SAAU,CAAEE,GAAI,CAAC,QAASR,EAAeS,IAAK,IAAM,CAAC,MACtD,CAAC,SAAU,CAAED,GAAI,CAAC,QAASR,EAAeU,IAAK,IAAM,CAAC,QAGlE,EAmCIC,WAjCiE,SAAgBC,EAAQP,EAAOQ,G,yCAKhG,OAJAC,QAAQC,IAAI,kBAAmBH,GAIvBA,EAAOI,MACX,KAAKb,EAAAc,YAAYC,KACjB,KAAKf,EAAAc,YAAYE,MACjB,KAAKhB,EAAAc,YAAYG,OACb,MAEJ,KAAKjB,EAAAc,YAAYI,UACgB,UAAzBT,EAAOU,KAAKC,WACZlB,EAAMC,MAAQkB,OAAOZ,EAAOU,KAAKG,SAErC,MAEJ,KAAKzB,EAAeU,IAChBL,EAAMC,MAAQD,EAAMC,MAAQM,EAAOU,KACnCI,YAAW,IAAMb,EAASb,EAAeS,IAAK,IAAI,KAClDI,EAASb,EAAeM,MAAOD,EAAMC,MAAOH,EAAAwB,gBAAgBC,SAC5D,MAEJ,KAAK5B,EAAeS,IAChBJ,EAAMC,MAAQD,EAAMC,MAAQM,EAAOU,KACnCT,EAASb,EAAeM,MAAOD,EAAMC,MAAOH,EAAAwB,gBAAgBC,SAGxE,GAAC,EAMGC,KAAM,UACNC,WAAY,CAAC,SACbC,OAAO,KAQN7B,MAAU,KACX,qBAwCJ,EAAAC,EAAAC,QAA8C,CAC1CC,MAtC+B,WAC/B,MAAO,CACHC,MAAO,EAEf,EAmCIC,KAjCyC,SAAUF,GACnD,MAAO,CACH,CAAC,KAAM,CAAC,cAAeA,EAAMC,QAC7B,CAAC,eAAgB,CACbA,MAAO,GACPE,GAAI,CAACL,EAAAc,YAAYL,OAAQV,EAAWU,UAGhD,EA0BID,WAxBsE,SAAgBC,EAAQP,EAAOQ,G,yCAKrG,GAJAC,QAAQC,IAAI,UAAWH,GAIfA,EAAOI,OACNd,EAAWU,OAAhB,CACI,MAAMoB,EAAIpB,EAAOU,KACjB,GAAQU,EAAEhB,OACDhB,EAAeM,MAChBD,EAAMC,MAAQ0B,EAAEV,KAChBT,EAASb,EAAeM,MAAOD,EAAMC,MAAOH,EAAAwB,gBAAgBC,cAG5Dd,QAAQC,IAAIiB,EAGd,CAElB,GAAC,EAMGH,KAAM,MACNC,WAAY,GACZC,OAAO,G","sources":["demo/hsml-appel_demo.ts"],"sourcesContent":["import { HElements } from \"../src/hsml\";\nimport { HAction, HAppActions, happel, HDispatch, HDispatcher, HDispatchScopes, HState, HView } from \"../src/hsml-app\";\n\ninterface CounterState {\n count: number;\n}\n\nenum CounterActions {\n dec = \"counter-dec\",\n inc = \"counter-inc\",\n count = \"counter-count\"\n}\n\nconst counterState: HState<CounterState> = function () {\n return {\n count: 77\n }\n};\n\nconst counterView: HView<CounterState, CounterActions> = function (state) {\n return [\n [\"h3\", [\"Counter\"]],\n [\"p\", [\n [\"em\", [\"Count\"]], \": \", state.count,\n \" \",\n [\"button\", { on: [\"click\", CounterActions.dec, 1] }, [\"-\"]],\n [\"button\", { on: [\"click\", CounterActions.inc, 2] }, [\"+\"]]\n ]]\n ];\n};\n\nconst counterDispatcher: HDispatcher<CounterState, CounterActions> = async function (action, state, dispatch) {\n console.log(\"action counter:\", action);\n // console.log(\"state counter:\", state);\n // console.log(\"happ counter:\", this);\n\n switch (action.type) {\n case HAppActions.init:\n case HAppActions.mount:\n case HAppActions.umount:\n break;\n\n case HAppActions.attribute:\n if (action.data.attrName === \"count\") {\n state.count = Number(action.data.newVal);\n }\n break;\n\n case CounterActions.inc:\n state.count = state.count + action.data as number;\n setTimeout(() => dispatch(CounterActions.dec, 1), 1e3); // async call\n dispatch(CounterActions.count, state.count, HDispatchScopes.element);\n break;\n\n case CounterActions.dec:\n state.count = state.count - action.data as number;\n dispatch(CounterActions.count, state.count, HDispatchScopes.element);\n break;\n }\n};\n\nhappel<CounterState, CounterActions>({\n state: counterState,\n view: counterView,\n dispatcher: counterDispatcher,\n name: \"counter\",\n attributes: [\"count\"],\n debug: true\n});\n\n\ninterface AppState {\n count: number;\n}\n\nenum AppActions {\n action = \"app-action\"\n}\n\nconst appState: HState<AppState> = function () {\n return {\n count: 0\n }\n};\n\nconst appView: HView<AppState, AppActions> = function (state) {\n return [\n [\"h2\", [\"App count: \", state.count]],\n [\"happ-counter\", {\n count: 33,\n on: [HAppActions.action, AppActions.action]\n }]\n ];\n};\n\nconst appDispatcher: HDispatcher<AppState, AppActions | CounterActions> = async function (action, state, dispatch) {\n console.log(\"action:\", action);\n // console.log(\"state:\", state);\n // console.log(\"happ:\", this);\n\n switch (action.type) {\n case AppActions.action:\n const a = action.data as HAction<AppActions | CounterActions>;\n switch (a.type) {\n case CounterActions.count:\n state.count = a.data as number;\n dispatch(CounterActions.count, state.count, HDispatchScopes.element);\n break;\n default:\n console.log(a);\n break;\n }\n break;\n }\n};\n\nhappel<AppState, AppActions | CounterActions>({\n state: appState,\n view: appView,\n dispatcher: appDispatcher,\n name: \"app\",\n attributes: [],\n debug: true\n});\n"],"names":["$1adacf07b647a858$var$CounterActions","CounterActions","$1adacf07b647a858$var$AppActions","$es1PA","happel","state","count","view","on","dec","inc","dispatcher","action","dispatch","console","log","type","HAppActions","init","mount","umount","attribute","data","attrName","Number","newVal","setTimeout","HDispatchScopes","element","name","attributes","debug","a"],"version":3,"file":"hsml-appel_demo.1da052b6.js.map"}
@@ -1,2 +0,0 @@
1
- var t="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},n={},e={},o=t.parcelRequirede31;null==o&&((o=function(t){if(t in n)return n[t].exports;if(t in e){var o=e[t];delete e[t];var c={id:t,exports:{}};return n[t]=c,o.call(c.exports,c,c.exports),c.exports}var u=new Error("Cannot find module '"+t+"'");throw u.code="MODULE_NOT_FOUND",u}).register=function(t,n){e[t]=n},t.parcelRequirede31=o);var c,u,i=o("lQ1yG"),a=function(t,n,e,o){return new(e||(e=Promise))((function(c,u){function i(t){try{r(o.next(t))}catch(t){u(t)}}function a(t){try{r(o.throw(t))}catch(t){u(t)}}function r(t){var n;t.done?c(t.value):(n=t.value,n instanceof e?n:new e((function(t){t(n)}))).then(i,a)}r((o=o.apply(t,n||[])).next())}))};(u=c||(c={})).dec="counter-dec",u.inc="counter-inc",u.count="counter-count";var r;(0,i.happel)({state:function(){return{count:77}},view:function(t){return[["h3",["Counter"]],["p",[["em",["Count"]],": ",t.count," ",["button",{on:["click",c.dec,1]},["-"]],["button",{on:["click",c.inc,2]},["+"]]]]]},dispatcher:function(t,n,e){return a(this,void 0,void 0,(function*(){switch(console.log("action counter:",t),t.type){case i.HAppActions.init:case i.HAppActions.mount:case i.HAppActions.umount:break;case i.HAppActions.attribute:"count"===t.data.attrName&&(n.count=Number(t.data.newVal));break;case c.inc:n.count=n.count+t.data,setTimeout((()=>e(c.dec,1)),1e3),e(c.count,n.count,i.HDispatchScopes.element);break;case c.dec:n.count=n.count-t.data,e(c.count,n.count,i.HDispatchScopes.element)}}))},name:"counter",attributes:["count"],debug:!0}),(r||(r={})).action="app-action";(0,i.happel)({state:function(){return{count:0}},view:function(t){return[["h2",["App count: ",t.count]],["happ-counter",{count:33,on:[i.HAppActions.action,r.action]}]]},dispatcher:function(t,n,e){return a(this,void 0,void 0,(function*(){if(console.log("action:",t),t.type===r.action){const o=t.data;if(o.type===c.count)n.count=o.data,e(c.count,n.count,i.HDispatchScopes.element);else console.log(o)}}))},name:"app",attributes:[],debug:!0});
2
- //# sourceMappingURL=hsml-appel_demo.7fcc74a6.js.map
@@ -1 +0,0 @@
1
- {"mappings":"weAOKA,EAAAC,E,oTAAAA,EAAAD,MAAc,KACf,kBACAC,EAAA,kBACAA,EAAA,sBAiEJ,IAAKC,GAdL,EAAAC,EAAAC,QAAqC,CACjCC,MAjDuC,WACvC,MAAO,CACHC,MAAO,GAEf,EA8CIC,KA5CqD,SAAUF,GAC/D,MAAO,CACH,CAAC,KAAM,CAAC,YACR,CAAC,IAAK,CACF,CAAC,KAAM,CAAC,UAAW,KAAMA,EAAMC,MAC/B,IACA,CAAC,SAAU,CAAEE,GAAI,CAAC,QAASR,EAAeS,IAAK,IAAM,CAAC,MACtD,CAAC,SAAU,CAAED,GAAI,CAAC,QAASR,EAAeU,IAAK,IAAM,CAAC,QAGlE,EAmCIC,WAjCiE,SAAgBC,EAAQP,EAAOQ,G,yCAKhG,OAJAC,QAAQC,IAAI,kBAAmBH,GAIvBA,EAAOI,MACX,KAAKb,EAAAc,YAAYC,KACjB,KAAKf,EAAAc,YAAYE,MACjB,KAAKhB,EAAAc,YAAYG,OACb,MAEJ,KAAKjB,EAAAc,YAAYI,UACgB,UAAzBT,EAAOU,KAAKC,WACZlB,EAAMC,MAAQkB,OAAOZ,EAAOU,KAAKG,SAErC,MAEJ,KAAKzB,EAAeU,IAChBL,EAAMC,MAAQD,EAAMC,MAAQM,EAAOU,KACnCI,YAAW,IAAMb,EAASb,EAAeS,IAAK,IAAI,KAClDI,EAASb,EAAeM,MAAOD,EAAMC,MAAOH,EAAAwB,gBAAgBC,SAC5D,MAEJ,KAAK5B,EAAeS,IAChBJ,EAAMC,MAAQD,EAAMC,MAAQM,EAAOU,KACnCT,EAASb,EAAeM,MAAOD,EAAMC,MAAOH,EAAAwB,gBAAgBC,SAGxE,GAAC,EAMGC,KAAM,UACNC,WAAY,CAAC,SACbC,OAAO,KAQN7B,MAAU,KACX,qBAwCJ,EAAAC,EAAAC,QAA8C,CAC1CC,MAtC+B,WAC/B,MAAO,CACHC,MAAO,EAEf,EAmCIC,KAjCyC,SAAUF,GACnD,MAAO,CACH,CAAC,KAAM,CAAC,cAAeA,EAAMC,QAC7B,CAAC,eAAgB,CACbA,MAAO,GACPE,GAAI,CAACL,EAAAc,YAAYL,OAAQV,EAAWU,UAGhD,EA0BID,WAxBsE,SAAgBC,EAAQP,EAAOQ,G,yCAKrG,GAJAC,QAAQC,IAAI,UAAWH,GAIfA,EAAOI,OACNd,EAAWU,OAAhB,CACI,MAAMoB,EAAIpB,EAAOU,KACjB,GAAQU,EAAEhB,OACDhB,EAAeM,MAChBD,EAAMC,MAAQ0B,EAAEV,KAChBT,EAASb,EAAeM,MAAOD,EAAMC,MAAOH,EAAAwB,gBAAgBC,cAG5Dd,QAAQC,IAAIiB,EAGd,CAElB,GAAC,EAMGH,KAAM,MACNC,WAAY,GACZC,OAAO","sources":["demo/hsml-appel_demo.ts"],"sourcesContent":["import { HElements } from \"../src/hsml\";\nimport { HAction, HAppActions, happel, HDispatch, HDispatcher, HDispatchScopes, HState, HView } from \"../src/hsml-app\";\n\ninterface CounterState {\n count: number;\n}\n\nenum CounterActions {\n dec = \"counter-dec\",\n inc = \"counter-inc\",\n count = \"counter-count\"\n}\n\nconst counterState: HState<CounterState> = function () {\n return {\n count: 77\n }\n};\n\nconst counterView: HView<CounterState, CounterActions> = function (state) {\n return [\n [\"h3\", [\"Counter\"]],\n [\"p\", [\n [\"em\", [\"Count\"]], \": \", state.count,\n \" \",\n [\"button\", { on: [\"click\", CounterActions.dec, 1] }, [\"-\"]],\n [\"button\", { on: [\"click\", CounterActions.inc, 2] }, [\"+\"]]\n ]]\n ];\n};\n\nconst counterDispatcher: HDispatcher<CounterState, CounterActions> = async function (action, state, dispatch) {\n console.log(\"action counter:\", action);\n // console.log(\"state counter:\", state);\n // console.log(\"happ counter:\", this);\n\n switch (action.type) {\n case HAppActions.init:\n case HAppActions.mount:\n case HAppActions.umount:\n break;\n\n case HAppActions.attribute:\n if (action.data.attrName === \"count\") {\n state.count = Number(action.data.newVal);\n }\n break;\n\n case CounterActions.inc:\n state.count = state.count + action.data as number;\n setTimeout(() => dispatch(CounterActions.dec, 1), 1e3); // async call\n dispatch(CounterActions.count, state.count, HDispatchScopes.element);\n break;\n\n case CounterActions.dec:\n state.count = state.count - action.data as number;\n dispatch(CounterActions.count, state.count, HDispatchScopes.element);\n break;\n }\n};\n\nhappel<CounterState, CounterActions>({\n state: counterState,\n view: counterView,\n dispatcher: counterDispatcher,\n name: \"counter\",\n attributes: [\"count\"],\n debug: true\n});\n\n\ninterface AppState {\n count: number;\n}\n\nenum AppActions {\n action = \"app-action\"\n}\n\nconst appState: HState<AppState> = function () {\n return {\n count: 0\n }\n};\n\nconst appView: HView<AppState, AppActions> = function (state) {\n return [\n [\"h2\", [\"App count: \", state.count]],\n [\"happ-counter\", {\n count: 33,\n on: [HAppActions.action, AppActions.action]\n }]\n ];\n};\n\nconst appDispatcher: HDispatcher<AppState, AppActions | CounterActions> = async function (action, state, dispatch) {\n console.log(\"action:\", action);\n // console.log(\"state:\", state);\n // console.log(\"happ:\", this);\n\n switch (action.type) {\n case AppActions.action:\n const a = action.data as HAction<AppActions | CounterActions>;\n switch (a.type) {\n case CounterActions.count:\n state.count = a.data as number;\n dispatch(CounterActions.count, state.count, HDispatchScopes.element);\n break;\n default:\n console.log(a);\n break;\n }\n break;\n }\n};\n\nhappel<AppState, AppActions | CounterActions>({\n state: appState,\n view: appView,\n dispatcher: appDispatcher,\n name: \"app\",\n attributes: [],\n debug: true\n});\n"],"names":["$aba843136a874dd7$var$CounterActions","CounterActions","$aba843136a874dd7$var$AppActions","$lQ1yG","happel","state","count","view","on","dec","inc","dispatcher","action","dispatch","console","log","type","HAppActions","init","mount","umount","attribute","data","attrName","Number","newVal","setTimeout","HDispatchScopes","element","name","attributes","debug","a"],"version":3,"file":"hsml-appel_demo.7fcc74a6.js.map"}
@@ -1,2 +0,0 @@
1
- !function(){function e(e,t,i,n){Object.defineProperty(e,t,{get:i,set:n,enumerable:!0,configurable:!0})}var t="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},i={},n={},a=t.parcelRequirede31;null==a&&((a=function(e){if(e in i)return i[e].exports;if(e in n){var t=n[e];delete n[e];var a={id:e,exports:{}};return i[e]=a,t.call(a.exports,a,a.exports),a.exports}var s=new Error("Cannot find module '"+e+"'");throw s.code="MODULE_NOT_FOUND",s}).register=function(e,t){n[e]=t},t.parcelRequirede31=a),a.register("es1PA",(function(t,i){e(t.exports,"HAppActions",(function(){return n}),(function(e){return n=e})),e(t.exports,"HDispatchScopes",(function(){return l}),(function(e){return l=e})),e(t.exports,"happ",(function(){return f}),(function(e){return f=e})),e(t.exports,"HApp",(function(){return b}),(function(e){return b=e})),e(t.exports,"happel",(function(){return w}),(function(e){return w=e}));var n,s,l,o,u=a("8IJ2T"),d=function(e,t,i,n){return new(i||(i=Promise))((function(a,s){function l(e){try{u(n.next(e))}catch(e){s(e)}}function o(e){try{u(n.throw(e))}catch(e){s(e)}}function u(e){var t;e.done?a(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(l,o)}u((n=n.apply(e,t||[])).next())}))};(s=n||(n={})).init="happ-init",s.mount="happ-mount",s.umount="happ-umount",s.action="happ-action",s.attribute="happ-attribute",(o=l||(l={})).element="element",o.window="window";const r=window.requestAnimationFrame||function(e){window.setTimeout(e,1e3/60)},c=window.cancelAnimationFrame||function(e){window.clearTimeout(e)},h="action:",v="dispatch:",m="render:",p="happ";function f(e){return new b(e.state,e.view,e.dispatcher,e.element,e.debug,e.name)}function w(e){customElements.define(`${p}-${e.name}`,class extends HTMLElement{static get observedAttributes(){return e.attributes}constructor(){super(),this._happel=new b(e.state,e.view,e.dispatcher,void 0,e.debug,e.name,e.attributes),this._happel.customElement=this}connectedCallback(){this.attachShadow({mode:"open"}),this._happel.mount(this.shadowRoot)}disconnectedCallback(){this._happel.umount()}adoptedCallback(){this._happel.update()}attributeChangedCallback(e,t,i){this._happel.dispatch(n.attribute,{attrName:e,oldVal:t,newVal:i})}})}class b{constructor(e,t,i,a,s,l,o){this.refs={},this.dispatch=(e,t,i)=>d(this,void 0,void 0,(function*(){return this._dispatchAction(e,t,void 0,i)})),this.render=()=>{if(this.debug){const e=performance.now();let t;try{t=this.view(this.state)}catch(e){b.error(this.name,m,e)}const i=performance.now();return b.log(this.name,m,i-e+" ms",t),null!=t?t:[]}{let e;try{e=this.view(this.state)}catch(e){b.error(this.name,m,e)}return null!=e?e:[]}},this.actionCb=(e,t,i)=>{void 0===(t=(null==t?void 0:t.constructor)===Function?t(i):t)&&i&&(t=i instanceof CustomEvent?i.detail:function(e){const t=e.target;if("FORM"===t.nodeName){e.preventDefault();const i={data:{},validation:{},valid:!0},n=t.elements;for(let e=0;e<n.length;e++){const t=y(n[e]);if(t&&t.name){const a=i.data,s=t.name,l=t.value;void 0===a[s]?a[s]=l:"string"==typeof a[s]||a[s]instanceof String?a[s]=l instanceof Array?[a[s],...l]:[a[s],l]:a[s]instanceof Array?l instanceof Array?a[s]=a[s].concat(l):a[s].push(l):a[s]=l instanceof Array?[a[s],...l]:[a[s],l],a[s]instanceof Array&&(a[s]=a[s].filter((e=>null!==e)),"radio"===n[e].type&&(a[s]=a[s].length?a[s][0]:null)),t.validation&&(i.validation[s]=t.validation),t.valid||(i.valid=!1)}}return i}return y(t)}(i)),this._dispatchAction(e,t,i)},this.mount=e=>{const t="string"==typeof e?document.getElementById(e):e;if(t&&t[p]){t[p].umount()}if(t&&!this.element){this.element=t,t[p]=this;const e=this.render();this._updateDom(t,e,this),this._dispatchAction(n.mount,this.element)}return this},this.umount=()=>{if(this.element){this._dispatchAction(n.umount,this.element),this.element.hasAttribute(p)&&this.element.removeAttribute(p);const e=this.element.querySelectorAll(`[${p}]`);for(let t=0;t<e.length;t++){const i=e[t].happ;null==i||i.umount()}for(;this.element.firstChild;)this.element.removeChild(this.element.firstChild);delete this.element.happ,this.element=void 0}return this._windowActionListener&&window.removeEventListener(n.action,this._windowActionListener),this},this.update=()=>(this.element&&!this._updateSched&&(this._updateSched=r((()=>{if(this.element){const e=this.render();this._updateDom(this.element,e,this)}this._updateSched=void 0}))),this),this.toHsml=()=>{if(this.element){if(!this._updateSched)return["div",{skip:!0}];c(this._updateSched),this._updateSched=void 0}const e=this.render();return e.push((e=>{this.element||(this.element=e,e.happ=this,this._dispatchAction(n.mount,this.element))})),["div",e]},this.toHtml=()=>this.element?this.element.outerHTML:"",this.debug=null!=s&&s,this.name=null!=l?l:p,this.attributes=null!=o?o:[],this.state=e(),this.view=t,this.dispatcher=null!=i?i:e=>d(this,void 0,void 0,(function*(){return b.log(this.name,h,e.type,e.data)})),this._dispatchAction(n.init,this).then((()=>a&&this.mount(a)))}_dispatchAction(e,t,i,n){return d(this,void 0,void 0,(function*(){if(this.debug){b.log(this.name,h,{type:e,data:t,event:i});const a=performance.now();yield this._dispatch(e,t,i,n);const s=performance.now();b.log(this.name,v,s-a+" ms",this.state)}else yield this._dispatch(e,t,i,n)}))}_dispatch(e,t,i,n){return d(this,void 0,void 0,(function*(){if(!n){try{yield this.dispatcher({type:e,data:t,event:i},this.state,this.dispatch)}catch(e){b.error(this.name,v,e)}this.update()}"element"===n&&this._dispatchElement(e,t),"window"===n&&this._dispatchWindow(e,t)}))}_dispatchElement(e,t){return d(this,void 0,void 0,(function*(){this.customElement&&g(this.customElement,n.action,{type:e,data:t}),!this.customElement&&this.element&&g(this.element,n.action,{type:e,data:t})}))}_dispatchWindow(e,t){return d(this,void 0,void 0,(function*(){window.dispatchEvent(new CustomEvent(n.action,{detail:{type:e,data:t}}))}))}windowActionListen(){this._windowActionListener?b.warn("windowEventListener already added"):(this._windowActionListener=e=>{const t=e.detail;this._dispatchAction(n.action,t)},window.addEventListener(n.action,this._windowActionListener))}_updateDom(e,t,i){if(this.debug){const n=performance.now();(0,u.hsmls2idomPatch)(e,t,i);const a=performance.now();b.log(this.name,"update:",a-n+" ms",e)}else(0,u.hsmls2idomPatch)(e,t,i)}}function g(e,t,i){var n,a;null==e||e.dispatchEvent(new CustomEvent(t,{detail:i})),null===(a=(n=e)[`on${t}`])||void 0===a||a.call(n,new CustomEvent(t,{detail:i}))}function y(e){const t=e;if(t.willValidate){let e=!0;for(const i in t.validity)if("customError"!==i&&"valid"!==i&&t.validity[i]){const n=t.validation;if(n){const a=n[i];if(a){t.setCustomValidity(a),e=!1;break}t.setCustomValidity("");break}}e&&t.setCustomValidity("")}let i;switch(e.nodeName){case"INPUT":const t=e;switch(t.type){case"text":case"hidden":case"password":case"email":case"search":case"url":case"tel":case"color":case"submit":case"button":i={name:t.name,value:""===t.value?null:t.value,validation:t.validationMessage,valid:t.validity.valid};break;case"number":case"range":i={name:t.name,value:isNaN(t.valueAsNumber)?null:t.valueAsNumber,valueString:t.value,validation:t.validationMessage,valid:t.validity.valid};break;case"datetime-local":i={name:t.name,value:""===t.value?null:t.value,valueNumber:isNaN(t.valueAsNumber)?null:t.valueAsNumber,valueDate:isNaN(t.valueAsNumber)?null:new Date(t.valueAsNumber),validation:t.validationMessage,valid:t.validity.valid};break;case"date":case"month":case"time":case"week":i={name:t.name,value:""===t.value?null:t.value,valueNumber:isNaN(t.valueAsNumber)?null:t.valueAsNumber,valueDate:t.valueAsDate,validation:t.validationMessage,valid:t.validity.valid};break;case"radio":i={name:t.name,value:t.checked?t.value:null,valueString:t.value,validation:t.validationMessage,valid:t.validity.valid};break;case"checkbox":i="on"===t.value?{name:t.name,value:t.checked,valueString:t.value,validation:t.validationMessage,valid:t.validity.valid}:{name:t.name,value:t.checked?String(t.value):null,valueString:t.value,validation:t.validationMessage,valid:t.validity.valid};break;case"file":const e=t.files,n=t.multiple||1===e.length?e[0]:null;i={name:t.name,value:n,valueString:t.value,validation:t.validationMessage,valid:t.validity.valid}}break;case"SELECT":const n=e;if(n.multiple){const e=Array.from(n.selectedOptions).map((e=>e.value));i={name:n.name,value:e,valueString:n.value,validation:n.validationMessage,valid:n.validity.valid}}else i={name:n.name,value:""===n.value?null:n.value,validation:n.validationMessage,valid:n.validity.valid};break;case"TEXTAREA":const a=e;i={name:a.name,value:""===a.value?null:a.value,validation:a.validationMessage,valid:a.validity.valid};break;case"BUTTON":const s=e;i={name:s.name,value:""===s.value?null:s.value,validation:s.validationMessage,valid:s.validity.valid}}return i}b.log=console.log,b.error=console.error,b.warn=console.warn}))}();
2
- //# sourceMappingURL=hsml-appi_demo.3d3d0e4e.js.map
@@ -1 +0,0 @@
1
- {"mappings":"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","sources":["src/hsml-app.ts"],"sourcesContent":["import { HAttrOnData, HAttrOnDataFnc, HElement, HElements, HHandlerCtx } from \"./hsml\";\nimport { hsmls2idomPatch } from \"./hsml-idom\";\n\nexport type HState<State> = () => State;\n\nexport type HView<State, HActionType extends string> = (\n state: State\n) => HElements<HActionType>;\n\nexport type HView1<State, HActionType extends string> = (\n state: State\n) => HElement<HActionType>;\n\nexport type HAppAction =\n | \"happ-init\"\n | \"happ-mount\"\n | \"happ-umount\"\n | \"happ-action\"\n | \"happ-attribute\";\n\nexport enum HAppActions {\n init = \"happ-init\",\n mount = \"happ-mount\",\n umount = \"happ-umount\",\n action = \"happ-action\",\n attribute = \"happ-attribute\"\n}\n\nexport interface HAction<HActionType extends string> {\n type: HActionType;\n data?: any;\n event?: Event;\n}\n\nexport type HDispatchScope =\n | \"element\"\n | \"window\";\n\nexport enum HDispatchScopes {\n element = \"element\",\n window = \"window\"\n}\n\nexport type HDispatch<HActionType extends string> = (\n type: HAction<HActionType>[\"type\"],\n data?: HAction<HActionType>[\"data\"],\n scope?: HDispatchScope | HDispatchScopes\n) => Promise<void>;\n\nexport type HDispatcher<State, HActionType extends string> = (\n // this: HApp<State, HActionType>,\n action: HAction<HActionType | HAppAction | HAppActions>,\n state: State,\n dispatch: HDispatch<HActionType>\n) => Promise<void>;\n\nconst schedule = window.requestAnimationFrame ||\n // window.webkitRequestAnimationFrame ||\n // (window as any).mozRequestAnimationFrame ||\n // (window as any).oRequestAnimationFrame ||\n // (window as any).msRequestAnimationFrame ||\n function (callback: Function) { window.setTimeout(callback, 1000 / 60); };\n\nconst unschedule = window.cancelAnimationFrame ||\n // window.webkitCancelAnimationFrame ||\n // (window as any).mozCancelAnimationFrame ||\n // (window as any).oCancelAnimationFrame ||\n // (window as any).msCancelAnimationFrame ||\n function (handle: number) { window.clearTimeout(handle); };\n\nconst msgAction = \"action:\";\nconst msgDispatch = \"dispatch:\";\nconst msgRender = \"render:\";\nconst msgUpdate = \"update:\";\n\nconst HAPP = \"happ\";\n\nexport interface HAppI<State, HActionType extends string> {\n state: HState<State>;\n view: HView<State, HActionType>;\n dispatcher: HDispatcher<State, HActionType>;\n element?: Element | string | null;\n debug?: boolean;\n name?: string;\n attributes?: string[];\n}\n\n/**\n * HApp definition\n *\n * @param hAppI HApp definition\n * @returns HApp instance\n */\nexport function happ<State, HActionType extends string>(hAppI: {\n state: HState<State>;\n view: HView<State, HActionType>;\n dispatcher: HDispatcher<State, HActionType>;\n element: Element | string | null;\n debug?: boolean;\n name?: string;\n // attributes?: string[];\n}) {\n return new HApp<State, HActionType>(\n hAppI.state,\n hAppI.view,\n hAppI.dispatcher,\n hAppI.element,\n hAppI.debug,\n hAppI.name\n // hAppI!.attributes\n );\n}\n\n// export type Class<T = object> = new (...args: any[]) => T;\n\n// export function happi<State, HActionType extends string>(\n// hAppI: Class<HAppI<State, HActionType>>,\n// element?: Element | string | null,\n// debug? boolean,\n// name?: string,\n// attributes: string[]\n// ) {\n// const hapi = new hAppI();\n// return new HApp<State, HActionType>(\n// hapi.state,\n// hapi.view,\n// hapi.dispatcher,\n// element,\n// debug\n// );\n// }\n\n// HAppEl\n\n/**\n * HApp custom HTML element definition.\n *\n * @param hAppI HApp definition\n */\nexport function happel<State, HActionType extends string>(hAppI: {\n state: HState<State>;\n view: HView<State, HActionType>;\n dispatcher: HDispatcher<State, HActionType>;\n /** Element suffix name, element name patern is `happ-${name}` */\n name: string;\n /** Element attribute list */\n attributes: string[];\n debug?: boolean;\n}): void {\n customElements.define(\n `${HAPP}-${hAppI.name}`,\n class HAppElement extends HTMLElement {\n static get observedAttributes() {\n return hAppI.attributes;\n }\n\n private _happel: HApp<State, HActionType>;\n\n constructor() {\n super();\n this._happel = new HApp<State, HActionType>(\n hAppI.state,\n hAppI.view,\n hAppI.dispatcher,\n undefined,\n hAppI.debug,\n hAppI.name,\n hAppI.attributes\n );\n (this._happel as any).customElement = this;\n }\n\n connectedCallback() {\n // this._happel.mount(this);\n this.attachShadow({ mode: \"open\" });\n this._happel.mount(this.shadowRoot as any);\n }\n\n disconnectedCallback() {\n this._happel.umount();\n }\n\n adoptedCallback() {\n this._happel.update();\n }\n\n attributeChangedCallback(\n attrName: string,\n oldVal: string | null,\n newVal: string | null\n ) {\n this._happel.dispatch(\n HAppActions.attribute as any,\n { attrName, oldVal, newVal });\n }\n }\n );\n}\n\n/**\n * HSML App\n */\nexport class HApp<State, HActionType extends string> implements HHandlerCtx<HActionType> {\n\n static log = console.log;\n static error = console.error;\n static warn = console.warn;\n\n readonly state: State;\n readonly view: HView<State, HActionType>;\n readonly dispatcher: HDispatcher<State, HActionType>;\n\n debug: boolean;\n\n readonly name: string;\n readonly attributes: string[];\n\n readonly element?: HTMLElement;\n readonly refs: { [key: string]: HTMLElement } = {};\n\n readonly customElement?: HTMLElement; // happ custom html element\n\n private _updateSched?: number;\n\n // private _onDispatch?: HDispatcher<State>;\n\n private _windowActionListener?: (event: Event) => void;\n\n constructor(\n state: HState<State>,\n view: HView<State, HActionType>,\n dispatcher?: HDispatcher<State, HActionType>,\n element?: Element | string | null,\n debug?: boolean ,\n name?: string,\n attributes?: string[]\n ) {\n this.debug = debug ?? false;\n this.name = name ?? HAPP;\n this.attributes = attributes ?? [];\n this.state = state();\n this.view = view;\n this.dispatcher = dispatcher ?? (async (a) => HApp.log(this.name, msgAction, a.type, a.data));\n this._dispatchAction(HAppActions.init, this).then(() => element && this.mount(element));\n }\n\n /**\n * Dispatch app action.\n */\n dispatch: HDispatch<HActionType> = async (\n type: HActionType,\n data?: any,\n scope?: HDispatchScope\n ): Promise<void> => {\n return this._dispatchAction(type, data, undefined, scope);\n }\n\n // onDispatch = (dispatcher: HDispatcher<State>): this => {\n // this._onDispatch = dispatcher;\n // return this;\n // }\n\n private async _dispatchAction(\n type: HActionType | HAppAction | HAppActions,\n data?: any,\n event?: Event,\n scope?: HDispatchScope\n ): Promise<void> {\n if (this.debug) {\n HApp.log(this.name, msgAction, { type, data, event });\n const t0 = performance.now();\n await this._dispatch(type, data, event, scope);\n const t1 = performance.now();\n HApp.log(this.name, msgDispatch, `${t1 - t0} ms`, this.state);\n } else {\n await this._dispatch(type, data, event, scope);\n }\n }\n\n private async _dispatch(\n type: HActionType | HAppAction | HAppActions,\n data: any,\n event?: Event,\n scope?: HDispatchScope\n ): Promise<void> {\n if (!scope) {\n try {\n await this.dispatcher(\n { type: type as HActionType, data, event },\n this.state,\n this.dispatch\n );\n } catch (e) {\n HApp.error(this.name, msgDispatch, e);\n }\n this.update();\n }\n scope === \"element\" && this._dispatchElement(type, data);\n scope === \"window\" && this._dispatchWindow(type, data);\n }\n\n private async _dispatchElement(\n type: HActionType | HAppAction | HAppActions,\n data?: any\n ): Promise<void> {\n this.customElement && elementDispatchCustomEvent(this.customElement, HAppActions.action, { type, data });\n !this.customElement && this.element && elementDispatchCustomEvent(this.element, HAppActions.action, { type, data });\n // this._onDispatch?.({ type, data, event }, this.state, this.dispatch);\n }\n\n private async _dispatchWindow(\n type: HActionType | HAppAction | HAppActions,\n data?: any): Promise<void> {\n window.dispatchEvent(new CustomEvent(HAppActions.action, { detail: { type, data } }));\n }\n\n /**\n * Window action listen and route actions to dispatcher.\n * Call this method on app mount action.\n * Listening will be stopped on app umount automatically.\n */\n windowActionListen() {\n if (!this._windowActionListener) {\n this._windowActionListener = (event: Event) => {\n const action = (event as CustomEvent).detail as HAction<HActionType>;\n this._dispatchAction(HAppActions.action, action);\n };\n window.addEventListener(HAppActions.action, this._windowActionListener);\n } else {\n HApp.warn(\"windowEventListener already added\");\n }\n }\n\n /**\n * Render HSML based on app state.\n */\n render = (): HElements<HActionType> => {\n if (this.debug) {\n const t0 = performance.now();\n let hsmls;\n try {\n hsmls = this.view(this.state);\n } catch (e) {\n HApp.error(this.name, msgRender, e);\n }\n const t1 = performance.now();\n HApp.log(this.name, msgRender, `${t1 - t0} ms`, hsmls);\n return hsmls ?? [];\n } else {\n let hsmls;\n try {\n hsmls = this.view(this.state);\n } catch (e) {\n HApp.error(this.name, msgRender, e);\n }\n return hsmls ?? [];\n }\n }\n\n /**\n * HSML action callback.\n */\n actionCb = (actionType: HActionType, data: HAttrOnData, event: Event): void => {\n data = (data?.constructor === Function)\n ? (data as HAttrOnDataFnc)(event)\n : data;\n if (data === undefined && event) {\n if (event instanceof CustomEvent) {\n data = event.detail;\n } else {\n data = formData(event) as any;\n // TODO middlewares for data processing\n // const middlewares: ((data: any, event: Event) => any)[] = [];\n // data = middlewares.reduce(\n // (data, middleware) => middleware(data, event),\n // data\n // );\n }\n }\n this._dispatchAction(actionType, data, event);\n }\n\n private _updateDom<HActionType extends string>(\n el: Element,\n hsml: HElements<HActionType>,\n ctx: HHandlerCtx<HActionType>\n ): void {\n if (this.debug) {\n const t0 = performance.now();\n hsmls2idomPatch(el, hsml, ctx);\n const t1 = performance.now();\n HApp.log(this.name, msgUpdate, `${t1 - t0} ms`, el);\n } else {\n hsmls2idomPatch(el, hsml, ctx);\n }\n }\n\n /**\n * Mount app to DOM element.\n *\n * @param e DOM element\n */\n mount = (e: Element | string | null): this => {\n const el = (typeof e === \"string\") ? document.getElementById(e) : e;\n if (el && (el as any)[HAPP]) {\n const a = (el as any)[HAPP] as HApp<State, HActionType>;\n a.umount();\n }\n if (el && !this.element) {\n (this as any).element = el;\n (el as any)[HAPP] = this;\n const hsmls = (this as any).render();\n this._updateDom<HActionType>(el, hsmls, this);\n this._dispatchAction(HAppActions.mount, this.element);\n }\n return this;\n }\n\n /**\n * Umount app to DOM element.\n */\n umount = (): this => {\n if (this.element) {\n this._dispatchAction(HAppActions.umount, this.element);\n if (this.element.hasAttribute(HAPP)) {\n this.element.removeAttribute(HAPP);\n }\n const aNodes = this.element.querySelectorAll(`[${HAPP}]`);\n for (let i = 0; i < aNodes.length; i++) {\n const a = (aNodes[i] as any).happ as HApp<State, HActionType>;\n a?.umount();\n }\n while (this.element.firstChild /*.hasChildNodes()*/) {\n this.element.removeChild(this.element.firstChild);\n }\n delete (this.element as any).happ;\n (this as any).element = undefined;\n }\n if (this._windowActionListener) {\n window.removeEventListener(HAppActions.action, this._windowActionListener);\n }\n return this;\n }\n\n /**\n * Update DOM element based on app state.\n */\n update = (): this => {\n if (this.element && !this._updateSched) {\n this._updateSched = schedule(() => {\n if (this.element) {\n const hsmls = this.render();\n this._updateDom<HActionType>(this.element, hsmls, this);\n }\n this._updateSched = undefined;\n });\n }\n return this;\n }\n\n toHsml = (): HElement<HActionType> => {\n if (this.element) {\n if (this._updateSched) {\n unschedule(this._updateSched);\n this._updateSched = undefined;\n } else {\n return [\"div\", { skip: true }];\n }\n }\n const hsmls = this.render();\n hsmls.push(\n (e: Element) => {\n if (!this.element) {\n (this as any).element = e;\n (e as any).happ = this;\n this._dispatchAction(HAppActions.mount, this.element);\n }\n });\n return [\"div\", hsmls];\n }\n\n toHtml = (): string => {\n return this.element ? this.element.outerHTML : \"\";\n }\n\n}\n\nfunction elementDispatchCustomEvent<HActionType extends string>(\n el: HTMLElement,\n type: HActionType,\n data: any\n) {\n el?.dispatchEvent(new CustomEvent(type, { detail: data }));\n (el as any)[`on${type}`]?.(new CustomEvent(type, { detail: data }));\n}\n\ntype FormDataInputValue = string | number | boolean | null | Array<string | number | boolean | null>;\n\ntype FormInputData = {\n name?: string;\n value: FormDataInputValue;\n valueString?: string;\n valueNumber?: number | null;\n valueDate?: Date | null;\n validation: string;\n valid: boolean;\n};\n\ntype FormData = {\n data: {\n [name: string]: FormDataInputValue;\n };\n validation: { [name: string]: string };\n valid: boolean;\n};\n\nexport type HFormInputData<Value = FormDataInputValue> = {\n name?: string;\n value: Value;\n valueString?: string | null;\n valueNumber?: number | null;\n valueDate?: Date | null;\n validation: string;\n valid: boolean;\n};\n\nexport type HFormData<Data> = {\n data: Data;\n validation: { [name in keyof Data]?: string };\n valid?: boolean;\n};\n\nfunction formData(e: Event): FormData | FormInputData | undefined {\n const el = e.target as HTMLElement;\n switch (el.nodeName) {\n case \"FORM\":\n (e as Event).preventDefault();\n const form: FormData = {\n data: {},\n validation: {},\n valid: true\n };\n const els = (el as HTMLFormElement).elements;\n for (let i = 0; i < els.length; i++) {\n const inputData = formInputData(els[i]);\n if (inputData && inputData.name) {\n const formData = form.data;\n const name = inputData.name;\n const value = inputData.value;\n if (formData[name] === undefined) {\n formData[name] = value;\n } else if (typeof formData[name] === \"string\" || formData[name] instanceof String) {\n if (value instanceof Array) {\n formData[name] = [formData[name] as string, ...value];\n } else {\n formData[name] = [formData[name] as string, value as string];\n }\n } else if (formData[name] instanceof Array) {\n if (value instanceof Array) {\n formData[name] = (formData[name] as Array<any>).concat(value);\n } else {\n (formData[name] as Array<any>).push(value);\n }\n } else {\n if (value instanceof Array) {\n formData[name] = [formData[name] as string, ...value];\n } else {\n formData[name] = [formData[name] as string, value];\n }\n }\n if (formData[name] instanceof Array) {\n formData[name] = (formData[name] as Array<any>)\n .filter(d => d !== null);\n if ((els[i] as HTMLInputElement).type === \"radio\") {\n formData[name] = (formData[name] as Array<any>).length\n ? (formData[name] as Array<any>)[0]\n : null;\n }\n }\n if (inputData.validation) {\n form.validation[name] = inputData.validation;\n }\n if (!inputData.valid) {\n form.valid = false;\n }\n }\n }\n return form;\n default:\n return formInputData(el);\n }\n}\n\nfunction formInputData(el: Element): FormInputData | undefined {\n // Client-side form validation\n // https://developer.mozilla.org/en-US/docs/Learn/Forms/Form_validation\n const vel = el as HTMLInputElement;\n if (vel.willValidate) {\n let valid = true;\n for (const key in vel.validity) {\n if (key !== \"customError\" && key !== \"valid\") {\n if ((vel.validity as any)[key]) {\n const msgs = (vel as any)[\"validation\"];\n if (msgs) {\n const msg = (msgs as any)[key];\n if (msg) {\n vel.setCustomValidity(msg);\n // vel.reportValidity();\n valid = false;\n break;\n } else {\n vel.setCustomValidity(\"\");\n // vel.reportValidity();\n break;\n }\n }\n }\n }\n }\n if (valid) {\n vel.setCustomValidity(\"\");\n // vel.reportValidity();\n }\n }\n\n let data: FormInputData | undefined;\n switch (el.nodeName) {\n case \"INPUT\":\n const iel = el as HTMLInputElement;\n switch (iel.type) {\n case \"text\":\n case \"hidden\":\n case \"password\":\n case \"email\":\n case \"search\":\n case \"url\":\n case \"tel\":\n case \"color\":\n case \"submit\":\n case \"button\":\n data = {\n name: iel.name,\n value: iel.value === \"\" ? null : iel.value,\n validation: iel.validationMessage,\n valid: iel.validity.valid\n };\n break;\n case \"number\":\n case \"range\":\n data = {\n name: iel.name,\n value: isNaN(iel.valueAsNumber)\n ? null\n : iel.valueAsNumber,\n valueString: iel.value,\n validation: iel.validationMessage,\n valid: iel.validity.valid\n };\n break;\n case \"datetime-local\":\n data = {\n name: iel.name,\n value: iel.value === \"\" ? null : iel.value,\n valueNumber: isNaN(iel.valueAsNumber)\n ? null\n : iel.valueAsNumber,\n valueDate: isNaN(iel.valueAsNumber)\n ? null\n : new Date(iel.valueAsNumber),\n validation: iel.validationMessage,\n valid: iel.validity.valid\n };\n break;\n case \"date\":\n case \"month\":\n case \"time\":\n case \"week\":\n data = {\n name: iel.name,\n value: iel.value === \"\" ? null : iel.value,\n valueNumber: isNaN(iel.valueAsNumber)\n ? null\n : iel.valueAsNumber,\n valueDate: iel.valueAsDate,\n validation: iel.validationMessage,\n valid: iel.validity.valid\n };\n break;\n case \"radio\":\n data = {\n name: iel.name,\n value: iel.checked ? iel.value : null,\n valueString: iel.value,\n validation: iel.validationMessage,\n valid: iel.validity.valid\n };\n break;\n case \"checkbox\":\n if (iel.value === \"on\") { // value not set in element\n data = {\n name: iel.name,\n value: iel.checked,\n valueString: iel.value,\n validation: iel.validationMessage,\n valid: iel.validity.valid\n };\n } else {\n data = {\n name: iel.name,\n value: iel.checked ? String(iel.value) : null,\n valueString: iel.value,\n validation: iel.validationMessage,\n valid: iel.validity.valid\n };\n }\n break;\n case \"file\":\n const files = (iel as any).files as FileList;\n const value: any = iel.multiple\n ? files[0]\n : files.length === 1 ? files[0] : null;\n data = {\n name: iel.name,\n value,\n valueString: iel.value,\n validation: iel.validationMessage,\n valid: iel.validity.valid\n };\n break;\n }\n break;\n case \"SELECT\":\n const sel = el as HTMLSelectElement;\n if (sel.multiple) {\n const values = Array.from(sel.selectedOptions).map(o => o.value);\n data = {\n name: sel.name,\n value: values,\n valueString: sel.value,\n validation: sel.validationMessage,\n valid: sel.validity.valid\n };\n } else {\n data = {\n name: sel.name,\n value: sel.value === \"\" ? null : sel.value,\n validation: sel.validationMessage,\n valid: sel.validity.valid\n };\n }\n break;\n case \"TEXTAREA\":\n const tel = el as HTMLTextAreaElement;\n data = {\n name: tel.name,\n value: tel.value === \"\" ? null : tel.value,\n validation: tel.validationMessage,\n valid: tel.validity.valid\n };\n break;\n case \"BUTTON\":\n const bel = el as HTMLButtonElement;\n data = {\n name: bel.name,\n value: bel.value === \"\" ? null : bel.value,\n validation: bel.validationMessage,\n valid: bel.validity.valid\n };\n break;\n }\n return data;\n}\n"],"names":["$a85519cc1b20a4af$export$3dcd9fad60135c2c","HAppActions","$a85519cc1b20a4af$export$3d736e925369e0e4","HDispatchScopes","$a85519cc1b20a4af$var$schedule","window","requestAnimationFrame","callback","setTimeout","$a85519cc1b20a4af$var$unschedule","cancelAnimationFrame","handle","clearTimeout","$a85519cc1b20a4af$var$msgAction","$a85519cc1b20a4af$var$msgDispatch","$a85519cc1b20a4af$var$msgRender","$a85519cc1b20a4af$var$HAPP","$a85519cc1b20a4af$export$eb8950696418f795","hAppI","$a85519cc1b20a4af$export$8cfef5dc37c46888","state","view","dispatcher","element","debug","name","$a85519cc1b20a4af$export$1cfc54b3834d3c50","customElements","define","HTMLElement","observedAttributes","attributes","constructor","super","this","_happel","undefined","customElement","connectedCallback","attachShadow","mode","mount","shadowRoot","disconnectedCallback","umount","adoptedCallback","update","attributeChangedCallback","attrName","oldVal","newVal","dispatch","attribute","refs","type","data","scope","$a85519cc1b20a4af$var$__awaiter","_dispatchAction","render","t0","performance","now","hsmls","e","error","t1","log","actionCb","actionType","event","Function","CustomEvent","detail","el","target","nodeName","preventDefault","form","validation","valid","els","elements","i","length","inputData","$a85519cc1b20a4af$var$formInputData","formData","value","String","Array","concat","push","filter","d","$a85519cc1b20a4af$var$formData","document","getElementById","_updateDom","hasAttribute","removeAttribute","aNodes","querySelectorAll","a","happ","firstChild","removeChild","_windowActionListener","removeEventListener","action","_updateSched","toHsml","skip","toHtml","outerHTML","init","then","_dispatch","_dispatchElement","_dispatchWindow","$a85519cc1b20a4af$var$elementDispatchCustomEvent","dispatchEvent","windowActionListen","warn","addEventListener","hsml","ctx","$8IJ2T","hsmls2idomPatch","_b","_a","call","vel","willValidate","key","validity","msgs","msg","setCustomValidity","iel","validationMessage","isNaN","valueAsNumber","valueString","valueNumber","valueDate","Date","valueAsDate","checked","files","multiple","sel","values","from","selectedOptions","map","o","tel","bel","console"],"version":3,"file":"hsml-appi_demo.3d3d0e4e.js.map"}
@@ -1,2 +0,0 @@
1
- function e(e,t,i,n){Object.defineProperty(e,t,{get:i,set:n,enumerable:!0,configurable:!0})}var t="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},i={},n={},a=t.parcelRequirede31;null==a&&((a=function(e){if(e in i)return i[e].exports;if(e in n){var t=n[e];delete n[e];var a={id:e,exports:{}};return i[e]=a,t.call(a.exports,a,a.exports),a.exports}var s=new Error("Cannot find module '"+e+"'");throw s.code="MODULE_NOT_FOUND",s}).register=function(e,t){n[e]=t},t.parcelRequirede31=a),a.register("lQ1yG",(function(t,i){e(t.exports,"HAppActions",(function(){return n}),(function(e){return n=e})),e(t.exports,"HDispatchScopes",(function(){return l}),(function(e){return l=e})),e(t.exports,"happ",(function(){return f}),(function(e){return f=e})),e(t.exports,"HApp",(function(){return b}),(function(e){return b=e})),e(t.exports,"happel",(function(){return w}),(function(e){return w=e}));var n,s,l,o,r=a("hrCkK"),d=function(e,t,i,n){return new(i||(i=Promise))((function(a,s){function l(e){try{r(n.next(e))}catch(e){s(e)}}function o(e){try{r(n.throw(e))}catch(e){s(e)}}function r(e){var t;e.done?a(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(l,o)}r((n=n.apply(e,t||[])).next())}))};(s=n||(n={})).init="happ-init",s.mount="happ-mount",s.umount="happ-umount",s.action="happ-action",s.attribute="happ-attribute",(o=l||(l={})).element="element",o.window="window";const u=window.requestAnimationFrame||function(e){window.setTimeout(e,1e3/60)},c=window.cancelAnimationFrame||function(e){window.clearTimeout(e)},h="action:",v="dispatch:",m="render:",p="happ";function f(e){return new b(e.state,e.view,e.dispatcher,e.element,e.debug,e.name)}function w(e){customElements.define(`${p}-${e.name}`,class extends HTMLElement{static get observedAttributes(){return e.attributes}constructor(){super(),this._happel=new b(e.state,e.view,e.dispatcher,void 0,e.debug,e.name,e.attributes),this._happel.customElement=this}connectedCallback(){this.attachShadow({mode:"open"}),this._happel.mount(this.shadowRoot)}disconnectedCallback(){this._happel.umount()}adoptedCallback(){this._happel.update()}attributeChangedCallback(e,t,i){this._happel.dispatch(n.attribute,{attrName:e,oldVal:t,newVal:i})}})}class b{constructor(e,t,i,a,s,l,o){this.refs={},this.dispatch=(e,t,i)=>d(this,void 0,void 0,(function*(){return this._dispatchAction(e,t,void 0,i)})),this.render=()=>{if(this.debug){const e=performance.now();let t;try{t=this.view(this.state)}catch(e){b.error(this.name,m,e)}const i=performance.now();return b.log(this.name,m,i-e+" ms",t),null!=t?t:[]}{let e;try{e=this.view(this.state)}catch(e){b.error(this.name,m,e)}return null!=e?e:[]}},this.actionCb=(e,t,i)=>{void 0===(t=(null==t?void 0:t.constructor)===Function?t(i):t)&&i&&(t=i instanceof CustomEvent?i.detail:function(e){const t=e.target;if("FORM"===t.nodeName){e.preventDefault();const i={data:{},validation:{},valid:!0},n=t.elements;for(let e=0;e<n.length;e++){const t=y(n[e]);if(t&&t.name){const a=i.data,s=t.name,l=t.value;void 0===a[s]?a[s]=l:"string"==typeof a[s]||a[s]instanceof String?a[s]=l instanceof Array?[a[s],...l]:[a[s],l]:a[s]instanceof Array?l instanceof Array?a[s]=a[s].concat(l):a[s].push(l):a[s]=l instanceof Array?[a[s],...l]:[a[s],l],a[s]instanceof Array&&(a[s]=a[s].filter((e=>null!==e)),"radio"===n[e].type&&(a[s]=a[s].length?a[s][0]:null)),t.validation&&(i.validation[s]=t.validation),t.valid||(i.valid=!1)}}return i}return y(t)}(i)),this._dispatchAction(e,t,i)},this.mount=e=>{const t="string"==typeof e?document.getElementById(e):e;if(t&&t[p]){t[p].umount()}if(t&&!this.element){this.element=t,t[p]=this;const e=this.render();this._updateDom(t,e,this),this._dispatchAction(n.mount,this.element)}return this},this.umount=()=>{if(this.element){this._dispatchAction(n.umount,this.element),this.element.hasAttribute(p)&&this.element.removeAttribute(p);const e=this.element.querySelectorAll(`[${p}]`);for(let t=0;t<e.length;t++){const i=e[t].happ;null==i||i.umount()}for(;this.element.firstChild;)this.element.removeChild(this.element.firstChild);delete this.element.happ,this.element=void 0}return this._windowActionListener&&window.removeEventListener(n.action,this._windowActionListener),this},this.update=()=>(this.element&&!this._updateSched&&(this._updateSched=u((()=>{if(this.element){const e=this.render();this._updateDom(this.element,e,this)}this._updateSched=void 0}))),this),this.toHsml=()=>{if(this.element){if(!this._updateSched)return["div",{skip:!0}];c(this._updateSched),this._updateSched=void 0}const e=this.render();return e.push((e=>{this.element||(this.element=e,e.happ=this,this._dispatchAction(n.mount,this.element))})),["div",e]},this.toHtml=()=>this.element?this.element.outerHTML:"",this.debug=null!=s&&s,this.name=null!=l?l:p,this.attributes=null!=o?o:[],this.state=e(),this.view=t,this.dispatcher=null!=i?i:e=>d(this,void 0,void 0,(function*(){return b.log(this.name,h,e.type,e.data)})),this._dispatchAction(n.init,this).then((()=>a&&this.mount(a)))}_dispatchAction(e,t,i,n){return d(this,void 0,void 0,(function*(){if(this.debug){b.log(this.name,h,{type:e,data:t,event:i});const a=performance.now();yield this._dispatch(e,t,i,n);const s=performance.now();b.log(this.name,v,s-a+" ms",this.state)}else yield this._dispatch(e,t,i,n)}))}_dispatch(e,t,i,n){return d(this,void 0,void 0,(function*(){if(!n){try{yield this.dispatcher({type:e,data:t,event:i},this.state,this.dispatch)}catch(e){b.error(this.name,v,e)}this.update()}"element"===n&&this._dispatchElement(e,t),"window"===n&&this._dispatchWindow(e,t)}))}_dispatchElement(e,t){return d(this,void 0,void 0,(function*(){this.customElement&&g(this.customElement,n.action,{type:e,data:t}),!this.customElement&&this.element&&g(this.element,n.action,{type:e,data:t})}))}_dispatchWindow(e,t){return d(this,void 0,void 0,(function*(){window.dispatchEvent(new CustomEvent(n.action,{detail:{type:e,data:t}}))}))}windowActionListen(){this._windowActionListener?b.warn("windowEventListener already added"):(this._windowActionListener=e=>{const t=e.detail;this._dispatchAction(n.action,t)},window.addEventListener(n.action,this._windowActionListener))}_updateDom(e,t,i){if(this.debug){const n=performance.now();(0,r.hsmls2idomPatch)(e,t,i);const a=performance.now();b.log(this.name,"update:",a-n+" ms",e)}else(0,r.hsmls2idomPatch)(e,t,i)}}function g(e,t,i){var n,a;null==e||e.dispatchEvent(new CustomEvent(t,{detail:i})),null===(a=(n=e)[`on${t}`])||void 0===a||a.call(n,new CustomEvent(t,{detail:i}))}function y(e){const t=e;if(t.willValidate){let e=!0;for(const i in t.validity)if("customError"!==i&&"valid"!==i&&t.validity[i]){const n=t.validation;if(n){const a=n[i];if(a){t.setCustomValidity(a),e=!1;break}t.setCustomValidity("");break}}e&&t.setCustomValidity("")}let i;switch(e.nodeName){case"INPUT":const t=e;switch(t.type){case"text":case"hidden":case"password":case"email":case"search":case"url":case"tel":case"color":case"submit":case"button":i={name:t.name,value:""===t.value?null:t.value,validation:t.validationMessage,valid:t.validity.valid};break;case"number":case"range":i={name:t.name,value:isNaN(t.valueAsNumber)?null:t.valueAsNumber,valueString:t.value,validation:t.validationMessage,valid:t.validity.valid};break;case"datetime-local":i={name:t.name,value:""===t.value?null:t.value,valueNumber:isNaN(t.valueAsNumber)?null:t.valueAsNumber,valueDate:isNaN(t.valueAsNumber)?null:new Date(t.valueAsNumber),validation:t.validationMessage,valid:t.validity.valid};break;case"date":case"month":case"time":case"week":i={name:t.name,value:""===t.value?null:t.value,valueNumber:isNaN(t.valueAsNumber)?null:t.valueAsNumber,valueDate:t.valueAsDate,validation:t.validationMessage,valid:t.validity.valid};break;case"radio":i={name:t.name,value:t.checked?t.value:null,valueString:t.value,validation:t.validationMessage,valid:t.validity.valid};break;case"checkbox":i="on"===t.value?{name:t.name,value:t.checked,valueString:t.value,validation:t.validationMessage,valid:t.validity.valid}:{name:t.name,value:t.checked?String(t.value):null,valueString:t.value,validation:t.validationMessage,valid:t.validity.valid};break;case"file":const e=t.files,n=t.multiple||1===e.length?e[0]:null;i={name:t.name,value:n,valueString:t.value,validation:t.validationMessage,valid:t.validity.valid}}break;case"SELECT":const n=e;if(n.multiple){const e=Array.from(n.selectedOptions).map((e=>e.value));i={name:n.name,value:e,valueString:n.value,validation:n.validationMessage,valid:n.validity.valid}}else i={name:n.name,value:""===n.value?null:n.value,validation:n.validationMessage,valid:n.validity.valid};break;case"TEXTAREA":const a=e;i={name:a.name,value:""===a.value?null:a.value,validation:a.validationMessage,valid:a.validity.valid};break;case"BUTTON":const s=e;i={name:s.name,value:""===s.value?null:s.value,validation:s.validationMessage,valid:s.validity.valid}}return i}b.log=console.log,b.error=console.error,b.warn=console.warn}));
2
- //# sourceMappingURL=hsml-appi_demo.eac28520.js.map