@sap/ux-ui5-tooling 1.20.4 → 1.22.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (289) hide show
  1. package/CHANGELOG.md +60 -0
  2. package/dist/adp-tooling/templates/cf/_gitignore +6 -0
  3. package/dist/adp-tooling/templates/cf/approuter/package.json +13 -0
  4. package/dist/adp-tooling/templates/cf/approuter/xs-app.json +15 -0
  5. package/dist/adp-tooling/templates/cf/i18n/i18n.properties +3 -0
  6. package/dist/adp-tooling/templates/cf/package.json +35 -0
  7. package/dist/adp-tooling/templates/cf/ui5.yaml +5 -0
  8. package/dist/adp-tooling/templates/cf/xs-security.json +7 -0
  9. package/dist/adp-tooling/templates/changes/annotation.xml +18 -0
  10. package/dist/adp-tooling/templates/project/gitignore.tmpl +5 -0
  11. package/dist/adp-tooling/templates/project/package.json +31 -0
  12. package/dist/adp-tooling/templates/project/ui5.yaml +6 -0
  13. package/dist/adp-tooling/templates/project/webapp/i18n/i18n.properties +6 -0
  14. package/dist/adp-tooling/templates/project/webapp/manifest.appdescr_variant +10 -0
  15. package/dist/adp-tooling/templates/rta/common/analytical-custom-column.xml +25 -0
  16. package/dist/adp-tooling/templates/rta/common/custom-action.xml +8 -0
  17. package/dist/adp-tooling/templates/rta/common/grid-tree-custom-column.xml +22 -0
  18. package/dist/adp-tooling/templates/rta/common/header-field.xml +13 -0
  19. package/dist/adp-tooling/templates/rta/common/op-custom-section.xml +20 -0
  20. package/dist/adp-tooling/templates/rta/common/v4-table-action.xml +8 -0
  21. package/dist/adp-tooling/templates/rta/controller.ejs +80 -0
  22. package/dist/adp-tooling/templates/rta/fragment.xml +7 -0
  23. package/dist/adp-tooling/templates/rta/ts-controller.ejs +18 -0
  24. package/dist/adp-tooling/templates/rta/v2/m-table-custom-column-cell.xml +7 -0
  25. package/dist/adp-tooling/templates/rta/v2/m-table-custom-column.xml +18 -0
  26. package/dist/adp-tooling/templates/rta/v4/custom-section.xml +12 -0
  27. package/dist/adp-tooling/templates/rta/v4/mdc-custom-column-config.xml +6 -0
  28. package/dist/adp-tooling/templates/rta/v4/mdc-custom-column.xml +11 -0
  29. package/dist/adp-tooling/templates/typescript/tsconfig.json +19 -0
  30. package/dist/cli/index.js +17761 -11603
  31. package/dist/control-property-editor/app.css +2 -0
  32. package/dist/control-property-editor/app.js +175 -0
  33. package/dist/livereload-js/livereload.js +3795 -0
  34. package/dist/middlewares/fiori-tools-appreload.js +44007 -41669
  35. package/dist/middlewares/fiori-tools-preview.js +66889 -4176
  36. package/dist/middlewares/fiori-tools-proxy.js +38049 -5767
  37. package/dist/middlewares/fiori-tools-servestatic.js +32893 -347
  38. package/dist/preview-middleware/dist/client/adp/add-fragment.js +48 -0
  39. package/dist/preview-middleware/dist/client/adp/add-fragment.ts +51 -0
  40. package/dist/preview-middleware/dist/client/adp/api-handler.js +165 -0
  41. package/dist/preview-middleware/dist/client/adp/api-handler.ts +191 -0
  42. package/dist/preview-middleware/dist/client/adp/command-executor.js +100 -0
  43. package/dist/preview-middleware/dist/client/adp/command-executor.ts +105 -0
  44. package/dist/preview-middleware/dist/client/adp/control-utils.js +46 -0
  45. package/dist/preview-middleware/dist/client/adp/control-utils.ts +48 -0
  46. package/dist/preview-middleware/dist/client/adp/controllers/AddActionFragment.controller.js +198 -0
  47. package/dist/preview-middleware/dist/client/adp/controllers/AddActionFragment.controller.ts +232 -0
  48. package/dist/preview-middleware/dist/client/adp/controllers/AddCustomFragment.controller.js +223 -0
  49. package/dist/preview-middleware/dist/client/adp/controllers/AddCustomFragment.controller.ts +257 -0
  50. package/dist/preview-middleware/dist/client/adp/controllers/AddFragment.controller.js +195 -0
  51. package/dist/preview-middleware/dist/client/adp/controllers/AddFragment.controller.ts +264 -0
  52. package/dist/preview-middleware/dist/client/adp/controllers/AddSubpage.controller.js +146 -0
  53. package/dist/preview-middleware/dist/client/adp/controllers/AddSubpage.controller.ts +209 -0
  54. package/dist/preview-middleware/dist/client/adp/controllers/AddTableColumnFragments.controller.js +232 -0
  55. package/dist/preview-middleware/dist/client/adp/controllers/AddTableColumnFragments.controller.ts +306 -0
  56. package/dist/preview-middleware/dist/client/adp/controllers/BaseDialog.controller.js +187 -0
  57. package/dist/preview-middleware/dist/client/adp/controllers/BaseDialog.controller.ts +254 -0
  58. package/dist/preview-middleware/dist/client/adp/controllers/ControllerExtension.controller.js +330 -0
  59. package/dist/preview-middleware/dist/client/adp/controllers/ControllerExtension.controller.ts +408 -0
  60. package/dist/preview-middleware/dist/client/adp/controllers/ExtensionPoint.controller.js +160 -0
  61. package/dist/preview-middleware/dist/client/adp/controllers/ExtensionPoint.controller.ts +195 -0
  62. package/dist/preview-middleware/dist/client/adp/controllers/FileExistsDialog.controller.js +68 -0
  63. package/dist/preview-middleware/dist/client/adp/controllers/FileExistsDialog.controller.ts +86 -0
  64. package/dist/preview-middleware/dist/client/adp/controllers/types.js +2 -0
  65. package/dist/preview-middleware/dist/client/adp/controllers/types.ts +10 -0
  66. package/dist/preview-middleware/dist/client/adp/dialog-factory.js +151 -0
  67. package/dist/preview-middleware/dist/client/adp/dialog-factory.ts +210 -0
  68. package/dist/preview-middleware/dist/client/adp/extend-controller.js +48 -0
  69. package/dist/preview-middleware/dist/client/adp/extend-controller.ts +49 -0
  70. package/dist/preview-middleware/dist/client/adp/extension-point.js +83 -0
  71. package/dist/preview-middleware/dist/client/adp/extension-point.ts +116 -0
  72. package/dist/preview-middleware/dist/client/adp/init-dialogs.js +142 -0
  73. package/dist/preview-middleware/dist/client/adp/init-dialogs.ts +178 -0
  74. package/dist/preview-middleware/dist/client/adp/init.js +111 -0
  75. package/dist/preview-middleware/dist/client/adp/init.ts +92 -0
  76. package/dist/preview-middleware/dist/client/adp/ovp-window-functions.js +130 -0
  77. package/dist/preview-middleware/dist/client/adp/ovp-window-functions.ts +171 -0
  78. package/dist/preview-middleware/dist/client/adp/quick-actions/add-new-subpage-quick-action-base.js +97 -0
  79. package/dist/preview-middleware/dist/client/adp/quick-actions/add-new-subpage-quick-action-base.ts +140 -0
  80. package/dist/preview-middleware/dist/client/adp/quick-actions/common/add-controller-to-page.js +74 -0
  81. package/dist/preview-middleware/dist/client/adp/quick-actions/common/add-controller-to-page.ts +92 -0
  82. package/dist/preview-middleware/dist/client/adp/quick-actions/common/add-new-annotation-file.js +171 -0
  83. package/dist/preview-middleware/dist/client/adp/quick-actions/common/add-new-annotation-file.ts +174 -0
  84. package/dist/preview-middleware/dist/client/adp/quick-actions/common/create-page-action.js +56 -0
  85. package/dist/preview-middleware/dist/client/adp/quick-actions/common/create-page-action.ts +56 -0
  86. package/dist/preview-middleware/dist/client/adp/quick-actions/common/op-add-custom-section.js +41 -0
  87. package/dist/preview-middleware/dist/client/adp/quick-actions/common/op-add-custom-section.ts +51 -0
  88. package/dist/preview-middleware/dist/client/adp/quick-actions/common/op-add-header-field.js +69 -0
  89. package/dist/preview-middleware/dist/client/adp/quick-actions/common/op-add-header-field.ts +81 -0
  90. package/dist/preview-middleware/dist/client/adp/quick-actions/common/utils.js +20 -0
  91. package/dist/preview-middleware/dist/client/adp/quick-actions/common/utils.ts +7 -0
  92. package/dist/preview-middleware/dist/client/adp/quick-actions/control-types.js +25 -0
  93. package/dist/preview-middleware/dist/client/adp/quick-actions/control-types.ts +7 -0
  94. package/dist/preview-middleware/dist/client/adp/quick-actions/dialog-enablement-validator.js +26 -0
  95. package/dist/preview-middleware/dist/client/adp/quick-actions/dialog-enablement-validator.ts +18 -0
  96. package/dist/preview-middleware/dist/client/adp/quick-actions/enablement-validator.js +2 -0
  97. package/dist/preview-middleware/dist/client/adp/quick-actions/enablement-validator.ts +19 -0
  98. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/add-new-subpage.js +82 -0
  99. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/add-new-subpage.ts +87 -0
  100. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/change-table-actions.js +69 -0
  101. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/change-table-actions.ts +71 -0
  102. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/change-table-columns.js +103 -0
  103. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/change-table-columns.ts +105 -0
  104. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/create-table-action.js +111 -0
  105. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/create-table-action.ts +110 -0
  106. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/create-table-custom-column.js +108 -0
  107. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/create-table-custom-column.ts +141 -0
  108. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/lr-enable-semantic-date-range-filter-bar.js +80 -0
  109. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/lr-enable-semantic-date-range-filter-bar.ts +93 -0
  110. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/lr-enable-table-filtering.js +79 -0
  111. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/lr-enable-table-filtering.ts +102 -0
  112. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/lr-enable-variant-management.js +71 -0
  113. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/lr-enable-variant-management.ts +98 -0
  114. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/lr-toggle-clear-filter-bar.js +61 -0
  115. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/lr-toggle-clear-filter-bar.ts +77 -0
  116. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/op-enable-empty-row-mode.js +95 -0
  117. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/op-enable-empty-row-mode.ts +102 -0
  118. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/op-enable-variant-management.js +86 -0
  119. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/op-enable-variant-management.ts +116 -0
  120. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/registry.js +79 -0
  121. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/registry.ts +121 -0
  122. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/utils.js +138 -0
  123. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v2/utils.ts +134 -0
  124. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/add-new-subpage.js +140 -0
  125. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/add-new-subpage.ts +181 -0
  126. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/change-table-actions.js +81 -0
  127. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/change-table-actions.ts +81 -0
  128. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/change-table-columns.js +90 -0
  129. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/change-table-columns.ts +97 -0
  130. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/create-page-action.js +81 -0
  131. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/create-page-action.ts +98 -0
  132. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/create-table-action-config-change.js +129 -0
  133. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/create-table-action-config-change.ts +149 -0
  134. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/create-table-custom-column-config-change.js +142 -0
  135. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/create-table-custom-column-config-change.ts +178 -0
  136. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/enable-variant-management.js +83 -0
  137. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/enable-variant-management.ts +96 -0
  138. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/lr-enable-semantic-date-range-filter-bar.js +58 -0
  139. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/lr-enable-semantic-date-range-filter-bar.ts +70 -0
  140. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/lr-enable-table-filtering.js +86 -0
  141. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/lr-enable-table-filtering.ts +96 -0
  142. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/lr-toggle-clear-filter-bar.js +55 -0
  143. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/lr-toggle-clear-filter-bar.ts +61 -0
  144. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/op-add-custom-section.js +73 -0
  145. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/op-add-custom-section.ts +91 -0
  146. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/op-enable-empty-row-mode.js +91 -0
  147. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/op-enable-empty-row-mode.ts +88 -0
  148. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/registry.js +62 -0
  149. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/registry.ts +86 -0
  150. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/utils.js +158 -0
  151. package/dist/preview-middleware/dist/client/adp/quick-actions/fe-v4/utils.ts +175 -0
  152. package/dist/preview-middleware/dist/client/adp/quick-actions/load.js +46 -0
  153. package/dist/preview-middleware/dist/client/adp/quick-actions/load.ts +23 -0
  154. package/dist/preview-middleware/dist/client/adp/quick-actions/quick-action-base.js +64 -0
  155. package/dist/preview-middleware/dist/client/adp/quick-actions/quick-action-base.ts +71 -0
  156. package/dist/preview-middleware/dist/client/adp/quick-actions/simple-quick-action-base.js +44 -0
  157. package/dist/preview-middleware/dist/client/adp/quick-actions/simple-quick-action-base.ts +51 -0
  158. package/dist/preview-middleware/dist/client/adp/quick-actions/supported-ui5versions.md +40 -0
  159. package/dist/preview-middleware/dist/client/adp/quick-actions/table-quick-action-base.js +372 -0
  160. package/dist/preview-middleware/dist/client/adp/quick-actions/table-quick-action-base.ts +433 -0
  161. package/dist/preview-middleware/dist/client/adp/sync-views-utils.js +123 -0
  162. package/dist/preview-middleware/dist/client/adp/sync-views-utils.ts +90 -0
  163. package/dist/preview-middleware/dist/client/adp/ui/AddAction.fragment.xml +49 -0
  164. package/dist/preview-middleware/dist/client/adp/ui/AddCustomFragment.fragment.xml +48 -0
  165. package/dist/preview-middleware/dist/client/adp/ui/AddFragment.fragment.xml +83 -0
  166. package/dist/preview-middleware/dist/client/adp/ui/AddSubpage.fragment.xml +73 -0
  167. package/dist/preview-middleware/dist/client/adp/ui/AddTableColumnFragments.fragment.xml +63 -0
  168. package/dist/preview-middleware/dist/client/adp/ui/ControllerExtension.fragment.xml +63 -0
  169. package/dist/preview-middleware/dist/client/adp/ui/ExtensionPoint.fragment.xml +61 -0
  170. package/dist/preview-middleware/dist/client/adp/ui/FileExistsDialog.fragment.xml +43 -0
  171. package/dist/preview-middleware/dist/client/adp/utils.js +199 -0
  172. package/dist/preview-middleware/dist/client/adp/utils.ts +200 -0
  173. package/dist/preview-middleware/dist/client/cpe/additional-change-info/add-xml-additional-info.js +85 -0
  174. package/dist/preview-middleware/dist/client/cpe/additional-change-info/add-xml-additional-info.ts +107 -0
  175. package/dist/preview-middleware/dist/client/cpe/changes/flex-change.js +66 -0
  176. package/dist/preview-middleware/dist/client/cpe/changes/flex-change.ts +66 -0
  177. package/dist/preview-middleware/dist/client/cpe/changes/generic-change.js +321 -0
  178. package/dist/preview-middleware/dist/client/cpe/changes/generic-change.ts +462 -0
  179. package/dist/preview-middleware/dist/client/cpe/changes/index.js +12 -0
  180. package/dist/preview-middleware/dist/client/cpe/changes/index.ts +1 -0
  181. package/dist/preview-middleware/dist/client/cpe/changes/service.js +527 -0
  182. package/dist/preview-middleware/dist/client/cpe/changes/service.ts +595 -0
  183. package/dist/preview-middleware/dist/client/cpe/changes/validator.js +41 -0
  184. package/dist/preview-middleware/dist/client/cpe/changes/validator.ts +35 -0
  185. package/dist/preview-middleware/dist/client/cpe/communication-service.js +44 -0
  186. package/dist/preview-middleware/dist/client/cpe/communication-service.ts +41 -0
  187. package/dist/preview-middleware/dist/client/cpe/connector-service.js +88 -0
  188. package/dist/preview-middleware/dist/client/cpe/connector-service.ts +74 -0
  189. package/dist/preview-middleware/dist/client/cpe/context-menu-service.js +90 -0
  190. package/dist/preview-middleware/dist/client/cpe/context-menu-service.ts +77 -0
  191. package/dist/preview-middleware/dist/client/cpe/control-data.js +366 -0
  192. package/dist/preview-middleware/dist/client/cpe/control-data.ts +400 -0
  193. package/dist/preview-middleware/dist/client/cpe/documentation.js +191 -0
  194. package/dist/preview-middleware/dist/client/cpe/documentation.ts +187 -0
  195. package/dist/preview-middleware/dist/client/cpe/feature-service.js +39 -0
  196. package/dist/preview-middleware/dist/client/cpe/feature-service.ts +25 -0
  197. package/dist/preview-middleware/dist/client/cpe/init.js +92 -0
  198. package/dist/preview-middleware/dist/client/cpe/init.ts +114 -0
  199. package/dist/preview-middleware/dist/client/cpe/logger.js +32 -0
  200. package/dist/preview-middleware/dist/client/cpe/logger.ts +24 -0
  201. package/dist/preview-middleware/dist/client/cpe/odata-health/odata-health-checker.js +136 -0
  202. package/dist/preview-middleware/dist/client/cpe/odata-health/odata-health-checker.ts +160 -0
  203. package/dist/preview-middleware/dist/client/cpe/odata-health/odata-health-status.js +63 -0
  204. package/dist/preview-middleware/dist/client/cpe/odata-health/odata-health-status.ts +52 -0
  205. package/dist/preview-middleware/dist/client/cpe/outline/editable.js +38 -0
  206. package/dist/preview-middleware/dist/client/cpe/outline/editable.ts +30 -0
  207. package/dist/preview-middleware/dist/client/cpe/outline/nodes.js +212 -0
  208. package/dist/preview-middleware/dist/client/cpe/outline/nodes.ts +236 -0
  209. package/dist/preview-middleware/dist/client/cpe/outline/service.js +62 -0
  210. package/dist/preview-middleware/dist/client/cpe/outline/service.ts +66 -0
  211. package/dist/preview-middleware/dist/client/cpe/quick-actions/quick-action-service.js +161 -0
  212. package/dist/preview-middleware/dist/client/cpe/quick-actions/quick-action-service.ts +184 -0
  213. package/dist/preview-middleware/dist/client/cpe/quick-actions/registry.js +145 -0
  214. package/dist/preview-middleware/dist/client/cpe/quick-actions/registry.ts +157 -0
  215. package/dist/preview-middleware/dist/client/cpe/quick-actions/utils.js +94 -0
  216. package/dist/preview-middleware/dist/client/cpe/quick-actions/utils.ts +113 -0
  217. package/dist/preview-middleware/dist/client/cpe/rta-service.js +94 -0
  218. package/dist/preview-middleware/dist/client/cpe/rta-service.ts +86 -0
  219. package/dist/preview-middleware/dist/client/cpe/selection.js +249 -0
  220. package/dist/preview-middleware/dist/client/cpe/selection.ts +267 -0
  221. package/dist/preview-middleware/dist/client/cpe/ui5-utils.js +35 -0
  222. package/dist/preview-middleware/dist/client/cpe/ui5-utils.ts +28 -0
  223. package/dist/preview-middleware/dist/client/cpe/utils.js +113 -0
  224. package/dist/preview-middleware/dist/client/cpe/utils.ts +162 -0
  225. package/dist/preview-middleware/dist/client/flp/WorkspaceConnector.js +97 -0
  226. package/dist/preview-middleware/dist/client/flp/WorkspaceConnector.ts +101 -0
  227. package/dist/preview-middleware/dist/client/flp/common.js +30 -0
  228. package/dist/preview-middleware/dist/client/flp/common.ts +28 -0
  229. package/dist/preview-middleware/dist/client/flp/enableFakeConnector.js +92 -0
  230. package/dist/preview-middleware/dist/client/flp/enableFakeConnector.ts +113 -0
  231. package/dist/preview-middleware/dist/client/flp/homepage/Component.js +16 -0
  232. package/dist/preview-middleware/dist/client/flp/homepage/Component.ts +10 -0
  233. package/dist/preview-middleware/dist/client/flp/homepage/controller/MyHome.controller.js +54 -0
  234. package/dist/preview-middleware/dist/client/flp/homepage/controller/MyHome.controller.ts +41 -0
  235. package/dist/preview-middleware/dist/client/flp/homepage/css/style.css +3 -0
  236. package/dist/preview-middleware/dist/client/flp/homepage/manifest.json +41 -0
  237. package/dist/preview-middleware/dist/client/flp/homepage/view/MyHome.view.xml +18 -0
  238. package/dist/preview-middleware/dist/client/flp/init.js +418 -0
  239. package/dist/preview-middleware/dist/client/flp/init.ts +448 -0
  240. package/dist/preview-middleware/dist/client/flp/initCdm.js +117 -0
  241. package/dist/preview-middleware/dist/client/flp/initCdm.ts +111 -0
  242. package/dist/preview-middleware/dist/client/flp/initConnectors.js +31 -0
  243. package/dist/preview-middleware/dist/client/flp/initConnectors.ts +20 -0
  244. package/dist/preview-middleware/dist/client/flp/initRta.js +180 -0
  245. package/dist/preview-middleware/dist/client/flp/initRta.ts +194 -0
  246. package/dist/preview-middleware/dist/client/i18n.js +56 -0
  247. package/dist/preview-middleware/dist/client/i18n.ts +49 -0
  248. package/dist/preview-middleware/dist/client/manifest.json +8 -0
  249. package/dist/preview-middleware/dist/client/messagebundle.properties +143 -0
  250. package/dist/preview-middleware/dist/client/thirdparty/@sap-ux-private/control-property-editor-common.js +486 -0
  251. package/dist/preview-middleware/dist/client/utils/additional-change-info.js +69 -0
  252. package/dist/preview-middleware/dist/client/utils/additional-change-info.ts +73 -0
  253. package/dist/preview-middleware/dist/client/utils/application.js +34 -0
  254. package/dist/preview-middleware/dist/client/utils/application.ts +27 -0
  255. package/dist/preview-middleware/dist/client/utils/core.js +144 -0
  256. package/dist/preview-middleware/dist/client/utils/core.ts +145 -0
  257. package/dist/preview-middleware/dist/client/utils/error.js +28 -0
  258. package/dist/preview-middleware/dist/client/utils/error.ts +18 -0
  259. package/dist/preview-middleware/dist/client/utils/fe-v2.js +58 -0
  260. package/dist/preview-middleware/dist/client/utils/fe-v2.ts +61 -0
  261. package/dist/preview-middleware/dist/client/utils/fe-v4.js +168 -0
  262. package/dist/preview-middleware/dist/client/utils/fe-v4.ts +186 -0
  263. package/dist/preview-middleware/dist/client/utils/info-center-message.js +60 -0
  264. package/dist/preview-middleware/dist/client/utils/info-center-message.ts +60 -0
  265. package/dist/preview-middleware/dist/client/utils/version.js +126 -0
  266. package/dist/preview-middleware/dist/client/utils/version.ts +138 -0
  267. package/dist/preview-middleware/templates/flp/cdm.base.json +47 -0
  268. package/dist/preview-middleware/templates/flp/cdm.ejs +72 -0
  269. package/dist/preview-middleware/templates/flp/editor.ejs +28 -0
  270. package/dist/preview-middleware/templates/flp/sandbox.ejs +88 -0
  271. package/dist/preview-middleware/templates/flp/sandbox2.ejs +86 -0
  272. package/dist/preview-middleware/templates/test/qunit.ejs +26 -0
  273. package/dist/preview-middleware/templates/test/qunit.js +29 -0
  274. package/dist/preview-middleware/templates/test/testsuite.qunit.ejs +10 -0
  275. package/dist/preview-middleware/templates/test/testsuite.qunit.js +8 -0
  276. package/dist/tasks/cf-deploy/index.js +3916 -3521
  277. package/dist/tasks/deploy/index.js +17204 -11133
  278. package/package.json +36 -39
  279. package/prebuilds/keyring.darwin-arm64.node +0 -0
  280. package/prebuilds/keyring.darwin-x64.node +0 -0
  281. package/prebuilds/keyring.linux-arm-gnueabihf.node +0 -0
  282. package/prebuilds/keyring.linux-arm64-gnu.node +0 -0
  283. package/prebuilds/keyring.linux-arm64-musl.node +0 -0
  284. package/prebuilds/keyring.linux-ia32-gnu.node +0 -0
  285. package/prebuilds/keyring.linux-x64-gnu.node +0 -0
  286. package/prebuilds/keyring.linux-x64-musl.node +0 -0
  287. package/prebuilds/keyring.win32-arm64-msvc.node +0 -0
  288. package/prebuilds/keyring.win32-ia32-msvc.node +0 -0
  289. package/prebuilds/keyring.win32-x64-msvc.node +0 -0
@@ -0,0 +1,3795 @@
1
+ (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i<t.length;i++)o(t[i]);return o}return r})()({1:[function(require,module,exports){
2
+ module.exports = function (it) {
3
+ if (typeof it != 'function') throw TypeError(it + ' is not a function!');
4
+ return it;
5
+ };
6
+
7
+ },{}],2:[function(require,module,exports){
8
+ // 22.1.3.31 Array.prototype[@@unscopables]
9
+ var UNSCOPABLES = require('./_wks')('unscopables');
10
+ var ArrayProto = Array.prototype;
11
+ if (ArrayProto[UNSCOPABLES] == undefined) require('./_hide')(ArrayProto, UNSCOPABLES, {});
12
+ module.exports = function (key) {
13
+ ArrayProto[UNSCOPABLES][key] = true;
14
+ };
15
+
16
+ },{"./_hide":27,"./_wks":81}],3:[function(require,module,exports){
17
+ 'use strict';
18
+ var at = require('./_string-at')(true);
19
+
20
+ // `AdvanceStringIndex` abstract operation
21
+ // https://tc39.github.io/ecma262/#sec-advancestringindex
22
+ module.exports = function (S, index, unicode) {
23
+ return index + (unicode ? at(S, index).length : 1);
24
+ };
25
+
26
+ },{"./_string-at":68}],4:[function(require,module,exports){
27
+ var isObject = require('./_is-object');
28
+ module.exports = function (it) {
29
+ if (!isObject(it)) throw TypeError(it + ' is not an object!');
30
+ return it;
31
+ };
32
+
33
+ },{"./_is-object":34}],5:[function(require,module,exports){
34
+ // false -> Array#indexOf
35
+ // true -> Array#includes
36
+ var toIObject = require('./_to-iobject');
37
+ var toLength = require('./_to-length');
38
+ var toAbsoluteIndex = require('./_to-absolute-index');
39
+ module.exports = function (IS_INCLUDES) {
40
+ return function ($this, el, fromIndex) {
41
+ var O = toIObject($this);
42
+ var length = toLength(O.length);
43
+ var index = toAbsoluteIndex(fromIndex, length);
44
+ var value;
45
+ // Array#includes uses SameValueZero equality algorithm
46
+ // eslint-disable-next-line no-self-compare
47
+ if (IS_INCLUDES && el != el) while (length > index) {
48
+ value = O[index++];
49
+ // eslint-disable-next-line no-self-compare
50
+ if (value != value) return true;
51
+ // Array#indexOf ignores holes, Array#includes - not
52
+ } else for (;length > index; index++) if (IS_INCLUDES || index in O) {
53
+ if (O[index] === el) return IS_INCLUDES || index || 0;
54
+ } return !IS_INCLUDES && -1;
55
+ };
56
+ };
57
+
58
+ },{"./_to-absolute-index":72,"./_to-iobject":74,"./_to-length":75}],6:[function(require,module,exports){
59
+ // 0 -> Array#forEach
60
+ // 1 -> Array#map
61
+ // 2 -> Array#filter
62
+ // 3 -> Array#some
63
+ // 4 -> Array#every
64
+ // 5 -> Array#find
65
+ // 6 -> Array#findIndex
66
+ var ctx = require('./_ctx');
67
+ var IObject = require('./_iobject');
68
+ var toObject = require('./_to-object');
69
+ var toLength = require('./_to-length');
70
+ var asc = require('./_array-species-create');
71
+ module.exports = function (TYPE, $create) {
72
+ var IS_MAP = TYPE == 1;
73
+ var IS_FILTER = TYPE == 2;
74
+ var IS_SOME = TYPE == 3;
75
+ var IS_EVERY = TYPE == 4;
76
+ var IS_FIND_INDEX = TYPE == 6;
77
+ var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
78
+ var create = $create || asc;
79
+ return function ($this, callbackfn, that) {
80
+ var O = toObject($this);
81
+ var self = IObject(O);
82
+ var f = ctx(callbackfn, that, 3);
83
+ var length = toLength(self.length);
84
+ var index = 0;
85
+ var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;
86
+ var val, res;
87
+ for (;length > index; index++) if (NO_HOLES || index in self) {
88
+ val = self[index];
89
+ res = f(val, index, O);
90
+ if (TYPE) {
91
+ if (IS_MAP) result[index] = res; // map
92
+ else if (res) switch (TYPE) {
93
+ case 3: return true; // some
94
+ case 5: return val; // find
95
+ case 6: return index; // findIndex
96
+ case 2: result.push(val); // filter
97
+ } else if (IS_EVERY) return false; // every
98
+ }
99
+ }
100
+ return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;
101
+ };
102
+ };
103
+
104
+ },{"./_array-species-create":8,"./_ctx":13,"./_iobject":31,"./_to-length":75,"./_to-object":76}],7:[function(require,module,exports){
105
+ var isObject = require('./_is-object');
106
+ var isArray = require('./_is-array');
107
+ var SPECIES = require('./_wks')('species');
108
+
109
+ module.exports = function (original) {
110
+ var C;
111
+ if (isArray(original)) {
112
+ C = original.constructor;
113
+ // cross-realm fallback
114
+ if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
115
+ if (isObject(C)) {
116
+ C = C[SPECIES];
117
+ if (C === null) C = undefined;
118
+ }
119
+ } return C === undefined ? Array : C;
120
+ };
121
+
122
+ },{"./_is-array":33,"./_is-object":34,"./_wks":81}],8:[function(require,module,exports){
123
+ // 9.4.2.3 ArraySpeciesCreate(originalArray, length)
124
+ var speciesConstructor = require('./_array-species-constructor');
125
+
126
+ module.exports = function (original, length) {
127
+ return new (speciesConstructor(original))(length);
128
+ };
129
+
130
+ },{"./_array-species-constructor":7}],9:[function(require,module,exports){
131
+ // getting tag from 19.1.3.6 Object.prototype.toString()
132
+ var cof = require('./_cof');
133
+ var TAG = require('./_wks')('toStringTag');
134
+ // ES3 wrong here
135
+ var ARG = cof(function () { return arguments; }()) == 'Arguments';
136
+
137
+ // fallback for IE11 Script Access Denied error
138
+ var tryGet = function (it, key) {
139
+ try {
140
+ return it[key];
141
+ } catch (e) { /* empty */ }
142
+ };
143
+
144
+ module.exports = function (it) {
145
+ var O, T, B;
146
+ return it === undefined ? 'Undefined' : it === null ? 'Null'
147
+ // @@toStringTag case
148
+ : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T
149
+ // builtinTag case
150
+ : ARG ? cof(O)
151
+ // ES3 arguments fallback
152
+ : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;
153
+ };
154
+
155
+ },{"./_cof":10,"./_wks":81}],10:[function(require,module,exports){
156
+ var toString = {}.toString;
157
+
158
+ module.exports = function (it) {
159
+ return toString.call(it).slice(8, -1);
160
+ };
161
+
162
+ },{}],11:[function(require,module,exports){
163
+ var core = module.exports = { version: '2.6.12' };
164
+ if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef
165
+
166
+ },{}],12:[function(require,module,exports){
167
+ 'use strict';
168
+ var $defineProperty = require('./_object-dp');
169
+ var createDesc = require('./_property-desc');
170
+
171
+ module.exports = function (object, index, value) {
172
+ if (index in object) $defineProperty.f(object, index, createDesc(0, value));
173
+ else object[index] = value;
174
+ };
175
+
176
+ },{"./_object-dp":45,"./_property-desc":57}],13:[function(require,module,exports){
177
+ // optional / simple context binding
178
+ var aFunction = require('./_a-function');
179
+ module.exports = function (fn, that, length) {
180
+ aFunction(fn);
181
+ if (that === undefined) return fn;
182
+ switch (length) {
183
+ case 1: return function (a) {
184
+ return fn.call(that, a);
185
+ };
186
+ case 2: return function (a, b) {
187
+ return fn.call(that, a, b);
188
+ };
189
+ case 3: return function (a, b, c) {
190
+ return fn.call(that, a, b, c);
191
+ };
192
+ }
193
+ return function (/* ...args */) {
194
+ return fn.apply(that, arguments);
195
+ };
196
+ };
197
+
198
+ },{"./_a-function":1}],14:[function(require,module,exports){
199
+ // 7.2.1 RequireObjectCoercible(argument)
200
+ module.exports = function (it) {
201
+ if (it == undefined) throw TypeError("Can't call method on " + it);
202
+ return it;
203
+ };
204
+
205
+ },{}],15:[function(require,module,exports){
206
+ // Thank's IE8 for his funny defineProperty
207
+ module.exports = !require('./_fails')(function () {
208
+ return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
209
+ });
210
+
211
+ },{"./_fails":21}],16:[function(require,module,exports){
212
+ var isObject = require('./_is-object');
213
+ var document = require('./_global').document;
214
+ // typeof document.createElement is 'object' in old IE
215
+ var is = isObject(document) && isObject(document.createElement);
216
+ module.exports = function (it) {
217
+ return is ? document.createElement(it) : {};
218
+ };
219
+
220
+ },{"./_global":25,"./_is-object":34}],17:[function(require,module,exports){
221
+ // IE 8- don't enum bug keys
222
+ module.exports = (
223
+ 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
224
+ ).split(',');
225
+
226
+ },{}],18:[function(require,module,exports){
227
+ // all enumerable object keys, includes symbols
228
+ var getKeys = require('./_object-keys');
229
+ var gOPS = require('./_object-gops');
230
+ var pIE = require('./_object-pie');
231
+ module.exports = function (it) {
232
+ var result = getKeys(it);
233
+ var getSymbols = gOPS.f;
234
+ if (getSymbols) {
235
+ var symbols = getSymbols(it);
236
+ var isEnum = pIE.f;
237
+ var i = 0;
238
+ var key;
239
+ while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key);
240
+ } return result;
241
+ };
242
+
243
+ },{"./_object-gops":50,"./_object-keys":53,"./_object-pie":54}],19:[function(require,module,exports){
244
+ var global = require('./_global');
245
+ var core = require('./_core');
246
+ var hide = require('./_hide');
247
+ var redefine = require('./_redefine');
248
+ var ctx = require('./_ctx');
249
+ var PROTOTYPE = 'prototype';
250
+
251
+ var $export = function (type, name, source) {
252
+ var IS_FORCED = type & $export.F;
253
+ var IS_GLOBAL = type & $export.G;
254
+ var IS_STATIC = type & $export.S;
255
+ var IS_PROTO = type & $export.P;
256
+ var IS_BIND = type & $export.B;
257
+ var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE];
258
+ var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
259
+ var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {});
260
+ var key, own, out, exp;
261
+ if (IS_GLOBAL) source = name;
262
+ for (key in source) {
263
+ // contains in native
264
+ own = !IS_FORCED && target && target[key] !== undefined;
265
+ // export native or passed
266
+ out = (own ? target : source)[key];
267
+ // bind timers to global for call from export context
268
+ exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
269
+ // extend global
270
+ if (target) redefine(target, key, out, type & $export.U);
271
+ // export
272
+ if (exports[key] != out) hide(exports, key, exp);
273
+ if (IS_PROTO && expProto[key] != out) expProto[key] = out;
274
+ }
275
+ };
276
+ global.core = core;
277
+ // type bitmap
278
+ $export.F = 1; // forced
279
+ $export.G = 2; // global
280
+ $export.S = 4; // static
281
+ $export.P = 8; // proto
282
+ $export.B = 16; // bind
283
+ $export.W = 32; // wrap
284
+ $export.U = 64; // safe
285
+ $export.R = 128; // real proto method for `library`
286
+ module.exports = $export;
287
+
288
+ },{"./_core":11,"./_ctx":13,"./_global":25,"./_hide":27,"./_redefine":58}],20:[function(require,module,exports){
289
+ var MATCH = require('./_wks')('match');
290
+ module.exports = function (KEY) {
291
+ var re = /./;
292
+ try {
293
+ '/./'[KEY](re);
294
+ } catch (e) {
295
+ try {
296
+ re[MATCH] = false;
297
+ return !'/./'[KEY](re);
298
+ } catch (f) { /* empty */ }
299
+ } return true;
300
+ };
301
+
302
+ },{"./_wks":81}],21:[function(require,module,exports){
303
+ module.exports = function (exec) {
304
+ try {
305
+ return !!exec();
306
+ } catch (e) {
307
+ return true;
308
+ }
309
+ };
310
+
311
+ },{}],22:[function(require,module,exports){
312
+ 'use strict';
313
+ require('./es6.regexp.exec');
314
+ var redefine = require('./_redefine');
315
+ var hide = require('./_hide');
316
+ var fails = require('./_fails');
317
+ var defined = require('./_defined');
318
+ var wks = require('./_wks');
319
+ var regexpExec = require('./_regexp-exec');
320
+
321
+ var SPECIES = wks('species');
322
+
323
+ var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {
324
+ // #replace needs built-in support for named groups.
325
+ // #match works fine because it just return the exec results, even if it has
326
+ // a "grops" property.
327
+ var re = /./;
328
+ re.exec = function () {
329
+ var result = [];
330
+ result.groups = { a: '7' };
331
+ return result;
332
+ };
333
+ return ''.replace(re, '$<a>') !== '7';
334
+ });
335
+
336
+ var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = (function () {
337
+ // Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec
338
+ var re = /(?:)/;
339
+ var originalExec = re.exec;
340
+ re.exec = function () { return originalExec.apply(this, arguments); };
341
+ var result = 'ab'.split(re);
342
+ return result.length === 2 && result[0] === 'a' && result[1] === 'b';
343
+ })();
344
+
345
+ module.exports = function (KEY, length, exec) {
346
+ var SYMBOL = wks(KEY);
347
+
348
+ var DELEGATES_TO_SYMBOL = !fails(function () {
349
+ // String methods call symbol-named RegEp methods
350
+ var O = {};
351
+ O[SYMBOL] = function () { return 7; };
352
+ return ''[KEY](O) != 7;
353
+ });
354
+
355
+ var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL ? !fails(function () {
356
+ // Symbol-named RegExp methods call .exec
357
+ var execCalled = false;
358
+ var re = /a/;
359
+ re.exec = function () { execCalled = true; return null; };
360
+ if (KEY === 'split') {
361
+ // RegExp[@@split] doesn't call the regex's exec method, but first creates
362
+ // a new one. We need to return the patched regex when creating the new one.
363
+ re.constructor = {};
364
+ re.constructor[SPECIES] = function () { return re; };
365
+ }
366
+ re[SYMBOL]('');
367
+ return !execCalled;
368
+ }) : undefined;
369
+
370
+ if (
371
+ !DELEGATES_TO_SYMBOL ||
372
+ !DELEGATES_TO_EXEC ||
373
+ (KEY === 'replace' && !REPLACE_SUPPORTS_NAMED_GROUPS) ||
374
+ (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)
375
+ ) {
376
+ var nativeRegExpMethod = /./[SYMBOL];
377
+ var fns = exec(
378
+ defined,
379
+ SYMBOL,
380
+ ''[KEY],
381
+ function maybeCallNative(nativeMethod, regexp, str, arg2, forceStringMethod) {
382
+ if (regexp.exec === regexpExec) {
383
+ if (DELEGATES_TO_SYMBOL && !forceStringMethod) {
384
+ // The native String method already delegates to @@method (this
385
+ // polyfilled function), leasing to infinite recursion.
386
+ // We avoid it by directly calling the native @@method method.
387
+ return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };
388
+ }
389
+ return { done: true, value: nativeMethod.call(str, regexp, arg2) };
390
+ }
391
+ return { done: false };
392
+ }
393
+ );
394
+ var strfn = fns[0];
395
+ var rxfn = fns[1];
396
+
397
+ redefine(String.prototype, KEY, strfn);
398
+ hide(RegExp.prototype, SYMBOL, length == 2
399
+ // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)
400
+ // 21.2.5.11 RegExp.prototype[@@split](string, limit)
401
+ ? function (string, arg) { return rxfn.call(string, this, arg); }
402
+ // 21.2.5.6 RegExp.prototype[@@match](string)
403
+ // 21.2.5.9 RegExp.prototype[@@search](string)
404
+ : function (string) { return rxfn.call(string, this); }
405
+ );
406
+ }
407
+ };
408
+
409
+ },{"./_defined":14,"./_fails":21,"./_hide":27,"./_redefine":58,"./_regexp-exec":60,"./_wks":81,"./es6.regexp.exec":93}],23:[function(require,module,exports){
410
+ 'use strict';
411
+ // 21.2.5.3 get RegExp.prototype.flags
412
+ var anObject = require('./_an-object');
413
+ module.exports = function () {
414
+ var that = anObject(this);
415
+ var result = '';
416
+ if (that.global) result += 'g';
417
+ if (that.ignoreCase) result += 'i';
418
+ if (that.multiline) result += 'm';
419
+ if (that.unicode) result += 'u';
420
+ if (that.sticky) result += 'y';
421
+ return result;
422
+ };
423
+
424
+ },{"./_an-object":4}],24:[function(require,module,exports){
425
+ module.exports = require('./_shared')('native-function-to-string', Function.toString);
426
+
427
+ },{"./_shared":65}],25:[function(require,module,exports){
428
+ // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
429
+ var global = module.exports = typeof window != 'undefined' && window.Math == Math
430
+ ? window : typeof self != 'undefined' && self.Math == Math ? self
431
+ // eslint-disable-next-line no-new-func
432
+ : Function('return this')();
433
+ if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef
434
+
435
+ },{}],26:[function(require,module,exports){
436
+ var hasOwnProperty = {}.hasOwnProperty;
437
+ module.exports = function (it, key) {
438
+ return hasOwnProperty.call(it, key);
439
+ };
440
+
441
+ },{}],27:[function(require,module,exports){
442
+ var dP = require('./_object-dp');
443
+ var createDesc = require('./_property-desc');
444
+ module.exports = require('./_descriptors') ? function (object, key, value) {
445
+ return dP.f(object, key, createDesc(1, value));
446
+ } : function (object, key, value) {
447
+ object[key] = value;
448
+ return object;
449
+ };
450
+
451
+ },{"./_descriptors":15,"./_object-dp":45,"./_property-desc":57}],28:[function(require,module,exports){
452
+ var document = require('./_global').document;
453
+ module.exports = document && document.documentElement;
454
+
455
+ },{"./_global":25}],29:[function(require,module,exports){
456
+ module.exports = !require('./_descriptors') && !require('./_fails')(function () {
457
+ return Object.defineProperty(require('./_dom-create')('div'), 'a', { get: function () { return 7; } }).a != 7;
458
+ });
459
+
460
+ },{"./_descriptors":15,"./_dom-create":16,"./_fails":21}],30:[function(require,module,exports){
461
+ var isObject = require('./_is-object');
462
+ var setPrototypeOf = require('./_set-proto').set;
463
+ module.exports = function (that, target, C) {
464
+ var S = target.constructor;
465
+ var P;
466
+ if (S !== C && typeof S == 'function' && (P = S.prototype) !== C.prototype && isObject(P) && setPrototypeOf) {
467
+ setPrototypeOf(that, P);
468
+ } return that;
469
+ };
470
+
471
+ },{"./_is-object":34,"./_set-proto":61}],31:[function(require,module,exports){
472
+ // fallback for non-array-like ES3 and non-enumerable old V8 strings
473
+ var cof = require('./_cof');
474
+ // eslint-disable-next-line no-prototype-builtins
475
+ module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
476
+ return cof(it) == 'String' ? it.split('') : Object(it);
477
+ };
478
+
479
+ },{"./_cof":10}],32:[function(require,module,exports){
480
+ // check on default Array iterator
481
+ var Iterators = require('./_iterators');
482
+ var ITERATOR = require('./_wks')('iterator');
483
+ var ArrayProto = Array.prototype;
484
+
485
+ module.exports = function (it) {
486
+ return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);
487
+ };
488
+
489
+ },{"./_iterators":41,"./_wks":81}],33:[function(require,module,exports){
490
+ // 7.2.2 IsArray(argument)
491
+ var cof = require('./_cof');
492
+ module.exports = Array.isArray || function isArray(arg) {
493
+ return cof(arg) == 'Array';
494
+ };
495
+
496
+ },{"./_cof":10}],34:[function(require,module,exports){
497
+ module.exports = function (it) {
498
+ return typeof it === 'object' ? it !== null : typeof it === 'function';
499
+ };
500
+
501
+ },{}],35:[function(require,module,exports){
502
+ // 7.2.8 IsRegExp(argument)
503
+ var isObject = require('./_is-object');
504
+ var cof = require('./_cof');
505
+ var MATCH = require('./_wks')('match');
506
+ module.exports = function (it) {
507
+ var isRegExp;
508
+ return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp');
509
+ };
510
+
511
+ },{"./_cof":10,"./_is-object":34,"./_wks":81}],36:[function(require,module,exports){
512
+ // call something on iterator step with safe closing on error
513
+ var anObject = require('./_an-object');
514
+ module.exports = function (iterator, fn, value, entries) {
515
+ try {
516
+ return entries ? fn(anObject(value)[0], value[1]) : fn(value);
517
+ // 7.4.6 IteratorClose(iterator, completion)
518
+ } catch (e) {
519
+ var ret = iterator['return'];
520
+ if (ret !== undefined) anObject(ret.call(iterator));
521
+ throw e;
522
+ }
523
+ };
524
+
525
+ },{"./_an-object":4}],37:[function(require,module,exports){
526
+ 'use strict';
527
+ var create = require('./_object-create');
528
+ var descriptor = require('./_property-desc');
529
+ var setToStringTag = require('./_set-to-string-tag');
530
+ var IteratorPrototype = {};
531
+
532
+ // 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
533
+ require('./_hide')(IteratorPrototype, require('./_wks')('iterator'), function () { return this; });
534
+
535
+ module.exports = function (Constructor, NAME, next) {
536
+ Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });
537
+ setToStringTag(Constructor, NAME + ' Iterator');
538
+ };
539
+
540
+ },{"./_hide":27,"./_object-create":44,"./_property-desc":57,"./_set-to-string-tag":63,"./_wks":81}],38:[function(require,module,exports){
541
+ 'use strict';
542
+ var LIBRARY = require('./_library');
543
+ var $export = require('./_export');
544
+ var redefine = require('./_redefine');
545
+ var hide = require('./_hide');
546
+ var Iterators = require('./_iterators');
547
+ var $iterCreate = require('./_iter-create');
548
+ var setToStringTag = require('./_set-to-string-tag');
549
+ var getPrototypeOf = require('./_object-gpo');
550
+ var ITERATOR = require('./_wks')('iterator');
551
+ var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`
552
+ var FF_ITERATOR = '@@iterator';
553
+ var KEYS = 'keys';
554
+ var VALUES = 'values';
555
+
556
+ var returnThis = function () { return this; };
557
+
558
+ module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {
559
+ $iterCreate(Constructor, NAME, next);
560
+ var getMethod = function (kind) {
561
+ if (!BUGGY && kind in proto) return proto[kind];
562
+ switch (kind) {
563
+ case KEYS: return function keys() { return new Constructor(this, kind); };
564
+ case VALUES: return function values() { return new Constructor(this, kind); };
565
+ } return function entries() { return new Constructor(this, kind); };
566
+ };
567
+ var TAG = NAME + ' Iterator';
568
+ var DEF_VALUES = DEFAULT == VALUES;
569
+ var VALUES_BUG = false;
570
+ var proto = Base.prototype;
571
+ var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];
572
+ var $default = $native || getMethod(DEFAULT);
573
+ var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;
574
+ var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;
575
+ var methods, key, IteratorPrototype;
576
+ // Fix native
577
+ if ($anyNative) {
578
+ IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));
579
+ if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {
580
+ // Set @@toStringTag to native iterators
581
+ setToStringTag(IteratorPrototype, TAG, true);
582
+ // fix for some old engines
583
+ if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);
584
+ }
585
+ }
586
+ // fix Array#{values, @@iterator}.name in V8 / FF
587
+ if (DEF_VALUES && $native && $native.name !== VALUES) {
588
+ VALUES_BUG = true;
589
+ $default = function values() { return $native.call(this); };
590
+ }
591
+ // Define iterator
592
+ if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {
593
+ hide(proto, ITERATOR, $default);
594
+ }
595
+ // Plug for library
596
+ Iterators[NAME] = $default;
597
+ Iterators[TAG] = returnThis;
598
+ if (DEFAULT) {
599
+ methods = {
600
+ values: DEF_VALUES ? $default : getMethod(VALUES),
601
+ keys: IS_SET ? $default : getMethod(KEYS),
602
+ entries: $entries
603
+ };
604
+ if (FORCED) for (key in methods) {
605
+ if (!(key in proto)) redefine(proto, key, methods[key]);
606
+ } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
607
+ }
608
+ return methods;
609
+ };
610
+
611
+ },{"./_export":19,"./_hide":27,"./_iter-create":37,"./_iterators":41,"./_library":42,"./_object-gpo":51,"./_redefine":58,"./_set-to-string-tag":63,"./_wks":81}],39:[function(require,module,exports){
612
+ var ITERATOR = require('./_wks')('iterator');
613
+ var SAFE_CLOSING = false;
614
+
615
+ try {
616
+ var riter = [7][ITERATOR]();
617
+ riter['return'] = function () { SAFE_CLOSING = true; };
618
+ // eslint-disable-next-line no-throw-literal
619
+ Array.from(riter, function () { throw 2; });
620
+ } catch (e) { /* empty */ }
621
+
622
+ module.exports = function (exec, skipClosing) {
623
+ if (!skipClosing && !SAFE_CLOSING) return false;
624
+ var safe = false;
625
+ try {
626
+ var arr = [7];
627
+ var iter = arr[ITERATOR]();
628
+ iter.next = function () { return { done: safe = true }; };
629
+ arr[ITERATOR] = function () { return iter; };
630
+ exec(arr);
631
+ } catch (e) { /* empty */ }
632
+ return safe;
633
+ };
634
+
635
+ },{"./_wks":81}],40:[function(require,module,exports){
636
+ module.exports = function (done, value) {
637
+ return { value: value, done: !!done };
638
+ };
639
+
640
+ },{}],41:[function(require,module,exports){
641
+ module.exports = {};
642
+
643
+ },{}],42:[function(require,module,exports){
644
+ module.exports = false;
645
+
646
+ },{}],43:[function(require,module,exports){
647
+ var META = require('./_uid')('meta');
648
+ var isObject = require('./_is-object');
649
+ var has = require('./_has');
650
+ var setDesc = require('./_object-dp').f;
651
+ var id = 0;
652
+ var isExtensible = Object.isExtensible || function () {
653
+ return true;
654
+ };
655
+ var FREEZE = !require('./_fails')(function () {
656
+ return isExtensible(Object.preventExtensions({}));
657
+ });
658
+ var setMeta = function (it) {
659
+ setDesc(it, META, { value: {
660
+ i: 'O' + ++id, // object ID
661
+ w: {} // weak collections IDs
662
+ } });
663
+ };
664
+ var fastKey = function (it, create) {
665
+ // return primitive with prefix
666
+ if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
667
+ if (!has(it, META)) {
668
+ // can't set metadata to uncaught frozen object
669
+ if (!isExtensible(it)) return 'F';
670
+ // not necessary to add metadata
671
+ if (!create) return 'E';
672
+ // add missing metadata
673
+ setMeta(it);
674
+ // return object ID
675
+ } return it[META].i;
676
+ };
677
+ var getWeak = function (it, create) {
678
+ if (!has(it, META)) {
679
+ // can't set metadata to uncaught frozen object
680
+ if (!isExtensible(it)) return true;
681
+ // not necessary to add metadata
682
+ if (!create) return false;
683
+ // add missing metadata
684
+ setMeta(it);
685
+ // return hash weak collections IDs
686
+ } return it[META].w;
687
+ };
688
+ // add metadata on freeze-family methods calling
689
+ var onFreeze = function (it) {
690
+ if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it);
691
+ return it;
692
+ };
693
+ var meta = module.exports = {
694
+ KEY: META,
695
+ NEED: false,
696
+ fastKey: fastKey,
697
+ getWeak: getWeak,
698
+ onFreeze: onFreeze
699
+ };
700
+
701
+ },{"./_fails":21,"./_has":26,"./_is-object":34,"./_object-dp":45,"./_uid":78}],44:[function(require,module,exports){
702
+ // 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
703
+ var anObject = require('./_an-object');
704
+ var dPs = require('./_object-dps');
705
+ var enumBugKeys = require('./_enum-bug-keys');
706
+ var IE_PROTO = require('./_shared-key')('IE_PROTO');
707
+ var Empty = function () { /* empty */ };
708
+ var PROTOTYPE = 'prototype';
709
+
710
+ // Create object with fake `null` prototype: use iframe Object with cleared prototype
711
+ var createDict = function () {
712
+ // Thrash, waste and sodomy: IE GC bug
713
+ var iframe = require('./_dom-create')('iframe');
714
+ var i = enumBugKeys.length;
715
+ var lt = '<';
716
+ var gt = '>';
717
+ var iframeDocument;
718
+ iframe.style.display = 'none';
719
+ require('./_html').appendChild(iframe);
720
+ iframe.src = 'javascript:'; // eslint-disable-line no-script-url
721
+ // createDict = iframe.contentWindow.Object;
722
+ // html.removeChild(iframe);
723
+ iframeDocument = iframe.contentWindow.document;
724
+ iframeDocument.open();
725
+ iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
726
+ iframeDocument.close();
727
+ createDict = iframeDocument.F;
728
+ while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];
729
+ return createDict();
730
+ };
731
+
732
+ module.exports = Object.create || function create(O, Properties) {
733
+ var result;
734
+ if (O !== null) {
735
+ Empty[PROTOTYPE] = anObject(O);
736
+ result = new Empty();
737
+ Empty[PROTOTYPE] = null;
738
+ // add "__proto__" for Object.getPrototypeOf polyfill
739
+ result[IE_PROTO] = O;
740
+ } else result = createDict();
741
+ return Properties === undefined ? result : dPs(result, Properties);
742
+ };
743
+
744
+ },{"./_an-object":4,"./_dom-create":16,"./_enum-bug-keys":17,"./_html":28,"./_object-dps":46,"./_shared-key":64}],45:[function(require,module,exports){
745
+ var anObject = require('./_an-object');
746
+ var IE8_DOM_DEFINE = require('./_ie8-dom-define');
747
+ var toPrimitive = require('./_to-primitive');
748
+ var dP = Object.defineProperty;
749
+
750
+ exports.f = require('./_descriptors') ? Object.defineProperty : function defineProperty(O, P, Attributes) {
751
+ anObject(O);
752
+ P = toPrimitive(P, true);
753
+ anObject(Attributes);
754
+ if (IE8_DOM_DEFINE) try {
755
+ return dP(O, P, Attributes);
756
+ } catch (e) { /* empty */ }
757
+ if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
758
+ if ('value' in Attributes) O[P] = Attributes.value;
759
+ return O;
760
+ };
761
+
762
+ },{"./_an-object":4,"./_descriptors":15,"./_ie8-dom-define":29,"./_to-primitive":77}],46:[function(require,module,exports){
763
+ var dP = require('./_object-dp');
764
+ var anObject = require('./_an-object');
765
+ var getKeys = require('./_object-keys');
766
+
767
+ module.exports = require('./_descriptors') ? Object.defineProperties : function defineProperties(O, Properties) {
768
+ anObject(O);
769
+ var keys = getKeys(Properties);
770
+ var length = keys.length;
771
+ var i = 0;
772
+ var P;
773
+ while (length > i) dP.f(O, P = keys[i++], Properties[P]);
774
+ return O;
775
+ };
776
+
777
+ },{"./_an-object":4,"./_descriptors":15,"./_object-dp":45,"./_object-keys":53}],47:[function(require,module,exports){
778
+ var pIE = require('./_object-pie');
779
+ var createDesc = require('./_property-desc');
780
+ var toIObject = require('./_to-iobject');
781
+ var toPrimitive = require('./_to-primitive');
782
+ var has = require('./_has');
783
+ var IE8_DOM_DEFINE = require('./_ie8-dom-define');
784
+ var gOPD = Object.getOwnPropertyDescriptor;
785
+
786
+ exports.f = require('./_descriptors') ? gOPD : function getOwnPropertyDescriptor(O, P) {
787
+ O = toIObject(O);
788
+ P = toPrimitive(P, true);
789
+ if (IE8_DOM_DEFINE) try {
790
+ return gOPD(O, P);
791
+ } catch (e) { /* empty */ }
792
+ if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);
793
+ };
794
+
795
+ },{"./_descriptors":15,"./_has":26,"./_ie8-dom-define":29,"./_object-pie":54,"./_property-desc":57,"./_to-iobject":74,"./_to-primitive":77}],48:[function(require,module,exports){
796
+ // fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
797
+ var toIObject = require('./_to-iobject');
798
+ var gOPN = require('./_object-gopn').f;
799
+ var toString = {}.toString;
800
+
801
+ var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
802
+ ? Object.getOwnPropertyNames(window) : [];
803
+
804
+ var getWindowNames = function (it) {
805
+ try {
806
+ return gOPN(it);
807
+ } catch (e) {
808
+ return windowNames.slice();
809
+ }
810
+ };
811
+
812
+ module.exports.f = function getOwnPropertyNames(it) {
813
+ return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));
814
+ };
815
+
816
+ },{"./_object-gopn":49,"./_to-iobject":74}],49:[function(require,module,exports){
817
+ // 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
818
+ var $keys = require('./_object-keys-internal');
819
+ var hiddenKeys = require('./_enum-bug-keys').concat('length', 'prototype');
820
+
821
+ exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
822
+ return $keys(O, hiddenKeys);
823
+ };
824
+
825
+ },{"./_enum-bug-keys":17,"./_object-keys-internal":52}],50:[function(require,module,exports){
826
+ exports.f = Object.getOwnPropertySymbols;
827
+
828
+ },{}],51:[function(require,module,exports){
829
+ // 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
830
+ var has = require('./_has');
831
+ var toObject = require('./_to-object');
832
+ var IE_PROTO = require('./_shared-key')('IE_PROTO');
833
+ var ObjectProto = Object.prototype;
834
+
835
+ module.exports = Object.getPrototypeOf || function (O) {
836
+ O = toObject(O);
837
+ if (has(O, IE_PROTO)) return O[IE_PROTO];
838
+ if (typeof O.constructor == 'function' && O instanceof O.constructor) {
839
+ return O.constructor.prototype;
840
+ } return O instanceof Object ? ObjectProto : null;
841
+ };
842
+
843
+ },{"./_has":26,"./_shared-key":64,"./_to-object":76}],52:[function(require,module,exports){
844
+ var has = require('./_has');
845
+ var toIObject = require('./_to-iobject');
846
+ var arrayIndexOf = require('./_array-includes')(false);
847
+ var IE_PROTO = require('./_shared-key')('IE_PROTO');
848
+
849
+ module.exports = function (object, names) {
850
+ var O = toIObject(object);
851
+ var i = 0;
852
+ var result = [];
853
+ var key;
854
+ for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);
855
+ // Don't enum bug & hidden keys
856
+ while (names.length > i) if (has(O, key = names[i++])) {
857
+ ~arrayIndexOf(result, key) || result.push(key);
858
+ }
859
+ return result;
860
+ };
861
+
862
+ },{"./_array-includes":5,"./_has":26,"./_shared-key":64,"./_to-iobject":74}],53:[function(require,module,exports){
863
+ // 19.1.2.14 / 15.2.3.14 Object.keys(O)
864
+ var $keys = require('./_object-keys-internal');
865
+ var enumBugKeys = require('./_enum-bug-keys');
866
+
867
+ module.exports = Object.keys || function keys(O) {
868
+ return $keys(O, enumBugKeys);
869
+ };
870
+
871
+ },{"./_enum-bug-keys":17,"./_object-keys-internal":52}],54:[function(require,module,exports){
872
+ exports.f = {}.propertyIsEnumerable;
873
+
874
+ },{}],55:[function(require,module,exports){
875
+ // most Object methods by ES6 should accept primitives
876
+ var $export = require('./_export');
877
+ var core = require('./_core');
878
+ var fails = require('./_fails');
879
+ module.exports = function (KEY, exec) {
880
+ var fn = (core.Object || {})[KEY] || Object[KEY];
881
+ var exp = {};
882
+ exp[KEY] = exec(fn);
883
+ $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp);
884
+ };
885
+
886
+ },{"./_core":11,"./_export":19,"./_fails":21}],56:[function(require,module,exports){
887
+ // all object keys, includes non-enumerable and symbols
888
+ var gOPN = require('./_object-gopn');
889
+ var gOPS = require('./_object-gops');
890
+ var anObject = require('./_an-object');
891
+ var Reflect = require('./_global').Reflect;
892
+ module.exports = Reflect && Reflect.ownKeys || function ownKeys(it) {
893
+ var keys = gOPN.f(anObject(it));
894
+ var getSymbols = gOPS.f;
895
+ return getSymbols ? keys.concat(getSymbols(it)) : keys;
896
+ };
897
+
898
+ },{"./_an-object":4,"./_global":25,"./_object-gopn":49,"./_object-gops":50}],57:[function(require,module,exports){
899
+ module.exports = function (bitmap, value) {
900
+ return {
901
+ enumerable: !(bitmap & 1),
902
+ configurable: !(bitmap & 2),
903
+ writable: !(bitmap & 4),
904
+ value: value
905
+ };
906
+ };
907
+
908
+ },{}],58:[function(require,module,exports){
909
+ var global = require('./_global');
910
+ var hide = require('./_hide');
911
+ var has = require('./_has');
912
+ var SRC = require('./_uid')('src');
913
+ var $toString = require('./_function-to-string');
914
+ var TO_STRING = 'toString';
915
+ var TPL = ('' + $toString).split(TO_STRING);
916
+
917
+ require('./_core').inspectSource = function (it) {
918
+ return $toString.call(it);
919
+ };
920
+
921
+ (module.exports = function (O, key, val, safe) {
922
+ var isFunction = typeof val == 'function';
923
+ if (isFunction) has(val, 'name') || hide(val, 'name', key);
924
+ if (O[key] === val) return;
925
+ if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));
926
+ if (O === global) {
927
+ O[key] = val;
928
+ } else if (!safe) {
929
+ delete O[key];
930
+ hide(O, key, val);
931
+ } else if (O[key]) {
932
+ O[key] = val;
933
+ } else {
934
+ hide(O, key, val);
935
+ }
936
+ // add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
937
+ })(Function.prototype, TO_STRING, function toString() {
938
+ return typeof this == 'function' && this[SRC] || $toString.call(this);
939
+ });
940
+
941
+ },{"./_core":11,"./_function-to-string":24,"./_global":25,"./_has":26,"./_hide":27,"./_uid":78}],59:[function(require,module,exports){
942
+ 'use strict';
943
+
944
+ var classof = require('./_classof');
945
+ var builtinExec = RegExp.prototype.exec;
946
+
947
+ // `RegExpExec` abstract operation
948
+ // https://tc39.github.io/ecma262/#sec-regexpexec
949
+ module.exports = function (R, S) {
950
+ var exec = R.exec;
951
+ if (typeof exec === 'function') {
952
+ var result = exec.call(R, S);
953
+ if (typeof result !== 'object') {
954
+ throw new TypeError('RegExp exec method returned something other than an Object or null');
955
+ }
956
+ return result;
957
+ }
958
+ if (classof(R) !== 'RegExp') {
959
+ throw new TypeError('RegExp#exec called on incompatible receiver');
960
+ }
961
+ return builtinExec.call(R, S);
962
+ };
963
+
964
+ },{"./_classof":9}],60:[function(require,module,exports){
965
+ 'use strict';
966
+
967
+ var regexpFlags = require('./_flags');
968
+
969
+ var nativeExec = RegExp.prototype.exec;
970
+ // This always refers to the native implementation, because the
971
+ // String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,
972
+ // which loads this file before patching the method.
973
+ var nativeReplace = String.prototype.replace;
974
+
975
+ var patchedExec = nativeExec;
976
+
977
+ var LAST_INDEX = 'lastIndex';
978
+
979
+ var UPDATES_LAST_INDEX_WRONG = (function () {
980
+ var re1 = /a/,
981
+ re2 = /b*/g;
982
+ nativeExec.call(re1, 'a');
983
+ nativeExec.call(re2, 'a');
984
+ return re1[LAST_INDEX] !== 0 || re2[LAST_INDEX] !== 0;
985
+ })();
986
+
987
+ // nonparticipating capturing group, copied from es5-shim's String#split patch.
988
+ var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;
989
+
990
+ var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED;
991
+
992
+ if (PATCH) {
993
+ patchedExec = function exec(str) {
994
+ var re = this;
995
+ var lastIndex, reCopy, match, i;
996
+
997
+ if (NPCG_INCLUDED) {
998
+ reCopy = new RegExp('^' + re.source + '$(?!\\s)', regexpFlags.call(re));
999
+ }
1000
+ if (UPDATES_LAST_INDEX_WRONG) lastIndex = re[LAST_INDEX];
1001
+
1002
+ match = nativeExec.call(re, str);
1003
+
1004
+ if (UPDATES_LAST_INDEX_WRONG && match) {
1005
+ re[LAST_INDEX] = re.global ? match.index + match[0].length : lastIndex;
1006
+ }
1007
+ if (NPCG_INCLUDED && match && match.length > 1) {
1008
+ // Fix browsers whose `exec` methods don't consistently return `undefined`
1009
+ // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/
1010
+ // eslint-disable-next-line no-loop-func
1011
+ nativeReplace.call(match[0], reCopy, function () {
1012
+ for (i = 1; i < arguments.length - 2; i++) {
1013
+ if (arguments[i] === undefined) match[i] = undefined;
1014
+ }
1015
+ });
1016
+ }
1017
+
1018
+ return match;
1019
+ };
1020
+ }
1021
+
1022
+ module.exports = patchedExec;
1023
+
1024
+ },{"./_flags":23}],61:[function(require,module,exports){
1025
+ // Works with __proto__ only. Old v8 can't work with null proto objects.
1026
+ /* eslint-disable no-proto */
1027
+ var isObject = require('./_is-object');
1028
+ var anObject = require('./_an-object');
1029
+ var check = function (O, proto) {
1030
+ anObject(O);
1031
+ if (!isObject(proto) && proto !== null) throw TypeError(proto + ": can't set as prototype!");
1032
+ };
1033
+ module.exports = {
1034
+ set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line
1035
+ function (test, buggy, set) {
1036
+ try {
1037
+ set = require('./_ctx')(Function.call, require('./_object-gopd').f(Object.prototype, '__proto__').set, 2);
1038
+ set(test, []);
1039
+ buggy = !(test instanceof Array);
1040
+ } catch (e) { buggy = true; }
1041
+ return function setPrototypeOf(O, proto) {
1042
+ check(O, proto);
1043
+ if (buggy) O.__proto__ = proto;
1044
+ else set(O, proto);
1045
+ return O;
1046
+ };
1047
+ }({}, false) : undefined),
1048
+ check: check
1049
+ };
1050
+
1051
+ },{"./_an-object":4,"./_ctx":13,"./_is-object":34,"./_object-gopd":47}],62:[function(require,module,exports){
1052
+ 'use strict';
1053
+ var global = require('./_global');
1054
+ var dP = require('./_object-dp');
1055
+ var DESCRIPTORS = require('./_descriptors');
1056
+ var SPECIES = require('./_wks')('species');
1057
+
1058
+ module.exports = function (KEY) {
1059
+ var C = global[KEY];
1060
+ if (DESCRIPTORS && C && !C[SPECIES]) dP.f(C, SPECIES, {
1061
+ configurable: true,
1062
+ get: function () { return this; }
1063
+ });
1064
+ };
1065
+
1066
+ },{"./_descriptors":15,"./_global":25,"./_object-dp":45,"./_wks":81}],63:[function(require,module,exports){
1067
+ var def = require('./_object-dp').f;
1068
+ var has = require('./_has');
1069
+ var TAG = require('./_wks')('toStringTag');
1070
+
1071
+ module.exports = function (it, tag, stat) {
1072
+ if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
1073
+ };
1074
+
1075
+ },{"./_has":26,"./_object-dp":45,"./_wks":81}],64:[function(require,module,exports){
1076
+ var shared = require('./_shared')('keys');
1077
+ var uid = require('./_uid');
1078
+ module.exports = function (key) {
1079
+ return shared[key] || (shared[key] = uid(key));
1080
+ };
1081
+
1082
+ },{"./_shared":65,"./_uid":78}],65:[function(require,module,exports){
1083
+ var core = require('./_core');
1084
+ var global = require('./_global');
1085
+ var SHARED = '__core-js_shared__';
1086
+ var store = global[SHARED] || (global[SHARED] = {});
1087
+
1088
+ (module.exports = function (key, value) {
1089
+ return store[key] || (store[key] = value !== undefined ? value : {});
1090
+ })('versions', []).push({
1091
+ version: core.version,
1092
+ mode: require('./_library') ? 'pure' : 'global',
1093
+ copyright: '© 2020 Denis Pushkarev (zloirock.ru)'
1094
+ });
1095
+
1096
+ },{"./_core":11,"./_global":25,"./_library":42}],66:[function(require,module,exports){
1097
+ // 7.3.20 SpeciesConstructor(O, defaultConstructor)
1098
+ var anObject = require('./_an-object');
1099
+ var aFunction = require('./_a-function');
1100
+ var SPECIES = require('./_wks')('species');
1101
+ module.exports = function (O, D) {
1102
+ var C = anObject(O).constructor;
1103
+ var S;
1104
+ return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);
1105
+ };
1106
+
1107
+ },{"./_a-function":1,"./_an-object":4,"./_wks":81}],67:[function(require,module,exports){
1108
+ 'use strict';
1109
+ var fails = require('./_fails');
1110
+
1111
+ module.exports = function (method, arg) {
1112
+ return !!method && fails(function () {
1113
+ // eslint-disable-next-line no-useless-call
1114
+ arg ? method.call(null, function () { /* empty */ }, 1) : method.call(null);
1115
+ });
1116
+ };
1117
+
1118
+ },{"./_fails":21}],68:[function(require,module,exports){
1119
+ var toInteger = require('./_to-integer');
1120
+ var defined = require('./_defined');
1121
+ // true -> String#at
1122
+ // false -> String#codePointAt
1123
+ module.exports = function (TO_STRING) {
1124
+ return function (that, pos) {
1125
+ var s = String(defined(that));
1126
+ var i = toInteger(pos);
1127
+ var l = s.length;
1128
+ var a, b;
1129
+ if (i < 0 || i >= l) return TO_STRING ? '' : undefined;
1130
+ a = s.charCodeAt(i);
1131
+ return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
1132
+ ? TO_STRING ? s.charAt(i) : a
1133
+ : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
1134
+ };
1135
+ };
1136
+
1137
+ },{"./_defined":14,"./_to-integer":73}],69:[function(require,module,exports){
1138
+ // helper for String#{startsWith, endsWith, includes}
1139
+ var isRegExp = require('./_is-regexp');
1140
+ var defined = require('./_defined');
1141
+
1142
+ module.exports = function (that, searchString, NAME) {
1143
+ if (isRegExp(searchString)) throw TypeError('String#' + NAME + " doesn't accept regex!");
1144
+ return String(defined(that));
1145
+ };
1146
+
1147
+ },{"./_defined":14,"./_is-regexp":35}],70:[function(require,module,exports){
1148
+ var $export = require('./_export');
1149
+ var defined = require('./_defined');
1150
+ var fails = require('./_fails');
1151
+ var spaces = require('./_string-ws');
1152
+ var space = '[' + spaces + ']';
1153
+ var non = '\u200b\u0085';
1154
+ var ltrim = RegExp('^' + space + space + '*');
1155
+ var rtrim = RegExp(space + space + '*$');
1156
+
1157
+ var exporter = function (KEY, exec, ALIAS) {
1158
+ var exp = {};
1159
+ var FORCE = fails(function () {
1160
+ return !!spaces[KEY]() || non[KEY]() != non;
1161
+ });
1162
+ var fn = exp[KEY] = FORCE ? exec(trim) : spaces[KEY];
1163
+ if (ALIAS) exp[ALIAS] = fn;
1164
+ $export($export.P + $export.F * FORCE, 'String', exp);
1165
+ };
1166
+
1167
+ // 1 -> String#trimLeft
1168
+ // 2 -> String#trimRight
1169
+ // 3 -> String#trim
1170
+ var trim = exporter.trim = function (string, TYPE) {
1171
+ string = String(defined(string));
1172
+ if (TYPE & 1) string = string.replace(ltrim, '');
1173
+ if (TYPE & 2) string = string.replace(rtrim, '');
1174
+ return string;
1175
+ };
1176
+
1177
+ module.exports = exporter;
1178
+
1179
+ },{"./_defined":14,"./_export":19,"./_fails":21,"./_string-ws":71}],71:[function(require,module,exports){
1180
+ module.exports = '\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003' +
1181
+ '\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF';
1182
+
1183
+ },{}],72:[function(require,module,exports){
1184
+ var toInteger = require('./_to-integer');
1185
+ var max = Math.max;
1186
+ var min = Math.min;
1187
+ module.exports = function (index, length) {
1188
+ index = toInteger(index);
1189
+ return index < 0 ? max(index + length, 0) : min(index, length);
1190
+ };
1191
+
1192
+ },{"./_to-integer":73}],73:[function(require,module,exports){
1193
+ // 7.1.4 ToInteger
1194
+ var ceil = Math.ceil;
1195
+ var floor = Math.floor;
1196
+ module.exports = function (it) {
1197
+ return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
1198
+ };
1199
+
1200
+ },{}],74:[function(require,module,exports){
1201
+ // to indexed object, toObject with fallback for non-array-like ES3 strings
1202
+ var IObject = require('./_iobject');
1203
+ var defined = require('./_defined');
1204
+ module.exports = function (it) {
1205
+ return IObject(defined(it));
1206
+ };
1207
+
1208
+ },{"./_defined":14,"./_iobject":31}],75:[function(require,module,exports){
1209
+ // 7.1.15 ToLength
1210
+ var toInteger = require('./_to-integer');
1211
+ var min = Math.min;
1212
+ module.exports = function (it) {
1213
+ return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
1214
+ };
1215
+
1216
+ },{"./_to-integer":73}],76:[function(require,module,exports){
1217
+ // 7.1.13 ToObject(argument)
1218
+ var defined = require('./_defined');
1219
+ module.exports = function (it) {
1220
+ return Object(defined(it));
1221
+ };
1222
+
1223
+ },{"./_defined":14}],77:[function(require,module,exports){
1224
+ // 7.1.1 ToPrimitive(input [, PreferredType])
1225
+ var isObject = require('./_is-object');
1226
+ // instead of the ES6 spec version, we didn't implement @@toPrimitive case
1227
+ // and the second argument - flag - preferred type is a string
1228
+ module.exports = function (it, S) {
1229
+ if (!isObject(it)) return it;
1230
+ var fn, val;
1231
+ if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
1232
+ if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
1233
+ if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
1234
+ throw TypeError("Can't convert object to primitive value");
1235
+ };
1236
+
1237
+ },{"./_is-object":34}],78:[function(require,module,exports){
1238
+ var id = 0;
1239
+ var px = Math.random();
1240
+ module.exports = function (key) {
1241
+ return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
1242
+ };
1243
+
1244
+ },{}],79:[function(require,module,exports){
1245
+ var global = require('./_global');
1246
+ var core = require('./_core');
1247
+ var LIBRARY = require('./_library');
1248
+ var wksExt = require('./_wks-ext');
1249
+ var defineProperty = require('./_object-dp').f;
1250
+ module.exports = function (name) {
1251
+ var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});
1252
+ if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) });
1253
+ };
1254
+
1255
+ },{"./_core":11,"./_global":25,"./_library":42,"./_object-dp":45,"./_wks-ext":80}],80:[function(require,module,exports){
1256
+ exports.f = require('./_wks');
1257
+
1258
+ },{"./_wks":81}],81:[function(require,module,exports){
1259
+ var store = require('./_shared')('wks');
1260
+ var uid = require('./_uid');
1261
+ var Symbol = require('./_global').Symbol;
1262
+ var USE_SYMBOL = typeof Symbol == 'function';
1263
+
1264
+ var $exports = module.exports = function (name) {
1265
+ return store[name] || (store[name] =
1266
+ USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
1267
+ };
1268
+
1269
+ $exports.store = store;
1270
+
1271
+ },{"./_global":25,"./_shared":65,"./_uid":78}],82:[function(require,module,exports){
1272
+ var classof = require('./_classof');
1273
+ var ITERATOR = require('./_wks')('iterator');
1274
+ var Iterators = require('./_iterators');
1275
+ module.exports = require('./_core').getIteratorMethod = function (it) {
1276
+ if (it != undefined) return it[ITERATOR]
1277
+ || it['@@iterator']
1278
+ || Iterators[classof(it)];
1279
+ };
1280
+
1281
+ },{"./_classof":9,"./_core":11,"./_iterators":41,"./_wks":81}],83:[function(require,module,exports){
1282
+ 'use strict';
1283
+ var $export = require('./_export');
1284
+ var $filter = require('./_array-methods')(2);
1285
+
1286
+ $export($export.P + $export.F * !require('./_strict-method')([].filter, true), 'Array', {
1287
+ // 22.1.3.7 / 15.4.4.20 Array.prototype.filter(callbackfn [, thisArg])
1288
+ filter: function filter(callbackfn /* , thisArg */) {
1289
+ return $filter(this, callbackfn, arguments[1]);
1290
+ }
1291
+ });
1292
+
1293
+ },{"./_array-methods":6,"./_export":19,"./_strict-method":67}],84:[function(require,module,exports){
1294
+ 'use strict';
1295
+ var ctx = require('./_ctx');
1296
+ var $export = require('./_export');
1297
+ var toObject = require('./_to-object');
1298
+ var call = require('./_iter-call');
1299
+ var isArrayIter = require('./_is-array-iter');
1300
+ var toLength = require('./_to-length');
1301
+ var createProperty = require('./_create-property');
1302
+ var getIterFn = require('./core.get-iterator-method');
1303
+
1304
+ $export($export.S + $export.F * !require('./_iter-detect')(function (iter) { Array.from(iter); }), 'Array', {
1305
+ // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)
1306
+ from: function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {
1307
+ var O = toObject(arrayLike);
1308
+ var C = typeof this == 'function' ? this : Array;
1309
+ var aLen = arguments.length;
1310
+ var mapfn = aLen > 1 ? arguments[1] : undefined;
1311
+ var mapping = mapfn !== undefined;
1312
+ var index = 0;
1313
+ var iterFn = getIterFn(O);
1314
+ var length, result, step, iterator;
1315
+ if (mapping) mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2);
1316
+ // if object isn't iterable or it's array with default iterator - use simple case
1317
+ if (iterFn != undefined && !(C == Array && isArrayIter(iterFn))) {
1318
+ for (iterator = iterFn.call(O), result = new C(); !(step = iterator.next()).done; index++) {
1319
+ createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value);
1320
+ }
1321
+ } else {
1322
+ length = toLength(O.length);
1323
+ for (result = new C(length); length > index; index++) {
1324
+ createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]);
1325
+ }
1326
+ }
1327
+ result.length = index;
1328
+ return result;
1329
+ }
1330
+ });
1331
+
1332
+ },{"./_create-property":12,"./_ctx":13,"./_export":19,"./_is-array-iter":32,"./_iter-call":36,"./_iter-detect":39,"./_to-length":75,"./_to-object":76,"./core.get-iterator-method":82}],85:[function(require,module,exports){
1333
+ 'use strict';
1334
+ var addToUnscopables = require('./_add-to-unscopables');
1335
+ var step = require('./_iter-step');
1336
+ var Iterators = require('./_iterators');
1337
+ var toIObject = require('./_to-iobject');
1338
+
1339
+ // 22.1.3.4 Array.prototype.entries()
1340
+ // 22.1.3.13 Array.prototype.keys()
1341
+ // 22.1.3.29 Array.prototype.values()
1342
+ // 22.1.3.30 Array.prototype[@@iterator]()
1343
+ module.exports = require('./_iter-define')(Array, 'Array', function (iterated, kind) {
1344
+ this._t = toIObject(iterated); // target
1345
+ this._i = 0; // next index
1346
+ this._k = kind; // kind
1347
+ // 22.1.5.2.1 %ArrayIteratorPrototype%.next()
1348
+ }, function () {
1349
+ var O = this._t;
1350
+ var kind = this._k;
1351
+ var index = this._i++;
1352
+ if (!O || index >= O.length) {
1353
+ this._t = undefined;
1354
+ return step(1);
1355
+ }
1356
+ if (kind == 'keys') return step(0, index);
1357
+ if (kind == 'values') return step(0, O[index]);
1358
+ return step(0, [index, O[index]]);
1359
+ }, 'values');
1360
+
1361
+ // argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
1362
+ Iterators.Arguments = Iterators.Array;
1363
+
1364
+ addToUnscopables('keys');
1365
+ addToUnscopables('values');
1366
+ addToUnscopables('entries');
1367
+
1368
+ },{"./_add-to-unscopables":2,"./_iter-define":38,"./_iter-step":40,"./_iterators":41,"./_to-iobject":74}],86:[function(require,module,exports){
1369
+ 'use strict';
1370
+ var $export = require('./_export');
1371
+ var $map = require('./_array-methods')(1);
1372
+
1373
+ $export($export.P + $export.F * !require('./_strict-method')([].map, true), 'Array', {
1374
+ // 22.1.3.15 / 15.4.4.19 Array.prototype.map(callbackfn [, thisArg])
1375
+ map: function map(callbackfn /* , thisArg */) {
1376
+ return $map(this, callbackfn, arguments[1]);
1377
+ }
1378
+ });
1379
+
1380
+ },{"./_array-methods":6,"./_export":19,"./_strict-method":67}],87:[function(require,module,exports){
1381
+ 'use strict';
1382
+ var $export = require('./_export');
1383
+ var html = require('./_html');
1384
+ var cof = require('./_cof');
1385
+ var toAbsoluteIndex = require('./_to-absolute-index');
1386
+ var toLength = require('./_to-length');
1387
+ var arraySlice = [].slice;
1388
+
1389
+ // fallback for not array-like ES3 strings and DOM objects
1390
+ $export($export.P + $export.F * require('./_fails')(function () {
1391
+ if (html) arraySlice.call(html);
1392
+ }), 'Array', {
1393
+ slice: function slice(begin, end) {
1394
+ var len = toLength(this.length);
1395
+ var klass = cof(this);
1396
+ end = end === undefined ? len : end;
1397
+ if (klass == 'Array') return arraySlice.call(this, begin, end);
1398
+ var start = toAbsoluteIndex(begin, len);
1399
+ var upTo = toAbsoluteIndex(end, len);
1400
+ var size = toLength(upTo - start);
1401
+ var cloned = new Array(size);
1402
+ var i = 0;
1403
+ for (; i < size; i++) cloned[i] = klass == 'String'
1404
+ ? this.charAt(start + i)
1405
+ : this[start + i];
1406
+ return cloned;
1407
+ }
1408
+ });
1409
+
1410
+ },{"./_cof":10,"./_export":19,"./_fails":21,"./_html":28,"./_to-absolute-index":72,"./_to-length":75}],88:[function(require,module,exports){
1411
+ 'use strict';
1412
+ var global = require('./_global');
1413
+ var has = require('./_has');
1414
+ var cof = require('./_cof');
1415
+ var inheritIfRequired = require('./_inherit-if-required');
1416
+ var toPrimitive = require('./_to-primitive');
1417
+ var fails = require('./_fails');
1418
+ var gOPN = require('./_object-gopn').f;
1419
+ var gOPD = require('./_object-gopd').f;
1420
+ var dP = require('./_object-dp').f;
1421
+ var $trim = require('./_string-trim').trim;
1422
+ var NUMBER = 'Number';
1423
+ var $Number = global[NUMBER];
1424
+ var Base = $Number;
1425
+ var proto = $Number.prototype;
1426
+ // Opera ~12 has broken Object#toString
1427
+ var BROKEN_COF = cof(require('./_object-create')(proto)) == NUMBER;
1428
+ var TRIM = 'trim' in String.prototype;
1429
+
1430
+ // 7.1.3 ToNumber(argument)
1431
+ var toNumber = function (argument) {
1432
+ var it = toPrimitive(argument, false);
1433
+ if (typeof it == 'string' && it.length > 2) {
1434
+ it = TRIM ? it.trim() : $trim(it, 3);
1435
+ var first = it.charCodeAt(0);
1436
+ var third, radix, maxCode;
1437
+ if (first === 43 || first === 45) {
1438
+ third = it.charCodeAt(2);
1439
+ if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix
1440
+ } else if (first === 48) {
1441
+ switch (it.charCodeAt(1)) {
1442
+ case 66: case 98: radix = 2; maxCode = 49; break; // fast equal /^0b[01]+$/i
1443
+ case 79: case 111: radix = 8; maxCode = 55; break; // fast equal /^0o[0-7]+$/i
1444
+ default: return +it;
1445
+ }
1446
+ for (var digits = it.slice(2), i = 0, l = digits.length, code; i < l; i++) {
1447
+ code = digits.charCodeAt(i);
1448
+ // parseInt parses a string to a first unavailable symbol
1449
+ // but ToNumber should return NaN if a string contains unavailable symbols
1450
+ if (code < 48 || code > maxCode) return NaN;
1451
+ } return parseInt(digits, radix);
1452
+ }
1453
+ } return +it;
1454
+ };
1455
+
1456
+ if (!$Number(' 0o1') || !$Number('0b1') || $Number('+0x1')) {
1457
+ $Number = function Number(value) {
1458
+ var it = arguments.length < 1 ? 0 : value;
1459
+ var that = this;
1460
+ return that instanceof $Number
1461
+ // check on 1..constructor(foo) case
1462
+ && (BROKEN_COF ? fails(function () { proto.valueOf.call(that); }) : cof(that) != NUMBER)
1463
+ ? inheritIfRequired(new Base(toNumber(it)), that, $Number) : toNumber(it);
1464
+ };
1465
+ for (var keys = require('./_descriptors') ? gOPN(Base) : (
1466
+ // ES3:
1467
+ 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +
1468
+ // ES6 (in case, if modules with ES6 Number statics required before):
1469
+ 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +
1470
+ 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger'
1471
+ ).split(','), j = 0, key; keys.length > j; j++) {
1472
+ if (has(Base, key = keys[j]) && !has($Number, key)) {
1473
+ dP($Number, key, gOPD(Base, key));
1474
+ }
1475
+ }
1476
+ $Number.prototype = proto;
1477
+ proto.constructor = $Number;
1478
+ require('./_redefine')(global, NUMBER, $Number);
1479
+ }
1480
+
1481
+ },{"./_cof":10,"./_descriptors":15,"./_fails":21,"./_global":25,"./_has":26,"./_inherit-if-required":30,"./_object-create":44,"./_object-dp":45,"./_object-gopd":47,"./_object-gopn":49,"./_redefine":58,"./_string-trim":70,"./_to-primitive":77}],89:[function(require,module,exports){
1482
+ // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
1483
+ var toIObject = require('./_to-iobject');
1484
+ var $getOwnPropertyDescriptor = require('./_object-gopd').f;
1485
+
1486
+ require('./_object-sap')('getOwnPropertyDescriptor', function () {
1487
+ return function getOwnPropertyDescriptor(it, key) {
1488
+ return $getOwnPropertyDescriptor(toIObject(it), key);
1489
+ };
1490
+ });
1491
+
1492
+ },{"./_object-gopd":47,"./_object-sap":55,"./_to-iobject":74}],90:[function(require,module,exports){
1493
+ // 19.1.2.14 Object.keys(O)
1494
+ var toObject = require('./_to-object');
1495
+ var $keys = require('./_object-keys');
1496
+
1497
+ require('./_object-sap')('keys', function () {
1498
+ return function keys(it) {
1499
+ return $keys(toObject(it));
1500
+ };
1501
+ });
1502
+
1503
+ },{"./_object-keys":53,"./_object-sap":55,"./_to-object":76}],91:[function(require,module,exports){
1504
+ 'use strict';
1505
+ // 19.1.3.6 Object.prototype.toString()
1506
+ var classof = require('./_classof');
1507
+ var test = {};
1508
+ test[require('./_wks')('toStringTag')] = 'z';
1509
+ if (test + '' != '[object z]') {
1510
+ require('./_redefine')(Object.prototype, 'toString', function toString() {
1511
+ return '[object ' + classof(this) + ']';
1512
+ }, true);
1513
+ }
1514
+
1515
+ },{"./_classof":9,"./_redefine":58,"./_wks":81}],92:[function(require,module,exports){
1516
+ var global = require('./_global');
1517
+ var inheritIfRequired = require('./_inherit-if-required');
1518
+ var dP = require('./_object-dp').f;
1519
+ var gOPN = require('./_object-gopn').f;
1520
+ var isRegExp = require('./_is-regexp');
1521
+ var $flags = require('./_flags');
1522
+ var $RegExp = global.RegExp;
1523
+ var Base = $RegExp;
1524
+ var proto = $RegExp.prototype;
1525
+ var re1 = /a/g;
1526
+ var re2 = /a/g;
1527
+ // "new" creates a new object, old webkit buggy here
1528
+ var CORRECT_NEW = new $RegExp(re1) !== re1;
1529
+
1530
+ if (require('./_descriptors') && (!CORRECT_NEW || require('./_fails')(function () {
1531
+ re2[require('./_wks')('match')] = false;
1532
+ // RegExp constructor can alter flags and IsRegExp works correct with @@match
1533
+ return $RegExp(re1) != re1 || $RegExp(re2) == re2 || $RegExp(re1, 'i') != '/a/i';
1534
+ }))) {
1535
+ $RegExp = function RegExp(p, f) {
1536
+ var tiRE = this instanceof $RegExp;
1537
+ var piRE = isRegExp(p);
1538
+ var fiU = f === undefined;
1539
+ return !tiRE && piRE && p.constructor === $RegExp && fiU ? p
1540
+ : inheritIfRequired(CORRECT_NEW
1541
+ ? new Base(piRE && !fiU ? p.source : p, f)
1542
+ : Base((piRE = p instanceof $RegExp) ? p.source : p, piRE && fiU ? $flags.call(p) : f)
1543
+ , tiRE ? this : proto, $RegExp);
1544
+ };
1545
+ var proxy = function (key) {
1546
+ key in $RegExp || dP($RegExp, key, {
1547
+ configurable: true,
1548
+ get: function () { return Base[key]; },
1549
+ set: function (it) { Base[key] = it; }
1550
+ });
1551
+ };
1552
+ for (var keys = gOPN(Base), i = 0; keys.length > i;) proxy(keys[i++]);
1553
+ proto.constructor = $RegExp;
1554
+ $RegExp.prototype = proto;
1555
+ require('./_redefine')(global, 'RegExp', $RegExp);
1556
+ }
1557
+
1558
+ require('./_set-species')('RegExp');
1559
+
1560
+ },{"./_descriptors":15,"./_fails":21,"./_flags":23,"./_global":25,"./_inherit-if-required":30,"./_is-regexp":35,"./_object-dp":45,"./_object-gopn":49,"./_redefine":58,"./_set-species":62,"./_wks":81}],93:[function(require,module,exports){
1561
+ 'use strict';
1562
+ var regexpExec = require('./_regexp-exec');
1563
+ require('./_export')({
1564
+ target: 'RegExp',
1565
+ proto: true,
1566
+ forced: regexpExec !== /./.exec
1567
+ }, {
1568
+ exec: regexpExec
1569
+ });
1570
+
1571
+ },{"./_export":19,"./_regexp-exec":60}],94:[function(require,module,exports){
1572
+ 'use strict';
1573
+
1574
+ var anObject = require('./_an-object');
1575
+ var toLength = require('./_to-length');
1576
+ var advanceStringIndex = require('./_advance-string-index');
1577
+ var regExpExec = require('./_regexp-exec-abstract');
1578
+
1579
+ // @@match logic
1580
+ require('./_fix-re-wks')('match', 1, function (defined, MATCH, $match, maybeCallNative) {
1581
+ return [
1582
+ // `String.prototype.match` method
1583
+ // https://tc39.github.io/ecma262/#sec-string.prototype.match
1584
+ function match(regexp) {
1585
+ var O = defined(this);
1586
+ var fn = regexp == undefined ? undefined : regexp[MATCH];
1587
+ return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));
1588
+ },
1589
+ // `RegExp.prototype[@@match]` method
1590
+ // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match
1591
+ function (regexp) {
1592
+ var res = maybeCallNative($match, regexp, this);
1593
+ if (res.done) return res.value;
1594
+ var rx = anObject(regexp);
1595
+ var S = String(this);
1596
+ if (!rx.global) return regExpExec(rx, S);
1597
+ var fullUnicode = rx.unicode;
1598
+ rx.lastIndex = 0;
1599
+ var A = [];
1600
+ var n = 0;
1601
+ var result;
1602
+ while ((result = regExpExec(rx, S)) !== null) {
1603
+ var matchStr = String(result[0]);
1604
+ A[n] = matchStr;
1605
+ if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
1606
+ n++;
1607
+ }
1608
+ return n === 0 ? null : A;
1609
+ }
1610
+ ];
1611
+ });
1612
+
1613
+ },{"./_advance-string-index":3,"./_an-object":4,"./_fix-re-wks":22,"./_regexp-exec-abstract":59,"./_to-length":75}],95:[function(require,module,exports){
1614
+ 'use strict';
1615
+
1616
+ var anObject = require('./_an-object');
1617
+ var toObject = require('./_to-object');
1618
+ var toLength = require('./_to-length');
1619
+ var toInteger = require('./_to-integer');
1620
+ var advanceStringIndex = require('./_advance-string-index');
1621
+ var regExpExec = require('./_regexp-exec-abstract');
1622
+ var max = Math.max;
1623
+ var min = Math.min;
1624
+ var floor = Math.floor;
1625
+ var SUBSTITUTION_SYMBOLS = /\$([$&`']|\d\d?|<[^>]*>)/g;
1626
+ var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&`']|\d\d?)/g;
1627
+
1628
+ var maybeToString = function (it) {
1629
+ return it === undefined ? it : String(it);
1630
+ };
1631
+
1632
+ // @@replace logic
1633
+ require('./_fix-re-wks')('replace', 2, function (defined, REPLACE, $replace, maybeCallNative) {
1634
+ return [
1635
+ // `String.prototype.replace` method
1636
+ // https://tc39.github.io/ecma262/#sec-string.prototype.replace
1637
+ function replace(searchValue, replaceValue) {
1638
+ var O = defined(this);
1639
+ var fn = searchValue == undefined ? undefined : searchValue[REPLACE];
1640
+ return fn !== undefined
1641
+ ? fn.call(searchValue, O, replaceValue)
1642
+ : $replace.call(String(O), searchValue, replaceValue);
1643
+ },
1644
+ // `RegExp.prototype[@@replace]` method
1645
+ // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace
1646
+ function (regexp, replaceValue) {
1647
+ var res = maybeCallNative($replace, regexp, this, replaceValue);
1648
+ if (res.done) return res.value;
1649
+
1650
+ var rx = anObject(regexp);
1651
+ var S = String(this);
1652
+ var functionalReplace = typeof replaceValue === 'function';
1653
+ if (!functionalReplace) replaceValue = String(replaceValue);
1654
+ var global = rx.global;
1655
+ if (global) {
1656
+ var fullUnicode = rx.unicode;
1657
+ rx.lastIndex = 0;
1658
+ }
1659
+ var results = [];
1660
+ while (true) {
1661
+ var result = regExpExec(rx, S);
1662
+ if (result === null) break;
1663
+ results.push(result);
1664
+ if (!global) break;
1665
+ var matchStr = String(result[0]);
1666
+ if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);
1667
+ }
1668
+ var accumulatedResult = '';
1669
+ var nextSourcePosition = 0;
1670
+ for (var i = 0; i < results.length; i++) {
1671
+ result = results[i];
1672
+ var matched = String(result[0]);
1673
+ var position = max(min(toInteger(result.index), S.length), 0);
1674
+ var captures = [];
1675
+ // NOTE: This is equivalent to
1676
+ // captures = result.slice(1).map(maybeToString)
1677
+ // but for some reason `nativeSlice.call(result, 1, result.length)` (called in
1678
+ // the slice polyfill when slicing native arrays) "doesn't work" in safari 9 and
1679
+ // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.
1680
+ for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));
1681
+ var namedCaptures = result.groups;
1682
+ if (functionalReplace) {
1683
+ var replacerArgs = [matched].concat(captures, position, S);
1684
+ if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);
1685
+ var replacement = String(replaceValue.apply(undefined, replacerArgs));
1686
+ } else {
1687
+ replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);
1688
+ }
1689
+ if (position >= nextSourcePosition) {
1690
+ accumulatedResult += S.slice(nextSourcePosition, position) + replacement;
1691
+ nextSourcePosition = position + matched.length;
1692
+ }
1693
+ }
1694
+ return accumulatedResult + S.slice(nextSourcePosition);
1695
+ }
1696
+ ];
1697
+
1698
+ // https://tc39.github.io/ecma262/#sec-getsubstitution
1699
+ function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {
1700
+ var tailPos = position + matched.length;
1701
+ var m = captures.length;
1702
+ var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;
1703
+ if (namedCaptures !== undefined) {
1704
+ namedCaptures = toObject(namedCaptures);
1705
+ symbols = SUBSTITUTION_SYMBOLS;
1706
+ }
1707
+ return $replace.call(replacement, symbols, function (match, ch) {
1708
+ var capture;
1709
+ switch (ch.charAt(0)) {
1710
+ case '$': return '$';
1711
+ case '&': return matched;
1712
+ case '`': return str.slice(0, position);
1713
+ case "'": return str.slice(tailPos);
1714
+ case '<':
1715
+ capture = namedCaptures[ch.slice(1, -1)];
1716
+ break;
1717
+ default: // \d\d?
1718
+ var n = +ch;
1719
+ if (n === 0) return match;
1720
+ if (n > m) {
1721
+ var f = floor(n / 10);
1722
+ if (f === 0) return match;
1723
+ if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);
1724
+ return match;
1725
+ }
1726
+ capture = captures[n - 1];
1727
+ }
1728
+ return capture === undefined ? '' : capture;
1729
+ });
1730
+ }
1731
+ });
1732
+
1733
+ },{"./_advance-string-index":3,"./_an-object":4,"./_fix-re-wks":22,"./_regexp-exec-abstract":59,"./_to-integer":73,"./_to-length":75,"./_to-object":76}],96:[function(require,module,exports){
1734
+ 'use strict';
1735
+
1736
+ var isRegExp = require('./_is-regexp');
1737
+ var anObject = require('./_an-object');
1738
+ var speciesConstructor = require('./_species-constructor');
1739
+ var advanceStringIndex = require('./_advance-string-index');
1740
+ var toLength = require('./_to-length');
1741
+ var callRegExpExec = require('./_regexp-exec-abstract');
1742
+ var regexpExec = require('./_regexp-exec');
1743
+ var fails = require('./_fails');
1744
+ var $min = Math.min;
1745
+ var $push = [].push;
1746
+ var $SPLIT = 'split';
1747
+ var LENGTH = 'length';
1748
+ var LAST_INDEX = 'lastIndex';
1749
+ var MAX_UINT32 = 0xffffffff;
1750
+
1751
+ // babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError
1752
+ var SUPPORTS_Y = !fails(function () { RegExp(MAX_UINT32, 'y'); });
1753
+
1754
+ // @@split logic
1755
+ require('./_fix-re-wks')('split', 2, function (defined, SPLIT, $split, maybeCallNative) {
1756
+ var internalSplit;
1757
+ if (
1758
+ 'abbc'[$SPLIT](/(b)*/)[1] == 'c' ||
1759
+ 'test'[$SPLIT](/(?:)/, -1)[LENGTH] != 4 ||
1760
+ 'ab'[$SPLIT](/(?:ab)*/)[LENGTH] != 2 ||
1761
+ '.'[$SPLIT](/(.?)(.?)/)[LENGTH] != 4 ||
1762
+ '.'[$SPLIT](/()()/)[LENGTH] > 1 ||
1763
+ ''[$SPLIT](/.?/)[LENGTH]
1764
+ ) {
1765
+ // based on es5-shim implementation, need to rework it
1766
+ internalSplit = function (separator, limit) {
1767
+ var string = String(this);
1768
+ if (separator === undefined && limit === 0) return [];
1769
+ // If `separator` is not a regex, use native split
1770
+ if (!isRegExp(separator)) return $split.call(string, separator, limit);
1771
+ var output = [];
1772
+ var flags = (separator.ignoreCase ? 'i' : '') +
1773
+ (separator.multiline ? 'm' : '') +
1774
+ (separator.unicode ? 'u' : '') +
1775
+ (separator.sticky ? 'y' : '');
1776
+ var lastLastIndex = 0;
1777
+ var splitLimit = limit === undefined ? MAX_UINT32 : limit >>> 0;
1778
+ // Make `global` and avoid `lastIndex` issues by working with a copy
1779
+ var separatorCopy = new RegExp(separator.source, flags + 'g');
1780
+ var match, lastIndex, lastLength;
1781
+ while (match = regexpExec.call(separatorCopy, string)) {
1782
+ lastIndex = separatorCopy[LAST_INDEX];
1783
+ if (lastIndex > lastLastIndex) {
1784
+ output.push(string.slice(lastLastIndex, match.index));
1785
+ if (match[LENGTH] > 1 && match.index < string[LENGTH]) $push.apply(output, match.slice(1));
1786
+ lastLength = match[0][LENGTH];
1787
+ lastLastIndex = lastIndex;
1788
+ if (output[LENGTH] >= splitLimit) break;
1789
+ }
1790
+ if (separatorCopy[LAST_INDEX] === match.index) separatorCopy[LAST_INDEX]++; // Avoid an infinite loop
1791
+ }
1792
+ if (lastLastIndex === string[LENGTH]) {
1793
+ if (lastLength || !separatorCopy.test('')) output.push('');
1794
+ } else output.push(string.slice(lastLastIndex));
1795
+ return output[LENGTH] > splitLimit ? output.slice(0, splitLimit) : output;
1796
+ };
1797
+ // Chakra, V8
1798
+ } else if ('0'[$SPLIT](undefined, 0)[LENGTH]) {
1799
+ internalSplit = function (separator, limit) {
1800
+ return separator === undefined && limit === 0 ? [] : $split.call(this, separator, limit);
1801
+ };
1802
+ } else {
1803
+ internalSplit = $split;
1804
+ }
1805
+
1806
+ return [
1807
+ // `String.prototype.split` method
1808
+ // https://tc39.github.io/ecma262/#sec-string.prototype.split
1809
+ function split(separator, limit) {
1810
+ var O = defined(this);
1811
+ var splitter = separator == undefined ? undefined : separator[SPLIT];
1812
+ return splitter !== undefined
1813
+ ? splitter.call(separator, O, limit)
1814
+ : internalSplit.call(String(O), separator, limit);
1815
+ },
1816
+ // `RegExp.prototype[@@split]` method
1817
+ // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split
1818
+ //
1819
+ // NOTE: This cannot be properly polyfilled in engines that don't support
1820
+ // the 'y' flag.
1821
+ function (regexp, limit) {
1822
+ var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== $split);
1823
+ if (res.done) return res.value;
1824
+
1825
+ var rx = anObject(regexp);
1826
+ var S = String(this);
1827
+ var C = speciesConstructor(rx, RegExp);
1828
+
1829
+ var unicodeMatching = rx.unicode;
1830
+ var flags = (rx.ignoreCase ? 'i' : '') +
1831
+ (rx.multiline ? 'm' : '') +
1832
+ (rx.unicode ? 'u' : '') +
1833
+ (SUPPORTS_Y ? 'y' : 'g');
1834
+
1835
+ // ^(? + rx + ) is needed, in combination with some S slicing, to
1836
+ // simulate the 'y' flag.
1837
+ var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags);
1838
+ var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;
1839
+ if (lim === 0) return [];
1840
+ if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];
1841
+ var p = 0;
1842
+ var q = 0;
1843
+ var A = [];
1844
+ while (q < S.length) {
1845
+ splitter.lastIndex = SUPPORTS_Y ? q : 0;
1846
+ var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q));
1847
+ var e;
1848
+ if (
1849
+ z === null ||
1850
+ (e = $min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p
1851
+ ) {
1852
+ q = advanceStringIndex(S, q, unicodeMatching);
1853
+ } else {
1854
+ A.push(S.slice(p, q));
1855
+ if (A.length === lim) return A;
1856
+ for (var i = 1; i <= z.length - 1; i++) {
1857
+ A.push(z[i]);
1858
+ if (A.length === lim) return A;
1859
+ }
1860
+ q = p = e;
1861
+ }
1862
+ }
1863
+ A.push(S.slice(p));
1864
+ return A;
1865
+ }
1866
+ ];
1867
+ });
1868
+
1869
+ },{"./_advance-string-index":3,"./_an-object":4,"./_fails":21,"./_fix-re-wks":22,"./_is-regexp":35,"./_regexp-exec":60,"./_regexp-exec-abstract":59,"./_species-constructor":66,"./_to-length":75}],97:[function(require,module,exports){
1870
+ // 21.1.3.7 String.prototype.includes(searchString, position = 0)
1871
+ 'use strict';
1872
+ var $export = require('./_export');
1873
+ var context = require('./_string-context');
1874
+ var INCLUDES = 'includes';
1875
+
1876
+ $export($export.P + $export.F * require('./_fails-is-regexp')(INCLUDES), 'String', {
1877
+ includes: function includes(searchString /* , position = 0 */) {
1878
+ return !!~context(this, searchString, INCLUDES)
1879
+ .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined);
1880
+ }
1881
+ });
1882
+
1883
+ },{"./_export":19,"./_fails-is-regexp":20,"./_string-context":69}],98:[function(require,module,exports){
1884
+ 'use strict';
1885
+ var $at = require('./_string-at')(true);
1886
+
1887
+ // 21.1.3.27 String.prototype[@@iterator]()
1888
+ require('./_iter-define')(String, 'String', function (iterated) {
1889
+ this._t = String(iterated); // target
1890
+ this._i = 0; // next index
1891
+ // 21.1.5.2.1 %StringIteratorPrototype%.next()
1892
+ }, function () {
1893
+ var O = this._t;
1894
+ var index = this._i;
1895
+ var point;
1896
+ if (index >= O.length) return { value: undefined, done: true };
1897
+ point = $at(O, index);
1898
+ this._i += point.length;
1899
+ return { value: point, done: false };
1900
+ });
1901
+
1902
+ },{"./_iter-define":38,"./_string-at":68}],99:[function(require,module,exports){
1903
+ 'use strict';
1904
+ // ECMAScript 6 symbols shim
1905
+ var global = require('./_global');
1906
+ var has = require('./_has');
1907
+ var DESCRIPTORS = require('./_descriptors');
1908
+ var $export = require('./_export');
1909
+ var redefine = require('./_redefine');
1910
+ var META = require('./_meta').KEY;
1911
+ var $fails = require('./_fails');
1912
+ var shared = require('./_shared');
1913
+ var setToStringTag = require('./_set-to-string-tag');
1914
+ var uid = require('./_uid');
1915
+ var wks = require('./_wks');
1916
+ var wksExt = require('./_wks-ext');
1917
+ var wksDefine = require('./_wks-define');
1918
+ var enumKeys = require('./_enum-keys');
1919
+ var isArray = require('./_is-array');
1920
+ var anObject = require('./_an-object');
1921
+ var isObject = require('./_is-object');
1922
+ var toObject = require('./_to-object');
1923
+ var toIObject = require('./_to-iobject');
1924
+ var toPrimitive = require('./_to-primitive');
1925
+ var createDesc = require('./_property-desc');
1926
+ var _create = require('./_object-create');
1927
+ var gOPNExt = require('./_object-gopn-ext');
1928
+ var $GOPD = require('./_object-gopd');
1929
+ var $GOPS = require('./_object-gops');
1930
+ var $DP = require('./_object-dp');
1931
+ var $keys = require('./_object-keys');
1932
+ var gOPD = $GOPD.f;
1933
+ var dP = $DP.f;
1934
+ var gOPN = gOPNExt.f;
1935
+ var $Symbol = global.Symbol;
1936
+ var $JSON = global.JSON;
1937
+ var _stringify = $JSON && $JSON.stringify;
1938
+ var PROTOTYPE = 'prototype';
1939
+ var HIDDEN = wks('_hidden');
1940
+ var TO_PRIMITIVE = wks('toPrimitive');
1941
+ var isEnum = {}.propertyIsEnumerable;
1942
+ var SymbolRegistry = shared('symbol-registry');
1943
+ var AllSymbols = shared('symbols');
1944
+ var OPSymbols = shared('op-symbols');
1945
+ var ObjectProto = Object[PROTOTYPE];
1946
+ var USE_NATIVE = typeof $Symbol == 'function' && !!$GOPS.f;
1947
+ var QObject = global.QObject;
1948
+ // Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173
1949
+ var setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;
1950
+
1951
+ // fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
1952
+ var setSymbolDesc = DESCRIPTORS && $fails(function () {
1953
+ return _create(dP({}, 'a', {
1954
+ get: function () { return dP(this, 'a', { value: 7 }).a; }
1955
+ })).a != 7;
1956
+ }) ? function (it, key, D) {
1957
+ var protoDesc = gOPD(ObjectProto, key);
1958
+ if (protoDesc) delete ObjectProto[key];
1959
+ dP(it, key, D);
1960
+ if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc);
1961
+ } : dP;
1962
+
1963
+ var wrap = function (tag) {
1964
+ var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);
1965
+ sym._k = tag;
1966
+ return sym;
1967
+ };
1968
+
1969
+ var isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) {
1970
+ return typeof it == 'symbol';
1971
+ } : function (it) {
1972
+ return it instanceof $Symbol;
1973
+ };
1974
+
1975
+ var $defineProperty = function defineProperty(it, key, D) {
1976
+ if (it === ObjectProto) $defineProperty(OPSymbols, key, D);
1977
+ anObject(it);
1978
+ key = toPrimitive(key, true);
1979
+ anObject(D);
1980
+ if (has(AllSymbols, key)) {
1981
+ if (!D.enumerable) {
1982
+ if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {}));
1983
+ it[HIDDEN][key] = true;
1984
+ } else {
1985
+ if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false;
1986
+ D = _create(D, { enumerable: createDesc(0, false) });
1987
+ } return setSymbolDesc(it, key, D);
1988
+ } return dP(it, key, D);
1989
+ };
1990
+ var $defineProperties = function defineProperties(it, P) {
1991
+ anObject(it);
1992
+ var keys = enumKeys(P = toIObject(P));
1993
+ var i = 0;
1994
+ var l = keys.length;
1995
+ var key;
1996
+ while (l > i) $defineProperty(it, key = keys[i++], P[key]);
1997
+ return it;
1998
+ };
1999
+ var $create = function create(it, P) {
2000
+ return P === undefined ? _create(it) : $defineProperties(_create(it), P);
2001
+ };
2002
+ var $propertyIsEnumerable = function propertyIsEnumerable(key) {
2003
+ var E = isEnum.call(this, key = toPrimitive(key, true));
2004
+ if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false;
2005
+ return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;
2006
+ };
2007
+ var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) {
2008
+ it = toIObject(it);
2009
+ key = toPrimitive(key, true);
2010
+ if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return;
2011
+ var D = gOPD(it, key);
2012
+ if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true;
2013
+ return D;
2014
+ };
2015
+ var $getOwnPropertyNames = function getOwnPropertyNames(it) {
2016
+ var names = gOPN(toIObject(it));
2017
+ var result = [];
2018
+ var i = 0;
2019
+ var key;
2020
+ while (names.length > i) {
2021
+ if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key);
2022
+ } return result;
2023
+ };
2024
+ var $getOwnPropertySymbols = function getOwnPropertySymbols(it) {
2025
+ var IS_OP = it === ObjectProto;
2026
+ var names = gOPN(IS_OP ? OPSymbols : toIObject(it));
2027
+ var result = [];
2028
+ var i = 0;
2029
+ var key;
2030
+ while (names.length > i) {
2031
+ if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]);
2032
+ } return result;
2033
+ };
2034
+
2035
+ // 19.4.1.1 Symbol([description])
2036
+ if (!USE_NATIVE) {
2037
+ $Symbol = function Symbol() {
2038
+ if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!');
2039
+ var tag = uid(arguments.length > 0 ? arguments[0] : undefined);
2040
+ var $set = function (value) {
2041
+ if (this === ObjectProto) $set.call(OPSymbols, value);
2042
+ if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;
2043
+ setSymbolDesc(this, tag, createDesc(1, value));
2044
+ };
2045
+ if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set });
2046
+ return wrap(tag);
2047
+ };
2048
+ redefine($Symbol[PROTOTYPE], 'toString', function toString() {
2049
+ return this._k;
2050
+ });
2051
+
2052
+ $GOPD.f = $getOwnPropertyDescriptor;
2053
+ $DP.f = $defineProperty;
2054
+ require('./_object-gopn').f = gOPNExt.f = $getOwnPropertyNames;
2055
+ require('./_object-pie').f = $propertyIsEnumerable;
2056
+ $GOPS.f = $getOwnPropertySymbols;
2057
+
2058
+ if (DESCRIPTORS && !require('./_library')) {
2059
+ redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);
2060
+ }
2061
+
2062
+ wksExt.f = function (name) {
2063
+ return wrap(wks(name));
2064
+ };
2065
+ }
2066
+
2067
+ $export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol });
2068
+
2069
+ for (var es6Symbols = (
2070
+ // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14
2071
+ 'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'
2072
+ ).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]);
2073
+
2074
+ for (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]);
2075
+
2076
+ $export($export.S + $export.F * !USE_NATIVE, 'Symbol', {
2077
+ // 19.4.2.1 Symbol.for(key)
2078
+ 'for': function (key) {
2079
+ return has(SymbolRegistry, key += '')
2080
+ ? SymbolRegistry[key]
2081
+ : SymbolRegistry[key] = $Symbol(key);
2082
+ },
2083
+ // 19.4.2.5 Symbol.keyFor(sym)
2084
+ keyFor: function keyFor(sym) {
2085
+ if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!');
2086
+ for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key;
2087
+ },
2088
+ useSetter: function () { setter = true; },
2089
+ useSimple: function () { setter = false; }
2090
+ });
2091
+
2092
+ $export($export.S + $export.F * !USE_NATIVE, 'Object', {
2093
+ // 19.1.2.2 Object.create(O [, Properties])
2094
+ create: $create,
2095
+ // 19.1.2.4 Object.defineProperty(O, P, Attributes)
2096
+ defineProperty: $defineProperty,
2097
+ // 19.1.2.3 Object.defineProperties(O, Properties)
2098
+ defineProperties: $defineProperties,
2099
+ // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
2100
+ getOwnPropertyDescriptor: $getOwnPropertyDescriptor,
2101
+ // 19.1.2.7 Object.getOwnPropertyNames(O)
2102
+ getOwnPropertyNames: $getOwnPropertyNames,
2103
+ // 19.1.2.8 Object.getOwnPropertySymbols(O)
2104
+ getOwnPropertySymbols: $getOwnPropertySymbols
2105
+ });
2106
+
2107
+ // Chrome 38 and 39 `Object.getOwnPropertySymbols` fails on primitives
2108
+ // https://bugs.chromium.org/p/v8/issues/detail?id=3443
2109
+ var FAILS_ON_PRIMITIVES = $fails(function () { $GOPS.f(1); });
2110
+
2111
+ $export($export.S + $export.F * FAILS_ON_PRIMITIVES, 'Object', {
2112
+ getOwnPropertySymbols: function getOwnPropertySymbols(it) {
2113
+ return $GOPS.f(toObject(it));
2114
+ }
2115
+ });
2116
+
2117
+ // 24.3.2 JSON.stringify(value [, replacer [, space]])
2118
+ $JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () {
2119
+ var S = $Symbol();
2120
+ // MS Edge converts symbol values to JSON as {}
2121
+ // WebKit converts symbol values to JSON as null
2122
+ // V8 throws on boxed symbols
2123
+ return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}';
2124
+ })), 'JSON', {
2125
+ stringify: function stringify(it) {
2126
+ var args = [it];
2127
+ var i = 1;
2128
+ var replacer, $replacer;
2129
+ while (arguments.length > i) args.push(arguments[i++]);
2130
+ $replacer = replacer = args[1];
2131
+ if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined
2132
+ if (!isArray(replacer)) replacer = function (key, value) {
2133
+ if (typeof $replacer == 'function') value = $replacer.call(this, key, value);
2134
+ if (!isSymbol(value)) return value;
2135
+ };
2136
+ args[1] = replacer;
2137
+ return _stringify.apply($JSON, args);
2138
+ }
2139
+ });
2140
+
2141
+ // 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)
2142
+ $Symbol[PROTOTYPE][TO_PRIMITIVE] || require('./_hide')($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);
2143
+ // 19.4.3.5 Symbol.prototype[@@toStringTag]
2144
+ setToStringTag($Symbol, 'Symbol');
2145
+ // 20.2.1.9 Math[@@toStringTag]
2146
+ setToStringTag(Math, 'Math', true);
2147
+ // 24.3.3 JSON[@@toStringTag]
2148
+ setToStringTag(global.JSON, 'JSON', true);
2149
+
2150
+ },{"./_an-object":4,"./_descriptors":15,"./_enum-keys":18,"./_export":19,"./_fails":21,"./_global":25,"./_has":26,"./_hide":27,"./_is-array":33,"./_is-object":34,"./_library":42,"./_meta":43,"./_object-create":44,"./_object-dp":45,"./_object-gopd":47,"./_object-gopn":49,"./_object-gopn-ext":48,"./_object-gops":50,"./_object-keys":53,"./_object-pie":54,"./_property-desc":57,"./_redefine":58,"./_set-to-string-tag":63,"./_shared":65,"./_to-iobject":74,"./_to-object":76,"./_to-primitive":77,"./_uid":78,"./_wks":81,"./_wks-define":79,"./_wks-ext":80}],100:[function(require,module,exports){
2151
+ 'use strict';
2152
+ // https://github.com/tc39/Array.prototype.includes
2153
+ var $export = require('./_export');
2154
+ var $includes = require('./_array-includes')(true);
2155
+
2156
+ $export($export.P, 'Array', {
2157
+ includes: function includes(el /* , fromIndex = 0 */) {
2158
+ return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);
2159
+ }
2160
+ });
2161
+
2162
+ require('./_add-to-unscopables')('includes');
2163
+
2164
+ },{"./_add-to-unscopables":2,"./_array-includes":5,"./_export":19}],101:[function(require,module,exports){
2165
+ // https://github.com/tc39/proposal-object-getownpropertydescriptors
2166
+ var $export = require('./_export');
2167
+ var ownKeys = require('./_own-keys');
2168
+ var toIObject = require('./_to-iobject');
2169
+ var gOPD = require('./_object-gopd');
2170
+ var createProperty = require('./_create-property');
2171
+
2172
+ $export($export.S, 'Object', {
2173
+ getOwnPropertyDescriptors: function getOwnPropertyDescriptors(object) {
2174
+ var O = toIObject(object);
2175
+ var getDesc = gOPD.f;
2176
+ var keys = ownKeys(O);
2177
+ var result = {};
2178
+ var i = 0;
2179
+ var key, desc;
2180
+ while (keys.length > i) {
2181
+ desc = getDesc(O, key = keys[i++]);
2182
+ if (desc !== undefined) createProperty(result, key, desc);
2183
+ }
2184
+ return result;
2185
+ }
2186
+ });
2187
+
2188
+ },{"./_create-property":12,"./_export":19,"./_object-gopd":47,"./_own-keys":56,"./_to-iobject":74}],102:[function(require,module,exports){
2189
+ var $iterators = require('./es6.array.iterator');
2190
+ var getKeys = require('./_object-keys');
2191
+ var redefine = require('./_redefine');
2192
+ var global = require('./_global');
2193
+ var hide = require('./_hide');
2194
+ var Iterators = require('./_iterators');
2195
+ var wks = require('./_wks');
2196
+ var ITERATOR = wks('iterator');
2197
+ var TO_STRING_TAG = wks('toStringTag');
2198
+ var ArrayValues = Iterators.Array;
2199
+
2200
+ var DOMIterables = {
2201
+ CSSRuleList: true, // TODO: Not spec compliant, should be false.
2202
+ CSSStyleDeclaration: false,
2203
+ CSSValueList: false,
2204
+ ClientRectList: false,
2205
+ DOMRectList: false,
2206
+ DOMStringList: false,
2207
+ DOMTokenList: true,
2208
+ DataTransferItemList: false,
2209
+ FileList: false,
2210
+ HTMLAllCollection: false,
2211
+ HTMLCollection: false,
2212
+ HTMLFormElement: false,
2213
+ HTMLSelectElement: false,
2214
+ MediaList: true, // TODO: Not spec compliant, should be false.
2215
+ MimeTypeArray: false,
2216
+ NamedNodeMap: false,
2217
+ NodeList: true,
2218
+ PaintRequestList: false,
2219
+ Plugin: false,
2220
+ PluginArray: false,
2221
+ SVGLengthList: false,
2222
+ SVGNumberList: false,
2223
+ SVGPathSegList: false,
2224
+ SVGPointList: false,
2225
+ SVGStringList: false,
2226
+ SVGTransformList: false,
2227
+ SourceBufferList: false,
2228
+ StyleSheetList: true, // TODO: Not spec compliant, should be false.
2229
+ TextTrackCueList: false,
2230
+ TextTrackList: false,
2231
+ TouchList: false
2232
+ };
2233
+
2234
+ for (var collections = getKeys(DOMIterables), i = 0; i < collections.length; i++) {
2235
+ var NAME = collections[i];
2236
+ var explicit = DOMIterables[NAME];
2237
+ var Collection = global[NAME];
2238
+ var proto = Collection && Collection.prototype;
2239
+ var key;
2240
+ if (proto) {
2241
+ if (!proto[ITERATOR]) hide(proto, ITERATOR, ArrayValues);
2242
+ if (!proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);
2243
+ Iterators[NAME] = ArrayValues;
2244
+ if (explicit) for (key in $iterators) if (!proto[key]) redefine(proto, key, $iterators[key], true);
2245
+ }
2246
+ }
2247
+
2248
+ },{"./_global":25,"./_hide":27,"./_iterators":41,"./_object-keys":53,"./_redefine":58,"./_wks":81,"./es6.array.iterator":85}],103:[function(require,module,exports){
2249
+ "use strict";
2250
+
2251
+ require("core-js/modules/es6.symbol.js");
2252
+ require("core-js/modules/es6.number.constructor.js");
2253
+ require("core-js/modules/es6.string.iterator.js");
2254
+ require("core-js/modules/es6.object.to-string.js");
2255
+ require("core-js/modules/es6.array.iterator.js");
2256
+ require("core-js/modules/web.dom.iterable.js");
2257
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2258
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
2259
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
2260
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
2261
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
2262
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
2263
+ var _require = require('./protocol'),
2264
+ Parser = _require.Parser,
2265
+ PROTOCOL_6 = _require.PROTOCOL_6,
2266
+ PROTOCOL_7 = _require.PROTOCOL_7;
2267
+ var VERSION = "4.0.2";
2268
+ var Connector = /*#__PURE__*/function () {
2269
+ function Connector(options, WebSocket, Timer, handlers) {
2270
+ var _this = this;
2271
+ _classCallCheck(this, Connector);
2272
+ this.options = options;
2273
+ this.WebSocket = WebSocket;
2274
+ this.Timer = Timer;
2275
+ this.handlers = handlers;
2276
+ var path = this.options.path ? "".concat(this.options.path) : 'livereload';
2277
+ var port = this.options.port ? ":".concat(this.options.port) : '';
2278
+ this._uri = "ws".concat(this.options.https ? 's' : '', "://").concat(this.options.host).concat(port, "/").concat(path);
2279
+ this._nextDelay = this.options.mindelay;
2280
+ this._connectionDesired = false;
2281
+ this.protocol = 0;
2282
+ this.protocolParser = new Parser({
2283
+ connected: function connected(protocol) {
2284
+ _this.protocol = protocol;
2285
+ _this._handshakeTimeout.stop();
2286
+ _this._nextDelay = _this.options.mindelay;
2287
+ _this._disconnectionReason = 'broken';
2288
+ return _this.handlers.connected(_this.protocol);
2289
+ },
2290
+ error: function error(e) {
2291
+ _this.handlers.error(e);
2292
+ return _this._closeOnError();
2293
+ },
2294
+ message: function message(_message) {
2295
+ return _this.handlers.message(_message);
2296
+ }
2297
+ });
2298
+ this._handshakeTimeout = new this.Timer(function () {
2299
+ if (!_this._isSocketConnected()) {
2300
+ return;
2301
+ }
2302
+ _this._disconnectionReason = 'handshake-timeout';
2303
+ return _this.socket.close();
2304
+ });
2305
+ this._reconnectTimer = new this.Timer(function () {
2306
+ if (!_this._connectionDesired) {
2307
+ // shouldn't hit this, but just in case
2308
+ return;
2309
+ }
2310
+ return _this.connect();
2311
+ });
2312
+ this.connect();
2313
+ }
2314
+ _createClass(Connector, [{
2315
+ key: "_isSocketConnected",
2316
+ value: function _isSocketConnected() {
2317
+ return this.socket && this.socket.readyState === this.WebSocket.OPEN;
2318
+ }
2319
+ }, {
2320
+ key: "connect",
2321
+ value: function connect() {
2322
+ var _this2 = this;
2323
+ this._connectionDesired = true;
2324
+ if (this._isSocketConnected()) {
2325
+ return;
2326
+ }
2327
+
2328
+ // prepare for a new connection
2329
+ this._reconnectTimer.stop();
2330
+ this._disconnectionReason = 'cannot-connect';
2331
+ this.protocolParser.reset();
2332
+ this.handlers.connecting();
2333
+ this.socket = new this.WebSocket(this._uri);
2334
+ this.socket.onopen = function (e) {
2335
+ return _this2._onopen(e);
2336
+ };
2337
+ this.socket.onclose = function (e) {
2338
+ return _this2._onclose(e);
2339
+ };
2340
+ this.socket.onmessage = function (e) {
2341
+ return _this2._onmessage(e);
2342
+ };
2343
+ this.socket.onerror = function (e) {
2344
+ return _this2._onerror(e);
2345
+ };
2346
+ }
2347
+ }, {
2348
+ key: "disconnect",
2349
+ value: function disconnect() {
2350
+ this._connectionDesired = false;
2351
+ this._reconnectTimer.stop(); // in case it was running
2352
+
2353
+ if (!this._isSocketConnected()) {
2354
+ return;
2355
+ }
2356
+ this._disconnectionReason = 'manual';
2357
+ return this.socket.close();
2358
+ }
2359
+ }, {
2360
+ key: "_scheduleReconnection",
2361
+ value: function _scheduleReconnection() {
2362
+ if (!this._connectionDesired) {
2363
+ // don't reconnect after manual disconnection
2364
+ return;
2365
+ }
2366
+ if (!this._reconnectTimer.running) {
2367
+ this._reconnectTimer.start(this._nextDelay);
2368
+ this._nextDelay = Math.min(this.options.maxdelay, this._nextDelay * 2);
2369
+ }
2370
+ }
2371
+ }, {
2372
+ key: "sendCommand",
2373
+ value: function sendCommand(command) {
2374
+ if (!this.protocol) {
2375
+ return;
2376
+ }
2377
+ return this._sendCommand(command);
2378
+ }
2379
+ }, {
2380
+ key: "_sendCommand",
2381
+ value: function _sendCommand(command) {
2382
+ return this.socket.send(JSON.stringify(command));
2383
+ }
2384
+ }, {
2385
+ key: "_closeOnError",
2386
+ value: function _closeOnError() {
2387
+ this._handshakeTimeout.stop();
2388
+ this._disconnectionReason = 'error';
2389
+ return this.socket.close();
2390
+ }
2391
+ }, {
2392
+ key: "_onopen",
2393
+ value: function _onopen(e) {
2394
+ this.handlers.socketConnected();
2395
+ this._disconnectionReason = 'handshake-failed';
2396
+
2397
+ // start handshake
2398
+ var hello = {
2399
+ command: 'hello',
2400
+ protocols: [PROTOCOL_6, PROTOCOL_7]
2401
+ };
2402
+ hello.ver = VERSION;
2403
+ if (this.options.ext) {
2404
+ hello.ext = this.options.ext;
2405
+ }
2406
+ if (this.options.extver) {
2407
+ hello.extver = this.options.extver;
2408
+ }
2409
+ if (this.options.snipver) {
2410
+ hello.snipver = this.options.snipver;
2411
+ }
2412
+ this._sendCommand(hello);
2413
+ return this._handshakeTimeout.start(this.options.handshake_timeout);
2414
+ }
2415
+ }, {
2416
+ key: "_onclose",
2417
+ value: function _onclose(e) {
2418
+ this.protocol = 0;
2419
+ this.handlers.disconnected(this._disconnectionReason, this._nextDelay);
2420
+ return this._scheduleReconnection();
2421
+ }
2422
+ }, {
2423
+ key: "_onerror",
2424
+ value: function _onerror(e) {}
2425
+ }, {
2426
+ key: "_onmessage",
2427
+ value: function _onmessage(e) {
2428
+ return this.protocolParser.process(e.data);
2429
+ }
2430
+ }]);
2431
+ return Connector;
2432
+ }();
2433
+ ;
2434
+ exports.Connector = Connector;
2435
+
2436
+ },{"./protocol":108,"core-js/modules/es6.array.iterator.js":85,"core-js/modules/es6.number.constructor.js":88,"core-js/modules/es6.object.to-string.js":91,"core-js/modules/es6.string.iterator.js":98,"core-js/modules/es6.symbol.js":99,"core-js/modules/web.dom.iterable.js":102}],104:[function(require,module,exports){
2437
+ "use strict";
2438
+
2439
+ var CustomEvents = {
2440
+ bind: function bind(element, eventName, handler) {
2441
+ if (element.addEventListener) {
2442
+ return element.addEventListener(eventName, handler, false);
2443
+ }
2444
+ if (element.attachEvent) {
2445
+ element[eventName] = 1;
2446
+ return element.attachEvent('onpropertychange', function (event) {
2447
+ if (event.propertyName === eventName) {
2448
+ return handler();
2449
+ }
2450
+ });
2451
+ }
2452
+ throw new Error("Attempt to attach custom event ".concat(eventName, " to something which isn't a DOMElement"));
2453
+ },
2454
+ fire: function fire(element, eventName) {
2455
+ if (element.addEventListener) {
2456
+ var event = document.createEvent('HTMLEvents');
2457
+ event.initEvent(eventName, true, true);
2458
+ return document.dispatchEvent(event);
2459
+ } else if (element.attachEvent) {
2460
+ if (element[eventName]) {
2461
+ return element[eventName]++;
2462
+ }
2463
+ } else {
2464
+ throw new Error("Attempt to fire custom event ".concat(eventName, " on something which isn't a DOMElement"));
2465
+ }
2466
+ }
2467
+ };
2468
+ exports.bind = CustomEvents.bind;
2469
+ exports.fire = CustomEvents.fire;
2470
+
2471
+ },{}],105:[function(require,module,exports){
2472
+ "use strict";
2473
+
2474
+ require("core-js/modules/es6.regexp.match.js");
2475
+ require("core-js/modules/es6.symbol.js");
2476
+ require("core-js/modules/es6.array.from.js");
2477
+ require("core-js/modules/es6.string.iterator.js");
2478
+ require("core-js/modules/es6.object.to-string.js");
2479
+ require("core-js/modules/es6.array.iterator.js");
2480
+ require("core-js/modules/web.dom.iterable.js");
2481
+ require("core-js/modules/es6.number.constructor.js");
2482
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2483
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
2484
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
2485
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
2486
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
2487
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
2488
+ var LessPlugin = /*#__PURE__*/function () {
2489
+ function LessPlugin(window, host) {
2490
+ _classCallCheck(this, LessPlugin);
2491
+ this.window = window;
2492
+ this.host = host;
2493
+ }
2494
+ _createClass(LessPlugin, [{
2495
+ key: "reload",
2496
+ value: function reload(path, options) {
2497
+ if (this.window.less && this.window.less.refresh) {
2498
+ if (path.match(/\.less$/i)) {
2499
+ return this.reloadLess(path);
2500
+ }
2501
+ if (options.originalPath.match(/\.less$/i)) {
2502
+ return this.reloadLess(options.originalPath);
2503
+ }
2504
+ }
2505
+ return false;
2506
+ }
2507
+ }, {
2508
+ key: "reloadLess",
2509
+ value: function reloadLess(path) {
2510
+ var link;
2511
+ var links = function () {
2512
+ var result = [];
2513
+ for (var _i = 0, _Array$from = Array.from(document.getElementsByTagName('link')); _i < _Array$from.length; _i++) {
2514
+ link = _Array$from[_i];
2515
+ if (link.href && link.rel.match(/^stylesheet\/less$/i) || link.rel.match(/stylesheet/i) && link.type.match(/^text\/(x-)?less$/i)) {
2516
+ result.push(link);
2517
+ }
2518
+ }
2519
+ return result;
2520
+ }();
2521
+ if (links.length === 0) {
2522
+ return false;
2523
+ }
2524
+ for (var _i2 = 0, _Array$from2 = Array.from(links); _i2 < _Array$from2.length; _i2++) {
2525
+ link = _Array$from2[_i2];
2526
+ link.href = this.host.generateCacheBustUrl(link.href);
2527
+ }
2528
+ this.host.console.log('LiveReload is asking LESS to recompile all stylesheets');
2529
+ this.window.less.refresh(true);
2530
+ return true;
2531
+ }
2532
+ }, {
2533
+ key: "analyze",
2534
+ value: function analyze() {
2535
+ return {
2536
+ disable: !!(this.window.less && this.window.less.refresh)
2537
+ };
2538
+ }
2539
+ }]);
2540
+ return LessPlugin;
2541
+ }();
2542
+ ;
2543
+ LessPlugin.identifier = 'less';
2544
+ LessPlugin.version = '1.0';
2545
+ module.exports = LessPlugin;
2546
+
2547
+ },{"core-js/modules/es6.array.from.js":84,"core-js/modules/es6.array.iterator.js":85,"core-js/modules/es6.number.constructor.js":88,"core-js/modules/es6.object.to-string.js":91,"core-js/modules/es6.regexp.match.js":94,"core-js/modules/es6.string.iterator.js":98,"core-js/modules/es6.symbol.js":99,"core-js/modules/web.dom.iterable.js":102}],106:[function(require,module,exports){
2548
+ "use strict";
2549
+
2550
+ require("core-js/modules/es6.symbol.js");
2551
+ require("core-js/modules/es6.number.constructor.js");
2552
+ require("core-js/modules/es6.array.slice.js");
2553
+ require("core-js/modules/es6.object.to-string.js");
2554
+ require("core-js/modules/es6.array.from.js");
2555
+ require("core-js/modules/es6.string.iterator.js");
2556
+ require("core-js/modules/es6.array.iterator.js");
2557
+ require("core-js/modules/web.dom.iterable.js");
2558
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2559
+ require("core-js/modules/es6.regexp.match.js");
2560
+ require("core-js/modules/es6.object.keys.js");
2561
+ function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
2562
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
2563
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
2564
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
2565
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
2566
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
2567
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
2568
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
2569
+ /* global alert */
2570
+ var _require = require('./connector'),
2571
+ Connector = _require.Connector;
2572
+ var _require2 = require('./timer'),
2573
+ Timer = _require2.Timer;
2574
+ var _require3 = require('./options'),
2575
+ Options = _require3.Options;
2576
+ var _require4 = require('./reloader'),
2577
+ Reloader = _require4.Reloader;
2578
+ var _require5 = require('./protocol'),
2579
+ ProtocolError = _require5.ProtocolError;
2580
+ var LiveReload = /*#__PURE__*/function () {
2581
+ function LiveReload(window) {
2582
+ var _this = this;
2583
+ _classCallCheck(this, LiveReload);
2584
+ this.window = window;
2585
+ this.listeners = {};
2586
+ this.plugins = [];
2587
+ this.pluginIdentifiers = {};
2588
+
2589
+ // i can haz console?
2590
+ this.console = this.window.console && this.window.console.log && this.window.console.error ? this.window.location.href.match(/LR-verbose/) ? this.window.console : {
2591
+ log: function log() {},
2592
+ error: this.window.console.error.bind(this.window.console)
2593
+ } : {
2594
+ log: function log() {},
2595
+ error: function error() {}
2596
+ };
2597
+
2598
+ // i can haz sockets?
2599
+ if (!(this.WebSocket = this.window.WebSocket || this.window.MozWebSocket)) {
2600
+ this.console.error('LiveReload disabled because the browser does not seem to support web sockets');
2601
+ return;
2602
+ }
2603
+
2604
+ // i can haz options?
2605
+ if ('LiveReloadOptions' in window) {
2606
+ this.options = new Options();
2607
+ for (var _i = 0, _Object$keys = Object.keys(window.LiveReloadOptions || {}); _i < _Object$keys.length; _i++) {
2608
+ var k = _Object$keys[_i];
2609
+ var v = window.LiveReloadOptions[k];
2610
+ this.options.set(k, v);
2611
+ }
2612
+ } else {
2613
+ this.options = Options.extract(this.window.document);
2614
+ if (!this.options) {
2615
+ this.console.error('LiveReload disabled because it could not find its own <SCRIPT> tag');
2616
+ return;
2617
+ }
2618
+ }
2619
+
2620
+ // i can haz reloader?
2621
+ this.reloader = new Reloader(this.window, this.console, Timer);
2622
+
2623
+ // i can haz connection?
2624
+ this.connector = new Connector(this.options, this.WebSocket, Timer, {
2625
+ connecting: function connecting() {},
2626
+ socketConnected: function socketConnected() {},
2627
+ connected: function connected(protocol) {
2628
+ if (typeof _this.listeners.connect === 'function') {
2629
+ _this.listeners.connect();
2630
+ }
2631
+ var host = _this.options.host;
2632
+ var port = _this.options.port ? ":".concat(_this.options.port) : '';
2633
+ _this.log("LiveReload is connected to ".concat(host).concat(port, " (protocol v").concat(protocol, ")."));
2634
+ return _this.analyze();
2635
+ },
2636
+ error: function error(e) {
2637
+ if (e instanceof ProtocolError) {
2638
+ if (typeof console !== 'undefined' && console !== null) {
2639
+ return console.log("".concat(e.message, "."));
2640
+ }
2641
+ } else {
2642
+ if (typeof console !== 'undefined' && console !== null) {
2643
+ return console.log("LiveReload internal error: ".concat(e.message));
2644
+ }
2645
+ }
2646
+ },
2647
+ disconnected: function disconnected(reason, nextDelay) {
2648
+ if (typeof _this.listeners.disconnect === 'function') {
2649
+ _this.listeners.disconnect();
2650
+ }
2651
+ var host = _this.options.host;
2652
+ var port = _this.options.port ? ":".concat(_this.options.port) : '';
2653
+ switch (reason) {
2654
+ case 'cannot-connect':
2655
+ return _this.log("LiveReload cannot connect to ".concat(host).concat(port, ", will retry in ").concat(nextDelay, " sec."));
2656
+ case 'broken':
2657
+ return _this.log("LiveReload disconnected from ".concat(host).concat(port, ", reconnecting in ").concat(nextDelay, " sec."));
2658
+ case 'handshake-timeout':
2659
+ return _this.log("LiveReload cannot connect to ".concat(host).concat(port, " (handshake timeout), will retry in ").concat(nextDelay, " sec."));
2660
+ case 'handshake-failed':
2661
+ return _this.log("LiveReload cannot connect to ".concat(host).concat(port, " (handshake failed), will retry in ").concat(nextDelay, " sec."));
2662
+ case 'manual': // nop
2663
+ case 'error': // nop
2664
+ default:
2665
+ return _this.log("LiveReload disconnected from ".concat(host).concat(port, " (").concat(reason, "), reconnecting in ").concat(nextDelay, " sec."));
2666
+ }
2667
+ },
2668
+ message: function message(_message) {
2669
+ switch (_message.command) {
2670
+ case 'reload':
2671
+ return _this.performReload(_message);
2672
+ case 'alert':
2673
+ return _this.performAlert(_message);
2674
+ }
2675
+ }
2676
+ });
2677
+ this.initialized = true;
2678
+ }
2679
+ _createClass(LiveReload, [{
2680
+ key: "on",
2681
+ value: function on(eventName, handler) {
2682
+ this.listeners[eventName] = handler;
2683
+ }
2684
+ }, {
2685
+ key: "log",
2686
+ value: function log(message) {
2687
+ return this.console.log("".concat(message));
2688
+ }
2689
+ }, {
2690
+ key: "performReload",
2691
+ value: function performReload(message) {
2692
+ this.log("LiveReload received reload request: ".concat(JSON.stringify(message, null, 2)));
2693
+ var _this$options = this.options,
2694
+ host = _this$options.host,
2695
+ port = _this$options.port,
2696
+ pluginOrder = _this$options.pluginOrder;
2697
+ return this.reloader.reload(message.path, {
2698
+ liveCSS: message.liveCSS != null ? message.liveCSS : true,
2699
+ liveImg: message.liveImg != null ? message.liveImg : true,
2700
+ reloadMissingCSS: message.reloadMissingCSS != null ? message.reloadMissingCSS : true,
2701
+ originalPath: message.originalPath || '',
2702
+ overrideURL: message.overrideURL || '',
2703
+ serverURL: "http://".concat(host).concat(port && ":".concat(port)),
2704
+ pluginOrder: pluginOrder
2705
+ });
2706
+ }
2707
+ }, {
2708
+ key: "performAlert",
2709
+ value: function performAlert(message) {
2710
+ return alert(message.message);
2711
+ }
2712
+ }, {
2713
+ key: "shutDown",
2714
+ value: function shutDown() {
2715
+ if (!this.initialized) {
2716
+ return;
2717
+ }
2718
+ this.connector.disconnect();
2719
+ this.log('LiveReload disconnected.');
2720
+ return typeof this.listeners.shutdown === 'function' ? this.listeners.shutdown() : undefined;
2721
+ }
2722
+ }, {
2723
+ key: "hasPlugin",
2724
+ value: function hasPlugin(identifier) {
2725
+ return !!this.pluginIdentifiers[identifier];
2726
+ }
2727
+ }, {
2728
+ key: "addPlugin",
2729
+ value: function addPlugin(PluginClass) {
2730
+ var _this2 = this;
2731
+ if (!this.initialized) {
2732
+ return;
2733
+ }
2734
+ if (this.hasPlugin(PluginClass.identifier)) {
2735
+ return;
2736
+ }
2737
+ this.pluginIdentifiers[PluginClass.identifier] = true;
2738
+ var plugin = new PluginClass(this.window, {
2739
+ // expose internal objects for those who know what they're doing
2740
+ // (note that these are private APIs and subject to change at any time!)
2741
+ _livereload: this,
2742
+ _reloader: this.reloader,
2743
+ _connector: this.connector,
2744
+ // official API
2745
+ console: this.console,
2746
+ Timer: Timer,
2747
+ generateCacheBustUrl: function generateCacheBustUrl(url) {
2748
+ return _this2.reloader.generateCacheBustUrl(url);
2749
+ }
2750
+ });
2751
+
2752
+ // API that PluginClass can/must provide:
2753
+ //
2754
+ // string PluginClass.identifier
2755
+ // -- required, globally-unique name of this plugin
2756
+ //
2757
+ // string PluginClass.version
2758
+ // -- required, plugin version number (format %d.%d or %d.%d.%d)
2759
+ //
2760
+ // plugin = new PluginClass(window, officialLiveReloadAPI)
2761
+ // -- required, plugin constructor
2762
+ //
2763
+ // bool plugin.reload(string path, { bool liveCSS, bool liveImg })
2764
+ // -- optional, attemp to reload the given path, return true if handled
2765
+ //
2766
+ // object plugin.analyze()
2767
+ // -- optional, returns plugin-specific information about the current document (to send to the connected server)
2768
+ // (LiveReload 2 server currently only defines 'disable' key in this object; return {disable:true} to disable server-side
2769
+ // compilation of a matching plugin's files)
2770
+
2771
+ this.plugins.push(plugin);
2772
+ this.reloader.addPlugin(plugin);
2773
+ }
2774
+ }, {
2775
+ key: "analyze",
2776
+ value: function analyze() {
2777
+ if (!this.initialized) {
2778
+ return;
2779
+ }
2780
+ if (!(this.connector.protocol >= 7)) {
2781
+ return;
2782
+ }
2783
+ var pluginsData = {};
2784
+ var _iterator = _createForOfIteratorHelper(this.plugins),
2785
+ _step;
2786
+ try {
2787
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
2788
+ var plugin = _step.value;
2789
+ var pluginData = (typeof plugin.analyze === 'function' ? plugin.analyze() : undefined) || {};
2790
+ pluginsData[plugin.constructor.identifier] = pluginData;
2791
+ pluginData.version = plugin.constructor.version;
2792
+ }
2793
+ } catch (err) {
2794
+ _iterator.e(err);
2795
+ } finally {
2796
+ _iterator.f();
2797
+ }
2798
+ this.connector.sendCommand({
2799
+ command: 'info',
2800
+ plugins: pluginsData,
2801
+ url: this.window.location.href
2802
+ });
2803
+ }
2804
+ }]);
2805
+ return LiveReload;
2806
+ }();
2807
+ ;
2808
+ exports.LiveReload = LiveReload;
2809
+
2810
+ },{"./connector":103,"./options":107,"./protocol":108,"./reloader":109,"./timer":111,"core-js/modules/es6.array.from.js":84,"core-js/modules/es6.array.iterator.js":85,"core-js/modules/es6.array.slice.js":87,"core-js/modules/es6.number.constructor.js":88,"core-js/modules/es6.object.keys.js":90,"core-js/modules/es6.object.to-string.js":91,"core-js/modules/es6.regexp.match.js":94,"core-js/modules/es6.string.iterator.js":98,"core-js/modules/es6.symbol.js":99,"core-js/modules/web.dom.iterable.js":102}],107:[function(require,module,exports){
2811
+ "use strict";
2812
+
2813
+ require("core-js/modules/es6.regexp.split.js");
2814
+ require("core-js/modules/es6.symbol.js");
2815
+ require("core-js/modules/es6.number.constructor.js");
2816
+ require("core-js/modules/es6.array.from.js");
2817
+ require("core-js/modules/es6.string.iterator.js");
2818
+ require("core-js/modules/es6.object.to-string.js");
2819
+ require("core-js/modules/es6.array.iterator.js");
2820
+ require("core-js/modules/web.dom.iterable.js");
2821
+ require("core-js/modules/es6.regexp.match.js");
2822
+ require("core-js/modules/es6.regexp.replace.js");
2823
+ require("core-js/modules/es6.array.slice.js");
2824
+ function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
2825
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
2826
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
2827
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
2828
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
2829
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
2830
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
2831
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2832
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
2833
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
2834
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
2835
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
2836
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
2837
+ var Options = /*#__PURE__*/function () {
2838
+ function Options() {
2839
+ _classCallCheck(this, Options);
2840
+ this.https = false;
2841
+ this.host = null;
2842
+ var port = 35729; // backing variable for port property closure
2843
+
2844
+ // we allow port to be overridden with a falsy value to indicate
2845
+ // that we should not add a port specification to the backend url;
2846
+ // port is now either a number, or a non-numeric string
2847
+ Object.defineProperty(this, 'port', {
2848
+ get: function get() {
2849
+ return port;
2850
+ },
2851
+ set: function set(v) {
2852
+ port = v ? isNaN(v) ? v : +v : '';
2853
+ }
2854
+ });
2855
+ this.snipver = null;
2856
+ this.ext = null;
2857
+ this.extver = null;
2858
+ this.mindelay = 1000;
2859
+ this.maxdelay = 60000;
2860
+ this.handshake_timeout = 5000;
2861
+ var pluginOrder = [];
2862
+ Object.defineProperty(this, 'pluginOrder', {
2863
+ get: function get() {
2864
+ return pluginOrder;
2865
+ },
2866
+ set: function set(v) {
2867
+ pluginOrder.push.apply(pluginOrder, v.split(/[,;]/));
2868
+ }
2869
+ });
2870
+ }
2871
+ _createClass(Options, [{
2872
+ key: "set",
2873
+ value: function set(name, value) {
2874
+ if (typeof value === 'undefined') {
2875
+ return;
2876
+ }
2877
+ if (!isNaN(+value)) {
2878
+ value = +value;
2879
+ }
2880
+ this[name] = value;
2881
+ }
2882
+ }]);
2883
+ return Options;
2884
+ }();
2885
+ Options.extract = function (document) {
2886
+ for (var _i = 0, _Array$from = Array.from(document.getElementsByTagName('script')); _i < _Array$from.length; _i++) {
2887
+ var element = _Array$from[_i];
2888
+ // eslint-disable-next-line no-var
2889
+ var m;
2890
+ // eslint-disable-next-line no-var
2891
+ var mm;
2892
+ var src = element.src;
2893
+ var srcAttr = element.getAttribute('src');
2894
+ var lrUrlRegexp = /^([^:]+:\/\/([^/:]+|\[[0-9a-f:]+\])(?::(\d+))?\/|\/\/|\/)?([^/].*\/)?z?livereload\.js(?:\?(.*))?$/;
2895
+ // ^proto:// ^host ^port ^// ^/ ^folder
2896
+ var lrUrlRegexpAttr = /^(?:(?:([^:/]+)?:?)\/{0,2})([^:]+|\[[0-9a-f:]+\])(?::(\d+))?/;
2897
+ // ^proto ^host/folder ^port
2898
+
2899
+ if ((m = src.match(lrUrlRegexp)) && (mm = srcAttr.match(lrUrlRegexpAttr))) {
2900
+ var _m = m,
2901
+ _m2 = _slicedToArray(_m, 6),
2902
+ host = _m2[2],
2903
+ port = _m2[3],
2904
+ params = _m2[5];
2905
+ var _mm = mm,
2906
+ _mm2 = _slicedToArray(_mm, 4),
2907
+ portFromAttr = _mm2[3];
2908
+ var options = new Options();
2909
+ options.https = element.src.indexOf('https') === 0;
2910
+ options.host = host;
2911
+
2912
+ // use port number that the script is loaded from as default
2913
+ // for explicitly blank value; enables livereload through proxy
2914
+ var ourPort = parseInt(port || portFromAttr, 10) || '';
2915
+
2916
+ // if port is specified in script use that as default instead
2917
+ options.port = ourPort || options.port;
2918
+ if (params) {
2919
+ var _iterator = _createForOfIteratorHelper(params.split('&')),
2920
+ _step;
2921
+ try {
2922
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
2923
+ var pair = _step.value;
2924
+ // eslint-disable-next-line no-var
2925
+ var keyAndValue;
2926
+ if ((keyAndValue = pair.split('=')).length > 1) {
2927
+ options.set(keyAndValue[0].replace(/-/g, '_'), keyAndValue.slice(1).join('='));
2928
+ }
2929
+ }
2930
+ } catch (err) {
2931
+ _iterator.e(err);
2932
+ } finally {
2933
+ _iterator.f();
2934
+ }
2935
+ }
2936
+
2937
+ // if port was overwritten by empty value, then revert to using the same
2938
+ // port as the script is running from again (note that it shouldn't be
2939
+ // coerced to a numeric value, since that will be 0 for the empty string)
2940
+ options.port = options.port || ourPort;
2941
+ return options;
2942
+ }
2943
+ }
2944
+ return null;
2945
+ };
2946
+ exports.Options = Options;
2947
+
2948
+ },{"core-js/modules/es6.array.from.js":84,"core-js/modules/es6.array.iterator.js":85,"core-js/modules/es6.array.slice.js":87,"core-js/modules/es6.number.constructor.js":88,"core-js/modules/es6.object.to-string.js":91,"core-js/modules/es6.regexp.match.js":94,"core-js/modules/es6.regexp.replace.js":95,"core-js/modules/es6.regexp.split.js":96,"core-js/modules/es6.string.iterator.js":98,"core-js/modules/es6.symbol.js":99,"core-js/modules/web.dom.iterable.js":102}],108:[function(require,module,exports){
2949
+ "use strict";
2950
+
2951
+ require("core-js/modules/es6.number.constructor.js");
2952
+ require("core-js/modules/es6.array.slice.js");
2953
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2954
+ require("core-js/modules/es6.regexp.match.js");
2955
+ require("core-js/modules/es6.regexp.constructor.js");
2956
+ require("core-js/modules/es6.string.includes.js");
2957
+ require("core-js/modules/es7.array.includes.js");
2958
+ require("core-js/modules/es6.symbol.js");
2959
+ require("core-js/modules/es6.array.from.js");
2960
+ require("core-js/modules/es6.string.iterator.js");
2961
+ require("core-js/modules/es6.object.to-string.js");
2962
+ require("core-js/modules/es6.array.iterator.js");
2963
+ require("core-js/modules/web.dom.iterable.js");
2964
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
2965
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
2966
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
2967
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
2968
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
2969
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
2970
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
2971
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
2972
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
2973
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
2974
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
2975
+ var PROTOCOL_6, PROTOCOL_7;
2976
+ exports.PROTOCOL_6 = PROTOCOL_6 = 'http://livereload.com/protocols/official-6';
2977
+ exports.PROTOCOL_7 = PROTOCOL_7 = 'http://livereload.com/protocols/official-7';
2978
+ var ProtocolError = /*#__PURE__*/_createClass(function ProtocolError(reason, data) {
2979
+ _classCallCheck(this, ProtocolError);
2980
+ this.message = "LiveReload protocol error (".concat(reason, ") after receiving data: \"").concat(data, "\".");
2981
+ });
2982
+ ;
2983
+ var Parser = /*#__PURE__*/function () {
2984
+ function Parser(handlers) {
2985
+ _classCallCheck(this, Parser);
2986
+ this.handlers = handlers;
2987
+ this.reset();
2988
+ }
2989
+ _createClass(Parser, [{
2990
+ key: "reset",
2991
+ value: function reset() {
2992
+ this.protocol = null;
2993
+ }
2994
+ }, {
2995
+ key: "process",
2996
+ value: function process(data) {
2997
+ try {
2998
+ var message;
2999
+ if (!this.protocol) {
3000
+ // eslint-disable-next-line prefer-regex-literals
3001
+ if (data.match(new RegExp('^!!ver:([\\d.]+)$'))) {
3002
+ this.protocol = 6;
3003
+ } else if (message = this._parseMessage(data, ['hello'])) {
3004
+ if (!message.protocols.length) {
3005
+ throw new ProtocolError('no protocols specified in handshake message');
3006
+ } else if (Array.from(message.protocols).includes(PROTOCOL_7)) {
3007
+ this.protocol = 7;
3008
+ } else if (Array.from(message.protocols).includes(PROTOCOL_6)) {
3009
+ this.protocol = 6;
3010
+ } else {
3011
+ throw new ProtocolError('no supported protocols found');
3012
+ }
3013
+ }
3014
+ return this.handlers.connected(this.protocol);
3015
+ }
3016
+ if (this.protocol === 6) {
3017
+ message = JSON.parse(data);
3018
+ if (!message.length) {
3019
+ throw new ProtocolError('protocol 6 messages must be arrays');
3020
+ }
3021
+ var _Array$from = Array.from(message),
3022
+ _Array$from2 = _slicedToArray(_Array$from, 2),
3023
+ command = _Array$from2[0],
3024
+ options = _Array$from2[1];
3025
+ if (command !== 'refresh') {
3026
+ throw new ProtocolError('unknown protocol 6 command');
3027
+ }
3028
+ return this.handlers.message({
3029
+ command: 'reload',
3030
+ path: options.path,
3031
+ liveCSS: options.apply_css_live != null ? options.apply_css_live : true
3032
+ });
3033
+ }
3034
+ message = this._parseMessage(data, ['reload', 'alert']);
3035
+ return this.handlers.message(message);
3036
+ } catch (e) {
3037
+ if (e instanceof ProtocolError) {
3038
+ return this.handlers.error(e);
3039
+ }
3040
+ throw e;
3041
+ }
3042
+ }
3043
+ }, {
3044
+ key: "_parseMessage",
3045
+ value: function _parseMessage(data, validCommands) {
3046
+ var message;
3047
+ try {
3048
+ message = JSON.parse(data);
3049
+ } catch (e) {
3050
+ throw new ProtocolError('unparsable JSON', data);
3051
+ }
3052
+ if (!message.command) {
3053
+ throw new ProtocolError('missing "command" key', data);
3054
+ }
3055
+ if (!validCommands.includes(message.command)) {
3056
+ throw new ProtocolError("invalid command '".concat(message.command, "', only valid commands are: ").concat(validCommands.join(', '), ")"), data);
3057
+ }
3058
+ return message;
3059
+ }
3060
+ }]);
3061
+ return Parser;
3062
+ }();
3063
+ ;
3064
+ exports.ProtocolError = ProtocolError;
3065
+ exports.Parser = Parser;
3066
+
3067
+ },{"core-js/modules/es6.array.from.js":84,"core-js/modules/es6.array.iterator.js":85,"core-js/modules/es6.array.slice.js":87,"core-js/modules/es6.number.constructor.js":88,"core-js/modules/es6.object.to-string.js":91,"core-js/modules/es6.regexp.constructor.js":92,"core-js/modules/es6.regexp.match.js":94,"core-js/modules/es6.string.includes.js":97,"core-js/modules/es6.string.iterator.js":98,"core-js/modules/es6.symbol.js":99,"core-js/modules/es7.array.includes.js":100,"core-js/modules/web.dom.iterable.js":102}],109:[function(require,module,exports){
3068
+ "use strict";
3069
+
3070
+ require("core-js/modules/es6.number.constructor.js");
3071
+ require("core-js/modules/es6.object.keys.js");
3072
+ require("core-js/modules/es6.object.get-own-property-descriptor.js");
3073
+ require("core-js/modules/es7.object.get-own-property-descriptors.js");
3074
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
3075
+ require("core-js/modules/es6.array.slice.js");
3076
+ require("core-js/modules/es6.regexp.replace.js");
3077
+ require("core-js/modules/es6.regexp.constructor.js");
3078
+ require("core-js/modules/es6.regexp.split.js");
3079
+ require("core-js/modules/es6.symbol.js");
3080
+ require("core-js/modules/es6.array.from.js");
3081
+ require("core-js/modules/es6.string.iterator.js");
3082
+ require("core-js/modules/es6.object.to-string.js");
3083
+ require("core-js/modules/es6.array.iterator.js");
3084
+ require("core-js/modules/web.dom.iterable.js");
3085
+ require("core-js/modules/es6.regexp.match.js");
3086
+ require("core-js/modules/es6.array.filter.js");
3087
+ require("core-js/modules/es6.array.map.js");
3088
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3089
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
3090
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
3091
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
3092
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
3093
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
3094
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
3095
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
3096
+ function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
3097
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
3098
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
3099
+ /* global CSSRule */
3100
+
3101
+ /**
3102
+ * Split URL
3103
+ * @param {string} url
3104
+ * @return {object}
3105
+ */
3106
+ function splitUrl(url) {
3107
+ var hash = '';
3108
+ var params = '';
3109
+ var index = url.indexOf('#');
3110
+ if (index >= 0) {
3111
+ hash = url.slice(index);
3112
+ url = url.slice(0, index);
3113
+ }
3114
+
3115
+ // http://your.domain.com/path/to/combo/??file1.css,file2,css
3116
+ var comboSign = url.indexOf('??');
3117
+ if (comboSign >= 0) {
3118
+ if (comboSign + 1 !== url.lastIndexOf('?')) {
3119
+ index = url.lastIndexOf('?');
3120
+ }
3121
+ } else {
3122
+ index = url.indexOf('?');
3123
+ }
3124
+ if (index >= 0) {
3125
+ params = url.slice(index);
3126
+ url = url.slice(0, index);
3127
+ }
3128
+ return {
3129
+ url: url,
3130
+ params: params,
3131
+ hash: hash
3132
+ };
3133
+ }
3134
+ ;
3135
+
3136
+ /**
3137
+ * Get path from URL (remove protocol, host, port)
3138
+ * @param {string} url
3139
+ * @return {string}
3140
+ */
3141
+ function pathFromUrl(url) {
3142
+ if (!url) {
3143
+ return '';
3144
+ }
3145
+ var path;
3146
+ var _splitUrl = splitUrl(url);
3147
+ url = _splitUrl.url;
3148
+ if (url.indexOf('file://') === 0) {
3149
+ // eslint-disable-next-line prefer-regex-literals
3150
+ path = url.replace(new RegExp('^file://(localhost)?'), '');
3151
+ } else {
3152
+ // http : // hostname :8080 /
3153
+ // eslint-disable-next-line prefer-regex-literals
3154
+ path = url.replace(new RegExp('^([^:]+:)?//([^:/]+)(:\\d*)?/'), '/');
3155
+ }
3156
+
3157
+ // decodeURI has special handling of stuff like semicolons, so use decodeURIComponent
3158
+ return decodeURIComponent(path);
3159
+ }
3160
+
3161
+ /**
3162
+ * Get number of matching path segments
3163
+ * @param {string} left
3164
+ * @param {string} right
3165
+ * @return {int}
3166
+ */
3167
+ function numberOfMatchingSegments(left, right) {
3168
+ // get rid of leading slashes and normalize to lower case
3169
+ left = left.replace(/^\/+/, '').toLowerCase();
3170
+ right = right.replace(/^\/+/, '').toLowerCase();
3171
+ if (left === right) {
3172
+ return 10000;
3173
+ }
3174
+ var comps1 = left.split(/\/|\\/).reverse();
3175
+ var comps2 = right.split(/\/|\\/).reverse();
3176
+ var len = Math.min(comps1.length, comps2.length);
3177
+ var eqCount = 0;
3178
+ while (eqCount < len && comps1[eqCount] === comps2[eqCount]) {
3179
+ ++eqCount;
3180
+ }
3181
+ return eqCount;
3182
+ }
3183
+
3184
+ /**
3185
+ * Pick best matching path from a collection
3186
+ * @param {string} path Path to match
3187
+ * @param {array} objects Collection of paths
3188
+ * @param {function} [pathFunc] Transform applied to each item in collection
3189
+ * @return {object}
3190
+ */
3191
+ function pickBestMatch(path, objects) {
3192
+ var pathFunc = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : function (s) {
3193
+ return s;
3194
+ };
3195
+ var score;
3196
+ var bestMatch = {
3197
+ score: 0
3198
+ };
3199
+ var _iterator = _createForOfIteratorHelper(objects),
3200
+ _step;
3201
+ try {
3202
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
3203
+ var object = _step.value;
3204
+ score = numberOfMatchingSegments(path, pathFunc(object));
3205
+ if (score > bestMatch.score) {
3206
+ bestMatch = {
3207
+ object: object,
3208
+ score: score
3209
+ };
3210
+ }
3211
+ }
3212
+ } catch (err) {
3213
+ _iterator.e(err);
3214
+ } finally {
3215
+ _iterator.f();
3216
+ }
3217
+ if (bestMatch.score === 0) {
3218
+ return null;
3219
+ }
3220
+ return bestMatch;
3221
+ }
3222
+
3223
+ /**
3224
+ * Test if paths match
3225
+ * @param {string} left
3226
+ * @param {string} right
3227
+ * @return {bool}
3228
+ */
3229
+ function pathsMatch(left, right) {
3230
+ return numberOfMatchingSegments(left, right) > 0;
3231
+ }
3232
+ var IMAGE_STYLES = [{
3233
+ selector: 'background',
3234
+ styleNames: ['backgroundImage']
3235
+ }, {
3236
+ selector: 'border',
3237
+ styleNames: ['borderImage', 'webkitBorderImage', 'MozBorderImage']
3238
+ }];
3239
+ var DEFAULT_OPTIONS = {
3240
+ stylesheetReloadTimeout: 15000
3241
+ };
3242
+ var IMAGES_REGEX = /\.(jpe?g|png|gif|svg)$/i;
3243
+ var Reloader = /*#__PURE__*/function () {
3244
+ function Reloader(window, console, Timer) {
3245
+ _classCallCheck(this, Reloader);
3246
+ this.window = window;
3247
+ this.console = console;
3248
+ this.Timer = Timer;
3249
+ this.document = this.window.document;
3250
+ this.importCacheWaitPeriod = 200;
3251
+ this.plugins = [];
3252
+ }
3253
+ _createClass(Reloader, [{
3254
+ key: "addPlugin",
3255
+ value: function addPlugin(plugin) {
3256
+ return this.plugins.push(plugin);
3257
+ }
3258
+ }, {
3259
+ key: "analyze",
3260
+ value: function analyze(callback) {}
3261
+ }, {
3262
+ key: "reload",
3263
+ value: function reload(path) {
3264
+ var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
3265
+ this.options = _objectSpread(_objectSpread({}, DEFAULT_OPTIONS), options); // avoid passing it through all the funcs
3266
+
3267
+ if (this.options.pluginOrder && this.options.pluginOrder.length) {
3268
+ this.runPluginsByOrder(path, options);
3269
+ return;
3270
+ }
3271
+ for (var _i = 0, _Array$from = Array.from(this.plugins); _i < _Array$from.length; _i++) {
3272
+ var plugin = _Array$from[_i];
3273
+ if (plugin.reload && plugin.reload(path, options)) {
3274
+ return;
3275
+ }
3276
+ }
3277
+ if (options.liveCSS && path.match(/\.css(?:\.map)?$/i)) {
3278
+ if (this.reloadStylesheet(path)) {
3279
+ return;
3280
+ }
3281
+ }
3282
+ if (options.liveImg && path.match(IMAGES_REGEX)) {
3283
+ this.reloadImages(path);
3284
+ return;
3285
+ }
3286
+ if (options.isChromeExtension) {
3287
+ this.reloadChromeExtension();
3288
+ return;
3289
+ }
3290
+ return this.reloadPage();
3291
+ }
3292
+ }, {
3293
+ key: "runPluginsByOrder",
3294
+ value: function runPluginsByOrder(path, options) {
3295
+ var _this = this;
3296
+ options.pluginOrder.some(function (pluginId) {
3297
+ if (pluginId === 'css') {
3298
+ if (options.liveCSS && path.match(/\.css(?:\.map)?$/i)) {
3299
+ if (_this.reloadStylesheet(path)) {
3300
+ return true;
3301
+ }
3302
+ }
3303
+ }
3304
+ if (pluginId === 'img') {
3305
+ if (options.liveImg && path.match(IMAGES_REGEX)) {
3306
+ _this.reloadImages(path);
3307
+ return true;
3308
+ }
3309
+ }
3310
+ if (pluginId === 'extension') {
3311
+ if (options.isChromeExtension) {
3312
+ _this.reloadChromeExtension();
3313
+ return true;
3314
+ }
3315
+ }
3316
+ if (pluginId === 'others') {
3317
+ _this.reloadPage();
3318
+ return true;
3319
+ }
3320
+ if (pluginId === 'external') {
3321
+ return _this.plugins.some(function (plugin) {
3322
+ return plugin.reload && plugin.reload(path, options);
3323
+ });
3324
+ }
3325
+ return _this.plugins.filter(function (plugin) {
3326
+ return plugin.constructor.identifier === pluginId;
3327
+ }).some(function (plugin) {
3328
+ return plugin.reload && plugin.reload(path, options);
3329
+ });
3330
+ });
3331
+ }
3332
+ }, {
3333
+ key: "reloadPage",
3334
+ value: function reloadPage() {
3335
+ return this.window.document.location.reload();
3336
+ }
3337
+ }, {
3338
+ key: "reloadChromeExtension",
3339
+ value: function reloadChromeExtension() {
3340
+ return this.window.chrome.runtime.reload();
3341
+ }
3342
+ }, {
3343
+ key: "reloadImages",
3344
+ value: function reloadImages(path) {
3345
+ var _this2 = this;
3346
+ var img;
3347
+ var expando = this.generateUniqueString();
3348
+ for (var _i2 = 0, _Array$from2 = Array.from(this.document.images); _i2 < _Array$from2.length; _i2++) {
3349
+ img = _Array$from2[_i2];
3350
+ if (pathsMatch(path, pathFromUrl(img.src))) {
3351
+ img.src = this.generateCacheBustUrl(img.src, expando);
3352
+ }
3353
+ }
3354
+ if (this.document.querySelectorAll) {
3355
+ for (var _i3 = 0, _IMAGE_STYLES = IMAGE_STYLES; _i3 < _IMAGE_STYLES.length; _i3++) {
3356
+ var _IMAGE_STYLES$_i = _IMAGE_STYLES[_i3],
3357
+ selector = _IMAGE_STYLES$_i.selector,
3358
+ styleNames = _IMAGE_STYLES$_i.styleNames;
3359
+ for (var _i4 = 0, _Array$from3 = Array.from(this.document.querySelectorAll("[style*=".concat(selector, "]"))); _i4 < _Array$from3.length; _i4++) {
3360
+ img = _Array$from3[_i4];
3361
+ this.reloadStyleImages(img.style, styleNames, path, expando);
3362
+ }
3363
+ }
3364
+ }
3365
+ if (this.document.styleSheets) {
3366
+ return Array.from(this.document.styleSheets).map(function (styleSheet) {
3367
+ return _this2.reloadStylesheetImages(styleSheet, path, expando);
3368
+ });
3369
+ }
3370
+ }
3371
+ }, {
3372
+ key: "reloadStylesheetImages",
3373
+ value: function reloadStylesheetImages(styleSheet, path, expando) {
3374
+ var rules;
3375
+ try {
3376
+ rules = (styleSheet || {}).cssRules;
3377
+ } catch (e) {}
3378
+ if (!rules) {
3379
+ return;
3380
+ }
3381
+ for (var _i5 = 0, _Array$from4 = Array.from(rules); _i5 < _Array$from4.length; _i5++) {
3382
+ var rule = _Array$from4[_i5];
3383
+ switch (rule.type) {
3384
+ case CSSRule.IMPORT_RULE:
3385
+ this.reloadStylesheetImages(rule.styleSheet, path, expando);
3386
+ break;
3387
+ case CSSRule.STYLE_RULE:
3388
+ for (var _i6 = 0, _IMAGE_STYLES2 = IMAGE_STYLES; _i6 < _IMAGE_STYLES2.length; _i6++) {
3389
+ var styleNames = _IMAGE_STYLES2[_i6].styleNames;
3390
+ this.reloadStyleImages(rule.style, styleNames, path, expando);
3391
+ }
3392
+ break;
3393
+ case CSSRule.MEDIA_RULE:
3394
+ this.reloadStylesheetImages(rule, path, expando);
3395
+ break;
3396
+ }
3397
+ }
3398
+ }
3399
+ }, {
3400
+ key: "reloadStyleImages",
3401
+ value: function reloadStyleImages(style, styleNames, path, expando) {
3402
+ var _this3 = this;
3403
+ var _iterator2 = _createForOfIteratorHelper(styleNames),
3404
+ _step2;
3405
+ try {
3406
+ for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
3407
+ var styleName = _step2.value;
3408
+ var value = style[styleName];
3409
+ if (typeof value === 'string') {
3410
+ // eslint-disable-next-line prefer-regex-literals
3411
+ var newValue = value.replace(new RegExp('\\burl\\s*\\(([^)]*)\\)'), function (match, src) {
3412
+ if (pathsMatch(path, pathFromUrl(src))) {
3413
+ return "url(".concat(_this3.generateCacheBustUrl(src, expando), ")");
3414
+ }
3415
+ return match;
3416
+ });
3417
+ if (newValue !== value) {
3418
+ style[styleName] = newValue;
3419
+ }
3420
+ }
3421
+ }
3422
+ } catch (err) {
3423
+ _iterator2.e(err);
3424
+ } finally {
3425
+ _iterator2.f();
3426
+ }
3427
+ }
3428
+ }, {
3429
+ key: "reloadStylesheet",
3430
+ value: function reloadStylesheet(path) {
3431
+ var _this4 = this;
3432
+ var options = this.options || DEFAULT_OPTIONS;
3433
+
3434
+ // has to be a real array, because DOMNodeList will be modified
3435
+ var style;
3436
+ var link;
3437
+ var links = function () {
3438
+ var result = [];
3439
+ for (var _i7 = 0, _Array$from5 = Array.from(_this4.document.getElementsByTagName('link')); _i7 < _Array$from5.length; _i7++) {
3440
+ link = _Array$from5[_i7];
3441
+ if (link.rel.match(/^stylesheet$/i) && !link.__LiveReload_pendingRemoval) {
3442
+ result.push(link);
3443
+ }
3444
+ }
3445
+ return result;
3446
+ }();
3447
+
3448
+ // find all imported stylesheets
3449
+ var imported = [];
3450
+ for (var _i8 = 0, _Array$from6 = Array.from(this.document.getElementsByTagName('style')); _i8 < _Array$from6.length; _i8++) {
3451
+ style = _Array$from6[_i8];
3452
+ if (style.sheet) {
3453
+ this.collectImportedStylesheets(style, style.sheet, imported);
3454
+ }
3455
+ }
3456
+ for (var _i9 = 0, _Array$from7 = Array.from(links); _i9 < _Array$from7.length; _i9++) {
3457
+ link = _Array$from7[_i9];
3458
+ this.collectImportedStylesheets(link, link.sheet, imported);
3459
+ }
3460
+
3461
+ // handle prefixfree
3462
+ if (this.window.StyleFix && this.document.querySelectorAll) {
3463
+ for (var _i10 = 0, _Array$from8 = Array.from(this.document.querySelectorAll('style[data-href]')); _i10 < _Array$from8.length; _i10++) {
3464
+ style = _Array$from8[_i10];
3465
+ links.push(style);
3466
+ }
3467
+ }
3468
+ this.console.log("LiveReload found ".concat(links.length, " LINKed stylesheets, ").concat(imported.length, " @imported stylesheets"));
3469
+ var match = pickBestMatch(path, links.concat(imported), function (link) {
3470
+ return pathFromUrl(_this4.linkHref(link));
3471
+ });
3472
+ if (match) {
3473
+ if (match.object.rule) {
3474
+ this.console.log("LiveReload is reloading imported stylesheet: ".concat(match.object.href));
3475
+ this.reattachImportedRule(match.object);
3476
+ } else {
3477
+ this.console.log("LiveReload is reloading stylesheet: ".concat(this.linkHref(match.object)));
3478
+ this.reattachStylesheetLink(match.object);
3479
+ }
3480
+ } else {
3481
+ if (options.reloadMissingCSS) {
3482
+ this.console.log("LiveReload will reload all stylesheets because path '".concat(path, "' did not match any specific one. To disable this behavior, set 'options.reloadMissingCSS' to 'false'."));
3483
+ for (var _i11 = 0, _Array$from9 = Array.from(links); _i11 < _Array$from9.length; _i11++) {
3484
+ link = _Array$from9[_i11];
3485
+ this.reattachStylesheetLink(link);
3486
+ }
3487
+ } else {
3488
+ this.console.log("LiveReload will not reload path '".concat(path, "' because the stylesheet was not found on the page and 'options.reloadMissingCSS' was set to 'false'."));
3489
+ }
3490
+ }
3491
+ return true;
3492
+ }
3493
+ }, {
3494
+ key: "collectImportedStylesheets",
3495
+ value: function collectImportedStylesheets(link, styleSheet, result) {
3496
+ // in WebKit, styleSheet.cssRules is null for inaccessible stylesheets;
3497
+ // Firefox/Opera may throw exceptions
3498
+ var rules;
3499
+ try {
3500
+ rules = (styleSheet || {}).cssRules;
3501
+ } catch (e) {}
3502
+ if (rules && rules.length) {
3503
+ for (var index = 0; index < rules.length; index++) {
3504
+ var rule = rules[index];
3505
+ switch (rule.type) {
3506
+ case CSSRule.CHARSET_RULE:
3507
+ continue;
3508
+ // do nothing
3509
+ case CSSRule.IMPORT_RULE:
3510
+ result.push({
3511
+ link: link,
3512
+ rule: rule,
3513
+ index: index,
3514
+ href: rule.href
3515
+ });
3516
+ this.collectImportedStylesheets(link, rule.styleSheet, result);
3517
+ break;
3518
+ default:
3519
+ break;
3520
+ // import rules can only be preceded by charset rules
3521
+ }
3522
+ }
3523
+ }
3524
+ }
3525
+ }, {
3526
+ key: "waitUntilCssLoads",
3527
+ value: function waitUntilCssLoads(clone, func) {
3528
+ var _this5 = this;
3529
+ var options = this.options || DEFAULT_OPTIONS;
3530
+ var callbackExecuted = false;
3531
+ var executeCallback = function executeCallback() {
3532
+ if (callbackExecuted) {
3533
+ return;
3534
+ }
3535
+ callbackExecuted = true;
3536
+ return func();
3537
+ };
3538
+
3539
+ // supported by Chrome 19+, Safari 5.2+, Firefox 9+, Opera 9+, IE6+
3540
+ // http://www.zachleat.com/web/load-css-dynamically/
3541
+ // http://pieisgood.org/test/script-link-events/
3542
+ clone.onload = function () {
3543
+ _this5.console.log('LiveReload: the new stylesheet has finished loading');
3544
+ _this5.knownToSupportCssOnLoad = true;
3545
+ return executeCallback();
3546
+ };
3547
+ if (!this.knownToSupportCssOnLoad) {
3548
+ // polling
3549
+ var _poll;
3550
+ (_poll = function poll() {
3551
+ if (clone.sheet) {
3552
+ _this5.console.log('LiveReload is polling until the new CSS finishes loading...');
3553
+ return executeCallback();
3554
+ }
3555
+ return _this5.Timer.start(50, _poll);
3556
+ })();
3557
+ }
3558
+
3559
+ // fail safe
3560
+ return this.Timer.start(options.stylesheetReloadTimeout, executeCallback);
3561
+ }
3562
+ }, {
3563
+ key: "linkHref",
3564
+ value: function linkHref(link) {
3565
+ // prefixfree uses data-href when it turns LINK into STYLE
3566
+ return link.href || link.getAttribute && link.getAttribute('data-href');
3567
+ }
3568
+ }, {
3569
+ key: "reattachStylesheetLink",
3570
+ value: function reattachStylesheetLink(link) {
3571
+ var _this6 = this;
3572
+ // ignore LINKs that will be removed by LR soon
3573
+ var clone;
3574
+ if (link.__LiveReload_pendingRemoval) {
3575
+ return;
3576
+ }
3577
+ link.__LiveReload_pendingRemoval = true;
3578
+ if (link.tagName === 'STYLE') {
3579
+ // prefixfree
3580
+ clone = this.document.createElement('link');
3581
+ clone.rel = 'stylesheet';
3582
+ clone.media = link.media;
3583
+ clone.disabled = link.disabled;
3584
+ } else {
3585
+ clone = link.cloneNode(false);
3586
+ }
3587
+ clone.href = this.generateCacheBustUrl(this.linkHref(link));
3588
+
3589
+ // insert the new LINK before the old one
3590
+ var parent = link.parentNode;
3591
+ if (parent.lastChild === link) {
3592
+ parent.appendChild(clone);
3593
+ } else {
3594
+ parent.insertBefore(clone, link.nextSibling);
3595
+ }
3596
+ return this.waitUntilCssLoads(clone, function () {
3597
+ var additionalWaitingTime;
3598
+ if (/AppleWebKit/.test(_this6.window.navigator.userAgent)) {
3599
+ additionalWaitingTime = 5;
3600
+ } else {
3601
+ additionalWaitingTime = 200;
3602
+ }
3603
+ return _this6.Timer.start(additionalWaitingTime, function () {
3604
+ if (!link.parentNode) {
3605
+ return;
3606
+ }
3607
+ link.parentNode.removeChild(link);
3608
+ clone.onreadystatechange = null;
3609
+ return _this6.window.StyleFix ? _this6.window.StyleFix.link(clone) : undefined;
3610
+ });
3611
+ }); // prefixfree
3612
+ }
3613
+ }, {
3614
+ key: "reattachImportedRule",
3615
+ value: function reattachImportedRule(_ref) {
3616
+ var _this7 = this;
3617
+ var rule = _ref.rule,
3618
+ index = _ref.index,
3619
+ link = _ref.link;
3620
+ var parent = rule.parentStyleSheet;
3621
+ var href = this.generateCacheBustUrl(rule.href);
3622
+ var media = rule.media.length ? [].join.call(rule.media, ', ') : '';
3623
+ var newRule = "@import url(\"".concat(href, "\") ").concat(media, ";");
3624
+
3625
+ // used to detect if reattachImportedRule has been called again on the same rule
3626
+ rule.__LiveReload_newHref = href;
3627
+
3628
+ // WORKAROUND FOR WEBKIT BUG: WebKit resets all styles if we add @import'ed
3629
+ // stylesheet that hasn't been cached yet. Workaround is to pre-cache the
3630
+ // stylesheet by temporarily adding it as a LINK tag.
3631
+ var tempLink = this.document.createElement('link');
3632
+ tempLink.rel = 'stylesheet';
3633
+ tempLink.href = href;
3634
+ tempLink.__LiveReload_pendingRemoval = true; // exclude from path matching
3635
+
3636
+ if (link.parentNode) {
3637
+ link.parentNode.insertBefore(tempLink, link);
3638
+ }
3639
+
3640
+ // wait for it to load
3641
+ return this.Timer.start(this.importCacheWaitPeriod, function () {
3642
+ if (tempLink.parentNode) {
3643
+ tempLink.parentNode.removeChild(tempLink);
3644
+ }
3645
+
3646
+ // if another reattachImportedRule call is in progress, abandon this one
3647
+ if (rule.__LiveReload_newHref !== href) {
3648
+ return;
3649
+ }
3650
+ parent.insertRule(newRule, index);
3651
+ parent.deleteRule(index + 1);
3652
+
3653
+ // save the new rule, so that we can detect another reattachImportedRule call
3654
+ rule = parent.cssRules[index];
3655
+ rule.__LiveReload_newHref = href;
3656
+
3657
+ // repeat again for good measure
3658
+ return _this7.Timer.start(_this7.importCacheWaitPeriod, function () {
3659
+ // if another reattachImportedRule call is in progress, abandon this one
3660
+ if (rule.__LiveReload_newHref !== href) {
3661
+ return;
3662
+ }
3663
+ parent.insertRule(newRule, index);
3664
+ return parent.deleteRule(index + 1);
3665
+ });
3666
+ });
3667
+ }
3668
+ }, {
3669
+ key: "generateUniqueString",
3670
+ value: function generateUniqueString() {
3671
+ return "livereload=".concat(Date.now());
3672
+ }
3673
+ }, {
3674
+ key: "generateCacheBustUrl",
3675
+ value: function generateCacheBustUrl(url, expando) {
3676
+ var options = this.options || DEFAULT_OPTIONS;
3677
+ var hash, oldParams;
3678
+ if (!expando) {
3679
+ expando = this.generateUniqueString();
3680
+ }
3681
+ var _splitUrl2 = splitUrl(url);
3682
+ url = _splitUrl2.url;
3683
+ hash = _splitUrl2.hash;
3684
+ oldParams = _splitUrl2.params;
3685
+ if (options.overrideURL) {
3686
+ if (url.indexOf(options.serverURL) < 0) {
3687
+ var originalUrl = url;
3688
+ url = options.serverURL + options.overrideURL + '?url=' + encodeURIComponent(url);
3689
+ this.console.log("LiveReload is overriding source URL ".concat(originalUrl, " with ").concat(url));
3690
+ }
3691
+ }
3692
+ var params = oldParams.replace(/(\?|&)livereload=(\d+)/, function (match, sep) {
3693
+ return "".concat(sep).concat(expando);
3694
+ });
3695
+ if (params === oldParams) {
3696
+ if (oldParams.length === 0) {
3697
+ params = "?".concat(expando);
3698
+ } else {
3699
+ params = "".concat(oldParams, "&").concat(expando);
3700
+ }
3701
+ }
3702
+ return url + params + hash;
3703
+ }
3704
+ }]);
3705
+ return Reloader;
3706
+ }();
3707
+ ;
3708
+ exports.splitUrl = splitUrl;
3709
+ exports.pathFromUrl = pathFromUrl;
3710
+ exports.numberOfMatchingSegments = numberOfMatchingSegments;
3711
+ exports.pickBestMatch = pickBestMatch;
3712
+ exports.pathsMatch = pathsMatch;
3713
+ exports.Reloader = Reloader;
3714
+
3715
+ },{"core-js/modules/es6.array.filter.js":83,"core-js/modules/es6.array.from.js":84,"core-js/modules/es6.array.iterator.js":85,"core-js/modules/es6.array.map.js":86,"core-js/modules/es6.array.slice.js":87,"core-js/modules/es6.number.constructor.js":88,"core-js/modules/es6.object.get-own-property-descriptor.js":89,"core-js/modules/es6.object.keys.js":90,"core-js/modules/es6.object.to-string.js":91,"core-js/modules/es6.regexp.constructor.js":92,"core-js/modules/es6.regexp.match.js":94,"core-js/modules/es6.regexp.replace.js":95,"core-js/modules/es6.regexp.split.js":96,"core-js/modules/es6.string.iterator.js":98,"core-js/modules/es6.symbol.js":99,"core-js/modules/es7.object.get-own-property-descriptors.js":101,"core-js/modules/web.dom.iterable.js":102}],110:[function(require,module,exports){
3716
+ "use strict";
3717
+
3718
+ require("core-js/modules/es6.regexp.match.js");
3719
+ var CustomEvents = require('./customevents');
3720
+ var LiveReload = window.LiveReload = new (require('./livereload').LiveReload)(window);
3721
+ for (var k in window) {
3722
+ if (k.match(/^LiveReloadPlugin/)) {
3723
+ LiveReload.addPlugin(window[k]);
3724
+ }
3725
+ }
3726
+ LiveReload.addPlugin(require('./less'));
3727
+ LiveReload.on('shutdown', function () {
3728
+ return delete window.LiveReload;
3729
+ });
3730
+ LiveReload.on('connect', function () {
3731
+ return CustomEvents.fire(document, 'LiveReloadConnect');
3732
+ });
3733
+ LiveReload.on('disconnect', function () {
3734
+ return CustomEvents.fire(document, 'LiveReloadDisconnect');
3735
+ });
3736
+ CustomEvents.bind(document, 'LiveReloadShutDown', function () {
3737
+ return LiveReload.shutDown();
3738
+ });
3739
+
3740
+ },{"./customevents":104,"./less":105,"./livereload":106,"core-js/modules/es6.regexp.match.js":94}],111:[function(require,module,exports){
3741
+ "use strict";
3742
+
3743
+ require("core-js/modules/es6.string.iterator.js");
3744
+ require("core-js/modules/es6.object.to-string.js");
3745
+ require("core-js/modules/es6.array.iterator.js");
3746
+ require("core-js/modules/web.dom.iterable.js");
3747
+ require("core-js/modules/es6.symbol.js");
3748
+ require("core-js/modules/es6.number.constructor.js");
3749
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
3750
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
3751
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
3752
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
3753
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
3754
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
3755
+ var Timer = /*#__PURE__*/function () {
3756
+ function Timer(func) {
3757
+ var _this = this;
3758
+ _classCallCheck(this, Timer);
3759
+ this.func = func;
3760
+ this.running = false;
3761
+ this.id = null;
3762
+ this._handler = function () {
3763
+ _this.running = false;
3764
+ _this.id = null;
3765
+ return _this.func();
3766
+ };
3767
+ }
3768
+ _createClass(Timer, [{
3769
+ key: "start",
3770
+ value: function start(timeout) {
3771
+ if (this.running) {
3772
+ clearTimeout(this.id);
3773
+ }
3774
+ this.id = setTimeout(this._handler, timeout);
3775
+ this.running = true;
3776
+ }
3777
+ }, {
3778
+ key: "stop",
3779
+ value: function stop() {
3780
+ if (this.running) {
3781
+ clearTimeout(this.id);
3782
+ this.running = false;
3783
+ this.id = null;
3784
+ }
3785
+ }
3786
+ }]);
3787
+ return Timer;
3788
+ }();
3789
+ ;
3790
+ Timer.start = function (timeout, func) {
3791
+ return setTimeout(func, timeout);
3792
+ };
3793
+ exports.Timer = Timer;
3794
+
3795
+ },{"core-js/modules/es6.array.iterator.js":85,"core-js/modules/es6.number.constructor.js":88,"core-js/modules/es6.object.to-string.js":91,"core-js/modules/es6.string.iterator.js":98,"core-js/modules/es6.symbol.js":99,"core-js/modules/web.dom.iterable.js":102}]},{},[110]);