cats-data-grid 0.0.2 → 0.0.5

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 (354) hide show
  1. package/README.md +63 -63
  2. package/ng-package.json +20 -0
  3. package/package.json +5 -16
  4. package/src/lib/assets/images/check-white.svg +3 -0
  5. package/src/lib/assets/images/filter-icon.svg +1 -0
  6. package/src/lib/assets/images/gripper.svg +8 -0
  7. package/src/lib/assets/images/minus-blue.svg +3 -0
  8. package/src/lib/assets/images/pin.svg +4 -0
  9. package/src/lib/assets/images/t-arrow-down.svg +4 -0
  10. package/src/lib/assets/images/t-arrow-up.svg +4 -0
  11. package/src/lib/assets/images/t-choose-column.svg +3 -0
  12. package/src/lib/assets/images/t-data-pipeline.svg +13 -0
  13. package/src/lib/assets/images/t-filter-applied.svg +4 -0
  14. package/src/lib/assets/images/t-filter.svg +3 -0
  15. package/src/lib/assets/images/t-gripper.svg +8 -0
  16. package/src/lib/assets/images/t-group-by-name.svg +3 -0
  17. package/src/lib/assets/images/t-more-vertical.svg +5 -0
  18. package/src/lib/assets/images/t-move.svg +15 -0
  19. package/src/lib/assets/images/t-x.svg +4 -0
  20. package/src/lib/cats-data-grid.component.html +1389 -0
  21. package/src/lib/cats-data-grid.component.scss +736 -0
  22. package/src/lib/cats-data-grid.component.ts +1756 -0
  23. package/src/lib/common-components/common-calendar/common-calendar.component.html +228 -0
  24. package/src/lib/common-components/common-calendar/common-calendar.component.scss +279 -0
  25. package/src/lib/common-components/common-calendar/common-calendar.component.spec.ts +23 -0
  26. package/src/lib/common-components/common-calendar/common-calendar.component.ts +606 -0
  27. package/src/lib/common-components/common-input/common-input.component.html +36 -0
  28. package/src/lib/common-components/common-input/common-input.component.scss +3 -0
  29. package/src/lib/common-components/common-input/common-input.component.spec.ts +23 -0
  30. package/src/lib/common-components/common-input/common-input.component.ts +51 -0
  31. package/src/lib/directives/adaptive-position.directive.ts +192 -0
  32. package/src/lib/directives/outside-click.directive.ts +32 -0
  33. package/src/lib/directives/renderer-parser.directive.ts +51 -0
  34. package/src/lib/pipes/add-class.pipe.ts +18 -0
  35. package/src/lib/renderers/common-renderer/common-renderer.component.html +129 -0
  36. package/src/lib/renderers/common-renderer/common-renderer.component.scss +256 -0
  37. package/src/lib/renderers/common-renderer/common-renderer.component.spec.ts +23 -0
  38. package/src/lib/renderers/common-renderer/common-renderer.component.ts +302 -0
  39. package/src/lib/services/cats-data-grid.service.spec.ts +16 -0
  40. package/src/lib/services/cats-data-grid.service.ts +9 -0
  41. package/{styles → src/lib/styles}/_index.scss +3 -3
  42. package/{styles → src/lib/styles}/base/_fonts.scss +74 -74
  43. package/{styles → src/lib/styles}/base/_index.scss +1 -1
  44. package/{styles → src/lib/styles}/base/_reset.scss +60 -60
  45. package/src/lib/styles/component/_form.scss +371 -0
  46. package/{styles → src/lib/styles}/component/_index.scss +1 -1
  47. package/{styles → src/lib/styles}/sass-utils/_function.scss +14 -14
  48. package/{styles → src/lib/styles}/sass-utils/_index.scss +3 -3
  49. package/{styles → src/lib/styles}/sass-utils/_mixin.scss +87 -56
  50. package/src/lib/styles/sass-utils/_variable.scss +77 -0
  51. package/src/public-api.ts +7 -0
  52. package/tsconfig.lib.json +15 -0
  53. package/tsconfig.lib.prod.json +11 -0
  54. package/tsconfig.spec.json +15 -0
  55. package/fesm2022/cats-data-grid.mjs +0 -530
  56. package/fesm2022/cats-data-grid.mjs.map +0 -1
  57. package/index.d.ts +0 -5
  58. package/lib/cats-data-grid.component.d.ts +0 -148
  59. package/lib/directives/outside-click.directive.d.ts +0 -10
  60. package/lib/directives/renderer-parser.directive.d.ts +0 -15
  61. package/lib/pipes/add-class.pipe.d.ts +0 -7
  62. package/lib/services/cats-data-grid.service.d.ts +0 -6
  63. package/public-api.d.ts +0 -2
  64. package/styles/component/_form.scss +0 -246
  65. package/styles/sass-utils/_variable.scss +0 -66
  66. /package/{assets → src/lib/assets}/images/activity.svg +0 -0
  67. /package/{assets → src/lib/assets}/images/airplay.svg +0 -0
  68. /package/{assets → src/lib/assets}/images/alert-circle.svg +0 -0
  69. /package/{assets → src/lib/assets}/images/alert-octagon.svg +0 -0
  70. /package/{assets → src/lib/assets}/images/alert-triangle.svg +0 -0
  71. /package/{assets → src/lib/assets}/images/align-center.svg +0 -0
  72. /package/{assets → src/lib/assets}/images/align-justify.svg +0 -0
  73. /package/{assets → src/lib/assets}/images/align-left.svg +0 -0
  74. /package/{assets → src/lib/assets}/images/align-right.svg +0 -0
  75. /package/{assets → src/lib/assets}/images/anchor.svg +0 -0
  76. /package/{assets → src/lib/assets}/images/aperture.svg +0 -0
  77. /package/{assets → src/lib/assets}/images/archive.svg +0 -0
  78. /package/{assets → src/lib/assets}/images/arrow-down-circle.svg +0 -0
  79. /package/{assets → src/lib/assets}/images/arrow-down-left.svg +0 -0
  80. /package/{assets → src/lib/assets}/images/arrow-down-right.svg +0 -0
  81. /package/{assets → src/lib/assets}/images/arrow-down.svg +0 -0
  82. /package/{assets → src/lib/assets}/images/arrow-left-circle.svg +0 -0
  83. /package/{assets → src/lib/assets}/images/arrow-left.svg +0 -0
  84. /package/{assets → src/lib/assets}/images/arrow-right-circle.svg +0 -0
  85. /package/{assets → src/lib/assets}/images/arrow-right.svg +0 -0
  86. /package/{assets → src/lib/assets}/images/arrow-up-circle.svg +0 -0
  87. /package/{assets → src/lib/assets}/images/arrow-up-left.svg +0 -0
  88. /package/{assets → src/lib/assets}/images/arrow-up-right.svg +0 -0
  89. /package/{assets → src/lib/assets}/images/arrow-up.svg +0 -0
  90. /package/{assets → src/lib/assets}/images/at-sign.svg +0 -0
  91. /package/{assets → src/lib/assets}/images/award.svg +0 -0
  92. /package/{assets → src/lib/assets}/images/bar-chart-2.svg +0 -0
  93. /package/{assets → src/lib/assets}/images/bar-chart.svg +0 -0
  94. /package/{assets → src/lib/assets}/images/battery-charging.svg +0 -0
  95. /package/{assets → src/lib/assets}/images/battery.svg +0 -0
  96. /package/{assets → src/lib/assets}/images/bell-off.svg +0 -0
  97. /package/{assets → src/lib/assets}/images/bell.svg +0 -0
  98. /package/{assets → src/lib/assets}/images/bluetooth.svg +0 -0
  99. /package/{assets → src/lib/assets}/images/bold.svg +0 -0
  100. /package/{assets → src/lib/assets}/images/book-open.svg +0 -0
  101. /package/{assets → src/lib/assets}/images/book.svg +0 -0
  102. /package/{assets → src/lib/assets}/images/bookmark.svg +0 -0
  103. /package/{assets → src/lib/assets}/images/box.svg +0 -0
  104. /package/{assets → src/lib/assets}/images/briefcase.svg +0 -0
  105. /package/{assets → src/lib/assets}/images/calendar.svg +0 -0
  106. /package/{assets → src/lib/assets}/images/camera-off.svg +0 -0
  107. /package/{assets → src/lib/assets}/images/camera.svg +0 -0
  108. /package/{assets → src/lib/assets}/images/cast.svg +0 -0
  109. /package/{assets → src/lib/assets}/images/check-circle.svg +0 -0
  110. /package/{assets → src/lib/assets}/images/check-square.svg +0 -0
  111. /package/{assets → src/lib/assets}/images/check.svg +0 -0
  112. /package/{assets → src/lib/assets}/images/chevron-down.svg +0 -0
  113. /package/{assets → src/lib/assets}/images/chevron-left.svg +0 -0
  114. /package/{assets → src/lib/assets}/images/chevron-right.svg +0 -0
  115. /package/{assets → src/lib/assets}/images/chevron-up.svg +0 -0
  116. /package/{assets → src/lib/assets}/images/chevrons-down.svg +0 -0
  117. /package/{assets → src/lib/assets}/images/chevrons-left.svg +0 -0
  118. /package/{assets → src/lib/assets}/images/chevrons-right.svg +0 -0
  119. /package/{assets → src/lib/assets}/images/chevrons-up.svg +0 -0
  120. /package/{assets → src/lib/assets}/images/chrome.svg +0 -0
  121. /package/{assets → src/lib/assets}/images/circle.svg +0 -0
  122. /package/{assets → src/lib/assets}/images/clipboard.svg +0 -0
  123. /package/{assets → src/lib/assets}/images/clock.svg +0 -0
  124. /package/{assets → src/lib/assets}/images/cloud-drizzle.svg +0 -0
  125. /package/{assets → src/lib/assets}/images/cloud-lightning.svg +0 -0
  126. /package/{assets → src/lib/assets}/images/cloud-off.svg +0 -0
  127. /package/{assets → src/lib/assets}/images/cloud-rain.svg +0 -0
  128. /package/{assets → src/lib/assets}/images/cloud-snow.svg +0 -0
  129. /package/{assets → src/lib/assets}/images/cloud.svg +0 -0
  130. /package/{assets → src/lib/assets}/images/code.svg +0 -0
  131. /package/{assets → src/lib/assets}/images/codepen.svg +0 -0
  132. /package/{assets → src/lib/assets}/images/codesandbox.svg +0 -0
  133. /package/{assets → src/lib/assets}/images/coffee.svg +0 -0
  134. /package/{assets → src/lib/assets}/images/columns.svg +0 -0
  135. /package/{assets → src/lib/assets}/images/command.svg +0 -0
  136. /package/{assets → src/lib/assets}/images/compass.svg +0 -0
  137. /package/{assets → src/lib/assets}/images/copy.svg +0 -0
  138. /package/{assets → src/lib/assets}/images/corner-down-left.svg +0 -0
  139. /package/{assets → src/lib/assets}/images/corner-down-right.svg +0 -0
  140. /package/{assets → src/lib/assets}/images/corner-left-down.svg +0 -0
  141. /package/{assets → src/lib/assets}/images/corner-left-up.svg +0 -0
  142. /package/{assets → src/lib/assets}/images/corner-right-down.svg +0 -0
  143. /package/{assets → src/lib/assets}/images/corner-right-up.svg +0 -0
  144. /package/{assets → src/lib/assets}/images/corner-up-left.svg +0 -0
  145. /package/{assets → src/lib/assets}/images/corner-up-right.svg +0 -0
  146. /package/{assets → src/lib/assets}/images/cpu.svg +0 -0
  147. /package/{assets → src/lib/assets}/images/credit-card.svg +0 -0
  148. /package/{assets → src/lib/assets}/images/crop.svg +0 -0
  149. /package/{assets → src/lib/assets}/images/crosshair.svg +0 -0
  150. /package/{assets → src/lib/assets}/images/database.svg +0 -0
  151. /package/{assets → src/lib/assets}/images/delete.svg +0 -0
  152. /package/{assets → src/lib/assets}/images/disc.svg +0 -0
  153. /package/{assets → src/lib/assets}/images/divide-circle.svg +0 -0
  154. /package/{assets → src/lib/assets}/images/divide-square.svg +0 -0
  155. /package/{assets → src/lib/assets}/images/divide.svg +0 -0
  156. /package/{assets → src/lib/assets}/images/dollar-sign.svg +0 -0
  157. /package/{assets → src/lib/assets}/images/download-cloud.svg +0 -0
  158. /package/{assets → src/lib/assets}/images/download.svg +0 -0
  159. /package/{assets → src/lib/assets}/images/dribbble.svg +0 -0
  160. /package/{assets → src/lib/assets}/images/droplet.svg +0 -0
  161. /package/{assets → src/lib/assets}/images/edit-2.svg +0 -0
  162. /package/{assets → src/lib/assets}/images/edit-3.svg +0 -0
  163. /package/{assets → src/lib/assets}/images/edit.svg +0 -0
  164. /package/{assets → src/lib/assets}/images/external-link.svg +0 -0
  165. /package/{assets → src/lib/assets}/images/eye-off.svg +0 -0
  166. /package/{assets → src/lib/assets}/images/eye.svg +0 -0
  167. /package/{assets → src/lib/assets}/images/facebook.svg +0 -0
  168. /package/{assets → src/lib/assets}/images/fast-forward.svg +0 -0
  169. /package/{assets → src/lib/assets}/images/feather.svg +0 -0
  170. /package/{assets → src/lib/assets}/images/figma.svg +0 -0
  171. /package/{assets → src/lib/assets}/images/file-minus.svg +0 -0
  172. /package/{assets → src/lib/assets}/images/file-plus.svg +0 -0
  173. /package/{assets → src/lib/assets}/images/file-text.svg +0 -0
  174. /package/{assets → src/lib/assets}/images/file.svg +0 -0
  175. /package/{assets → src/lib/assets}/images/film.svg +0 -0
  176. /package/{assets → src/lib/assets}/images/filter.svg +0 -0
  177. /package/{assets → src/lib/assets}/images/flag.svg +0 -0
  178. /package/{assets → src/lib/assets}/images/folder-minus.svg +0 -0
  179. /package/{assets → src/lib/assets}/images/folder-plus.svg +0 -0
  180. /package/{assets → src/lib/assets}/images/folder.svg +0 -0
  181. /package/{assets → src/lib/assets}/images/framer.svg +0 -0
  182. /package/{assets → src/lib/assets}/images/frown.svg +0 -0
  183. /package/{assets → src/lib/assets}/images/gift.svg +0 -0
  184. /package/{assets → src/lib/assets}/images/git-branch.svg +0 -0
  185. /package/{assets → src/lib/assets}/images/git-commit.svg +0 -0
  186. /package/{assets → src/lib/assets}/images/git-merge.svg +0 -0
  187. /package/{assets → src/lib/assets}/images/git-pull-request.svg +0 -0
  188. /package/{assets → src/lib/assets}/images/github.svg +0 -0
  189. /package/{assets → src/lib/assets}/images/gitlab.svg +0 -0
  190. /package/{assets → src/lib/assets}/images/globe.svg +0 -0
  191. /package/{assets → src/lib/assets}/images/grid.svg +0 -0
  192. /package/{assets → src/lib/assets}/images/hard-drive.svg +0 -0
  193. /package/{assets → src/lib/assets}/images/hash.svg +0 -0
  194. /package/{assets → src/lib/assets}/images/headphones.svg +0 -0
  195. /package/{assets → src/lib/assets}/images/heart.svg +0 -0
  196. /package/{assets → src/lib/assets}/images/help-circle.svg +0 -0
  197. /package/{assets → src/lib/assets}/images/hexagon.svg +0 -0
  198. /package/{assets → src/lib/assets}/images/home.svg +0 -0
  199. /package/{assets → src/lib/assets}/images/image.svg +0 -0
  200. /package/{assets → src/lib/assets}/images/inbox.svg +0 -0
  201. /package/{assets → src/lib/assets}/images/info.svg +0 -0
  202. /package/{assets → src/lib/assets}/images/instagram.svg +0 -0
  203. /package/{assets → src/lib/assets}/images/italic.svg +0 -0
  204. /package/{assets → src/lib/assets}/images/key.svg +0 -0
  205. /package/{assets → src/lib/assets}/images/layers.svg +0 -0
  206. /package/{assets → src/lib/assets}/images/layout.svg +0 -0
  207. /package/{assets → src/lib/assets}/images/life-buoy.svg +0 -0
  208. /package/{assets → src/lib/assets}/images/link-2.svg +0 -0
  209. /package/{assets → src/lib/assets}/images/link.svg +0 -0
  210. /package/{assets → src/lib/assets}/images/linkedin.svg +0 -0
  211. /package/{assets → src/lib/assets}/images/list.svg +0 -0
  212. /package/{assets → src/lib/assets}/images/loader.svg +0 -0
  213. /package/{assets → src/lib/assets}/images/lock.svg +0 -0
  214. /package/{assets → src/lib/assets}/images/log-in.svg +0 -0
  215. /package/{assets → src/lib/assets}/images/log-out.svg +0 -0
  216. /package/{assets → src/lib/assets}/images/mail.svg +0 -0
  217. /package/{assets → src/lib/assets}/images/map-pin.svg +0 -0
  218. /package/{assets → src/lib/assets}/images/map.svg +0 -0
  219. /package/{assets → src/lib/assets}/images/maximize-2.svg +0 -0
  220. /package/{assets → src/lib/assets}/images/maximize.svg +0 -0
  221. /package/{assets → src/lib/assets}/images/meh.svg +0 -0
  222. /package/{assets → src/lib/assets}/images/menu.svg +0 -0
  223. /package/{assets → src/lib/assets}/images/message-circle.svg +0 -0
  224. /package/{assets → src/lib/assets}/images/message-square.svg +0 -0
  225. /package/{assets → src/lib/assets}/images/mic-off.svg +0 -0
  226. /package/{assets → src/lib/assets}/images/mic.svg +0 -0
  227. /package/{assets → src/lib/assets}/images/minimize-2.svg +0 -0
  228. /package/{assets → src/lib/assets}/images/minimize.svg +0 -0
  229. /package/{assets → src/lib/assets}/images/minus-circle.svg +0 -0
  230. /package/{assets → src/lib/assets}/images/minus-square.svg +0 -0
  231. /package/{assets → src/lib/assets}/images/minus.svg +0 -0
  232. /package/{assets → src/lib/assets}/images/monitor.svg +0 -0
  233. /package/{assets → src/lib/assets}/images/moon.svg +0 -0
  234. /package/{assets → src/lib/assets}/images/more-horizontal.svg +0 -0
  235. /package/{assets → src/lib/assets}/images/more-vertical.svg +0 -0
  236. /package/{assets → src/lib/assets}/images/mouse-pointer.svg +0 -0
  237. /package/{assets → src/lib/assets}/images/move.svg +0 -0
  238. /package/{assets → src/lib/assets}/images/music.svg +0 -0
  239. /package/{assets → src/lib/assets}/images/navigation-2.svg +0 -0
  240. /package/{assets → src/lib/assets}/images/navigation.svg +0 -0
  241. /package/{assets → src/lib/assets}/images/octagon.svg +0 -0
  242. /package/{assets → src/lib/assets}/images/package.svg +0 -0
  243. /package/{assets → src/lib/assets}/images/paperclip.svg +0 -0
  244. /package/{assets → src/lib/assets}/images/pause-circle.svg +0 -0
  245. /package/{assets → src/lib/assets}/images/pause.svg +0 -0
  246. /package/{assets → src/lib/assets}/images/pen-tool.svg +0 -0
  247. /package/{assets → src/lib/assets}/images/percent.svg +0 -0
  248. /package/{assets → src/lib/assets}/images/phone-call.svg +0 -0
  249. /package/{assets → src/lib/assets}/images/phone-forwarded.svg +0 -0
  250. /package/{assets → src/lib/assets}/images/phone-incoming.svg +0 -0
  251. /package/{assets → src/lib/assets}/images/phone-missed.svg +0 -0
  252. /package/{assets → src/lib/assets}/images/phone-off.svg +0 -0
  253. /package/{assets → src/lib/assets}/images/phone-outgoing.svg +0 -0
  254. /package/{assets → src/lib/assets}/images/phone.svg +0 -0
  255. /package/{assets → src/lib/assets}/images/pie-chart.svg +0 -0
  256. /package/{assets → src/lib/assets}/images/play-circle.svg +0 -0
  257. /package/{assets → src/lib/assets}/images/play.svg +0 -0
  258. /package/{assets → src/lib/assets}/images/plus-circle.svg +0 -0
  259. /package/{assets → src/lib/assets}/images/plus-square.svg +0 -0
  260. /package/{assets → src/lib/assets}/images/plus.svg +0 -0
  261. /package/{assets → src/lib/assets}/images/pocket.svg +0 -0
  262. /package/{assets → src/lib/assets}/images/power.svg +0 -0
  263. /package/{assets → src/lib/assets}/images/printer.svg +0 -0
  264. /package/{assets → src/lib/assets}/images/radio.svg +0 -0
  265. /package/{assets → src/lib/assets}/images/refresh-ccw.svg +0 -0
  266. /package/{assets → src/lib/assets}/images/refresh-cw.svg +0 -0
  267. /package/{assets → src/lib/assets}/images/repeat.svg +0 -0
  268. /package/{assets → src/lib/assets}/images/rewind.svg +0 -0
  269. /package/{assets → src/lib/assets}/images/rotate-ccw.svg +0 -0
  270. /package/{assets → src/lib/assets}/images/rotate-cw.svg +0 -0
  271. /package/{assets → src/lib/assets}/images/rss.svg +0 -0
  272. /package/{assets → src/lib/assets}/images/save.svg +0 -0
  273. /package/{assets → src/lib/assets}/images/scissors.svg +0 -0
  274. /package/{assets → src/lib/assets}/images/search.svg +0 -0
  275. /package/{assets → src/lib/assets}/images/send.svg +0 -0
  276. /package/{assets → src/lib/assets}/images/server.svg +0 -0
  277. /package/{assets → src/lib/assets}/images/settings.svg +0 -0
  278. /package/{assets → src/lib/assets}/images/share-2.svg +0 -0
  279. /package/{assets → src/lib/assets}/images/share.svg +0 -0
  280. /package/{assets → src/lib/assets}/images/shield-off.svg +0 -0
  281. /package/{assets → src/lib/assets}/images/shield.svg +0 -0
  282. /package/{assets → src/lib/assets}/images/shopping-bag.svg +0 -0
  283. /package/{assets → src/lib/assets}/images/shopping-cart.svg +0 -0
  284. /package/{assets → src/lib/assets}/images/shuffle.svg +0 -0
  285. /package/{assets → src/lib/assets}/images/sidebar.svg +0 -0
  286. /package/{assets → src/lib/assets}/images/skip-back.svg +0 -0
  287. /package/{assets → src/lib/assets}/images/skip-forward.svg +0 -0
  288. /package/{assets → src/lib/assets}/images/slack.svg +0 -0
  289. /package/{assets → src/lib/assets}/images/slash.svg +0 -0
  290. /package/{assets → src/lib/assets}/images/sliders.svg +0 -0
  291. /package/{assets → src/lib/assets}/images/smartphone.svg +0 -0
  292. /package/{assets → src/lib/assets}/images/smile.svg +0 -0
  293. /package/{assets → src/lib/assets}/images/sort_down.svg +0 -0
  294. /package/{assets → src/lib/assets}/images/sort_up.svg +0 -0
  295. /package/{assets → src/lib/assets}/images/speaker.svg +0 -0
  296. /package/{assets → src/lib/assets}/images/square.svg +0 -0
  297. /package/{assets → src/lib/assets}/images/star.svg +0 -0
  298. /package/{assets → src/lib/assets}/images/stop-circle.svg +0 -0
  299. /package/{assets → src/lib/assets}/images/sun.svg +0 -0
  300. /package/{assets → src/lib/assets}/images/sunrise.svg +0 -0
  301. /package/{assets → src/lib/assets}/images/sunset.svg +0 -0
  302. /package/{assets → src/lib/assets}/images/table.svg +0 -0
  303. /package/{assets → src/lib/assets}/images/tablet.svg +0 -0
  304. /package/{assets → src/lib/assets}/images/tag.svg +0 -0
  305. /package/{assets → src/lib/assets}/images/target.svg +0 -0
  306. /package/{assets → src/lib/assets}/images/terminal.svg +0 -0
  307. /package/{assets → src/lib/assets}/images/thermometer.svg +0 -0
  308. /package/{assets → src/lib/assets}/images/thumbs-down.svg +0 -0
  309. /package/{assets → src/lib/assets}/images/thumbs-up.svg +0 -0
  310. /package/{assets → src/lib/assets}/images/toggle-left.svg +0 -0
  311. /package/{assets → src/lib/assets}/images/toggle-right.svg +0 -0
  312. /package/{assets → src/lib/assets}/images/tool.svg +0 -0
  313. /package/{assets → src/lib/assets}/images/trash-2.svg +0 -0
  314. /package/{assets → src/lib/assets}/images/trash.svg +0 -0
  315. /package/{assets → src/lib/assets}/images/trello.svg +0 -0
  316. /package/{assets → src/lib/assets}/images/trending-down.svg +0 -0
  317. /package/{assets → src/lib/assets}/images/trending-up.svg +0 -0
  318. /package/{assets → src/lib/assets}/images/triangle.svg +0 -0
  319. /package/{assets → src/lib/assets}/images/truck.svg +0 -0
  320. /package/{assets → src/lib/assets}/images/tv.svg +0 -0
  321. /package/{assets → src/lib/assets}/images/twitch.svg +0 -0
  322. /package/{assets → src/lib/assets}/images/twitter.svg +0 -0
  323. /package/{assets → src/lib/assets}/images/type.svg +0 -0
  324. /package/{assets → src/lib/assets}/images/umbrella.svg +0 -0
  325. /package/{assets → src/lib/assets}/images/underline.svg +0 -0
  326. /package/{assets → src/lib/assets}/images/unlock.svg +0 -0
  327. /package/{assets → src/lib/assets}/images/upload-cloud.svg +0 -0
  328. /package/{assets → src/lib/assets}/images/upload.svg +0 -0
  329. /package/{assets → src/lib/assets}/images/user-check.svg +0 -0
  330. /package/{assets → src/lib/assets}/images/user-minus.svg +0 -0
  331. /package/{assets → src/lib/assets}/images/user-plus.svg +0 -0
  332. /package/{assets → src/lib/assets}/images/user-x.svg +0 -0
  333. /package/{assets → src/lib/assets}/images/user.svg +0 -0
  334. /package/{assets → src/lib/assets}/images/users.svg +0 -0
  335. /package/{assets → src/lib/assets}/images/video-off.svg +0 -0
  336. /package/{assets → src/lib/assets}/images/video.svg +0 -0
  337. /package/{assets → src/lib/assets}/images/voicemail.svg +0 -0
  338. /package/{assets → src/lib/assets}/images/volume-1.svg +0 -0
  339. /package/{assets → src/lib/assets}/images/volume-2.svg +0 -0
  340. /package/{assets → src/lib/assets}/images/volume-x.svg +0 -0
  341. /package/{assets → src/lib/assets}/images/volume.svg +0 -0
  342. /package/{assets → src/lib/assets}/images/watch.svg +0 -0
  343. /package/{assets → src/lib/assets}/images/wifi-off.svg +0 -0
  344. /package/{assets → src/lib/assets}/images/wifi.svg +0 -0
  345. /package/{assets → src/lib/assets}/images/wind.svg +0 -0
  346. /package/{assets → src/lib/assets}/images/x-circle.svg +0 -0
  347. /package/{assets → src/lib/assets}/images/x-octagon.svg +0 -0
  348. /package/{assets → src/lib/assets}/images/x-square.svg +0 -0
  349. /package/{assets → src/lib/assets}/images/x.svg +0 -0
  350. /package/{assets → src/lib/assets}/images/youtube.svg +0 -0
  351. /package/{assets → src/lib/assets}/images/zap-off.svg +0 -0
  352. /package/{assets → src/lib/assets}/images/zap.svg +0 -0
  353. /package/{assets → src/lib/assets}/images/zoom-in.svg +0 -0
  354. /package/{assets → src/lib/assets}/images/zoom-out.svg +0 -0
@@ -0,0 +1,228 @@
1
+ <!-- Calendar -->
2
+
3
+ <div
4
+ class="calendar_wrapper"
5
+ appOutsideClick
6
+ (clickOutSide)="closeCalendar()"
7
+ [ngClass]="{ 'pe-none': disableControl }"
8
+ >
9
+ <div class="date_box" (click)="toggleCalendar()" #trigger>
10
+ @if (dateConfig.selectionMode=='single') {
11
+
12
+ <input
13
+ type="text"
14
+ placeholder="Select Date"
15
+ [value]="selectedDateTime"
16
+ readonly
17
+ [disabled]="disableControl"
18
+ />
19
+ } @else {
20
+ <input
21
+ type="text"
22
+ placeholder="Select date Range"
23
+ [value]="
24
+ selectedDateTime.start
25
+ | date
26
+ : 'MM/dd/yyyy' +
27
+ ' - ' +
28
+ (selectedDateTime.end | date : 'MM/dd/yyyy')
29
+ "
30
+ readonly
31
+ />
32
+ }
33
+ <!-- <i-feather name="calendar" class="calendar_icon"></i-feather> -->
34
+ <img src="images/calendar.svg" alt="" />
35
+ </div>
36
+ @if (isOpen) {
37
+ <div class="calendar-popup" adaptivePosition [trigger]="trigger" [matchWidth]="false">
38
+ <div class="calendar_container">
39
+ <!-- for the header -->
40
+ <div class="calendar-header">
41
+ <div class="month-year">
42
+ <span class="month" (click)="calendarView = 'monthView'">
43
+ {{ getMonthYear().month }},</span
44
+ >
45
+ <div class="year" (click)="calendarView = 'yearView'">
46
+ <span>
47
+ {{ getMonthYear().year }}
48
+ </span>
49
+ <img src="images/chevron-down.svg" class="year_arrow" alt="" />
50
+ </div>
51
+ </div>
52
+
53
+ <div class="arrow_container">
54
+ <span class="navigation-button" (click)="previousMonth()">
55
+ <img src="images/arrow-up.svg" alt="" />
56
+ </span>
57
+
58
+ <span class="navigation-button" (click)="nextMonth()">
59
+ <img src="images/arrow-down.svg" alt="" />
60
+ </span>
61
+ </div>
62
+ </div>
63
+ @if(calendarView === "monthView"){
64
+ <div class="month-grid">
65
+ @for(month of monthRange | keyvalue; track $index){
66
+ <span
67
+ class="month"
68
+ (click)="selectMonth(month.key)"
69
+ [ngClass]="{ selected: month.key == currentDate.getMonth() }"
70
+ >{{ month.value }}</span
71
+ >
72
+ }
73
+ </div>
74
+ } @else if(calendarView === 'yearView'){
75
+ <div class="year-selector">
76
+ <span class="navigation-button pointer" (click)="previousYearRange()">
77
+ <img src="images/chevron-left.svg" alt="" />
78
+ </span>
79
+ <div class="year-grid">
80
+ @for(year of yearRange;track $index){
81
+ <span
82
+ class="year"
83
+ (click)="selectYear(year)"
84
+ [ngClass]="{ selected: year == currentDate.getFullYear() }"
85
+ >{{ year }}</span
86
+ >
87
+ }
88
+ </div>
89
+ <span class="navigation-button pointer" (click)="nextYearRange()">
90
+ <img src="images/chevron-right.svg" alt="" />
91
+ </span>
92
+ </div>
93
+ } @else {
94
+ <div class="calendar_body">
95
+ <div class="calendar-grid">
96
+ <!-- Day names -->
97
+ @for (day of ['Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa', 'Su']; track $index)
98
+ {
99
+
100
+ <div class="days_name">
101
+ {{ day }}
102
+ </div>
103
+ }
104
+
105
+ <!-- Calendar dates -->
106
+ @for (dayObj of daysInMonth; track $index) {
107
+ <div
108
+ class="calendar-day"
109
+ [ngClass]="{
110
+ active:
111
+ dayObj.isCurrentMonth &&
112
+ dateConfig.selectionMode === 'single' &&
113
+ isSelectedDate(
114
+ dayObj.day,
115
+ dayObj.date.getMonth(),
116
+ dayObj.date.getFullYear()
117
+ ),
118
+
119
+ active_start:
120
+ dayObj.isCurrentMonth &&
121
+ dateConfig.selectionMode === 'range' &&
122
+ isSelectedDate(
123
+ dayObj.day,
124
+ dayObj.date.getMonth(),
125
+ dayObj.date.getFullYear()
126
+ ) &&
127
+ dayObj.day === rangeStart,
128
+
129
+ active_end:
130
+ dayObj.isCurrentMonth &&
131
+ dateConfig.selectionMode === 'range' &&
132
+ isSelectedDate(
133
+ dayObj.day,
134
+ dayObj.date.getMonth(),
135
+ dayObj.date.getFullYear()
136
+ ) &&
137
+ dayObj.day === rangeEnd,
138
+
139
+ range_between_active:
140
+ dayObj.isCurrentMonth &&
141
+ dateConfig.selectionMode === 'range' &&
142
+ isSelectedDate(
143
+ dayObj.day,
144
+ dayObj.date.getMonth(),
145
+ dayObj.date.getFullYear()
146
+ ) &&
147
+ rangeStart != null &&
148
+ rangeEnd != null &&
149
+ dayObj.day > rangeStart &&
150
+ dayObj.day < rangeEnd,
151
+
152
+ other_month: !dayObj.isCurrentMonth,
153
+ disabled: isDayDisabled(dayObj.day),
154
+ notInCurrentMonth: !dayObj.isCurrentMonth
155
+ }"
156
+ (click)="
157
+ dayObj.isCurrentMonth &&
158
+ !isDayDisabled(dayObj.day) &&
159
+ selectDate(dayObj.day)
160
+ "
161
+ >
162
+ {{ dayObj.day }}
163
+ </div>
164
+ }
165
+ </div>
166
+ <div class="bottom_btn">
167
+ <div class="btn">Clear</div>
168
+ <div class="btn">Today</div>
169
+ </div>
170
+ </div>
171
+ }
172
+ </div>
173
+ <!-- TIME SLOTS (only if showTime = true) -->
174
+ @if (dateConfig.enableTime) {
175
+ <div class="times">
176
+ <div class="time-picker">
177
+ <div class="time-column">
178
+ @for (timeSlot of timeSlots; track $index) {
179
+ <span
180
+ class="span_time"
181
+ [ngClass]="{ active: selectedTime === timeSlot.label }"
182
+ (click)="selectTime(timeSlot.label)"
183
+ >
184
+ {{ timeSlot.label }}
185
+ </span>
186
+ }
187
+ </div>
188
+
189
+ <div class="time-column">
190
+ @for (timeSlot of timeSlots; track $index) {
191
+ <span
192
+ class="span_time"
193
+ [ngClass]="{ active: selectedTime === timeSlot.label }"
194
+ >
195
+ {{ timeSlot.label }}
196
+ </span>
197
+ }
198
+ </div>
199
+
200
+ <div class="time-column">
201
+ @for (timeSlot of timeSlots; track $index) {
202
+ <span
203
+ class="span_time"
204
+ [ngClass]="{ active: selectedTime === timeSlot.label }"
205
+ >
206
+ {{ timeSlot.label }}
207
+ </span>
208
+ }
209
+ </div>
210
+
211
+ <!-- center selection indicator -->
212
+ <div class="center-highlight"></div>
213
+ </div>
214
+
215
+ <!-- @for (timeSlot of timeSlots; track $index) {
216
+ <span
217
+ class="span_time"
218
+ [ngClass]="{ active: selectedTime === timeSlot.label }"
219
+ (click)="selectTime(timeSlot.label)"
220
+ >
221
+ {{ timeSlot.label }}
222
+ </span>
223
+ } -->
224
+ </div>
225
+ }
226
+ </div>
227
+ }
228
+ </div>
@@ -0,0 +1,279 @@
1
+ @use "../../styles" as *;
2
+
3
+ .calendar_wrapper {
4
+ @include box(100%, 100%);
5
+ @include flex("", "", "", column);
6
+ // position: relative;
7
+ background-color: var(--white);
8
+ @include border();
9
+ .pe-none {
10
+ pointer-events: none;
11
+ }
12
+ .date_box {
13
+ @include flex();
14
+ height: rem(40px);
15
+ input {
16
+ @include fontStyle(var(--fs-14), rem(20px), 400);
17
+ @include box(100%, 100%);
18
+ cursor: pointer;
19
+ @include border($width: 0, $radius: rem(8px));
20
+ padding: rem(10px) rem(12px);
21
+ font-family: inherit;
22
+ &::placeholder {
23
+ color: var(--neutral-500);
24
+ }
25
+ }
26
+ img {
27
+ max-width: rem(16px);
28
+ margin-right: rem(12px);
29
+ cursor: pointer;
30
+ }
31
+ }
32
+ .calendar-popup {
33
+ display: flex;
34
+ position: absolute;
35
+ // top: rem(40px);
36
+ top: 0;
37
+ left: 100%;
38
+ // right: 0;
39
+ z-index: 10;
40
+ background: var(--white);
41
+ @include border($radius: rem(8px));
42
+ box-shadow: 0 rem(4px) rem(8px) 0 var(--box-shadow);
43
+ width: 100%;
44
+ min-width: rem(334px);
45
+ min-height: rem(368px);
46
+ .calendar_container {
47
+ flex: 1;
48
+ margin: rem(3px) 0;
49
+ }
50
+ .calendar-header {
51
+ height: rem(40px);
52
+ @include flex(space-between, center);
53
+ padding: rem(10px) rem(16px);
54
+ .arrow_container {
55
+ @include flex("", "", rem(8px));
56
+ .navigation-button {
57
+ cursor: pointer;
58
+ img {
59
+ @include box(rem(16px), rem(16px));
60
+ }
61
+ }
62
+ }
63
+ .month-year {
64
+ @include fontStyle(var(--fs-16), rem(28px), 600);
65
+ color: var(--neutral-600);
66
+ display: flex;
67
+ .year,
68
+ .month {
69
+ padding-right: rem(4px);
70
+ @include flex("", "", rem(8px));
71
+ cursor: pointer;
72
+ img {
73
+ max-width: rem(16px);
74
+ }
75
+ &.selected {
76
+ color: var(--blue-700);
77
+ }
78
+ }
79
+ // &:hover {
80
+ // color: var(--blue-700);
81
+ // transition: ease-in-out 0.2s;
82
+ // }
83
+ }
84
+ }
85
+ .year-selector {
86
+ @include flex(center, center);
87
+ .year-grid {
88
+ width: 100%;
89
+ }
90
+ img {
91
+ max-width: rem(20px);
92
+ }
93
+ }
94
+ .year-grid,
95
+ .month-grid {
96
+ display: grid;
97
+ grid-template-columns: repeat(3, 1fr);
98
+ gap: rem(8px);
99
+ @include fontStyle(var(--fs-16), rem(28px), 500);
100
+ height: rem(325px);
101
+ color: var(--neutral-600);
102
+ .month,
103
+ .year {
104
+ @include flex(center, center);
105
+ cursor: pointer;
106
+ border-radius: rem(4px);
107
+ transition: ease-in-out 0.2s;
108
+ &:hover,
109
+ &.selected {
110
+ color: var(--white);
111
+ background-color: var(--blue-600);
112
+ }
113
+ &:hover {
114
+ background-color: var(--blue-100);
115
+ color: var(--blue-700);
116
+ }
117
+ }
118
+ }
119
+ .calendar_body {
120
+ @include flex(space-between, "", "", column);
121
+ .calendar-grid {
122
+ display: grid;
123
+ grid-template-columns: repeat(7, 1fr);
124
+ text-align: center;
125
+ min-width: rem(334px);
126
+ .days_name {
127
+ height: rem(40px);
128
+ @include fontStyle(var(--fs-14), rem(24px), 600);
129
+ color: var(--neutral-600);
130
+ @include flex(center, center);
131
+ }
132
+ %common_td_style {
133
+ background-color: var(--blue-600);
134
+ color: var(--white);
135
+ border-radius: 0;
136
+ }
137
+ .calendar-day {
138
+ border-radius: rem(2px);
139
+ cursor: pointer;
140
+ // background-color: var(--blue-50);
141
+ @include box(rem(47.7px), rem(40px));
142
+ @include flex(center, center);
143
+ @include fontStyle(var(--fs-14), rem(24px), 600);
144
+ color: var(--neutral-600);
145
+ &.active {
146
+ background-color: var(--blue-600);
147
+ color: var(--white);
148
+ }
149
+ &:hover {
150
+ background-color: var(--blue-100);
151
+ // border: rem(1px) solid var(--blue-700);
152
+ color: var(--blue-700);
153
+ transition: ease-in-out 0.3s;
154
+ }
155
+ &:not(:last-child) {
156
+ // margin-bottom: rem(8px);
157
+ }
158
+ &.selected {
159
+ background-color: var(--orange-600);
160
+ color: var(--white);
161
+ }
162
+ &.disabled {
163
+ color: var(--neutral-400);
164
+ pointer-events: none;
165
+ background: var(--neutral-200);
166
+ }
167
+ &.notInCurrentMonth {
168
+ // pointer-events: none;
169
+ cursor: default;
170
+ color: var(--neutral-400);
171
+ &:hover {
172
+ background-color: transparent;
173
+ }
174
+ }
175
+ &.active_start {
176
+ @extend %common_td_style;
177
+ border-top-left-radius: rem(4px);
178
+ border-bottom-left-radius: rem(4px);
179
+ }
180
+ &.range_between_active {
181
+ color: var(--blue-600);
182
+ background-color: var(--blue-100);
183
+ }
184
+ &.active_end {
185
+ @extend %common_td_style;
186
+ border-top-right-radius: rem(4px);
187
+ border-bottom-right-radius: rem(4px);
188
+ }
189
+ }
190
+ }
191
+ .bottom_btn {
192
+ @include flex(space-between, center);
193
+ padding: rem(10px) rem(16px);
194
+ .btn {
195
+ @include fontStyle(var(--fs-14), rem(20px), 600);
196
+ color: var(--blue-600);
197
+ @include flex(center, center);
198
+ cursor: pointer;
199
+ }
200
+ }
201
+ }
202
+
203
+ .time-picker {
204
+ position: relative;
205
+ display: grid;
206
+ grid-template-columns: repeat(3, 1fr);
207
+ height: 360px;
208
+ overflow: hidden;
209
+ background: #fff;
210
+ }
211
+
212
+ .time-column {
213
+ display: flex;
214
+ flex-direction: column;
215
+ align-items: center;
216
+ overflow-y: auto;
217
+ scroll-snap-type: y mandatory;
218
+ }
219
+
220
+ /* hide scrollbar */
221
+ .time-column::-webkit-scrollbar {
222
+ width: 0;
223
+ }
224
+
225
+ /* active time */
226
+ .span_time.active {
227
+ background: #2f80ed;
228
+ color: #fff;
229
+ border-radius: 4px;
230
+ width: 70%;
231
+ }
232
+
233
+ /* center highlight line */
234
+ .center-highlight {
235
+ position: absolute;
236
+ top: 50%;
237
+ left: 0;
238
+ width: 100%;
239
+ height: 40px;
240
+ transform: translateY(-50%);
241
+ border-top: 1px solid red;
242
+ border-bottom: 1px solid red;
243
+ pointer-events: none;
244
+ }
245
+
246
+ .times {
247
+ min-width: rem(176px);
248
+ max-height: rem(364px);
249
+ overflow-y: auto;
250
+ overflow-x: hidden;
251
+ border-left: rem(1px) solid var(--neutral-200);
252
+ @include flex("", "", rem(4px), column);
253
+ box-shadow: -3px 0px 8px 2px #0a0d121f;
254
+ border-top-right-radius: rem(8px);
255
+ .span_time {
256
+ @include fontStyle(var(--fs-14), rem(20px), 600);
257
+ color: var(--neutral-600);
258
+ display: inline-block;
259
+ @include box(rem(48px) rem(40px));
260
+ max-width: rem(48px);
261
+ text-align: center;
262
+ cursor: pointer;
263
+ scroll-snap-align: center;
264
+ &:hover,
265
+ &.active {
266
+ background-color: var(--blue-100);
267
+ color: var(--blue-700);
268
+ transition: ease-in-out 0.3s;
269
+ }
270
+ }
271
+ }
272
+ }
273
+ }
274
+ @include width-range($tablet, $mediumDesktop) {
275
+ .calendar-grid {
276
+ display: grid;
277
+ grid-template-columns: repeat(4, 1fr);
278
+ }
279
+ }
@@ -0,0 +1,23 @@
1
+ import { ComponentFixture, TestBed } from '@angular/core/testing';
2
+
3
+ import { CommonCalendarComponent } from './common-calendar.component';
4
+
5
+ describe('CommonCalendarComponent', () => {
6
+ let component: CommonCalendarComponent;
7
+ let fixture: ComponentFixture<CommonCalendarComponent>;
8
+
9
+ beforeEach(async () => {
10
+ await TestBed.configureTestingModule({
11
+ imports: [CommonCalendarComponent]
12
+ })
13
+ .compileComponents();
14
+
15
+ fixture = TestBed.createComponent(CommonCalendarComponent);
16
+ component = fixture.componentInstance;
17
+ fixture.detectChanges();
18
+ });
19
+
20
+ it('should create', () => {
21
+ expect(component).toBeTruthy();
22
+ });
23
+ });