discourse-ember-source 3.5.1.1 → 3.5.1.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (741) hide show
  1. checksums.yaml +4 -4
  2. data/lib/ember/version.rb +1 -1
  3. metadata +2 -740
  4. data/.gitignore +0 -9
  5. data/.travis.yml +0 -5
  6. data/Gemfile +0 -6
  7. data/LICENSE.txt +0 -21
  8. data/README +0 -18
  9. data/README.md +0 -39
  10. data/Rakefile +0 -27
  11. data/bin/console +0 -14
  12. data/bin/setup +0 -8
  13. data/discourse-ember-source-3.5.1.0.gem +0 -0
  14. data/dist/ember-all.debug.map +0 -1
  15. data/dist/ember-template-compiler.map +0 -1
  16. data/dist/ember-testing.map +0 -1
  17. data/dist/ember-tests.map +0 -1
  18. data/dist/ember-tests.prod.map +0 -1
  19. data/dist/ember.debug.map +0 -1
  20. data/dist/ember.min.map +0 -1
  21. data/dist/ember.prod.map +0 -1
  22. data/dist/es/@ember/application/globals-resolver.js +0 -425
  23. data/dist/es/@ember/application/index.js +0 -3
  24. data/dist/es/@ember/application/instance.js +0 -513
  25. data/dist/es/@ember/application/lib/application.js +0 -1139
  26. data/dist/es/@ember/application/lib/lazy_load.js +0 -69
  27. data/dist/es/@ember/application/lib/validate-type.js +0 -24
  28. data/dist/es/@ember/application/tests/application_instance_test.js +0 -230
  29. data/dist/es/@ember/application/tests/application_test.js +0 -470
  30. data/dist/es/@ember/application/tests/bootstrap-test.js +0 -28
  31. data/dist/es/@ember/application/tests/dependency_injection/custom_resolver_test.js +0 -32
  32. data/dist/es/@ember/application/tests/dependency_injection/default_resolver_test.js +0 -363
  33. data/dist/es/@ember/application/tests/dependency_injection/normalization_test.js +0 -70
  34. data/dist/es/@ember/application/tests/dependency_injection/to_string_test.js +0 -71
  35. data/dist/es/@ember/application/tests/dependency_injection_test.js +0 -93
  36. data/dist/es/@ember/application/tests/initializers_test.js +0 -391
  37. data/dist/es/@ember/application/tests/instance_initializers_test.js +0 -395
  38. data/dist/es/@ember/application/tests/lazy_load_test.js +0 -79
  39. data/dist/es/@ember/application/tests/logging_test.js +0 -179
  40. data/dist/es/@ember/application/tests/readiness_test.js +0 -138
  41. data/dist/es/@ember/application/tests/reset_test.js +0 -185
  42. data/dist/es/@ember/application/tests/visit_test.js +0 -783
  43. data/dist/es/@ember/canary-features/index.js +0 -76
  44. data/dist/es/@ember/controller/index.js +0 -50
  45. data/dist/es/@ember/controller/lib/controller_mixin.js +0 -42
  46. data/dist/es/@ember/controller/tests/controller_test.js +0 -209
  47. data/dist/es/@ember/debug/index.js +0 -264
  48. data/dist/es/@ember/debug/lib/deprecate.js +0 -198
  49. data/dist/es/@ember/debug/lib/handlers.js +0 -22
  50. data/dist/es/@ember/debug/lib/testing.js +0 -7
  51. data/dist/es/@ember/debug/lib/warn.js +0 -107
  52. data/dist/es/@ember/debug/tests/handlers-test.js +0 -144
  53. data/dist/es/@ember/debug/tests/main_test.js +0 -444
  54. data/dist/es/@ember/deprecated-features/index.js +0 -21
  55. data/dist/es/@ember/engine/index.js +0 -532
  56. data/dist/es/@ember/engine/instance.js +0 -228
  57. data/dist/es/@ember/engine/lib/engine-parent.js +0 -32
  58. data/dist/es/@ember/engine/tests/engine_initializers_test.js +0 -366
  59. data/dist/es/@ember/engine/tests/engine_instance_initializers_test.js +0 -409
  60. data/dist/es/@ember/engine/tests/engine_instance_test.js +0 -115
  61. data/dist/es/@ember/engine/tests/engine_parent_test.js +0 -20
  62. data/dist/es/@ember/engine/tests/engine_test.js +0 -121
  63. data/dist/es/@ember/error/index.js +0 -36
  64. data/dist/es/@ember/error/tests/index_test.js +0 -19
  65. data/dist/es/@ember/instrumentation/index.js +0 -240
  66. data/dist/es/@ember/instrumentation/tests/index-test.js +0 -214
  67. data/dist/es/@ember/map/index.js +0 -218
  68. data/dist/es/@ember/map/lib/ordered-set.js +0 -186
  69. data/dist/es/@ember/map/lib/utils.js +0 -29
  70. data/dist/es/@ember/map/tests/map_test.js +0 -578
  71. data/dist/es/@ember/map/with-default.js +0 -87
  72. data/dist/es/@ember/object/computed.js +0 -35
  73. data/dist/es/@ember/object/lib/computed/computed_macros.js +0 -742
  74. data/dist/es/@ember/object/lib/computed/reduce_computed_macros.js +0 -894
  75. data/dist/es/@ember/object/tests/computed/computed_macros_test.js +0 -533
  76. data/dist/es/@ember/object/tests/computed/reduce_computed_macros_test.js +0 -2243
  77. data/dist/es/@ember/polyfills/index.js +0 -3
  78. data/dist/es/@ember/polyfills/lib/assign.js +0 -43
  79. data/dist/es/@ember/polyfills/lib/merge.js +0 -35
  80. data/dist/es/@ember/polyfills/tests/assign_test.js +0 -64
  81. data/dist/es/@ember/runloop/index.js +0 -749
  82. data/dist/es/@ember/runloop/tests/debounce_test.js +0 -87
  83. data/dist/es/@ember/runloop/tests/later_test.js +0 -264
  84. data/dist/es/@ember/runloop/tests/next_test.js +0 -56
  85. data/dist/es/@ember/runloop/tests/once_test.js +0 -62
  86. data/dist/es/@ember/runloop/tests/onerror_test.js +0 -59
  87. data/dist/es/@ember/runloop/tests/run_bind_test.js +0 -59
  88. data/dist/es/@ember/runloop/tests/run_test.js +0 -28
  89. data/dist/es/@ember/runloop/tests/schedule_test.js +0 -86
  90. data/dist/es/@ember/runloop/tests/sync_test.js +0 -32
  91. data/dist/es/@ember/runloop/tests/unwind_test.js +0 -54
  92. data/dist/es/@ember/service/index.js +0 -57
  93. data/dist/es/@ember/string/index.js +0 -362
  94. data/dist/es/@ember/string/lib/string_registry.js +0 -13
  95. data/dist/es/@ember/string/tests/camelize_test.js +0 -53
  96. data/dist/es/@ember/string/tests/capitalize_test.js +0 -58
  97. data/dist/es/@ember/string/tests/classify_test.js +0 -79
  98. data/dist/es/@ember/string/tests/dasherize_test.js +0 -57
  99. data/dist/es/@ember/string/tests/decamelize_test.js +0 -51
  100. data/dist/es/@ember/string/tests/loc_test.js +0 -76
  101. data/dist/es/@ember/string/tests/underscore_test.js +0 -51
  102. data/dist/es/@ember/string/tests/w_test.js +0 -39
  103. data/dist/es/@glimmer/compiler.js +0 -1226
  104. data/dist/es/@glimmer/encoder.js +0 -39
  105. data/dist/es/@glimmer/low-level.js +0 -82
  106. data/dist/es/@glimmer/node.js +0 -112
  107. data/dist/es/@glimmer/opcode-compiler.js +0 -1999
  108. data/dist/es/@glimmer/program.js +0 -405
  109. data/dist/es/@glimmer/reference.js +0 -478
  110. data/dist/es/@glimmer/runtime.js +0 -4086
  111. data/dist/es/@glimmer/syntax.js +0 -1424
  112. data/dist/es/@glimmer/util.js +0 -189
  113. data/dist/es/@glimmer/vm.js +0 -27
  114. data/dist/es/@glimmer/wire-format.js +0 -56
  115. data/dist/es/backburner.js +0 -936
  116. data/dist/es/container/index.js +0 -8
  117. data/dist/es/container/lib/container.js +0 -437
  118. data/dist/es/container/lib/registry.js +0 -646
  119. data/dist/es/container/tests/container_test.js +0 -872
  120. data/dist/es/container/tests/owner_test.js +0 -20
  121. data/dist/es/container/tests/registry_test.js +0 -943
  122. data/dist/es/dag-map.js +0 -209
  123. data/dist/es/ember-browser-environment/index.js +0 -8
  124. data/dist/es/ember-browser-environment/lib/has-dom.js +0 -19
  125. data/dist/es/ember-console/index.js +0 -177
  126. data/dist/es/ember-environment/index.js +0 -3
  127. data/dist/es/ember-environment/lib/context.js +0 -20
  128. data/dist/es/ember-environment/lib/env.js +0 -185
  129. data/dist/es/ember-environment/lib/global.js +0 -14
  130. data/dist/es/ember-error-handling/index.js +0 -22
  131. data/dist/es/ember-extension-support/index.js +0 -2
  132. data/dist/es/ember-extension-support/lib/container_debug_adapter.js +0 -99
  133. data/dist/es/ember-extension-support/lib/data_adapter.js +0 -493
  134. data/dist/es/ember-extension-support/tests/container_debug_adapter_test.js +0 -73
  135. data/dist/es/ember-extension-support/tests/data_adapter_test.js +0 -301
  136. data/dist/es/ember-glimmer/index.js +0 -286
  137. data/dist/es/ember-glimmer/lib/compile-time-lookup.js +0 -37
  138. data/dist/es/ember-glimmer/lib/component-managers/abstract.js +0 -49
  139. data/dist/es/ember-glimmer/lib/component-managers/curly.js +0 -395
  140. data/dist/es/ember-glimmer/lib/component-managers/custom.js +0 -145
  141. data/dist/es/ember-glimmer/lib/component-managers/definition-state.js +0 -1
  142. data/dist/es/ember-glimmer/lib/component-managers/mount.js +0 -103
  143. data/dist/es/ember-glimmer/lib/component-managers/outlet.js +0 -114
  144. data/dist/es/ember-glimmer/lib/component-managers/render.js +0 -112
  145. data/dist/es/ember-glimmer/lib/component-managers/root.js +0 -74
  146. data/dist/es/ember-glimmer/lib/component-managers/template-only.js +0 -46
  147. data/dist/es/ember-glimmer/lib/component.js +0 -633
  148. data/dist/es/ember-glimmer/lib/components/checkbox.js +0 -57
  149. data/dist/es/ember-glimmer/lib/components/link-to.js +0 -777
  150. data/dist/es/ember-glimmer/lib/components/text_area.js +0 -236
  151. data/dist/es/ember-glimmer/lib/components/text_field.js +0 -145
  152. data/dist/es/ember-glimmer/lib/dom.js +0 -3
  153. data/dist/es/ember-glimmer/lib/environment.js +0 -102
  154. data/dist/es/ember-glimmer/lib/helper.js +0 -128
  155. data/dist/es/ember-glimmer/lib/helpers/-class.js +0 -23
  156. data/dist/es/ember-glimmer/lib/helpers/-html-safe.js +0 -9
  157. data/dist/es/ember-glimmer/lib/helpers/-input-type.js +0 -11
  158. data/dist/es/ember-glimmer/lib/helpers/-normalize-class.js +0 -22
  159. data/dist/es/ember-glimmer/lib/helpers/action.js +0 -360
  160. data/dist/es/ember-glimmer/lib/helpers/component.js +0 -135
  161. data/dist/es/ember-glimmer/lib/helpers/concat.js +0 -38
  162. data/dist/es/ember-glimmer/lib/helpers/each-in.js +0 -126
  163. data/dist/es/ember-glimmer/lib/helpers/get.js +0 -100
  164. data/dist/es/ember-glimmer/lib/helpers/hash.js +0 -44
  165. data/dist/es/ember-glimmer/lib/helpers/if-unless.js +0 -142
  166. data/dist/es/ember-glimmer/lib/helpers/loc.js +0 -40
  167. data/dist/es/ember-glimmer/lib/helpers/log.js +0 -25
  168. data/dist/es/ember-glimmer/lib/helpers/mut.js +0 -107
  169. data/dist/es/ember-glimmer/lib/helpers/query-param.js +0 -31
  170. data/dist/es/ember-glimmer/lib/helpers/readonly.js +0 -104
  171. data/dist/es/ember-glimmer/lib/helpers/unbound.js +0 -36
  172. data/dist/es/ember-glimmer/lib/modifiers/action.js +0 -185
  173. data/dist/es/ember-glimmer/lib/protocol-for-url.js +0 -48
  174. data/dist/es/ember-glimmer/lib/renderer.js +0 -371
  175. data/dist/es/ember-glimmer/lib/resolver.js +0 -290
  176. data/dist/es/ember-glimmer/lib/setup-registry.js +0 -77
  177. data/dist/es/ember-glimmer/lib/syntax.js +0 -73
  178. data/dist/es/ember-glimmer/lib/syntax/-text-area.js +0 -8
  179. data/dist/es/ember-glimmer/lib/syntax/input.js +0 -173
  180. data/dist/es/ember-glimmer/lib/syntax/let.js +0 -50
  181. data/dist/es/ember-glimmer/lib/syntax/mount.js +0 -101
  182. data/dist/es/ember-glimmer/lib/syntax/outlet.js +0 -120
  183. data/dist/es/ember-glimmer/lib/syntax/render.js +0 -140
  184. data/dist/es/ember-glimmer/lib/syntax/utils.js +0 -6
  185. data/dist/es/ember-glimmer/lib/template-compiler.js +0 -7
  186. data/dist/es/ember-glimmer/lib/template.js +0 -16
  187. data/dist/es/ember-glimmer/lib/template_registry.js +0 -18
  188. data/dist/es/ember-glimmer/lib/templates/component.js +0 -2
  189. data/dist/es/ember-glimmer/lib/templates/empty.js +0 -2
  190. data/dist/es/ember-glimmer/lib/templates/link-to.js +0 -2
  191. data/dist/es/ember-glimmer/lib/templates/outlet.js +0 -2
  192. data/dist/es/ember-glimmer/lib/templates/root.js +0 -2
  193. data/dist/es/ember-glimmer/lib/utils/bindings.js +0 -180
  194. data/dist/es/ember-glimmer/lib/utils/curly-component-state-bucket.js +0 -36
  195. data/dist/es/ember-glimmer/lib/utils/custom-component-manager.js +0 -20
  196. data/dist/es/ember-glimmer/lib/utils/debug-stack.js +0 -57
  197. data/dist/es/ember-glimmer/lib/utils/iterable.js +0 -358
  198. data/dist/es/ember-glimmer/lib/utils/outlet.js +0 -89
  199. data/dist/es/ember-glimmer/lib/utils/process-args.js +0 -40
  200. data/dist/es/ember-glimmer/lib/utils/references.js +0 -325
  201. data/dist/es/ember-glimmer/lib/utils/serialization-first-node-helpers.js +0 -1
  202. data/dist/es/ember-glimmer/lib/utils/string.js +0 -98
  203. data/dist/es/ember-glimmer/lib/utils/to-bool.js +0 -9
  204. data/dist/es/ember-glimmer/lib/views/outlet.js +0 -71
  205. data/dist/es/ember-glimmer/tests/integration/application/actions-test.js +0 -107
  206. data/dist/es/ember-glimmer/tests/integration/application/engine-test.js +0 -912
  207. data/dist/es/ember-glimmer/tests/integration/application/rendering-test.js +0 -530
  208. data/dist/es/ember-glimmer/tests/integration/components/angle-bracket-invocation-test.js +0 -852
  209. data/dist/es/ember-glimmer/tests/integration/components/append-test.js +0 -742
  210. data/dist/es/ember-glimmer/tests/integration/components/attribute-bindings-test.js +0 -999
  211. data/dist/es/ember-glimmer/tests/integration/components/attrs-lookup-test.js +0 -268
  212. data/dist/es/ember-glimmer/tests/integration/components/class-bindings-test.js +0 -849
  213. data/dist/es/ember-glimmer/tests/integration/components/contextual-components-test.js +0 -1493
  214. data/dist/es/ember-glimmer/tests/integration/components/curly-components-test.js +0 -3705
  215. data/dist/es/ember-glimmer/tests/integration/components/destroy-test.js +0 -33
  216. data/dist/es/ember-glimmer/tests/integration/components/dynamic-components-test.js +0 -896
  217. data/dist/es/ember-glimmer/tests/integration/components/error-handling-test.js +0 -164
  218. data/dist/es/ember-glimmer/tests/integration/components/fragment-components-test.js +0 -285
  219. data/dist/es/ember-glimmer/tests/integration/components/instrumentation-compile-test.js +0 -108
  220. data/dist/es/ember-glimmer/tests/integration/components/instrumentation-test.js +0 -157
  221. data/dist/es/ember-glimmer/tests/integration/components/life-cycle-test.js +0 -1653
  222. data/dist/es/ember-glimmer/tests/integration/components/link-to-test.js +0 -218
  223. data/dist/es/ember-glimmer/tests/integration/components/local-lookup-test.js +0 -414
  224. data/dist/es/ember-glimmer/tests/integration/components/namespaced-lookup-test.js +0 -185
  225. data/dist/es/ember-glimmer/tests/integration/components/render-to-element-test.js +0 -0
  226. data/dist/es/ember-glimmer/tests/integration/components/target-action-test.js +0 -779
  227. data/dist/es/ember-glimmer/tests/integration/components/template-only-components-test.js +0 -225
  228. data/dist/es/ember-glimmer/tests/integration/components/to-string-test.js +0 -27
  229. data/dist/es/ember-glimmer/tests/integration/components/utils-test.js +0 -401
  230. data/dist/es/ember-glimmer/tests/integration/components/web-component-fallback-test.js +0 -35
  231. data/dist/es/ember-glimmer/tests/integration/components/will-destroy-element-hook-test.js +0 -40
  232. data/dist/es/ember-glimmer/tests/integration/content-test.js +0 -1759
  233. data/dist/es/ember-glimmer/tests/integration/custom-component-manager-test.js +0 -508
  234. data/dist/es/ember-glimmer/tests/integration/event-dispatcher-test.js +0 -607
  235. data/dist/es/ember-glimmer/tests/integration/helpers/-class-test.js +0 -76
  236. data/dist/es/ember-glimmer/tests/integration/helpers/closure-action-test.js +0 -1240
  237. data/dist/es/ember-glimmer/tests/integration/helpers/concat-test.js +0 -106
  238. data/dist/es/ember-glimmer/tests/integration/helpers/custom-helper-test.js +0 -672
  239. data/dist/es/ember-glimmer/tests/integration/helpers/element-action-test.js +0 -1595
  240. data/dist/es/ember-glimmer/tests/integration/helpers/get-test.js +0 -618
  241. data/dist/es/ember-glimmer/tests/integration/helpers/hash-test.js +0 -188
  242. data/dist/es/ember-glimmer/tests/integration/helpers/if-unless-test.js +0 -149
  243. data/dist/es/ember-glimmer/tests/integration/helpers/input-test.js +0 -827
  244. data/dist/es/ember-glimmer/tests/integration/helpers/loc-test.js +0 -103
  245. data/dist/es/ember-glimmer/tests/integration/helpers/log-test.js +0 -61
  246. data/dist/es/ember-glimmer/tests/integration/helpers/mut-test.js +0 -580
  247. data/dist/es/ember-glimmer/tests/integration/helpers/partial-test.js +0 -386
  248. data/dist/es/ember-glimmer/tests/integration/helpers/readonly-test.js +0 -293
  249. data/dist/es/ember-glimmer/tests/integration/helpers/render-test.js +0 -522
  250. data/dist/es/ember-glimmer/tests/integration/helpers/text-area-test.js +0 -166
  251. data/dist/es/ember-glimmer/tests/integration/helpers/unbound-test.js +0 -650
  252. data/dist/es/ember-glimmer/tests/integration/helpers/yield-test.js +0 -275
  253. data/dist/es/ember-glimmer/tests/integration/input-test.js +0 -242
  254. data/dist/es/ember-glimmer/tests/integration/mount-test.js +0 -424
  255. data/dist/es/ember-glimmer/tests/integration/outlet-test.js +0 -318
  256. data/dist/es/ember-glimmer/tests/integration/refinements-test.js +0 -74
  257. data/dist/es/ember-glimmer/tests/integration/render-settled-test.js +0 -72
  258. data/dist/es/ember-glimmer/tests/integration/svg-test.js +0 -158
  259. data/dist/es/ember-glimmer/tests/integration/syntax/each-in-test.js +0 -697
  260. data/dist/es/ember-glimmer/tests/integration/syntax/each-test.js +0 -1251
  261. data/dist/es/ember-glimmer/tests/integration/syntax/experimental-syntax-test.js +0 -42
  262. data/dist/es/ember-glimmer/tests/integration/syntax/if-unless-test.js +0 -108
  263. data/dist/es/ember-glimmer/tests/integration/syntax/in-element-test.js +0 -119
  264. data/dist/es/ember-glimmer/tests/integration/syntax/let-test.js +0 -390
  265. data/dist/es/ember-glimmer/tests/integration/syntax/with-dynamic-var-test.js +0 -36
  266. data/dist/es/ember-glimmer/tests/integration/syntax/with-test.js +0 -422
  267. data/dist/es/ember-glimmer/tests/unit/outlet-test.js +0 -48
  268. data/dist/es/ember-glimmer/tests/unit/runtime-resolver-cache-test.js +0 -263
  269. data/dist/es/ember-glimmer/tests/unit/template-factory-test.js +0 -67
  270. data/dist/es/ember-glimmer/tests/unit/utils/debug-stack-test.js +0 -38
  271. data/dist/es/ember-glimmer/tests/utils/abstract-test-case.js +0 -1
  272. data/dist/es/ember-glimmer/tests/utils/helpers.js +0 -15
  273. data/dist/es/ember-glimmer/tests/utils/shared-conditional-tests.js +0 -965
  274. data/dist/es/ember-glimmer/tests/utils/string-test.js +0 -47
  275. data/dist/es/ember-glimmer/tests/utils/test-case.js +0 -6
  276. data/dist/es/ember-glimmer/tests/utils/test-helpers.js +0 -1
  277. data/dist/es/ember-meta/index.js +0 -1
  278. data/dist/es/ember-meta/lib/meta.js +0 -623
  279. data/dist/es/ember-meta/tests/meta_test.js +0 -169
  280. data/dist/es/ember-metal/index.js +0 -33
  281. data/dist/es/ember-metal/lib/alias.js +0 -80
  282. data/dist/es/ember-metal/lib/array.js +0 -55
  283. data/dist/es/ember-metal/lib/array_events.js +0 -65
  284. data/dist/es/ember-metal/lib/chains.js +0 -315
  285. data/dist/es/ember-metal/lib/change_event.js +0 -4
  286. data/dist/es/ember-metal/lib/computed.js +0 -526
  287. data/dist/es/ember-metal/lib/computed_cache.js +0 -58
  288. data/dist/es/ember-metal/lib/dependent_keys.js +0 -34
  289. data/dist/es/ember-metal/lib/deprecate_property.js +0 -34
  290. data/dist/es/ember-metal/lib/descriptor.js +0 -28
  291. data/dist/es/ember-metal/lib/each_proxy.js +0 -106
  292. data/dist/es/ember-metal/lib/each_proxy_events.js +0 -13
  293. data/dist/es/ember-metal/lib/events.js +0 -174
  294. data/dist/es/ember-metal/lib/expand_properties.js +0 -64
  295. data/dist/es/ember-metal/lib/get_properties.js +0 -45
  296. data/dist/es/ember-metal/lib/injected_property.js +0 -53
  297. data/dist/es/ember-metal/lib/is_blank.js +0 -34
  298. data/dist/es/ember-metal/lib/is_empty.js +0 -63
  299. data/dist/es/ember-metal/lib/is_none.js +0 -27
  300. data/dist/es/ember-metal/lib/is_present.js +0 -38
  301. data/dist/es/ember-metal/lib/libraries.js +0 -80
  302. data/dist/es/ember-metal/lib/mixin.js +0 -646
  303. data/dist/es/ember-metal/lib/namespace_search.js +0 -166
  304. data/dist/es/ember-metal/lib/observer.js +0 -34
  305. data/dist/es/ember-metal/lib/observer_set.js +0 -48
  306. data/dist/es/ember-metal/lib/path_cache.js +0 -5
  307. data/dist/es/ember-metal/lib/properties.js +0 -192
  308. data/dist/es/ember-metal/lib/property_events.js +0 -198
  309. data/dist/es/ember-metal/lib/property_get.js +0 -160
  310. data/dist/es/ember-metal/lib/property_set.js +0 -157
  311. data/dist/es/ember-metal/lib/set_properties.js +0 -43
  312. data/dist/es/ember-metal/lib/tags.js +0 -81
  313. data/dist/es/ember-metal/lib/tracked.js +0 -201
  314. data/dist/es/ember-metal/lib/transaction.js +0 -137
  315. data/dist/es/ember-metal/lib/watch_key.js +0 -113
  316. data/dist/es/ember-metal/lib/watch_path.js +0 -24
  317. data/dist/es/ember-metal/lib/watching.js +0 -54
  318. data/dist/es/ember-metal/tests/accessors/get_path_test.js +0 -82
  319. data/dist/es/ember-metal/tests/accessors/get_properties_test.js +0 -36
  320. data/dist/es/ember-metal/tests/accessors/get_test.js +0 -335
  321. data/dist/es/ember-metal/tests/accessors/mandatory_setters_test.js +0 -470
  322. data/dist/es/ember-metal/tests/accessors/set_path_test.js +0 -97
  323. data/dist/es/ember-metal/tests/accessors/set_test.js +0 -128
  324. data/dist/es/ember-metal/tests/alias_test.js +0 -167
  325. data/dist/es/ember-metal/tests/chains_test.js +0 -210
  326. data/dist/es/ember-metal/tests/computed_test.js +0 -1040
  327. data/dist/es/ember-metal/tests/descriptor_test.js +0 -368
  328. data/dist/es/ember-metal/tests/events_test.js +0 -210
  329. data/dist/es/ember-metal/tests/expand_properties_test.js +0 -119
  330. data/dist/es/ember-metal/tests/injected_property_test.js +0 -76
  331. data/dist/es/ember-metal/tests/is_blank_test.js +0 -29
  332. data/dist/es/ember-metal/tests/is_empty_test.js +0 -55
  333. data/dist/es/ember-metal/tests/is_none_test.js +0 -23
  334. data/dist/es/ember-metal/tests/is_present_test.js +0 -30
  335. data/dist/es/ember-metal/tests/libraries_test.js +0 -99
  336. data/dist/es/ember-metal/tests/main_test.js +0 -31
  337. data/dist/es/ember-metal/tests/mixin/alias_method_test.js +0 -91
  338. data/dist/es/ember-metal/tests/mixin/apply_test.js +0 -40
  339. data/dist/es/ember-metal/tests/mixin/computed_test.js +0 -166
  340. data/dist/es/ember-metal/tests/mixin/concatenated_properties_test.js +0 -117
  341. data/dist/es/ember-metal/tests/mixin/detect_test.js +0 -40
  342. data/dist/es/ember-metal/tests/mixin/introspection_test.js +0 -75
  343. data/dist/es/ember-metal/tests/mixin/merged_properties_test.js +0 -200
  344. data/dist/es/ember-metal/tests/mixin/method_test.js +0 -252
  345. data/dist/es/ember-metal/tests/mixin/observer_test.js +0 -202
  346. data/dist/es/ember-metal/tests/mixin/reopen_test.js +0 -53
  347. data/dist/es/ember-metal/tests/mixin/without_test.js +0 -22
  348. data/dist/es/ember-metal/tests/namespace_search_test.js +0 -16
  349. data/dist/es/ember-metal/tests/observer_test.js +0 -961
  350. data/dist/es/ember-metal/tests/performance_test.js +0 -81
  351. data/dist/es/ember-metal/tests/properties_test.js +0 -120
  352. data/dist/es/ember-metal/tests/property_did_change_hook.js +0 -73
  353. data/dist/es/ember-metal/tests/set_properties_test.js +0 -49
  354. data/dist/es/ember-metal/tests/tracked/computed_test.js +0 -67
  355. data/dist/es/ember-metal/tests/tracked/get_test.js +0 -86
  356. data/dist/es/ember-metal/tests/tracked/set_test.js +0 -44
  357. data/dist/es/ember-metal/tests/tracked/support.js +0 -37
  358. data/dist/es/ember-metal/tests/tracked/validation_test.js +0 -233
  359. data/dist/es/ember-metal/tests/watching/is_watching_test.js +0 -97
  360. data/dist/es/ember-metal/tests/watching/unwatch_test.js +0 -109
  361. data/dist/es/ember-metal/tests/watching/watch_test.js +0 -255
  362. data/dist/es/ember-owner/index.js +0 -66
  363. data/dist/es/ember-routing/index.js +0 -21
  364. data/dist/es/ember-routing/lib/ext/controller.js +0 -222
  365. data/dist/es/ember-routing/lib/location/api.js +0 -118
  366. data/dist/es/ember-routing/lib/location/auto_location.js +0 -323
  367. data/dist/es/ember-routing/lib/location/hash_location.js +0 -171
  368. data/dist/es/ember-routing/lib/location/history_location.js +0 -298
  369. data/dist/es/ember-routing/lib/location/none_location.js +0 -122
  370. data/dist/es/ember-routing/lib/location/util.js +0 -114
  371. data/dist/es/ember-routing/lib/services/router.js +0 -243
  372. data/dist/es/ember-routing/lib/services/routing.js +0 -101
  373. data/dist/es/ember-routing/lib/system/cache.js +0 -40
  374. data/dist/es/ember-routing/lib/system/controller_for.js +0 -14
  375. data/dist/es/ember-routing/lib/system/dsl.js +0 -208
  376. data/dist/es/ember-routing/lib/system/generate_controller.js +0 -54
  377. data/dist/es/ember-routing/lib/system/query_params.js +0 -6
  378. data/dist/es/ember-routing/lib/system/route.js +0 -2476
  379. data/dist/es/ember-routing/lib/system/router.js +0 -1607
  380. data/dist/es/ember-routing/lib/system/router_state.js +0 -26
  381. data/dist/es/ember-routing/lib/system/transition.js +0 -153
  382. data/dist/es/ember-routing/lib/utils.js +0 -230
  383. data/dist/es/ember-routing/tests/ext/controller_test.js +0 -85
  384. data/dist/es/ember-routing/tests/location/auto_location_test.js +0 -379
  385. data/dist/es/ember-routing/tests/location/hash_location_test.js +0 -207
  386. data/dist/es/ember-routing/tests/location/history_location_test.js +0 -322
  387. data/dist/es/ember-routing/tests/location/none_location_test.js +0 -88
  388. data/dist/es/ember-routing/tests/location/util_test.js +0 -159
  389. data/dist/es/ember-routing/tests/system/cache_test.js +0 -54
  390. data/dist/es/ember-routing/tests/system/controller_for_test.js +0 -75
  391. data/dist/es/ember-routing/tests/system/dsl_test.js +0 -413
  392. data/dist/es/ember-routing/tests/system/route_test.js +0 -587
  393. data/dist/es/ember-routing/tests/system/router_test.js +0 -287
  394. data/dist/es/ember-routing/tests/utils_test.js +0 -37
  395. data/dist/es/ember-runtime/.gitignore +0 -1
  396. data/dist/es/ember-runtime/README +0 -12
  397. data/dist/es/ember-runtime/index.js +0 -35
  398. data/dist/es/ember-runtime/lib/compare.js +0 -149
  399. data/dist/es/ember-runtime/lib/copy.js +0 -106
  400. data/dist/es/ember-runtime/lib/ext/function.js +0 -154
  401. data/dist/es/ember-runtime/lib/ext/rsvp.js +0 -59
  402. data/dist/es/ember-runtime/lib/is-equal.js +0 -60
  403. data/dist/es/ember-runtime/lib/mixins/-proxy.js +0 -109
  404. data/dist/es/ember-runtime/lib/mixins/action_handler.js +0 -222
  405. data/dist/es/ember-runtime/lib/mixins/array.js +0 -1661
  406. data/dist/es/ember-runtime/lib/mixins/comparable.js +0 -38
  407. data/dist/es/ember-runtime/lib/mixins/container_proxy.js +0 -154
  408. data/dist/es/ember-runtime/lib/mixins/copyable.js +0 -34
  409. data/dist/es/ember-runtime/lib/mixins/enumerable.js +0 -16
  410. data/dist/es/ember-runtime/lib/mixins/evented.js +0 -149
  411. data/dist/es/ember-runtime/lib/mixins/mutable_enumerable.js +0 -18
  412. data/dist/es/ember-runtime/lib/mixins/observable.js +0 -482
  413. data/dist/es/ember-runtime/lib/mixins/promise_proxy.js +0 -224
  414. data/dist/es/ember-runtime/lib/mixins/registry_proxy.js +0 -265
  415. data/dist/es/ember-runtime/lib/mixins/target_action_support.js +0 -172
  416. data/dist/es/ember-runtime/lib/system/array_proxy.js +0 -298
  417. data/dist/es/ember-runtime/lib/system/core_object.js +0 -1037
  418. data/dist/es/ember-runtime/lib/system/namespace.js +0 -69
  419. data/dist/es/ember-runtime/lib/system/object.js +0 -73
  420. data/dist/es/ember-runtime/lib/system/object_proxy.js +0 -81
  421. data/dist/es/ember-runtime/lib/type-of.js +0 -107
  422. data/dist/es/ember-runtime/tests/array/any-test.js +0 -55
  423. data/dist/es/ember-runtime/tests/array/compact-test.js +0 -12
  424. data/dist/es/ember-runtime/tests/array/every-test.js +0 -82
  425. data/dist/es/ember-runtime/tests/array/filter-test.js +0 -123
  426. data/dist/es/ember-runtime/tests/array/find-test.js +0 -86
  427. data/dist/es/ember-runtime/tests/array/firstObject-test.js +0 -27
  428. data/dist/es/ember-runtime/tests/array/forEach-test.js +0 -68
  429. data/dist/es/ember-runtime/tests/array/includes-test.js +0 -46
  430. data/dist/es/ember-runtime/tests/array/indexOf-test.js +0 -27
  431. data/dist/es/ember-runtime/tests/array/invoke-test.js +0 -60
  432. data/dist/es/ember-runtime/tests/array/isAny-test.js +0 -53
  433. data/dist/es/ember-runtime/tests/array/lastIndexOf-test.js +0 -78
  434. data/dist/es/ember-runtime/tests/array/lastObject-test.js +0 -31
  435. data/dist/es/ember-runtime/tests/array/map-test.js +0 -68
  436. data/dist/es/ember-runtime/tests/array/mapBy-test.js +0 -16
  437. data/dist/es/ember-runtime/tests/array/objectAt-test.js +0 -34
  438. data/dist/es/ember-runtime/tests/array/reduce-test.js +0 -24
  439. data/dist/es/ember-runtime/tests/array/reject-test.js +0 -134
  440. data/dist/es/ember-runtime/tests/array/sortBy-test.js +0 -23
  441. data/dist/es/ember-runtime/tests/array/toArray-test.js +0 -11
  442. data/dist/es/ember-runtime/tests/array/uniq-test.js +0 -27
  443. data/dist/es/ember-runtime/tests/array/uniqBy-test.js +0 -33
  444. data/dist/es/ember-runtime/tests/array/without-test.js +0 -39
  445. data/dist/es/ember-runtime/tests/copyable-array/copy-test.js +0 -12
  446. data/dist/es/ember-runtime/tests/core/compare_test.js +0 -89
  447. data/dist/es/ember-runtime/tests/core/copy_test.js +0 -47
  448. data/dist/es/ember-runtime/tests/core/isEqual_test.js +0 -65
  449. data/dist/es/ember-runtime/tests/core/is_array_test.js +0 -59
  450. data/dist/es/ember-runtime/tests/core/is_empty_test.js +0 -15
  451. data/dist/es/ember-runtime/tests/core/type_of_test.js +0 -54
  452. data/dist/es/ember-runtime/tests/ext/function_test.js +0 -121
  453. data/dist/es/ember-runtime/tests/ext/rsvp_test.js +0 -269
  454. data/dist/es/ember-runtime/tests/helpers/array.js +0 -336
  455. data/dist/es/ember-runtime/tests/inject_test.js +0 -51
  456. data/dist/es/ember-runtime/tests/legacy_1x/mixins/observable/chained_test.js +0 -63
  457. data/dist/es/ember-runtime/tests/legacy_1x/mixins/observable/observable_test.js +0 -892
  458. data/dist/es/ember-runtime/tests/legacy_1x/mixins/observable/propertyChanges_test.js +0 -142
  459. data/dist/es/ember-runtime/tests/legacy_1x/system/object/base_test.js +0 -98
  460. data/dist/es/ember-runtime/tests/legacy_1x/system/object/concatenated_test.js +0 -131
  461. data/dist/es/ember-runtime/tests/mixins/array_test.js +0 -400
  462. data/dist/es/ember-runtime/tests/mixins/comparable_test.js +0 -37
  463. data/dist/es/ember-runtime/tests/mixins/container_proxy_test.js +0 -48
  464. data/dist/es/ember-runtime/tests/mixins/enumerable_test.js +0 -17
  465. data/dist/es/ember-runtime/tests/mixins/evented_test.js +0 -23
  466. data/dist/es/ember-runtime/tests/mixins/mutable_enumerable_test.js +0 -17
  467. data/dist/es/ember-runtime/tests/mixins/observable_test.js +0 -137
  468. data/dist/es/ember-runtime/tests/mixins/promise_proxy_test.js +0 -593
  469. data/dist/es/ember-runtime/tests/mixins/target_action_support_test.js +0 -237
  470. data/dist/es/ember-runtime/tests/mutable-array/addObject-test.js +0 -76
  471. data/dist/es/ember-runtime/tests/mutable-array/clear-test.js +0 -64
  472. data/dist/es/ember-runtime/tests/mutable-array/insertAt-test.js +0 -216
  473. data/dist/es/ember-runtime/tests/mutable-array/popObject-test.js +0 -91
  474. data/dist/es/ember-runtime/tests/mutable-array/pushObject-test.js +0 -98
  475. data/dist/es/ember-runtime/tests/mutable-array/pushObjects-test.js +0 -12
  476. data/dist/es/ember-runtime/tests/mutable-array/removeAt-test.js +0 -187
  477. data/dist/es/ember-runtime/tests/mutable-array/removeObject-test.js +0 -77
  478. data/dist/es/ember-runtime/tests/mutable-array/removeObjects-test.js +0 -202
  479. data/dist/es/ember-runtime/tests/mutable-array/replace-test.js +0 -221
  480. data/dist/es/ember-runtime/tests/mutable-array/reverseObjects-test.js +0 -35
  481. data/dist/es/ember-runtime/tests/mutable-array/setObjects-test.js +0 -63
  482. data/dist/es/ember-runtime/tests/mutable-array/shiftObject-test.js +0 -105
  483. data/dist/es/ember-runtime/tests/mutable-array/unshiftObject-test.js +0 -99
  484. data/dist/es/ember-runtime/tests/mutable-array/unshiftObjects-test.js +0 -102
  485. data/dist/es/ember-runtime/tests/system/array_proxy/arranged_content_test.js +0 -275
  486. data/dist/es/ember-runtime/tests/system/array_proxy/array_observer_test.js +0 -51
  487. data/dist/es/ember-runtime/tests/system/array_proxy/content_change_test.js +0 -85
  488. data/dist/es/ember-runtime/tests/system/array_proxy/length_test.js +0 -201
  489. data/dist/es/ember-runtime/tests/system/array_proxy/watching_and_listening_test.js +0 -157
  490. data/dist/es/ember-runtime/tests/system/core_object_test.js +0 -114
  491. data/dist/es/ember-runtime/tests/system/namespace/base_test.js +0 -175
  492. data/dist/es/ember-runtime/tests/system/native_array/a_test.js +0 -16
  493. data/dist/es/ember-runtime/tests/system/native_array/copyable_suite_test.js +0 -19
  494. data/dist/es/ember-runtime/tests/system/native_array/replace_test.js +0 -17
  495. data/dist/es/ember-runtime/tests/system/object/computed_test.js +0 -352
  496. data/dist/es/ember-runtime/tests/system/object/create_test.js +0 -135
  497. data/dist/es/ember-runtime/tests/system/object/destroy_test.js +0 -146
  498. data/dist/es/ember-runtime/tests/system/object/detectInstance_test.js +0 -38
  499. data/dist/es/ember-runtime/tests/system/object/detect_test.js +0 -33
  500. data/dist/es/ember-runtime/tests/system/object/es-compatibility-test.js +0 -469
  501. data/dist/es/ember-runtime/tests/system/object/events_test.js +0 -156
  502. data/dist/es/ember-runtime/tests/system/object/extend_test.js +0 -153
  503. data/dist/es/ember-runtime/tests/system/object/observer_test.js +0 -216
  504. data/dist/es/ember-runtime/tests/system/object/reopenClass_test.js +0 -36
  505. data/dist/es/ember-runtime/tests/system/object/reopen_test.js +0 -48
  506. data/dist/es/ember-runtime/tests/system/object/strict-mode-test.js +0 -31
  507. data/dist/es/ember-runtime/tests/system/object/toString_test.js +0 -125
  508. data/dist/es/ember-runtime/tests/system/object_proxy_test.js +0 -314
  509. data/dist/es/ember-template-compiler/index.js +0 -26
  510. data/dist/es/ember-template-compiler/lib/compat.js +0 -16
  511. data/dist/es/ember-template-compiler/lib/plugins/assert-if-helper-without-arguments.js +0 -38
  512. data/dist/es/ember-template-compiler/lib/plugins/assert-input-helper-without-block.js +0 -20
  513. data/dist/es/ember-template-compiler/lib/plugins/assert-reserved-named-arguments.js +0 -26
  514. data/dist/es/ember-template-compiler/lib/plugins/assert-splattribute-expression.js +0 -27
  515. data/dist/es/ember-template-compiler/lib/plugins/deprecate-render-model.js +0 -38
  516. data/dist/es/ember-template-compiler/lib/plugins/deprecate-render.js +0 -41
  517. data/dist/es/ember-template-compiler/lib/plugins/deprecate-send-action.js +0 -42
  518. data/dist/es/ember-template-compiler/lib/plugins/index.js +0 -50
  519. data/dist/es/ember-template-compiler/lib/plugins/transform-action-syntax.js +0 -52
  520. data/dist/es/ember-template-compiler/lib/plugins/transform-angle-bracket-components.js +0 -10
  521. data/dist/es/ember-template-compiler/lib/plugins/transform-attrs-into-args.js +0 -62
  522. data/dist/es/ember-template-compiler/lib/plugins/transform-dot-component-invocation.js +0 -88
  523. data/dist/es/ember-template-compiler/lib/plugins/transform-each-in-into-each.js +0 -48
  524. data/dist/es/ember-template-compiler/lib/plugins/transform-has-block-syntax.js +0 -46
  525. data/dist/es/ember-template-compiler/lib/plugins/transform-in-element.js +0 -83
  526. data/dist/es/ember-template-compiler/lib/plugins/transform-inline-link-to.js +0 -31
  527. data/dist/es/ember-template-compiler/lib/plugins/transform-input-type-syntax.js +0 -52
  528. data/dist/es/ember-template-compiler/lib/plugins/transform-old-binding-syntax.js +0 -48
  529. data/dist/es/ember-template-compiler/lib/plugins/transform-old-class-binding-syntax.js +0 -102
  530. data/dist/es/ember-template-compiler/lib/plugins/transform-quoted-bindings-into-just-bindings.js +0 -34
  531. data/dist/es/ember-template-compiler/lib/plugins/transform-top-level-components.js +0 -41
  532. data/dist/es/ember-template-compiler/lib/system/bootstrap.js +0 -44
  533. data/dist/es/ember-template-compiler/lib/system/calculate-location-display.js +0 -20
  534. data/dist/es/ember-template-compiler/lib/system/compile-options.js +0 -71
  535. data/dist/es/ember-template-compiler/lib/system/compile.js +0 -28
  536. data/dist/es/ember-template-compiler/lib/system/dasherize-component-name.js +0 -13
  537. data/dist/es/ember-template-compiler/lib/system/initializer.js +0 -22
  538. data/dist/es/ember-template-compiler/lib/system/precompile.js +0 -18
  539. data/dist/es/ember-template-compiler/tests/plugins/assert-if-helper-without-arguments-test.js +0 -51
  540. data/dist/es/ember-template-compiler/tests/plugins/assert-input-helper-without-block-test.js +0 -17
  541. data/dist/es/ember-template-compiler/tests/plugins/assert-reserved-named-arguments-test.js +0 -416
  542. data/dist/es/ember-template-compiler/tests/plugins/assert-splattribute-expression-test.js +0 -57
  543. data/dist/es/ember-template-compiler/tests/plugins/deprecate-render-model-test.js +0 -19
  544. data/dist/es/ember-template-compiler/tests/plugins/deprecate-render-test.js +0 -19
  545. data/dist/es/ember-template-compiler/tests/plugins/deprecate-send-action-test.js +0 -29
  546. data/dist/es/ember-template-compiler/tests/plugins/transform-dot-component-invocation-test.js +0 -27
  547. data/dist/es/ember-template-compiler/tests/plugins/transform-inline-link-to-test.js +0 -15
  548. data/dist/es/ember-template-compiler/tests/plugins/transform-input-type-syntax-test.js +0 -25
  549. data/dist/es/ember-template-compiler/tests/system/bootstrap-test.js +0 -155
  550. data/dist/es/ember-template-compiler/tests/system/compile_options_test.js +0 -115
  551. data/dist/es/ember-template-compiler/tests/system/dasherize-component-name-test.js +0 -19
  552. data/dist/es/ember-testing/index.js +0 -10
  553. data/dist/es/ember-testing/lib/adapters/adapter.js +0 -58
  554. data/dist/es/ember-testing/lib/adapters/qunit.js +0 -47
  555. data/dist/es/ember-testing/lib/events.js +0 -136
  556. data/dist/es/ember-testing/lib/ext/application.js +0 -191
  557. data/dist/es/ember-testing/lib/ext/rsvp.js +0 -19
  558. data/dist/es/ember-testing/lib/helpers.js +0 -30
  559. data/dist/es/ember-testing/lib/helpers/-is-form-control.js +0 -16
  560. data/dist/es/ember-testing/lib/helpers/and_then.js +0 -3
  561. data/dist/es/ember-testing/lib/helpers/click.js +0 -36
  562. data/dist/es/ember-testing/lib/helpers/current_path.js +0 -27
  563. data/dist/es/ember-testing/lib/helpers/current_route_name.js +0 -25
  564. data/dist/es/ember-testing/lib/helpers/current_url.js +0 -27
  565. data/dist/es/ember-testing/lib/helpers/fill_in.js +0 -46
  566. data/dist/es/ember-testing/lib/helpers/find.js +0 -41
  567. data/dist/es/ember-testing/lib/helpers/find_with_assert.js +0 -34
  568. data/dist/es/ember-testing/lib/helpers/key_event.js +0 -36
  569. data/dist/es/ember-testing/lib/helpers/pause_test.js +0 -65
  570. data/dist/es/ember-testing/lib/helpers/trigger_event.js +0 -62
  571. data/dist/es/ember-testing/lib/helpers/visit.js +0 -42
  572. data/dist/es/ember-testing/lib/helpers/wait.js +0 -72
  573. data/dist/es/ember-testing/lib/initializers.js +0 -17
  574. data/dist/es/ember-testing/lib/setup_for_testing.js +0 -44
  575. data/dist/es/ember-testing/lib/support.js +0 -62
  576. data/dist/es/ember-testing/lib/test.js +0 -70
  577. data/dist/es/ember-testing/lib/test/adapter.js +0 -33
  578. data/dist/es/ember-testing/lib/test/helpers.js +0 -125
  579. data/dist/es/ember-testing/lib/test/on_inject_helpers.js +0 -38
  580. data/dist/es/ember-testing/lib/test/pending_requests.js +0 -24
  581. data/dist/es/ember-testing/lib/test/promise.js +0 -79
  582. data/dist/es/ember-testing/lib/test/run.js +0 -9
  583. data/dist/es/ember-testing/lib/test/waiters.js +0 -117
  584. data/dist/es/ember-testing/tests/acceptance_test.js +0 -478
  585. data/dist/es/ember-testing/tests/adapters/adapter_test.js +0 -31
  586. data/dist/es/ember-testing/tests/adapters/qunit_test.js +0 -50
  587. data/dist/es/ember-testing/tests/adapters_test.js +0 -405
  588. data/dist/es/ember-testing/tests/ext/rsvp_test.js +0 -124
  589. data/dist/es/ember-testing/tests/helper_registration_test.js +0 -98
  590. data/dist/es/ember-testing/tests/helpers_test.js +0 -1228
  591. data/dist/es/ember-testing/tests/integration_test.js +0 -106
  592. data/dist/es/ember-testing/tests/reexports_test.js +0 -26
  593. data/dist/es/ember-testing/tests/test/waiters-test.js +0 -145
  594. data/dist/es/ember-utils/index.js +0 -28
  595. data/dist/es/ember-utils/lib/cache.js +0 -36
  596. data/dist/es/ember-utils/lib/dictionary.js +0 -11
  597. data/dist/es/ember-utils/lib/guid.js +0 -120
  598. data/dist/es/ember-utils/lib/inspect.js +0 -112
  599. data/dist/es/ember-utils/lib/intern.js +0 -49
  600. data/dist/es/ember-utils/lib/invoke.js +0 -53
  601. data/dist/es/ember-utils/lib/is_proxy.js +0 -14
  602. data/dist/es/ember-utils/lib/lookup-descriptor.js +0 -11
  603. data/dist/es/ember-utils/lib/make-array.js +0 -7
  604. data/dist/es/ember-utils/lib/name.js +0 -9
  605. data/dist/es/ember-utils/lib/proxy-utils.js +0 -1
  606. data/dist/es/ember-utils/lib/spec.js +0 -14
  607. data/dist/es/ember-utils/lib/super.js +0 -83
  608. data/dist/es/ember-utils/lib/symbol-utils.js +0 -8
  609. data/dist/es/ember-utils/lib/symbol.js +0 -15
  610. data/dist/es/ember-utils/lib/to-string.js +0 -35
  611. data/dist/es/ember-utils/lib/weak_set.js +0 -18
  612. data/dist/es/ember-utils/tests/cache_test.js +0 -77
  613. data/dist/es/ember-utils/tests/can_invoke_test.js +0 -46
  614. data/dist/es/ember-utils/tests/checkHasSuper_test.js +0 -17
  615. data/dist/es/ember-utils/tests/generate_guid_test.js +0 -13
  616. data/dist/es/ember-utils/tests/guid_for_test.js +0 -101
  617. data/dist/es/ember-utils/tests/inspect_test.js +0 -146
  618. data/dist/es/ember-utils/tests/is_proxy_test.js +0 -18
  619. data/dist/es/ember-utils/tests/make_array_test.js +0 -41
  620. data/dist/es/ember-utils/tests/to-string-test.js +0 -32
  621. data/dist/es/ember-utils/tests/try_invoke_test.js +0 -48
  622. data/dist/es/ember-views/index.js +0 -28
  623. data/dist/es/ember-views/lib/compat/attrs.js +0 -3
  624. data/dist/es/ember-views/lib/compat/fallback-view-registry.js +0 -3
  625. data/dist/es/ember-views/lib/component_lookup.js +0 -27
  626. data/dist/es/ember-views/lib/mixins/action_support.js +0 -189
  627. data/dist/es/ember-views/lib/mixins/child_views_support.js +0 -27
  628. data/dist/es/ember-views/lib/mixins/class_names_support.js +0 -102
  629. data/dist/es/ember-views/lib/mixins/text_support.js +0 -333
  630. data/dist/es/ember-views/lib/mixins/view_state_support.js +0 -19
  631. data/dist/es/ember-views/lib/mixins/view_support.js +0 -452
  632. data/dist/es/ember-views/lib/system/action_manager.js +0 -14
  633. data/dist/es/ember-views/lib/system/event_dispatcher.js +0 -454
  634. data/dist/es/ember-views/lib/system/jquery.js +0 -29
  635. data/dist/es/ember-views/lib/system/jquery_event_deprecation.js +0 -61
  636. data/dist/es/ember-views/lib/system/lookup_partial.js +0 -55
  637. data/dist/es/ember-views/lib/system/utils.js +0 -201
  638. data/dist/es/ember-views/lib/utils/lookup-component.js +0 -58
  639. data/dist/es/ember-views/lib/views/core_view.js +0 -83
  640. data/dist/es/ember-views/lib/views/states.js +0 -48
  641. data/dist/es/ember-views/lib/views/states/default.js +0 -17
  642. data/dist/es/ember-views/lib/views/states/destroying.js +0 -16
  643. data/dist/es/ember-views/lib/views/states/has_element.js +0 -31
  644. data/dist/es/ember-views/lib/views/states/in_dom.js +0 -28
  645. data/dist/es/ember-views/lib/views/states/pre_render.js +0 -3
  646. data/dist/es/ember/index.js +0 -645
  647. data/dist/es/ember/tests/application_lifecycle_test.js +0 -188
  648. data/dist/es/ember/tests/component_context_test.js +0 -255
  649. data/dist/es/ember/tests/component_registration_test.js +0 -252
  650. data/dist/es/ember/tests/controller_test.js +0 -44
  651. data/dist/es/ember/tests/error_handler_test.js +0 -581
  652. data/dist/es/ember/tests/helpers/helper_registration_test.js +0 -103
  653. data/dist/es/ember/tests/helpers/link_to_test.js +0 -2103
  654. data/dist/es/ember/tests/helpers/link_to_test/link_to_transitioning_classes_test.js +0 -342
  655. data/dist/es/ember/tests/helpers/link_to_test/link_to_with_query_params_test.js +0 -694
  656. data/dist/es/ember/tests/homepage_example_test.js +0 -47
  657. data/dist/es/ember/tests/integration/multiple-app-test.js +0 -101
  658. data/dist/es/ember/tests/production_build_test.js +0 -34
  659. data/dist/es/ember/tests/reexports_test.js +0 -307
  660. data/dist/es/ember/tests/routing/decoupled_basic_test.js +0 -4506
  661. data/dist/es/ember/tests/routing/query_params_test.js +0 -1579
  662. data/dist/es/ember/tests/routing/query_params_test/model_dependent_state_with_query_params_test.js +0 -1117
  663. data/dist/es/ember/tests/routing/query_params_test/overlapping_query_params_test.js +0 -185
  664. data/dist/es/ember/tests/routing/query_params_test/query_param_async_get_handler_test.js +0 -327
  665. data/dist/es/ember/tests/routing/query_params_test/query_params_paramless_link_to_test.js +0 -37
  666. data/dist/es/ember/tests/routing/query_params_test/shared_state_test.js +0 -84
  667. data/dist/es/ember/tests/routing/router_map_test.js +0 -46
  668. data/dist/es/ember/tests/routing/router_service_test/basic_test.js +0 -95
  669. data/dist/es/ember/tests/routing/router_service_test/currenturl_lifecycle_test.js +0 -149
  670. data/dist/es/ember/tests/routing/router_service_test/isActive_test.js +0 -113
  671. data/dist/es/ember/tests/routing/router_service_test/replaceWith_test.js +0 -144
  672. data/dist/es/ember/tests/routing/router_service_test/transitionTo_test.js +0 -370
  673. data/dist/es/ember/tests/routing/router_service_test/urlFor_test.js +0 -307
  674. data/dist/es/ember/tests/routing/substates_test.js +0 -1110
  675. data/dist/es/ember/tests/routing/toplevel_dom_test.js +0 -37
  676. data/dist/es/ember/tests/service_injection_test.js +0 -278
  677. data/dist/es/ember/tests/view_instrumentation_test.js +0 -47
  678. data/dist/es/ember/version.js +0 -1
  679. data/dist/es/handlebars.js +0 -1268
  680. data/dist/es/internal-test-helpers/index.js +0 -31
  681. data/dist/es/internal-test-helpers/lib/.gitkeep +0 -0
  682. data/dist/es/internal-test-helpers/lib/apply-mixins.js +0 -37
  683. data/dist/es/internal-test-helpers/lib/browser-detect.js +0 -4
  684. data/dist/es/internal-test-helpers/lib/build-owner.js +0 -49
  685. data/dist/es/internal-test-helpers/lib/confirm-export.js +0 -45
  686. data/dist/es/internal-test-helpers/lib/ember-dev/assertion.js +0 -87
  687. data/dist/es/internal-test-helpers/lib/ember-dev/containers.js +0 -34
  688. data/dist/es/internal-test-helpers/lib/ember-dev/debug.js +0 -47
  689. data/dist/es/internal-test-helpers/lib/ember-dev/deprecation.js +0 -71
  690. data/dist/es/internal-test-helpers/lib/ember-dev/index.js +0 -19
  691. data/dist/es/internal-test-helpers/lib/ember-dev/method-call-tracker.js +0 -127
  692. data/dist/es/internal-test-helpers/lib/ember-dev/namespaces.js +0 -34
  693. data/dist/es/internal-test-helpers/lib/ember-dev/run-loop.js +0 -28
  694. data/dist/es/internal-test-helpers/lib/ember-dev/setup-qunit.js +0 -26
  695. data/dist/es/internal-test-helpers/lib/ember-dev/utils.js +0 -33
  696. data/dist/es/internal-test-helpers/lib/ember-dev/warning.js +0 -71
  697. data/dist/es/internal-test-helpers/lib/equal-inner-html.js +0 -37
  698. data/dist/es/internal-test-helpers/lib/equal-tokens.js +0 -53
  699. data/dist/es/internal-test-helpers/lib/factory.js +0 -65
  700. data/dist/es/internal-test-helpers/lib/get-all-property-names.js +0 -12
  701. data/dist/es/internal-test-helpers/lib/get-text-of.js +0 -3
  702. data/dist/es/internal-test-helpers/lib/matchers.js +0 -167
  703. data/dist/es/internal-test-helpers/lib/module-for.js +0 -89
  704. data/dist/es/internal-test-helpers/lib/registry-check.js +0 -28
  705. data/dist/es/internal-test-helpers/lib/run.js +0 -11
  706. data/dist/es/internal-test-helpers/lib/strip.js +0 -12
  707. data/dist/es/internal-test-helpers/lib/system/synthetic-events.js +0 -183
  708. data/dist/es/internal-test-helpers/lib/test-cases/abstract-application.js +0 -70
  709. data/dist/es/internal-test-helpers/lib/test-cases/abstract-rendering.js +0 -203
  710. data/dist/es/internal-test-helpers/lib/test-cases/abstract.js +0 -222
  711. data/dist/es/internal-test-helpers/lib/test-cases/application.js +0 -39
  712. data/dist/es/internal-test-helpers/lib/test-cases/autoboot-application.js +0 -34
  713. data/dist/es/internal-test-helpers/lib/test-cases/default-resolver-application.js +0 -43
  714. data/dist/es/internal-test-helpers/lib/test-cases/node-query.js +0 -120
  715. data/dist/es/internal-test-helpers/lib/test-cases/query-param.js +0 -124
  716. data/dist/es/internal-test-helpers/lib/test-cases/rendering.js +0 -14
  717. data/dist/es/internal-test-helpers/lib/test-cases/router.js +0 -26
  718. data/dist/es/internal-test-helpers/lib/test-cases/test-resolver-application.js +0 -40
  719. data/dist/es/internal-test-helpers/lib/test-resolver.js +0 -86
  720. data/dist/es/internal-test-helpers/tests/index-test.js +0 -10
  721. data/dist/es/route-recognizer.js +0 -685
  722. data/dist/es/router.js +0 -2454
  723. data/dist/es/rsvp.js +0 -2394
  724. data/dist/es/simple-html-tokenizer.js +0 -638
  725. data/dist/jquery/jquery.js +0 -10364
  726. data/dist/node/app-boot-test.js +0 -146
  727. data/dist/node/build-info-test.js +0 -177
  728. data/dist/node/component-rendering-test.js +0 -34
  729. data/dist/node/helpers/app-module.js +0 -198
  730. data/dist/node/helpers/assert-html-matches.js +0 -25
  731. data/dist/node/helpers/build-owner.js +0 -28
  732. data/dist/node/helpers/component-module.js +0 -137
  733. data/dist/node/sourcemap-test.js +0 -27
  734. data/dist/node/template-compiler-test.js +0 -45
  735. data/dist/node/visit-test.js +0 -349
  736. data/dist/qunit/qunit.css +0 -436
  737. data/dist/qunit/qunit.js +0 -5188
  738. data/dist/tests/index.html +0 -254
  739. data/ember-source.gemspec +0 -28
  740. data/node_modules/.yarn-integrity +0 -10
  741. data/yarn.lock +0 -4
@@ -1,37 +0,0 @@
1
- import { ENV } from 'ember-environment';
2
- import { moduleFor, ApplicationTestCase } from 'internal-test-helpers';
3
-
4
- moduleFor(
5
- 'Top Level DOM Structure',
6
- class extends ApplicationTestCase {
7
- constructor() {
8
- super(...arguments);
9
- this._APPLICATION_TEMPLATE_WRAPPER = ENV._APPLICATION_TEMPLATE_WRAPPER;
10
- }
11
-
12
- teardown() {
13
- super.teardown();
14
- ENV._APPLICATION_TEMPLATE_WRAPPER = this._APPLICATION_TEMPLATE_WRAPPER;
15
- }
16
-
17
- ['@test topmost template with wrapper']() {
18
- ENV._APPLICATION_TEMPLATE_WRAPPER = true;
19
-
20
- this.addTemplate('application', 'hello world');
21
-
22
- return this.visit('/').then(() => {
23
- this.assertComponentElement(this.element, { content: 'hello world' });
24
- });
25
- }
26
-
27
- ['@test topmost template without wrapper']() {
28
- ENV._APPLICATION_TEMPLATE_WRAPPER = false;
29
-
30
- this.addTemplate('application', 'hello world');
31
-
32
- return this.visit('/').then(() => {
33
- this.assertInnerHTML('hello world');
34
- });
35
- }
36
- }
37
- );
@@ -1,278 +0,0 @@
1
- import { getOwner } from 'ember-owner';
2
- import Controller from '@ember/controller';
3
- import Service, { inject as injectService } from '@ember/service';
4
- import { _ProxyMixin } from 'ember-runtime';
5
- import { moduleFor, ApplicationTestCase } from 'internal-test-helpers';
6
- import { computed } from 'ember-metal';
7
- import { EMBER_MODULE_UNIFICATION } from '@ember/canary-features';
8
-
9
- moduleFor(
10
- 'Service Injection',
11
- class extends ApplicationTestCase {
12
- ['@test Service can be injected and is resolved'](assert) {
13
- this.add(
14
- 'controller:application',
15
- Controller.extend({
16
- myService: injectService('my-service'),
17
- })
18
- );
19
- let MyService = Service.extend();
20
- this.add('service:my-service', MyService);
21
- this.addTemplate('application', '');
22
-
23
- this.visit('/').then(() => {
24
- let controller = this.applicationInstance.lookup('controller:application');
25
- assert.ok(controller.get('myService') instanceof MyService);
26
- });
27
- }
28
-
29
- ['@test Service can be an object proxy and access owner in init GH#16484'](assert) {
30
- let serviceOwner;
31
-
32
- this.add(
33
- 'controller:application',
34
- Controller.extend({
35
- myService: injectService('my-service'),
36
- })
37
- );
38
- let MyService = Service.extend(_ProxyMixin, {
39
- init() {
40
- this._super(...arguments);
41
-
42
- serviceOwner = getOwner(this);
43
- },
44
- });
45
- this.add('service:my-service', MyService);
46
- this.addTemplate('application', '');
47
-
48
- this.visit('/').then(instance => {
49
- let controller = this.applicationInstance.lookup('controller:application');
50
- assert.ok(controller.get('myService') instanceof MyService);
51
- assert.equal(serviceOwner, instance, 'should be able to `getOwner` in init');
52
- });
53
- }
54
- }
55
- );
56
-
57
- moduleFor(
58
- 'Service Injection with ES5 Getters',
59
- class extends ApplicationTestCase {
60
- ['@test Service can be injected and is resolved without calling `get`'](assert) {
61
- this.add(
62
- 'controller:application',
63
- Controller.extend({
64
- myService: injectService('my-service'),
65
- })
66
- );
67
- let MyService = Service.extend({
68
- name: computed(function() {
69
- return 'The service name';
70
- }),
71
- });
72
- this.add('service:my-service', MyService);
73
- this.addTemplate('application', '');
74
-
75
- this.visit('/').then(() => {
76
- let controller = this.applicationInstance.lookup('controller:application');
77
- assert.ok(controller.myService instanceof MyService);
78
- assert.equal(controller.myService.name, 'The service name', 'service property accessible');
79
- });
80
- }
81
- }
82
- );
83
-
84
- if (EMBER_MODULE_UNIFICATION) {
85
- moduleFor(
86
- 'Service Injection (MU)',
87
- class extends ApplicationTestCase {
88
- ['@test Service can be injected with source and is resolved'](assert) {
89
- let source = 'controller:src/ui/routes/application/controller';
90
- this.add(
91
- 'controller:application',
92
- Controller.extend({
93
- myService: injectService('my-service', { source }),
94
- })
95
- );
96
- let MyService = Service.extend();
97
- this.add(
98
- {
99
- specifier: 'service:my-service',
100
- source,
101
- },
102
- MyService
103
- );
104
-
105
- return this.visit('/').then(() => {
106
- let controller = this.applicationInstance.lookup('controller:application');
107
-
108
- assert.ok(controller.get('myService') instanceof MyService);
109
- });
110
- }
111
-
112
- ['@test Services can be injected with same name, different source, and resolve different instances'](
113
- assert
114
- ) {
115
- // This test implies that there is a file src/ui/routes/route-a/-services/my-service
116
- let routeASource = 'controller:src/ui/routes/route-a/controller';
117
- // This test implies that there is a file src/ui/routes/route-b/-services/my-service
118
- let routeBSource = 'controller:src/ui/routes/route-b/controller';
119
-
120
- this.add(
121
- 'controller:route-a',
122
- Controller.extend({
123
- myService: injectService('my-service', { source: routeASource }),
124
- })
125
- );
126
-
127
- this.add(
128
- 'controller:route-b',
129
- Controller.extend({
130
- myService: injectService('my-service', { source: routeBSource }),
131
- })
132
- );
133
-
134
- let LocalLookupService = Service.extend();
135
- this.add(
136
- {
137
- specifier: 'service:my-service',
138
- source: routeASource,
139
- },
140
- LocalLookupService
141
- );
142
-
143
- let MyService = Service.extend();
144
- this.add(
145
- {
146
- specifier: 'service:my-service',
147
- source: routeBSource,
148
- },
149
- MyService
150
- );
151
-
152
- return this.visit('/').then(() => {
153
- let controllerA = this.applicationInstance.lookup('controller:route-a');
154
- let serviceFromControllerA = controllerA.get('myService');
155
- assert.ok(
156
- serviceFromControllerA instanceof LocalLookupService,
157
- 'local lookup service is returned'
158
- );
159
-
160
- let controllerB = this.applicationInstance.lookup('controller:route-b');
161
- let serviceFromControllerB = controllerB.get('myService');
162
- assert.ok(serviceFromControllerB instanceof MyService, 'global service is returned');
163
-
164
- assert.notStrictEqual(serviceFromControllerA, serviceFromControllerB);
165
- });
166
- }
167
-
168
- ['@test Services can be injected with same name, different source, but same resolution result, and share an instance'](
169
- assert
170
- ) {
171
- let routeASource = 'controller:src/ui/routes/route-a/controller';
172
- let routeBSource = 'controller:src/ui/routes/route-b/controller';
173
-
174
- this.add(
175
- 'controller:route-a',
176
- Controller.extend({
177
- myService: injectService('my-service', { source: routeASource }),
178
- })
179
- );
180
-
181
- this.add(
182
- 'controller:route-b',
183
- Controller.extend({
184
- myService: injectService('my-service', { source: routeBSource }),
185
- })
186
- );
187
-
188
- let MyService = Service.extend();
189
- this.add(
190
- {
191
- specifier: 'service:my-service',
192
- },
193
- MyService
194
- );
195
-
196
- return this.visit('/').then(() => {
197
- let controllerA = this.applicationInstance.lookup('controller:route-a');
198
- let serviceFromControllerA = controllerA.get('myService');
199
- assert.ok(serviceFromControllerA instanceof MyService);
200
-
201
- let controllerB = this.applicationInstance.lookup('controller:route-b');
202
- assert.strictEqual(serviceFromControllerA, controllerB.get('myService'));
203
- });
204
- }
205
-
206
- /*
207
- * This test demonstrates a failure in the caching system of ember's
208
- * container around singletons and and local lookup. The local lookup
209
- * is cached and the global injection is then looked up incorrectly.
210
- *
211
- * The paractical rules of Ember's module unification config are such
212
- * that services cannot be locally looked up, thus this case is really
213
- * just a demonstration of what could go wrong if we permit arbitrary
214
- * configuration (such as a singleton type that has local lookup).
215
- */
216
- ['@test Services can be injected with same name, one with source one without, and share an instance'](
217
- assert
218
- ) {
219
- let routeASource = 'controller:src/ui/routes/route-a/controller';
220
- this.add(
221
- 'controller:route-a',
222
- Controller.extend({
223
- myService: injectService('my-service', { source: routeASource }),
224
- })
225
- );
226
-
227
- this.add(
228
- 'controller:route-b',
229
- Controller.extend({
230
- myService: injectService('my-service'),
231
- })
232
- );
233
-
234
- let MyService = Service.extend();
235
- this.add(
236
- {
237
- specifier: 'service:my-service',
238
- },
239
- MyService
240
- );
241
-
242
- return this.visit('/').then(() => {
243
- let controllerA = this.applicationInstance.lookup('controller:route-a');
244
- let serviceFromControllerA = controllerA.get('myService');
245
- assert.ok(serviceFromControllerA instanceof MyService, 'global service is returned');
246
-
247
- let controllerB = this.applicationInstance.lookup('controller:route-b');
248
- let serviceFromControllerB = controllerB.get('myService');
249
- assert.ok(serviceFromControllerB instanceof MyService, 'global service is returned');
250
-
251
- assert.strictEqual(serviceFromControllerA, serviceFromControllerB);
252
- });
253
- }
254
-
255
- ['@test Service with namespace can be injected and is resolved'](assert) {
256
- this.add(
257
- 'controller:application',
258
- Controller.extend({
259
- myService: injectService('my-namespace::my-service'),
260
- })
261
- );
262
- let MyService = Service.extend();
263
- this.add(
264
- {
265
- specifier: 'service:my-service',
266
- namespace: 'my-namespace',
267
- },
268
- MyService
269
- );
270
-
271
- this.visit('/').then(() => {
272
- let controller = this.applicationInstance.lookup('controller:application');
273
- assert.ok(controller.get('myService') instanceof MyService);
274
- });
275
- }
276
- }
277
- );
278
- }
@@ -1,47 +0,0 @@
1
- import { subscribe, reset } from '@ember/instrumentation';
2
- import { moduleFor, ApplicationTestCase } from 'internal-test-helpers';
3
-
4
- moduleFor(
5
- 'View Instrumentation',
6
- class extends ApplicationTestCase {
7
- constructor() {
8
- super();
9
- this.addTemplate('application', `{{outlet}}`);
10
- this.addTemplate('index', `<h1>Index</h1>`);
11
- this.addTemplate('posts', `<h1>Posts</h1>`);
12
-
13
- this.router.map(function() {
14
- this.route('posts');
15
- });
16
- }
17
- teardown() {
18
- reset();
19
- super.teardown();
20
- }
21
-
22
- ['@test Nodes without view instances are instrumented'](assert) {
23
- let called = false;
24
-
25
- subscribe('render', {
26
- before() {
27
- called = true;
28
- },
29
- after() {},
30
- });
31
-
32
- return this.visit('/')
33
- .then(() => {
34
- assert.equal(this.textValue(), 'Index', 'It rendered the correct template');
35
-
36
- assert.ok(called, 'Instrumentation called on first render');
37
- called = false;
38
-
39
- return this.visit('/posts');
40
- })
41
- .then(() => {
42
- assert.equal(this.textValue(), 'Posts', 'It rendered the correct template');
43
- assert.ok(called, 'Instrumentation called on transition to non-view backed route');
44
- });
45
- }
46
- }
47
- );
@@ -1 +0,0 @@
1
- export default "3.5.1";
@@ -1,1268 +0,0 @@
1
- // File ignored in coverage tests via setting in .istanbul.yml
2
- /* Jison generated parser */
3
- var handlebars = (function(){
4
- var parser = {trace: function trace() { },
5
- yy: {},
6
- symbols_: {"error":2,"root":3,"program":4,"EOF":5,"program_repetition0":6,"statement":7,"mustache":8,"block":9,"rawBlock":10,"partial":11,"partialBlock":12,"content":13,"COMMENT":14,"CONTENT":15,"openRawBlock":16,"rawBlock_repetition_plus0":17,"END_RAW_BLOCK":18,"OPEN_RAW_BLOCK":19,"helperName":20,"openRawBlock_repetition0":21,"openRawBlock_option0":22,"CLOSE_RAW_BLOCK":23,"openBlock":24,"block_option0":25,"closeBlock":26,"openInverse":27,"block_option1":28,"OPEN_BLOCK":29,"openBlock_repetition0":30,"openBlock_option0":31,"openBlock_option1":32,"CLOSE":33,"OPEN_INVERSE":34,"openInverse_repetition0":35,"openInverse_option0":36,"openInverse_option1":37,"openInverseChain":38,"OPEN_INVERSE_CHAIN":39,"openInverseChain_repetition0":40,"openInverseChain_option0":41,"openInverseChain_option1":42,"inverseAndProgram":43,"INVERSE":44,"inverseChain":45,"inverseChain_option0":46,"OPEN_ENDBLOCK":47,"OPEN":48,"mustache_repetition0":49,"mustache_option0":50,"OPEN_UNESCAPED":51,"mustache_repetition1":52,"mustache_option1":53,"CLOSE_UNESCAPED":54,"OPEN_PARTIAL":55,"partialName":56,"partial_repetition0":57,"partial_option0":58,"openPartialBlock":59,"OPEN_PARTIAL_BLOCK":60,"openPartialBlock_repetition0":61,"openPartialBlock_option0":62,"param":63,"sexpr":64,"OPEN_SEXPR":65,"sexpr_repetition0":66,"sexpr_option0":67,"CLOSE_SEXPR":68,"hash":69,"hash_repetition_plus0":70,"hashSegment":71,"ID":72,"EQUALS":73,"blockParams":74,"OPEN_BLOCK_PARAMS":75,"blockParams_repetition_plus0":76,"CLOSE_BLOCK_PARAMS":77,"path":78,"dataName":79,"STRING":80,"NUMBER":81,"BOOLEAN":82,"UNDEFINED":83,"NULL":84,"DATA":85,"pathSegments":86,"SEP":87,"$accept":0,"$end":1},
7
- terminals_: {2:"error",5:"EOF",14:"COMMENT",15:"CONTENT",18:"END_RAW_BLOCK",19:"OPEN_RAW_BLOCK",23:"CLOSE_RAW_BLOCK",29:"OPEN_BLOCK",33:"CLOSE",34:"OPEN_INVERSE",39:"OPEN_INVERSE_CHAIN",44:"INVERSE",47:"OPEN_ENDBLOCK",48:"OPEN",51:"OPEN_UNESCAPED",54:"CLOSE_UNESCAPED",55:"OPEN_PARTIAL",60:"OPEN_PARTIAL_BLOCK",65:"OPEN_SEXPR",68:"CLOSE_SEXPR",72:"ID",73:"EQUALS",75:"OPEN_BLOCK_PARAMS",77:"CLOSE_BLOCK_PARAMS",80:"STRING",81:"NUMBER",82:"BOOLEAN",83:"UNDEFINED",84:"NULL",85:"DATA",87:"SEP"},
8
- productions_: [0,[3,2],[4,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[13,1],[10,3],[16,5],[9,4],[9,4],[24,6],[27,6],[38,6],[43,2],[45,3],[45,1],[26,3],[8,5],[8,5],[11,5],[12,3],[59,5],[63,1],[63,1],[64,5],[69,1],[71,3],[74,3],[20,1],[20,1],[20,1],[20,1],[20,1],[20,1],[20,1],[56,1],[56,1],[79,2],[78,1],[86,3],[86,1],[6,0],[6,2],[17,1],[17,2],[21,0],[21,2],[22,0],[22,1],[25,0],[25,1],[28,0],[28,1],[30,0],[30,2],[31,0],[31,1],[32,0],[32,1],[35,0],[35,2],[36,0],[36,1],[37,0],[37,1],[40,0],[40,2],[41,0],[41,1],[42,0],[42,1],[46,0],[46,1],[49,0],[49,2],[50,0],[50,1],[52,0],[52,2],[53,0],[53,1],[57,0],[57,2],[58,0],[58,1],[61,0],[61,2],[62,0],[62,1],[66,0],[66,2],[67,0],[67,1],[70,1],[70,2],[76,1],[76,2]],
9
- performAction: function anonymous(yytext,yyleng,yylineno,yy,yystate,$$,_$
10
- /**/) {
11
-
12
- var $0 = $$.length - 1;
13
- switch (yystate) {
14
- case 1: return $$[$0-1];
15
- break;
16
- case 2:this.$ = yy.prepareProgram($$[$0]);
17
- break;
18
- case 3:this.$ = $$[$0];
19
- break;
20
- case 4:this.$ = $$[$0];
21
- break;
22
- case 5:this.$ = $$[$0];
23
- break;
24
- case 6:this.$ = $$[$0];
25
- break;
26
- case 7:this.$ = $$[$0];
27
- break;
28
- case 8:this.$ = $$[$0];
29
- break;
30
- case 9:
31
- this.$ = {
32
- type: 'CommentStatement',
33
- value: yy.stripComment($$[$0]),
34
- strip: yy.stripFlags($$[$0], $$[$0]),
35
- loc: yy.locInfo(this._$)
36
- };
37
-
38
- break;
39
- case 10:
40
- this.$ = {
41
- type: 'ContentStatement',
42
- original: $$[$0],
43
- value: $$[$0],
44
- loc: yy.locInfo(this._$)
45
- };
46
-
47
- break;
48
- case 11:this.$ = yy.prepareRawBlock($$[$0-2], $$[$0-1], $$[$0], this._$);
49
- break;
50
- case 12:this.$ = { path: $$[$0-3], params: $$[$0-2], hash: $$[$0-1] };
51
- break;
52
- case 13:this.$ = yy.prepareBlock($$[$0-3], $$[$0-2], $$[$0-1], $$[$0], false, this._$);
53
- break;
54
- case 14:this.$ = yy.prepareBlock($$[$0-3], $$[$0-2], $$[$0-1], $$[$0], true, this._$);
55
- break;
56
- case 15:this.$ = { open: $$[$0-5], path: $$[$0-4], params: $$[$0-3], hash: $$[$0-2], blockParams: $$[$0-1], strip: yy.stripFlags($$[$0-5], $$[$0]) };
57
- break;
58
- case 16:this.$ = { path: $$[$0-4], params: $$[$0-3], hash: $$[$0-2], blockParams: $$[$0-1], strip: yy.stripFlags($$[$0-5], $$[$0]) };
59
- break;
60
- case 17:this.$ = { path: $$[$0-4], params: $$[$0-3], hash: $$[$0-2], blockParams: $$[$0-1], strip: yy.stripFlags($$[$0-5], $$[$0]) };
61
- break;
62
- case 18:this.$ = { strip: yy.stripFlags($$[$0-1], $$[$0-1]), program: $$[$0] };
63
- break;
64
- case 19:
65
- var inverse = yy.prepareBlock($$[$0-2], $$[$0-1], $$[$0], $$[$0], false, this._$),
66
- program = yy.prepareProgram([inverse], $$[$0-1].loc);
67
- program.chained = true;
68
-
69
- this.$ = { strip: $$[$0-2].strip, program: program, chain: true };
70
-
71
- break;
72
- case 20:this.$ = $$[$0];
73
- break;
74
- case 21:this.$ = {path: $$[$0-1], strip: yy.stripFlags($$[$0-2], $$[$0])};
75
- break;
76
- case 22:this.$ = yy.prepareMustache($$[$0-3], $$[$0-2], $$[$0-1], $$[$0-4], yy.stripFlags($$[$0-4], $$[$0]), this._$);
77
- break;
78
- case 23:this.$ = yy.prepareMustache($$[$0-3], $$[$0-2], $$[$0-1], $$[$0-4], yy.stripFlags($$[$0-4], $$[$0]), this._$);
79
- break;
80
- case 24:
81
- this.$ = {
82
- type: 'PartialStatement',
83
- name: $$[$0-3],
84
- params: $$[$0-2],
85
- hash: $$[$0-1],
86
- indent: '',
87
- strip: yy.stripFlags($$[$0-4], $$[$0]),
88
- loc: yy.locInfo(this._$)
89
- };
90
-
91
- break;
92
- case 25:this.$ = yy.preparePartialBlock($$[$0-2], $$[$0-1], $$[$0], this._$);
93
- break;
94
- case 26:this.$ = { path: $$[$0-3], params: $$[$0-2], hash: $$[$0-1], strip: yy.stripFlags($$[$0-4], $$[$0]) };
95
- break;
96
- case 27:this.$ = $$[$0];
97
- break;
98
- case 28:this.$ = $$[$0];
99
- break;
100
- case 29:
101
- this.$ = {
102
- type: 'SubExpression',
103
- path: $$[$0-3],
104
- params: $$[$0-2],
105
- hash: $$[$0-1],
106
- loc: yy.locInfo(this._$)
107
- };
108
-
109
- break;
110
- case 30:this.$ = {type: 'Hash', pairs: $$[$0], loc: yy.locInfo(this._$)};
111
- break;
112
- case 31:this.$ = {type: 'HashPair', key: yy.id($$[$0-2]), value: $$[$0], loc: yy.locInfo(this._$)};
113
- break;
114
- case 32:this.$ = yy.id($$[$0-1]);
115
- break;
116
- case 33:this.$ = $$[$0];
117
- break;
118
- case 34:this.$ = $$[$0];
119
- break;
120
- case 35:this.$ = {type: 'StringLiteral', value: $$[$0], original: $$[$0], loc: yy.locInfo(this._$)};
121
- break;
122
- case 36:this.$ = {type: 'NumberLiteral', value: Number($$[$0]), original: Number($$[$0]), loc: yy.locInfo(this._$)};
123
- break;
124
- case 37:this.$ = {type: 'BooleanLiteral', value: $$[$0] === 'true', original: $$[$0] === 'true', loc: yy.locInfo(this._$)};
125
- break;
126
- case 38:this.$ = {type: 'UndefinedLiteral', original: undefined, value: undefined, loc: yy.locInfo(this._$)};
127
- break;
128
- case 39:this.$ = {type: 'NullLiteral', original: null, value: null, loc: yy.locInfo(this._$)};
129
- break;
130
- case 40:this.$ = $$[$0];
131
- break;
132
- case 41:this.$ = $$[$0];
133
- break;
134
- case 42:this.$ = yy.preparePath(true, $$[$0], this._$);
135
- break;
136
- case 43:this.$ = yy.preparePath(false, $$[$0], this._$);
137
- break;
138
- case 44: $$[$0-2].push({part: yy.id($$[$0]), original: $$[$0], separator: $$[$0-1]}); this.$ = $$[$0-2];
139
- break;
140
- case 45:this.$ = [{part: yy.id($$[$0]), original: $$[$0]}];
141
- break;
142
- case 46:this.$ = [];
143
- break;
144
- case 47:$$[$0-1].push($$[$0]);
145
- break;
146
- case 48:this.$ = [$$[$0]];
147
- break;
148
- case 49:$$[$0-1].push($$[$0]);
149
- break;
150
- case 50:this.$ = [];
151
- break;
152
- case 51:$$[$0-1].push($$[$0]);
153
- break;
154
- case 58:this.$ = [];
155
- break;
156
- case 59:$$[$0-1].push($$[$0]);
157
- break;
158
- case 64:this.$ = [];
159
- break;
160
- case 65:$$[$0-1].push($$[$0]);
161
- break;
162
- case 70:this.$ = [];
163
- break;
164
- case 71:$$[$0-1].push($$[$0]);
165
- break;
166
- case 78:this.$ = [];
167
- break;
168
- case 79:$$[$0-1].push($$[$0]);
169
- break;
170
- case 82:this.$ = [];
171
- break;
172
- case 83:$$[$0-1].push($$[$0]);
173
- break;
174
- case 86:this.$ = [];
175
- break;
176
- case 87:$$[$0-1].push($$[$0]);
177
- break;
178
- case 90:this.$ = [];
179
- break;
180
- case 91:$$[$0-1].push($$[$0]);
181
- break;
182
- case 94:this.$ = [];
183
- break;
184
- case 95:$$[$0-1].push($$[$0]);
185
- break;
186
- case 98:this.$ = [$$[$0]];
187
- break;
188
- case 99:$$[$0-1].push($$[$0]);
189
- break;
190
- case 100:this.$ = [$$[$0]];
191
- break;
192
- case 101:$$[$0-1].push($$[$0]);
193
- break;
194
- }
195
- },
196
- table: [{3:1,4:2,5:[2,46],6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{1:[3]},{5:[1,4]},{5:[2,2],7:5,8:6,9:7,10:8,11:9,12:10,13:11,14:[1,12],15:[1,20],16:17,19:[1,23],24:15,27:16,29:[1,21],34:[1,22],39:[2,2],44:[2,2],47:[2,2],48:[1,13],51:[1,14],55:[1,18],59:19,60:[1,24]},{1:[2,1]},{5:[2,47],14:[2,47],15:[2,47],19:[2,47],29:[2,47],34:[2,47],39:[2,47],44:[2,47],47:[2,47],48:[2,47],51:[2,47],55:[2,47],60:[2,47]},{5:[2,3],14:[2,3],15:[2,3],19:[2,3],29:[2,3],34:[2,3],39:[2,3],44:[2,3],47:[2,3],48:[2,3],51:[2,3],55:[2,3],60:[2,3]},{5:[2,4],14:[2,4],15:[2,4],19:[2,4],29:[2,4],34:[2,4],39:[2,4],44:[2,4],47:[2,4],48:[2,4],51:[2,4],55:[2,4],60:[2,4]},{5:[2,5],14:[2,5],15:[2,5],19:[2,5],29:[2,5],34:[2,5],39:[2,5],44:[2,5],47:[2,5],48:[2,5],51:[2,5],55:[2,5],60:[2,5]},{5:[2,6],14:[2,6],15:[2,6],19:[2,6],29:[2,6],34:[2,6],39:[2,6],44:[2,6],47:[2,6],48:[2,6],51:[2,6],55:[2,6],60:[2,6]},{5:[2,7],14:[2,7],15:[2,7],19:[2,7],29:[2,7],34:[2,7],39:[2,7],44:[2,7],47:[2,7],48:[2,7],51:[2,7],55:[2,7],60:[2,7]},{5:[2,8],14:[2,8],15:[2,8],19:[2,8],29:[2,8],34:[2,8],39:[2,8],44:[2,8],47:[2,8],48:[2,8],51:[2,8],55:[2,8],60:[2,8]},{5:[2,9],14:[2,9],15:[2,9],19:[2,9],29:[2,9],34:[2,9],39:[2,9],44:[2,9],47:[2,9],48:[2,9],51:[2,9],55:[2,9],60:[2,9]},{20:25,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:36,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:37,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],39:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{4:38,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{13:40,15:[1,20],17:39},{20:42,56:41,64:43,65:[1,44],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:45,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{5:[2,10],14:[2,10],15:[2,10],18:[2,10],19:[2,10],29:[2,10],34:[2,10],39:[2,10],44:[2,10],47:[2,10],48:[2,10],51:[2,10],55:[2,10],60:[2,10]},{20:46,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:47,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:48,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:42,56:49,64:43,65:[1,44],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[2,78],49:50,65:[2,78],72:[2,78],80:[2,78],81:[2,78],82:[2,78],83:[2,78],84:[2,78],85:[2,78]},{23:[2,33],33:[2,33],54:[2,33],65:[2,33],68:[2,33],72:[2,33],75:[2,33],80:[2,33],81:[2,33],82:[2,33],83:[2,33],84:[2,33],85:[2,33]},{23:[2,34],33:[2,34],54:[2,34],65:[2,34],68:[2,34],72:[2,34],75:[2,34],80:[2,34],81:[2,34],82:[2,34],83:[2,34],84:[2,34],85:[2,34]},{23:[2,35],33:[2,35],54:[2,35],65:[2,35],68:[2,35],72:[2,35],75:[2,35],80:[2,35],81:[2,35],82:[2,35],83:[2,35],84:[2,35],85:[2,35]},{23:[2,36],33:[2,36],54:[2,36],65:[2,36],68:[2,36],72:[2,36],75:[2,36],80:[2,36],81:[2,36],82:[2,36],83:[2,36],84:[2,36],85:[2,36]},{23:[2,37],33:[2,37],54:[2,37],65:[2,37],68:[2,37],72:[2,37],75:[2,37],80:[2,37],81:[2,37],82:[2,37],83:[2,37],84:[2,37],85:[2,37]},{23:[2,38],33:[2,38],54:[2,38],65:[2,38],68:[2,38],72:[2,38],75:[2,38],80:[2,38],81:[2,38],82:[2,38],83:[2,38],84:[2,38],85:[2,38]},{23:[2,39],33:[2,39],54:[2,39],65:[2,39],68:[2,39],72:[2,39],75:[2,39],80:[2,39],81:[2,39],82:[2,39],83:[2,39],84:[2,39],85:[2,39]},{23:[2,43],33:[2,43],54:[2,43],65:[2,43],68:[2,43],72:[2,43],75:[2,43],80:[2,43],81:[2,43],82:[2,43],83:[2,43],84:[2,43],85:[2,43],87:[1,51]},{72:[1,35],86:52},{23:[2,45],33:[2,45],54:[2,45],65:[2,45],68:[2,45],72:[2,45],75:[2,45],80:[2,45],81:[2,45],82:[2,45],83:[2,45],84:[2,45],85:[2,45],87:[2,45]},{52:53,54:[2,82],65:[2,82],72:[2,82],80:[2,82],81:[2,82],82:[2,82],83:[2,82],84:[2,82],85:[2,82]},{25:54,38:56,39:[1,58],43:57,44:[1,59],45:55,47:[2,54]},{28:60,43:61,44:[1,59],47:[2,56]},{13:63,15:[1,20],18:[1,62]},{15:[2,48],18:[2,48]},{33:[2,86],57:64,65:[2,86],72:[2,86],80:[2,86],81:[2,86],82:[2,86],83:[2,86],84:[2,86],85:[2,86]},{33:[2,40],65:[2,40],72:[2,40],80:[2,40],81:[2,40],82:[2,40],83:[2,40],84:[2,40],85:[2,40]},{33:[2,41],65:[2,41],72:[2,41],80:[2,41],81:[2,41],82:[2,41],83:[2,41],84:[2,41],85:[2,41]},{20:65,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{26:66,47:[1,67]},{30:68,33:[2,58],65:[2,58],72:[2,58],75:[2,58],80:[2,58],81:[2,58],82:[2,58],83:[2,58],84:[2,58],85:[2,58]},{33:[2,64],35:69,65:[2,64],72:[2,64],75:[2,64],80:[2,64],81:[2,64],82:[2,64],83:[2,64],84:[2,64],85:[2,64]},{21:70,23:[2,50],65:[2,50],72:[2,50],80:[2,50],81:[2,50],82:[2,50],83:[2,50],84:[2,50],85:[2,50]},{33:[2,90],61:71,65:[2,90],72:[2,90],80:[2,90],81:[2,90],82:[2,90],83:[2,90],84:[2,90],85:[2,90]},{20:75,33:[2,80],50:72,63:73,64:76,65:[1,44],69:74,70:77,71:78,72:[1,79],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{72:[1,80]},{23:[2,42],33:[2,42],54:[2,42],65:[2,42],68:[2,42],72:[2,42],75:[2,42],80:[2,42],81:[2,42],82:[2,42],83:[2,42],84:[2,42],85:[2,42],87:[1,51]},{20:75,53:81,54:[2,84],63:82,64:76,65:[1,44],69:83,70:77,71:78,72:[1,79],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{26:84,47:[1,67]},{47:[2,55]},{4:85,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],39:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{47:[2,20]},{20:86,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:87,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{26:88,47:[1,67]},{47:[2,57]},{5:[2,11],14:[2,11],15:[2,11],19:[2,11],29:[2,11],34:[2,11],39:[2,11],44:[2,11],47:[2,11],48:[2,11],51:[2,11],55:[2,11],60:[2,11]},{15:[2,49],18:[2,49]},{20:75,33:[2,88],58:89,63:90,64:76,65:[1,44],69:91,70:77,71:78,72:[1,79],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{65:[2,94],66:92,68:[2,94],72:[2,94],80:[2,94],81:[2,94],82:[2,94],83:[2,94],84:[2,94],85:[2,94]},{5:[2,25],14:[2,25],15:[2,25],19:[2,25],29:[2,25],34:[2,25],39:[2,25],44:[2,25],47:[2,25],48:[2,25],51:[2,25],55:[2,25],60:[2,25]},{20:93,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:75,31:94,33:[2,60],63:95,64:76,65:[1,44],69:96,70:77,71:78,72:[1,79],75:[2,60],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:75,33:[2,66],36:97,63:98,64:76,65:[1,44],69:99,70:77,71:78,72:[1,79],75:[2,66],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:75,22:100,23:[2,52],63:101,64:76,65:[1,44],69:102,70:77,71:78,72:[1,79],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:75,33:[2,92],62:103,63:104,64:76,65:[1,44],69:105,70:77,71:78,72:[1,79],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[1,106]},{33:[2,79],65:[2,79],72:[2,79],80:[2,79],81:[2,79],82:[2,79],83:[2,79],84:[2,79],85:[2,79]},{33:[2,81]},{23:[2,27],33:[2,27],54:[2,27],65:[2,27],68:[2,27],72:[2,27],75:[2,27],80:[2,27],81:[2,27],82:[2,27],83:[2,27],84:[2,27],85:[2,27]},{23:[2,28],33:[2,28],54:[2,28],65:[2,28],68:[2,28],72:[2,28],75:[2,28],80:[2,28],81:[2,28],82:[2,28],83:[2,28],84:[2,28],85:[2,28]},{23:[2,30],33:[2,30],54:[2,30],68:[2,30],71:107,72:[1,108],75:[2,30]},{23:[2,98],33:[2,98],54:[2,98],68:[2,98],72:[2,98],75:[2,98]},{23:[2,45],33:[2,45],54:[2,45],65:[2,45],68:[2,45],72:[2,45],73:[1,109],75:[2,45],80:[2,45],81:[2,45],82:[2,45],83:[2,45],84:[2,45],85:[2,45],87:[2,45]},{23:[2,44],33:[2,44],54:[2,44],65:[2,44],68:[2,44],72:[2,44],75:[2,44],80:[2,44],81:[2,44],82:[2,44],83:[2,44],84:[2,44],85:[2,44],87:[2,44]},{54:[1,110]},{54:[2,83],65:[2,83],72:[2,83],80:[2,83],81:[2,83],82:[2,83],83:[2,83],84:[2,83],85:[2,83]},{54:[2,85]},{5:[2,13],14:[2,13],15:[2,13],19:[2,13],29:[2,13],34:[2,13],39:[2,13],44:[2,13],47:[2,13],48:[2,13],51:[2,13],55:[2,13],60:[2,13]},{38:56,39:[1,58],43:57,44:[1,59],45:112,46:111,47:[2,76]},{33:[2,70],40:113,65:[2,70],72:[2,70],75:[2,70],80:[2,70],81:[2,70],82:[2,70],83:[2,70],84:[2,70],85:[2,70]},{47:[2,18]},{5:[2,14],14:[2,14],15:[2,14],19:[2,14],29:[2,14],34:[2,14],39:[2,14],44:[2,14],47:[2,14],48:[2,14],51:[2,14],55:[2,14],60:[2,14]},{33:[1,114]},{33:[2,87],65:[2,87],72:[2,87],80:[2,87],81:[2,87],82:[2,87],83:[2,87],84:[2,87],85:[2,87]},{33:[2,89]},{20:75,63:116,64:76,65:[1,44],67:115,68:[2,96],69:117,70:77,71:78,72:[1,79],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[1,118]},{32:119,33:[2,62],74:120,75:[1,121]},{33:[2,59],65:[2,59],72:[2,59],75:[2,59],80:[2,59],81:[2,59],82:[2,59],83:[2,59],84:[2,59],85:[2,59]},{33:[2,61],75:[2,61]},{33:[2,68],37:122,74:123,75:[1,121]},{33:[2,65],65:[2,65],72:[2,65],75:[2,65],80:[2,65],81:[2,65],82:[2,65],83:[2,65],84:[2,65],85:[2,65]},{33:[2,67],75:[2,67]},{23:[1,124]},{23:[2,51],65:[2,51],72:[2,51],80:[2,51],81:[2,51],82:[2,51],83:[2,51],84:[2,51],85:[2,51]},{23:[2,53]},{33:[1,125]},{33:[2,91],65:[2,91],72:[2,91],80:[2,91],81:[2,91],82:[2,91],83:[2,91],84:[2,91],85:[2,91]},{33:[2,93]},{5:[2,22],14:[2,22],15:[2,22],19:[2,22],29:[2,22],34:[2,22],39:[2,22],44:[2,22],47:[2,22],48:[2,22],51:[2,22],55:[2,22],60:[2,22]},{23:[2,99],33:[2,99],54:[2,99],68:[2,99],72:[2,99],75:[2,99]},{73:[1,109]},{20:75,63:126,64:76,65:[1,44],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{5:[2,23],14:[2,23],15:[2,23],19:[2,23],29:[2,23],34:[2,23],39:[2,23],44:[2,23],47:[2,23],48:[2,23],51:[2,23],55:[2,23],60:[2,23]},{47:[2,19]},{47:[2,77]},{20:75,33:[2,72],41:127,63:128,64:76,65:[1,44],69:129,70:77,71:78,72:[1,79],75:[2,72],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{5:[2,24],14:[2,24],15:[2,24],19:[2,24],29:[2,24],34:[2,24],39:[2,24],44:[2,24],47:[2,24],48:[2,24],51:[2,24],55:[2,24],60:[2,24]},{68:[1,130]},{65:[2,95],68:[2,95],72:[2,95],80:[2,95],81:[2,95],82:[2,95],83:[2,95],84:[2,95],85:[2,95]},{68:[2,97]},{5:[2,21],14:[2,21],15:[2,21],19:[2,21],29:[2,21],34:[2,21],39:[2,21],44:[2,21],47:[2,21],48:[2,21],51:[2,21],55:[2,21],60:[2,21]},{33:[1,131]},{33:[2,63]},{72:[1,133],76:132},{33:[1,134]},{33:[2,69]},{15:[2,12]},{14:[2,26],15:[2,26],19:[2,26],29:[2,26],34:[2,26],47:[2,26],48:[2,26],51:[2,26],55:[2,26],60:[2,26]},{23:[2,31],33:[2,31],54:[2,31],68:[2,31],72:[2,31],75:[2,31]},{33:[2,74],42:135,74:136,75:[1,121]},{33:[2,71],65:[2,71],72:[2,71],75:[2,71],80:[2,71],81:[2,71],82:[2,71],83:[2,71],84:[2,71],85:[2,71]},{33:[2,73],75:[2,73]},{23:[2,29],33:[2,29],54:[2,29],65:[2,29],68:[2,29],72:[2,29],75:[2,29],80:[2,29],81:[2,29],82:[2,29],83:[2,29],84:[2,29],85:[2,29]},{14:[2,15],15:[2,15],19:[2,15],29:[2,15],34:[2,15],39:[2,15],44:[2,15],47:[2,15],48:[2,15],51:[2,15],55:[2,15],60:[2,15]},{72:[1,138],77:[1,137]},{72:[2,100],77:[2,100]},{14:[2,16],15:[2,16],19:[2,16],29:[2,16],34:[2,16],44:[2,16],47:[2,16],48:[2,16],51:[2,16],55:[2,16],60:[2,16]},{33:[1,139]},{33:[2,75]},{33:[2,32]},{72:[2,101],77:[2,101]},{14:[2,17],15:[2,17],19:[2,17],29:[2,17],34:[2,17],39:[2,17],44:[2,17],47:[2,17],48:[2,17],51:[2,17],55:[2,17],60:[2,17]}],
197
- defaultActions: {4:[2,1],55:[2,55],57:[2,20],61:[2,57],74:[2,81],83:[2,85],87:[2,18],91:[2,89],102:[2,53],105:[2,93],111:[2,19],112:[2,77],117:[2,97],120:[2,63],123:[2,69],124:[2,12],136:[2,75],137:[2,32]},
198
- parseError: function parseError(str, hash) {
199
- throw new Error(str);
200
- },
201
- parse: function parse(input) {
202
- var self = this, stack = [0], vstack = [null], lstack = [], table = this.table, yytext = "", yylineno = 0, yyleng = 0, recovering = 0;
203
- this.lexer.setInput(input);
204
- this.lexer.yy = this.yy;
205
- this.yy.lexer = this.lexer;
206
- this.yy.parser = this;
207
- if (typeof this.lexer.yylloc == "undefined")
208
- this.lexer.yylloc = {};
209
- var yyloc = this.lexer.yylloc;
210
- lstack.push(yyloc);
211
- var ranges = this.lexer.options && this.lexer.options.ranges;
212
- if (typeof this.yy.parseError === "function")
213
- this.parseError = this.yy.parseError;
214
- function lex() {
215
- var token;
216
- token = self.lexer.lex() || 1;
217
- if (typeof token !== "number") {
218
- token = self.symbols_[token] || token;
219
- }
220
- return token;
221
- }
222
- var symbol, preErrorSymbol, state, action, r, yyval = {}, p, len, newState, expected;
223
- while (true) {
224
- state = stack[stack.length - 1];
225
- if (this.defaultActions[state]) {
226
- action = this.defaultActions[state];
227
- } else {
228
- if (symbol === null || typeof symbol == "undefined") {
229
- symbol = lex();
230
- }
231
- action = table[state] && table[state][symbol];
232
- }
233
- if (typeof action === "undefined" || !action.length || !action[0]) {
234
- var errStr = "";
235
- if (!recovering) {
236
- expected = [];
237
- for (p in table[state])
238
- if (this.terminals_[p] && p > 2) {
239
- expected.push("'" + this.terminals_[p] + "'");
240
- }
241
- if (this.lexer.showPosition) {
242
- errStr = "Parse error on line " + (yylineno + 1) + ":\n" + this.lexer.showPosition() + "\nExpecting " + expected.join(", ") + ", got '" + (this.terminals_[symbol] || symbol) + "'";
243
- } else {
244
- errStr = "Parse error on line " + (yylineno + 1) + ": Unexpected " + (symbol == 1?"end of input":"'" + (this.terminals_[symbol] || symbol) + "'");
245
- }
246
- this.parseError(errStr, {text: this.lexer.match, token: this.terminals_[symbol] || symbol, line: this.lexer.yylineno, loc: yyloc, expected: expected});
247
- }
248
- }
249
- if (action[0] instanceof Array && action.length > 1) {
250
- throw new Error("Parse Error: multiple actions possible at state: " + state + ", token: " + symbol);
251
- }
252
- switch (action[0]) {
253
- case 1:
254
- stack.push(symbol);
255
- vstack.push(this.lexer.yytext);
256
- lstack.push(this.lexer.yylloc);
257
- stack.push(action[1]);
258
- symbol = null;
259
- if (!preErrorSymbol) {
260
- yyleng = this.lexer.yyleng;
261
- yytext = this.lexer.yytext;
262
- yylineno = this.lexer.yylineno;
263
- yyloc = this.lexer.yylloc;
264
- if (recovering > 0)
265
- recovering--;
266
- } else {
267
- symbol = preErrorSymbol;
268
- preErrorSymbol = null;
269
- }
270
- break;
271
- case 2:
272
- len = this.productions_[action[1]][1];
273
- yyval.$ = vstack[vstack.length - len];
274
- yyval._$ = {first_line: lstack[lstack.length - (len || 1)].first_line, last_line: lstack[lstack.length - 1].last_line, first_column: lstack[lstack.length - (len || 1)].first_column, last_column: lstack[lstack.length - 1].last_column};
275
- if (ranges) {
276
- yyval._$.range = [lstack[lstack.length - (len || 1)].range[0], lstack[lstack.length - 1].range[1]];
277
- }
278
- r = this.performAction.call(yyval, yytext, yyleng, yylineno, this.yy, action[1], vstack, lstack);
279
- if (typeof r !== "undefined") {
280
- return r;
281
- }
282
- if (len) {
283
- stack = stack.slice(0, -1 * len * 2);
284
- vstack = vstack.slice(0, -1 * len);
285
- lstack = lstack.slice(0, -1 * len);
286
- }
287
- stack.push(this.productions_[action[1]][0]);
288
- vstack.push(yyval.$);
289
- lstack.push(yyval._$);
290
- newState = table[stack[stack.length - 2]][stack[stack.length - 1]];
291
- stack.push(newState);
292
- break;
293
- case 3:
294
- return true;
295
- }
296
- }
297
- return true;
298
- }
299
- };
300
- /* Jison generated lexer */
301
- var lexer = (function(){
302
- var lexer = ({EOF:1,
303
- parseError:function parseError(str, hash) {
304
- if (this.yy.parser) {
305
- this.yy.parser.parseError(str, hash);
306
- } else {
307
- throw new Error(str);
308
- }
309
- },
310
- setInput:function (input) {
311
- this._input = input;
312
- this._more = this._less = this.done = false;
313
- this.yylineno = this.yyleng = 0;
314
- this.yytext = this.matched = this.match = '';
315
- this.conditionStack = ['INITIAL'];
316
- this.yylloc = {first_line:1,first_column:0,last_line:1,last_column:0};
317
- if (this.options.ranges) this.yylloc.range = [0,0];
318
- this.offset = 0;
319
- return this;
320
- },
321
- input:function () {
322
- var ch = this._input[0];
323
- this.yytext += ch;
324
- this.yyleng++;
325
- this.offset++;
326
- this.match += ch;
327
- this.matched += ch;
328
- var lines = ch.match(/(?:\r\n?|\n).*/g);
329
- if (lines) {
330
- this.yylineno++;
331
- this.yylloc.last_line++;
332
- } else {
333
- this.yylloc.last_column++;
334
- }
335
- if (this.options.ranges) this.yylloc.range[1]++;
336
-
337
- this._input = this._input.slice(1);
338
- return ch;
339
- },
340
- unput:function (ch) {
341
- var len = ch.length;
342
- var lines = ch.split(/(?:\r\n?|\n)/g);
343
-
344
- this._input = ch + this._input;
345
- this.yytext = this.yytext.substr(0, this.yytext.length-len-1);
346
- //this.yyleng -= len;
347
- this.offset -= len;
348
- var oldLines = this.match.split(/(?:\r\n?|\n)/g);
349
- this.match = this.match.substr(0, this.match.length-1);
350
- this.matched = this.matched.substr(0, this.matched.length-1);
351
-
352
- if (lines.length-1) this.yylineno -= lines.length-1;
353
- var r = this.yylloc.range;
354
-
355
- this.yylloc = {first_line: this.yylloc.first_line,
356
- last_line: this.yylineno+1,
357
- first_column: this.yylloc.first_column,
358
- last_column: lines ?
359
- (lines.length === oldLines.length ? this.yylloc.first_column : 0) + oldLines[oldLines.length - lines.length].length - lines[0].length:
360
- this.yylloc.first_column - len
361
- };
362
-
363
- if (this.options.ranges) {
364
- this.yylloc.range = [r[0], r[0] + this.yyleng - len];
365
- }
366
- return this;
367
- },
368
- more:function () {
369
- this._more = true;
370
- return this;
371
- },
372
- less:function (n) {
373
- this.unput(this.match.slice(n));
374
- },
375
- pastInput:function () {
376
- var past = this.matched.substr(0, this.matched.length - this.match.length);
377
- return (past.length > 20 ? '...':'') + past.substr(-20).replace(/\n/g, "");
378
- },
379
- upcomingInput:function () {
380
- var next = this.match;
381
- if (next.length < 20) {
382
- next += this._input.substr(0, 20-next.length);
383
- }
384
- return (next.substr(0,20)+(next.length > 20 ? '...':'')).replace(/\n/g, "");
385
- },
386
- showPosition:function () {
387
- var pre = this.pastInput();
388
- var c = new Array(pre.length + 1).join("-");
389
- return pre + this.upcomingInput() + "\n" + c+"^";
390
- },
391
- next:function () {
392
- if (this.done) {
393
- return this.EOF;
394
- }
395
- if (!this._input) this.done = true;
396
-
397
- var token,
398
- match,
399
- tempMatch,
400
- index,
401
- lines;
402
- if (!this._more) {
403
- this.yytext = '';
404
- this.match = '';
405
- }
406
- var rules = this._currentRules();
407
- for (var i=0;i < rules.length; i++) {
408
- tempMatch = this._input.match(this.rules[rules[i]]);
409
- if (tempMatch && (!match || tempMatch[0].length > match[0].length)) {
410
- match = tempMatch;
411
- index = i;
412
- if (!this.options.flex) break;
413
- }
414
- }
415
- if (match) {
416
- lines = match[0].match(/(?:\r\n?|\n).*/g);
417
- if (lines) this.yylineno += lines.length;
418
- this.yylloc = {first_line: this.yylloc.last_line,
419
- last_line: this.yylineno+1,
420
- first_column: this.yylloc.last_column,
421
- last_column: lines ? lines[lines.length-1].length-lines[lines.length-1].match(/\r?\n?/)[0].length : this.yylloc.last_column + match[0].length};
422
- this.yytext += match[0];
423
- this.match += match[0];
424
- this.matches = match;
425
- this.yyleng = this.yytext.length;
426
- if (this.options.ranges) {
427
- this.yylloc.range = [this.offset, this.offset += this.yyleng];
428
- }
429
- this._more = false;
430
- this._input = this._input.slice(match[0].length);
431
- this.matched += match[0];
432
- token = this.performAction.call(this, this.yy, this, rules[index],this.conditionStack[this.conditionStack.length-1]);
433
- if (this.done && this._input) this.done = false;
434
- if (token) return token;
435
- else return;
436
- }
437
- if (this._input === "") {
438
- return this.EOF;
439
- } else {
440
- return this.parseError('Lexical error on line '+(this.yylineno+1)+'. Unrecognized text.\n'+this.showPosition(),
441
- {text: "", token: null, line: this.yylineno});
442
- }
443
- },
444
- lex:function lex() {
445
- var r = this.next();
446
- if (typeof r !== 'undefined') {
447
- return r;
448
- } else {
449
- return this.lex();
450
- }
451
- },
452
- begin:function begin(condition) {
453
- this.conditionStack.push(condition);
454
- },
455
- popState:function popState() {
456
- return this.conditionStack.pop();
457
- },
458
- _currentRules:function _currentRules() {
459
- return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;
460
- },
461
- topState:function () {
462
- return this.conditionStack[this.conditionStack.length-2];
463
- },
464
- pushState:function begin(condition) {
465
- this.begin(condition);
466
- }});
467
- lexer.options = {};
468
- lexer.performAction = function anonymous(yy,yy_,$avoiding_name_collisions,YY_START
469
- /**/) {
470
-
471
-
472
- function strip(start, end) {
473
- return yy_.yytext = yy_.yytext.substr(start, yy_.yyleng-end);
474
- }
475
- switch($avoiding_name_collisions) {
476
- case 0:
477
- if(yy_.yytext.slice(-2) === "\\\\") {
478
- strip(0,1);
479
- this.begin("mu");
480
- } else if(yy_.yytext.slice(-1) === "\\") {
481
- strip(0,1);
482
- this.begin("emu");
483
- } else {
484
- this.begin("mu");
485
- }
486
- if(yy_.yytext) return 15;
487
-
488
- break;
489
- case 1:return 15;
490
- break;
491
- case 2:
492
- this.popState();
493
- return 15;
494
-
495
- break;
496
- case 3:this.begin('raw'); return 15;
497
- break;
498
- case 4:
499
- this.popState();
500
- // Should be using `this.topState()` below, but it currently
501
- // returns the second top instead of the first top. Opened an
502
- // issue about it at https://github.com/zaach/jison/issues/291
503
- if (this.conditionStack[this.conditionStack.length-1] === 'raw') {
504
- return 15;
505
- } else {
506
- yy_.yytext = yy_.yytext.substr(5, yy_.yyleng-9);
507
- return 'END_RAW_BLOCK';
508
- }
509
-
510
- break;
511
- case 5: return 15;
512
- break;
513
- case 6:
514
- this.popState();
515
- return 14;
516
-
517
- break;
518
- case 7:return 65;
519
- break;
520
- case 8:return 68;
521
- break;
522
- case 9: return 19;
523
- break;
524
- case 10:
525
- this.popState();
526
- this.begin('raw');
527
- return 23;
528
-
529
- break;
530
- case 11:return 55;
531
- break;
532
- case 12:return 60;
533
- break;
534
- case 13:return 29;
535
- break;
536
- case 14:return 47;
537
- break;
538
- case 15:this.popState(); return 44;
539
- break;
540
- case 16:this.popState(); return 44;
541
- break;
542
- case 17:return 34;
543
- break;
544
- case 18:return 39;
545
- break;
546
- case 19:return 51;
547
- break;
548
- case 20:return 48;
549
- break;
550
- case 21:
551
- this.unput(yy_.yytext);
552
- this.popState();
553
- this.begin('com');
554
-
555
- break;
556
- case 22:
557
- this.popState();
558
- return 14;
559
-
560
- break;
561
- case 23:return 48;
562
- break;
563
- case 24:return 73;
564
- break;
565
- case 25:return 72;
566
- break;
567
- case 26:return 72;
568
- break;
569
- case 27:return 87;
570
- break;
571
- case 28:// ignore whitespace
572
- break;
573
- case 29:this.popState(); return 54;
574
- break;
575
- case 30:this.popState(); return 33;
576
- break;
577
- case 31:yy_.yytext = strip(1,2).replace(/\\"/g,'"'); return 80;
578
- break;
579
- case 32:yy_.yytext = strip(1,2).replace(/\\'/g,"'"); return 80;
580
- break;
581
- case 33:return 85;
582
- break;
583
- case 34:return 82;
584
- break;
585
- case 35:return 82;
586
- break;
587
- case 36:return 83;
588
- break;
589
- case 37:return 84;
590
- break;
591
- case 38:return 81;
592
- break;
593
- case 39:return 75;
594
- break;
595
- case 40:return 77;
596
- break;
597
- case 41:return 72;
598
- break;
599
- case 42:yy_.yytext = yy_.yytext.replace(/\\([\\\]])/g,'$1'); return 72;
600
- break;
601
- case 43:return 'INVALID';
602
- break;
603
- case 44:return 5;
604
- break;
605
- }
606
- };
607
- lexer.rules = [/^(?:[^\x00]*?(?=(\{\{)))/,/^(?:[^\x00]+)/,/^(?:[^\x00]{2,}?(?=(\{\{|\\\{\{|\\\\\{\{|$)))/,/^(?:\{\{\{\{(?=[^\/]))/,/^(?:\{\{\{\{\/[^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=[=}\s\/.])\}\}\}\})/,/^(?:[^\x00]*?(?=(\{\{\{\{)))/,/^(?:[\s\S]*?--(~)?\}\})/,/^(?:\()/,/^(?:\))/,/^(?:\{\{\{\{)/,/^(?:\}\}\}\})/,/^(?:\{\{(~)?>)/,/^(?:\{\{(~)?#>)/,/^(?:\{\{(~)?#\*?)/,/^(?:\{\{(~)?\/)/,/^(?:\{\{(~)?\^\s*(~)?\}\})/,/^(?:\{\{(~)?\s*else\s*(~)?\}\})/,/^(?:\{\{(~)?\^)/,/^(?:\{\{(~)?\s*else\b)/,/^(?:\{\{(~)?\{)/,/^(?:\{\{(~)?&)/,/^(?:\{\{(~)?!--)/,/^(?:\{\{(~)?![\s\S]*?\}\})/,/^(?:\{\{(~)?\*?)/,/^(?:=)/,/^(?:\.\.)/,/^(?:\.(?=([=~}\s\/.)|])))/,/^(?:[\/.])/,/^(?:\s+)/,/^(?:\}(~)?\}\})/,/^(?:(~)?\}\})/,/^(?:"(\\["]|[^"])*")/,/^(?:'(\\[']|[^'])*')/,/^(?:@)/,/^(?:true(?=([~}\s)])))/,/^(?:false(?=([~}\s)])))/,/^(?:undefined(?=([~}\s)])))/,/^(?:null(?=([~}\s)])))/,/^(?:-?[0-9]+(?:\.[0-9]+)?(?=([~}\s)])))/,/^(?:as\s+\|)/,/^(?:\|)/,/^(?:([^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=([=~}\s\/.)|]))))/,/^(?:\[(\\\]|[^\]])*\])/,/^(?:.)/,/^(?:$)/];
608
- lexer.conditions = {"mu":{"rules":[7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44],"inclusive":false},"emu":{"rules":[2],"inclusive":false},"com":{"rules":[6],"inclusive":false},"raw":{"rules":[3,4,5],"inclusive":false},"INITIAL":{"rules":[0,1,44],"inclusive":true}};
609
- return lexer;})();
610
- parser.lexer = lexer;
611
- function Parser () { this.yy = {}; }Parser.prototype = parser;parser.Parser = Parser;
612
- return new Parser;
613
- })();
614
-
615
- const errorProps = ['description', 'fileName', 'lineNumber', 'message', 'name', 'number', 'stack'];
616
-
617
- function Exception(message, node) {
618
- let loc = node && node.loc,
619
- line,
620
- column;
621
- if (loc) {
622
- line = loc.start.line;
623
- column = loc.start.column;
624
-
625
- message += ' - ' + line + ':' + column;
626
- }
627
-
628
- let tmp = Error.prototype.constructor.call(this, message);
629
-
630
- // Unfortunately errors are not enumerable in Chrome (at least), so `for prop in tmp` doesn't work.
631
- for (let idx = 0; idx < errorProps.length; idx++) {
632
- this[errorProps[idx]] = tmp[errorProps[idx]];
633
- }
634
-
635
- /* istanbul ignore else */
636
- if (Error.captureStackTrace) {
637
- Error.captureStackTrace(this, Exception);
638
- }
639
-
640
- try {
641
- if (loc) {
642
- this.lineNumber = line;
643
-
644
- // Work around issue under safari where we can't directly set the column value
645
- /* istanbul ignore next */
646
- if (Object.defineProperty) {
647
- Object.defineProperty(this, 'column', {
648
- value: column,
649
- enumerable: true
650
- });
651
- } else {
652
- this.column = column;
653
- }
654
- }
655
- } catch (nop) {
656
- /* Ignore if the browser is very particular */
657
- }
658
- }
659
-
660
- Exception.prototype = new Error();
661
-
662
- function Visitor() {
663
- this.parents = [];
664
- }
665
-
666
- Visitor.prototype = {
667
- constructor: Visitor,
668
- mutating: false,
669
-
670
- // Visits a given value. If mutating, will replace the value if necessary.
671
- acceptKey: function(node, name) {
672
- let value = this.accept(node[name]);
673
- if (this.mutating) {
674
- // Hacky sanity check: This may have a few false positives for type for the helper
675
- // methods but will generally do the right thing without a lot of overhead.
676
- if (value && !Visitor.prototype[value.type]) {
677
- throw new Exception('Unexpected node type "' + value.type + '" found when accepting ' + name + ' on ' + node.type);
678
- }
679
- node[name] = value;
680
- }
681
- },
682
-
683
- // Performs an accept operation with added sanity check to ensure
684
- // required keys are not removed.
685
- acceptRequired: function(node, name) {
686
- this.acceptKey(node, name);
687
-
688
- if (!node[name]) {
689
- throw new Exception(node.type + ' requires ' + name);
690
- }
691
- },
692
-
693
- // Traverses a given array. If mutating, empty respnses will be removed
694
- // for child elements.
695
- acceptArray: function(array) {
696
- for (let i = 0, l = array.length; i < l; i++) {
697
- this.acceptKey(array, i);
698
-
699
- if (!array[i]) {
700
- array.splice(i, 1);
701
- i--;
702
- l--;
703
- }
704
- }
705
- },
706
-
707
- accept: function(object) {
708
- if (!object) {
709
- return;
710
- }
711
-
712
- /* istanbul ignore next: Sanity code */
713
- if (!this[object.type]) {
714
- throw new Exception('Unknown type: ' + object.type, object);
715
- }
716
-
717
- if (this.current) {
718
- this.parents.unshift(this.current);
719
- }
720
- this.current = object;
721
-
722
- let ret = this[object.type](object);
723
-
724
- this.current = this.parents.shift();
725
-
726
- if (!this.mutating || ret) {
727
- return ret;
728
- } else if (ret !== false) {
729
- return object;
730
- }
731
- },
732
-
733
- Program: function(program) {
734
- this.acceptArray(program.body);
735
- },
736
-
737
- MustacheStatement: visitSubExpression,
738
- Decorator: visitSubExpression,
739
-
740
- BlockStatement: visitBlock,
741
- DecoratorBlock: visitBlock,
742
-
743
- PartialStatement: visitPartial,
744
- PartialBlockStatement: function(partial) {
745
- visitPartial.call(this, partial);
746
-
747
- this.acceptKey(partial, 'program');
748
- },
749
-
750
- ContentStatement: function(/* content */) {},
751
- CommentStatement: function(/* comment */) {},
752
-
753
- SubExpression: visitSubExpression,
754
-
755
- PathExpression: function(/* path */) {},
756
-
757
- StringLiteral: function(/* string */) {},
758
- NumberLiteral: function(/* number */) {},
759
- BooleanLiteral: function(/* bool */) {},
760
- UndefinedLiteral: function(/* literal */) {},
761
- NullLiteral: function(/* literal */) {},
762
-
763
- Hash: function(hash) {
764
- this.acceptArray(hash.pairs);
765
- },
766
- HashPair: function(pair) {
767
- this.acceptRequired(pair, 'value');
768
- }
769
- };
770
-
771
- function visitSubExpression(mustache) {
772
- this.acceptRequired(mustache, 'path');
773
- this.acceptArray(mustache.params);
774
- this.acceptKey(mustache, 'hash');
775
- }
776
- function visitBlock(block) {
777
- visitSubExpression.call(this, block);
778
-
779
- this.acceptKey(block, 'program');
780
- this.acceptKey(block, 'inverse');
781
- }
782
- function visitPartial(partial) {
783
- this.acceptRequired(partial, 'name');
784
- this.acceptArray(partial.params);
785
- this.acceptKey(partial, 'hash');
786
- }
787
-
788
- function WhitespaceControl(options = {}) {
789
- this.options = options;
790
- }
791
- WhitespaceControl.prototype = new Visitor();
792
-
793
- WhitespaceControl.prototype.Program = function(program) {
794
- const doStandalone = !this.options.ignoreStandalone;
795
-
796
- let isRoot = !this.isRootSeen;
797
- this.isRootSeen = true;
798
-
799
- let body = program.body;
800
- for (let i = 0, l = body.length; i < l; i++) {
801
- let current = body[i],
802
- strip = this.accept(current);
803
-
804
- if (!strip) {
805
- continue;
806
- }
807
-
808
- let _isPrevWhitespace = isPrevWhitespace(body, i, isRoot),
809
- _isNextWhitespace = isNextWhitespace(body, i, isRoot),
810
-
811
- openStandalone = strip.openStandalone && _isPrevWhitespace,
812
- closeStandalone = strip.closeStandalone && _isNextWhitespace,
813
- inlineStandalone = strip.inlineStandalone && _isPrevWhitespace && _isNextWhitespace;
814
-
815
- if (strip.close) {
816
- omitRight(body, i, true);
817
- }
818
- if (strip.open) {
819
- omitLeft(body, i, true);
820
- }
821
-
822
- if (doStandalone && inlineStandalone) {
823
- omitRight(body, i);
824
-
825
- if (omitLeft(body, i)) {
826
- // If we are on a standalone node, save the indent info for partials
827
- if (current.type === 'PartialStatement') {
828
- // Pull out the whitespace from the final line
829
- current.indent = (/([ \t]+$)/).exec(body[i - 1].original)[1];
830
- }
831
- }
832
- }
833
- if (doStandalone && openStandalone) {
834
- omitRight((current.program || current.inverse).body);
835
-
836
- // Strip out the previous content node if it's whitespace only
837
- omitLeft(body, i);
838
- }
839
- if (doStandalone && closeStandalone) {
840
- // Always strip the next node
841
- omitRight(body, i);
842
-
843
- omitLeft((current.inverse || current.program).body);
844
- }
845
- }
846
-
847
- return program;
848
- };
849
-
850
- WhitespaceControl.prototype.BlockStatement =
851
- WhitespaceControl.prototype.DecoratorBlock =
852
- WhitespaceControl.prototype.PartialBlockStatement = function(block) {
853
- this.accept(block.program);
854
- this.accept(block.inverse);
855
-
856
- // Find the inverse program that is involed with whitespace stripping.
857
- let program = block.program || block.inverse,
858
- inverse = block.program && block.inverse,
859
- firstInverse = inverse,
860
- lastInverse = inverse;
861
-
862
- if (inverse && inverse.chained) {
863
- firstInverse = inverse.body[0].program;
864
-
865
- // Walk the inverse chain to find the last inverse that is actually in the chain.
866
- while (lastInverse.chained) {
867
- lastInverse = lastInverse.body[lastInverse.body.length - 1].program;
868
- }
869
- }
870
-
871
- let strip = {
872
- open: block.openStrip.open,
873
- close: block.closeStrip.close,
874
-
875
- // Determine the standalone candiacy. Basically flag our content as being possibly standalone
876
- // so our parent can determine if we actually are standalone
877
- openStandalone: isNextWhitespace(program.body),
878
- closeStandalone: isPrevWhitespace((firstInverse || program).body)
879
- };
880
-
881
- if (block.openStrip.close) {
882
- omitRight(program.body, null, true);
883
- }
884
-
885
- if (inverse) {
886
- let inverseStrip = block.inverseStrip;
887
-
888
- if (inverseStrip.open) {
889
- omitLeft(program.body, null, true);
890
- }
891
-
892
- if (inverseStrip.close) {
893
- omitRight(firstInverse.body, null, true);
894
- }
895
- if (block.closeStrip.open) {
896
- omitLeft(lastInverse.body, null, true);
897
- }
898
-
899
- // Find standalone else statments
900
- if (!this.options.ignoreStandalone
901
- && isPrevWhitespace(program.body)
902
- && isNextWhitespace(firstInverse.body)) {
903
- omitLeft(program.body);
904
- omitRight(firstInverse.body);
905
- }
906
- } else if (block.closeStrip.open) {
907
- omitLeft(program.body, null, true);
908
- }
909
-
910
- return strip;
911
- };
912
-
913
- WhitespaceControl.prototype.Decorator =
914
- WhitespaceControl.prototype.MustacheStatement = function(mustache) {
915
- return mustache.strip;
916
- };
917
-
918
- WhitespaceControl.prototype.PartialStatement =
919
- WhitespaceControl.prototype.CommentStatement = function(node) {
920
- /* istanbul ignore next */
921
- let strip = node.strip || {};
922
- return {
923
- inlineStandalone: true,
924
- open: strip.open,
925
- close: strip.close
926
- };
927
- };
928
-
929
-
930
- function isPrevWhitespace(body, i, isRoot) {
931
- if (i === undefined) {
932
- i = body.length;
933
- }
934
-
935
- // Nodes that end with newlines are considered whitespace (but are special
936
- // cased for strip operations)
937
- let prev = body[i - 1],
938
- sibling = body[i - 2];
939
- if (!prev) {
940
- return isRoot;
941
- }
942
-
943
- if (prev.type === 'ContentStatement') {
944
- return (sibling || !isRoot ? (/\r?\n\s*?$/) : (/(^|\r?\n)\s*?$/)).test(prev.original);
945
- }
946
- }
947
- function isNextWhitespace(body, i, isRoot) {
948
- if (i === undefined) {
949
- i = -1;
950
- }
951
-
952
- let next = body[i + 1],
953
- sibling = body[i + 2];
954
- if (!next) {
955
- return isRoot;
956
- }
957
-
958
- if (next.type === 'ContentStatement') {
959
- return (sibling || !isRoot ? (/^\s*?\r?\n/) : (/^\s*?(\r?\n|$)/)).test(next.original);
960
- }
961
- }
962
-
963
- // Marks the node to the right of the position as omitted.
964
- // I.e. {{foo}}' ' will mark the ' ' node as omitted.
965
- //
966
- // If i is undefined, then the first child will be marked as such.
967
- //
968
- // If mulitple is truthy then all whitespace will be stripped out until non-whitespace
969
- // content is met.
970
- function omitRight(body, i, multiple) {
971
- let current = body[i == null ? 0 : i + 1];
972
- if (!current || current.type !== 'ContentStatement' || (!multiple && current.rightStripped)) {
973
- return;
974
- }
975
-
976
- let original = current.value;
977
- current.value = current.value.replace(multiple ? (/^\s+/) : (/^[ \t]*\r?\n?/), '');
978
- current.rightStripped = current.value !== original;
979
- }
980
-
981
- // Marks the node to the left of the position as omitted.
982
- // I.e. ' '{{foo}} will mark the ' ' node as omitted.
983
- //
984
- // If i is undefined then the last child will be marked as such.
985
- //
986
- // If mulitple is truthy then all whitespace will be stripped out until non-whitespace
987
- // content is met.
988
- function omitLeft(body, i, multiple) {
989
- let current = body[i == null ? body.length - 1 : i - 1];
990
- if (!current || current.type !== 'ContentStatement' || (!multiple && current.leftStripped)) {
991
- return;
992
- }
993
-
994
- // We omit the last node if it's whitespace only and not preceeded by a non-content node.
995
- let original = current.value;
996
- current.value = current.value.replace(multiple ? (/\s+$/) : (/[ \t]+$/), '');
997
- current.leftStripped = current.value !== original;
998
- return current.leftStripped;
999
- }
1000
-
1001
- function validateClose(open, close) {
1002
- close = close.path ? close.path.original : close;
1003
-
1004
- if (open.path.original !== close) {
1005
- let errorNode = {loc: open.path.loc};
1006
-
1007
- throw new Exception(open.path.original + " doesn't match " + close, errorNode);
1008
- }
1009
- }
1010
-
1011
- function SourceLocation(source, locInfo) {
1012
- this.source = source;
1013
- this.start = {
1014
- line: locInfo.first_line,
1015
- column: locInfo.first_column
1016
- };
1017
- this.end = {
1018
- line: locInfo.last_line,
1019
- column: locInfo.last_column
1020
- };
1021
- }
1022
-
1023
- function id(token) {
1024
- if (/^\[.*\]$/.test(token)) {
1025
- return token.substr(1, token.length - 2);
1026
- } else {
1027
- return token;
1028
- }
1029
- }
1030
-
1031
- function stripFlags(open, close) {
1032
- return {
1033
- open: open.charAt(2) === '~',
1034
- close: close.charAt(close.length - 3) === '~'
1035
- };
1036
- }
1037
-
1038
- function stripComment(comment) {
1039
- return comment.replace(/^\{\{~?\!-?-?/, '')
1040
- .replace(/-?-?~?\}\}$/, '');
1041
- }
1042
-
1043
- function preparePath(data, parts, loc) {
1044
- loc = this.locInfo(loc);
1045
-
1046
- let original = data ? '@' : '',
1047
- dig = [],
1048
- depth = 0;
1049
-
1050
- for (let i = 0, l = parts.length; i < l; i++) {
1051
- let part = parts[i].part,
1052
- // If we have [] syntax then we do not treat path references as operators,
1053
- // i.e. foo.[this] resolves to approximately context.foo['this']
1054
- isLiteral = parts[i].original !== part;
1055
- original += (parts[i].separator || '') + part;
1056
-
1057
- if (!isLiteral && (part === '..' || part === '.' || part === 'this')) {
1058
- if (dig.length > 0) {
1059
- throw new Exception('Invalid path: ' + original, {loc});
1060
- } else if (part === '..') {
1061
- depth++;
1062
- }
1063
- } else {
1064
- dig.push(part);
1065
- }
1066
- }
1067
-
1068
- return {
1069
- type: 'PathExpression',
1070
- data,
1071
- depth,
1072
- parts: dig,
1073
- original,
1074
- loc
1075
- };
1076
- }
1077
-
1078
- function prepareMustache(path, params, hash, open, strip, locInfo) {
1079
- // Must use charAt to support IE pre-10
1080
- let escapeFlag = open.charAt(3) || open.charAt(2),
1081
- escaped = escapeFlag !== '{' && escapeFlag !== '&';
1082
-
1083
- let decorator = (/\*/.test(open));
1084
- return {
1085
- type: decorator ? 'Decorator' : 'MustacheStatement',
1086
- path,
1087
- params,
1088
- hash,
1089
- escaped,
1090
- strip,
1091
- loc: this.locInfo(locInfo)
1092
- };
1093
- }
1094
-
1095
- function prepareRawBlock(openRawBlock, contents, close, locInfo) {
1096
- validateClose(openRawBlock, close);
1097
-
1098
- locInfo = this.locInfo(locInfo);
1099
- let program = {
1100
- type: 'Program',
1101
- body: contents,
1102
- strip: {},
1103
- loc: locInfo
1104
- };
1105
-
1106
- return {
1107
- type: 'BlockStatement',
1108
- path: openRawBlock.path,
1109
- params: openRawBlock.params,
1110
- hash: openRawBlock.hash,
1111
- program,
1112
- openStrip: {},
1113
- inverseStrip: {},
1114
- closeStrip: {},
1115
- loc: locInfo
1116
- };
1117
- }
1118
-
1119
- function prepareBlock(openBlock, program, inverseAndProgram, close, inverted, locInfo) {
1120
- if (close && close.path) {
1121
- validateClose(openBlock, close);
1122
- }
1123
-
1124
- let decorator = (/\*/.test(openBlock.open));
1125
-
1126
- program.blockParams = openBlock.blockParams;
1127
-
1128
- let inverse,
1129
- inverseStrip;
1130
-
1131
- if (inverseAndProgram) {
1132
- if (decorator) {
1133
- throw new Exception('Unexpected inverse block on decorator', inverseAndProgram);
1134
- }
1135
-
1136
- if (inverseAndProgram.chain) {
1137
- inverseAndProgram.program.body[0].closeStrip = close.strip;
1138
- }
1139
-
1140
- inverseStrip = inverseAndProgram.strip;
1141
- inverse = inverseAndProgram.program;
1142
- }
1143
-
1144
- if (inverted) {
1145
- inverted = inverse;
1146
- inverse = program;
1147
- program = inverted;
1148
- }
1149
-
1150
- return {
1151
- type: decorator ? 'DecoratorBlock' : 'BlockStatement',
1152
- path: openBlock.path,
1153
- params: openBlock.params,
1154
- hash: openBlock.hash,
1155
- program,
1156
- inverse,
1157
- openStrip: openBlock.strip,
1158
- inverseStrip,
1159
- closeStrip: close && close.strip,
1160
- loc: this.locInfo(locInfo)
1161
- };
1162
- }
1163
-
1164
- function prepareProgram(statements, loc) {
1165
- if (!loc && statements.length) {
1166
- const firstLoc = statements[0].loc,
1167
- lastLoc = statements[statements.length - 1].loc;
1168
-
1169
- /* istanbul ignore else */
1170
- if (firstLoc && lastLoc) {
1171
- loc = {
1172
- source: firstLoc.source,
1173
- start: {
1174
- line: firstLoc.start.line,
1175
- column: firstLoc.start.column
1176
- },
1177
- end: {
1178
- line: lastLoc.end.line,
1179
- column: lastLoc.end.column
1180
- }
1181
- };
1182
- }
1183
- }
1184
-
1185
- return {
1186
- type: 'Program',
1187
- body: statements,
1188
- strip: {},
1189
- loc: loc
1190
- };
1191
- }
1192
-
1193
-
1194
- function preparePartialBlock(open, program, close, locInfo) {
1195
- validateClose(open, close);
1196
-
1197
- return {
1198
- type: 'PartialBlockStatement',
1199
- name: open.path,
1200
- params: open.params,
1201
- hash: open.hash,
1202
- program,
1203
- openStrip: open.strip,
1204
- closeStrip: close && close.strip,
1205
- loc: this.locInfo(locInfo)
1206
- };
1207
- }
1208
-
1209
- var Helpers = /*#__PURE__*/Object.freeze({
1210
- SourceLocation: SourceLocation,
1211
- id: id,
1212
- stripFlags: stripFlags,
1213
- stripComment: stripComment,
1214
- preparePath: preparePath,
1215
- prepareMustache: prepareMustache,
1216
- prepareRawBlock: prepareRawBlock,
1217
- prepareBlock: prepareBlock,
1218
- prepareProgram: prepareProgram,
1219
- preparePartialBlock: preparePartialBlock
1220
- });
1221
-
1222
- function extend(obj/* , ...source */) {
1223
- for (let i = 1; i < arguments.length; i++) {
1224
- for (let key in arguments[i]) {
1225
- if (Object.prototype.hasOwnProperty.call(arguments[i], key)) {
1226
- obj[key] = arguments[i][key];
1227
- }
1228
- }
1229
- }
1230
-
1231
- return obj;
1232
- }
1233
-
1234
- let toString = Object.prototype.toString;
1235
-
1236
- // Sourced from lodash
1237
- // https://github.com/bestiejs/lodash/blob/master/LICENSE.txt
1238
- /* eslint-disable func-style */
1239
- let isFunction = function(value) {
1240
- return typeof value === 'function';
1241
- };
1242
- // fallback for older versions of Chrome and Safari
1243
- /* istanbul ignore next */
1244
- if (isFunction(/x/)) {
1245
- isFunction = function(value) {
1246
- return typeof value === 'function' && toString.call(value) === '[object Function]';
1247
- };
1248
- }
1249
-
1250
- let yy = {};
1251
- extend(yy, Helpers);
1252
-
1253
- function parse(input, options) {
1254
- // Just return if an already-compiled AST was passed in.
1255
- if (input.type === 'Program') { return input; }
1256
-
1257
- handlebars.yy = yy;
1258
-
1259
- // Altering the shared object here, but this is ok as parser is a sync operation
1260
- yy.locInfo = function(locInfo) {
1261
- return new yy.SourceLocation(options && options.srcName, locInfo);
1262
- };
1263
-
1264
- let strip = new WhitespaceControl(options);
1265
- return strip.accept(handlebars.parse(input));
1266
- }
1267
-
1268
- export { handlebars as parser, parse };