ngx-bootstrap 1.8.1 → 1.9.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (601) hide show
  1. package/CHANGELOG.md +80 -0
  2. package/README.md +25 -10
  3. package/accordion/accordion-group.component.js +3 -2
  4. package/accordion/accordion-group.component.js.map +1 -1
  5. package/accordion/accordion-group.component.metadata.json +1 -1
  6. package/accordion/accordion.component.js +2 -1
  7. package/accordion/accordion.component.js.map +1 -1
  8. package/accordion/accordion.config.js +2 -1
  9. package/accordion/accordion.config.js.map +1 -1
  10. package/accordion/accordion.module.js +2 -1
  11. package/accordion/accordion.module.js.map +1 -1
  12. package/accordion/index.js.map +1 -1
  13. package/alert/alert.component.js +4 -3
  14. package/alert/alert.component.js.map +1 -1
  15. package/alert/alert.config.js +2 -1
  16. package/alert/alert.config.js.map +1 -1
  17. package/alert/alert.module.js +2 -1
  18. package/alert/alert.module.js.map +1 -1
  19. package/alert/index.js.map +1 -1
  20. package/bs-moment/LICENSE +26 -0
  21. package/bs-moment/format-functions.d.ts +13 -0
  22. package/bs-moment/format-functions.js +53 -0
  23. package/bs-moment/format-functions.js.map +1 -0
  24. package/bs-moment/format-functions.metadata.json +1 -0
  25. package/bs-moment/format.d.ts +6 -0
  26. package/bs-moment/format.js +43 -0
  27. package/bs-moment/format.js.map +1 -0
  28. package/bs-moment/format.metadata.json +1 -0
  29. package/bs-moment/i18n/ar.d.ts +2 -0
  30. package/bs-moment/i18n/ar.js +131 -0
  31. package/bs-moment/i18n/ar.js.map +1 -0
  32. package/bs-moment/i18n/ar.metadata.json +1 -0
  33. package/bs-moment/i18n/de.d.ts +2 -0
  34. package/bs-moment/i18n/de.js +67 -0
  35. package/bs-moment/i18n/de.js.map +1 -0
  36. package/bs-moment/i18n/de.metadata.json +1 -0
  37. package/bs-moment/i18n/en-gb.d.ts +2 -0
  38. package/bs-moment/i18n/en-gb.js +60 -0
  39. package/bs-moment/i18n/en-gb.js.map +1 -0
  40. package/bs-moment/i18n/en-gb.metadata.json +1 -0
  41. package/bs-moment/i18n/es-do.d.ts +2 -0
  42. package/bs-moment/i18n/es-do.js +61 -0
  43. package/bs-moment/i18n/es-do.js.map +1 -0
  44. package/bs-moment/i18n/es-do.metadata.json +1 -0
  45. package/bs-moment/i18n/es-us.d.ts +2 -0
  46. package/bs-moment/i18n/es-us.js +54 -0
  47. package/bs-moment/i18n/es-us.js.map +1 -0
  48. package/bs-moment/i18n/es-us.metadata.json +1 -0
  49. package/bs-moment/i18n/es.d.ts +2 -0
  50. package/bs-moment/i18n/es.js +62 -0
  51. package/bs-moment/i18n/es.js.map +1 -0
  52. package/bs-moment/i18n/es.metadata.json +1 -0
  53. package/bs-moment/i18n/fr.d.ts +2 -0
  54. package/bs-moment/i18n/fr.js +70 -0
  55. package/bs-moment/i18n/fr.js.map +1 -0
  56. package/bs-moment/i18n/fr.metadata.json +1 -0
  57. package/bs-moment/i18n/hi.d.ts +2 -0
  58. package/bs-moment/i18n/hi.js +119 -0
  59. package/bs-moment/i18n/hi.js.map +1 -0
  60. package/bs-moment/i18n/hi.metadata.json +1 -0
  61. package/bs-moment/i18n/it.d.ts +2 -0
  62. package/bs-moment/i18n/it.js +27 -0
  63. package/bs-moment/i18n/it.js.map +1 -0
  64. package/bs-moment/i18n/it.metadata.json +1 -0
  65. package/bs-moment/i18n/ja.d.ts +2 -0
  66. package/bs-moment/i18n/ja.js +65 -0
  67. package/bs-moment/i18n/ja.js.map +1 -0
  68. package/bs-moment/i18n/ja.metadata.json +1 -0
  69. package/bs-moment/i18n/ko.d.ts +2 -0
  70. package/bs-moment/i18n/ko.js +72 -0
  71. package/bs-moment/i18n/ko.js.map +1 -0
  72. package/bs-moment/i18n/ko.metadata.json +1 -0
  73. package/bs-moment/i18n/nl-be.d.ts +2 -0
  74. package/bs-moment/i18n/nl-be.js +73 -0
  75. package/bs-moment/i18n/nl-be.js.map +1 -0
  76. package/bs-moment/i18n/nl-be.metadata.json +1 -0
  77. package/bs-moment/i18n/nl.d.ts +2 -0
  78. package/bs-moment/i18n/nl.js +73 -0
  79. package/bs-moment/i18n/nl.js.map +1 -0
  80. package/bs-moment/i18n/nl.metadata.json +1 -0
  81. package/bs-moment/i18n/pl.d.ts +2 -0
  82. package/bs-moment/i18n/pl.js +77 -0
  83. package/bs-moment/i18n/pl.js.map +1 -0
  84. package/bs-moment/i18n/pl.metadata.json +1 -0
  85. package/bs-moment/i18n/pt-br.d.ts +2 -0
  86. package/bs-moment/i18n/pt-br.js +39 -0
  87. package/bs-moment/i18n/pt-br.js.map +1 -0
  88. package/bs-moment/i18n/pt-br.metadata.json +1 -0
  89. package/bs-moment/i18n/ru.d.ts +2 -0
  90. package/bs-moment/i18n/ru.js +120 -0
  91. package/bs-moment/i18n/ru.js.map +1 -0
  92. package/bs-moment/i18n/ru.metadata.json +1 -0
  93. package/bs-moment/i18n/zh-cn.d.ts +2 -0
  94. package/bs-moment/i18n/zh-cn.js +107 -0
  95. package/bs-moment/i18n/zh-cn.js.map +1 -0
  96. package/bs-moment/i18n/zh-cn.metadata.json +1 -0
  97. package/bs-moment/index.d.ts +1 -0
  98. package/bs-moment/index.js +2 -0
  99. package/bs-moment/index.js.map +1 -0
  100. package/bs-moment/index.metadata.json +1 -0
  101. package/bs-moment/locale/en.d.ts +0 -0
  102. package/bs-moment/locale/en.js +14 -0
  103. package/bs-moment/locale/en.js.map +1 -0
  104. package/bs-moment/locale/index.d.ts +1 -0
  105. package/bs-moment/locale/index.js +2 -0
  106. package/bs-moment/locale/index.js.map +1 -0
  107. package/bs-moment/locale/locale.class.d.ts +60 -0
  108. package/bs-moment/locale/locale.class.js +117 -0
  109. package/bs-moment/locale/locale.class.js.map +1 -0
  110. package/bs-moment/locale/locale.class.metadata.json +1 -0
  111. package/bs-moment/locale/locale.defaults.d.ts +8 -0
  112. package/bs-moment/locale/locale.defaults.js +23 -0
  113. package/bs-moment/locale/locale.defaults.js.map +1 -0
  114. package/bs-moment/locale/locale.defaults.metadata.json +1 -0
  115. package/bs-moment/locale/locales.service.d.ts +8 -0
  116. package/bs-moment/locale/locales.service.js +81 -0
  117. package/bs-moment/locale/locales.service.js.map +1 -0
  118. package/bs-moment/locale/locales.service.metadata.json +1 -0
  119. package/bs-moment/types.d.ts +11 -0
  120. package/bs-moment/types.js +1 -0
  121. package/bs-moment/types.js.map +1 -0
  122. package/bs-moment/types.metadata.json +1 -0
  123. package/bs-moment/units/day-of-month.d.ts +0 -0
  124. package/bs-moment/units/day-of-month.js +6 -0
  125. package/bs-moment/units/day-of-month.js.map +1 -0
  126. package/bs-moment/units/day-of-week.d.ts +3 -0
  127. package/bs-moment/units/day-of-week.js +28 -0
  128. package/bs-moment/units/day-of-week.js.map +1 -0
  129. package/bs-moment/units/day-of-week.metadata.json +1 -0
  130. package/bs-moment/units/day-of-year.d.ts +2 -0
  131. package/bs-moment/units/day-of-year.js +20 -0
  132. package/bs-moment/units/day-of-year.js.map +1 -0
  133. package/bs-moment/units/day-of-year.metadata.json +1 -0
  134. package/bs-moment/units/hour.d.ts +0 -0
  135. package/bs-moment/units/hour.js +49 -0
  136. package/bs-moment/units/hour.js.map +1 -0
  137. package/bs-moment/units/index.d.ts +10 -0
  138. package/bs-moment/units/index.js +11 -0
  139. package/bs-moment/units/index.js.map +1 -0
  140. package/bs-moment/units/minute.d.ts +0 -0
  141. package/bs-moment/units/minute.js +6 -0
  142. package/bs-moment/units/minute.js.map +1 -0
  143. package/bs-moment/units/month.d.ts +1 -0
  144. package/bs-moment/units/month.js +23 -0
  145. package/bs-moment/units/month.js.map +1 -0
  146. package/bs-moment/units/month.metadata.json +1 -0
  147. package/bs-moment/units/second.d.ts +0 -0
  148. package/bs-moment/units/second.js +6 -0
  149. package/bs-moment/units/second.js.map +1 -0
  150. package/bs-moment/units/week-calendar-utils.d.ts +9 -0
  151. package/bs-moment/units/week-calendar-utils.js +70 -0
  152. package/bs-moment/units/week-calendar-utils.js.map +1 -0
  153. package/bs-moment/units/week-calendar-utils.metadata.json +1 -0
  154. package/bs-moment/units/week.d.ts +3 -0
  155. package/bs-moment/units/week.js +15 -0
  156. package/bs-moment/units/week.js.map +1 -0
  157. package/bs-moment/units/week.metadata.json +1 -0
  158. package/bs-moment/units/year.d.ts +2 -0
  159. package/bs-moment/units/year.js +23 -0
  160. package/bs-moment/units/year.js.map +1 -0
  161. package/bs-moment/units/year.metadata.json +1 -0
  162. package/bs-moment/utils/date-compare.d.ts +7 -0
  163. package/bs-moment/utils/date-compare.js +50 -0
  164. package/bs-moment/utils/date-compare.js.map +1 -0
  165. package/bs-moment/utils/date-compare.metadata.json +1 -0
  166. package/bs-moment/utils/date-getters.d.ts +14 -0
  167. package/bs-moment/utils/date-getters.js +61 -0
  168. package/bs-moment/utils/date-getters.js.map +1 -0
  169. package/bs-moment/utils/date-getters.metadata.json +1 -0
  170. package/bs-moment/utils/date-setters.d.ts +4 -0
  171. package/bs-moment/utils/date-setters.js +23 -0
  172. package/bs-moment/utils/date-setters.js.map +1 -0
  173. package/bs-moment/utils/date-setters.metadata.json +1 -0
  174. package/bs-moment/utils/start-end-of.d.ts +3 -0
  175. package/bs-moment/utils/start-end-of.js +35 -0
  176. package/bs-moment/utils/start-end-of.js.map +1 -0
  177. package/bs-moment/utils/start-end-of.metadata.json +1 -0
  178. package/bs-moment/utils/type-checks.d.ts +7 -0
  179. package/bs-moment/utils/type-checks.js +30 -0
  180. package/bs-moment/utils/type-checks.js.map +1 -0
  181. package/bs-moment/utils/type-checks.metadata.json +1 -0
  182. package/bs-moment/utils.d.ts +4 -0
  183. package/bs-moment/utils.js +24 -0
  184. package/bs-moment/utils.js.map +1 -0
  185. package/bs-moment/utils.metadata.json +1 -0
  186. package/bundles/ngx-bootstrap.umd.js +8786 -20532
  187. package/bundles/ngx-bootstrap.umd.js.map +1 -1
  188. package/bundles/ngx-bootstrap.umd.min.js +2 -2
  189. package/buttons/button-checkbox.directive.js +2 -1
  190. package/buttons/button-checkbox.directive.js.map +1 -1
  191. package/buttons/button-radio.directive.js +2 -1
  192. package/buttons/button-radio.directive.js.map +1 -1
  193. package/buttons/buttons.module.js +2 -1
  194. package/buttons/buttons.module.js.map +1 -1
  195. package/buttons/index.js.map +1 -1
  196. package/carousel/carousel.component.d.ts +3 -2
  197. package/carousel/carousel.component.js +31 -12
  198. package/carousel/carousel.component.js.map +1 -1
  199. package/carousel/carousel.component.metadata.json +1 -1
  200. package/carousel/carousel.config.js +2 -1
  201. package/carousel/carousel.config.js.map +1 -1
  202. package/carousel/carousel.module.js +2 -1
  203. package/carousel/carousel.module.js.map +1 -1
  204. package/carousel/index.js.map +1 -1
  205. package/carousel/slide.component.js +2 -1
  206. package/carousel/slide.component.js.map +1 -1
  207. package/collapse/collapse.directive.js +3 -1
  208. package/collapse/collapse.directive.js.map +1 -1
  209. package/collapse/collapse.module.js +2 -1
  210. package/collapse/collapse.module.js.map +1 -1
  211. package/collapse/index.js.map +1 -1
  212. package/component-loader/bs-component-ref.class.js +2 -1
  213. package/component-loader/bs-component-ref.class.js.map +1 -1
  214. package/component-loader/bs-component-ref.class.metadata.json +1 -1
  215. package/component-loader/component-loader.class.d.ts +10 -9
  216. package/component-loader/component-loader.class.js +56 -12
  217. package/component-loader/component-loader.class.js.map +1 -1
  218. package/component-loader/component-loader.class.metadata.json +1 -1
  219. package/component-loader/component-loader.factory.js +2 -1
  220. package/component-loader/component-loader.factory.js.map +1 -1
  221. package/component-loader/content-ref.class.js +2 -1
  222. package/component-loader/content-ref.class.js.map +1 -1
  223. package/component-loader/index.js.map +1 -1
  224. package/component-loader/listen-options.model.d.ts +9 -0
  225. package/component-loader/listen-options.model.js +1 -0
  226. package/component-loader/listen-options.model.js.map +1 -0
  227. package/component-loader/listen-options.model.metadata.json +1 -0
  228. package/datepicker/base/bs-datepicker-container.d.ts +26 -0
  229. package/datepicker/base/bs-datepicker-container.js +41 -0
  230. package/datepicker/base/bs-datepicker-container.js.map +1 -0
  231. package/datepicker/base/bs-datepicker-container.metadata.json +1 -0
  232. package/datepicker/bs-datepicker-input.directive.d.ts +21 -0
  233. package/datepicker/bs-datepicker-input.directive.js +79 -0
  234. package/datepicker/bs-datepicker-input.directive.js.map +1 -0
  235. package/datepicker/bs-datepicker-input.directive.metadata.json +1 -0
  236. package/datepicker/bs-datepicker.component.d.ts +85 -0
  237. package/datepicker/bs-datepicker.component.js +184 -0
  238. package/datepicker/bs-datepicker.component.js.map +1 -0
  239. package/datepicker/bs-datepicker.component.metadata.json +1 -0
  240. package/datepicker/bs-datepicker.config.d.ts +36 -0
  241. package/datepicker/bs-datepicker.config.js +39 -0
  242. package/datepicker/bs-datepicker.config.js.map +1 -0
  243. package/datepicker/bs-datepicker.config.metadata.json +1 -0
  244. package/datepicker/bs-datepicker.css +424 -0
  245. package/datepicker/bs-datepicker.css.map +16 -0
  246. package/datepicker/bs-datepicker.module.d.ts +5 -0
  247. package/datepicker/bs-datepicker.module.js +69 -0
  248. package/datepicker/bs-datepicker.module.js.map +1 -0
  249. package/datepicker/bs-datepicker.module.metadata.json +1 -0
  250. package/datepicker/bs-datepicker.scss +532 -0
  251. package/datepicker/bs-daterangepicker-input.directive.d.ts +21 -0
  252. package/datepicker/bs-daterangepicker-input.directive.js +87 -0
  253. package/datepicker/bs-daterangepicker-input.directive.js.map +1 -0
  254. package/datepicker/bs-daterangepicker-input.directive.metadata.json +1 -0
  255. package/datepicker/bs-daterangepicker.component.d.ts +84 -0
  256. package/datepicker/bs-daterangepicker.component.js +184 -0
  257. package/datepicker/bs-daterangepicker.component.js.map +1 -0
  258. package/datepicker/bs-daterangepicker.component.metadata.json +1 -0
  259. package/datepicker/date-formatter.d.ts +1 -1
  260. package/datepicker/date-formatter.js +5 -4
  261. package/datepicker/date-formatter.js.map +1 -1
  262. package/datepicker/datepicker-inner.component.d.ts +1 -0
  263. package/datepicker/datepicker-inner.component.js +5 -2
  264. package/datepicker/datepicker-inner.component.js.map +1 -1
  265. package/datepicker/datepicker-inner.component.metadata.json +1 -1
  266. package/datepicker/datepicker.component.d.ts +1 -1
  267. package/datepicker/datepicker.component.js +3 -2
  268. package/datepicker/datepicker.component.js.map +1 -1
  269. package/datepicker/datepicker.component.metadata.json +1 -1
  270. package/datepicker/datepicker.config.d.ts +1 -0
  271. package/datepicker/datepicker.config.js +3 -1
  272. package/datepicker/datepicker.config.js.map +1 -1
  273. package/datepicker/datepicker.module.js +2 -1
  274. package/datepicker/datepicker.module.js.map +1 -1
  275. package/datepicker/daypicker.component.js +4 -2
  276. package/datepicker/daypicker.component.js.map +1 -1
  277. package/datepicker/daypicker.component.metadata.json +1 -1
  278. package/datepicker/engine/calc-days-calendar.d.ts +2 -0
  279. package/datepicker/engine/calc-days-calendar.js +18 -0
  280. package/datepicker/engine/calc-days-calendar.js.map +1 -0
  281. package/datepicker/engine/calc-days-calendar.metadata.json +1 -0
  282. package/datepicker/engine/flag-days-calendar.d.ts +12 -0
  283. package/datepicker/engine/flag-days-calendar.js +71 -0
  284. package/datepicker/engine/flag-days-calendar.js.map +1 -0
  285. package/datepicker/engine/flag-days-calendar.metadata.json +1 -0
  286. package/datepicker/engine/flag-months-calendar.d.ts +10 -0
  287. package/datepicker/engine/flag-months-calendar.js +27 -0
  288. package/datepicker/engine/flag-months-calendar.js.map +1 -0
  289. package/datepicker/engine/flag-months-calendar.metadata.json +1 -0
  290. package/datepicker/engine/flag-years-calendar.d.ts +10 -0
  291. package/datepicker/engine/flag-years-calendar.js +29 -0
  292. package/datepicker/engine/flag-years-calendar.js.map +1 -0
  293. package/datepicker/engine/flag-years-calendar.metadata.json +1 -0
  294. package/datepicker/engine/format-days-calendar.d.ts +3 -0
  295. package/datepicker/engine/format-days-calendar.js +25 -0
  296. package/datepicker/engine/format-days-calendar.js.map +1 -0
  297. package/datepicker/engine/format-days-calendar.metadata.json +1 -0
  298. package/datepicker/engine/format-months-calendar.d.ts +2 -0
  299. package/datepicker/engine/format-months-calendar.js +20 -0
  300. package/datepicker/engine/format-months-calendar.js.map +1 -0
  301. package/datepicker/engine/format-months-calendar.metadata.json +1 -0
  302. package/datepicker/engine/format-years-calendar.d.ts +3 -0
  303. package/datepicker/engine/format-years-calendar.js +28 -0
  304. package/datepicker/engine/format-years-calendar.js.map +1 -0
  305. package/datepicker/engine/format-years-calendar.metadata.json +1 -0
  306. package/datepicker/engine/view-mode.d.ts +2 -0
  307. package/datepicker/engine/view-mode.js +4 -0
  308. package/datepicker/engine/view-mode.js.map +1 -0
  309. package/datepicker/engine/view-mode.metadata.json +1 -0
  310. package/datepicker/index.d.ts +4 -0
  311. package/datepicker/index.js +4 -8
  312. package/datepicker/index.js.map +1 -1
  313. package/datepicker/index.metadata.json +1 -1
  314. package/datepicker/models/index.d.ts +89 -0
  315. package/datepicker/models/index.js +9 -0
  316. package/datepicker/models/index.js.map +1 -0
  317. package/datepicker/models/index.metadata.json +1 -0
  318. package/datepicker/monthpicker.component.js +4 -2
  319. package/datepicker/monthpicker.component.js.map +1 -1
  320. package/datepicker/monthpicker.component.metadata.json +1 -1
  321. package/datepicker/reducer/_defaults.d.ts +2 -0
  322. package/datepicker/reducer/_defaults.js +5 -0
  323. package/datepicker/reducer/_defaults.js.map +1 -0
  324. package/datepicker/reducer/_defaults.metadata.json +1 -0
  325. package/datepicker/reducer/bs-datepicker.actions.d.ts +31 -0
  326. package/datepicker/reducer/bs-datepicker.actions.js +90 -0
  327. package/datepicker/reducer/bs-datepicker.actions.js.map +1 -0
  328. package/datepicker/reducer/bs-datepicker.actions.metadata.json +1 -0
  329. package/datepicker/reducer/bs-datepicker.effects.d.ts +33 -0
  330. package/datepicker/reducer/bs-datepicker.effects.js +173 -0
  331. package/datepicker/reducer/bs-datepicker.effects.js.map +1 -0
  332. package/datepicker/reducer/bs-datepicker.effects.metadata.json +1 -0
  333. package/datepicker/reducer/bs-datepicker.reducer.d.ts +3 -0
  334. package/datepicker/reducer/bs-datepicker.reducer.js +230 -0
  335. package/datepicker/reducer/bs-datepicker.reducer.js.map +1 -0
  336. package/datepicker/reducer/bs-datepicker.reducer.metadata.json +1 -0
  337. package/datepicker/reducer/bs-datepicker.state.d.ts +34 -0
  338. package/datepicker/reducer/bs-datepicker.state.js +14 -0
  339. package/datepicker/reducer/bs-datepicker.state.js.map +1 -0
  340. package/datepicker/reducer/bs-datepicker.state.metadata.json +1 -0
  341. package/datepicker/reducer/bs-datepicker.store.d.ts +5 -0
  342. package/datepicker/reducer/bs-datepicker.store.js +34 -0
  343. package/datepicker/reducer/bs-datepicker.store.js.map +1 -0
  344. package/datepicker/reducer/bs-datepicker.store.metadata.json +1 -0
  345. package/datepicker/themes/bs/bs-calendar-layout.component.d.ts +2 -0
  346. package/datepicker/themes/bs/bs-calendar-layout.component.js +16 -0
  347. package/datepicker/themes/bs/bs-calendar-layout.component.js.map +1 -0
  348. package/datepicker/themes/bs/bs-calendar-layout.component.metadata.json +1 -0
  349. package/datepicker/themes/bs/bs-current-date-view.component.d.ts +3 -0
  350. package/datepicker/themes/bs/bs-current-date-view.component.js +19 -0
  351. package/datepicker/themes/bs/bs-current-date-view.component.js.map +1 -0
  352. package/datepicker/themes/bs/bs-current-date-view.component.metadata.json +1 -0
  353. package/datepicker/themes/bs/bs-custom-dates-view.component.d.ts +8 -0
  354. package/datepicker/themes/bs/bs-custom-dates-view.component.js +21 -0
  355. package/datepicker/themes/bs/bs-custom-dates-view.component.js.map +1 -0
  356. package/datepicker/themes/bs/bs-custom-dates-view.component.metadata.json +1 -0
  357. package/datepicker/themes/bs/bs-datepicker-container.component.d.ts +20 -0
  358. package/datepicker/themes/bs/bs-datepicker-container.component.js +85 -0
  359. package/datepicker/themes/bs/bs-datepicker-container.component.js.map +1 -0
  360. package/datepicker/themes/bs/bs-datepicker-container.component.metadata.json +1 -0
  361. package/datepicker/themes/bs/bs-datepicker-day-decorator.directive.d.ts +4 -0
  362. package/datepicker/themes/bs/bs-datepicker-day-decorator.directive.js +29 -0
  363. package/datepicker/themes/bs/bs-datepicker-day-decorator.directive.js.map +1 -0
  364. package/datepicker/themes/bs/bs-datepicker-day-decorator.directive.metadata.json +1 -0
  365. package/datepicker/themes/bs/bs-datepicker-navigation-view.component.d.ts +9 -0
  366. package/datepicker/themes/bs/bs-datepicker-navigation-view.component.js +33 -0
  367. package/datepicker/themes/bs/bs-datepicker-navigation-view.component.js.map +1 -0
  368. package/datepicker/themes/bs/bs-datepicker-navigation-view.component.metadata.json +1 -0
  369. package/datepicker/themes/bs/bs-datepicker-view.html +61 -0
  370. package/datepicker/themes/bs/bs-daterangepicker-container.component.d.ts +21 -0
  371. package/datepicker/themes/bs/bs-daterangepicker-container.component.js +102 -0
  372. package/datepicker/themes/bs/bs-daterangepicker-container.component.js.map +1 -0
  373. package/datepicker/themes/bs/bs-daterangepicker-container.component.metadata.json +1 -0
  374. package/datepicker/themes/bs/bs-days-calendar-view.component.d.ts +14 -0
  375. package/datepicker/themes/bs/bs-days-calendar-view.component.js +43 -0
  376. package/datepicker/themes/bs/bs-days-calendar-view.component.js.map +1 -0
  377. package/datepicker/themes/bs/bs-days-calendar-view.component.metadata.json +1 -0
  378. package/datepicker/themes/bs/bs-months-calendar-view.component.d.ts +13 -0
  379. package/datepicker/themes/bs/bs-months-calendar-view.component.js +41 -0
  380. package/datepicker/themes/bs/bs-months-calendar-view.component.js.map +1 -0
  381. package/datepicker/themes/bs/bs-months-calendar-view.component.metadata.json +1 -0
  382. package/datepicker/themes/bs/bs-timepicker-view.component.d.ts +5 -0
  383. package/datepicker/themes/bs/bs-timepicker-view.component.js +19 -0
  384. package/datepicker/themes/bs/bs-timepicker-view.component.js.map +1 -0
  385. package/datepicker/themes/bs/bs-timepicker-view.component.metadata.json +1 -0
  386. package/datepicker/themes/bs/bs-years-calendar-view.component.d.ts +13 -0
  387. package/datepicker/themes/bs/bs-years-calendar-view.component.js +42 -0
  388. package/datepicker/themes/bs/bs-years-calendar-view.component.js.map +1 -0
  389. package/datepicker/themes/bs/bs-years-calendar-view.component.metadata.json +1 -0
  390. package/datepicker/utils/bs-calendar-utils.d.ts +5 -0
  391. package/datepicker/utils/bs-calendar-utils.js +22 -0
  392. package/datepicker/utils/bs-calendar-utils.js.map +1 -0
  393. package/datepicker/utils/bs-calendar-utils.metadata.json +1 -0
  394. package/datepicker/utils/matrix-utils.d.ts +9 -0
  395. package/datepicker/utils/matrix-utils.js +14 -0
  396. package/datepicker/utils/matrix-utils.js.map +1 -0
  397. package/datepicker/utils/matrix-utils.metadata.json +1 -0
  398. package/datepicker/utils/scss/mixins.css +2 -0
  399. package/datepicker/utils/scss/mixins.css.map +12 -0
  400. package/datepicker/utils/scss/mixins.scss +24 -0
  401. package/datepicker/utils/scss/variables.css +2 -0
  402. package/datepicker/utils/scss/variables.css.map +12 -0
  403. package/datepicker/utils/scss/variables.scss +36 -0
  404. package/datepicker/yearpicker.component.js +4 -2
  405. package/datepicker/yearpicker.component.js.map +1 -1
  406. package/datepicker/yearpicker.component.metadata.json +1 -1
  407. package/dropdown/bs-dropdown-container.component.d.ts +3 -2
  408. package/dropdown/bs-dropdown-container.component.js +19 -3
  409. package/dropdown/bs-dropdown-container.component.js.map +1 -1
  410. package/dropdown/bs-dropdown-container.component.metadata.json +1 -1
  411. package/dropdown/bs-dropdown-menu.directive.js +2 -1
  412. package/dropdown/bs-dropdown-menu.directive.js.map +1 -1
  413. package/dropdown/bs-dropdown-toggle.directive.js +2 -1
  414. package/dropdown/bs-dropdown-toggle.directive.js.map +1 -1
  415. package/dropdown/bs-dropdown.config.js +2 -1
  416. package/dropdown/bs-dropdown.config.js.map +1 -1
  417. package/dropdown/bs-dropdown.directive.d.ts +5 -0
  418. package/dropdown/bs-dropdown.directive.js +40 -2
  419. package/dropdown/bs-dropdown.directive.js.map +1 -1
  420. package/dropdown/bs-dropdown.directive.metadata.json +1 -1
  421. package/dropdown/bs-dropdown.module.js +2 -1
  422. package/dropdown/bs-dropdown.module.js.map +1 -1
  423. package/dropdown/bs-dropdown.state.js +2 -1
  424. package/dropdown/bs-dropdown.state.js.map +1 -1
  425. package/dropdown/index.js.map +1 -1
  426. package/index.d.ts +2 -1
  427. package/index.js +7 -3
  428. package/index.js.map +1 -1
  429. package/index.metadata.json +1 -1
  430. package/locale.d.ts +17 -0
  431. package/locale.js +18 -0
  432. package/locale.js.map +1 -0
  433. package/locale.metadata.json +1 -0
  434. package/mini-ngrx/LICENCE +21 -0
  435. package/mini-ngrx/index.js.map +1 -1
  436. package/mini-ngrx/index.metadata.json +1 -1
  437. package/mini-ngrx/state.class.js +17 -8
  438. package/mini-ngrx/state.class.js.map +1 -1
  439. package/mini-ngrx/state.class.metadata.json +1 -1
  440. package/mini-ngrx/store.class.js +20 -10
  441. package/mini-ngrx/store.class.js.map +1 -1
  442. package/mini-ngrx/store.class.metadata.json +1 -1
  443. package/modal/bs-modal.service.js +3 -2
  444. package/modal/bs-modal.service.js.map +1 -1
  445. package/modal/index.js.map +1 -1
  446. package/modal/modal-backdrop.component.js +4 -2
  447. package/modal/modal-backdrop.component.js.map +1 -1
  448. package/modal/modal-container.component.js +2 -1
  449. package/modal/modal-container.component.js.map +1 -1
  450. package/modal/modal-options.class.js +4 -2
  451. package/modal/modal-options.class.js.map +1 -1
  452. package/modal/modal.component.d.ts +2 -2
  453. package/modal/modal.component.js +3 -2
  454. package/modal/modal.component.js.map +1 -1
  455. package/modal/modal.module.js +2 -1
  456. package/modal/modal.module.js.map +1 -1
  457. package/ng2-bootstrap.js +2 -1
  458. package/ng2-bootstrap.js.map +1 -1
  459. package/package.json +30 -34
  460. package/pagination/index.js.map +1 -1
  461. package/pagination/pager.component.js +3 -2
  462. package/pagination/pager.component.js.map +1 -1
  463. package/pagination/pager.component.metadata.json +1 -1
  464. package/pagination/pagination.component.js +2 -1
  465. package/pagination/pagination.component.js.map +1 -1
  466. package/pagination/pagination.component.metadata.json +1 -1
  467. package/pagination/pagination.config.js +3 -1
  468. package/pagination/pagination.config.js.map +1 -1
  469. package/pagination/pagination.module.js +2 -1
  470. package/pagination/pagination.module.js.map +1 -1
  471. package/popover/index.js.map +1 -1
  472. package/popover/popover-container.component.js +5 -3
  473. package/popover/popover-container.component.js.map +1 -1
  474. package/popover/popover-container.component.metadata.json +1 -1
  475. package/popover/popover.config.d.ts +2 -1
  476. package/popover/popover.config.js +4 -2
  477. package/popover/popover.config.js.map +1 -1
  478. package/popover/popover.directive.d.ts +9 -1
  479. package/popover/popover.directive.js +10 -1
  480. package/popover/popover.directive.js.map +1 -1
  481. package/popover/popover.directive.metadata.json +1 -1
  482. package/popover/popover.module.js +2 -1
  483. package/popover/popover.module.js.map +1 -1
  484. package/positioning/index.js.map +1 -1
  485. package/positioning/ng-positioning.d.ts +2 -0
  486. package/positioning/ng-positioning.js +30 -4
  487. package/positioning/ng-positioning.js.map +1 -1
  488. package/positioning/ng-positioning.metadata.json +1 -1
  489. package/positioning/positioning.service.js +2 -1
  490. package/positioning/positioning.service.js.map +1 -1
  491. package/positioning/positioning.service.metadata.json +1 -1
  492. package/progressbar/bar.component.js +2 -1
  493. package/progressbar/bar.component.js.map +1 -1
  494. package/progressbar/index.js.map +1 -1
  495. package/progressbar/progress.directive.js +2 -1
  496. package/progressbar/progress.directive.js.map +1 -1
  497. package/progressbar/progressbar.component.js +2 -1
  498. package/progressbar/progressbar.component.js.map +1 -1
  499. package/progressbar/progressbar.config.js +2 -1
  500. package/progressbar/progressbar.config.js.map +1 -1
  501. package/progressbar/progressbar.module.js +2 -1
  502. package/progressbar/progressbar.module.js.map +1 -1
  503. package/rating/index.js.map +1 -1
  504. package/rating/rating.component.js +2 -1
  505. package/rating/rating.component.js.map +1 -1
  506. package/rating/rating.module.js +2 -1
  507. package/rating/rating.module.js.map +1 -1
  508. package/sortable/draggable-item.js.map +1 -1
  509. package/sortable/draggable-item.metadata.json +1 -0
  510. package/sortable/draggable-item.service.js +2 -1
  511. package/sortable/draggable-item.service.js.map +1 -1
  512. package/sortable/index.js.map +1 -1
  513. package/sortable/sortable.component.js +2 -1
  514. package/sortable/sortable.component.js.map +1 -1
  515. package/sortable/sortable.component.metadata.json +1 -1
  516. package/sortable/sortable.module.js +2 -1
  517. package/sortable/sortable.module.js.map +1 -1
  518. package/spec/ng-bootstrap/license +23 -0
  519. package/tabs/index.js.map +1 -1
  520. package/tabs/ng-transclude.directive.js +2 -1
  521. package/tabs/ng-transclude.directive.js.map +1 -1
  522. package/tabs/tab-heading.directive.js +2 -1
  523. package/tabs/tab-heading.directive.js.map +1 -1
  524. package/tabs/tab.directive.js +7 -3
  525. package/tabs/tab.directive.js.map +1 -1
  526. package/tabs/tabs.module.js +2 -1
  527. package/tabs/tabs.module.js.map +1 -1
  528. package/tabs/tabset.component.js +4 -3
  529. package/tabs/tabset.component.js.map +1 -1
  530. package/tabs/tabset.config.js +2 -1
  531. package/tabs/tabset.config.js.map +1 -1
  532. package/timepicker/index.js.map +1 -1
  533. package/timepicker/reducer/timepicker.actions.js +2 -1
  534. package/timepicker/reducer/timepicker.actions.js.map +1 -1
  535. package/timepicker/reducer/timepicker.reducer.d.ts +1 -3
  536. package/timepicker/reducer/timepicker.reducer.js +10 -3
  537. package/timepicker/reducer/timepicker.reducer.js.map +1 -1
  538. package/timepicker/reducer/timepicker.reducer.metadata.json +1 -1
  539. package/timepicker/reducer/timepicker.store.js +15 -7
  540. package/timepicker/reducer/timepicker.store.js.map +1 -1
  541. package/timepicker/timepicker-controls.util.js.map +1 -1
  542. package/timepicker/timepicker.component.js +4 -2
  543. package/timepicker/timepicker.component.js.map +1 -1
  544. package/timepicker/timepicker.component.metadata.json +1 -1
  545. package/timepicker/timepicker.config.js +2 -1
  546. package/timepicker/timepicker.config.js.map +1 -1
  547. package/timepicker/timepicker.models.js.map +1 -1
  548. package/timepicker/timepicker.models.metadata.json +1 -0
  549. package/timepicker/timepicker.module.js +2 -1
  550. package/timepicker/timepicker.module.js.map +1 -1
  551. package/timepicker/timepicker.utils.js.map +1 -1
  552. package/tooltip/index.js.map +1 -1
  553. package/tooltip/tooltip-container.component.js +24 -3
  554. package/tooltip/tooltip-container.component.js.map +1 -1
  555. package/tooltip/tooltip-container.component.metadata.json +1 -1
  556. package/tooltip/tooltip.config.js +2 -1
  557. package/tooltip/tooltip.config.js.map +1 -1
  558. package/tooltip/tooltip.directive.js +17 -15
  559. package/tooltip/tooltip.directive.js.map +1 -1
  560. package/tooltip/tooltip.module.js +2 -1
  561. package/tooltip/tooltip.module.js.map +1 -1
  562. package/tsconfig.spec.json +39 -0
  563. package/typeahead/index.js.map +1 -1
  564. package/typeahead/latin-map.js.map +1 -1
  565. package/typeahead/typeahead-container.component.d.ts +1 -0
  566. package/typeahead/typeahead-container.component.js +3 -1
  567. package/typeahead/typeahead-container.component.js.map +1 -1
  568. package/typeahead/typeahead-container.component.metadata.json +1 -1
  569. package/typeahead/typeahead-match.class.js +2 -1
  570. package/typeahead/typeahead-match.class.js.map +1 -1
  571. package/typeahead/typeahead-options.class.js +2 -1
  572. package/typeahead/typeahead-options.class.js.map +1 -1
  573. package/typeahead/typeahead-utils.js.map +1 -1
  574. package/typeahead/typeahead.directive.d.ts +3 -0
  575. package/typeahead/typeahead.directive.js +19 -8
  576. package/typeahead/typeahead.directive.js.map +1 -1
  577. package/typeahead/typeahead.directive.metadata.json +1 -1
  578. package/typeahead/typeahead.module.js +2 -1
  579. package/typeahead/typeahead.module.js.map +1 -1
  580. package/utils/decorators.js +1 -0
  581. package/utils/decorators.js.map +1 -1
  582. package/utils/facade/browser.js.map +1 -1
  583. package/utils/index.js.map +1 -1
  584. package/utils/linked-list.class.js +5 -3
  585. package/utils/linked-list.class.js.map +1 -1
  586. package/utils/linked-list.class.metadata.json +1 -1
  587. package/utils/ng2-bootstrap-config.js +27 -0
  588. package/utils/ng2-bootstrap-config.js.map +1 -1
  589. package/utils/ng2-bootstrap-config.metadata.json +1 -1
  590. package/utils/trigger.class.js +2 -1
  591. package/utils/trigger.class.js.map +1 -1
  592. package/utils/triggers.d.ts +3 -0
  593. package/utils/triggers.js +44 -0
  594. package/utils/triggers.js.map +1 -1
  595. package/utils/triggers.metadata.json +1 -1
  596. package/utils/utils.class.js +2 -1
  597. package/utils/utils.class.js.map +1 -1
  598. package/utils/warn-once.d.ts +1 -0
  599. package/utils/warn-once.js +12 -0
  600. package/utils/warn-once.js.map +1 -0
  601. package/utils/warn-once.metadata.json +1 -0
@@ -1 +1 @@
1
- {"version":3,"file":"rating.component.js","sourceRoot":"","sources":["../../src/rating/rating.component.ts"],"names":[],"mappings":"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","sourcesContent":["import { Component, EventEmitter, HostListener, Input, OnInit, Output, forwardRef } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport const RATING_CONTROL_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => RatingComponent),\n multi: true\n};\n\n\nexport class RatingComponent implements ControlValueAccessor, OnInit {\n /** number of icons */\n public max: number = 5;\n /** selected icon class */\n public stateOn: string;\n /** unselected icon class */\n public stateOff: string;\n /** if true will not react on any user events */\n public readonly: boolean;\n /** array of icons titles, default: ([\"one\", \"two\", \"three\", \"four\", \"five\"]) */\n public titles: string[];\n /** array of custom icons classes */\n public ratingStates: {stateOn: string, stateOff: string}[];\n /** fired when icon selected, $event:number equals to selected rating */\n public onHover: EventEmitter<number> = new EventEmitter();\n /** fired when icon selected, $event:number equals to previous rating value */\n public onLeave: EventEmitter<number> = new EventEmitter();\n\n public onChange: any = Function.prototype;\n public onTouched: any = Function.prototype;\n\n public range: any[];\n public value: number;\n protected preValue: number;\n\n \n public onKeydown(event: any): void {\n if ([37, 38, 39, 40].indexOf(event.which) === -1) {\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n let sign = event.which === 38 || event.which === 39 ? 1 : -1;\n this.rate(this.value + sign);\n }\n\n public ngOnInit(): void {\n this.max = typeof this.max !== 'undefined' ? this.max : 5;\n this.readonly = this.readonly === true;\n this.stateOn = typeof this.stateOn !== 'undefined'\n ? this.stateOn\n : 'glyphicon-star';\n this.stateOff = typeof this.stateOff !== 'undefined'\n ? this.stateOff\n : 'glyphicon-star-empty';\n this.titles = typeof this.titles !== 'undefined' && this.titles.length > 0\n ? this.titles\n : ['one', 'two', 'three', 'four', 'five'];\n this.range = this.buildTemplateObjects(this.ratingStates, this.max);\n }\n\n // model -> view\n public writeValue(value: number): void {\n if (value % 1 !== value) {\n this.value = Math.round(value);\n this.preValue = value;\n return;\n }\n\n this.preValue = value;\n this.value = value;\n }\n\n public enter(value: number): void {\n if (!this.readonly) {\n this.value = value;\n this.onHover.emit(value);\n }\n }\n\n public reset(): void {\n this.value = this.preValue;\n this.onLeave.emit(this.value);\n }\n\n public registerOnChange(fn: (_: any) => {}): void {\n this.onChange = fn;\n }\n\n public registerOnTouched(fn: () => {}): void {\n this.onTouched = fn;\n }\n\n public rate(value: number): void {\n if (!this.readonly && value >= 0 && value <= this.range.length) {\n this.writeValue(value);\n this.onChange(value);\n }\n }\n\n protected buildTemplateObjects(ratingStates: any[], max: number): any[] {\n ratingStates = ratingStates || [];\n let count = ratingStates.length || max;\n let result: any[] = [];\n for (let i = 0; i < count; i++) {\n result.push(Object.assign({\n index: i,\n stateOn: this.stateOn,\n stateOff: this.stateOff,\n title: this.titles[i] || i + 1\n }, ratingStates[i] || {}));\n }\n return result;\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'rating',\n template: `\n <span (mouseleave)=\"reset()\" (keydown)=\"onKeydown($event)\" tabindex=\"0\" role=\"slider\" aria-valuemin=\"0\" [attr.aria-valuemax]=\"range.length\" [attr.aria-valuenow]=\"value\">\n <template ngFor let-r [ngForOf]=\"range\" let-index=\"index\">\n <span class=\"sr-only\">({{ index < value ? '*' : ' ' }})</span>\n <i (mouseenter)=\"enter(index + 1)\" (click)=\"rate(index + 1)\" class=\"glyphicon\" [ngClass]=\"index < value ? r.stateOn : r.stateOff\" [title]=\"r.title\" ></i>\n </template>\n </span>\n `,\n providers: [RATING_CONTROL_VALUE_ACCESSOR]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'max': [{ type: Input },],\n'stateOn': [{ type: Input },],\n'stateOff': [{ type: Input },],\n'readonly': [{ type: Input },],\n'titles': [{ type: Input },],\n'ratingStates': [{ type: Input },],\n'onHover': [{ type: Output },],\n'onLeave': [{ type: Output },],\n'onKeydown': [{ type: HostListener, args: ['keydown', ['$event'], ] },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n"]}
1
+ {"version":3,"sources":["../../.tmp/rating/rating.component.ts"],"names":[],"mappings":"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","file":"rating.component.js","sourceRoot":"","sourcesContent":["import { Component, EventEmitter, HostListener, Input, OnInit, Output, forwardRef } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nexport const RATING_CONTROL_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => RatingComponent),\n multi: true\n};\n\n\nexport class RatingComponent implements ControlValueAccessor, OnInit {\n /** number of icons */\n public max: number = 5;\n /** selected icon class */\n public stateOn: string;\n /** unselected icon class */\n public stateOff: string;\n /** if true will not react on any user events */\n public readonly: boolean;\n /** array of icons titles, default: ([\"one\", \"two\", \"three\", \"four\", \"five\"]) */\n public titles: string[];\n /** array of custom icons classes */\n public ratingStates: {stateOn: string, stateOff: string}[];\n /** fired when icon selected, $event:number equals to selected rating */\n public onHover: EventEmitter<number> = new EventEmitter();\n /** fired when icon selected, $event:number equals to previous rating value */\n public onLeave: EventEmitter<number> = new EventEmitter();\n\n public onChange: any = Function.prototype;\n public onTouched: any = Function.prototype;\n\n public range: any[];\n public value: number;\n protected preValue: number;\n\n \n public onKeydown(event: any): void {\n if ([37, 38, 39, 40].indexOf(event.which) === -1) {\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n let sign = event.which === 38 || event.which === 39 ? 1 : -1;\n this.rate(this.value + sign);\n }\n\n public ngOnInit(): void {\n this.max = typeof this.max !== 'undefined' ? this.max : 5;\n this.readonly = this.readonly === true;\n this.stateOn = typeof this.stateOn !== 'undefined'\n ? this.stateOn\n : 'glyphicon-star';\n this.stateOff = typeof this.stateOff !== 'undefined'\n ? this.stateOff\n : 'glyphicon-star-empty';\n this.titles = typeof this.titles !== 'undefined' && this.titles.length > 0\n ? this.titles\n : ['one', 'two', 'three', 'four', 'five'];\n this.range = this.buildTemplateObjects(this.ratingStates, this.max);\n }\n\n // model -> view\n public writeValue(value: number): void {\n if (value % 1 !== value) {\n this.value = Math.round(value);\n this.preValue = value;\n return;\n }\n\n this.preValue = value;\n this.value = value;\n }\n\n public enter(value: number): void {\n if (!this.readonly) {\n this.value = value;\n this.onHover.emit(value);\n }\n }\n\n public reset(): void {\n this.value = this.preValue;\n this.onLeave.emit(this.value);\n }\n\n public registerOnChange(fn: (_: any) => {}): void {\n this.onChange = fn;\n }\n\n public registerOnTouched(fn: () => {}): void {\n this.onTouched = fn;\n }\n\n public rate(value: number): void {\n if (!this.readonly && value >= 0 && value <= this.range.length) {\n this.writeValue(value);\n this.onChange(value);\n }\n }\n\n protected buildTemplateObjects(ratingStates: any[], max: number): any[] {\n ratingStates = ratingStates || [];\n let count = ratingStates.length || max;\n let result: any[] = [];\n for (let i = 0; i < count; i++) {\n result.push(Object.assign({\n index: i,\n stateOn: this.stateOn,\n stateOff: this.stateOff,\n title: this.titles[i] || i + 1\n }, ratingStates[i] || {}));\n }\n return result;\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'rating',\n template: `\n <span (mouseleave)=\"reset()\" (keydown)=\"onKeydown($event)\" tabindex=\"0\" role=\"slider\" aria-valuemin=\"0\" [attr.aria-valuemax]=\"range.length\" [attr.aria-valuenow]=\"value\">\n <template ngFor let-r [ngForOf]=\"range\" let-index=\"index\">\n <span class=\"sr-only\">({{ index < value ? '*' : ' ' }})</span>\n <i (mouseenter)=\"enter(index + 1)\" (click)=\"rate(index + 1)\" class=\"glyphicon\" [ngClass]=\"index < value ? r.stateOn : r.stateOff\" [title]=\"r.title\" ></i>\n </template>\n </span>\n `,\n providers: [RATING_CONTROL_VALUE_ACCESSOR]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'max': [{ type: Input },],\n'stateOn': [{ type: Input },],\n'stateOff': [{ type: Input },],\n'readonly': [{ type: Input },],\n'titles': [{ type: Input },],\n'ratingStates': [{ type: Input },],\n'onHover': [{ type: Output },],\n'onLeave': [{ type: Output },],\n'onKeydown': [{ type: HostListener, args: ['keydown', ['$event'], ] },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n"]}
@@ -1,7 +1,7 @@
1
1
  import { CommonModule } from '@angular/common';
2
2
  import { NgModule } from '@angular/core';
3
3
  import { RatingComponent } from './rating.component';
4
- export var RatingModule = (function () {
4
+ var RatingModule = (function () {
5
5
  function RatingModule() {
6
6
  }
7
7
  RatingModule.forRoot = function () {
@@ -21,4 +21,5 @@ export var RatingModule = (function () {
21
21
  RatingModule.ctorParameters = function () { return []; };
22
22
  return RatingModule;
23
23
  }());
24
+ export { RatingModule };
24
25
  //# sourceMappingURL=rating.module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rating.module.js","sourceRoot":"","sources":["../../src/rating/rating.module.ts"],"names":[],"mappings":"OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB;OACvC,EAAE,QAAQ,EAAuB,MAAM,eAAe;OACtD,EAAE,eAAe,EAAE,MAAM,oBAAoB;AAGpD;IAAA;IAiBA,CAAC;IAhBe,oBAAO,GAArB;QACE,MAAM,CAAC;YACL,QAAQ,EAAE,YAAY;YACtB,SAAS,EAAE,EAAE;SACd,CAAC;IACJ,CAAC;IACI,uBAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;oBACvB,OAAO,EAAE,CAAC,YAAY,CAAC;oBACvB,YAAY,EAAE,CAAC,eAAe,CAAC;oBAC/B,OAAO,EAAE,CAAC,eAAe,CAAC;iBAC3B,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,2BAAc,GAAmE,cAAM,OAAA,EAC7F,EAD6F,CAC7F,CAAC;IACF,mBAAC;AAAD,CAAC,AAjBD,IAiBC","sourcesContent":["import { CommonModule } from '@angular/common';\nimport { NgModule, ModuleWithProviders } from '@angular/core';\nimport { RatingComponent } from './rating.component';\n\n\nexport class RatingModule {\n public static forRoot(): ModuleWithProviders {\n return {\n ngModule: RatingModule,\n providers: []\n };\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: NgModule, args: [{\n imports: [CommonModule],\n declarations: [RatingComponent],\n exports: [RatingComponent]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n"]}
1
+ {"version":3,"sources":["../../.tmp/rating/rating.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAA,EAAa,MAAO,iBAAA,CAAkB;AAC/C,OAAO,EAAE,QAAA,EAA8B,MAAO,eAAA,CAAgB;AAC9D,OAAO,EAAE,eAAA,EAAgB,MAAO,oBAAA,CAAqB;AAGrD;IAAA;IAiBA,CAAC;IAhBe,oBAAO,GAArB;QACE,MAAM,CAAC;YACL,QAAQ,EAAE,YAAY;YACtB,SAAS,EAAE,EAAE;SACd,CAAC;IACJ,CAAC;IACI,uBAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;oBACvB,OAAO,EAAE,CAAC,YAAY,CAAC;oBACvB,YAAY,EAAE,CAAC,eAAe,CAAC;oBAC/B,OAAO,EAAE,CAAC,eAAe,CAAC;iBAC3B,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,2BAAc,GAAmE,cAAM,OAAA,EAC7F,EAD6F,CAC7F,CAAC;IACF,mBAAC;CAjBD,AAiBC,IAAA;SAjBY,YAAY","file":"rating.module.js","sourceRoot":"","sourcesContent":["import { CommonModule } from '@angular/common';\nimport { NgModule, ModuleWithProviders } from '@angular/core';\nimport { RatingComponent } from './rating.component';\n\n\nexport class RatingModule {\n public static forRoot(): ModuleWithProviders {\n return {\n ngModule: RatingModule,\n providers: []\n };\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: NgModule, args: [{\n imports: [CommonModule],\n declarations: [RatingComponent],\n exports: [RatingComponent]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"draggable-item.js","sourceRoot":"","sources":["../../src/sortable/draggable-item.ts"],"names":[],"mappings":"","sourcesContent":["export interface DraggableItem {\n event: DragEvent;\n item: any;\n i: number;\n initialIndex: number;\n lastZoneIndex: number;\n overZoneIndex: number;\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n"]}
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"draggable-item.js","sourceRoot":"","sourcesContent":[]}
@@ -0,0 +1 @@
1
+ [{"__symbolic":"module","version":3,"metadata":{"DraggableItem":{"__symbolic":"interface"}}},{"__symbolic":"module","version":1,"metadata":{"DraggableItem":{"__symbolic":"interface"}}}]
@@ -1,6 +1,6 @@
1
1
  import { Injectable } from '@angular/core';
2
2
  import { Subject } from 'rxjs/Subject';
3
- export var DraggableItemService = (function () {
3
+ var DraggableItemService = (function () {
4
4
  function DraggableItemService() {
5
5
  this.onCapture = new Subject();
6
6
  }
@@ -29,4 +29,5 @@ export var DraggableItemService = (function () {
29
29
  DraggableItemService.ctorParameters = function () { return []; };
30
30
  return DraggableItemService;
31
31
  }());
32
+ export { DraggableItemService };
32
33
  //# sourceMappingURL=draggable-item.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"draggable-item.service.js","sourceRoot":"","sources":["../../src/sortable/draggable-item.service.ts"],"names":[],"mappings":"OAAO,EAAE,UAAU,EAAE,MAAM,eAAe;OAEnC,EAAE,OAAO,EAAE,MAAM,cAAc;AAItC;IAAA;QAGY,cAAS,GAA2B,IAAI,OAAO,EAAiB,CAAC;IAiC7E,CAAC;IA/BU,wCAAS,GAAhB,UAAiB,IAAmB;QAChC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;IAC9B,CAAC;IAEM,sCAAO,GAAd;QACI,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAEM,0CAAW,GAAlB,UAAmB,aAAqB,EAAE,QAAgB;QACtD,EAAE,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,KAAK,aAAa,CAAC,CAAC,CAAC;YACrD,IAAI,CAAC,aAAa,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC;YACpE,IAAI,CAAC,aAAa,CAAC,aAAa,GAAG,aAAa,CAAC;YACjD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YACxC,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,MAAM,CAC9B,EAAE,EACF,IAAI,CAAC,aAAa,EAClB,EAAE,4BAAa,EAAE,CAAC,EAAE,QAAQ,EAAE,CACjC,CAAC;QACN,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAEM,4CAAa,GAApB;QACI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IACE,+BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,UAAU,EAAE;KACnB,CAAC;IACF,kBAAkB;IACX,mCAAc,GAAmE,cAAM,OAAA,EAC7F,EAD6F,CAC7F,CAAC;IACF,2BAAC;AAAD,CAAC,AApCD,IAoCC","sourcesContent":["import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs/Observable';\nimport { Subject } from 'rxjs/Subject';\nimport { DraggableItem } from './draggable-item';\n\n\nexport class DraggableItemService {\n private draggableItem: DraggableItem;\n\n private onCapture: Subject<DraggableItem> = new Subject<DraggableItem>();\n\n public dragStart(item: DraggableItem): void {\n this.draggableItem = item;\n }\n\n public getItem(): DraggableItem {\n return this.draggableItem;\n }\n\n public captureItem(overZoneIndex: number, newIndex: number): DraggableItem {\n if (this.draggableItem.overZoneIndex !== overZoneIndex) {\n this.draggableItem.lastZoneIndex = this.draggableItem.overZoneIndex;\n this.draggableItem.overZoneIndex = overZoneIndex;\n this.onCapture.next(this.draggableItem);\n this.draggableItem = Object.assign(\n {},\n this.draggableItem,\n { overZoneIndex, i: newIndex }\n );\n }\n return this.draggableItem;\n }\n\n public onCaptureItem(): Observable<DraggableItem> {\n return this.onCapture;\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Injectable },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n"]}
1
+ {"version":3,"sources":["../../.tmp/sortable/draggable-item.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAA,EAAW,MAAO,eAAA,CAAgB;AAE3C,OAAO,EAAE,OAAA,EAAQ,MAAO,cAAA,CAAe;AAIvC;IAAA;QAGY,cAAS,GAA2B,IAAI,OAAO,EAAiB,CAAC;IAiC7E,CAAC;IA/BU,wCAAS,GAAhB,UAAiB,IAAmB;QAChC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;IAC9B,CAAC;IAEM,sCAAO,GAAd;QACI,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAEM,0CAAW,GAAlB,UAAmB,aAAqB,EAAE,QAAgB;QACtD,EAAE,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,KAAK,aAAa,CAAC,CAAC,CAAC;YACrD,IAAI,CAAC,aAAa,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC;YACpE,IAAI,CAAC,aAAa,CAAC,aAAa,GAAG,aAAa,CAAC;YACjD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YACxC,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,MAAM,CAC9B,EAAE,EACF,IAAI,CAAC,aAAa,EAClB,EAAE,aAAa,eAAA,EAAE,CAAC,EAAE,QAAQ,EAAE,CACjC,CAAC;QACN,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAEM,4CAAa,GAApB;QACI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IACE,+BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,UAAU,EAAE;KACnB,CAAC;IACF,kBAAkB;IACX,mCAAc,GAAmE,cAAM,OAAA,EAC7F,EAD6F,CAC7F,CAAC;IACF,2BAAC;CApCD,AAoCC,IAAA;SApCY,oBAAoB","file":"draggable-item.service.js","sourceRoot":"","sourcesContent":["import { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs/Observable';\nimport { Subject } from 'rxjs/Subject';\nimport { DraggableItem } from './draggable-item';\n\n\nexport class DraggableItemService {\n private draggableItem: DraggableItem;\n\n private onCapture: Subject<DraggableItem> = new Subject<DraggableItem>();\n\n public dragStart(item: DraggableItem): void {\n this.draggableItem = item;\n }\n\n public getItem(): DraggableItem {\n return this.draggableItem;\n }\n\n public captureItem(overZoneIndex: number, newIndex: number): DraggableItem {\n if (this.draggableItem.overZoneIndex !== overZoneIndex) {\n this.draggableItem.lastZoneIndex = this.draggableItem.overZoneIndex;\n this.draggableItem.overZoneIndex = overZoneIndex;\n this.onCapture.next(this.draggableItem);\n this.draggableItem = Object.assign(\n {},\n this.draggableItem,\n { overZoneIndex, i: newIndex }\n );\n }\n return this.draggableItem;\n }\n\n public onCaptureItem(): Observable<DraggableItem> {\n return this.onCapture;\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Injectable },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/sortable/index.ts"],"names":[],"mappings":"AAAA,SAAS,cAAc,QAAQ,mBAAmB,CAAC;AACnD,SAAS,iBAAiB,QAAsB,sBAAsB,CAAC;AACvE,SAAS,oBAAoB,QAAQ,0BAA0B,CAAC;AACf","sourcesContent":["export { SortableModule } from './sortable.module';\nexport { SortableComponent, SortableItem } from './sortable.component';\nexport { DraggableItemService } from './draggable-item.service';\nexport { DraggableItem } from './draggable-item';\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n"]}
1
+ {"version":3,"sources":["../../.tmp/sortable/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAgB,MAAM,sBAAsB,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC","file":"index.js","sourceRoot":"","sourcesContent":["export { SortableModule } from './sortable.module';\nexport { SortableComponent, SortableItem } from './sortable.component';\nexport { DraggableItemService } from './draggable-item.service';\nexport { DraggableItem } from './draggable-item';\n"]}
@@ -3,7 +3,7 @@ import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
3
  import { DraggableItemService } from './draggable-item.service';
4
4
  /* tslint:disable */
5
5
  /* tslint:enable */
6
- export var SortableComponent = (function () {
6
+ var SortableComponent = (function () {
7
7
  function SortableComponent(transfer) {
8
8
  var _this = this;
9
9
  /** class name for items wrapper */
@@ -173,4 +173,5 @@ export var SortableComponent = (function () {
173
173
  };
174
174
  return SortableComponent;
175
175
  }());
176
+ export { SortableComponent };
176
177
  //# sourceMappingURL=sortable.component.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sortable.component.js","sourceRoot":"","sources":["../../src/sortable/sortable.component.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n Component, Input, Output, EventEmitter, forwardRef, TemplateRef\n} from '@angular/core';\nimport { NG_VALUE_ACCESSOR, ControlValueAccessor } from '@angular/forms';\nimport { DraggableItem } from './draggable-item';\nimport { DraggableItemService } from './draggable-item.service';\n\n/* tslint:disable */\n\n/* tslint:enable */\nexport class SortableComponent implements ControlValueAccessor {\n private static globalZoneIndex: number = 0;\n\n /** field name if input array consists of objects */\n public fieldName: string;\n\n /** class name for items wrapper */\n public wrapperClass: string = '';\n\n /** style object for items wrapper */\n public wrapperStyle: {[key: string]: string} = {};\n\n /** class name for item */\n public itemClass: string = '';\n\n /** style object for item */\n public itemStyle: {[key: string]: string} = {};\n\n /** class name for active item */\n public itemActiveClass: string = '';\n\n /** style object for active item */\n public itemActiveStyle: {[key: string]: string} = {};\n\n /** class name for placeholder */\n public placeholderClass: string = '';\n\n /** style object for placeholder */\n public placeholderStyle: {[key: string]: string} = {};\n\n /** placeholder item which will be shown if collection is empty */\n public placeholderItem: string = '';\n\n /** used to specify a custom item template. Template variables: item and index; */\n public itemTemplate: TemplateRef<any>;\n\n /** fired on array change (reordering, insert, remove), same as <code>ngModelChange</code>.\n * Returns new items collection as a payload.\n */\n public onChange: EventEmitter<any[]> = new EventEmitter<any[]>();\n\n public showPlaceholder: boolean = false;\n public activeItem: number = -1;\n\n public get items(): SortableItem[] {\n return this._items;\n }\n\n public set items(value: SortableItem[]) {\n this._items = value;\n let out = this.items.map((x: SortableItem) => x.initData);\n this.onChanged(out);\n this.onChange.emit(out);\n }\n\n public onTouched: any = Function.prototype;\n public onChanged: any = Function.prototype;\n\n private transfer: DraggableItemService;\n private currentZoneIndex: number;\n private _items: SortableItem[];\n\n public constructor(transfer: DraggableItemService) {\n this.transfer = transfer;\n this.currentZoneIndex = SortableComponent.globalZoneIndex++;\n this.transfer.onCaptureItem()\n .subscribe((item: DraggableItem) => this.onDrop(item));\n }\n\n public onItemDragstart(event: DragEvent, item: SortableItem, i: number): void {\n this.initDragstartEvent(event);\n this.onTouched();\n this.transfer.dragStart({\n event,\n item,\n i,\n initialIndex: i,\n lastZoneIndex: this.currentZoneIndex,\n overZoneIndex: this.currentZoneIndex\n });\n }\n\n public onItemDragover(event: DragEvent, i: number): void {\n if (!this.transfer.getItem()) {\n return;\n }\n event.preventDefault();\n let dragItem = this.transfer.captureItem(this.currentZoneIndex, this.items.length);\n let newArray: any[] = [];\n if (!this.items.length) {\n newArray = [dragItem.item];\n } else if (dragItem.i > i) {\n newArray = [\n ...this.items.slice(0, i),\n dragItem.item,\n ...this.items.slice(i, dragItem.i),\n ...this.items.slice(dragItem.i + 1)\n ];\n } else { // this.draggedItem.i < i\n newArray = [\n ...this.items.slice(0, dragItem.i),\n ...this.items.slice(dragItem.i + 1, i + 1),\n dragItem.item,\n ...this.items.slice(i + 1)\n ];\n }\n this.items = newArray;\n dragItem.i = i;\n this.activeItem = i;\n this.updatePlaceholderState();\n }\n\n public cancelEvent(event: DragEvent): void {\n if (!this.transfer.getItem() || !event) {\n return;\n }\n event.preventDefault();\n }\n\n public onDrop(item: DraggableItem): void {\n if (item &&\n item.overZoneIndex !== this.currentZoneIndex &&\n item.lastZoneIndex === this.currentZoneIndex\n ) {\n this.items = this.items.filter((x: SortableItem, i: number) => i !== item.i);\n this.updatePlaceholderState();\n }\n this.resetActiveItem(undefined);\n }\n\n public resetActiveItem(event: DragEvent): void {\n this.cancelEvent(event);\n this.activeItem = -1;\n }\n\n public registerOnChange(callback: (_: any) => void): void {\n this.onChanged = callback;\n }\n\n public registerOnTouched(callback: () => void): void {\n this.onTouched = callback;\n }\n\n public writeValue(value: any[]): void {\n if (value) {\n this.items = value.map((x: any, i: number) => ({\n id: i,\n initData: x,\n value: this.fieldName ? x[this.fieldName] : x\n }));\n } else {\n this.items = [];\n }\n this.updatePlaceholderState();\n }\n\n public updatePlaceholderState(): void {\n this.showPlaceholder = !this._items.length;\n }\n\n public getItemStyle(isActive: boolean): {} {\n return isActive\n ? Object.assign({}, this.itemStyle, this.itemActiveStyle)\n : this.itemStyle;\n }\n\n private initDragstartEvent(event: DragEvent): void {\n // it is necessary for mozilla\n // data type should be 'Text' instead of 'text/plain' to keep compatibility\n // with IE\n event.dataTransfer.setData('Text', 'placeholder');\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'bs-sortable',\n exportAs: 'bs-sortable',\n template: `\n<div\n [ngClass]=\"wrapperClass\"\n [ngStyle]=\"wrapperStyle\"\n [ngStyle]=\"wrapperStyle\"\n (dragover)=\"cancelEvent($event)\"\n (dragenter)=\"cancelEvent($event)\"\n (drop)=\"resetActiveItem($event)\"\n (mouseleave)=\"resetActiveItem($event)\">\n <div\n *ngIf=\"showPlaceholder\"\n [ngClass]=\"placeholderClass\"\n [ngStyle]=\"placeholderStyle\"\n (dragover)=\"onItemDragover($event, 0)\"\n (dragenter)=\"cancelEvent($event)\"\n >{{placeholderItem}}</div>\n <div\n *ngFor=\"let item of items; let i=index;\"\n [ngClass]=\"[ itemClass, i === activeItem ? itemActiveClass : '' ]\"\n [ngStyle]=\"getItemStyle(i === activeItem)\"\n draggable=\"true\"\n (dragstart)=\"onItemDragstart($event, item, i)\"\n (dragend)=\"resetActiveItem($event)\"\n (dragover)=\"onItemDragover($event, i)\"\n (dragenter)=\"cancelEvent($event)\"\n ><template [ngTemplateOutlet]=\"itemTemplate || defItemTemplate\"\n [ngOutletContext]=\"{item:item, index: i}\"></template></div>\n</div>\n\n<template #defItemTemplate let-item=\"item\">{{item.value}}</template> \n`,\n providers: [{\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => SortableComponent),\n multi: true\n }],\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: DraggableItemService, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'fieldName': [{ type: Input },],\n'wrapperClass': [{ type: Input },],\n'wrapperStyle': [{ type: Input },],\n'itemClass': [{ type: Input },],\n'itemStyle': [{ type: Input },],\n'itemActiveClass': [{ type: Input },],\n'itemActiveStyle': [{ type: Input },],\n'placeholderClass': [{ type: Input },],\n'placeholderStyle': [{ type: Input },],\n'placeholderItem': [{ type: Input },],\n'itemTemplate': [{ type: Input },],\n'onChange': [{ type: Output },],\n};\n}\n\nexport declare interface SortableItem {\n id: number;\n value: string;\n initData: any;\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n"]}
1
+ {"version":3,"sources":["../../.tmp/sortable/sortable.component.ts"],"names":[],"mappings":"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","file":"sortable.component.js","sourceRoot":"","sourcesContent":["import {\n Component, Input, Output, EventEmitter, forwardRef, TemplateRef\n} from '@angular/core';\nimport { NG_VALUE_ACCESSOR, ControlValueAccessor } from '@angular/forms';\nimport { DraggableItem } from './draggable-item';\nimport { DraggableItemService } from './draggable-item.service';\n\n/* tslint:disable */\n\n/* tslint:enable */\nexport class SortableComponent implements ControlValueAccessor {\n private static globalZoneIndex: number = 0;\n\n /** field name if input array consists of objects */\n public fieldName: string;\n\n /** class name for items wrapper */\n public wrapperClass: string = '';\n\n /** style object for items wrapper */\n public wrapperStyle: {[key: string]: string} = {};\n\n /** class name for item */\n public itemClass: string = '';\n\n /** style object for item */\n public itemStyle: {[key: string]: string} = {};\n\n /** class name for active item */\n public itemActiveClass: string = '';\n\n /** style object for active item */\n public itemActiveStyle: {[key: string]: string} = {};\n\n /** class name for placeholder */\n public placeholderClass: string = '';\n\n /** style object for placeholder */\n public placeholderStyle: {[key: string]: string} = {};\n\n /** placeholder item which will be shown if collection is empty */\n public placeholderItem: string = '';\n\n /** used to specify a custom item template. Template variables: item and index; */\n public itemTemplate: TemplateRef<any>;\n\n /** fired on array change (reordering, insert, remove), same as <code>ngModelChange</code>.\n * Returns new items collection as a payload.\n */\n public onChange: EventEmitter<any[]> = new EventEmitter<any[]>();\n\n public showPlaceholder: boolean = false;\n public activeItem: number = -1;\n\n public get items(): SortableItem[] {\n return this._items;\n }\n\n public set items(value: SortableItem[]) {\n this._items = value;\n let out = this.items.map((x: SortableItem) => x.initData);\n this.onChanged(out);\n this.onChange.emit(out);\n }\n\n public onTouched: any = Function.prototype;\n public onChanged: any = Function.prototype;\n\n private transfer: DraggableItemService;\n private currentZoneIndex: number;\n private _items: SortableItem[];\n\n public constructor(transfer: DraggableItemService) {\n this.transfer = transfer;\n this.currentZoneIndex = SortableComponent.globalZoneIndex++;\n this.transfer.onCaptureItem()\n .subscribe((item: DraggableItem) => this.onDrop(item));\n }\n\n public onItemDragstart(event: DragEvent, item: SortableItem, i: number): void {\n this.initDragstartEvent(event);\n this.onTouched();\n this.transfer.dragStart({\n event,\n item,\n i,\n initialIndex: i,\n lastZoneIndex: this.currentZoneIndex,\n overZoneIndex: this.currentZoneIndex\n });\n }\n\n public onItemDragover(event: DragEvent, i: number): void {\n if (!this.transfer.getItem()) {\n return;\n }\n event.preventDefault();\n let dragItem = this.transfer.captureItem(this.currentZoneIndex, this.items.length);\n let newArray: any[] = [];\n if (!this.items.length) {\n newArray = [dragItem.item];\n } else if (dragItem.i > i) {\n newArray = [\n ...this.items.slice(0, i),\n dragItem.item,\n ...this.items.slice(i, dragItem.i),\n ...this.items.slice(dragItem.i + 1)\n ];\n } else { // this.draggedItem.i < i\n newArray = [\n ...this.items.slice(0, dragItem.i),\n ...this.items.slice(dragItem.i + 1, i + 1),\n dragItem.item,\n ...this.items.slice(i + 1)\n ];\n }\n this.items = newArray;\n dragItem.i = i;\n this.activeItem = i;\n this.updatePlaceholderState();\n }\n\n public cancelEvent(event: DragEvent): void {\n if (!this.transfer.getItem() || !event) {\n return;\n }\n event.preventDefault();\n }\n\n public onDrop(item: DraggableItem): void {\n if (item &&\n item.overZoneIndex !== this.currentZoneIndex &&\n item.lastZoneIndex === this.currentZoneIndex\n ) {\n this.items = this.items.filter((x: SortableItem, i: number) => i !== item.i);\n this.updatePlaceholderState();\n }\n this.resetActiveItem(undefined);\n }\n\n public resetActiveItem(event: DragEvent): void {\n this.cancelEvent(event);\n this.activeItem = -1;\n }\n\n public registerOnChange(callback: (_: any) => void): void {\n this.onChanged = callback;\n }\n\n public registerOnTouched(callback: () => void): void {\n this.onTouched = callback;\n }\n\n public writeValue(value: any[]): void {\n if (value) {\n this.items = value.map((x: any, i: number) => ({\n id: i,\n initData: x,\n value: this.fieldName ? x[this.fieldName] : x\n }));\n } else {\n this.items = [];\n }\n this.updatePlaceholderState();\n }\n\n public updatePlaceholderState(): void {\n this.showPlaceholder = !this._items.length;\n }\n\n public getItemStyle(isActive: boolean): {} {\n return isActive\n ? Object.assign({}, this.itemStyle, this.itemActiveStyle)\n : this.itemStyle;\n }\n\n private initDragstartEvent(event: DragEvent): void {\n // it is necessary for mozilla\n // data type should be 'Text' instead of 'text/plain' to keep compatibility\n // with IE\n event.dataTransfer.setData('Text', 'placeholder');\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'bs-sortable',\n exportAs: 'bs-sortable',\n template: `\n<div\n [ngClass]=\"wrapperClass\"\n [ngStyle]=\"wrapperStyle\"\n [ngStyle]=\"wrapperStyle\"\n (dragover)=\"cancelEvent($event)\"\n (dragenter)=\"cancelEvent($event)\"\n (drop)=\"resetActiveItem($event)\"\n (mouseleave)=\"resetActiveItem($event)\">\n <div\n *ngIf=\"showPlaceholder\"\n [ngClass]=\"placeholderClass\"\n [ngStyle]=\"placeholderStyle\"\n (dragover)=\"onItemDragover($event, 0)\"\n (dragenter)=\"cancelEvent($event)\"\n >{{placeholderItem}}</div>\n <div\n *ngFor=\"let item of items; let i=index;\"\n [ngClass]=\"[ itemClass, i === activeItem ? itemActiveClass : '' ]\"\n [ngStyle]=\"getItemStyle(i === activeItem)\"\n draggable=\"true\"\n (dragstart)=\"onItemDragstart($event, item, i)\"\n (dragend)=\"resetActiveItem($event)\"\n (dragover)=\"onItemDragover($event, i)\"\n (dragenter)=\"cancelEvent($event)\"\n ><template [ngTemplateOutlet]=\"itemTemplate || defItemTemplate\"\n [ngOutletContext]=\"{item:item, index: i}\"></template></div>\n</div>\n\n<template #defItemTemplate let-item=\"item\">{{item.value}}</template> \n`,\n providers: [{\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => SortableComponent),\n multi: true\n }],\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: DraggableItemService, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'fieldName': [{ type: Input },],\n'wrapperClass': [{ type: Input },],\n'wrapperStyle': [{ type: Input },],\n'itemClass': [{ type: Input },],\n'itemStyle': [{ type: Input },],\n'itemActiveClass': [{ type: Input },],\n'itemActiveStyle': [{ type: Input },],\n'placeholderClass': [{ type: Input },],\n'placeholderStyle': [{ type: Input },],\n'placeholderItem': [{ type: Input },],\n'itemTemplate': [{ type: Input },],\n'onChange': [{ type: Output },],\n};\n}\n\nexport declare interface SortableItem {\n id: number;\n value: string;\n initData: any;\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n"]}
@@ -1 +1 @@
1
- [{"__symbolic":"module","version":3,"metadata":{"SortableComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component"},"arguments":[{"selector":"bs-sortable","exportAs":"bs-sortable","template":"\n<div\n [ngClass]=\"wrapperClass\"\n [ngStyle]=\"wrapperStyle\"\n [ngStyle]=\"wrapperStyle\"\n (dragover)=\"cancelEvent($event)\"\n (dragenter)=\"cancelEvent($event)\"\n (drop)=\"resetActiveItem($event)\"\n (mouseleave)=\"resetActiveItem($event)\">\n <div\n *ngIf=\"showPlaceholder\"\n [ngClass]=\"placeholderClass\"\n [ngStyle]=\"placeholderStyle\"\n (dragover)=\"onItemDragover($event, 0)\"\n (dragenter)=\"cancelEvent($event)\"\n >{{placeholderItem}}</div>\n <div\n *ngFor=\"let item of items; let i=index;\"\n [ngClass]=\"[ itemClass, i === activeItem ? itemActiveClass : '' ]\"\n [ngStyle]=\"getItemStyle(i === activeItem)\"\n draggable=\"true\"\n (dragstart)=\"onItemDragstart($event, item, i)\"\n (dragend)=\"resetActiveItem($event)\"\n (dragover)=\"onItemDragover($event, i)\"\n (dragenter)=\"cancelEvent($event)\"\n ><template [ngTemplateOutlet]=\"itemTemplate || defItemTemplate\"\n [ngOutletContext]=\"{item:item, index: i}\"></template></div>\n</div>\n\n<template #defItemTemplate let-item=\"item\">{{item.value}}</template> \n","providers":[{"provide":{"__symbolic":"reference","module":"@angular/forms","name":"NG_VALUE_ACCESSOR"},"useExisting":{"__symbolic":"reference","name":"SortableComponent"},"multi":true}]}]}],"members":{"fieldName":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"wrapperClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"wrapperStyle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"itemClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"itemStyle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"itemActiveClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"itemActiveStyle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"placeholderClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"placeholderStyle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"placeholderItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"itemTemplate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"onChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"./draggable-item.service","name":"DraggableItemService"}]}],"onItemDragstart":[{"__symbolic":"method"}],"onItemDragover":[{"__symbolic":"method"}],"cancelEvent":[{"__symbolic":"method"}],"onDrop":[{"__symbolic":"method"}],"resetActiveItem":[{"__symbolic":"method"}],"registerOnChange":[{"__symbolic":"method"}],"registerOnTouched":[{"__symbolic":"method"}],"writeValue":[{"__symbolic":"method"}],"updatePlaceholderState":[{"__symbolic":"method"}],"getItemStyle":[{"__symbolic":"method"}],"initDragstartEvent":[{"__symbolic":"method"}]},"statics":{"globalZoneIndex":0}}}},{"__symbolic":"module","version":1,"metadata":{"SortableComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component"},"arguments":[{"selector":"bs-sortable","exportAs":"bs-sortable","template":"\n<div\n [ngClass]=\"wrapperClass\"\n [ngStyle]=\"wrapperStyle\"\n [ngStyle]=\"wrapperStyle\"\n (dragover)=\"cancelEvent($event)\"\n (dragenter)=\"cancelEvent($event)\"\n (drop)=\"resetActiveItem($event)\"\n (mouseleave)=\"resetActiveItem($event)\">\n <div\n *ngIf=\"showPlaceholder\"\n [ngClass]=\"placeholderClass\"\n [ngStyle]=\"placeholderStyle\"\n (dragover)=\"onItemDragover($event, 0)\"\n (dragenter)=\"cancelEvent($event)\"\n >{{placeholderItem}}</div>\n <div\n *ngFor=\"let item of items; let i=index;\"\n [ngClass]=\"[ itemClass, i === activeItem ? itemActiveClass : '' ]\"\n [ngStyle]=\"getItemStyle(i === activeItem)\"\n draggable=\"true\"\n (dragstart)=\"onItemDragstart($event, item, i)\"\n (dragend)=\"resetActiveItem($event)\"\n (dragover)=\"onItemDragover($event, i)\"\n (dragenter)=\"cancelEvent($event)\"\n ><template [ngTemplateOutlet]=\"itemTemplate || defItemTemplate\"\n [ngOutletContext]=\"{item:item, index: i}\"></template></div>\n</div>\n\n<template #defItemTemplate let-item=\"item\">{{item.value}}</template> \n","providers":[{"provide":{"__symbolic":"reference","module":"@angular/forms","name":"NG_VALUE_ACCESSOR"},"useExisting":{"__symbolic":"reference","name":"SortableComponent"},"multi":true}]}]}],"members":{"fieldName":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"wrapperClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"wrapperStyle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"itemClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"itemStyle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"itemActiveClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"itemActiveStyle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"placeholderClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"placeholderStyle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"placeholderItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"itemTemplate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"onChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"./draggable-item.service","name":"DraggableItemService"}]}],"onItemDragstart":[{"__symbolic":"method"}],"onItemDragover":[{"__symbolic":"method"}],"cancelEvent":[{"__symbolic":"method"}],"onDrop":[{"__symbolic":"method"}],"resetActiveItem":[{"__symbolic":"method"}],"registerOnChange":[{"__symbolic":"method"}],"registerOnTouched":[{"__symbolic":"method"}],"writeValue":[{"__symbolic":"method"}],"updatePlaceholderState":[{"__symbolic":"method"}],"getItemStyle":[{"__symbolic":"method"}],"initDragstartEvent":[{"__symbolic":"method"}]},"statics":{"globalZoneIndex":0}}}}]
1
+ [{"__symbolic":"module","version":3,"metadata":{"SortableComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component"},"arguments":[{"selector":"bs-sortable","exportAs":"bs-sortable","template":"\n<div\n [ngClass]=\"wrapperClass\"\n [ngStyle]=\"wrapperStyle\"\n [ngStyle]=\"wrapperStyle\"\n (dragover)=\"cancelEvent($event)\"\n (dragenter)=\"cancelEvent($event)\"\n (drop)=\"resetActiveItem($event)\"\n (mouseleave)=\"resetActiveItem($event)\">\n <div\n *ngIf=\"showPlaceholder\"\n [ngClass]=\"placeholderClass\"\n [ngStyle]=\"placeholderStyle\"\n (dragover)=\"onItemDragover($event, 0)\"\n (dragenter)=\"cancelEvent($event)\"\n >{{placeholderItem}}</div>\n <div\n *ngFor=\"let item of items; let i=index;\"\n [ngClass]=\"[ itemClass, i === activeItem ? itemActiveClass : '' ]\"\n [ngStyle]=\"getItemStyle(i === activeItem)\"\n draggable=\"true\"\n (dragstart)=\"onItemDragstart($event, item, i)\"\n (dragend)=\"resetActiveItem($event)\"\n (dragover)=\"onItemDragover($event, i)\"\n (dragenter)=\"cancelEvent($event)\"\n ><template [ngTemplateOutlet]=\"itemTemplate || defItemTemplate\"\n [ngOutletContext]=\"{item:item, index: i}\"></template></div>\n</div>\n\n<template #defItemTemplate let-item=\"item\">{{item.value}}</template> \n","providers":[{"provide":{"__symbolic":"reference","module":"@angular/forms","name":"NG_VALUE_ACCESSOR"},"useExisting":{"__symbolic":"reference","name":"SortableComponent"},"multi":true}]}]}],"members":{"fieldName":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"wrapperClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"wrapperStyle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"itemClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"itemStyle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"itemActiveClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"itemActiveStyle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"placeholderClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"placeholderStyle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"placeholderItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"itemTemplate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"onChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"./draggable-item.service","name":"DraggableItemService"}]}],"onItemDragstart":[{"__symbolic":"method"}],"onItemDragover":[{"__symbolic":"method"}],"cancelEvent":[{"__symbolic":"method"}],"onDrop":[{"__symbolic":"method"}],"resetActiveItem":[{"__symbolic":"method"}],"registerOnChange":[{"__symbolic":"method"}],"registerOnTouched":[{"__symbolic":"method"}],"writeValue":[{"__symbolic":"method"}],"updatePlaceholderState":[{"__symbolic":"method"}],"getItemStyle":[{"__symbolic":"method"}],"initDragstartEvent":[{"__symbolic":"method"}]},"statics":{"globalZoneIndex":0}},"SortableItem":{"__symbolic":"interface"}}},{"__symbolic":"module","version":1,"metadata":{"SortableComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component"},"arguments":[{"selector":"bs-sortable","exportAs":"bs-sortable","template":"\n<div\n [ngClass]=\"wrapperClass\"\n [ngStyle]=\"wrapperStyle\"\n [ngStyle]=\"wrapperStyle\"\n (dragover)=\"cancelEvent($event)\"\n (dragenter)=\"cancelEvent($event)\"\n (drop)=\"resetActiveItem($event)\"\n (mouseleave)=\"resetActiveItem($event)\">\n <div\n *ngIf=\"showPlaceholder\"\n [ngClass]=\"placeholderClass\"\n [ngStyle]=\"placeholderStyle\"\n (dragover)=\"onItemDragover($event, 0)\"\n (dragenter)=\"cancelEvent($event)\"\n >{{placeholderItem}}</div>\n <div\n *ngFor=\"let item of items; let i=index;\"\n [ngClass]=\"[ itemClass, i === activeItem ? itemActiveClass : '' ]\"\n [ngStyle]=\"getItemStyle(i === activeItem)\"\n draggable=\"true\"\n (dragstart)=\"onItemDragstart($event, item, i)\"\n (dragend)=\"resetActiveItem($event)\"\n (dragover)=\"onItemDragover($event, i)\"\n (dragenter)=\"cancelEvent($event)\"\n ><template [ngTemplateOutlet]=\"itemTemplate || defItemTemplate\"\n [ngOutletContext]=\"{item:item, index: i}\"></template></div>\n</div>\n\n<template #defItemTemplate let-item=\"item\">{{item.value}}</template> \n","providers":[{"provide":{"__symbolic":"reference","module":"@angular/forms","name":"NG_VALUE_ACCESSOR"},"useExisting":{"__symbolic":"reference","name":"SortableComponent"},"multi":true}]}]}],"members":{"fieldName":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"wrapperClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"wrapperStyle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"itemClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"itemStyle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"itemActiveClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"itemActiveStyle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"placeholderClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"placeholderStyle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"placeholderItem":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"itemTemplate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input"}}]}],"onChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output"}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"./draggable-item.service","name":"DraggableItemService"}]}],"onItemDragstart":[{"__symbolic":"method"}],"onItemDragover":[{"__symbolic":"method"}],"cancelEvent":[{"__symbolic":"method"}],"onDrop":[{"__symbolic":"method"}],"resetActiveItem":[{"__symbolic":"method"}],"registerOnChange":[{"__symbolic":"method"}],"registerOnTouched":[{"__symbolic":"method"}],"writeValue":[{"__symbolic":"method"}],"updatePlaceholderState":[{"__symbolic":"method"}],"getItemStyle":[{"__symbolic":"method"}],"initDragstartEvent":[{"__symbolic":"method"}]},"statics":{"globalZoneIndex":0}},"SortableItem":{"__symbolic":"interface"}}}]
@@ -2,7 +2,7 @@ import { NgModule } from '@angular/core';
2
2
  import { CommonModule } from '@angular/common';
3
3
  import { SortableComponent } from './sortable.component';
4
4
  import { DraggableItemService } from './draggable-item.service';
5
- export var SortableModule = (function () {
5
+ var SortableModule = (function () {
6
6
  function SortableModule() {
7
7
  }
8
8
  SortableModule.forRoot = function () {
@@ -19,4 +19,5 @@ export var SortableModule = (function () {
19
19
  SortableModule.ctorParameters = function () { return []; };
20
20
  return SortableModule;
21
21
  }());
22
+ export { SortableModule };
22
23
  //# sourceMappingURL=sortable.module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sortable.module.js","sourceRoot":"","sources":["../../src/sortable/sortable.module.ts"],"names":[],"mappings":"OAAO,EAAE,QAAQ,EAAuB,MAAM,eAAe;OACtD,EAAE,YAAY,EAAE,MAAM,iBAAiB;OAEvC,EAAE,iBAAiB,EAAE,MAAM,sBAAsB;OACjD,EAAE,oBAAoB,EAAE,MAAM,0BAA0B;AAG/D;IAAA;IAcA,CAAC;IAbiB,sBAAO,GAArB;QACI,MAAM,CAAC,EAAC,QAAQ,EAAE,cAAc,EAAE,SAAS,EAAE,CAAC,oBAAoB,CAAC,EAAC,CAAC;IACzE,CAAC;IACE,yBAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;oBACrB,YAAY,EAAE,CAAC,iBAAiB,CAAC;oBACjC,OAAO,EAAE,CAAC,YAAY,CAAC;oBACvB,OAAO,EAAE,CAAC,iBAAiB,CAAC;iBAC/B,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,6BAAc,GAAmE,cAAM,OAAA,EAC7F,EAD6F,CAC7F,CAAC;IACF,qBAAC;AAAD,CAAC,AAdD,IAcC","sourcesContent":["import { NgModule, ModuleWithProviders } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { SortableComponent } from './sortable.component';\nimport { DraggableItemService } from './draggable-item.service';\n\n\nexport class SortableModule {\n public static forRoot(): ModuleWithProviders {\n return {ngModule: SortableModule, providers: [DraggableItemService]};\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: NgModule, args: [{\n declarations: [SortableComponent],\n imports: [CommonModule],\n exports: [SortableComponent]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n"]}
1
+ {"version":3,"sources":["../../.tmp/sortable/sortable.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAA,EAA8B,MAAO,eAAA,CAAgB;AAC9D,OAAO,EAAE,YAAA,EAAa,MAAO,iBAAA,CAAkB;AAE/C,OAAO,EAAE,iBAAA,EAAkB,MAAO,sBAAA,CAAuB;AACzD,OAAO,EAAE,oBAAA,EAAqB,MAAO,0BAAA,CAA2B;AAGhE;IAAA;IAcA,CAAC;IAbiB,sBAAO,GAArB;QACI,MAAM,CAAC,EAAC,QAAQ,EAAE,cAAc,EAAE,SAAS,EAAE,CAAC,oBAAoB,CAAC,EAAC,CAAC;IACzE,CAAC;IACE,yBAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;oBACrB,YAAY,EAAE,CAAC,iBAAiB,CAAC;oBACjC,OAAO,EAAE,CAAC,YAAY,CAAC;oBACvB,OAAO,EAAE,CAAC,iBAAiB,CAAC;iBAC/B,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,6BAAc,GAAmE,cAAM,OAAA,EAC7F,EAD6F,CAC7F,CAAC;IACF,qBAAC;CAdD,AAcC,IAAA;SAdY,cAAc","file":"sortable.module.js","sourceRoot":"","sourcesContent":["import { NgModule, ModuleWithProviders } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { SortableComponent } from './sortable.component';\nimport { DraggableItemService } from './draggable-item.service';\n\n\nexport class SortableModule {\n public static forRoot(): ModuleWithProviders {\n return {ngModule: SortableModule, providers: [DraggableItemService]};\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: NgModule, args: [{\n declarations: [SortableComponent],\n imports: [CommonModule],\n exports: [SortableComponent]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n"]}
@@ -0,0 +1,23 @@
1
+ The MIT License (MIT)
2
+
3
+ Copyright (c) 2015-2017 Valor Software
4
+ Copyright (c) 2015-2017 Dmitriy Shekhovtsov<valorkin@gmail.com>
5
+ Copyright (c) 2015-2016 Angular ng-bootstrap team
6
+
7
+ Permission is hereby granted, free of charge, to any person obtaining a copy
8
+ of this software and associated documentation files (the "Software"), to deal
9
+ in the Software without restriction, including without limitation the rights
10
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
11
+ copies of the Software, and to permit persons to whom the Software is
12
+ furnished to do so, subject to the following conditions:
13
+
14
+ The above copyright notice and this permission notice shall be included in
15
+ all copies or substantial portions of the Software.
16
+
17
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
23
+ THE SOFTWARE.
package/tabs/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tabs/index.ts"],"names":[],"mappings":"AAAA,SAAS,qBAAqB,QAAQ,2BAA2B,CAAC;AAClE,SAAS,YAAY,QAAQ,iBAAiB,CAAC;AAC/C,SAAS,mBAAmB,QAAQ,yBAAyB,CAAC;AAC9D,SAAS,eAAe,QAAQ,oBAAoB,CAAC;AACrD,SAAS,YAAY,QAAQ,iBAAiB,CAAC;AAC/C,SAAS,UAAU,QAAQ,eAAe,CAAC","sourcesContent":["export { NgTranscludeDirective } from './ng-transclude.directive';\nexport { TabDirective } from './tab.directive';\nexport { TabHeadingDirective } from './tab-heading.directive';\nexport { TabsetComponent } from './tabset.component';\nexport { TabsetConfig } from './tabset.config';\nexport { TabsModule } from './tabs.module';\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n"]}
1
+ {"version":3,"sources":["../../.tmp/tabs/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC","file":"index.js","sourceRoot":"","sourcesContent":["export { NgTranscludeDirective } from './ng-transclude.directive';\nexport { TabDirective } from './tab.directive';\nexport { TabHeadingDirective } from './tab-heading.directive';\nexport { TabsetComponent } from './tabset.component';\nexport { TabsetConfig } from './tabset.config';\nexport { TabsModule } from './tabs.module';\n"]}
@@ -1,5 +1,5 @@
1
1
  import { Directive, Input, ViewContainerRef } from '@angular/core';
2
- export var NgTranscludeDirective = (function () {
2
+ var NgTranscludeDirective = (function () {
3
3
  function NgTranscludeDirective(viewRef) {
4
4
  this.viewRef = viewRef;
5
5
  }
@@ -30,4 +30,5 @@ export var NgTranscludeDirective = (function () {
30
30
  };
31
31
  return NgTranscludeDirective;
32
32
  }());
33
+ export { NgTranscludeDirective };
33
34
  //# sourceMappingURL=ng-transclude.directive.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ng-transclude.directive.js","sourceRoot":"","sources":["../../src/tabs/ng-transclude.directive.ts"],"names":[],"mappings":"OAAO,EACL,SAAS,EAAE,KAAK,EAAe,gBAAgB,EAChD,MAAM,eAAe;AAGtB;IAkBE,+BAAmB,OAAwB;QACzC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAbD,sBAAW,+CAAY;aAOvB;YACE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC;QAC5B,CAAC;aATD,UAAwB,WAA4B;YAClD,IAAI,CAAC,aAAa,GAAG,WAAW,CAAC;YACjC,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;gBAChB,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;YAC/C,CAAC;QACH,CAAC;;;OAAA;IASI,gCAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,gBAAgB;iBAC3B,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,oCAAc,GAAmE,cAAM,OAAA;QAC9F,EAAC,IAAI,EAAE,gBAAgB,GAAG;KACzB,EAF6F,CAE7F,CAAC;IACK,oCAAc,GAA2C;QAChE,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE;KACjC,CAAC;IACF,4BAAC;AAAD,CAAC,AAjCD,IAiCC","sourcesContent":["import {\n Directive, Input, TemplateRef, ViewContainerRef\n} from '@angular/core';\n\n\nexport class NgTranscludeDirective {\n public viewRef:ViewContainerRef;\n\n protected _viewRef:ViewContainerRef;\n protected _ngTransclude:TemplateRef<any>;\n\n \n public set ngTransclude(templateRef:TemplateRef<any>) {\n this._ngTransclude = templateRef;\n if (templateRef) {\n this.viewRef.createEmbeddedView(templateRef);\n }\n }\n\n public get ngTransclude():TemplateRef<any> {\n return this._ngTransclude;\n }\n\n public constructor(viewRef:ViewContainerRef) {\n this.viewRef = viewRef;\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: '[ngTransclude]'\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: ViewContainerRef, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'ngTransclude': [{ type: Input },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n"]}
1
+ {"version":3,"sources":["../../.tmp/tabs/ng-transclude.directive.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EAAE,KAAA,EAAoB,gBAAA,EAChC,MAAM,eAAA,CAAgB;AAGvB;IAkBE,+BAAmB,OAAwB;QACzC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAbD,sBAAW,+CAAY;aAOvB;YACE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC;QAC5B,CAAC;aATD,UAAwB,WAA4B;YAClD,IAAI,CAAC,aAAa,GAAG,WAAW,CAAC;YACjC,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;gBAChB,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;YAC/C,CAAC;QACH,CAAC;;;OAAA;IASI,gCAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,gBAAgB;iBAC3B,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,oCAAc,GAAmE,cAAM,OAAA;QAC9F,EAAC,IAAI,EAAE,gBAAgB,GAAG;KACzB,EAF6F,CAE7F,CAAC;IACK,oCAAc,GAA2C;QAChE,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE;KACjC,CAAC;IACF,4BAAC;CAjCD,AAiCC,IAAA;SAjCY,qBAAqB","file":"ng-transclude.directive.js","sourceRoot":"","sourcesContent":["import {\n Directive, Input, TemplateRef, ViewContainerRef\n} from '@angular/core';\n\n\nexport class NgTranscludeDirective {\n public viewRef:ViewContainerRef;\n\n protected _viewRef:ViewContainerRef;\n protected _ngTransclude:TemplateRef<any>;\n\n \n public set ngTransclude(templateRef:TemplateRef<any>) {\n this._ngTransclude = templateRef;\n if (templateRef) {\n this.viewRef.createEmbeddedView(templateRef);\n }\n }\n\n public get ngTransclude():TemplateRef<any> {\n return this._ngTransclude;\n }\n\n public constructor(viewRef:ViewContainerRef) {\n this.viewRef = viewRef;\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: '[ngTransclude]'\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: ViewContainerRef, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'ngTransclude': [{ type: Input },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n"]}
@@ -1,7 +1,7 @@
1
1
  import { Directive, TemplateRef } from '@angular/core';
2
2
  import { TabDirective } from './tab.directive';
3
3
  /** Should be used to mark <template> element as a template for tab heading */
4
- export var TabHeadingDirective = (function () {
4
+ var TabHeadingDirective = (function () {
5
5
  function TabHeadingDirective(templateRef, tab) {
6
6
  tab.headingRef = templateRef;
7
7
  }
@@ -15,4 +15,5 @@ export var TabHeadingDirective = (function () {
15
15
  ]; };
16
16
  return TabHeadingDirective;
17
17
  }());
18
+ export { TabHeadingDirective };
18
19
  //# sourceMappingURL=tab-heading.directive.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tab-heading.directive.js","sourceRoot":"","sources":["../../src/tabs/tab-heading.directive.ts"],"names":[],"mappings":"OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,eAAe;OAE/C,EAAE,YAAY,EAAE,MAAM,iBAAiB;AAE9C,8EAA8E;AAE9E;IAGE,6BAAmB,WAA4B,EAAE,GAAgB;QAC/D,GAAG,CAAC,UAAU,GAAG,WAAW,CAAC;IAC/B,CAAC;IACI,8BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAC,QAAQ,EAAE,cAAc,EAAC,EAAG,EAAE;KACxD,CAAC;IACF,kBAAkB;IACX,kCAAc,GAAmE,cAAM,OAAA;QAC9F,EAAC,IAAI,EAAE,WAAW,GAAG;QACrB,EAAC,IAAI,EAAE,YAAY,GAAG;KACrB,EAH6F,CAG7F,CAAC;IACF,0BAAC;AAAD,CAAC,AAdD,IAcC","sourcesContent":["import { Directive, TemplateRef } from '@angular/core';\n\nimport { TabDirective } from './tab.directive';\n\n/** Should be used to mark <template> element as a template for tab heading */\n\nexport class TabHeadingDirective {\n public templateRef:TemplateRef<any>;\n\n public constructor(templateRef:TemplateRef<any>, tab:TabDirective) {\n tab.headingRef = templateRef;\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{selector: '[tabHeading]'}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: TemplateRef, },\n{type: TabDirective, },\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n"]}
1
+ {"version":3,"sources":["../../.tmp/tabs/tab-heading.directive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAA,EAAW,WAAA,EAAY,MAAO,eAAA,CAAgB;AAEvD,OAAO,EAAE,YAAA,EAAa,MAAO,iBAAA,CAAkB;AAE/C,8EAA8E;AAE9E;IAGE,6BAAmB,WAA4B,EAAE,GAAgB;QAC/D,GAAG,CAAC,UAAU,GAAG,WAAW,CAAC;IAC/B,CAAC;IACI,8BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAC,QAAQ,EAAE,cAAc,EAAC,EAAG,EAAE;KACxD,CAAC;IACF,kBAAkB;IACX,kCAAc,GAAmE,cAAM,OAAA;QAC9F,EAAC,IAAI,EAAE,WAAW,GAAG;QACrB,EAAC,IAAI,EAAE,YAAY,GAAG;KACrB,EAH6F,CAG7F,CAAC;IACF,0BAAC;CAdD,AAcC,IAAA;SAdY,mBAAmB","file":"tab-heading.directive.js","sourceRoot":"","sourcesContent":["import { Directive, TemplateRef } from '@angular/core';\n\nimport { TabDirective } from './tab.directive';\n\n/** Should be used to mark <template> element as a template for tab heading */\n\nexport class TabHeadingDirective {\n public templateRef:TemplateRef<any>;\n\n public constructor(templateRef:TemplateRef<any>, tab:TabDirective) {\n tab.headingRef = templateRef;\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{selector: '[tabHeading]'}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: TemplateRef, },\n{type: TabDirective, },\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n"]}
@@ -1,6 +1,6 @@
1
1
  import { Directive, EventEmitter, HostBinding, Input, Output, ElementRef, Renderer } from '@angular/core';
2
2
  import { TabsetComponent } from './tabset.component';
3
- export var TabDirective = (function () {
3
+ var TabDirective = (function () {
4
4
  function TabDirective(tabset, elementRef, renderer) {
5
5
  this.elementRef = elementRef;
6
6
  this.renderer = renderer;
@@ -38,11 +38,14 @@ export var TabDirective = (function () {
38
38
  },
39
39
  set: function (active) {
40
40
  var _this = this;
41
+ if (this._active === active) {
42
+ return;
43
+ }
41
44
  if (this.disabled && active || !active) {
42
- if (!active) {
45
+ if (this._active && !active) {
46
+ this.deselect.emit(this);
43
47
  this._active = active;
44
48
  }
45
- this.deselect.emit(this);
46
49
  return;
47
50
  }
48
51
  this._active = active;
@@ -85,4 +88,5 @@ export var TabDirective = (function () {
85
88
  };
86
89
  return TabDirective;
87
90
  }());
91
+ export { TabDirective };
88
92
  //# sourceMappingURL=tab.directive.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tab.directive.js","sourceRoot":"","sources":["../../src/tabs/tab.directive.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n Directive, EventEmitter, HostBinding, Input, Output, TemplateRef, OnInit, OnDestroy, ElementRef, Renderer } from '@angular/core';\nimport { TabsetComponent } from './tabset.component';\n\n\nexport class TabDirective implements OnInit, OnDestroy {\n /** tab header text */\n public heading: string;\n /** tab id */\n public id: string;\n /** if true tab can not be activated */\n public disabled: boolean;\n /** if true tab can be removable, additional button will appear */\n public removable: boolean;\n /** if set, will be added to the tab's class atribute */\n public get customClass(): string {\n return this._customClass;\n }\n\n public set customClass(customClass: string) {\n if (this._customClass && this._customClass !== customClass) {\n this.renderer.setElementClass(this.elementRef.nativeElement, this._customClass, false);\n }\n\n this._customClass = customClass;\n\n if (this._customClass) {\n this.renderer.setElementClass(this.elementRef.nativeElement, this._customClass, true);\n }\n }\n\n /** tab active state toggle */\n \n \n public get active(): boolean {\n return this._active;\n }\n\n public set active(active: boolean) {\n if (this.disabled && active || !active) {\n if (!active) {\n this._active = active;\n }\n\n this.deselect.emit(this);\n return;\n }\n\n this._active = active;\n this.select.emit(this);\n this.tabset.tabs.forEach((tab: TabDirective) => {\n if (tab !== this) {\n tab.active = false;\n }\n });\n }\n\n /** fired when tab became active, $event:Tab equals to selected instance of Tab component */\n public select: EventEmitter<TabDirective> = new EventEmitter();\n /** fired when tab became inactive, $event:Tab equals to deselected instance of Tab component */\n public deselect: EventEmitter<TabDirective> = new EventEmitter();\n /** fired before tab will be removed, $event:Tab equals to instance of removed tab */\n public removed: EventEmitter<TabDirective> = new EventEmitter();\n\n public addClass: boolean = true;\n\n public headingRef: TemplateRef<any>;\n public tabset: TabsetComponent;\n protected _active: boolean;\n protected _customClass: string;\n\n public constructor(tabset: TabsetComponent, public elementRef: ElementRef, public renderer: Renderer) {\n this.tabset = tabset;\n this.tabset.addTab(this);\n }\n\n public ngOnInit(): void {\n this.removable = this.removable;\n }\n\n public ngOnDestroy(): void {\n this.tabset.removeTab(this, {reselect: false, emit: false});\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{selector: 'tab, [tab]'}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: TabsetComponent, },\n{type: ElementRef, },\n{type: Renderer, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'heading': [{ type: Input },],\n'id': [{ type: Input },],\n'disabled': [{ type: Input },],\n'removable': [{ type: Input },],\n'customClass': [{ type: Input },],\n'active': [{ type: HostBinding, args: ['class.active', ] },{ type: Input },],\n'select': [{ type: Output },],\n'deselect': [{ type: Output },],\n'removed': [{ type: Output },],\n'addClass': [{ type: HostBinding, args: ['class.tab-pane', ] },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n"]}
1
+ {"version":3,"sources":["../../.tmp/tabs/tab.directive.ts"],"names":[],"mappings":"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","file":"tab.directive.js","sourceRoot":"","sourcesContent":["import {\n Directive, EventEmitter, HostBinding, Input, Output, TemplateRef, OnInit, OnDestroy, ElementRef, Renderer } from '@angular/core';\nimport { TabsetComponent } from './tabset.component';\n\n\nexport class TabDirective implements OnInit, OnDestroy {\n /** tab header text */\n public heading: string;\n /** tab id */\n public id: string;\n /** if true tab can not be activated */\n public disabled: boolean;\n /** if true tab can be removable, additional button will appear */\n public removable: boolean;\n /** if set, will be added to the tab's class atribute */\n public get customClass(): string {\n return this._customClass;\n }\n\n public set customClass(customClass: string) {\n if (this._customClass && this._customClass !== customClass) {\n this.renderer.setElementClass(this.elementRef.nativeElement, this._customClass, false);\n }\n\n this._customClass = customClass;\n\n if (this._customClass) {\n this.renderer.setElementClass(this.elementRef.nativeElement, this._customClass, true);\n }\n }\n\n /** tab active state toggle */\n \n \n public get active(): boolean {\n return this._active;\n }\n\n public set active(active: boolean) {\n if (this._active === active) {\n return;\n }\n if (this.disabled && active || !active) {\n if (this._active && !active) {\n this.deselect.emit(this);\n this._active = active;\n }\n\n return;\n }\n\n this._active = active;\n this.select.emit(this);\n this.tabset.tabs.forEach((tab: TabDirective) => {\n if (tab !== this) {\n tab.active = false;\n }\n });\n }\n\n /** fired when tab became active, $event:Tab equals to selected instance of Tab component */\n public select: EventEmitter<TabDirective> = new EventEmitter();\n /** fired when tab became inactive, $event:Tab equals to deselected instance of Tab component */\n public deselect: EventEmitter<TabDirective> = new EventEmitter();\n /** fired before tab will be removed, $event:Tab equals to instance of removed tab */\n public removed: EventEmitter<TabDirective> = new EventEmitter();\n\n public addClass: boolean = true;\n\n public headingRef: TemplateRef<any>;\n public tabset: TabsetComponent;\n protected _active: boolean;\n protected _customClass: string;\n\n public constructor(tabset: TabsetComponent, public elementRef: ElementRef, public renderer: Renderer) {\n this.tabset = tabset;\n this.tabset.addTab(this);\n }\n\n public ngOnInit(): void {\n this.removable = this.removable;\n }\n\n public ngOnDestroy(): void {\n this.tabset.removeTab(this, {reselect: false, emit: false});\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{selector: 'tab, [tab]'}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: TabsetComponent, },\n{type: ElementRef, },\n{type: Renderer, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'heading': [{ type: Input },],\n'id': [{ type: Input },],\n'disabled': [{ type: Input },],\n'removable': [{ type: Input },],\n'customClass': [{ type: Input },],\n'active': [{ type: HostBinding, args: ['class.active', ] },{ type: Input },],\n'select': [{ type: Output },],\n'deselect': [{ type: Output },],\n'removed': [{ type: Output },],\n'addClass': [{ type: HostBinding, args: ['class.tab-pane', ] },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n"]}
@@ -5,7 +5,7 @@ import { TabHeadingDirective } from './tab-heading.directive';
5
5
  import { TabDirective } from './tab.directive';
6
6
  import { TabsetComponent } from './tabset.component';
7
7
  import { TabsetConfig } from './tabset.config';
8
- export var TabsModule = (function () {
8
+ var TabsModule = (function () {
9
9
  function TabsModule() {
10
10
  }
11
11
  TabsModule.forRoot = function () {
@@ -25,4 +25,5 @@ export var TabsModule = (function () {
25
25
  TabsModule.ctorParameters = function () { return []; };
26
26
  return TabsModule;
27
27
  }());
28
+ export { TabsModule };
28
29
  //# sourceMappingURL=tabs.module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tabs.module.js","sourceRoot":"","sources":["../../src/tabs/tabs.module.ts"],"names":[],"mappings":"OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB;OACvC,EAAE,QAAQ,EAAuB,MAAM,eAAe;OAEtD,EAAE,qBAAqB,EAAE,MAAM,2BAA2B;OAC1D,EAAE,mBAAmB,EAAE,MAAM,yBAAyB;OACtD,EAAE,YAAY,EAAE,MAAM,iBAAiB;OACvC,EAAE,eAAe,EAAE,MAAM,oBAAoB;OAC7C,EAAE,YAAY,EAAE,MAAM,iBAAiB;AAG9C;IAAA;IAiBA,CAAC;IAhBe,kBAAO,GAArB;QACE,MAAM,CAAC;YACL,QAAQ,EAAE,UAAU;YACpB,SAAS,EAAE,CAAC,YAAY,CAAC;SAC1B,CAAC;IACJ,CAAC;IACI,qBAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;oBACvB,OAAO,EAAE,CAAC,YAAY,CAAC;oBACvB,YAAY,EAAE,CAAC,qBAAqB,EAAE,YAAY,EAAE,eAAe,EAAE,mBAAmB,CAAC;oBACzF,OAAO,EAAE,CAAC,YAAY,EAAE,eAAe,EAAE,mBAAmB,EAAE,qBAAqB,CAAC;iBACrF,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,yBAAc,GAAmE,cAAM,OAAA,EAC7F,EAD6F,CAC7F,CAAC;IACF,iBAAC;AAAD,CAAC,AAjBD,IAiBC","sourcesContent":["import { CommonModule } from '@angular/common';\nimport { NgModule, ModuleWithProviders } from '@angular/core';\n\nimport { NgTranscludeDirective } from './ng-transclude.directive';\nimport { TabHeadingDirective } from './tab-heading.directive';\nimport { TabDirective } from './tab.directive';\nimport { TabsetComponent } from './tabset.component';\nimport { TabsetConfig } from './tabset.config';\n\n\nexport class TabsModule {\n public static forRoot(): ModuleWithProviders {\n return {\n ngModule: TabsModule,\n providers: [TabsetConfig]\n };\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: NgModule, args: [{\n imports: [CommonModule],\n declarations: [NgTranscludeDirective, TabDirective, TabsetComponent, TabHeadingDirective],\n exports: [TabDirective, TabsetComponent, TabHeadingDirective, NgTranscludeDirective]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n"]}
1
+ {"version":3,"sources":["../../.tmp/tabs/tabs.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAA,EAAa,MAAO,iBAAA,CAAkB;AAC/C,OAAO,EAAE,QAAA,EAA8B,MAAO,eAAA,CAAgB;AAE9D,OAAO,EAAE,qBAAA,EAAsB,MAAO,2BAAA,CAA4B;AAClE,OAAO,EAAE,mBAAA,EAAoB,MAAO,yBAAA,CAA0B;AAC9D,OAAO,EAAE,YAAA,EAAa,MAAO,iBAAA,CAAkB;AAC/C,OAAO,EAAE,eAAA,EAAgB,MAAO,oBAAA,CAAqB;AACrD,OAAO,EAAE,YAAA,EAAa,MAAO,iBAAA,CAAkB;AAG/C;IAAA;IAiBA,CAAC;IAhBe,kBAAO,GAArB;QACE,MAAM,CAAC;YACL,QAAQ,EAAE,UAAU;YACpB,SAAS,EAAE,CAAC,YAAY,CAAC;SAC1B,CAAC;IACJ,CAAC;IACI,qBAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;oBACvB,OAAO,EAAE,CAAC,YAAY,CAAC;oBACvB,YAAY,EAAE,CAAC,qBAAqB,EAAE,YAAY,EAAE,eAAe,EAAE,mBAAmB,CAAC;oBACzF,OAAO,EAAE,CAAC,YAAY,EAAE,eAAe,EAAE,mBAAmB,EAAE,qBAAqB,CAAC;iBACrF,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,yBAAc,GAAmE,cAAM,OAAA,EAC7F,EAD6F,CAC7F,CAAC;IACF,iBAAC;CAjBD,AAiBC,IAAA;SAjBY,UAAU","file":"tabs.module.js","sourceRoot":"","sourcesContent":["import { CommonModule } from '@angular/common';\nimport { NgModule, ModuleWithProviders } from '@angular/core';\n\nimport { NgTranscludeDirective } from './ng-transclude.directive';\nimport { TabHeadingDirective } from './tab-heading.directive';\nimport { TabDirective } from './tab.directive';\nimport { TabsetComponent } from './tabset.component';\nimport { TabsetConfig } from './tabset.config';\n\n\nexport class TabsModule {\n public static forRoot(): ModuleWithProviders {\n return {\n ngModule: TabsModule,\n providers: [TabsetConfig]\n };\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: NgModule, args: [{\n imports: [CommonModule],\n declarations: [NgTranscludeDirective, TabDirective, TabsetComponent, TabHeadingDirective],\n exports: [TabDirective, TabsetComponent, TabHeadingDirective, NgTranscludeDirective]\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n"]}
@@ -2,7 +2,7 @@ import { Component, HostBinding, Input } from '@angular/core';
2
2
  import { TabsetConfig } from './tabset.config';
3
3
  // todo: add active event to tab
4
4
  // todo: fix? mixing static and dynamic tabs position tabs in order of creation
5
- export var TabsetComponent = (function () {
5
+ var TabsetComponent = (function () {
6
6
  function TabsetComponent(config) {
7
7
  this.clazz = true;
8
8
  this.tabs = [];
@@ -103,11 +103,11 @@ export var TabsetComponent = (function () {
103
103
  TabsetComponent.prototype.setClassMap = function () {
104
104
  this.classMap = (_a = {
105
105
  'nav-stacked': this.vertical,
106
+ 'flex-column': this.vertical,
106
107
  'nav-justified': this.justified
107
108
  },
108
109
  _a["nav-" + this.type] = true,
109
- _a
110
- );
110
+ _a);
111
111
  var _a;
112
112
  };
113
113
  TabsetComponent.decorators = [
@@ -128,4 +128,5 @@ export var TabsetComponent = (function () {
128
128
  };
129
129
  return TabsetComponent;
130
130
  }());
131
+ export { TabsetComponent };
131
132
  //# sourceMappingURL=tabset.component.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tabset.component.js","sourceRoot":"","sources":["../../src/tabs/tabset.component.ts"],"names":[],"mappings":"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","sourcesContent":["import { Component, HostBinding, Input, OnDestroy } from '@angular/core';\n\nimport { TabDirective } from './tab.directive';\nimport { TabsetConfig } from './tabset.config';\n// todo: add active event to tab\n// todo: fix? mixing static and dynamic tabs position tabs in order of creation\n\nexport class TabsetComponent implements OnDestroy {\n /** if true tabs will be placed vertically */\n \n public get vertical():boolean {\n return this._vertical;\n }\n public set vertical(value:boolean) {\n this._vertical = value;\n this.setClassMap();\n }\n\n /** if true tabs fill the container and have a consistent width */\n \n public get justified():boolean {\n return this._justified;\n }\n public set justified(value:boolean) {\n this._justified = value;\n this.setClassMap();\n }\n\n /** navigation context class: 'tabs' or 'pills' */\n \n public get type():string {\n return this._type;\n }\n public set type(value:string) {\n this._type = value;\n this.setClassMap();\n }\n\n public clazz:boolean = true;\n\n public tabs:TabDirective[] = [];\n public classMap:any = {};\n\n protected isDestroyed:boolean;\n protected _vertical:boolean;\n protected _justified:boolean;\n protected _type:string;\n\n public constructor(config: TabsetConfig) {\n Object.assign(this, config);\n }\n\n public ngOnDestroy():void {\n this.isDestroyed = true;\n }\n\n public addTab(tab:TabDirective):void {\n this.tabs.push(tab);\n tab.active = this.tabs.length === 1 && tab.active !== false;\n }\n\n public removeTab(tab: TabDirective, options = {reselect: true, emit: true}):void {\n let index = this.tabs.indexOf(tab);\n if (index === -1 || this.isDestroyed) {\n return;\n }\n // Select a new tab if the tab to be removed is selected and not destroyed\n if (options.reselect && tab.active && this.hasAvailableTabs(index)) {\n let newActiveIndex = this.getClosestTabIndex(index);\n this.tabs[newActiveIndex].active = true;\n }\n if(options.emit) {\n tab.removed.emit(tab);\n }\n this.tabs.splice(index, 1);\n if (tab.elementRef.nativeElement.parentNode) {\n tab.elementRef.nativeElement.parentNode.removeChild(tab.elementRef.nativeElement);\n }\n }\n\n protected getClosestTabIndex(index:number):number {\n let tabsLength = this.tabs.length;\n if (!tabsLength) {\n return -1;\n }\n\n for (let step = 1; step <= tabsLength; step += 1) {\n let prevIndex = index - step;\n let nextIndex = index + step;\n if (this.tabs[prevIndex] && !this.tabs[prevIndex].disabled) {\n return prevIndex;\n }\n if (this.tabs[nextIndex] && !this.tabs[nextIndex].disabled) {\n return nextIndex;\n }\n }\n return -1;\n }\n\n protected hasAvailableTabs(index:number):boolean {\n let tabsLength = this.tabs.length;\n if (!tabsLength) {\n return false;\n }\n\n for (let i = 0; i < tabsLength; i += 1) {\n if (!this.tabs[i].disabled && i !== index) {\n return true;\n }\n }\n return false;\n }\n\n protected setClassMap():void {\n this.classMap = {\n 'nav-stacked': this.vertical,\n 'nav-justified': this.justified,\n [`nav-${this.type}`]: true\n };\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'tabset',\n template: `\n <ul class=\"nav\" [ngClass]=\"classMap\" (click)=\"$event.preventDefault()\">\n <li *ngFor=\"let tabz of tabs\" [ngClass]=\"['nav-item', tabz.customClass || '']\"\n [class.active]=\"tabz.active\" [class.disabled]=\"tabz.disabled\">\n <a href=\"javascript:void(0);\" class=\"nav-link\"\n [class.active]=\"tabz.active\" [class.disabled]=\"tabz.disabled\"\n (click)=\"tabz.active = true\">\n <span [ngTransclude]=\"tabz.headingRef\">{{tabz.heading}}</span>\n <span *ngIf=\"tabz.removable\">\n <span (click)=\"$event.preventDefault(); removeTab(tabz);\" class=\"glyphicon glyphicon-remove-circle\"></span>\n </span>\n </a>\n </li>\n </ul>\n <div class=\"tab-content\">\n <ng-content></ng-content>\n </div>\n `\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: TabsetConfig, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'vertical': [{ type: Input },],\n'justified': [{ type: Input },],\n'type': [{ type: Input },],\n'clazz': [{ type: HostBinding, args: ['class.tab-container', ] },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n"]}
1
+ {"version":3,"sources":["../../.tmp/tabs/tabset.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAA,EAAW,WAAA,EAAa,KAAA,EAAiB,MAAO,eAAA,CAAgB;AAGzE,OAAO,EAAE,YAAA,EAAa,MAAO,iBAAA,CAAkB;AAC/C,gCAAgC;AAChC,+EAA+E;AAE/E;IAyCE,yBAAmB,MAAoB;QAV/B,UAAK,GAAW,IAAI,CAAC;QAEtB,SAAI,GAAkB,EAAE,CAAC;QACzB,aAAQ,GAAO,EAAE,CAAC;QAQvB,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC9B,CAAC;IAxCD,sBAAW,qCAAQ;QAFnB,6CAA6C;aAE7C;YACE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;QACxB,CAAC;aACD,UAAoB,KAAa;YAC/B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YACvB,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,CAAC;;;OAJA;IAQD,sBAAW,sCAAS;QAFpB,kEAAkE;aAElE;YACE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;QACzB,CAAC;aACD,UAAqB,KAAa;YAChC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;YACxB,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,CAAC;;;OAJA;IAQD,sBAAW,iCAAI;QAFf,kDAAkD;aAElD;YACE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;QACpB,CAAC;aACD,UAAgB,KAAY;YAC1B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YACnB,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,CAAC;;;OAJA;IAoBM,qCAAW,GAAlB;QACE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC1B,CAAC;IAEM,gCAAM,GAAb,UAAc,GAAgB;QAC5B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACpB,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,CAAC;IAC9D,CAAC;IAEM,mCAAS,GAAhB,UAAiB,GAAiB,EAAE,OAAsC;QAAtC,wBAAA,EAAA,YAAW,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAC;QACxE,IAAI,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACnC,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;YACrC,MAAM,CAAC;QACT,CAAC;QACD,0EAA0E;QAC1E,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,IAAI,GAAG,CAAC,MAAM,IAAI,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACnE,IAAI,cAAc,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;YACpD,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;QAC1C,CAAC;QACD,EAAE,CAAA,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;YAChB,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACxB,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAC3B,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC;YAC5C,GAAG,CAAC,UAAU,CAAC,aAAa,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;QACpF,CAAC;IACH,CAAC;IAES,4CAAkB,GAA5B,UAA6B,KAAY;QACvC,IAAI,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;QAClC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;YAChB,MAAM,CAAC,CAAC,CAAC,CAAC;QACZ,CAAC;QAED,GAAG,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,IAAI,UAAU,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC;YACjD,IAAI,SAAS,GAAG,KAAK,GAAG,IAAI,CAAC;YAC7B,IAAI,SAAS,GAAG,KAAK,GAAG,IAAI,CAAC;YAC7B,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAC3D,MAAM,CAAC,SAAS,CAAC;YACnB,CAAC;YACD,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAC3D,MAAM,CAAC,SAAS,CAAC;YACnB,CAAC;QACH,CAAC;QACD,MAAM,CAAC,CAAC,CAAC,CAAC;IACZ,CAAC;IAES,0CAAgB,GAA1B,UAA2B,KAAY;QACrC,IAAI,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;QAClC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;YAChB,MAAM,CAAC,KAAK,CAAC;QACf,CAAC;QAED,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YACvC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC;gBAC1C,MAAM,CAAC,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QACD,MAAM,CAAC,KAAK,CAAC;IACf,CAAC;IAES,qCAAW,GAArB;QACE,IAAI,CAAC,QAAQ;gBACX,aAAa,EAAE,IAAI,CAAC,QAAQ;gBAC5B,aAAa,EAAE,IAAI,CAAC,QAAQ;gBAC5B,eAAe,EAAE,IAAI,CAAC,SAAS;;YAC/B,GAAC,SAAO,IAAI,CAAC,IAAM,IAAG,IAAI;eAC3B,CAAC;;IACJ,CAAC;IACI,0BAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;oBACxB,QAAQ,EAAE,QAAQ;oBAClB,QAAQ,EAAE,o0BAiBT;iBACF,EAAG,EAAE;KACL,CAAC;IACF,kBAAkB;IACX,8BAAc,GAAmE,cAAM,OAAA;QAC9F,EAAC,IAAI,EAAE,YAAY,GAAG;KACrB,EAF6F,CAE7F,CAAC;IACK,8BAAc,GAA2C;QAChE,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE;QAC9B,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE;QAC/B,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE;QAC1B,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,qBAAqB,EAAG,EAAE,EAAE;KACjE,CAAC;IACF,sBAAC;CAnJD,AAmJC,IAAA;SAnJY,eAAe","file":"tabset.component.js","sourceRoot":"","sourcesContent":["import { Component, HostBinding, Input, OnDestroy } from '@angular/core';\n\nimport { TabDirective } from './tab.directive';\nimport { TabsetConfig } from './tabset.config';\n// todo: add active event to tab\n// todo: fix? mixing static and dynamic tabs position tabs in order of creation\n\nexport class TabsetComponent implements OnDestroy {\n /** if true tabs will be placed vertically */\n \n public get vertical():boolean {\n return this._vertical;\n }\n public set vertical(value:boolean) {\n this._vertical = value;\n this.setClassMap();\n }\n\n /** if true tabs fill the container and have a consistent width */\n \n public get justified():boolean {\n return this._justified;\n }\n public set justified(value:boolean) {\n this._justified = value;\n this.setClassMap();\n }\n\n /** navigation context class: 'tabs' or 'pills' */\n \n public get type():string {\n return this._type;\n }\n public set type(value:string) {\n this._type = value;\n this.setClassMap();\n }\n\n public clazz:boolean = true;\n\n public tabs:TabDirective[] = [];\n public classMap:any = {};\n\n protected isDestroyed:boolean;\n protected _vertical:boolean;\n protected _justified:boolean;\n protected _type:string;\n\n public constructor(config: TabsetConfig) {\n Object.assign(this, config);\n }\n\n public ngOnDestroy():void {\n this.isDestroyed = true;\n }\n\n public addTab(tab:TabDirective):void {\n this.tabs.push(tab);\n tab.active = this.tabs.length === 1 && tab.active !== false;\n }\n\n public removeTab(tab: TabDirective, options = {reselect: true, emit: true}):void {\n let index = this.tabs.indexOf(tab);\n if (index === -1 || this.isDestroyed) {\n return;\n }\n // Select a new tab if the tab to be removed is selected and not destroyed\n if (options.reselect && tab.active && this.hasAvailableTabs(index)) {\n let newActiveIndex = this.getClosestTabIndex(index);\n this.tabs[newActiveIndex].active = true;\n }\n if(options.emit) {\n tab.removed.emit(tab);\n }\n this.tabs.splice(index, 1);\n if (tab.elementRef.nativeElement.parentNode) {\n tab.elementRef.nativeElement.parentNode.removeChild(tab.elementRef.nativeElement);\n }\n }\n\n protected getClosestTabIndex(index:number):number {\n let tabsLength = this.tabs.length;\n if (!tabsLength) {\n return -1;\n }\n\n for (let step = 1; step <= tabsLength; step += 1) {\n let prevIndex = index - step;\n let nextIndex = index + step;\n if (this.tabs[prevIndex] && !this.tabs[prevIndex].disabled) {\n return prevIndex;\n }\n if (this.tabs[nextIndex] && !this.tabs[nextIndex].disabled) {\n return nextIndex;\n }\n }\n return -1;\n }\n\n protected hasAvailableTabs(index:number):boolean {\n let tabsLength = this.tabs.length;\n if (!tabsLength) {\n return false;\n }\n\n for (let i = 0; i < tabsLength; i += 1) {\n if (!this.tabs[i].disabled && i !== index) {\n return true;\n }\n }\n return false;\n }\n\n protected setClassMap():void {\n this.classMap = {\n 'nav-stacked': this.vertical,\n 'flex-column': this.vertical,\n 'nav-justified': this.justified,\n [`nav-${this.type}`]: true\n };\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'tabset',\n template: `\n <ul class=\"nav\" [ngClass]=\"classMap\" (click)=\"$event.preventDefault()\">\n <li *ngFor=\"let tabz of tabs\" [ngClass]=\"['nav-item', tabz.customClass || '']\"\n [class.active]=\"tabz.active\" [class.disabled]=\"tabz.disabled\">\n <a href=\"javascript:void(0);\" class=\"nav-link\"\n [class.active]=\"tabz.active\" [class.disabled]=\"tabz.disabled\"\n (click)=\"tabz.active = true\">\n <span [ngTransclude]=\"tabz.headingRef\">{{tabz.heading}}</span>\n <span *ngIf=\"tabz.removable\">\n <span (click)=\"$event.preventDefault(); removeTab(tabz);\" class=\"glyphicon glyphicon-remove-circle\"></span>\n </span>\n </a>\n </li>\n </ul>\n <div class=\"tab-content\">\n <ng-content></ng-content>\n </div>\n `\n}, ] },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: TabsetConfig, },\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'vertical': [{ type: Input },],\n'justified': [{ type: Input },],\n'type': [{ type: Input },],\n'clazz': [{ type: HostBinding, args: ['class.tab-container', ] },],\n};\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n"]}
@@ -1,5 +1,5 @@
1
1
  import { Injectable } from '@angular/core';
2
- export var TabsetConfig = (function () {
2
+ var TabsetConfig = (function () {
3
3
  function TabsetConfig() {
4
4
  /** provides default navigation context class: 'tabs' or 'pills' */
5
5
  this.type = 'tabs';
@@ -11,4 +11,5 @@ export var TabsetConfig = (function () {
11
11
  TabsetConfig.ctorParameters = function () { return []; };
12
12
  return TabsetConfig;
13
13
  }());
14
+ export { TabsetConfig };
14
15
  //# sourceMappingURL=tabset.config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tabset.config.js","sourceRoot":"","sources":["../../src/tabs/tabset.config.ts"],"names":[],"mappings":"OAAO,EAAE,UAAU,EAAE,MAAM,eAAe;AAG1C;IAAA;QACE,mEAAmE;QAC5D,SAAI,GAAW,MAAM,CAAC;IAO/B,CAAC;IANM,uBAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,UAAU,EAAE;KACnB,CAAC;IACF,kBAAkB;IACX,2BAAc,GAAmE,cAAM,OAAA,EAC7F,EAD6F,CAC7F,CAAC;IACF,mBAAC;AAAD,CAAC,AATD,IASC","sourcesContent":["import { Injectable } from '@angular/core';\n\n\nexport class TabsetConfig {\n /** provides default navigation context class: 'tabs' or 'pills' */\n public type: string = 'tabs';\nstatic decorators: DecoratorInvocation[] = [\n{ type: Injectable },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n"]}
1
+ {"version":3,"sources":["../../.tmp/tabs/tabset.config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAA,EAAW,MAAO,eAAA,CAAgB;AAG3C;IAAA;QACE,mEAAmE;QAC5D,SAAI,GAAW,MAAM,CAAC;IAO/B,CAAC;IANM,uBAAU,GAA0B;QAC3C,EAAE,IAAI,EAAE,UAAU,EAAE;KACnB,CAAC;IACF,kBAAkB;IACX,2BAAc,GAAmE,cAAM,OAAA,EAC7F,EAD6F,CAC7F,CAAC;IACF,mBAAC;CATD,AASC,IAAA;SATY,YAAY","file":"tabset.config.js","sourceRoot":"","sourcesContent":["import { Injectable } from '@angular/core';\n\n\nexport class TabsetConfig {\n /** provides default navigation context class: 'tabs' or 'pills' */\n public type: string = 'tabs';\nstatic decorators: DecoratorInvocation[] = [\n{ type: Injectable },\n];\n/** @nocollapse */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n"]}