@dereekb/dbx-web 2.1.0 → 4.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 (279) hide show
  1. package/esm2020/lib/action/action.confirm.directive.mjs +3 -3
  2. package/esm2020/lib/action/action.module.mjs +16 -7
  3. package/esm2020/lib/action/action.progress.component.mjs +20 -0
  4. package/esm2020/lib/action/index.mjs +2 -1
  5. package/esm2020/lib/action/key.trigger.directive.mjs +3 -3
  6. package/esm2020/lib/action/snackbar/action.snackbar.component.mjs +5 -5
  7. package/esm2020/lib/action/snackbar/action.snackbar.directive.mjs +3 -3
  8. package/esm2020/lib/action/snackbar/action.snackbar.generator.mjs +5 -5
  9. package/esm2020/lib/action/snackbar/action.snackbar.module.mjs +4 -4
  10. package/esm2020/lib/action/snackbar/action.snackbar.service.mjs +3 -3
  11. package/esm2020/lib/action/transition/action.transition.module.mjs +4 -4
  12. package/esm2020/lib/action/transition/transition.safety.dialog.component.mjs +4 -4
  13. package/esm2020/lib/action/transition/transition.safety.directive.mjs +3 -3
  14. package/esm2020/lib/button/button.component.mjs +31 -12
  15. package/esm2020/lib/button/button.module.mjs +12 -12
  16. package/esm2020/lib/button/button.spacer.component.mjs +3 -3
  17. package/esm2020/lib/button/index.mjs +2 -1
  18. package/esm2020/lib/button/progress/bar.button.component.mjs +16 -0
  19. package/esm2020/lib/button/progress/base.progress.button.directive.mjs +104 -0
  20. package/esm2020/lib/button/progress/button.progress.config.mjs +3 -0
  21. package/esm2020/lib/button/progress/button.progress.module.mjs +61 -0
  22. package/esm2020/lib/button/progress/index.mjs +5 -0
  23. package/esm2020/lib/button/progress/spinner.button.component.mjs +40 -0
  24. package/esm2020/lib/dbx-web.module.mjs +10 -17
  25. package/esm2020/lib/error/error.action.directive.mjs +3 -3
  26. package/esm2020/lib/error/error.component.mjs +5 -5
  27. package/esm2020/lib/error/error.loading.directive.mjs +3 -3
  28. package/esm2020/lib/error/error.module.mjs +4 -4
  29. package/esm2020/lib/interaction/dialog/abstract.dialog.directive.mjs +6 -6
  30. package/esm2020/lib/interaction/dialog/dialog.action.directive.mjs +3 -3
  31. package/esm2020/lib/interaction/dialog/dialog.content.component.mjs +4 -4
  32. package/esm2020/lib/interaction/dialog/dialog.module.mjs +4 -4
  33. package/esm2020/lib/interaction/filter/filter.module.mjs +9 -9
  34. package/esm2020/lib/interaction/filter/filter.popover.button.component.mjs +3 -3
  35. package/esm2020/lib/interaction/filter/filter.popover.button.directive.mjs +3 -3
  36. package/esm2020/lib/interaction/filter/filter.popover.component.mjs +5 -5
  37. package/esm2020/lib/interaction/filter/filter.wrapper.component.mjs +3 -3
  38. package/esm2020/lib/interaction/interaction.module.mjs +4 -4
  39. package/esm2020/lib/interaction/popover/abstract.popover.directive.mjs +3 -3
  40. package/esm2020/lib/interaction/popover/abstract.popover.ref.directive.mjs +6 -6
  41. package/esm2020/lib/interaction/popover/popover.action.directive.mjs +3 -3
  42. package/esm2020/lib/interaction/popover/popover.component.mjs +9 -9
  43. package/esm2020/lib/interaction/popover/popover.content.component.mjs +3 -3
  44. package/esm2020/lib/interaction/popover/popover.controls.directive.mjs +3 -3
  45. package/esm2020/lib/interaction/popover/popover.coordinator.component.mjs +3 -3
  46. package/esm2020/lib/interaction/popover/popover.coordinator.service.mjs +11 -5
  47. package/esm2020/lib/interaction/popover/popover.header.component.mjs +3 -3
  48. package/esm2020/lib/interaction/popover/popover.module.mjs +13 -22
  49. package/esm2020/lib/interaction/popover/popover.scroll.content.component.mjs +3 -3
  50. package/esm2020/lib/interaction/popover/popover.service.mjs +3 -3
  51. package/esm2020/lib/interaction/popup/abstract.popup.directive.mjs +3 -3
  52. package/esm2020/lib/interaction/popup/popup.component.mjs +9 -9
  53. package/esm2020/lib/interaction/popup/popup.content.component.mjs +3 -3
  54. package/esm2020/lib/interaction/popup/popup.controls.buttons.component.mjs +4 -4
  55. package/esm2020/lib/interaction/popup/popup.controls.component.mjs +3 -3
  56. package/esm2020/lib/interaction/popup/popup.coordinator.component.mjs +3 -3
  57. package/esm2020/lib/interaction/popup/popup.coordinator.service.mjs +11 -5
  58. package/esm2020/lib/interaction/popup/popup.module.mjs +13 -22
  59. package/esm2020/lib/interaction/popup/popup.service.mjs +3 -3
  60. package/esm2020/lib/interaction/prompt/prompt.box.component.mjs +3 -3
  61. package/esm2020/lib/interaction/prompt/prompt.button.confirm.directive.mjs +3 -3
  62. package/esm2020/lib/interaction/prompt/prompt.component.mjs +3 -3
  63. package/esm2020/lib/interaction/prompt/prompt.confirm.component.mjs +3 -3
  64. package/esm2020/lib/interaction/prompt/prompt.confirm.dialog.component.mjs +8 -8
  65. package/esm2020/lib/interaction/prompt/prompt.confirm.directive.mjs +6 -6
  66. package/esm2020/lib/interaction/prompt/prompt.module.mjs +9 -9
  67. package/esm2020/lib/interaction/prompt/prompt.page.component.mjs +3 -3
  68. package/esm2020/lib/keypress/keydown.listener.directive.mjs +3 -3
  69. package/esm2020/lib/keypress/keypress.module.mjs +4 -4
  70. package/esm2020/lib/layout/bar/bar.directive.mjs +3 -3
  71. package/esm2020/lib/layout/bar/bar.header.component.mjs +3 -3
  72. package/esm2020/lib/layout/bar/bar.layout.module.mjs +4 -4
  73. package/esm2020/lib/layout/bar/pagebar.component.mjs +3 -3
  74. package/esm2020/lib/layout/block/block.layout.module.mjs +9 -9
  75. package/esm2020/lib/layout/block/two.block.component.mjs +22 -10
  76. package/esm2020/lib/layout/card/card.box.component.mjs +3 -3
  77. package/esm2020/lib/layout/card/card.box.container.component.mjs +3 -3
  78. package/esm2020/lib/layout/card/card.box.layout.module.mjs +4 -4
  79. package/esm2020/lib/layout/column/column.layout.module.mjs +4 -4
  80. package/esm2020/lib/layout/column/one/one.column.component.mjs +9 -9
  81. package/esm2020/lib/layout/column/one/one.column.module.mjs +4 -4
  82. package/esm2020/lib/layout/column/two/index.mjs +2 -1
  83. package/esm2020/lib/layout/column/two/two.column.back.directive.mjs +8 -8
  84. package/esm2020/lib/layout/column/two/two.column.component.mjs +51 -14
  85. package/esm2020/lib/layout/column/two/two.column.context.directive.mjs +36 -0
  86. package/esm2020/lib/layout/column/two/two.column.full.left.directive.mjs +8 -8
  87. package/esm2020/lib/layout/column/two/two.column.head.component.mjs +8 -8
  88. package/esm2020/lib/layout/column/two/two.column.module.mjs +43 -38
  89. package/esm2020/lib/layout/column/two/two.column.right.component.mjs +11 -6
  90. package/esm2020/lib/layout/column/two/two.column.sref.directive.mjs +12 -17
  91. package/esm2020/lib/layout/column/two/two.column.store.mjs +8 -7
  92. package/esm2020/lib/layout/compact/compact.directive.mjs +3 -3
  93. package/esm2020/lib/layout/compact/compact.layout.module.mjs +4 -4
  94. package/esm2020/lib/layout/compact/compact.store.mjs +3 -3
  95. package/esm2020/lib/layout/content/content.border.directive.mjs +3 -3
  96. package/esm2020/lib/layout/content/content.box.directive.mjs +9 -5
  97. package/esm2020/lib/layout/content/content.container.directive.mjs +4 -4
  98. package/esm2020/lib/layout/content/content.directive.mjs +3 -3
  99. package/esm2020/lib/layout/content/content.elevate.directive.mjs +3 -3
  100. package/esm2020/lib/layout/content/content.layout.module.mjs +4 -4
  101. package/esm2020/lib/layout/content/content.page.directive.mjs +3 -3
  102. package/esm2020/lib/layout/flag/flag.component.mjs +3 -3
  103. package/esm2020/lib/layout/flag/flag.layout.module.mjs +4 -4
  104. package/esm2020/lib/layout/flag/flag.prompt.component.mjs +3 -3
  105. package/esm2020/lib/layout/flex/flex.group.directive.mjs +8 -4
  106. package/esm2020/lib/layout/flex/flex.layout.module.mjs +4 -4
  107. package/esm2020/lib/layout/flex/flex.size.directive.mjs +3 -3
  108. package/esm2020/lib/layout/item/item.icon.component.mjs +3 -3
  109. package/esm2020/lib/layout/item/item.layout.module.mjs +4 -4
  110. package/esm2020/lib/layout/layout.module.mjs +4 -4
  111. package/esm2020/lib/layout/list/index.mjs +5 -1
  112. package/esm2020/lib/layout/list/list.component.mjs +22 -9
  113. package/esm2020/lib/layout/list/list.content.empty.component.mjs +3 -3
  114. package/esm2020/lib/layout/list/list.directive.mjs +12 -10
  115. package/esm2020/lib/layout/list/list.layout.module.mjs +32 -18
  116. package/esm2020/lib/layout/list/list.view.directive.mjs +11 -4
  117. package/esm2020/lib/layout/list/list.view.mjs +1 -1
  118. package/esm2020/lib/layout/list/list.view.selection.directive.mjs +8 -7
  119. package/esm2020/lib/layout/list/list.view.value.component.mjs +57 -28
  120. package/esm2020/lib/layout/list/list.view.value.directive.mjs +18 -10
  121. package/esm2020/lib/layout/list/list.view.value.item.directive.mjs +7 -7
  122. package/esm2020/lib/layout/list/list.view.value.mjs +36 -24
  123. package/esm2020/lib/layout/list/list.view.value.modifier.directive.mjs +81 -0
  124. package/esm2020/lib/layout/list/list.view.value.modifier.mjs +15 -0
  125. package/esm2020/lib/layout/list/list.view.value.modifier.ripple.directive.mjs +45 -0
  126. package/esm2020/lib/layout/list/list.view.value.selection.component.mjs +57 -43
  127. package/esm2020/lib/layout/list/list.wrapper.mjs +13 -0
  128. package/esm2020/lib/layout/section/section.component.mjs +3 -3
  129. package/esm2020/lib/layout/section/section.header.component.mjs +3 -3
  130. package/esm2020/lib/layout/section/section.intro.component.mjs +3 -3
  131. package/esm2020/lib/layout/section/section.layout.module.mjs +9 -9
  132. package/esm2020/lib/layout/section/section.page.component.mjs +3 -3
  133. package/esm2020/lib/layout/section/subsection.component.mjs +3 -3
  134. package/esm2020/lib/layout/step/step.component.mjs +3 -3
  135. package/esm2020/lib/layout/step/step.layout.module.mjs +4 -4
  136. package/esm2020/lib/layout/style/spacer.directive.mjs +3 -3
  137. package/esm2020/lib/layout/style/style.body.directive.mjs +3 -3
  138. package/esm2020/lib/layout/style/style.directive.mjs +3 -3
  139. package/esm2020/lib/layout/style/style.layout.module.mjs +4 -4
  140. package/esm2020/lib/layout/style/style.service.mjs +6 -4
  141. package/esm2020/lib/layout/style/style.set.directive.mjs +5 -4
  142. package/esm2020/lib/layout/text/hint.component.mjs +3 -3
  143. package/esm2020/lib/layout/text/icon.spacer.component.mjs +3 -3
  144. package/esm2020/lib/layout/text/label.component.mjs +3 -3
  145. package/esm2020/lib/layout/text/linkify.component.mjs +3 -3
  146. package/esm2020/lib/layout/text/note.component.mjs +3 -3
  147. package/esm2020/lib/layout/text/notice.component.mjs +3 -3
  148. package/esm2020/lib/layout/text/ok.component.mjs +3 -3
  149. package/esm2020/lib/layout/text/success.component.mjs +3 -3
  150. package/esm2020/lib/layout/text/text.chips.component.mjs +3 -3
  151. package/esm2020/lib/layout/text/text.module.mjs +4 -4
  152. package/esm2020/lib/layout/text/warn.component.mjs +3 -3
  153. package/esm2020/lib/loading/basic-loading.component.mjs +3 -3
  154. package/esm2020/lib/loading/loading-progress.component.mjs +4 -4
  155. package/esm2020/lib/loading/loading.action.directive.mjs +3 -3
  156. package/esm2020/lib/loading/loading.component.mjs +3 -3
  157. package/esm2020/lib/loading/loading.module.mjs +4 -4
  158. package/esm2020/lib/router/layout/anchor/anchor.component.mjs +9 -5
  159. package/esm2020/lib/router/layout/anchor/anchor.content.component.mjs +3 -3
  160. package/esm2020/lib/router/layout/anchor/anchor.icon.component.mjs +3 -3
  161. package/esm2020/lib/router/layout/anchor/anchor.link.component.mjs +3 -3
  162. package/esm2020/lib/router/layout/anchor/anchor.module.mjs +10 -10
  163. package/esm2020/lib/router/layout/anchor/anchor.segue.directive.mjs +4 -4
  164. package/esm2020/lib/router/layout/anchorlist/anchorlist.component.mjs +5 -5
  165. package/esm2020/lib/router/layout/anchorlist/anchorlist.module.mjs +10 -10
  166. package/esm2020/lib/router/layout/index.mjs +2 -1
  167. package/esm2020/lib/router/layout/layout.module.mjs +23 -19
  168. package/esm2020/lib/router/layout/list/index.mjs +3 -0
  169. package/esm2020/lib/router/layout/list/list.module.mjs +21 -0
  170. package/esm2020/lib/router/layout/list/router.list.directive.mjs +42 -0
  171. package/esm2020/lib/router/layout/navbar/navbar.component.mjs +4 -4
  172. package/esm2020/lib/router/layout/navbar/navbar.module.mjs +10 -10
  173. package/esm2020/lib/router/layout/sidenav/sidenav.button.component.mjs +3 -3
  174. package/esm2020/lib/router/layout/sidenav/sidenav.component.mjs +3 -3
  175. package/esm2020/lib/router/layout/sidenav/sidenav.module.mjs +14 -14
  176. package/esm2020/lib/router/layout/sidenav/sidenav.page.component.mjs +7 -4
  177. package/esm2020/lib/router/layout/sidenav/sidenav.pagebar.component.mjs +4 -4
  178. package/esm2020/lib/router/provider/ngrouter/anchor.component.mjs +5 -5
  179. package/esm2020/lib/router/provider/ngrouter/angular.router.module.mjs +9 -9
  180. package/esm2020/lib/router/provider/router.provider.config.mjs +1 -1
  181. package/esm2020/lib/router/provider/uirouter/anchor.component.mjs +5 -5
  182. package/esm2020/lib/router/provider/uirouter/uirouter.router.module.mjs +9 -9
  183. package/esm2020/lib/screen/screen.module.mjs +4 -4
  184. package/esm2020/lib/screen/screen.service.mjs +5 -4
  185. package/fesm2015/dereekb-dbx-web.mjs +1581 -972
  186. package/fesm2015/dereekb-dbx-web.mjs.map +1 -1
  187. package/fesm2020/dereekb-dbx-web.mjs +1578 -970
  188. package/fesm2020/dereekb-dbx-web.mjs.map +1 -1
  189. package/lib/action/action.module.d.ts +10 -8
  190. package/lib/action/action.progress.component.d.ts +5 -0
  191. package/lib/action/index.d.ts +1 -0
  192. package/lib/action/snackbar/action.snackbar.generator.d.ts +5 -5
  193. package/lib/button/_button.scss +21 -0
  194. package/lib/button/button.component.d.ts +7 -3
  195. package/lib/button/button.module.d.ts +2 -2
  196. package/lib/button/index.d.ts +1 -0
  197. package/lib/button/progress/bar.button.component.d.ts +6 -0
  198. package/lib/button/progress/bar.button.component.scss +23 -0
  199. package/lib/button/progress/base.progress.button.directive.d.ts +37 -0
  200. package/lib/button/progress/button.progress.config.d.ts +51 -0
  201. package/lib/button/progress/button.progress.module.d.ts +17 -0
  202. package/lib/button/progress/index.d.ts +4 -0
  203. package/lib/button/progress/spinner.button.component.d.ts +9 -0
  204. package/lib/button/progress/spinner.button.component.scss +44 -0
  205. package/lib/dbx-web.module.d.ts +1 -3
  206. package/lib/interaction/dialog/_dialog.scss +18 -2
  207. package/lib/interaction/dialog/abstract.dialog.directive.d.ts +1 -1
  208. package/lib/interaction/filter/filter.module.d.ts +1 -1
  209. package/lib/interaction/filter/filter.popover.component.d.ts +2 -2
  210. package/lib/interaction/popover/popover.component.d.ts +3 -3
  211. package/lib/interaction/popover/popover.coordinator.service.d.ts +3 -1
  212. package/lib/interaction/popover/popover.module.d.ts +1 -3
  213. package/lib/interaction/popup/popup.component.d.ts +3 -3
  214. package/lib/interaction/popup/popup.coordinator.service.d.ts +3 -1
  215. package/lib/interaction/popup/popup.module.d.ts +1 -3
  216. package/lib/interaction/prompt/prompt.confirm.dialog.component.d.ts +3 -3
  217. package/lib/interaction/prompt/prompt.module.d.ts +1 -1
  218. package/lib/layout/block/_block.scss +11 -8
  219. package/lib/layout/block/block.layout.module.d.ts +1 -1
  220. package/lib/layout/block/two.block.component.d.ts +5 -1
  221. package/lib/layout/column/_column.scss +119 -3
  222. package/lib/layout/column/two/index.d.ts +1 -0
  223. package/lib/layout/column/two/two.column.back.directive.d.ts +4 -4
  224. package/lib/layout/column/two/two.column.component.d.ts +23 -7
  225. package/lib/layout/column/two/two.column.context.directive.d.ts +18 -0
  226. package/lib/layout/column/two/two.column.full.left.directive.d.ts +4 -4
  227. package/lib/layout/column/two/two.column.head.component.d.ts +3 -3
  228. package/lib/layout/column/two/two.column.module.d.ts +7 -6
  229. package/lib/layout/column/two/two.column.right.component.d.ts +6 -4
  230. package/lib/layout/column/two/two.column.sref.directive.d.ts +6 -7
  231. package/lib/layout/column/two/two.column.store.d.ts +4 -3
  232. package/lib/layout/content/_content.scss +25 -3
  233. package/lib/layout/content/content.box.directive.d.ts +2 -1
  234. package/lib/layout/content/content.container.directive.d.ts +2 -2
  235. package/lib/layout/flex/_flex.scss +4 -0
  236. package/lib/layout/flex/flex.group.directive.d.ts +1 -0
  237. package/lib/layout/list/index.d.ts +4 -0
  238. package/lib/layout/list/list.component.d.ts +14 -5
  239. package/lib/layout/list/list.directive.d.ts +9 -7
  240. package/lib/layout/list/list.layout.module.d.ts +10 -8
  241. package/lib/layout/list/list.view.d.ts +11 -1
  242. package/lib/layout/list/list.view.directive.d.ts +4 -1
  243. package/lib/layout/list/list.view.selection.directive.d.ts +4 -3
  244. package/lib/layout/list/list.view.value.component.d.ts +18 -3
  245. package/lib/layout/list/list.view.value.d.ts +27 -11
  246. package/lib/layout/list/list.view.value.directive.d.ts +9 -6
  247. package/lib/layout/list/list.view.value.item.directive.d.ts +4 -4
  248. package/lib/layout/list/list.view.value.modifier.d.ts +12 -0
  249. package/lib/layout/list/list.view.value.modifier.directive.d.ts +37 -0
  250. package/lib/layout/list/list.view.value.modifier.ripple.directive.d.ts +17 -0
  251. package/lib/layout/list/list.view.value.selection.component.d.ts +10 -11
  252. package/lib/layout/list/list.wrapper.d.ts +11 -0
  253. package/lib/layout/section/section.layout.module.d.ts +1 -1
  254. package/lib/layout/style/_style.scss +12 -1
  255. package/lib/layout/text/_text.scss +9 -0
  256. package/lib/router/layout/anchor/_anchor.scss +5 -0
  257. package/lib/router/layout/anchor/anchor.component.d.ts +5 -4
  258. package/lib/router/layout/anchor/anchor.module.d.ts +4 -4
  259. package/lib/router/layout/anchor/anchor.segue.directive.d.ts +2 -2
  260. package/lib/router/layout/anchorlist/_anchorlist.scss +7 -0
  261. package/lib/router/layout/anchorlist/anchorlist.module.d.ts +4 -4
  262. package/lib/router/layout/index.d.ts +1 -0
  263. package/lib/router/layout/layout.module.d.ts +4 -3
  264. package/lib/router/layout/list/index.d.ts +2 -0
  265. package/lib/router/layout/list/list.module.d.ts +7 -0
  266. package/lib/router/layout/list/router.list.directive.d.ts +17 -0
  267. package/lib/router/layout/navbar/navbar.component.d.ts +4 -4
  268. package/lib/router/layout/navbar/navbar.module.d.ts +4 -4
  269. package/lib/router/layout/sidenav/sidenav.module.d.ts +4 -4
  270. package/lib/router/layout/sidenav/sidenav.page.component.d.ts +4 -2
  271. package/lib/router/provider/ngrouter/angular.router.module.d.ts +1 -1
  272. package/lib/router/provider/router.provider.config.d.ts +2 -2
  273. package/lib/router/provider/uirouter/uirouter.router.module.d.ts +1 -1
  274. package/lib/screen/screen.service.d.ts +2 -2
  275. package/lib/style/_config.scss +7 -1
  276. package/lib/style/_root-variables.scss +2 -0
  277. package/lib/style/_variables.scss +4 -0
  278. package/package.json +5 -23
  279. package/lib/layout/column/two.scss +0 -114
@@ -1,10 +1,12 @@
1
1
  import { Observable } from 'rxjs';
2
2
  import { ListLoadingState, ListLoadingStateContext } from "@dereekb/rxjs";
3
3
  import { EventEmitter, Provider, Type } from "@angular/core";
4
+ import { Maybe } from '@dereekb/util';
5
+ export declare type DbxListSelectionMode = 'select' | 'view';
4
6
  export interface ListSelectionStateItem<T> {
5
7
  disabled?: boolean;
6
8
  selected?: boolean;
7
- value: T;
9
+ itemValue: T;
8
10
  }
9
11
  export interface ListSelectionState<T> {
10
12
  items: ListSelectionStateItem<T>[];
@@ -17,6 +19,10 @@ export declare abstract class DbxListView<T, S extends ListLoadingState<T> = Lis
17
19
  * Current disabled state.
18
20
  */
19
21
  abstract readonly disabled$: Observable<boolean>;
22
+ /**
23
+ * (Optional) current selection mode.
24
+ */
25
+ abstract readonly selectionMode$?: Observable<Maybe<DbxListSelectionMode>>;
20
26
  /**
21
27
  * Values of the list view.
22
28
  */
@@ -41,5 +47,9 @@ export declare abstract class DbxListView<T, S extends ListLoadingState<T> = Lis
41
47
  * Sets the disabled state of the list view.
42
48
  */
43
49
  abstract setDisabled(disabled: boolean): void;
50
+ /**
51
+ * Sets the selection mode of the list view.
52
+ */
53
+ abstract setSelectionMode(selectionMode: Maybe<DbxListSelectionMode>): void;
44
54
  }
45
55
  export declare function ProvideDbxListView<V extends DbxListView<any>>(sourceType: Type<V>): Provider[];
@@ -1,7 +1,7 @@
1
1
  import { ListLoadingStateContext } from '@dereekb/rxjs';
2
2
  import { Observable } from 'rxjs';
3
3
  import { EventEmitter, OnDestroy } from '@angular/core';
4
- import { DbxListView } from './list.view';
4
+ import { DbxListSelectionMode, DbxListView } from './list.view';
5
5
  import { Maybe } from '@dereekb/util';
6
6
  import * as i0 from "@angular/core";
7
7
  /**
@@ -9,9 +9,11 @@ import * as i0 from "@angular/core";
9
9
  */
10
10
  export declare abstract class AbstractDbxListViewDirective<T> implements DbxListView<T>, OnDestroy {
11
11
  private readonly _disabled;
12
+ private readonly _selectionMode;
12
13
  private readonly _values$;
13
14
  readonly values$: Observable<T[]>;
14
15
  readonly disabled$: Observable<boolean>;
16
+ readonly selectionMode$: Observable<Maybe<DbxListSelectionMode>>;
15
17
  clickValue: EventEmitter<T>;
16
18
  constructor();
17
19
  set valueArray(values: Maybe<T[]>);
@@ -21,6 +23,7 @@ export declare abstract class AbstractDbxListViewDirective<T> implements DbxList
21
23
  setListContext(state: ListLoadingStateContext<T>): void;
22
24
  setValues(valuesObs: Maybe<Observable<T[]>>): void;
23
25
  setDisabled(disabled: boolean): void;
26
+ setSelectionMode(selectionMode: Maybe<DbxListSelectionMode>): void;
24
27
  static ɵfac: i0.ɵɵFactoryDeclaration<AbstractDbxListViewDirective<any>, never>;
25
28
  static ɵdir: i0.ɵɵDirectiveDeclaration<AbstractDbxListViewDirective<any>, never, never, { "valueArray": "valueArray"; "values": "values"; }, { "clickValue": "clickValue"; }, never>;
26
29
  }
@@ -3,13 +3,14 @@ import { MatSelectionListChange } from '@angular/material/list';
3
3
  import { ListSelectionState } from './list.view';
4
4
  import { AbstractDbxListViewDirective } from './list.view.directive';
5
5
  import * as i0 from "@angular/core";
6
+ export declare const DEFAULT_DBX_SELECTION_VALUE_LIST_DIRECTIVE_TEMPLATE = "<dbx-selection-list-view [config]=\"config\"></dbx-selection-list-view>";
6
7
  /**
7
8
  * Abstract list view that has a pre-built-in selection change event for an Angular Material MatSelectionListChange.
8
9
  */
9
- export declare abstract class AbstractSelectionValueListViewDirective<T> extends AbstractDbxListViewDirective<T> {
10
+ export declare abstract class AbstractDbxSelectionListViewDirective<T> extends AbstractDbxListViewDirective<T> {
10
11
  selectionChange: EventEmitter<ListSelectionState<T>>;
11
12
  selectionChanged(selection: ListSelectionState<T>): void;
12
13
  matSelectionChanged(selection: MatSelectionListChange): void;
13
- static ɵfac: i0.ɵɵFactoryDeclaration<AbstractSelectionValueListViewDirective<any>, never>;
14
- static ɵdir: i0.ɵɵDirectiveDeclaration<AbstractSelectionValueListViewDirective<any>, never, never, {}, { "selectionChange": "selectionChange"; }, never>;
14
+ static ɵfac: i0.ɵɵFactoryDeclaration<AbstractDbxSelectionListViewDirective<any>, never>;
15
+ static ɵdir: i0.ɵɵDirectiveDeclaration<AbstractDbxSelectionListViewDirective<any>, never, never, {}, { "selectionChange": "selectionChange"; }, never>;
15
16
  }
@@ -1,15 +1,30 @@
1
- import { DbxValueListItem, AbstractDbxValueListViewConfig } from './list.view.value';
1
+ import { DbxValueListItem, AbstractDbxValueListViewConfig, DbxValueListItemConfig } from './list.view.value';
2
2
  import { AbstractDbxValueListViewDirective } from './list.view.value.directive';
3
+ import { DbxListView } from './list.view';
4
+ import { Maybe } from '@dereekb/util';
3
5
  import * as i0 from "@angular/core";
4
6
  export interface DbxValueListViewConfig<T, I extends DbxValueListItem<T> = DbxValueListItem<T>, V = any> extends AbstractDbxValueListViewConfig<T, I, V> {
5
7
  emitAllClicks?: boolean;
6
8
  }
7
9
  /**
8
- * Abstract list view that has a pre-built-in selection change event for an Angular Material MatSelectionListChange.
10
+ * Renders a list view using input configuration. Requires a parent DbxListView.
9
11
  */
10
12
  export declare class DbxValueListViewComponent<T, I extends DbxValueListItem<T> = DbxValueListItem<T>, V = any, C extends DbxValueListViewConfig<T, I, V> = DbxValueListViewConfig<T, I, V>> extends AbstractDbxValueListViewDirective<T, I, V, C> {
11
13
  readonly emitAllClicks$: import("rxjs").Observable<boolean | undefined>;
12
- onClickItem(item: DbxValueListItem<T>): void;
13
14
  static ɵfac: i0.ɵɵFactoryDeclaration<DbxValueListViewComponent<any, any, any, any>, never>;
14
15
  static ɵcmp: i0.ɵɵComponentDeclaration<DbxValueListViewComponent<any, any, any, any>, "dbx-list-view", never, {}, {}, never, never>;
15
16
  }
17
+ /**
18
+ * Content view for a DbxValueListView. It can be used directly in cases where the items are already configured, or want to be configured in a non-standard fashion.
19
+ */
20
+ export declare class DbxValueListItemViewComponent<T, I extends DbxValueListItem<T> = DbxValueListItem<T>> {
21
+ readonly dbxListView: DbxListView<T>;
22
+ emitAllClicks?: Maybe<boolean>;
23
+ items?: Maybe<DbxValueListItemConfig<T, I>[]>;
24
+ readonly disabled$: import("rxjs").Observable<boolean>;
25
+ constructor(dbxListView: DbxListView<T>);
26
+ onClickItem(item: I): void;
27
+ onClickValue(value: T): void;
28
+ static ɵfac: i0.ɵɵFactoryDeclaration<DbxValueListItemViewComponent<any, any>, never>;
29
+ static ɵcmp: i0.ɵɵComponentDeclaration<DbxValueListItemViewComponent<any, any>, "dbx-list-view-content", never, { "emitAllClicks": "emitAllClicks"; "items": "items"; }, {}, never, never>;
30
+ }
@@ -1,21 +1,37 @@
1
- import { ClickableAnchor } from '@dereekb/dbx-core';
2
- import { InjectionToken } from "@angular/core";
3
- import { DbxInjectedComponentConfig } from "@dereekb/dbx-core";
1
+ import { InjectionToken, Provider, Type } from "@angular/core";
2
+ import { ClickableAnchor, DbxInjectionComponentConfig } from "@dereekb/dbx-core";
4
3
  import { Observable } from "rxjs";
4
+ import { Maybe } from '@dereekb/util';
5
5
  export declare const DBX_VALUE_LIST_VIEW_ITEM: InjectionToken<any>;
6
6
  export interface DbxValueListItem<T> {
7
- value: T;
7
+ itemValue: T;
8
8
  icon?: string;
9
9
  disabled?: boolean;
10
+ rippleDisabled?: boolean;
10
11
  selected?: boolean;
11
- anchor?: ClickableAnchor;
12
+ anchor?: Maybe<ClickableAnchor>;
12
13
  }
13
- export interface AbstractDbxValueListViewConfig<T, I extends DbxValueListItem<T> = DbxValueListItem<T>, V = any> extends DbxInjectedComponentConfig<V> {
14
+ /**
15
+ * Special type used with values that contain all the items of DbxValueListItem internally.
16
+ */
17
+ export declare type DbxValueAsListItem<T> = T & Omit<DbxValueListItem<DbxValueListItem<T>>, 'itemValue'>;
18
+ export interface AbstractDbxValueListViewConfig<T, I extends DbxValueListItem<T> = DbxValueListItem<T>, V = any> extends DbxInjectionComponentConfig<V> {
14
19
  mapValuesToItemValues?(values: T[]): Observable<I[]>;
15
20
  }
16
- export declare const DEFAULT_DBX_VALUE_LIST_CONFIG_MAP_VALUES: <T, I extends DbxValueListItem<T>>(values: T[]) => Observable<I[]>;
17
- export interface DbxValueListItemConfig<T> extends DbxValueListItem<T> {
18
- config: DbxInjectedComponentConfig;
21
+ export declare const DEFAULT_DBX_VALUE_LIST_CONFIG_MAP_VALUES: <T, I extends DbxValueListItem<T>>(itemValues: T[]) => Observable<I[]>;
22
+ export declare type DbxValueListItemConfig<T, I extends DbxValueListItem<T> = DbxValueListItem<T>> = I & {
23
+ config: DbxInjectionComponentConfig;
24
+ };
25
+ export declare function mapValuesToValuesListItemConfigObs<T, I extends DbxValueListItem<T>>(listViewConfig: AbstractDbxValueListViewConfig<T, I>, itemValues: T[]): Observable<DbxValueListItemConfig<T, I>[]>;
26
+ /**
27
+ * Adds config to the input value list items.
28
+ *
29
+ * @param listViewConfig
30
+ * @param listItems
31
+ * @returns
32
+ */
33
+ export declare function addConfigToValueListItems<T, I extends DbxValueListItem<T>>(listViewConfig: AbstractDbxValueListViewConfig<T, I>, listItems: I[]): DbxValueListItemConfig<T, I>[];
34
+ export declare abstract class DbxValueListView<T, I extends DbxValueListItem<T> = DbxValueListItem<T>> {
35
+ readonly abstract items$: Observable<I[]>;
19
36
  }
20
- export declare function mapValuesToValuesListItemConfigObs<T>(listViewConfig: AbstractDbxValueListViewConfig<T>, values: T[]): Observable<DbxValueListItemConfig<T>[]>;
21
- export declare function mapItemValuesToValueListItemConfig<T>(listViewConfig: AbstractDbxValueListViewConfig<T>, itemValues: DbxValueListItem<T>[]): DbxValueListItemConfig<T>[];
37
+ export declare function ProvideDbxValueListView<V extends DbxValueListView<any>>(sourceType: Type<V>): Provider[];
@@ -1,21 +1,24 @@
1
+ import { Maybe, ModifierFunction } from "@dereekb/util";
1
2
  import { OnDestroy } from "@angular/core";
2
- import { Maybe } from "@dereekb/util";
3
3
  import { Observable } from "rxjs";
4
4
  import { DbxListView } from "./list.view";
5
- import { AbstractDbxValueListViewConfig, DbxValueListItem, DbxValueListItemConfig } from "./list.view.value";
5
+ import { AbstractDbxValueListViewConfig, DbxValueListItem, DbxValueListItemConfig, DbxValueListView } from "./list.view.value";
6
+ import { DbxValueListItemModifier } from "./list.view.value.modifier";
6
7
  import * as i0 from "@angular/core";
7
8
  /**
8
9
  * Abstract list directive that takes in items and a AbstractDbxValueItemListViewConfig configuration.
9
10
  */
10
- export declare abstract class AbstractDbxValueListViewDirective<T, I extends DbxValueListItem<T> = DbxValueListItem<T>, V = any, C extends AbstractDbxValueListViewConfig<T, I, V> = AbstractDbxValueListViewConfig<T, I, V>> implements OnDestroy {
11
+ export declare abstract class AbstractDbxValueListViewDirective<T, I extends DbxValueListItem<T> = DbxValueListItem<T>, V = any, C extends AbstractDbxValueListViewConfig<T, I, V> = AbstractDbxValueListViewConfig<T, I, V>> implements DbxValueListView<T, I>, OnDestroy {
11
12
  readonly dbxListView: DbxListView<T>;
13
+ readonly dbxValueListViewModifier: DbxValueListItemModifier<T, I>;
12
14
  private _config;
13
15
  readonly config$: Observable<C>;
14
- readonly items$: Observable<DbxValueListItemConfig<T>[]>;
15
- constructor(dbxListView: DbxListView<T>);
16
+ readonly modifyFn$: Observable<Maybe<ModifierFunction<I>>>;
17
+ readonly items$: Observable<DbxValueListItemConfig<T, I>[]>;
18
+ constructor(dbxListView: DbxListView<T>, dbxValueListViewModifier: DbxValueListItemModifier<T, I>);
16
19
  ngOnDestroy(): void;
17
20
  set config(config: Maybe<C>);
18
21
  onClickValue(value: T): void;
19
- static ɵfac: i0.ɵɵFactoryDeclaration<AbstractDbxValueListViewDirective<any, any, any, any>, never>;
22
+ static ɵfac: i0.ɵɵFactoryDeclaration<AbstractDbxValueListViewDirective<any, any, any, any>, [null, { optional: true; }]>;
20
23
  static ɵdir: i0.ɵɵDirectiveDeclaration<AbstractDbxValueListViewDirective<any, any, any, any>, never, never, { "config": "config"; }, {}, never>;
21
24
  }
@@ -1,9 +1,9 @@
1
1
  import { DbxValueListItem } from "./list.view.value";
2
2
  import * as i0 from "@angular/core";
3
- export declare abstract class AbstractDbxSelectionValueListViewItemComponent<T, I extends DbxValueListItem<T> = DbxValueListItem<T>> {
3
+ export declare abstract class AbstractDbxValueListViewItemComponent<T, I extends DbxValueListItem<T> = DbxValueListItem<T>> {
4
4
  readonly item: I;
5
- get value(): T;
5
+ get itemValue(): T;
6
6
  constructor(item: I);
7
- static ɵfac: i0.ɵɵFactoryDeclaration<AbstractDbxSelectionValueListViewItemComponent<any, any>, never>;
8
- static ɵdir: i0.ɵɵDirectiveDeclaration<AbstractDbxSelectionValueListViewItemComponent<any, any>, never, never, {}, {}, never>;
7
+ static ɵfac: i0.ɵɵFactoryDeclaration<AbstractDbxValueListViewItemComponent<any, any>, never>;
8
+ static ɵdir: i0.ɵɵDirectiveDeclaration<AbstractDbxValueListViewItemComponent<any, any>, never, never, {}, {}, never>;
9
9
  }
@@ -0,0 +1,12 @@
1
+ import { Provider, Type } from "@angular/core";
2
+ import { ArrayOrValue, Modifier, ModifierFunction, ModifierMap } from "@dereekb/util";
3
+ import { Observable } from "rxjs";
4
+ import { DbxValueListItem } from "./list.view.value";
5
+ export declare abstract class DbxValueListItemModifier<T, I extends DbxValueListItem<T> = DbxValueListItem<T>> {
6
+ readonly abstract modifiers$: Observable<ModifierMap<I>>;
7
+ abstract addModifiers(modifiers: ArrayOrValue<Modifier<I>>): void;
8
+ abstract removeModifiers(modifiers: ArrayOrValue<Modifier<I>>): void;
9
+ }
10
+ export declare function ProvideDbxValueListViewModifier<V extends DbxValueListItemModifier<any>>(sourceType: Type<V>): Provider[];
11
+ export declare type ListItemModifier<T, I extends DbxValueListItem<T> = DbxValueListItem<T>> = Modifier<I>;
12
+ export declare function listItemModifier<T, I extends DbxValueListItem<T> = DbxValueListItem<T>>(key: string, modify: ModifierFunction<I>): ListItemModifier<T, I>;
@@ -0,0 +1,37 @@
1
+ import { Observable } from 'rxjs';
2
+ import { OnDestroy, OnInit } from "@angular/core";
3
+ import { DbxValueListItem } from "./list.view.value";
4
+ import { ArrayOrValue, Maybe, Modifier } from '@dereekb/util';
5
+ import { DbxValueListItemModifier } from './list.view.value.modifier';
6
+ import * as i0 from "@angular/core";
7
+ /**
8
+ * DbxValueListViewModifier implementation
9
+ */
10
+ export declare class DbxValueListItemModifierDirective<T, I extends DbxValueListItem<T> = DbxValueListItem<T>> implements DbxValueListItemModifier<T, I>, OnDestroy {
11
+ private _modifiers;
12
+ private _inputModifiers;
13
+ readonly modifiers$: Observable<Map<string, Modifier<I>>>;
14
+ constructor();
15
+ ngOnDestroy(): void;
16
+ addModifiers(modifiers: ArrayOrValue<Modifier<I>>): void;
17
+ removeModifiers(modifiers: ArrayOrValue<Modifier<I>>): void;
18
+ set inputModifiers(inputModifiers: Maybe<ArrayOrValue<Modifier<I>>>);
19
+ static ɵfac: i0.ɵɵFactoryDeclaration<DbxValueListItemModifierDirective<any, any>, never>;
20
+ static ɵdir: i0.ɵɵDirectiveDeclaration<DbxValueListItemModifierDirective<any, any>, "[dbxListItemModifier]", never, { "inputModifiers": "dbxListItemModifier"; }, {}, never>;
21
+ }
22
+ /**
23
+ * Abstract directive used for managing modifyers for a DbxValueListView.
24
+ */
25
+ export declare abstract class AbstractDbxValueListItemModifierDirective<T, I extends DbxValueListItem<T> = DbxValueListItem<T>> implements OnInit, OnDestroy {
26
+ readonly dbxValueListItemModifier: DbxValueListItemModifier<T, I>;
27
+ abstract readonly modifiers$: Observable<Maybe<ArrayOrValue<Modifier<I>>>>;
28
+ private _linkedModifiers;
29
+ private _modifiersSub;
30
+ constructor(dbxValueListItemModifier: DbxValueListItemModifier<T, I>);
31
+ ngOnInit(): void;
32
+ ngOnDestroy(): void;
33
+ private _linkModifiers;
34
+ private _unlinkModifiers;
35
+ static ɵfac: i0.ɵɵFactoryDeclaration<AbstractDbxValueListItemModifierDirective<any, any>, never>;
36
+ static ɵdir: i0.ɵɵDirectiveDeclaration<AbstractDbxValueListItemModifierDirective<any, any>, never, never, {}, {}, never>;
37
+ }
@@ -0,0 +1,17 @@
1
+ import { OnDestroy } from "@angular/core";
2
+ import { Maybe, ArrayOrValue, Modifier } from "@dereekb/util";
3
+ import { Observable } from "rxjs";
4
+ import { DbxValueListItem } from "./list.view.value";
5
+ import { AbstractDbxValueListItemModifierDirective } from "./list.view.value.modifier.directive";
6
+ import * as i0 from "@angular/core";
7
+ export declare type DisableRippleForValueFunction<T> = (item: DbxValueListItem<T>) => boolean;
8
+ export declare const DBX_LIST_ITEM_DISABLE_RIPPLE_LIST_ITEM_MODIFIER_KEY = "disable_ripple_anchor";
9
+ export declare const DBX_LIST_ITEM_DEFAULT_DISABLE_FUNCTION: DisableRippleForValueFunction<any>;
10
+ export declare class DbxListItemDisableRippleModifierDirective<T> extends AbstractDbxValueListItemModifierDirective<T> implements OnDestroy {
11
+ private _disableRippleForItem;
12
+ readonly modifiers$: Observable<Maybe<ArrayOrValue<Modifier<DbxValueListItem<T>>>>>;
13
+ ngOnDestroy(): void;
14
+ set disableRippleForItem(disableRippleForItem: Maybe<DisableRippleForValueFunction<T>>);
15
+ static ɵfac: i0.ɵɵFactoryDeclaration<DbxListItemDisableRippleModifierDirective<any>, never>;
16
+ static ɵdir: i0.ɵɵDirectiveDeclaration<DbxListItemDisableRippleModifierDirective<any>, "[dbxListItemDisableRippleModifier]", never, { "disableRippleForItem": "dbxListItemDisableRippleModifier"; }, {}, never>;
17
+ }
@@ -1,32 +1,31 @@
1
+ import { Observable } from 'rxjs';
1
2
  import { MatSelectionListChange } from '@angular/material/list';
2
- import { DbxListView } from './list.view';
3
- import { DbxValueListItem, AbstractDbxValueListViewConfig, DbxValueListItemConfig } from './list.view.value';
3
+ import { DbxListSelectionMode, DbxListView } from './list.view';
4
+ import { DbxValueListItem, AbstractDbxValueListViewConfig } from './list.view.value';
4
5
  import { AbstractDbxValueListViewDirective } from './list.view.value.directive';
5
6
  import { Maybe } from '@dereekb/util';
7
+ import { DbxValueListItemViewComponent } from './list.view.value.component';
6
8
  import * as i0 from "@angular/core";
7
9
  export interface DbxSelectionValueListViewConfig<T, I extends DbxValueListItem<T> = DbxValueListItem<T>, V = any> extends AbstractDbxValueListViewConfig<T, I, V> {
8
10
  multiple?: boolean;
9
11
  }
10
12
  /**
11
- * Abstract list view that has a pre-built-in selection change event for an Angular Material MatSelectionListChange.
13
+ * Renders a selection list view using input configuration. Requires a parent DbxListView.
12
14
  */
13
15
  export declare class DbxSelectionValueListViewComponent<T, I extends DbxValueListItem<T> = DbxValueListItem<T>, V = any> extends AbstractDbxValueListViewDirective<T, I, V, DbxSelectionValueListViewConfig<T, I, V>> {
14
- readonly multiple$: import("rxjs").Observable<boolean>;
15
- constructor(dbxListView: DbxListView<T>);
16
+ readonly selectionMode$: Observable<DbxListSelectionMode>;
17
+ readonly multiple$: Observable<boolean>;
16
18
  static ɵfac: i0.ɵɵFactoryDeclaration<DbxSelectionValueListViewComponent<any, any, any>, never>;
17
19
  static ɵcmp: i0.ɵɵComponentDeclaration<DbxSelectionValueListViewComponent<any, any, any>, "dbx-selection-list-view", never, {}, {}, never, never>;
18
20
  }
19
21
  /**
20
22
  * Content view for a DbxSelectionValueListView. It can be used directly in cases where the items are already configured, or want to be configured in a non-standard fashion.
21
23
  */
22
- export declare class DbxSelectionValueListItemViewComponent<T> {
23
- readonly dbxListView: DbxListView<T>;
24
+ export declare class DbxSelectionValueListItemViewComponent<T> extends DbxValueListItemViewComponent<T> {
24
25
  multiple?: Maybe<boolean>;
25
- items?: Maybe<DbxValueListItemConfig<T>[]>;
26
- readonly disabled$: import("rxjs").Observable<boolean>;
26
+ selectionMode: Maybe<DbxListSelectionMode>;
27
27
  constructor(dbxListView: DbxListView<T>);
28
- onClickValue(value: T): void;
29
28
  matSelectionChanged(selection: MatSelectionListChange): void;
30
29
  static ɵfac: i0.ɵɵFactoryDeclaration<DbxSelectionValueListItemViewComponent<any>, never>;
31
- static ɵcmp: i0.ɵɵComponentDeclaration<DbxSelectionValueListItemViewComponent<any>, "dbx-selection-list-view-content", never, { "multiple": "multiple"; "items": "items"; }, {}, never, never>;
30
+ static ɵcmp: i0.ɵɵComponentDeclaration<DbxSelectionValueListItemViewComponent<any>, "dbx-selection-list-view-content", never, { "multiple": "multiple"; "selectionMode": "selectionMode"; }, {}, never, never>;
32
31
  }
@@ -0,0 +1,11 @@
1
+ import { Observable } from 'rxjs';
2
+ import { ListLoadingState } from "@dereekb/rxjs";
3
+ import { Provider, Type } from "@angular/core";
4
+ import { Maybe } from '@dereekb/util';
5
+ /**
6
+ * Common interface for views that may wrap a DbxListView, and pass values through to it.
7
+ */
8
+ export declare abstract class DbxListViewWrapper<T, S extends ListLoadingState<T> = ListLoadingState<T>> {
9
+ state$?: Maybe<Observable<S>>;
10
+ }
11
+ export declare function ProvideDbxListViewWrapper<V extends DbxListViewWrapper<any>>(sourceType: Type<V>): Provider[];
@@ -14,6 +14,6 @@ import * as i10 from "@angular/material/icon";
14
14
  */
15
15
  export declare class DbxSectionLayoutModule {
16
16
  static ɵfac: i0.ɵɵFactoryDeclaration<DbxSectionLayoutModule, never>;
17
- static ɵmod: i0.ɵɵNgModuleDeclaration<DbxSectionLayoutModule, [typeof i1.DbxSectionHeaderComponent, typeof i2.DbxSectionPageComponent, typeof i3.DbxSectionComponent, typeof i4.DbxSubSectionComponent, typeof i5.DbxIntroActionSectionComponent], [typeof i6.CommonModule, typeof i7.DbxAnchorModule, typeof i8.MatButtonModule, typeof i9.MatRippleModule, typeof i10.MatIconModule], [typeof i1.DbxSectionHeaderComponent, typeof i2.DbxSectionPageComponent, typeof i3.DbxSectionComponent, typeof i4.DbxSubSectionComponent, typeof i5.DbxIntroActionSectionComponent]>;
17
+ static ɵmod: i0.ɵɵNgModuleDeclaration<DbxSectionLayoutModule, [typeof i1.DbxSectionHeaderComponent, typeof i2.DbxSectionPageComponent, typeof i3.DbxSectionComponent, typeof i4.DbxSubSectionComponent, typeof i5.DbxIntroActionSectionComponent], [typeof i6.CommonModule, typeof i7.DbxRouterAnchorModule, typeof i8.MatButtonModule, typeof i9.MatRippleModule, typeof i10.MatIconModule], [typeof i1.DbxSectionHeaderComponent, typeof i2.DbxSectionPageComponent, typeof i3.DbxSectionComponent, typeof i4.DbxSubSectionComponent, typeof i5.DbxIntroActionSectionComponent]>;
18
18
  static ɵinj: i0.ɵɵInjectorDeclaration<DbxSectionLayoutModule>;
19
19
  }
@@ -22,7 +22,9 @@
22
22
  padding: 0 !important;
23
23
  }
24
24
 
25
- @each $i, $padding in theming.$padding-map {
25
+ @each $i,
26
+ $padding in theming.$padding-map {
27
+
26
28
  .pad-#{$i},
27
29
  .padding-#{$i} {
28
30
  padding: $padding;
@@ -37,6 +39,15 @@
37
39
  display: inline;
38
40
  }
39
41
 
42
+ .d-iflex {
43
+ display: inline-flex;
44
+ }
45
+
46
+ // force
47
+ .d-fiflex {
48
+ display: inline-flex !important;
49
+ }
50
+
40
51
  }
41
52
 
42
53
  @mixin color($theme-config) {
@@ -5,6 +5,7 @@
5
5
  // MARK: Variables
6
6
  $icon-spacing: 6px;
7
7
  $hint-opacity: 0.8;
8
+ $note-opacity: 0.7;
8
9
  $mat-hint-opacity: 0.54; // Opacity to mirror mat-hint
9
10
 
10
11
  // MARK: Mixin
@@ -20,6 +21,10 @@ $mat-hint-opacity: 0.54; // Opacity to mirror mat-hint
20
21
  text-align: center;
21
22
  }
22
23
 
24
+ .prettyjson {
25
+ white-space: pre-wrap !important;
26
+ }
27
+
23
28
  .dbx-text-no-overflow {
24
29
  white-space: pre-wrap !important;
25
30
  overflow: visible !important;
@@ -65,6 +70,10 @@ $mat-hint-opacity: 0.54; // Opacity to mirror mat-hint
65
70
  color: $notice-color;
66
71
  }
67
72
 
73
+ .dbx-note {
74
+ opacity: $note-opacity;
75
+ }
76
+
68
77
  }
69
78
 
70
79
  @mixin typography($typography-config) {
@@ -26,6 +26,11 @@
26
26
  cursor: pointer;
27
27
  }
28
28
 
29
+ .dbx-link-spacer:before {
30
+ content: "|";
31
+ margin: 0 8px;
32
+ }
33
+
29
34
  .dbx-anchor-content {
30
35
  display: flex;
31
36
  align-items: center;
@@ -1,12 +1,12 @@
1
- import { TemplateRef } from '@angular/core';
2
- import { AbstractDbxAnchorDirective, DbxInjectedComponentConfig } from '@dereekb/dbx-core';
1
+ import { TemplateRef, OnDestroy } from '@angular/core';
2
+ import { AbstractDbxAnchorDirective, DbxInjectionComponentConfig } from '@dereekb/dbx-core';
3
3
  import { Maybe } from '@dereekb/util';
4
4
  import { DbxRouterWebProviderConfig } from '../../provider/router.provider.config';
5
5
  import * as i0 from "@angular/core";
6
6
  /**
7
7
  * Component that renders an anchor element depending on the input.
8
8
  */
9
- export declare class DbxAnchorComponent extends AbstractDbxAnchorDirective {
9
+ export declare class DbxAnchorComponent extends AbstractDbxAnchorDirective implements OnDestroy {
10
10
  private readonly dbNgxRouterWebProviderConfig;
11
11
  private _templateRef;
12
12
  readonly templateRef$: import("rxjs").Observable<Maybe<TemplateRef<any>>>;
@@ -16,7 +16,8 @@ export declare class DbxAnchorComponent extends AbstractDbxAnchorDirective {
16
16
  readonly url$: import("rxjs").Observable<string | undefined>;
17
17
  readonly target$: import("rxjs").Observable<string | undefined>;
18
18
  constructor(dbNgxRouterWebProviderConfig: DbxRouterWebProviderConfig);
19
- get srefAnchorConfig(): DbxInjectedComponentConfig;
19
+ ngOnDestroy(): void;
20
+ get srefAnchorConfig(): DbxInjectionComponentConfig;
20
21
  clickAnchor(event?: Maybe<MouseEvent>): void;
21
22
  static ɵfac: i0.ɵɵFactoryDeclaration<DbxAnchorComponent, never>;
22
23
  static ɵcmp: i0.ɵɵComponentDeclaration<DbxAnchorComponent, "dbx-anchor, [dbx-anchor]", never, { "block": "block"; }, {}, never, ["*"]>;
@@ -7,8 +7,8 @@ import * as i5 from "@angular/common";
7
7
  import * as i6 from "@angular/material/icon";
8
8
  import * as i7 from "@angular/material/button";
9
9
  import * as i8 from "@dereekb/dbx-core";
10
- export declare class DbxAnchorModule {
11
- static ɵfac: i0.ɵɵFactoryDeclaration<DbxAnchorModule, never>;
12
- static ɵmod: i0.ɵɵNgModuleDeclaration<DbxAnchorModule, [typeof i1.DbxAnchorComponent, typeof i2.DbxAnchorIconComponent, typeof i3.DbxAnchorLinkComponent, typeof i4.DbxAnchorContentComponent], [typeof i5.CommonModule, typeof i6.MatIconModule, typeof i7.MatButtonModule, typeof i8.DbxInjectedComponentModule], [typeof i1.DbxAnchorComponent, typeof i2.DbxAnchorIconComponent, typeof i3.DbxAnchorLinkComponent, typeof i4.DbxAnchorContentComponent]>;
13
- static ɵinj: i0.ɵɵInjectorDeclaration<DbxAnchorModule>;
10
+ export declare class DbxRouterAnchorModule {
11
+ static ɵfac: i0.ɵɵFactoryDeclaration<DbxRouterAnchorModule, never>;
12
+ static ɵmod: i0.ɵɵNgModuleDeclaration<DbxRouterAnchorModule, [typeof i1.DbxAnchorComponent, typeof i2.DbxAnchorIconComponent, typeof i3.DbxAnchorLinkComponent, typeof i4.DbxAnchorContentComponent], [typeof i5.CommonModule, typeof i6.MatIconModule, typeof i7.MatButtonModule, typeof i8.DbxInjectionComponentModule], [typeof i1.DbxAnchorComponent, typeof i2.DbxAnchorIconComponent, typeof i3.DbxAnchorLinkComponent, typeof i4.DbxAnchorContentComponent]>;
13
+ static ɵinj: i0.ɵɵInjectorDeclaration<DbxRouterAnchorModule>;
14
14
  }
@@ -1,4 +1,4 @@
1
- import { DbxInjectedTemplateConfig } from "@dereekb/dbx-core";
1
+ import { DbxInjectionTemplateConfig } from "@dereekb/dbx-core";
2
2
  import { Observable } from "rxjs";
3
3
  import { DbxAnchorComponent } from "./anchor.component";
4
4
  import * as i0 from "@angular/core";
@@ -12,7 +12,7 @@ export declare abstract class AbstractDbxSegueAnchorDirective {
12
12
  readonly refParams$: Observable<import("@dereekb/dbx-core").SegueRefRawSegueParams | undefined>;
13
13
  readonly refOptions$: Observable<any>;
14
14
  constructor(parent: DbxAnchorComponent);
15
- readonly template$: Observable<DbxInjectedTemplateConfig>;
15
+ readonly template$: Observable<DbxInjectionTemplateConfig>;
16
16
  get anchor(): import("../../../../../../../dist/packages/util/src").Maybe<import("@dereekb/dbx-core").ClickableAnchor>;
17
17
  static ɵfac: i0.ɵɵFactoryDeclaration<AbstractDbxSegueAnchorDirective, never>;
18
18
  static ɵdir: i0.ɵɵDirectiveDeclaration<AbstractDbxSegueAnchorDirective, never, never, {}, {}, never>;
@@ -3,6 +3,7 @@
3
3
  @use '../../../style/theming';
4
4
 
5
5
  // MARK: Variables
6
+ $anchor-list-item-disabled-item-opacity: 25%;
6
7
  $active-root-item-left-padding: 2px;
7
8
  $active-child-item-left-padding: 5px;
8
9
 
@@ -13,6 +14,7 @@ $active-child-item-left-padding: 5px;
13
14
  $color-config: theming.get-color-config($theme-config);
14
15
  $background: map.get($color-config, 'background');
15
16
  $background-hover-color: theming.get-color-from-palette($background, 'hover');
17
+ $background-disabled-color: theming.get-color-from-palette($background, 'contrast');
16
18
 
17
19
  .dbx-anchor-list.mat-nav-list {
18
20
 
@@ -20,6 +22,11 @@ $active-child-item-left-padding: 5px;
20
22
  // items that are not active are muted
21
23
  .mat-list-item {
22
24
  opacity: 0.74;
25
+
26
+ &.mat-list-item-disabled {
27
+ opacity: $anchor-list-item-disabled-item-opacity;
28
+ background: transparent;
29
+ }
23
30
  }
24
31
 
25
32
  // active route as a parent
@@ -7,8 +7,8 @@ import * as i5 from "@angular/material/icon";
7
7
  import * as i6 from "@angular/material/list";
8
8
  import * as i7 from "@angular/material/menu";
9
9
  import * as i8 from "../anchor/anchor.module";
10
- export declare class DbxAnchorListModule {
11
- static ɵfac: i0.ɵɵFactoryDeclaration<DbxAnchorListModule, never>;
12
- static ɵmod: i0.ɵɵNgModuleDeclaration<DbxAnchorListModule, [typeof i1.DbxAnchorListComponent], [typeof i2.CommonModule, typeof i3.MatTabsModule, typeof i4.MatButtonModule, typeof i5.MatIconModule, typeof i6.MatListModule, typeof i7.MatMenuModule, typeof i8.DbxAnchorModule], [typeof i1.DbxAnchorListComponent]>;
13
- static ɵinj: i0.ɵɵInjectorDeclaration<DbxAnchorListModule>;
10
+ export declare class DbxRouterAnchorListModule {
11
+ static ɵfac: i0.ɵɵFactoryDeclaration<DbxRouterAnchorListModule, never>;
12
+ static ɵmod: i0.ɵɵNgModuleDeclaration<DbxRouterAnchorListModule, [typeof i1.DbxAnchorListComponent], [typeof i2.CommonModule, typeof i3.MatTabsModule, typeof i4.MatButtonModule, typeof i5.MatIconModule, typeof i6.MatListModule, typeof i7.MatMenuModule, typeof i8.DbxRouterAnchorModule], [typeof i1.DbxAnchorListComponent]>;
13
+ static ɵinj: i0.ɵɵInjectorDeclaration<DbxRouterAnchorListModule>;
14
14
  }
@@ -1,5 +1,6 @@
1
1
  export * from './anchor';
2
2
  export * from './anchorlist';
3
+ export * from './list';
3
4
  export * from './navbar';
4
5
  export * from './sidenav';
5
6
  export * from './layout.module';
@@ -1,10 +1,11 @@
1
1
  import * as i0 from "@angular/core";
2
2
  import * as i1 from "./anchor/anchor.module";
3
3
  import * as i2 from "./anchorlist/anchorlist.module";
4
- import * as i3 from "./navbar/navbar.module";
5
- import * as i4 from "./sidenav/sidenav.module";
4
+ import * as i3 from "./list/list.module";
5
+ import * as i4 from "./navbar/navbar.module";
6
+ import * as i5 from "./sidenav/sidenav.module";
6
7
  export declare class DbxRouterLayoutModule {
7
8
  static ɵfac: i0.ɵɵFactoryDeclaration<DbxRouterLayoutModule, never>;
8
- static ɵmod: i0.ɵɵNgModuleDeclaration<DbxRouterLayoutModule, never, never, [typeof i1.DbxAnchorModule, typeof i2.DbxAnchorListModule, typeof i3.DbxNavbarModule, typeof i4.DbxSidenavModule]>;
9
+ static ɵmod: i0.ɵɵNgModuleDeclaration<DbxRouterLayoutModule, never, never, [typeof i1.DbxRouterAnchorModule, typeof i2.DbxRouterAnchorListModule, typeof i3.DbxRouterListModule, typeof i4.DbxRouterNavbarModule, typeof i5.DbxRouterSidenavModule]>;
9
10
  static ɵinj: i0.ɵɵInjectorDeclaration<DbxRouterLayoutModule>;
10
11
  }
@@ -0,0 +1,2 @@
1
+ export * from './list.module';
2
+ export * from './router.list.directive';
@@ -0,0 +1,7 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./router.list.directive";
3
+ export declare class DbxRouterListModule {
4
+ static ɵfac: i0.ɵɵFactoryDeclaration<DbxRouterListModule, never>;
5
+ static ɵmod: i0.ɵɵNgModuleDeclaration<DbxRouterListModule, [typeof i1.DbxListItemAnchorModifierDirective], never, [typeof i1.DbxListItemAnchorModifierDirective]>;
6
+ static ɵinj: i0.ɵɵInjectorDeclaration<DbxRouterListModule>;
7
+ }
@@ -0,0 +1,17 @@
1
+ import { OnDestroy } from "@angular/core";
2
+ import { ClickableAnchor } from "@dereekb/dbx-core";
3
+ import { ArrayOrValue, Maybe, Modifier } from "@dereekb/util";
4
+ import { Observable } from "rxjs";
5
+ import { DbxValueListItem } from "../../../layout/list/list.view.value";
6
+ import { AbstractDbxValueListItemModifierDirective } from "../../../layout/list/list.view.value.modifier.directive";
7
+ import * as i0 from "@angular/core";
8
+ export declare type AnchorForValueFunction<T> = (value: T, item: DbxValueListItem<T>) => Maybe<ClickableAnchor>;
9
+ export declare const DBX_ROUTER_VALUE_LIST_ITEM_MODIFIER_KEY = "router_anchor";
10
+ export declare class DbxListItemAnchorModifierDirective<T> extends AbstractDbxValueListItemModifierDirective<T> implements OnDestroy {
11
+ private _anchorForItem;
12
+ readonly modifiers$: Observable<Maybe<ArrayOrValue<Modifier<DbxValueListItem<T>>>>>;
13
+ ngOnDestroy(): void;
14
+ set anchorForItem(anchorForItem: Maybe<AnchorForValueFunction<T>>);
15
+ static ɵfac: i0.ɵɵFactoryDeclaration<DbxListItemAnchorModifierDirective<any>, never>;
16
+ static ɵdir: i0.ɵɵDirectiveDeclaration<DbxListItemAnchorModifierDirective<any>, "[dbxListItemAnchorModifier]", never, { "anchorForItem": "dbxListItemAnchorModifier"; }, {}, never>;
17
+ }
@@ -3,12 +3,12 @@ import { ScreenMediaWidthType } from './../../../screen/screen';
3
3
  import { DbxScreenMediaService } from '../../../screen/screen.service';
4
4
  import { Maybe } from '@dereekb/util';
5
5
  import { OnDestroy, ChangeDetectorRef } from '@angular/core';
6
- import { ClickableAnchorLink, DbxRouterService, DbxRouterTransitionService, AbstractTransitionDirective } from '@dereekb/dbx-core';
6
+ import { ClickableAnchorLinkSegueRef, DbxRouterService, DbxRouterTransitionService, AbstractTransitionDirective } from '@dereekb/dbx-core';
7
7
  import { HorizontalConnectionPos } from '@angular/cdk/overlay';
8
8
  import * as i0 from "@angular/core";
9
9
  interface NavAnchorLink {
10
10
  selected: boolean;
11
- anchor: ClickableAnchorLink;
11
+ anchor: ClickableAnchorLinkSegueRef;
12
12
  }
13
13
  export declare type NavBarContentAlign = 'center' | 'left' | 'right';
14
14
  export declare type NavbarMode = 'bar' | 'button';
@@ -24,11 +24,11 @@ export declare class DbxNavbarComponent extends AbstractTransitionDirective impl
24
24
  private _breakpoint;
25
25
  private _anchors;
26
26
  readonly isBreakpointActive$: Observable<boolean>;
27
- readonly mode$: Observable<NavbarMode>;
27
+ readonly mode$: Observable<"button" | "bar">;
28
28
  readonly anchors$: Observable<NavAnchorLink[]>;
29
29
  constructor(dbxRouterTransitionService: DbxRouterTransitionService, cdRef: ChangeDetectorRef, _dbxScreenMediaService: DbxScreenMediaService, _dbxRouterService: DbxRouterService);
30
30
  ngOnDestroy(): void;
31
- set anchors(anchors: Maybe<ClickableAnchorLink[]>);
31
+ set anchors(anchors: Maybe<ClickableAnchorLinkSegueRef[]>);
32
32
  set mode(mode: Maybe<NavbarMode>);
33
33
  set breakpoint(breakpoint: ScreenMediaWidthType);
34
34
  static ɵfac: i0.ɵɵFactoryDeclaration<DbxNavbarComponent, never>;