cats-ui-lib 2.0.0 → 2.0.1

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 (367) hide show
  1. package/ng-package.json +18 -0
  2. package/package.json +11 -22
  3. package/src/lib/components/accordion/accordion-item/accordion-item.component.html +13 -0
  4. package/src/lib/components/accordion/accordion-item/accordion-item.component.scss +36 -0
  5. package/src/lib/components/accordion/accordion-item/accordion-item.component.ts +57 -0
  6. package/src/lib/components/accordion/accordion-item/index.ts +1 -0
  7. package/src/lib/components/accordion/accordion.component.html +3 -0
  8. package/src/lib/components/accordion/accordion.component.scss +6 -0
  9. package/src/lib/components/accordion/accordion.component.ts +30 -0
  10. package/src/lib/components/accordion/index.ts +2 -0
  11. package/src/lib/components/auto-complete-multi-select/auto-complete-multi-select.component.html +125 -0
  12. package/src/lib/components/auto-complete-multi-select/auto-complete-multi-select.component.scss +138 -0
  13. package/src/lib/components/auto-complete-multi-select/auto-complete-multi-select.component.ts +319 -0
  14. package/src/lib/components/auto-complete-multi-select/index.ts +1 -0
  15. package/src/lib/components/auto-complete-single-select/auto-complete-single-select.component.html +84 -0
  16. package/src/lib/components/auto-complete-single-select/auto-complete-single-select.component.scss +68 -0
  17. package/src/lib/components/auto-complete-single-select/auto-complete-single-select.component.ts +231 -0
  18. package/src/lib/components/auto-complete-single-select/index.ts +1 -0
  19. package/src/lib/components/checkbox-button/checkbox-button.component.html +43 -0
  20. package/src/lib/components/checkbox-button/checkbox-button.component.scss +65 -0
  21. package/src/lib/components/checkbox-button/checkbox-button.component.ts +185 -0
  22. package/src/lib/components/checkbox-button/index.ts +1 -0
  23. package/src/lib/components/date-time-picker/date-time-picker.component.html +179 -0
  24. package/src/lib/components/date-time-picker/date-time-picker.component.scss +305 -0
  25. package/src/lib/components/date-time-picker/date-time-picker.component.ts +591 -0
  26. package/src/lib/components/date-time-picker/index.ts +1 -0
  27. package/src/lib/components/input/index.ts +1 -0
  28. package/src/lib/components/input/input.component.html +27 -0
  29. package/src/lib/components/input/input.component.scss +43 -0
  30. package/src/lib/components/input/input.component.ts +133 -0
  31. package/src/lib/components/multi-select/index.ts +1 -0
  32. package/src/lib/components/multi-select/multi-select.component.html +107 -0
  33. package/src/lib/components/multi-select/multi-select.component.scss +195 -0
  34. package/src/lib/components/multi-select/multi-select.component.ts +283 -0
  35. package/src/lib/components/radio-button/index.ts +1 -0
  36. package/src/lib/components/radio-button/radio-button.component.html +22 -0
  37. package/src/lib/components/radio-button/radio-button.component.scss +86 -0
  38. package/src/lib/components/radio-button/radio-button.component.ts +137 -0
  39. package/src/lib/components/search-box/index.ts +1 -0
  40. package/src/lib/components/search-box/search-box.component.html +15 -0
  41. package/src/lib/components/search-box/search-box.component.scss +28 -0
  42. package/src/lib/components/search-box/search-box.component.ts +79 -0
  43. package/src/lib/components/single-select/index.ts +1 -0
  44. package/src/lib/components/single-select/single-select.component.html +124 -0
  45. package/src/lib/components/single-select/single-select.component.scss +134 -0
  46. package/src/lib/components/single-select/single-select.component.ts +264 -0
  47. package/src/lib/components/tabs/index.ts +4 -0
  48. package/src/lib/components/tabs/tab/tab-item/tab-item.component.html +1 -0
  49. package/src/lib/components/tabs/tab/tab-item/tab-item.component.scss +0 -0
  50. package/src/lib/components/tabs/tab/tab-item/tab-item.component.ts +14 -0
  51. package/src/lib/components/tabs/tab/tab.component.html +25 -0
  52. package/src/lib/components/tabs/tab/tab.component.scss +21 -0
  53. package/src/lib/components/tabs/tab/tab.component.ts +37 -0
  54. package/src/lib/components/tabs/tab-content.directive.ts +9 -0
  55. package/src/lib/components/tabs/tab-heading.directive.ts +9 -0
  56. package/src/lib/components/toogle-button/index.ts +1 -0
  57. package/src/lib/components/toogle-button/toogle-button.component.html +14 -0
  58. package/src/lib/components/toogle-button/toogle-button.component.scss +60 -0
  59. package/src/lib/components/toogle-button/toogle-button.component.ts +47 -0
  60. package/src/lib/directives/cats-ui-tooltip.directive.ts +132 -0
  61. package/src/lib/directives/outside-click.directive.ts +31 -0
  62. package/src/lib/modal/cats-ui.modal.ts +83 -0
  63. package/src/lib/services/cats-ui.service.spec.ts +16 -0
  64. package/src/lib/services/cats-ui.service.ts +9 -0
  65. package/{styles → src/lib/styles}/_utilities.scss +27 -0
  66. package/src/public-api.ts +21 -0
  67. package/tsconfig.lib.json +15 -0
  68. package/tsconfig.lib.prod.json +11 -0
  69. package/tsconfig.spec.json +15 -0
  70. package/fesm2022/cats-ui.mjs +0 -2558
  71. package/fesm2022/cats-ui.mjs.map +0 -1
  72. package/index.d.ts +0 -891
  73. /package/{assets → src/lib/assets}/images/activity.svg +0 -0
  74. /package/{assets → src/lib/assets}/images/airplay.svg +0 -0
  75. /package/{assets → src/lib/assets}/images/alert-circle.svg +0 -0
  76. /package/{assets → src/lib/assets}/images/alert-octagon.svg +0 -0
  77. /package/{assets → src/lib/assets}/images/alert-triangle.svg +0 -0
  78. /package/{assets → src/lib/assets}/images/align-center.svg +0 -0
  79. /package/{assets → src/lib/assets}/images/align-justify.svg +0 -0
  80. /package/{assets → src/lib/assets}/images/align-left.svg +0 -0
  81. /package/{assets → src/lib/assets}/images/align-right.svg +0 -0
  82. /package/{assets → src/lib/assets}/images/anchor.svg +0 -0
  83. /package/{assets → src/lib/assets}/images/aperture.svg +0 -0
  84. /package/{assets → src/lib/assets}/images/archive.svg +0 -0
  85. /package/{assets → src/lib/assets}/images/arrow-down-circle.svg +0 -0
  86. /package/{assets → src/lib/assets}/images/arrow-down-left.svg +0 -0
  87. /package/{assets → src/lib/assets}/images/arrow-down-right.svg +0 -0
  88. /package/{assets → src/lib/assets}/images/arrow-down.svg +0 -0
  89. /package/{assets → src/lib/assets}/images/arrow-left-circle.svg +0 -0
  90. /package/{assets → src/lib/assets}/images/arrow-left.svg +0 -0
  91. /package/{assets → src/lib/assets}/images/arrow-right-circle.svg +0 -0
  92. /package/{assets → src/lib/assets}/images/arrow-right.svg +0 -0
  93. /package/{assets → src/lib/assets}/images/arrow-up-circle.svg +0 -0
  94. /package/{assets → src/lib/assets}/images/arrow-up-left.svg +0 -0
  95. /package/{assets → src/lib/assets}/images/arrow-up-right.svg +0 -0
  96. /package/{assets → src/lib/assets}/images/arrow-up.svg +0 -0
  97. /package/{assets → src/lib/assets}/images/at-sign.svg +0 -0
  98. /package/{assets → src/lib/assets}/images/award.svg +0 -0
  99. /package/{assets → src/lib/assets}/images/bar-chart-2.svg +0 -0
  100. /package/{assets → src/lib/assets}/images/bar-chart.svg +0 -0
  101. /package/{assets → src/lib/assets}/images/battery-charging.svg +0 -0
  102. /package/{assets → src/lib/assets}/images/battery.svg +0 -0
  103. /package/{assets → src/lib/assets}/images/bell-off.svg +0 -0
  104. /package/{assets → src/lib/assets}/images/bell.svg +0 -0
  105. /package/{assets → src/lib/assets}/images/bluetooth.svg +0 -0
  106. /package/{assets → src/lib/assets}/images/bold.svg +0 -0
  107. /package/{assets → src/lib/assets}/images/book-open.svg +0 -0
  108. /package/{assets → src/lib/assets}/images/book.svg +0 -0
  109. /package/{assets → src/lib/assets}/images/bookmark.svg +0 -0
  110. /package/{assets → src/lib/assets}/images/box.svg +0 -0
  111. /package/{assets → src/lib/assets}/images/briefcase.svg +0 -0
  112. /package/{assets → src/lib/assets}/images/calendar.svg +0 -0
  113. /package/{assets → src/lib/assets}/images/camera-off.svg +0 -0
  114. /package/{assets → src/lib/assets}/images/camera.svg +0 -0
  115. /package/{assets → src/lib/assets}/images/cast.svg +0 -0
  116. /package/{assets → src/lib/assets}/images/check-circle.svg +0 -0
  117. /package/{assets → src/lib/assets}/images/check-square.svg +0 -0
  118. /package/{assets → src/lib/assets}/images/check.svg +0 -0
  119. /package/{assets → src/lib/assets}/images/chevron-down.svg +0 -0
  120. /package/{assets → src/lib/assets}/images/chevron-left.svg +0 -0
  121. /package/{assets → src/lib/assets}/images/chevron-right.svg +0 -0
  122. /package/{assets → src/lib/assets}/images/chevron-up.svg +0 -0
  123. /package/{assets → src/lib/assets}/images/chevrons-down.svg +0 -0
  124. /package/{assets → src/lib/assets}/images/chevrons-left.svg +0 -0
  125. /package/{assets → src/lib/assets}/images/chevrons-right.svg +0 -0
  126. /package/{assets → src/lib/assets}/images/chevrons-up.svg +0 -0
  127. /package/{assets → src/lib/assets}/images/chrome.svg +0 -0
  128. /package/{assets → src/lib/assets}/images/circle.svg +0 -0
  129. /package/{assets → src/lib/assets}/images/clipboard.svg +0 -0
  130. /package/{assets → src/lib/assets}/images/clock.svg +0 -0
  131. /package/{assets → src/lib/assets}/images/cloud-drizzle.svg +0 -0
  132. /package/{assets → src/lib/assets}/images/cloud-lightning.svg +0 -0
  133. /package/{assets → src/lib/assets}/images/cloud-off.svg +0 -0
  134. /package/{assets → src/lib/assets}/images/cloud-rain.svg +0 -0
  135. /package/{assets → src/lib/assets}/images/cloud-snow.svg +0 -0
  136. /package/{assets → src/lib/assets}/images/cloud.svg +0 -0
  137. /package/{assets → src/lib/assets}/images/code.svg +0 -0
  138. /package/{assets → src/lib/assets}/images/codepen.svg +0 -0
  139. /package/{assets → src/lib/assets}/images/codesandbox.svg +0 -0
  140. /package/{assets → src/lib/assets}/images/coffee.svg +0 -0
  141. /package/{assets → src/lib/assets}/images/columns.svg +0 -0
  142. /package/{assets → src/lib/assets}/images/command.svg +0 -0
  143. /package/{assets → src/lib/assets}/images/compass.svg +0 -0
  144. /package/{assets → src/lib/assets}/images/copy.svg +0 -0
  145. /package/{assets → src/lib/assets}/images/corner-down-left.svg +0 -0
  146. /package/{assets → src/lib/assets}/images/corner-down-right.svg +0 -0
  147. /package/{assets → src/lib/assets}/images/corner-left-down.svg +0 -0
  148. /package/{assets → src/lib/assets}/images/corner-left-up.svg +0 -0
  149. /package/{assets → src/lib/assets}/images/corner-right-down.svg +0 -0
  150. /package/{assets → src/lib/assets}/images/corner-right-up.svg +0 -0
  151. /package/{assets → src/lib/assets}/images/corner-up-left.svg +0 -0
  152. /package/{assets → src/lib/assets}/images/corner-up-right.svg +0 -0
  153. /package/{assets → src/lib/assets}/images/cpu.svg +0 -0
  154. /package/{assets → src/lib/assets}/images/credit-card.svg +0 -0
  155. /package/{assets → src/lib/assets}/images/crop.svg +0 -0
  156. /package/{assets → src/lib/assets}/images/crosshair.svg +0 -0
  157. /package/{assets → src/lib/assets}/images/database.svg +0 -0
  158. /package/{assets → src/lib/assets}/images/delete.svg +0 -0
  159. /package/{assets → src/lib/assets}/images/disc.svg +0 -0
  160. /package/{assets → src/lib/assets}/images/divide-circle.svg +0 -0
  161. /package/{assets → src/lib/assets}/images/divide-square.svg +0 -0
  162. /package/{assets → src/lib/assets}/images/divide.svg +0 -0
  163. /package/{assets → src/lib/assets}/images/dollar-sign.svg +0 -0
  164. /package/{assets → src/lib/assets}/images/download-cloud.svg +0 -0
  165. /package/{assets → src/lib/assets}/images/download.svg +0 -0
  166. /package/{assets → src/lib/assets}/images/dribbble.svg +0 -0
  167. /package/{assets → src/lib/assets}/images/droplet.svg +0 -0
  168. /package/{assets → src/lib/assets}/images/edit-2.svg +0 -0
  169. /package/{assets → src/lib/assets}/images/edit-3.svg +0 -0
  170. /package/{assets → src/lib/assets}/images/edit.svg +0 -0
  171. /package/{assets → src/lib/assets}/images/external-link.svg +0 -0
  172. /package/{assets → src/lib/assets}/images/eye-off.svg +0 -0
  173. /package/{assets → src/lib/assets}/images/eye.svg +0 -0
  174. /package/{assets → src/lib/assets}/images/facebook.svg +0 -0
  175. /package/{assets → src/lib/assets}/images/fast-forward.svg +0 -0
  176. /package/{assets → src/lib/assets}/images/feather.svg +0 -0
  177. /package/{assets → src/lib/assets}/images/figma.svg +0 -0
  178. /package/{assets → src/lib/assets}/images/file-minus.svg +0 -0
  179. /package/{assets → src/lib/assets}/images/file-plus.svg +0 -0
  180. /package/{assets → src/lib/assets}/images/file-text.svg +0 -0
  181. /package/{assets → src/lib/assets}/images/file.svg +0 -0
  182. /package/{assets → src/lib/assets}/images/film.svg +0 -0
  183. /package/{assets → src/lib/assets}/images/filter.svg +0 -0
  184. /package/{assets → src/lib/assets}/images/flag.svg +0 -0
  185. /package/{assets → src/lib/assets}/images/folder-minus.svg +0 -0
  186. /package/{assets → src/lib/assets}/images/folder-plus.svg +0 -0
  187. /package/{assets → src/lib/assets}/images/folder.svg +0 -0
  188. /package/{assets → src/lib/assets}/images/framer.svg +0 -0
  189. /package/{assets → src/lib/assets}/images/frown.svg +0 -0
  190. /package/{assets → src/lib/assets}/images/gift.svg +0 -0
  191. /package/{assets → src/lib/assets}/images/git-branch.svg +0 -0
  192. /package/{assets → src/lib/assets}/images/git-commit.svg +0 -0
  193. /package/{assets → src/lib/assets}/images/git-merge.svg +0 -0
  194. /package/{assets → src/lib/assets}/images/git-pull-request.svg +0 -0
  195. /package/{assets → src/lib/assets}/images/github.svg +0 -0
  196. /package/{assets → src/lib/assets}/images/gitlab.svg +0 -0
  197. /package/{assets → src/lib/assets}/images/globe.svg +0 -0
  198. /package/{assets → src/lib/assets}/images/grid.svg +0 -0
  199. /package/{assets → src/lib/assets}/images/hard-drive.svg +0 -0
  200. /package/{assets → src/lib/assets}/images/hash.svg +0 -0
  201. /package/{assets → src/lib/assets}/images/headphones.svg +0 -0
  202. /package/{assets → src/lib/assets}/images/heart.svg +0 -0
  203. /package/{assets → src/lib/assets}/images/help-circle.svg +0 -0
  204. /package/{assets → src/lib/assets}/images/hexagon.svg +0 -0
  205. /package/{assets → src/lib/assets}/images/home.svg +0 -0
  206. /package/{assets → src/lib/assets}/images/icon-checked.svg +0 -0
  207. /package/{assets → src/lib/assets}/images/image.svg +0 -0
  208. /package/{assets → src/lib/assets}/images/inbox.svg +0 -0
  209. /package/{assets → src/lib/assets}/images/indeterminate.svg +0 -0
  210. /package/{assets → src/lib/assets}/images/info.svg +0 -0
  211. /package/{assets → src/lib/assets}/images/instagram.svg +0 -0
  212. /package/{assets → src/lib/assets}/images/italic.svg +0 -0
  213. /package/{assets → src/lib/assets}/images/key.svg +0 -0
  214. /package/{assets → src/lib/assets}/images/layers.svg +0 -0
  215. /package/{assets → src/lib/assets}/images/layout.svg +0 -0
  216. /package/{assets → src/lib/assets}/images/life-buoy.svg +0 -0
  217. /package/{assets → src/lib/assets}/images/link-2.svg +0 -0
  218. /package/{assets → src/lib/assets}/images/link.svg +0 -0
  219. /package/{assets → src/lib/assets}/images/linkedin.svg +0 -0
  220. /package/{assets → src/lib/assets}/images/list.svg +0 -0
  221. /package/{assets → src/lib/assets}/images/loader.svg +0 -0
  222. /package/{assets → src/lib/assets}/images/lock.svg +0 -0
  223. /package/{assets → src/lib/assets}/images/log-in.svg +0 -0
  224. /package/{assets → src/lib/assets}/images/log-out.svg +0 -0
  225. /package/{assets → src/lib/assets}/images/mail.svg +0 -0
  226. /package/{assets → src/lib/assets}/images/map-pin.svg +0 -0
  227. /package/{assets → src/lib/assets}/images/map.svg +0 -0
  228. /package/{assets → src/lib/assets}/images/maximize-2.svg +0 -0
  229. /package/{assets → src/lib/assets}/images/maximize.svg +0 -0
  230. /package/{assets → src/lib/assets}/images/meh.svg +0 -0
  231. /package/{assets → src/lib/assets}/images/menu.svg +0 -0
  232. /package/{assets → src/lib/assets}/images/message-circle.svg +0 -0
  233. /package/{assets → src/lib/assets}/images/message-square.svg +0 -0
  234. /package/{assets → src/lib/assets}/images/mic-off.svg +0 -0
  235. /package/{assets → src/lib/assets}/images/mic.svg +0 -0
  236. /package/{assets → src/lib/assets}/images/minimize-2.svg +0 -0
  237. /package/{assets → src/lib/assets}/images/minimize.svg +0 -0
  238. /package/{assets → src/lib/assets}/images/minus-circle.svg +0 -0
  239. /package/{assets → src/lib/assets}/images/minus-square.svg +0 -0
  240. /package/{assets → src/lib/assets}/images/minus.svg +0 -0
  241. /package/{assets → src/lib/assets}/images/monitor.svg +0 -0
  242. /package/{assets → src/lib/assets}/images/moon.svg +0 -0
  243. /package/{assets → src/lib/assets}/images/more-horizontal.svg +0 -0
  244. /package/{assets → src/lib/assets}/images/more-vertical.svg +0 -0
  245. /package/{assets → src/lib/assets}/images/mouse-pointer.svg +0 -0
  246. /package/{assets → src/lib/assets}/images/move.svg +0 -0
  247. /package/{assets → src/lib/assets}/images/music.svg +0 -0
  248. /package/{assets → src/lib/assets}/images/navigation-2.svg +0 -0
  249. /package/{assets → src/lib/assets}/images/navigation.svg +0 -0
  250. /package/{assets → src/lib/assets}/images/octagon.svg +0 -0
  251. /package/{assets → src/lib/assets}/images/package.svg +0 -0
  252. /package/{assets → src/lib/assets}/images/paperclip.svg +0 -0
  253. /package/{assets → src/lib/assets}/images/pause-circle.svg +0 -0
  254. /package/{assets → src/lib/assets}/images/pause.svg +0 -0
  255. /package/{assets → src/lib/assets}/images/pen-tool.svg +0 -0
  256. /package/{assets → src/lib/assets}/images/percent.svg +0 -0
  257. /package/{assets → src/lib/assets}/images/phone-call.svg +0 -0
  258. /package/{assets → src/lib/assets}/images/phone-forwarded.svg +0 -0
  259. /package/{assets → src/lib/assets}/images/phone-incoming.svg +0 -0
  260. /package/{assets → src/lib/assets}/images/phone-missed.svg +0 -0
  261. /package/{assets → src/lib/assets}/images/phone-off.svg +0 -0
  262. /package/{assets → src/lib/assets}/images/phone-outgoing.svg +0 -0
  263. /package/{assets → src/lib/assets}/images/phone.svg +0 -0
  264. /package/{assets → src/lib/assets}/images/pie-chart.svg +0 -0
  265. /package/{assets → src/lib/assets}/images/play-circle.svg +0 -0
  266. /package/{assets → src/lib/assets}/images/play.svg +0 -0
  267. /package/{assets → src/lib/assets}/images/plus-circle.svg +0 -0
  268. /package/{assets → src/lib/assets}/images/plus-square.svg +0 -0
  269. /package/{assets → src/lib/assets}/images/plus.svg +0 -0
  270. /package/{assets → src/lib/assets}/images/pocket.svg +0 -0
  271. /package/{assets → src/lib/assets}/images/power.svg +0 -0
  272. /package/{assets → src/lib/assets}/images/printer.svg +0 -0
  273. /package/{assets → src/lib/assets}/images/radio.svg +0 -0
  274. /package/{assets → src/lib/assets}/images/refresh-ccw.svg +0 -0
  275. /package/{assets → src/lib/assets}/images/refresh-cw.svg +0 -0
  276. /package/{assets → src/lib/assets}/images/repeat.svg +0 -0
  277. /package/{assets → src/lib/assets}/images/rewind.svg +0 -0
  278. /package/{assets → src/lib/assets}/images/rotate-ccw.svg +0 -0
  279. /package/{assets → src/lib/assets}/images/rotate-cw.svg +0 -0
  280. /package/{assets → src/lib/assets}/images/rss.svg +0 -0
  281. /package/{assets → src/lib/assets}/images/save.svg +0 -0
  282. /package/{assets → src/lib/assets}/images/scissors.svg +0 -0
  283. /package/{assets → src/lib/assets}/images/search.svg +0 -0
  284. /package/{assets → src/lib/assets}/images/send.svg +0 -0
  285. /package/{assets → src/lib/assets}/images/server.svg +0 -0
  286. /package/{assets → src/lib/assets}/images/settings.svg +0 -0
  287. /package/{assets → src/lib/assets}/images/share-2.svg +0 -0
  288. /package/{assets → src/lib/assets}/images/share.svg +0 -0
  289. /package/{assets → src/lib/assets}/images/shield-off.svg +0 -0
  290. /package/{assets → src/lib/assets}/images/shield.svg +0 -0
  291. /package/{assets → src/lib/assets}/images/shopping-bag.svg +0 -0
  292. /package/{assets → src/lib/assets}/images/shopping-cart.svg +0 -0
  293. /package/{assets → src/lib/assets}/images/shuffle.svg +0 -0
  294. /package/{assets → src/lib/assets}/images/sidebar.svg +0 -0
  295. /package/{assets → src/lib/assets}/images/skip-back.svg +0 -0
  296. /package/{assets → src/lib/assets}/images/skip-forward.svg +0 -0
  297. /package/{assets → src/lib/assets}/images/slack.svg +0 -0
  298. /package/{assets → src/lib/assets}/images/slash.svg +0 -0
  299. /package/{assets → src/lib/assets}/images/sliders.svg +0 -0
  300. /package/{assets → src/lib/assets}/images/smartphone.svg +0 -0
  301. /package/{assets → src/lib/assets}/images/smile.svg +0 -0
  302. /package/{assets → src/lib/assets}/images/speaker.svg +0 -0
  303. /package/{assets → src/lib/assets}/images/square.svg +0 -0
  304. /package/{assets → src/lib/assets}/images/star.svg +0 -0
  305. /package/{assets → src/lib/assets}/images/stop-circle.svg +0 -0
  306. /package/{assets → src/lib/assets}/images/sun.svg +0 -0
  307. /package/{assets → src/lib/assets}/images/sunrise.svg +0 -0
  308. /package/{assets → src/lib/assets}/images/sunset.svg +0 -0
  309. /package/{assets → src/lib/assets}/images/table.svg +0 -0
  310. /package/{assets → src/lib/assets}/images/tablet.svg +0 -0
  311. /package/{assets → src/lib/assets}/images/tag.svg +0 -0
  312. /package/{assets → src/lib/assets}/images/target.svg +0 -0
  313. /package/{assets → src/lib/assets}/images/terminal.svg +0 -0
  314. /package/{assets → src/lib/assets}/images/thermometer.svg +0 -0
  315. /package/{assets → src/lib/assets}/images/thumbs-down.svg +0 -0
  316. /package/{assets → src/lib/assets}/images/thumbs-up.svg +0 -0
  317. /package/{assets → src/lib/assets}/images/toggle-left.svg +0 -0
  318. /package/{assets → src/lib/assets}/images/toggle-right.svg +0 -0
  319. /package/{assets → src/lib/assets}/images/tool.svg +0 -0
  320. /package/{assets → src/lib/assets}/images/trash-2.svg +0 -0
  321. /package/{assets → src/lib/assets}/images/trash.svg +0 -0
  322. /package/{assets → src/lib/assets}/images/trello.svg +0 -0
  323. /package/{assets → src/lib/assets}/images/trending-down.svg +0 -0
  324. /package/{assets → src/lib/assets}/images/trending-up.svg +0 -0
  325. /package/{assets → src/lib/assets}/images/triangle.svg +0 -0
  326. /package/{assets → src/lib/assets}/images/truck.svg +0 -0
  327. /package/{assets → src/lib/assets}/images/tv.svg +0 -0
  328. /package/{assets → src/lib/assets}/images/twitch.svg +0 -0
  329. /package/{assets → src/lib/assets}/images/twitter.svg +0 -0
  330. /package/{assets → src/lib/assets}/images/type.svg +0 -0
  331. /package/{assets → src/lib/assets}/images/umbrella.svg +0 -0
  332. /package/{assets → src/lib/assets}/images/underline.svg +0 -0
  333. /package/{assets → src/lib/assets}/images/unlock.svg +0 -0
  334. /package/{assets → src/lib/assets}/images/upload-cloud.svg +0 -0
  335. /package/{assets → src/lib/assets}/images/upload.svg +0 -0
  336. /package/{assets → src/lib/assets}/images/user-check.svg +0 -0
  337. /package/{assets → src/lib/assets}/images/user-minus.svg +0 -0
  338. /package/{assets → src/lib/assets}/images/user-plus.svg +0 -0
  339. /package/{assets → src/lib/assets}/images/user-x.svg +0 -0
  340. /package/{assets → src/lib/assets}/images/user.svg +0 -0
  341. /package/{assets → src/lib/assets}/images/users.svg +0 -0
  342. /package/{assets → src/lib/assets}/images/video-off.svg +0 -0
  343. /package/{assets → src/lib/assets}/images/video.svg +0 -0
  344. /package/{assets → src/lib/assets}/images/voicemail.svg +0 -0
  345. /package/{assets → src/lib/assets}/images/volume-1.svg +0 -0
  346. /package/{assets → src/lib/assets}/images/volume-2.svg +0 -0
  347. /package/{assets → src/lib/assets}/images/volume-x.svg +0 -0
  348. /package/{assets → src/lib/assets}/images/volume.svg +0 -0
  349. /package/{assets → src/lib/assets}/images/watch.svg +0 -0
  350. /package/{assets → src/lib/assets}/images/wifi-off.svg +0 -0
  351. /package/{assets → src/lib/assets}/images/wifi.svg +0 -0
  352. /package/{assets → src/lib/assets}/images/wind.svg +0 -0
  353. /package/{assets → src/lib/assets}/images/x-circle.svg +0 -0
  354. /package/{assets → src/lib/assets}/images/x-octagon.svg +0 -0
  355. /package/{assets → src/lib/assets}/images/x-square.svg +0 -0
  356. /package/{assets → src/lib/assets}/images/x.svg +0 -0
  357. /package/{assets → src/lib/assets}/images/youtube.svg +0 -0
  358. /package/{assets → src/lib/assets}/images/zap-off.svg +0 -0
  359. /package/{assets → src/lib/assets}/images/zap.svg +0 -0
  360. /package/{assets → src/lib/assets}/images/zoom-in.svg +0 -0
  361. /package/{assets → src/lib/assets}/images/zoom-out.svg +0 -0
  362. /package/{styles → src/lib/styles}/_fonts.scss +0 -0
  363. /package/{styles → src/lib/styles}/_functions.scss +0 -0
  364. /package/{styles → src/lib/styles}/_index.scss +0 -0
  365. /package/{styles → src/lib/styles}/_mixins.scss +0 -0
  366. /package/{styles → src/lib/styles}/_reset.scss +0 -0
  367. /package/{styles → src/lib/styles}/_variables.scss +0 -0
@@ -0,0 +1,18 @@
1
+ {
2
+ "$schema": "../../node_modules/ng-packagr/ng-package.schema.json",
3
+ "dest": "../../dist/cats-ui",
4
+ "lib": {
5
+ "entryFile": "src/public-api.ts",
6
+ "styleIncludePaths": ["src/lib/styles"]
7
+ },
8
+ "assets": [{
9
+ "input": "src/lib/styles",
10
+ "glob": "**/*.scss",
11
+ "output": "/styles"
12
+ },
13
+ {
14
+ "input": "src/lib/assets",
15
+ "glob": "**/*",
16
+ "output": "assets"
17
+ }]
18
+ }
package/package.json CHANGED
@@ -1,23 +1,12 @@
1
- {
2
- "name": "cats-ui-lib",
3
- "version": "2.0.0",
4
- "peerDependencies": {
5
- "@angular/common": "^20.3.0",
6
- "@angular/core": "^20.3.0"
7
- },
8
- "dependencies": {
9
- "tslib": "^2.3.0"
10
- },
11
- "sideEffects": false,
12
- "module": "fesm2022/cats-ui.mjs",
13
- "typings": "index.d.ts",
14
- "exports": {
15
- "./package.json": {
16
- "default": "./package.json"
17
- },
18
- ".": {
19
- "types": "./index.d.ts",
20
- "default": "./fesm2022/cats-ui.mjs"
21
- }
22
- }
1
+ {
2
+ "name": "cats-ui-lib",
3
+ "version": "2.0.1",
4
+ "peerDependencies": {
5
+ "@angular/core": ">=18 <22",
6
+ "@angular/common": ">=18 <22"
7
+ },
8
+ "dependencies": {
9
+ "tslib": "^2.3.0"
10
+ },
11
+ "sideEffects": false
23
12
  }
@@ -0,0 +1,13 @@
1
+ <div class="accordion-item">
2
+ <div class="accordion-header" (click)="toggle()">
3
+ <h3>{{ title }}</h3>
4
+ <img
5
+ [src]="isOpen() ? 'images/chevron-up.svg' : 'images/chevron-down.svg'"
6
+ alt=""
7
+ />
8
+ </div>
9
+
10
+ <div class="accordion-body" [class.open]="isOpen()">
11
+ <ng-container *ngTemplateOutlet="contentTemplate"></ng-container>
12
+ </div>
13
+ </div>
@@ -0,0 +1,36 @@
1
+ @use "../../../styles" as *;
2
+
3
+ .accordion-item {
4
+ @include border($radius: rem(8px));
5
+ margin-bottom: rem(12px);
6
+ &:has(.open) .accordion-header {
7
+ border-radius: rem(8px) rem(8px) 0 0;
8
+ }
9
+ .accordion-header {
10
+ @include flex(space-between, center);
11
+ background-color: var(--neutral-50);
12
+ padding: rem(8px) rem(16px);
13
+ height: rem(56px);
14
+ cursor: pointer;
15
+ border-radius: rem(8px);
16
+ h3 {
17
+ @include fontStyle(var(--fs-16), rem(28px), 600);
18
+ }
19
+ img {
20
+ max-width: rem(24px);
21
+ }
22
+ }
23
+ .accordion-body {
24
+ max-height: 0;
25
+ padding: 0 rem(8px);
26
+ overflow: hidden;
27
+ background: var(--white);
28
+ transition: max-height 0.4s ease, padding 0.3s;
29
+ /* When open */
30
+ &.open {
31
+ max-height: rem(500px);
32
+ padding: rem(15px) rem(10px);
33
+ border-radius: 0 0 rem(8px) rem(8px);
34
+ }
35
+ }
36
+ }
@@ -0,0 +1,57 @@
1
+ import {
2
+ Component,
3
+ ContentChild,
4
+ Inject,
5
+ Input,
6
+ TemplateRef,
7
+ } from '@angular/core';
8
+ import { AccordionComponent } from '../accordion.component';
9
+ import { CommonModule } from '@angular/common';
10
+
11
+ @Component({
12
+ selector: 'cats-ui-accordion-item',
13
+ imports: [CommonModule],
14
+ templateUrl: './accordion-item.component.html',
15
+ styleUrl: './accordion-item.component.scss',
16
+ })
17
+ export class AccordionItemComponent {
18
+ @Input() title: string = '';
19
+ @Input() index: number = 0;
20
+
21
+ // Change this to allow null instead of undefined
22
+ @ContentChild(TemplateRef) contentTemplate: TemplateRef<any> | null = null;
23
+
24
+ constructor(
25
+ @Inject(AccordionComponent) private accordion: AccordionComponent
26
+ ) {}
27
+
28
+ /**
29
+ * @description Determines whether open is
30
+ * @author Shiva Kant
31
+ * @returns true if open
32
+ */
33
+ isOpen(): boolean {
34
+ return this.accordion.isOpen(this.index);
35
+ }
36
+
37
+ /**
38
+ * @description Toggles accordion item component
39
+ * @author Shiva Kant
40
+ */
41
+ toggle(): void {
42
+ this.accordion.toggle(this.index);
43
+ }
44
+
45
+ /**
46
+ * @description perform any initialization after content is injected
47
+ * @author Shiva Kant
48
+ */
49
+ ngAfterContentInit(): void {
50
+ if (!this.contentTemplate) {
51
+ console.error(
52
+ 'No content template provided for accordion item:',
53
+ this.title
54
+ );
55
+ }
56
+ }
57
+ }
@@ -0,0 +1 @@
1
+ export * from './accordion-item.component'
@@ -0,0 +1,3 @@
1
+ <div class="accordion">
2
+ <ng-content></ng-content> <!-- Will contain AccordionItem components -->
3
+ </div>
@@ -0,0 +1,6 @@
1
+ @use "../../styles" as *;
2
+
3
+ .accordion {
4
+ width: 100%;
5
+ margin: 0 auto;
6
+ }
@@ -0,0 +1,30 @@
1
+ import { Component } from '@angular/core';
2
+
3
+ @Component({
4
+ selector: 'cats-ui-accordion',
5
+ imports: [],
6
+ templateUrl: './accordion.component.html',
7
+ styleUrl: './accordion.component.scss',
8
+ })
9
+ export class AccordionComponent {
10
+ openedIndex: number | null = null;
11
+
12
+ /**
13
+ * @description Toggles accordion component
14
+ * @author Shiva Kant
15
+ * @param index
16
+ */
17
+ toggle(index: number): void {
18
+ this.openedIndex = this.openedIndex === index ? null : index;
19
+ }
20
+
21
+ /**
22
+ * @description Determines whether open is
23
+ * @author Shiva Kant
24
+ * @param index
25
+ * @returns true if open
26
+ */
27
+ isOpen(index: number): boolean {
28
+ return this.openedIndex === index;
29
+ }
30
+ }
@@ -0,0 +1,2 @@
1
+ export * from './accordion.component'
2
+ export * from './accordion-item/accordion-item.component'
@@ -0,0 +1,125 @@
1
+ <div class="main_container">
2
+ <div
3
+ class="input_container"
4
+ catsOutsideClick
5
+ (clickOutSide)="outsideClicked()"
6
+ >
7
+ <div class="chips_wrapper">
8
+ <!-- Chips -->
9
+ @for (item of selectedOptions; track $index) { @if ($index <
10
+ autoCompleteMultiSelectConfig.chipLimit) {
11
+ <div class="chip" (click)="$event.stopPropagation()">
12
+ <span class="textTruncate">
13
+ {{
14
+ isObject(item)
15
+ ? item[autoCompleteMultiSelectConfig.textField]
16
+ : item
17
+ }}
18
+ </span>
19
+ <img
20
+ src="images/x.svg"
21
+ class="cross_icon"
22
+ (click)="$event.stopPropagation(); removeChip(item)"
23
+ />
24
+ </div>
25
+ } }
26
+ <!-- +N counter -->
27
+ @if (selectedOptions.length > autoCompleteMultiSelectConfig.chipLimit) {
28
+ <div class="view_more">
29
+ +{{ selectedOptions.length - autoCompleteMultiSelectConfig.chipLimit }}
30
+ </div>
31
+ }
32
+ <!-- Input Box (always available) -->
33
+ <div class="input_box" (click)="$event.stopPropagation()">
34
+ <input
35
+ type="text"
36
+ [(ngModel)]="inputValue"
37
+ (keyup.enter)="onClickEnter()"
38
+ (keyup)="updateDropdownStatus()"
39
+ [placeholder]="
40
+ selectedOptions.length === 0
41
+ ? autoCompleteMultiSelectConfig.placeholder
42
+ : ''
43
+ "
44
+ />
45
+ </div>
46
+ </div>
47
+
48
+ <!-- Dropdown toggle -->
49
+ <div class="arrow_icon" (click)="toggleDropdown()">
50
+ <img
51
+ src="images/chevron-up.svg"
52
+ [ngClass]="{ 'd-none': !showDropdown }"
53
+ />
54
+ <img
55
+ src="images/chevron-down.svg"
56
+ [ngClass]="{ 'd-none': showDropdown }"
57
+ />
58
+ </div>
59
+ </div>
60
+
61
+ <!-- Dropdown list -->
62
+ @if (showDropdown) {
63
+ <div class="dropdown_list_multi_auto_select" id="container_scroll" (click)=" onDivScroll($event)">
64
+ <ul>
65
+ <!-- Select All -->
66
+ @if (autoCompleteMultiSelectConfig.selectAll) {
67
+ <li
68
+ class="checkbox_container select_all_item"
69
+ (click)="checkUncheckAll($event)"
70
+ >
71
+ <input
72
+ type="checkbox"
73
+ [checked]="isSelectedAll"
74
+ (click)="$event.stopPropagation(); checkUncheckAll($event)"
75
+ />
76
+ <span>{{ isSelectedAll ? "Unselect All" : "Select All" }}</span>
77
+ </li>
78
+ }
79
+
80
+ <!-- Object Options -->
81
+ @if (isObject(optionsList[0])) { @for (item of optionsList; track $index)
82
+ { @if (item[autoCompleteMultiSelectConfig.textField] .toLowerCase()
83
+ .includes(inputValue.toLowerCase()) || inputValue == "") {
84
+
85
+ <li
86
+ class="checkbox_container"
87
+ [ngClass]="{
88
+ disabled_option:
89
+ autoCompleteMultiSelectConfig.disabledField &&
90
+ item[autoCompleteMultiSelectConfig.disabledField]
91
+ }"
92
+ (click)="updateSelectedItem(item, 'object')"
93
+ >
94
+ <input
95
+ type="checkbox"
96
+ [checked]="item.isSelected"
97
+ (click)="$event.stopPropagation(); updateSelectedItem(item, 'object')"
98
+ />
99
+
100
+ <span class="textTruncate">{{
101
+ item[autoCompleteMultiSelectConfig.textField]
102
+ }}</span>
103
+ </li>
104
+ } } }
105
+
106
+ <!-- String Options -->
107
+ @if (!isObject(optionsList[0])) { @for (item of optionsList; track $index)
108
+ { @if (item.toLowerCase().includes(inputValue.toLowerCase()) || inputValue
109
+ == "") {
110
+ <li
111
+ class="checkbox_container"
112
+ (click)="updateSelectedItem(item, 'string')"
113
+ >
114
+ <input
115
+ type="checkbox"
116
+ [checked]="selectedOptions.includes(item)"
117
+ (click)="$event.stopPropagation(); updateSelectedItem(item, 'string')"
118
+ />
119
+ <span class="textTruncate">{{ item }}</span>
120
+ </li>
121
+ } } }
122
+ </ul>
123
+ </div>
124
+ }
125
+ </div>
@@ -0,0 +1,138 @@
1
+ @use "../../styles" as *;
2
+
3
+ .main_container {
4
+ position: relative;
5
+ width: 100%;
6
+ .input_container {
7
+ @include flex(space-between, center, 0);
8
+ @include box(100%, rem(56px));
9
+ @include border($radius: rem(8px));
10
+ padding: 0 rem(16px);
11
+ background-color: var(--white);
12
+ color: var(--neutral-900);
13
+ cursor: pointer;
14
+
15
+ %chip-style {
16
+ height: rem(40px);
17
+ background-color: var(--blue-50);
18
+ color: var(--blue-700);
19
+ border-radius: rem(16px);
20
+ padding: rem(8px);
21
+ @include flex("", center, rem(4px));
22
+ @include fontStyle(var(--fs-16), rem(28px));
23
+ text-wrap: nowrap;
24
+ }
25
+ .chips_wrapper {
26
+ @include flex("", center, rem(12px), "", wrap);
27
+ @include box(calc(100% - rem(24px)), 100%);
28
+ .view_more {
29
+ @extend %chip-style;
30
+ margin-right: auto;
31
+ @include flex(center, center);
32
+ text-align: center;
33
+ max-width: rem(50px);
34
+ text-align: center;
35
+ }
36
+
37
+ .chip {
38
+ @extend %chip-style;
39
+ @include flex(space-between, center, rem(4px));
40
+ span {
41
+ max-width: rem(150px);
42
+ font-weight: 400;
43
+ }
44
+ .cross_icon {
45
+ max-width: rem(20px);
46
+ }
47
+ }
48
+ }
49
+ .input_box {
50
+ @include box(auto, 100%);
51
+ display: flex;
52
+ flex: 1;
53
+ input {
54
+ @include fontStyle(var(--fs-16), rem(24px), 400);
55
+ color: var(--default);
56
+ flex: 1;
57
+ border: none;
58
+ outline: none;
59
+ }
60
+ }
61
+ .arrow_icon {
62
+ img {
63
+ max-width: rem(24px);
64
+ }
65
+ }
66
+ }
67
+ .dropdown_list_multi_auto_select {
68
+ position: absolute;
69
+ width: 100%;
70
+ z-index: 2;
71
+ background: var(--white);
72
+ box-shadow: rem(0px) rem(12px) rem(16px) rem(-4px) var(--box-shadow);
73
+ @include border($radius: rem(8px));
74
+ top: rem(56px);
75
+
76
+ ul {
77
+ list-style-type: none;
78
+ padding: 0;
79
+ margin-bottom: 0;
80
+ max-height: rem(281px);
81
+ overflow: auto;
82
+ li {
83
+ padding: rem(16px);
84
+ height: rem(56px);
85
+ @include flex(flex-start, center, rem(8px));
86
+ @include fontStyle(var(--fs-16), rem(24px));
87
+ cursor: pointer;
88
+ color: var(--default);
89
+ &.disabled_option {
90
+ opacity: 0.4;
91
+ pointer-events: none;
92
+ }
93
+ &:hover {
94
+ background-color: var(--neutral-50);
95
+ }
96
+ }
97
+ // ------------------Checkbox Styles--------------------
98
+ .checkbox_container {
99
+ @include flex(flex-start, center, rem(12px));
100
+ @include fontStyle(var(--fs-16), rem(24px), 400);
101
+
102
+ input[type="checkbox"] {
103
+ appearance: none;
104
+ -webkit-appearance: none;
105
+ @include box(rem(24px), rem(24px));
106
+ min-width: rem(24px);
107
+ @include border();
108
+ cursor: pointer;
109
+ background-color: var(--white);
110
+ position: relative;
111
+ transition: all 0.2s ease;
112
+
113
+ // --- Default (unchecked) ---
114
+ &::after {
115
+ content: "";
116
+ display: none;
117
+ position: absolute;
118
+ @include position(rem(-1px), rem(-2px));
119
+ @include box(rem(24px), rem(24px));
120
+ background-size: contain;
121
+ background-repeat: no-repeat;
122
+ background-position: center;
123
+ }
124
+
125
+ // --- Checked State ---
126
+ &:checked {
127
+ border-color: var(--blue-600);
128
+ background-color: var(--blue-600);
129
+ &::after {
130
+ display: block;
131
+ background-image: url("/images/icon-checked.svg");
132
+ }
133
+ }
134
+ }
135
+ }
136
+ }
137
+ }
138
+ }