peryl 1.5.2 → 1.5.3

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 (184) hide show
  1. package/README.md +30 -16
  2. package/demo/hsml-app-form-validation_demo.ts +22 -23
  3. package/demo/hsml-app-form_demo.ts +24 -20
  4. package/demo/hsml-app-test_demo.ts +35 -36
  5. package/demo/hsml-app-tictactoe_demo.ts +16 -15
  6. package/demo/hsml-app_demo.ts +20 -12
  7. package/demo/hsml-appel_demo.html +7 -0
  8. package/demo/hsml-appel_demo.ts +33 -25
  9. package/demo/hsml-appi_demo.ts +9 -9
  10. package/demo/hsml_demo.ts +27 -22
  11. package/demo/js/hsml-app-js-happi_demo.html +16 -8
  12. package/demo/js/hsml-app-js_demo.html +15 -15
  13. package/dist/browser-esmodule/encode.js.map +1 -1
  14. package/dist/browser-esmodule/hsml-app.js +67 -73
  15. package/dist/browser-esmodule/hsml-app.js.map +1 -1
  16. package/dist/browser-esmodule/hsml-convert.js.map +1 -1
  17. package/dist/browser-esmodule/hsml-dom.js +3 -3
  18. package/dist/browser-esmodule/hsml-dom.js.map +1 -1
  19. package/dist/browser-esmodule/hsml-h.js.map +1 -1
  20. package/dist/browser-esmodule/hsml-html.js +2 -2
  21. package/dist/browser-esmodule/hsml-html.js.map +1 -1
  22. package/dist/browser-esmodule/hsml-idom.js +5 -5
  23. package/dist/browser-esmodule/hsml-idom.js.map +1 -1
  24. package/dist/browser-esmodule/hsml.js.map +1 -1
  25. package/dist/browser-esmodule/http.js.map +1 -1
  26. package/dist/browser-esmodule/index.js +71 -77
  27. package/dist/browser-esmodule/index.js.map +1 -1
  28. package/dist/browser-esmodule/router.js.map +1 -1
  29. package/dist/browser-umd/encode.js +1 -1
  30. package/dist/browser-umd/encode.js.map +1 -1
  31. package/dist/browser-umd/hsml-app.js +1 -1
  32. package/dist/browser-umd/hsml-app.js.map +1 -1
  33. package/dist/browser-umd/hsml-convert.js.map +1 -1
  34. package/dist/browser-umd/hsml-dom.js +1 -1
  35. package/dist/browser-umd/hsml-dom.js.map +1 -1
  36. package/dist/browser-umd/hsml-h.js.map +1 -1
  37. package/dist/browser-umd/hsml-html.js +1 -1
  38. package/dist/browser-umd/hsml-html.js.map +1 -1
  39. package/dist/browser-umd/hsml-idom.js +1 -1
  40. package/dist/browser-umd/hsml-idom.js.map +1 -1
  41. package/dist/browser-umd/hsml.js.map +1 -1
  42. package/dist/browser-umd/http.js +1 -1
  43. package/dist/browser-umd/http.js.map +1 -1
  44. package/dist/browser-umd/index.js +1 -1
  45. package/dist/browser-umd/index.js.map +1 -1
  46. package/dist/browser-umd/router.js +1 -1
  47. package/dist/browser-umd/router.js.map +1 -1
  48. package/dist/browser-umd/validators-moment.js +1 -1
  49. package/dist/browser-umd/validators-moment.js.map +1 -1
  50. package/dist/browser-umd/validators-numeral.js.map +1 -1
  51. package/dist/demo/encode_demo.ce182166.js.map +1 -1
  52. package/dist/demo/encode_demo.f40a44eb.js.map +1 -1
  53. package/dist/demo/hsml-app-form-validation_demo.a9e2c583.js +2 -0
  54. package/dist/demo/hsml-app-form-validation_demo.a9e2c583.js.map +1 -0
  55. package/dist/demo/hsml-app-form-validation_demo.bb392ab0.js +2 -0
  56. package/dist/demo/hsml-app-form-validation_demo.bb392ab0.js.map +1 -0
  57. package/dist/demo/hsml-app-form-validation_demo.c6856b02.js +2 -0
  58. package/dist/demo/hsml-app-form-validation_demo.c6856b02.js.map +1 -0
  59. package/dist/demo/hsml-app-form-validation_demo.fdcc0b2d.js +2 -0
  60. package/dist/demo/hsml-app-form-validation_demo.fdcc0b2d.js.map +1 -0
  61. package/dist/demo/hsml-app-form-validation_demo.html +1 -1
  62. package/dist/demo/hsml-app-form_demo.e36ef1e9.js +2 -0
  63. package/dist/demo/hsml-app-form_demo.e36ef1e9.js.map +1 -0
  64. package/dist/demo/hsml-app-form_demo.fd22dfcf.js +2 -0
  65. package/dist/demo/hsml-app-form_demo.fd22dfcf.js.map +1 -0
  66. package/dist/demo/hsml-app-form_demo.html +1 -1
  67. package/dist/demo/hsml-app-test_demo.ba5f166c.js +2 -0
  68. package/dist/demo/hsml-app-test_demo.ba5f166c.js.map +1 -0
  69. package/dist/demo/hsml-app-test_demo.e8b5e4b2.js +2 -0
  70. package/dist/demo/hsml-app-test_demo.e8b5e4b2.js.map +1 -0
  71. package/dist/demo/hsml-app-test_demo.html +1 -1
  72. package/dist/demo/hsml-app-tictactoe_demo.03d8363f.js +2 -0
  73. package/dist/demo/hsml-app-tictactoe_demo.03d8363f.js.map +1 -0
  74. package/dist/demo/hsml-app-tictactoe_demo.399f8e69.js +2 -0
  75. package/dist/demo/hsml-app-tictactoe_demo.399f8e69.js.map +1 -0
  76. package/dist/demo/hsml-app-tictactoe_demo.html +1 -1
  77. package/dist/demo/hsml-app_demo.44aa1072.js +2 -0
  78. package/dist/demo/hsml-app_demo.44aa1072.js.map +1 -0
  79. package/dist/demo/hsml-app_demo.70ef3e7a.js +2 -0
  80. package/dist/demo/hsml-app_demo.70ef3e7a.js.map +1 -0
  81. package/dist/demo/hsml-app_demo.html +1 -1
  82. package/dist/demo/hsml-appel_demo.2a9f7f3f.js +2 -0
  83. package/dist/demo/hsml-appel_demo.2a9f7f3f.js.map +1 -0
  84. package/dist/demo/hsml-appel_demo.bea7849a.js +2 -0
  85. package/dist/demo/hsml-appel_demo.bea7849a.js.map +1 -0
  86. package/dist/demo/hsml-appel_demo.html +1 -1
  87. package/dist/demo/hsml-appi_demo.3dc5de90.js +2 -0
  88. package/dist/demo/hsml-appi_demo.3dc5de90.js.map +1 -0
  89. package/dist/demo/hsml-appi_demo.bfc7056a.js +2 -0
  90. package/dist/demo/hsml-appi_demo.bfc7056a.js.map +1 -0
  91. package/dist/demo/hsml-appi_demo.html +1 -1
  92. package/dist/demo/hsml-convert_demo.0ea1fa3b.js.map +1 -1
  93. package/dist/demo/hsml-convert_demo.63e3e7b5.js.map +1 -1
  94. package/dist/demo/{hsml_demo.ff950ba1.js → hsml_demo.a248689a.js} +2 -2
  95. package/dist/demo/hsml_demo.a248689a.js.map +1 -0
  96. package/dist/demo/hsml_demo.eb3b08be.js +2 -0
  97. package/dist/demo/hsml_demo.eb3b08be.js.map +1 -0
  98. package/dist/demo/hsml_demo.html +1 -1
  99. package/dist/demo/http_demo.3e7da3d8.js.map +1 -1
  100. package/dist/demo/http_demo.8e435f23.js.map +1 -1
  101. package/dist/demo/i18n_demo.html +1 -1
  102. package/dist/demo/router_demo.3cfa03aa.js.map +1 -1
  103. package/dist/demo/router_demo.89ab1681.js.map +1 -1
  104. package/dist/demo/{validators_demo.252e13a6.js → validators_demo.90ff6001.js} +2 -2
  105. package/dist/demo/validators_demo.90ff6001.js.map +1 -0
  106. package/dist/demo/{validators_demo.66893723.js → validators_demo.ef5b2dea.js} +2 -2
  107. package/dist/demo/validators_demo.ef5b2dea.js.map +1 -0
  108. package/dist/demo/validators_demo.html +1 -1
  109. package/dist/encode.js +1 -1
  110. package/dist/encode.js.map +1 -1
  111. package/dist/hsml-app.d.ts +38 -37
  112. package/dist/hsml-app.js +60 -62
  113. package/dist/hsml-app.js.map +1 -1
  114. package/dist/hsml-convert.d.ts +3 -3
  115. package/dist/hsml-convert.js.map +1 -1
  116. package/dist/hsml-dom.d.ts +2 -2
  117. package/dist/hsml-dom.js +3 -3
  118. package/dist/hsml-dom.js.map +1 -1
  119. package/dist/hsml-h.d.ts +8 -8
  120. package/dist/hsml-h.js.map +1 -1
  121. package/dist/hsml-html.d.ts +4 -4
  122. package/dist/hsml-html.js +2 -2
  123. package/dist/hsml-html.js.map +1 -1
  124. package/dist/hsml-idom.d.ts +2 -2
  125. package/dist/hsml-idom.js +5 -5
  126. package/dist/hsml-idom.js.map +1 -1
  127. package/dist/hsml.d.ts +26 -27
  128. package/dist/hsml.js.map +1 -1
  129. package/dist/http.js +1 -1
  130. package/dist/http.js.map +1 -1
  131. package/dist/router.js +1 -1
  132. package/dist/router.js.map +1 -1
  133. package/package.json +8 -8
  134. package/src/hsml-app.ts +209 -144
  135. package/src/hsml-convert.ts +8 -8
  136. package/src/hsml-dom.ts +18 -18
  137. package/src/hsml-h.ts +10 -10
  138. package/src/hsml-html.ts +19 -19
  139. package/src/hsml-idom.ts +25 -25
  140. package/src/hsml.ts +46 -143
  141. package/demo/hsml-appc_demo.html +0 -16
  142. package/demo/hsml-appc_demo.ts +0 -49
  143. package/dist/demo/hsml-app-form-validation_demo.0b03b743.js +0 -2
  144. package/dist/demo/hsml-app-form-validation_demo.0b03b743.js.map +0 -1
  145. package/dist/demo/hsml-app-form-validation_demo.b3a5c810.js +0 -2
  146. package/dist/demo/hsml-app-form-validation_demo.b3a5c810.js.map +0 -1
  147. package/dist/demo/hsml-app-form-validation_demo.d3925067.js +0 -2
  148. package/dist/demo/hsml-app-form-validation_demo.d3925067.js.map +0 -1
  149. package/dist/demo/hsml-app-form-validation_demo.f757d763.js +0 -2
  150. package/dist/demo/hsml-app-form-validation_demo.f757d763.js.map +0 -1
  151. package/dist/demo/hsml-app-form_demo.007ffcaa.js +0 -2
  152. package/dist/demo/hsml-app-form_demo.007ffcaa.js.map +0 -1
  153. package/dist/demo/hsml-app-form_demo.a034239d.js +0 -2
  154. package/dist/demo/hsml-app-form_demo.a034239d.js.map +0 -1
  155. package/dist/demo/hsml-app-test_demo.35c14dc9.js +0 -2
  156. package/dist/demo/hsml-app-test_demo.35c14dc9.js.map +0 -1
  157. package/dist/demo/hsml-app-test_demo.3c7e16ae.js +0 -2
  158. package/dist/demo/hsml-app-test_demo.3c7e16ae.js.map +0 -1
  159. package/dist/demo/hsml-app-tictactoe_demo.5f4861c1.js +0 -2
  160. package/dist/demo/hsml-app-tictactoe_demo.5f4861c1.js.map +0 -1
  161. package/dist/demo/hsml-app-tictactoe_demo.7deeabad.js +0 -2
  162. package/dist/demo/hsml-app-tictactoe_demo.7deeabad.js.map +0 -1
  163. package/dist/demo/hsml-app_demo.87d83c29.js +0 -2
  164. package/dist/demo/hsml-app_demo.87d83c29.js.map +0 -1
  165. package/dist/demo/hsml-app_demo.941a13a6.js +0 -2
  166. package/dist/demo/hsml-app_demo.941a13a6.js.map +0 -1
  167. package/dist/demo/hsml-appc_demo.0234ff15.js +0 -2
  168. package/dist/demo/hsml-appc_demo.0234ff15.js.map +0 -1
  169. package/dist/demo/hsml-appc_demo.f5783031.js +0 -2
  170. package/dist/demo/hsml-appc_demo.f5783031.js.map +0 -1
  171. package/dist/demo/hsml-appc_demo.html +0 -1
  172. package/dist/demo/hsml-appel_demo.0e8a4d4c.js +0 -2
  173. package/dist/demo/hsml-appel_demo.0e8a4d4c.js.map +0 -1
  174. package/dist/demo/hsml-appel_demo.1a5c2c26.js +0 -2
  175. package/dist/demo/hsml-appel_demo.1a5c2c26.js.map +0 -1
  176. package/dist/demo/hsml-appi_demo.2c3fb511.js +0 -2
  177. package/dist/demo/hsml-appi_demo.2c3fb511.js.map +0 -1
  178. package/dist/demo/hsml-appi_demo.427fdebd.js +0 -2
  179. package/dist/demo/hsml-appi_demo.427fdebd.js.map +0 -1
  180. package/dist/demo/hsml_demo.33f28c29.js +0 -2
  181. package/dist/demo/hsml_demo.33f28c29.js.map +0 -1
  182. package/dist/demo/hsml_demo.ff950ba1.js.map +0 -1
  183. package/dist/demo/validators_demo.252e13a6.js.map +0 -1
  184. package/dist/demo/validators_demo.66893723.js.map +0 -1
@@ -1,2 +1,2 @@
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 s=e();for(var a in s)("object"==typeof exports?exports:t)[a]=s[a]}}(self,(function(){return function(){"use strict";var t={};return function(){var e=t;Object.defineProperty(e,"__esModule",{value:!0}),e.route=e.Router=e.Route=e.Emitter=void 0;class s{constructor(){this._callbacks={}}on(t,e){return t in this._callbacks||(this._callbacks[t]=[]),this._callbacks[t].push(e),this}emit(t,...e){return t in this._callbacks&&this._callbacks[t].forEach((t=>t.apply(this,e))),this}off(t,e){if(!this._callbacks||0===arguments.length)return this._callbacks={},this;const s=this._callbacks[t];if(!s)return this;if(1===arguments.length)return delete this._callbacks[t],this;for(let t=0;t<s.length;t++)if(s[t]===e){s.splice(t,1);break}return this}}e.Emitter=s;class a{constructor(t){this._params={},this.keys=[],this.path=t,this._pathParse(t,!1,!1)}match(t,e){const s=this._regex.exec(t);if(!s)return!1;for(let t=1;t<s.length;++t){const a=this.keys[t-1],n="string"==typeof s[t]?decodeURIComponent(s[t]):s[t];a&&(this._params[a.name]=n),e.push(n)}return!0}_pathParse(t,e,s){t instanceof RegExp?this._regex=t:(t instanceof Array&&(t="("+t.join("|")+")"),t=t.concat(s?"":"/?").replace(/\/\(/g,"(?:/").replace(/\+/g,"__plus__").replace(/(\/)?(\.)?:(\w+)(?:(\(.*?\)))?(\?)?/g,((t,e,s,a,n,r)=>(this.keys.push({name:a,optional:!!r}),e=null!=e?e:"",(r?"":e)+"(?:"+(r?e:"")+(null!=s?s:"")+(null!=n?n:s?"([^/.]+?)":"([^/]+?)")+")"+(null!=r?r:"")))).replace(/([\/.])/g,"\\$1").replace(/__plus__/g,"(.+)").replace(/\*/g,"(.*)"),this._regex=new RegExp("^"+t+"$",e?"":"i"))}}e.Route=a;class n extends s{static route(t,e){return n.default.route(t,e),n.default}static navigate(t,e=!1){return n.default.navigate(t,e),n.default}static start(){return n.default.start(),n.default}static hash(){return n.default.hash()}static handle(t){return n.default.handle(t)}constructor(){super(),this._routes=[],this._onHashChange=()=>{this.handle(this.hash())},window.addEventListener?window.addEventListener("hashchange",this._onHashChange,!1):window.attachEvent("onhashchange",this._onHashChange)}route(t,e){const s=new a(t);return this._routes.push(s),this.on(t,((t,s)=>e.apply(s,t))),this}navigate(t,e=!1){const s=this.hash();return window.location.hash=t,e&&s===t&&this.handle(t),this}start(){return this._onHashChange(),this}hash(){return window.location.hash.substring(1)}handle(t){for(const e of this._routes){const s=[];if(e.match(t,s)){this.emit(e.path,s,e);break}}return this}}e.Router=n,n.default=new n,e.route=function(t,e){return n.route(t,e)}}(),t}()}));
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 s=e();for(var a in s)("object"==typeof exports?exports:t)[a]=s[a]}}(self,(function(){return function(){"use strict";var t={};return function(){var e=t;Object.defineProperty(e,"__esModule",{value:!0}),e.route=e.Router=e.Route=e.Emitter=void 0;class s{constructor(){this._callbacks={}}on(t,e){return t in this._callbacks||(this._callbacks[t]=[]),this._callbacks[t].push(e),this}emit(t,...e){return t in this._callbacks&&this._callbacks[t].forEach((t=>t.apply(this,e))),this}off(t,e){if(!this._callbacks||0===arguments.length)return this._callbacks={},this;const s=this._callbacks[t];if(!s)return this;if(1===arguments.length)return delete this._callbacks[t],this;for(let t=0;t<s.length;t++)if(s[t]===e){s.splice(t,1);break}return this}}e.Emitter=s;class a{constructor(t){this._params={},this.keys=[],this.path=t,this._pathParse(t,!1,!1)}match(t,e){const s=this._regex.exec(t);if(!s)return!1;for(let t=1;t<s.length;++t){const a=this.keys[t-1],n="string"==typeof s[t]?decodeURIComponent(s[t]):s[t];a&&(this._params[a.name]=n),e.push(n)}return!0}_pathParse(t,e,s){t instanceof RegExp?this._regex=t:(t instanceof Array&&(t="("+t.join("|")+")"),t=t.concat(s?"":"/?").replace(/\/\(/g,"(?:/").replace(/\+/g,"__plus__").replace(/(\/)?(\.)?:(\w+)(?:(\(.*?\)))?(\?)?/g,((t,e,s,a,n,r)=>(this.keys.push({name:a,optional:!!r}),e=null!=e?e:"",(r?"":e)+"(?:"+(r?e:"")+(null!=s?s:"")+(null!=n?n:s?"([^/.]+?)":"([^/]+?)")+")"+(null!=r?r:"")))).replace(/([\/.])/g,"\\$1").replace(/__plus__/g,"(.+)").replace(/\*/g,"(.*)"),this._regex=new RegExp("^"+t+"$",e?"":"i"))}}e.Route=a;class n extends s{static route(t,e){return n.default.route(t,e),n.default}static navigate(t,e=!1){return n.default.navigate(t,e),n.default}static start(){return n.default.start(),n.default}static hash(){return n.default.hash()}static handle(t){return n.default.handle(t)}constructor(){super(),this._routes=[],this._onHashChange=()=>{this.handle(this.hash())},window.addEventListener?window.addEventListener("hashchange",this._onHashChange,!1):window.attachEvent("onhashchange",this._onHashChange)}route(t,e){const s=new a(t);return this._routes.push(s),this.on(t,((t,s)=>e.apply(s,t))),this}navigate(t,e=!1){const s=this.hash();return window.location.hash=t,e&&s===t&&this.handle(t),this}start(){return this._onHashChange(),this}hash(){return window.location.hash.substring(1)}handle(t){for(const e of this._routes){const s=[];if(e.match(t,s)){this.emit(e.path,s,e);break}}return this}}n.default=new n,e.Router=n,e.route=function(t,e){return n.route(t,e)}}(),t}()}));
2
2
  //# sourceMappingURL=router.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"router.js","mappings":"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","sources":["webpack://peryl/webpack/universalModuleDefinition","webpack://peryl/./src/router.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 ","// implemented based on https://github.com/mench/hash-router/\n\ntype Path = string | RegExp | Array<string>;\n\nexport type Keys = { name: string; optional: boolean }[];\n\nexport class Emitter {\n\n private _callbacks: { [key: string]: Function[] } = {};\n\n on(event: string, fn: Function): this {\n if (!(event in this._callbacks)) {\n this._callbacks[event] = [];\n }\n this._callbacks[event].push(fn);\n return this;\n }\n\n emit(event: string, ...args: any[]): this {\n if (event in this._callbacks) {\n this._callbacks[event].forEach(cb => cb.apply(this, args));\n }\n return this;\n }\n\n off(event: string, fn?: Function) {\n if (!this._callbacks || arguments.length === 0) {\n this._callbacks = {};\n return this;\n }\n const callbacks = this._callbacks[event];\n if (!callbacks) {\n return this;\n }\n if (arguments.length === 1) {\n delete this._callbacks[event];\n return this;\n }\n for (let i = 0; i < callbacks.length; i++) {\n const callback = callbacks[i];\n if (callback === fn) {\n callbacks.splice(i, 1);\n break;\n }\n }\n return this;\n }\n}\n\nexport class Route {\n\n private _regex!: RegExp;\n private _params: any = {};\n\n readonly path: string;\n readonly keys: Keys = [];\n\n constructor(path: string) {\n this.path = path;\n this._pathParse(path, false, false);\n }\n\n match(path: string, params: string[]) {\n const m = this._regex.exec(path);\n if (!m) {\n return false;\n }\n for (let i = 1; i < m.length; ++i) {\n const key = this.keys[i - 1];\n const val = \"string\" === typeof m[i] ? decodeURIComponent(m[i]) : m[i];\n if (key) {\n this._params[key.name] = val;\n }\n params.push(val);\n }\n return true;\n }\n\n private _pathParse(path: Path, sensitive: boolean, strict: boolean): void {\n if (path instanceof RegExp) {\n this._regex = path;\n return;\n }\n if (path instanceof Array) {\n path = \"(\" + path.join(\"|\") + \")\";\n }\n path = path\n .concat(strict ? \"\" : \"/?\")\n .replace(/\\/\\(/g, \"(?:/\")\n .replace(/\\+/g, \"__plus__\")\n .replace(\n /(\\/)?(\\.)?:(\\w+)(?:(\\(.*?\\)))?(\\?)?/g,\n (\n _: any,\n slash: string,\n format: string,\n key: string,\n capture: boolean,\n optional: boolean\n ) => {\n this.keys.push({ name: key, optional: !!optional });\n slash = slash ?? \"\";\n return (\n \"\" +\n (optional ? \"\" : slash) +\n \"(?:\" +\n (optional ? slash : \"\") +\n (format ?? \"\") +\n (capture ?? ((format && \"([^/.]+?)\") || \"([^/]+?)\")) +\n \")\" +\n (optional ?? \"\")\n );\n }\n )\n .replace(/([\\/.])/g, \"\\\\$1\")\n .replace(/__plus__/g, \"(.+)\")\n .replace(/\\*/g, \"(.*)\");\n this._regex = new RegExp(\"^\" + path + \"$\", sensitive ? \"\" : \"i\");\n }\n\n}\n\nexport class Router extends Emitter {\n\n static default: Router = new Router();\n\n static route(path: string, handler: Function): Router {\n Router.default.route(path, handler);\n return Router.default;\n }\n\n static navigate(path: string, force = false): Router {\n Router.default.navigate(path, force);\n return Router.default;\n }\n\n static start(): Router {\n Router.default.start();\n return Router.default;\n }\n\n static hash(): string {\n return Router.default.hash();\n }\n\n static handle(hash: string): Router {\n return Router.default.handle(hash);\n }\n\n private _routes: Route[] = [];\n\n constructor() {\n super();\n if (window.addEventListener) {\n window.addEventListener(\"hashchange\", this._onHashChange, false);\n } else {\n (window as any).attachEvent(\"onhashchange\", this._onHashChange);\n }\n }\n\n route(path: string, handler: Function): this {\n const route = new Route(path);\n this._routes.push(route);\n this.on(path, (params: any, route: any) => {\n return handler.apply(route, params);\n });\n return this;\n }\n\n navigate(path: string, force = false): this {\n const hash = this.hash();\n window.location.hash = path;\n if (force && hash === path) {\n this.handle(path);\n }\n return this;\n }\n\n start(): this {\n this._onHashChange();\n return this;\n }\n\n hash(): string {\n return window.location.hash.substring(1);\n }\n\n handle(hash: string): this {\n for (const route of this._routes) {\n const params: string[] = [];\n if (route.match(hash, params)) {\n this.emit(route.path, params, route);\n break;\n }\n }\n return this;\n }\n\n private _onHashChange = () => {\n this.handle(this.hash());\n }\n\n}\n\nexport function route(path: string, handler: Function) {\n return Router.route(path, handler);\n}\n"],"names":["root","factory","exports","module","define","amd","a","i","self","Emitter","_callbacks","on","event","fn","this","push","emit","args","forEach","cb","apply","off","arguments","length","callbacks","splice","Route","constructor","path","_params","keys","_pathParse","match","params","m","_regex","exec","key","val","decodeURIComponent","name","sensitive","strict","RegExp","Array","join","concat","replace","_","slash","format","capture","optional","Router","static","handler","default","route","force","navigate","start","hash","handle","super","_routes","_onHashChange","window","addEventListener","attachEvent","location","substring"],"sourceRoot":""}
1
+ {"version":3,"file":"router.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,sJCJA,MAAaC,EAAb,cAEY,KAAAC,WAA4C,CAAC,CAuCzD,CArCIC,GAAGC,EAAeC,GAKd,OAJMD,KAASE,KAAKJ,aAChBI,KAAKJ,WAAWE,GAAS,IAE7BE,KAAKJ,WAAWE,GAAOG,KAAKF,GACrBC,IACX,CAEAE,KAAKJ,KAAkBK,GAInB,OAHIL,KAASE,KAAKJ,YACdI,KAAKJ,WAAWE,GAAOM,SAAQC,GAAMA,EAAGC,MAAMN,KAAMG,KAEjDH,IACX,CAEAO,IAAIT,EAAeC,GACf,IAAKC,KAAKJ,YAAmC,IAArBY,UAAUC,OAE9B,OADAT,KAAKJ,WAAa,CAAC,EACZI,KAEX,MAAMU,EAAYV,KAAKJ,WAAWE,GAClC,IAAKY,EACD,OAAOV,KAEX,GAAyB,IAArBQ,UAAUC,OAEV,cADOT,KAAKJ,WAAWE,GAChBE,KAEX,IAAK,IAAIP,EAAI,EAAGA,EAAIiB,EAAUD,OAAQhB,IAElC,GADiBiB,EAAUjB,KACVM,EAAI,CACjBW,EAAUC,OAAOlB,EAAG,GACpB,K,CAGR,OAAOO,IACX,EAxCJ,YA2CA,MAAaY,EAQTC,YAAYC,GALJ,KAAAC,QAAe,CAAC,EAGf,KAAAC,KAAa,GAGlBhB,KAAKc,KAAOA,EACZd,KAAKiB,WAAWH,GAAM,GAAO,EACjC,CAEAI,MAAMJ,EAAcK,GAChB,MAAMC,EAAIpB,KAAKqB,OAAOC,KAAKR,GAC3B,IAAKM,EACD,OAAO,EAEX,IAAK,IAAI3B,EAAI,EAAGA,EAAI2B,EAAEX,SAAUhB,EAAG,CAC/B,MAAM8B,EAAMvB,KAAKgB,KAAKvB,EAAI,GACpB+B,EAAM,iBAAoBJ,EAAE3B,GAAKgC,mBAAmBL,EAAE3B,IAAM2B,EAAE3B,GAChE8B,IACAvB,KAAKe,QAAQQ,EAAIG,MAAQF,GAE7BL,EAAOlB,KAAKuB,E,CAEhB,OAAO,CACX,CAEQP,WAAWH,EAAYa,EAAoBC,GAC3Cd,aAAgBe,OAChB7B,KAAKqB,OAASP,GAGdA,aAAgBgB,QAChBhB,EAAO,IAAMA,EAAKiB,KAAK,KAAO,KAElCjB,EAAOA,EACFkB,OAAOJ,EAAS,GAAK,MACrBK,QAAQ,QAAS,QACjBA,QAAQ,MAAO,YACfA,QACG,wCACA,CACIC,EACAC,EACAC,EACAb,EACAc,EACAC,KAEAtC,KAAKgB,KAAKf,KAAK,CAAEyB,KAAMH,EAAKe,WAAYA,IACxCH,EAAQA,QAAAA,EAAS,IAGZG,EAAW,GAAKH,GACjB,OACCG,EAAWH,EAAQ,KACnBC,QAAAA,EAAU,KACVC,QAAAA,EAAaD,EAAU,YAAgB,YACxC,KACCE,QAAAA,EAAY,OAIxBL,QAAQ,WAAY,QACpBA,QAAQ,YAAa,QACrBA,QAAQ,MAAO,QACpBjC,KAAKqB,OAAS,IAAIQ,OAAO,IAAMf,EAAO,IAAKa,EAAY,GAAK,KAChE,EArEJ,UAyEA,MAAaY,UAAe5C,EAIxB6C,aAAa1B,EAAc2B,GAEvB,OADAF,EAAOG,QAAQC,MAAM7B,EAAM2B,GACpBF,EAAOG,OAClB,CAEAF,gBAAgB1B,EAAc8B,GAAQ,GAElC,OADAL,EAAOG,QAAQG,SAAS/B,EAAM8B,GACvBL,EAAOG,OAClB,CAEAF,eAEI,OADAD,EAAOG,QAAQI,QACRP,EAAOG,OAClB,CAEAF,cACI,OAAOD,EAAOG,QAAQK,MAC1B,CAEAP,cAAcO,GACV,OAAOR,EAAOG,QAAQM,OAAOD,EACjC,CAIAlC,cACIoC,QAHI,KAAAC,QAAmB,GAiDnB,KAAAC,cAAgB,KACpBnD,KAAKgD,OAAOhD,KAAK+C,OAAO,EA9CpBK,OAAOC,iBACPD,OAAOC,iBAAiB,aAAcrD,KAAKmD,eAAe,GAEzDC,OAAeE,YAAY,eAAgBtD,KAAKmD,cAEzD,CAEAR,MAAM7B,EAAc2B,GAChB,MAAME,EAAQ,IAAI/B,EAAME,GAKxB,OAJAd,KAAKkD,QAAQjD,KAAK0C,GAClB3C,KAAKH,GAAGiB,GAAM,CAACK,EAAawB,IACjBF,EAAQnC,MAAMqC,EAAOxB,KAEzBnB,IACX,CAEA6C,SAAS/B,EAAc8B,GAAQ,GAC3B,MAAMG,EAAO/C,KAAK+C,OAKlB,OAJAK,OAAOG,SAASR,KAAOjC,EACnB8B,GAASG,IAASjC,GAClBd,KAAKgD,OAAOlC,GAETd,IACX,CAEA8C,QAEI,OADA9C,KAAKmD,gBACEnD,IACX,CAEA+C,OACI,OAAOK,OAAOG,SAASR,KAAKS,UAAU,EAC1C,CAEAR,OAAOD,GACH,IAAK,MAAMJ,KAAS3C,KAAKkD,QAAS,CAC9B,MAAM/B,EAAmB,GACzB,GAAIwB,EAAMzB,MAAM6B,EAAM5B,GAAS,CAC3BnB,KAAKE,KAAKyC,EAAM7B,KAAMK,EAAQwB,GAC9B,K,EAGR,OAAO3C,IACX,EAxEO,EAAA0C,QAAkB,IAAIH,EAFpB,EAAAA,OAAAA,EAkFb,iBAAsBzB,EAAc2B,GAChC,OAAOF,EAAOI,MAAM7B,EAAM2B,EAC9B,C","sources":["webpack://peryl/webpack/universalModuleDefinition","webpack://peryl/./src/router.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 ","// implemented based on https://github.com/mench/hash-router/\n\ntype Path = string | RegExp | Array<string>;\n\nexport type Keys = { name: string; optional: boolean }[];\n\nexport class Emitter {\n\n private _callbacks: { [key: string]: Function[] } = {};\n\n on(event: string, fn: Function): this {\n if (!(event in this._callbacks)) {\n this._callbacks[event] = [];\n }\n this._callbacks[event].push(fn);\n return this;\n }\n\n emit(event: string, ...args: any[]): this {\n if (event in this._callbacks) {\n this._callbacks[event].forEach(cb => cb.apply(this, args));\n }\n return this;\n }\n\n off(event: string, fn?: Function) {\n if (!this._callbacks || arguments.length === 0) {\n this._callbacks = {};\n return this;\n }\n const callbacks = this._callbacks[event];\n if (!callbacks) {\n return this;\n }\n if (arguments.length === 1) {\n delete this._callbacks[event];\n return this;\n }\n for (let i = 0; i < callbacks.length; i++) {\n const callback = callbacks[i];\n if (callback === fn) {\n callbacks.splice(i, 1);\n break;\n }\n }\n return this;\n }\n}\n\nexport class Route {\n\n private _regex!: RegExp;\n private _params: any = {};\n\n readonly path: string;\n readonly keys: Keys = [];\n\n constructor(path: string) {\n this.path = path;\n this._pathParse(path, false, false);\n }\n\n match(path: string, params: string[]) {\n const m = this._regex.exec(path);\n if (!m) {\n return false;\n }\n for (let i = 1; i < m.length; ++i) {\n const key = this.keys[i - 1];\n const val = \"string\" === typeof m[i] ? decodeURIComponent(m[i]) : m[i];\n if (key) {\n this._params[key.name] = val;\n }\n params.push(val);\n }\n return true;\n }\n\n private _pathParse(path: Path, sensitive: boolean, strict: boolean): void {\n if (path instanceof RegExp) {\n this._regex = path;\n return;\n }\n if (path instanceof Array) {\n path = \"(\" + path.join(\"|\") + \")\";\n }\n path = path\n .concat(strict ? \"\" : \"/?\")\n .replace(/\\/\\(/g, \"(?:/\")\n .replace(/\\+/g, \"__plus__\")\n .replace(\n /(\\/)?(\\.)?:(\\w+)(?:(\\(.*?\\)))?(\\?)?/g,\n (\n _: any,\n slash: string,\n format: string,\n key: string,\n capture: boolean,\n optional: boolean\n ) => {\n this.keys.push({ name: key, optional: !!optional });\n slash = slash ?? \"\";\n return (\n \"\" +\n (optional ? \"\" : slash) +\n \"(?:\" +\n (optional ? slash : \"\") +\n (format ?? \"\") +\n (capture ?? ((format && \"([^/.]+?)\") || \"([^/]+?)\")) +\n \")\" +\n (optional ?? \"\")\n );\n }\n )\n .replace(/([\\/.])/g, \"\\\\$1\")\n .replace(/__plus__/g, \"(.+)\")\n .replace(/\\*/g, \"(.*)\");\n this._regex = new RegExp(\"^\" + path + \"$\", sensitive ? \"\" : \"i\");\n }\n\n}\n\nexport class Router extends Emitter {\n\n static default: Router = new Router();\n\n static route(path: string, handler: Function): Router {\n Router.default.route(path, handler);\n return Router.default;\n }\n\n static navigate(path: string, force = false): Router {\n Router.default.navigate(path, force);\n return Router.default;\n }\n\n static start(): Router {\n Router.default.start();\n return Router.default;\n }\n\n static hash(): string {\n return Router.default.hash();\n }\n\n static handle(hash: string): Router {\n return Router.default.handle(hash);\n }\n\n private _routes: Route[] = [];\n\n constructor() {\n super();\n if (window.addEventListener) {\n window.addEventListener(\"hashchange\", this._onHashChange, false);\n } else {\n (window as any).attachEvent(\"onhashchange\", this._onHashChange);\n }\n }\n\n route(path: string, handler: Function): this {\n const route = new Route(path);\n this._routes.push(route);\n this.on(path, (params: any, route: any) => {\n return handler.apply(route, params);\n });\n return this;\n }\n\n navigate(path: string, force = false): this {\n const hash = this.hash();\n window.location.hash = path;\n if (force && hash === path) {\n this.handle(path);\n }\n return this;\n }\n\n start(): this {\n this._onHashChange();\n return this;\n }\n\n hash(): string {\n return window.location.hash.substring(1);\n }\n\n handle(hash: string): this {\n for (const route of this._routes) {\n const params: string[] = [];\n if (route.match(hash, params)) {\n this.emit(route.path, params, route);\n break;\n }\n }\n return this;\n }\n\n private _onHashChange = () => {\n this.handle(this.hash());\n }\n\n}\n\nexport function route(path: string, handler: Function) {\n return Router.route(path, handler);\n}\n"],"names":["root","factory","exports","module","define","amd","a","i","self","Emitter","_callbacks","on","event","fn","this","push","emit","args","forEach","cb","apply","off","arguments","length","callbacks","splice","Route","constructor","path","_params","keys","_pathParse","match","params","m","_regex","exec","key","val","decodeURIComponent","name","sensitive","strict","RegExp","Array","join","concat","replace","_","slash","format","capture","optional","Router","static","handler","default","route","force","navigate","start","hash","handle","super","_routes","_onHashChange","window","addEventListener","attachEvent","location","substring"],"sourceRoot":""}