@ngbase/adk 0.1.1 → 0.1.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 (275) hide show
  1. package/a11y/accessibility-group.d.ts +2 -5
  2. package/accordion/accordion-item.d.ts +7 -1
  3. package/accordion/public-api.d.ts +1 -1
  4. package/autocomplete/autocomplete-input.d.ts +2 -4
  5. package/autocomplete/autocomplete.d.ts +13 -4
  6. package/avatar/avatar.d.ts +1 -1
  7. package/breadcrumb/breadcrumb.d.ts +2 -3
  8. package/breadcrumb/public-api.d.ts +1 -1
  9. package/carousel/carousel.d.ts +3 -3
  10. package/checkbox/checkbox.d.ts +11 -3
  11. package/checkbox/public-api.d.ts +1 -1
  12. package/chip/chip.d.ts +2 -2
  13. package/datepicker/calendar.d.ts +3 -3
  14. package/datepicker/datepicker-trigger.d.ts +22 -5
  15. package/datepicker/datepicker.d.ts +4 -3
  16. package/datepicker/time.d.ts +2 -2
  17. package/dialog/dialog.d.ts +1 -1
  18. package/drag/drag.d.ts +1 -2
  19. package/fesm2022/ngbase-adk-a11y.mjs +29 -26
  20. package/fesm2022/ngbase-adk-a11y.mjs.map +1 -1
  21. package/fesm2022/ngbase-adk-accordion.mjs +16 -3
  22. package/fesm2022/ngbase-adk-accordion.mjs.map +1 -1
  23. package/fesm2022/ngbase-adk-autocomplete.mjs +23 -52
  24. package/fesm2022/ngbase-adk-autocomplete.mjs.map +1 -1
  25. package/fesm2022/ngbase-adk-avatar.mjs +2 -2
  26. package/fesm2022/ngbase-adk-avatar.mjs.map +1 -1
  27. package/fesm2022/ngbase-adk-breadcrumb.mjs +2 -2
  28. package/fesm2022/ngbase-adk-breadcrumb.mjs.map +1 -1
  29. package/fesm2022/ngbase-adk-carousel.mjs +7 -7
  30. package/fesm2022/ngbase-adk-carousel.mjs.map +1 -1
  31. package/fesm2022/ngbase-adk-checkbox.mjs +8 -6
  32. package/fesm2022/ngbase-adk-checkbox.mjs.map +1 -1
  33. package/fesm2022/ngbase-adk-chip.mjs +4 -2
  34. package/fesm2022/ngbase-adk-chip.mjs.map +1 -1
  35. package/fesm2022/ngbase-adk-datepicker.mjs +187 -350
  36. package/fesm2022/ngbase-adk-datepicker.mjs.map +1 -1
  37. package/fesm2022/ngbase-adk-dialog.mjs +14 -15
  38. package/fesm2022/ngbase-adk-dialog.mjs.map +1 -1
  39. package/fesm2022/ngbase-adk-drag.mjs +1 -2
  40. package/fesm2022/ngbase-adk-drag.mjs.map +1 -1
  41. package/fesm2022/ngbase-adk-form-field.mjs +2 -156
  42. package/fesm2022/ngbase-adk-form-field.mjs.map +1 -1
  43. package/fesm2022/ngbase-adk-list.mjs +2 -2
  44. package/fesm2022/ngbase-adk-list.mjs.map +1 -1
  45. package/fesm2022/ngbase-adk-mask.mjs +5 -3
  46. package/fesm2022/ngbase-adk-mask.mjs.map +1 -1
  47. package/fesm2022/ngbase-adk-menu.mjs +34 -34
  48. package/fesm2022/ngbase-adk-menu.mjs.map +1 -1
  49. package/fesm2022/ngbase-adk-otp.mjs +164 -0
  50. package/fesm2022/ngbase-adk-otp.mjs.map +1 -0
  51. package/fesm2022/ngbase-adk-pagination.mjs +10 -67
  52. package/fesm2022/ngbase-adk-pagination.mjs.map +1 -1
  53. package/fesm2022/ngbase-adk-popover.mjs +434 -556
  54. package/fesm2022/ngbase-adk-popover.mjs.map +1 -1
  55. package/fesm2022/ngbase-adk-portal.mjs +5 -10
  56. package/fesm2022/ngbase-adk-portal.mjs.map +1 -1
  57. package/fesm2022/ngbase-adk-radio.mjs +8 -19
  58. package/fesm2022/ngbase-adk-radio.mjs.map +1 -1
  59. package/fesm2022/ngbase-adk-resizable.mjs +10 -43
  60. package/fesm2022/ngbase-adk-resizable.mjs.map +1 -1
  61. package/fesm2022/ngbase-adk-select.mjs +87 -185
  62. package/fesm2022/ngbase-adk-select.mjs.map +1 -1
  63. package/fesm2022/ngbase-adk-sheet.mjs +95 -0
  64. package/fesm2022/ngbase-adk-sheet.mjs.map +1 -0
  65. package/fesm2022/ngbase-adk-sidenav.mjs +2 -2
  66. package/fesm2022/ngbase-adk-sidenav.mjs.map +1 -1
  67. package/fesm2022/ngbase-adk-slider.mjs +12 -23
  68. package/fesm2022/ngbase-adk-slider.mjs.map +1 -1
  69. package/fesm2022/ngbase-adk-sonner.mjs +13 -63
  70. package/fesm2022/ngbase-adk-sonner.mjs.map +1 -1
  71. package/fesm2022/ngbase-adk-stepper.mjs +16 -114
  72. package/fesm2022/ngbase-adk-stepper.mjs.map +1 -1
  73. package/fesm2022/ngbase-adk-switch.mjs +2 -2
  74. package/fesm2022/ngbase-adk-switch.mjs.map +1 -1
  75. package/fesm2022/ngbase-adk-table.mjs +17 -35
  76. package/fesm2022/ngbase-adk-table.mjs.map +1 -1
  77. package/fesm2022/ngbase-adk-tabs.mjs +14 -94
  78. package/fesm2022/ngbase-adk-tabs.mjs.map +1 -1
  79. package/fesm2022/ngbase-adk-test.mjs +11 -1
  80. package/fesm2022/ngbase-adk-test.mjs.map +1 -1
  81. package/fesm2022/ngbase-adk-tooltip.mjs +49 -39
  82. package/fesm2022/ngbase-adk-tooltip.mjs.map +1 -1
  83. package/fesm2022/ngbase-adk-tour.mjs +3 -3
  84. package/fesm2022/ngbase-adk-tour.mjs.map +1 -1
  85. package/fesm2022/ngbase-adk-tree.mjs +11 -43
  86. package/fesm2022/ngbase-adk-tree.mjs.map +1 -1
  87. package/fesm2022/ngbase-adk-utils.mjs +12 -9
  88. package/fesm2022/ngbase-adk-utils.mjs.map +1 -1
  89. package/form-field/public-api.d.ts +0 -1
  90. package/mask/mask.d.ts +1 -2
  91. package/menu/menu-trigger.d.ts +3 -3
  92. package/menu/menu.d.ts +13 -7
  93. package/otp/index.d.ts +5 -0
  94. package/{form-field → otp}/otp.d.ts +1 -1
  95. package/otp/public-api.d.ts +1 -0
  96. package/package.json +27 -19
  97. package/pagination/pagination.d.ts +7 -3
  98. package/popover/base-popover.service.d.ts +1 -1
  99. package/popover/popover-arrow.ng.d.ts +34 -0
  100. package/popover/popover.d.ts +17 -7
  101. package/popover/popover.service.d.ts +5 -4
  102. package/popover/public-api.d.ts +1 -0
  103. package/popover/utils.d.ts +32 -48
  104. package/portal/dialog-ref.d.ts +0 -1
  105. package/portal/portal-base.service.d.ts +3 -3
  106. package/portal/portal-close.directive.d.ts +3 -2
  107. package/radio/radio.d.ts +5 -1
  108. package/resizable/resizable-group.d.ts +2 -2
  109. package/resizable/resizable.d.ts +2 -2
  110. package/select/option-group.d.ts +3 -3
  111. package/select/option.d.ts +1 -1
  112. package/select/select-base.d.ts +8 -6
  113. package/select/select.d.ts +6 -3
  114. package/sheet/index.d.ts +5 -0
  115. package/sheet/public-api.d.ts +2 -0
  116. package/sheet/sheet.d.ts +26 -0
  117. package/sheet/sheet.service.d.ts +13 -0
  118. package/sidenav/public-api.d.ts +1 -1
  119. package/sidenav/sidenav.d.ts +1 -1
  120. package/slider/public-api.d.ts +1 -1
  121. package/slider/slider.d.ts +6 -5
  122. package/sonner/sonner.d.ts +2 -1
  123. package/stepper/animation.d.ts +1 -1
  124. package/stepper/step.d.ts +1 -1
  125. package/stepper/stepper.d.ts +2 -2
  126. package/switch/switch.d.ts +1 -1
  127. package/table/body-row.d.ts +3 -3
  128. package/table/head-row.d.ts +3 -3
  129. package/table/table.d.ts +3 -3
  130. package/tabs/tab-group.d.ts +4 -4
  131. package/tabs/tab.d.ts +2 -2
  132. package/test/utils.d.ts +19 -3
  133. package/tooltip/public-api.d.ts +1 -1
  134. package/tooltip/tooltip.d.ts +5 -1
  135. package/tooltip/tooltip.directive.d.ts +1 -1
  136. package/tooltip/tooltip.service.d.ts +4 -2
  137. package/tour/tour.service.d.ts +3 -4
  138. package/tree/public-api.d.ts +2 -2
  139. package/tree/tree-node.d.ts +2 -2
  140. package/tree/tree.d.ts +2 -2
  141. package/utils/utils.d.ts +5 -4
  142. package/schematics/collection.json +0 -15
  143. package/schematics/components/files/accordion/accordion.ts.template +0 -55
  144. package/schematics/components/files/accordion/index.ts.template +0 -5
  145. package/schematics/components/files/alert/alert.ts.template +0 -62
  146. package/schematics/components/files/alert/index.ts.template +0 -1
  147. package/schematics/components/files/autocomplete/autocomplete.ts.template +0 -48
  148. package/schematics/components/files/autocomplete/index.ts.template +0 -5
  149. package/schematics/components/files/avatar/avatar.ts.template +0 -31
  150. package/schematics/components/files/avatar/index.ts.template +0 -1
  151. package/schematics/components/files/badge/badge.ts.template +0 -11
  152. package/schematics/components/files/badge/index.ts.template +0 -1
  153. package/schematics/components/files/breadcrumb/breadcrumb.ts.template +0 -49
  154. package/schematics/components/files/breadcrumb/index.ts.template +0 -1
  155. package/schematics/components/files/button/button.ts.template +0 -29
  156. package/schematics/components/files/button/index.ts.template +0 -5
  157. package/schematics/components/files/card/card.ts.template +0 -11
  158. package/schematics/components/files/card/index.ts.template +0 -5
  159. package/schematics/components/files/carousel/carousel.ts.template +0 -44
  160. package/schematics/components/files/carousel/index.ts.template +0 -1
  161. package/schematics/components/files/checkbox/checkbox.ts.template +0 -46
  162. package/schematics/components/files/checkbox/focus-style.directive.ts.template +0 -12
  163. package/schematics/components/files/checkbox/index.ts.template +0 -6
  164. package/schematics/components/files/chip/chip.ts.template +0 -36
  165. package/schematics/components/files/chip/index.ts.template +0 -1
  166. package/schematics/components/files/color-picker/color-picker.ts.template +0 -104
  167. package/schematics/components/files/color-picker/index.ts.template +0 -5
  168. package/schematics/components/files/command/command.ts.template +0 -82
  169. package/schematics/components/files/command/index.ts.template +0 -1
  170. package/schematics/components/files/datepicker/calendar.ts.template +0 -117
  171. package/schematics/components/files/datepicker/datepicker-trigger.ts.template +0 -27
  172. package/schematics/components/files/datepicker/datepicker.ts.template +0 -28
  173. package/schematics/components/files/datepicker/index.ts.template +0 -3
  174. package/schematics/components/files/datepicker/time.ts.template +0 -46
  175. package/schematics/components/files/dialog/dialog.ts.template +0 -89
  176. package/schematics/components/files/dialog/index.ts.template +0 -5
  177. package/schematics/components/files/drawer/drawer.ts.template +0 -104
  178. package/schematics/components/files/drawer/index.ts.template +0 -5
  179. package/schematics/components/files/form-field/index.ts.template +0 -7
  180. package/schematics/components/files/form-field/input-style.directive.ts.template +0 -11
  181. package/schematics/components/files/form-field/input.ts.template +0 -100
  182. package/schematics/components/files/form-field/otp.ts.template +0 -37
  183. package/schematics/components/files/hover-card/hover-card.ts.template +0 -13
  184. package/schematics/components/files/hover-card/index.ts.template +0 -5
  185. package/schematics/components/files/icon/icon.ts.template +0 -16
  186. package/schematics/components/files/icon/index.ts.template +0 -1
  187. package/schematics/components/files/inline-edit/index.ts.template +0 -1
  188. package/schematics/components/files/inline-edit/inline-edit.ts.template +0 -24
  189. package/schematics/components/files/keys/index.ts.template +0 -5
  190. package/schematics/components/files/keys/key.ts.template +0 -35
  191. package/schematics/components/files/list/index.ts.template +0 -5
  192. package/schematics/components/files/list/list.ts.template +0 -28
  193. package/schematics/components/files/mask/index.ts.template +0 -1
  194. package/schematics/components/files/mask/mask.ts.template +0 -8
  195. package/schematics/components/files/menu/context-menu.ts.template +0 -14
  196. package/schematics/components/files/menu/index.ts.template +0 -8
  197. package/schematics/components/files/menu/mention.ts.template +0 -14
  198. package/schematics/components/files/menu/menu.ts.template +0 -37
  199. package/schematics/components/files/menu/navigation-menu.ts.template +0 -8
  200. package/schematics/components/files/pagination/index.ts.template +0 -1
  201. package/schematics/components/files/pagination/pagination.ts.template +0 -71
  202. package/schematics/components/files/picasa/index.ts.template +0 -1
  203. package/schematics/components/files/picasa/picasa-base.component.ts.template +0 -80
  204. package/schematics/components/files/picasa/picasa.component.ts.template +0 -57
  205. package/schematics/components/files/picasa/picasa.directive.ts.template +0 -41
  206. package/schematics/components/files/picasa/picase.service.ts.template +0 -24
  207. package/schematics/components/files/popover/index.ts.template +0 -1
  208. package/schematics/components/files/popover/popover.ts.template +0 -87
  209. package/schematics/components/files/progress/index.ts.template +0 -5
  210. package/schematics/components/files/progress/progress.ts.template +0 -14
  211. package/schematics/components/files/radio/index.ts.template +0 -5
  212. package/schematics/components/files/radio/radio.ts.template +0 -40
  213. package/schematics/components/files/resizable/index.ts.template +0 -5
  214. package/schematics/components/files/resizable/resizable.ts.template +0 -56
  215. package/schematics/components/files/scroll-area/index.ts.template +0 -1
  216. package/schematics/components/files/scroll-area/scroll-area.ts.template +0 -40
  217. package/schematics/components/files/select/index.ts.template +0 -8
  218. package/schematics/components/files/select/list-selection.ts.template +0 -15
  219. package/schematics/components/files/select/option.ts.template +0 -34
  220. package/schematics/components/files/select/select-input.ts.template +0 -21
  221. package/schematics/components/files/select/select.ts.template +0 -96
  222. package/schematics/components/files/selectable/index.ts.template +0 -1
  223. package/schematics/components/files/selectable/selectable.ts.template +0 -34
  224. package/schematics/components/files/separator/index.ts.template +0 -5
  225. package/schematics/components/files/separator/separator.ts.template +0 -19
  226. package/schematics/components/files/sheet/index.ts.template +0 -5
  227. package/schematics/components/files/sheet/sheet.ts.template +0 -134
  228. package/schematics/components/files/sidenav/index.ts.template +0 -1
  229. package/schematics/components/files/sidenav/sidenav.ts.template +0 -48
  230. package/schematics/components/files/skeleton/index.ts.template +0 -1
  231. package/schematics/components/files/skeleton/skeleton.ts.template +0 -15
  232. package/schematics/components/files/slider/index.ts.template +0 -5
  233. package/schematics/components/files/slider/slider.ts.template +0 -42
  234. package/schematics/components/files/sonner/index.ts.template +0 -5
  235. package/schematics/components/files/sonner/sonner.ts.template +0 -58
  236. package/schematics/components/files/spinner/index.ts.template +0 -1
  237. package/schematics/components/files/spinner/spinner.ts.template +0 -79
  238. package/schematics/components/files/stepper/index.ts.template +0 -1
  239. package/schematics/components/files/stepper/stepper.ts.template +0 -88
  240. package/schematics/components/files/switch/index.ts.template +0 -5
  241. package/schematics/components/files/switch/switch.ts.template +0 -29
  242. package/schematics/components/files/table/body-cell.ts.template +0 -19
  243. package/schematics/components/files/table/body-row.ts.template +0 -21
  244. package/schematics/components/files/table/column.ts.template +0 -8
  245. package/schematics/components/files/table/head-cell.ts.template +0 -19
  246. package/schematics/components/files/table/head-row.ts.template +0 -27
  247. package/schematics/components/files/table/index.ts.template +0 -26
  248. package/schematics/components/files/table/table.ts.template +0 -20
  249. package/schematics/components/files/tabs/index.ts.template +0 -5
  250. package/schematics/components/files/tabs/tab.ts.template +0 -89
  251. package/schematics/components/files/theme/index.ts.template +0 -2
  252. package/schematics/components/files/theme/theme-button.component.ts.template +0 -26
  253. package/schematics/components/files/theme/theme.component.ts.template +0 -165
  254. package/schematics/components/files/theme/theme.service.ts.template +0 -44
  255. package/schematics/components/files/toggle/index.ts.template +0 -5
  256. package/schematics/components/files/toggle/toggle.ts.template +0 -13
  257. package/schematics/components/files/toggle-group/index.ts.template +0 -5
  258. package/schematics/components/files/toggle-group/toggle-group.ts.template +0 -25
  259. package/schematics/components/files/tooltip/index.ts.template +0 -5
  260. package/schematics/components/files/tooltip/tooltip.ts.template +0 -40
  261. package/schematics/components/files/tour/index.ts.template +0 -3
  262. package/schematics/components/files/tour/tour-step.ts.template +0 -8
  263. package/schematics/components/files/tour/tour.service.ts.template +0 -7
  264. package/schematics/components/files/tour/tour.ts.template +0 -8
  265. package/schematics/components/files/tree/index.ts.template +0 -1
  266. package/schematics/components/files/tree/tree.ts.template +0 -66
  267. package/schematics/components/index.d.ts +0 -3
  268. package/schematics/components/index.js +0 -17
  269. package/schematics/components/index.js.map +0 -1
  270. package/schematics/components/index.ts +0 -29
  271. package/schematics/components/schema.d.ts +0 -6
  272. package/schematics/components/schema.js +0 -3
  273. package/schematics/components/schema.js.map +0 -1
  274. package/schematics/components/schema.json +0 -137
  275. package/schematics/components/schema.ts +0 -6
@@ -1,13 +0,0 @@
1
- import { Directive } from '@angular/core';
2
- import { NgbHoverCard } from '@ngbase/adk/hover-card';
3
-
4
- @Directive({
5
- selector: '[<%= name %>HoverCard]',
6
- hostDirectives: [
7
- {
8
- directive: NgbHoverCard,
9
- inputs: ['ngbHoverCard: <%= name %>HoverCard', 'options', 'delay'],
10
- },
11
- ],
12
- })
13
- export class HoverCard<T = any> {}
@@ -1,5 +0,0 @@
1
- /*
2
- * Public API Surface of hover-card
3
- */
4
-
5
- export * from './hover-card';
@@ -1,16 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, input } from '@angular/core';
2
- import { IconType, NgIconComponent } from '@ng-icons/core';
3
-
4
- @Component({
5
- selector: '<%= name %>-icon',
6
- imports: [NgIconComponent],
7
- changeDetection: ChangeDetectionStrategy.OnPush,
8
- template: `<ng-icon [name]="name()" [size]="size()"></ng-icon>`,
9
- host: {
10
- class: 'inline-flex items-center justify-center',
11
- },
12
- })
13
- export class Icon {
14
- readonly name = input.required<IconType>();
15
- readonly size = input<string>('1rem');
16
- }
@@ -1 +0,0 @@
1
- export * from './icon';
@@ -1 +0,0 @@
1
- export * from './inline-edit';
@@ -1,24 +0,0 @@
1
- import { Component } from '@angular/core';
2
- import {
3
- NgbInlineEdit,
4
- NgbInlineInput,
5
- NgbInlineValue,
6
- provideInlineEdit,
7
- } from '@ngbase/adk/inline-edit';
8
-
9
- @Component({
10
- selector: '<%= name %>-inline-edit',
11
- imports: [NgbInlineInput, NgbInlineValue],
12
- providers: [provideInlineEdit(), { provide: NgbInlineEdit, useExisting: InlineEdit }],
13
- template: `
14
- @if (isEditing()) {
15
- <input
16
- ngbInlineInput
17
- class="rounded p-1 drop-shadow-md focus:border-transparent focus:outline-none"
18
- />
19
- } @else {
20
- <div ngbInlineValue class="cursor-pointer p-1">{{ localValue() }}</div>
21
- }
22
- `,
23
- })
24
- export class InlineEdit extends NgbInlineEdit {}
@@ -1,5 +0,0 @@
1
- /*
2
- * Public API Surface of keys
3
- */
4
-
5
- export * from './key';
@@ -1,35 +0,0 @@
1
- import {
2
- ChangeDetectionStrategy,
3
- Component,
4
- computed,
5
- effect,
6
- ElementRef,
7
- inject,
8
- Injector,
9
- input,
10
- } from '@angular/core';
11
- import { keyMap } from '@ngbase/adk/keys';
12
-
13
- @Component({
14
- selector: '<%= name %>-key, [<%= name %>Key]',
15
- changeDetection: ChangeDetectionStrategy.OnPush,
16
- template: `{{ content() }}`,
17
- host: {
18
- class: 'ml-auto text-xs tracking-widest opacity-60 text-muted',
19
- },
20
- })
21
- export class Key {
22
- readonly el = inject<ElementRef<HTMLButtonElement>>(ElementRef);
23
-
24
- readonly <%= name %>Key = input.required<string>();
25
- readonly content = computed(() => {
26
- return this.<%= name %>Key().replace(/\+/g, ' ');
27
- });
28
-
29
- constructor() {
30
- const injector = inject(Injector);
31
- effect(cleanup => {
32
- keyMap(this.<%= name %>Key(), () => this.el.nativeElement.click(), { cleanup, injector });
33
- });
34
- }
35
- }
@@ -1,5 +0,0 @@
1
- /*
2
- * Public API Surface of list
3
- */
4
-
5
- export * from './list';
@@ -1,28 +0,0 @@
1
- import { Directive } from '@angular/core';
2
- import { NgbList, NgbListActionGroup, provideList } from '@ngbase/adk/list';
3
-
4
- @Directive({
5
- selector: '[<%= name %>ListStyle]',
6
- host: {
7
- class:
8
- 'flex items-center gap-2 py-2 px-2 hover:bg-muted-background cursor-pointer rounded-md text-left data-[focus="true"]:bg-muted-background',
9
- },
10
- })
11
- export class ListStyle {}
12
-
13
- @Directive({
14
- selector: '[<%= name %>List]',
15
- hostDirectives: [ListStyle],
16
- providers: [provideList(List)],
17
- host: {
18
- role: 'list',
19
- '[class]': 'disabled() ? "pointer-events-none cursor-not-allowed opacity-50" : ""',
20
- },
21
- })
22
- export class List extends NgbList {}
23
-
24
- @Directive({
25
- selector: '[<%= name %>ActionGroup]',
26
- hostDirectives: [NgbListActionGroup],
27
- })
28
- export class ListActionGroup {}
@@ -1 +0,0 @@
1
- export * from './mask';
@@ -1,8 +0,0 @@
1
- import { Directive } from '@angular/core';
2
- import { Mask } from '@ngbase/adk/mask';
3
-
4
- @Directive({
5
- selector: '[<%= name %>Mask]',
6
- hostDirectives: [{ directive: Mask, inputs: ['ngbMask: <%= name %>Mask', 'showMaskType'] }],
7
- })
8
- export class MaskInput {}
@@ -1,14 +0,0 @@
1
- import { Directive } from '@angular/core';
2
- import { NgbContextMenu } from '@ngbase/adk/menu';
3
-
4
- @Directive({
5
- selector: '[<%= name %>ContextMenu]',
6
- hostDirectives: [
7
- {
8
- directive: NgbContextMenu,
9
- inputs: ['ngbContextMenu: <%= name %>ContextMenu'],
10
- outputs: ['ctxOpen', 'ctxClose'],
11
- },
12
- ],
13
- })
14
- export class ContextMenu {}
@@ -1,8 +0,0 @@
1
- /*
2
- * Public API Surface of menu
3
- */
4
-
5
- export * from './menu';
6
- export * from './context-menu';
7
- export * from './navigation-menu';
8
- export * from './mention';
@@ -1,14 +0,0 @@
1
- import { Directive } from '@angular/core';
2
- import { NgbMentionTrigger } from '@ngbase/adk/menu';
3
-
4
- @Directive({
5
- selector: '[<%= name %>MentionTrigger]',
6
- hostDirectives: [
7
- {
8
- directive: NgbMentionTrigger,
9
- inputs: ['ngbMentionTrigger: <%= name %>MentionTrigger', 'key', 'options'],
10
- outputs: ['search'],
11
- },
12
- ],
13
- })
14
- export class MentionTrigger {}
@@ -1,37 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, Directive } from '@angular/core';
2
- import { AccessibleGroup } from '@ngbase/adk/a11y';
3
- import { NgbMenu, NgbMenuTrigger, MenuGroup, provideMenu } from '@ngbase/adk/menu';
4
-
5
- @Component({
6
- selector: '<%= name %>-menu',
7
- exportAs: '<%= name %>Menu',
8
- changeDetection: ChangeDetectionStrategy.OnPush,
9
- providers: [provideMenu(Menu)],
10
- imports: [AccessibleGroup, MenuGroup],
11
- template: `
12
- <ng-template #container>
13
- <div ngbMenuGroup class="flex flex-col p-1">
14
- <ng-content />
15
- </div>
16
- </ng-template>
17
- `,
18
- })
19
- export class Menu extends NgbMenu {}
20
-
21
- @Directive({
22
- selector: '[<%= name %>MenuTrigger]',
23
- hostDirectives: [
24
- {
25
- directive: NgbMenuTrigger,
26
- inputs: [
27
- 'ngbMenuTrigger: <%= name %>MenuTrigger',
28
- 'ngbMenuTriggerData: <%= name %>MenuTriggerData',
29
- 'options',
30
- ],
31
- },
32
- ],
33
- host: {
34
- class: 'outline-none',
35
- },
36
- })
37
- export class MenuTrigger {}
@@ -1,8 +0,0 @@
1
- import { Directive } from '@angular/core';
2
- import { NgbNavigationMenu } from '@ngbase/adk/menu';
3
-
4
- @Directive({
5
- selector: '[<%= name %>NavigationMenu]',
6
- hostDirectives: [{ directive: NgbNavigationMenu, inputs: ['hover'] }],
7
- })
8
- export class NavigationMenu {}
@@ -1 +0,0 @@
1
- export * from './pagination';
@@ -1,71 +0,0 @@
1
- import { Component, input } from '@angular/core';
2
- import { NgbPagination, NgbPaginationBtn } from '@ngbase/adk/pagination';
3
- import { Button } from '<%= basepath %>/button';
4
- import { Icon } from '<%= basepath %>/icon';
5
- import { Option, Select } from '<%= basepath %>/select';
6
- import { provideIcons } from '@ng-icons/core';
7
- import {
8
- lucideChevronLeft,
9
- lucideChevronRight,
10
- lucideChevronsLeft,
11
- lucideChevronsRight,
12
- } from '@ng-icons/lucide';
13
-
14
- @Component({
15
- selector: '<%= name %>-pagination',
16
- providers: [{ provide: NgbPagination, useExisting: Pagination }],
17
- viewProviders: [
18
- provideIcons({
19
- lucideChevronLeft,
20
- lucideChevronRight,
21
- lucideChevronsLeft,
22
- lucideChevronsRight,
23
- }),
24
- ],
25
- imports: [Button, Icon, Select, Option, NgbPaginationBtn],
26
- template: `
27
- <div class="flex items-center gap-2">
28
- <div>Rows per page</div>
29
- <<%= name %>-select [value]="size()" (valueChange)="sizeChanged($event)" class="w-20 !py-1.5">
30
- @for (size of sizeOptions(); track size) {
31
- <<%= name %>-option [value]="size">
32
- {{ size }}
33
- </<%= name %>-option>
34
- }
35
- </<%= name %>-select>
36
- </div>
37
- <div>Page {{ active() }} of {{ totalSnaps() }}</div>
38
- <div class="flex items-center gap-2">
39
- <button ngbPaginationBtn="prev" <%= name %>Button="outline" class="h-8 w-8 !p-2">
40
- <<%= name %>-icon name="lucideChevronsLeft" />
41
- </button>
42
- <button ngbPaginationBtn="prev" jump="-1" <%= name %>Button="outline" class="h-8 w-8 !p-2">
43
- <<%= name %>-icon name="lucideChevronLeft" />
44
- </button>
45
- @if (showPage()) {
46
- @for (snap of snaps(); track snap) {
47
- <button
48
- ngbPaginationBtn="page"
49
- [jump]="snap"
50
- <%= name %>Button="ghost"
51
- class="min-w-9 !p-2 ring-offset-background aria-[current=page]:bg-muted-background aria-[current=page]:text-primary"
52
- >
53
- {{ snap }}
54
- </button>
55
- }
56
- }
57
- <button ngbPaginationBtn="next" jump="1" <%= name %>Button="outline" class="h-8 w-8 !p-2">
58
- <<%= name %>-icon name="lucideChevronRight" />
59
- </button>
60
- <button ngbPaginationBtn="next" <%= name %>Button="outline" class="h-8 w-8 !p-2">
61
- <<%= name %>-icon name="lucideChevronsRight" />
62
- </button>
63
- </div>
64
- `,
65
- host: {
66
- class: 'flex items-center gap-8 font-semibold',
67
- },
68
- })
69
- export class Pagination extends NgbPagination {
70
- readonly showPage = input<boolean>(false);
71
- }
@@ -1 +0,0 @@
1
- export * from './picasa.directive';
@@ -1,80 +0,0 @@
1
- import {
2
- afterNextRender,
3
- ChangeDetectionStrategy,
4
- Component,
5
- viewChild,
6
- ViewContainerRef,
7
- } from '@angular/core';
8
- import { BaseDialog, DialogOptions } from '@ngbase/adk/portal';
9
- import { createHostAnimation, fadeAnimation } from '@ngbase/adk/utils';
10
- import { Subject } from 'rxjs';
11
-
12
- @Component({
13
- selector: '<%= name %>-dialog',
14
- changeDetection: ChangeDetectionStrategy.OnPush,
15
- template: `
16
- <div class="pointer-events-none flex h-full items-center justify-center">
17
- <div class="pointer-events-auto">
18
- <ng-container #myDialog />
19
- </div>
20
- <div
21
- class="backdropColor pointer-events-auto absolute top-0 -z-10 h-full w-full"
22
- (click)="!options.disableClose && close()"
23
- [@fadeAnimation]=""
24
- ></div>
25
- </div>
26
- `,
27
- host: {
28
- '[ngStyle]': '{ "z-index": options.overrideLowerDialog ? "982" : "980" }',
29
- class: 'fixed block top-0 bottom-0 left-0 right-0 overflow-auto pointer-events-none z-p',
30
- '[@parentAnimation]': '',
31
- },
32
- styles: `
33
- .backdropColor {
34
- background: rgba(0, 0, 0, 0.32);
35
- }
36
-
37
- .full-window {
38
- width: 100vw !important;
39
- height: 100vh;
40
- max-width: initial;
41
- top: 0;
42
- border-radius: 0;
43
- }
44
- `,
45
- animations: [createHostAnimation(['@fadeAnimation']), fadeAnimation('300ms')],
46
- })
47
- export class PicasaBase extends BaseDialog {
48
- myDialog = viewChild('myDialog', { read: ViewContainerRef });
49
-
50
- backdropColor = true;
51
- isSidePopup = true;
52
-
53
- options!: DialogOptions;
54
- classNames = '';
55
- isHideHeader = false;
56
- onDone = new Subject<any>();
57
-
58
- constructor() {
59
- super();
60
- afterNextRender(() => {
61
- this._afterViewSource.next(this.myDialog()!);
62
-
63
- // setTimeout(() => {
64
- // this.show.set(false);
65
- // }, 2000);
66
- });
67
- // this.dialogRef.afterClosed.subscribe(() => {
68
- // setTimeout(() => {
69
- // this.animationDone();
70
- // }, 500);
71
- // });
72
- }
73
-
74
- override setOptions(options: DialogOptions) {
75
- this.options = options;
76
- this.classNames = this.options.classNames?.join(' ') || '';
77
- this.isHideHeader = this.options.header || false;
78
- this.backdropColor = this.options.backdropColor || true;
79
- }
80
- }
@@ -1,57 +0,0 @@
1
- import { Component, ElementRef, afterNextRender, inject, viewChild } from '@angular/core';
2
- import { DialogRef } from '@ngbase/adk/portal';
3
- import { PicasaBase } from './picasa-base.component';
4
-
5
- @Component({
6
- selector: '<%= name %>-picasa',
7
- template: `
8
- <img
9
- #imgEl
10
- [src]="data.data.src"
11
- alt="Placeholder"
12
- class="max-h-[100vh] max-w-[100vw] object-contain"
13
- [style.viewTransitionName]="data.data.id"
14
- />
15
- `,
16
- host: {
17
- class: 'block',
18
- },
19
- })
20
- export class PicasaContainer {
21
- data = inject(DialogRef);
22
- imgEl = viewChild<ElementRef<HTMLImageElement>>('imgEl');
23
- dialogRef = inject(DialogRef);
24
- picasa = inject(PicasaBase);
25
-
26
- constructor() {
27
- let transform = '';
28
- afterNextRender(() => {
29
- const imgEl = this.imgEl()!.nativeElement;
30
- const target = this.data.data.target as HTMLElement;
31
- const { width, height, top, left } = target.getBoundingClientRect();
32
- const { clientWidth, clientHeight } = document.documentElement;
33
- const imgRect = imgEl.getBoundingClientRect();
34
- const scale = Math.max(width / imgRect.width, height / imgRect.height);
35
- imgEl.style.transform = `scale(${scale})`;
36
- const x = left + width / 2 - clientWidth / 2;
37
- const y = top + height / 2 - clientHeight / 2;
38
- transform = `translate3d(${x}px, ${y}px, 0) scale(${scale})`;
39
- imgEl.style.transform = transform;
40
- console.log(transform);
41
- setTimeout(() => {
42
- imgEl.style.transition = '300ms cubic-bezier(0.55, 0.31, 0.15, 0.93)';
43
- imgEl.style.transform = `none`;
44
- });
45
- });
46
-
47
- this.dialogRef.afterClosed.subscribe(() => {
48
- const imgEl = this.imgEl()!.nativeElement;
49
- imgEl.style.transition = '300ms cubic-bezier(0.55, 0.31, 0.15, 0.93)';
50
- imgEl.style.transform = transform;
51
- console.log(transform);
52
- imgEl.addEventListener('transitionend', this.picasa.onClose, {
53
- once: true,
54
- });
55
- });
56
- }
57
- }
@@ -1,41 +0,0 @@
1
- import { Directive, ElementRef, contentChildren, inject, input } from '@angular/core';
2
- import { PicasaContainer } from './picasa.component';
3
- import { picasaPortal } from './picase.service';
4
-
5
- @Directive({
6
- selector: '[<%= name %>Picasa]',
7
- })
8
- export class Picasa {
9
- dialog = picasaPortal();
10
- items = contentChildren(PicasaItem);
11
-
12
- open(src: string, id: string, target: HTMLElement) {
13
- this.dialog.open(PicasaContainer, {
14
- data: { src, id, target },
15
- classNames: ['bg-transparent', 'border-0', 'shadow-none'],
16
- height: '100vh',
17
- });
18
- }
19
- }
20
-
21
- @Directive({
22
- selector: 'img[<%= name %>PicasaItem]',
23
- host: {
24
- '(click)': 'open()',
25
- '[style.viewTransitionName]': 'id',
26
- },
27
- })
28
- export class PicasaItem {
29
- picasa = inject(Picasa);
30
- src = input.required<string>();
31
- el = inject<ElementRef<HTMLElement>>(ElementRef);
32
- id = 'generateId()';
33
-
34
- constructor() {
35
- (this.el.nativeElement.style as any).viewTransitionName = this.id;
36
- }
37
-
38
- open() {
39
- this.picasa.open(this.src(), this.id, this.el.nativeElement);
40
- }
41
- }
@@ -1,24 +0,0 @@
1
- import { basePortal, DialogInput, DialogOptions } from '@ngbase/adk/portal';
2
- import { PicasaBase } from './picasa-base.component';
3
-
4
- export function picasaPortal() {
5
- const NAME = 'picasa';
6
- const base = basePortal(NAME, PicasaBase);
7
-
8
- function open<T>(component: DialogInput, opt?: DialogOptions) {
9
- const { diaRef } = base.open(
10
- component,
11
- (comp, options) => {
12
- comp.instance.setOptions(options);
13
- },
14
- opt,
15
- );
16
-
17
- return diaRef;
18
- }
19
-
20
- function closeAll() {
21
- base.closeAll();
22
- }
23
- return { open, closeAll };
24
- }
@@ -1 +0,0 @@
1
- export * from './popover';
@@ -1,87 +0,0 @@
1
- import { ChangeDetectionStrategy, Component, Directive } from '@angular/core';
2
- import {
3
- NgbPopover,
4
- NgbPopoverBackdrop,
5
- NgbPopoverClose,
6
- NgbPopoverMain,
7
- ngbPopoverPortal,
8
- NgbPopoverTrigger,
9
- providePopover,
10
- registerNgbPopover,
11
- } from '@ngbase/adk/popover';
12
-
13
- @Component({
14
- selector: '<%= name %>-popover',
15
- changeDetection: ChangeDetectionStrategy.OnPush,
16
- providers: [providePopover(Popover)],
17
- imports: [NgbPopoverBackdrop, NgbPopoverMain],
18
- template: ` <style>
19
- .popover-anchor {
20
- --action-angle: 180deg;
21
- --action-left: 50%;
22
- --action-top: -1rem;
23
- }
24
- .popover-anchor::before {
25
- content: '';
26
- position: absolute;
27
- width: 0;
28
- height: 0;
29
- border-style: solid;
30
- border-top: 0.8rem solid;
31
- @apply border-foreground;
32
- border-left: 0.5rem solid transparent;
33
- border-right: 0.5rem solid transparent;
34
- top: var(--action-top);
35
- left: var(--action-left);
36
- transform: translateX(-50%) rotate(var(--action-angle, 180deg));
37
- }
38
- </style>
39
- <div
40
- ngbPopoverMain
41
- [@slideInOutAnimation]
42
- class="{{
43
- 'menu-container pointer-events-auto fixed z-10 flex flex-col rounded-lg border bg-foreground shadow-md ' +
44
- (options().anchor ? 'popover-anchor ' : 'overflow-auto ')
45
- }}"
46
- >
47
- <div class="flex flex-1 flex-col overflow-auto">
48
- <ng-container #myDialog />
49
- </div>
50
- </div>
51
- @if (options().backdrop) {
52
- <div ngbPopoverBackdrop class="pointer-events-auto fixed top-0 h-full w-full"></div>
53
- }`,
54
- host: {
55
- class:
56
- 'fixed top-0 left-0 w-full h-full pointer-events-none z-p flex items-center justify-center',
57
- },
58
- })
59
- class Popover extends NgbPopover {}
60
-
61
- export function registerPopover() {
62
- return registerNgbPopover(Popover);
63
- }
64
-
65
- export const popoverPortal = ngbPopoverPortal;
66
-
67
- @Directive({
68
- selector: '[<%= name %>PopoverTrigger]',
69
- hostDirectives: [
70
- {
71
- directive: NgbPopoverTrigger,
72
- inputs: [
73
- 'ngbPopoverTrigger: <%= name %>PopoverTrigger',
74
- 'ngbPopoverTriggerData: <%= name %>PopoverTriggerData',
75
- 'options',
76
- ],
77
- },
78
- ],
79
- providers: [registerPopover()],
80
- })
81
- export class PopoverTrigger {}
82
-
83
- @Directive({
84
- selector: '[<%= name %>PopoverClose]',
85
- hostDirectives: [NgbPopoverClose],
86
- })
87
- export class PopoverClose {}
@@ -1,5 +0,0 @@
1
- /*
2
- * Public API Surface of progress
3
- */
4
-
5
- export * from './progress';
@@ -1,14 +0,0 @@
1
- import { ChangeDetectionStrategy, Component } from '@angular/core';
2
- import { NgbProgress, NgbProgressBar } from '@ngbase/adk/progress';
3
-
4
- @Component({
5
- selector: '<%= name %>-progress',
6
- changeDetection: ChangeDetectionStrategy.OnPush,
7
- hostDirectives: [{ directive: NgbProgress, inputs: ['value'] }],
8
- imports: [NgbProgressBar],
9
- template: `<div class="h-full bg-primary transition" ngbProgressBar></div>`,
10
- host: {
11
- class: 'block h-2 my-1 bg-muted-background rounded-full',
12
- },
13
- })
14
- export class Progress {}
@@ -1,5 +0,0 @@
1
- /*
2
- * Public API Surface of radio
3
- */
4
-
5
- export * from './radio';