@ngstarter-ui/components 1.0.28 → 1.0.31

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 (230) hide show
  1. package/fesm2022/ngstarter-ui-components-action-required.mjs +2 -2
  2. package/fesm2022/ngstarter-ui-components-action-required.mjs.map +1 -1
  3. package/fesm2022/ngstarter-ui-components-alert.mjs +2 -2
  4. package/fesm2022/ngstarter-ui-components-alert.mjs.map +1 -1
  5. package/fesm2022/ngstarter-ui-components-announcement.mjs +2 -2
  6. package/fesm2022/ngstarter-ui-components-announcement.mjs.map +1 -1
  7. package/fesm2022/ngstarter-ui-components-autocomplete.mjs +2 -2
  8. package/fesm2022/ngstarter-ui-components-autocomplete.mjs.map +1 -1
  9. package/fesm2022/ngstarter-ui-components-avatar.mjs +8 -8
  10. package/fesm2022/ngstarter-ui-components-avatar.mjs.map +1 -1
  11. package/fesm2022/ngstarter-ui-components-badge.mjs +2 -2
  12. package/fesm2022/ngstarter-ui-components-badge.mjs.map +1 -1
  13. package/fesm2022/ngstarter-ui-components-block-loader.mjs +2 -2
  14. package/fesm2022/ngstarter-ui-components-block-loader.mjs.map +1 -1
  15. package/fesm2022/ngstarter-ui-components-breadcrumbs.mjs +2 -2
  16. package/fesm2022/ngstarter-ui-components-breadcrumbs.mjs.map +1 -1
  17. package/fesm2022/ngstarter-ui-components-button-toggle.mjs +4 -4
  18. package/fesm2022/ngstarter-ui-components-button-toggle.mjs.map +1 -1
  19. package/fesm2022/ngstarter-ui-components-button.mjs +2 -2
  20. package/fesm2022/ngstarter-ui-components-button.mjs.map +1 -1
  21. package/fesm2022/ngstarter-ui-components-card.mjs +2 -2
  22. package/fesm2022/ngstarter-ui-components-card.mjs.map +1 -1
  23. package/fesm2022/ngstarter-ui-components-checkbox.mjs +2 -2
  24. package/fesm2022/ngstarter-ui-components-checkbox.mjs.map +1 -1
  25. package/fesm2022/ngstarter-ui-components-chips.mjs +21 -7
  26. package/fesm2022/ngstarter-ui-components-chips.mjs.map +1 -1
  27. package/fesm2022/ngstarter-ui-components-code-highlighter.mjs +2 -2
  28. package/fesm2022/ngstarter-ui-components-code-highlighter.mjs.map +1 -1
  29. package/fesm2022/ngstarter-ui-components-color-picker.mjs +2 -2
  30. package/fesm2022/ngstarter-ui-components-color-picker.mjs.map +1 -1
  31. package/fesm2022/ngstarter-ui-components-color-switcher.mjs +2 -2
  32. package/fesm2022/ngstarter-ui-components-color-switcher.mjs.map +1 -1
  33. package/fesm2022/ngstarter-ui-components-command-bar.mjs +2 -2
  34. package/fesm2022/ngstarter-ui-components-command-bar.mjs.map +1 -1
  35. package/fesm2022/ngstarter-ui-components-comment-editor.mjs +6 -6
  36. package/fesm2022/ngstarter-ui-components-comment-editor.mjs.map +1 -1
  37. package/fesm2022/{ngstarter-ui-components-content-editor-code-block.component-Bk6QTli8.mjs → ngstarter-ui-components-content-editor-code-block.component-CpZ5gJOc.mjs} +4 -4
  38. package/fesm2022/{ngstarter-ui-components-content-editor-code-block.component-Bk6QTli8.mjs.map → ngstarter-ui-components-content-editor-code-block.component-CpZ5gJOc.mjs.map} +1 -1
  39. package/fesm2022/{ngstarter-ui-components-content-editor-embed-block-BbkC_t86.mjs → ngstarter-ui-components-content-editor-embed-block-ghm0_0AF.mjs} +2 -2
  40. package/fesm2022/{ngstarter-ui-components-content-editor-embed-block-BbkC_t86.mjs.map → ngstarter-ui-components-content-editor-embed-block-ghm0_0AF.mjs.map} +1 -1
  41. package/fesm2022/{ngstarter-ui-components-content-editor-heading-block.component-D9_CxTY1.mjs → ngstarter-ui-components-content-editor-heading-block.component-C1FH89Sj.mjs} +4 -4
  42. package/fesm2022/{ngstarter-ui-components-content-editor-heading-block.component-D9_CxTY1.mjs.map → ngstarter-ui-components-content-editor-heading-block.component-C1FH89Sj.mjs.map} +1 -1
  43. package/fesm2022/{ngstarter-ui-components-content-editor-image-block.component-B4zJyUg1.mjs → ngstarter-ui-components-content-editor-image-block.component-ahCIfpvQ.mjs} +4 -4
  44. package/fesm2022/{ngstarter-ui-components-content-editor-image-block.component-B4zJyUg1.mjs.map → ngstarter-ui-components-content-editor-image-block.component-ahCIfpvQ.mjs.map} +1 -1
  45. package/fesm2022/{ngstarter-ui-components-content-editor-list-block.component-Cv6wx5Xe.mjs → ngstarter-ui-components-content-editor-list-block.component-guhW_EyK.mjs} +4 -4
  46. package/fesm2022/{ngstarter-ui-components-content-editor-list-block.component-Cv6wx5Xe.mjs.map → ngstarter-ui-components-content-editor-list-block.component-guhW_EyK.mjs.map} +1 -1
  47. package/fesm2022/{ngstarter-ui-components-content-editor-ngstarter-ui-components-content-editor-1Zi2nAX5.mjs → ngstarter-ui-components-content-editor-ngstarter-ui-components-content-editor-DNLTNGYa.mjs} +15 -15
  48. package/fesm2022/{ngstarter-ui-components-content-editor-ngstarter-ui-components-content-editor-1Zi2nAX5.mjs.map → ngstarter-ui-components-content-editor-ngstarter-ui-components-content-editor-DNLTNGYa.mjs.map} +1 -1
  49. package/fesm2022/{ngstarter-ui-components-content-editor-paragraph-block.component-C9bQvDYU.mjs → ngstarter-ui-components-content-editor-paragraph-block.component-DjgGUc7s.mjs} +4 -4
  50. package/fesm2022/{ngstarter-ui-components-content-editor-paragraph-block.component-C9bQvDYU.mjs.map → ngstarter-ui-components-content-editor-paragraph-block.component-DjgGUc7s.mjs.map} +1 -1
  51. package/fesm2022/{ngstarter-ui-components-content-editor-quote-block.component-BbHds2r2.mjs → ngstarter-ui-components-content-editor-quote-block.component-B3pek1H6.mjs} +4 -4
  52. package/fesm2022/{ngstarter-ui-components-content-editor-quote-block.component-BbHds2r2.mjs.map → ngstarter-ui-components-content-editor-quote-block.component-B3pek1H6.mjs.map} +1 -1
  53. package/fesm2022/{ngstarter-ui-components-content-editor-table-block.component-DlDh7Fnn.mjs → ngstarter-ui-components-content-editor-table-block.component-bgBNjf4d.mjs} +6 -6
  54. package/fesm2022/{ngstarter-ui-components-content-editor-table-block.component-DlDh7Fnn.mjs.map → ngstarter-ui-components-content-editor-table-block.component-bgBNjf4d.mjs.map} +1 -1
  55. package/fesm2022/{ngstarter-ui-components-content-editor-video-block.component-m4DTihP2.mjs → ngstarter-ui-components-content-editor-video-block.component-DPlYe-_8.mjs} +2 -2
  56. package/fesm2022/{ngstarter-ui-components-content-editor-video-block.component-m4DTihP2.mjs.map → ngstarter-ui-components-content-editor-video-block.component-DPlYe-_8.mjs.map} +1 -1
  57. package/fesm2022/ngstarter-ui-components-content-editor.mjs +1 -1
  58. package/fesm2022/ngstarter-ui-components-content-fade.mjs +2 -2
  59. package/fesm2022/ngstarter-ui-components-content-fade.mjs.map +1 -1
  60. package/fesm2022/ngstarter-ui-components-cookie-popup.mjs +2 -2
  61. package/fesm2022/ngstarter-ui-components-cookie-popup.mjs.map +1 -1
  62. package/fesm2022/ngstarter-ui-components-core.mjs +137 -34
  63. package/fesm2022/ngstarter-ui-components-core.mjs.map +1 -1
  64. package/fesm2022/ngstarter-ui-components-country-select.mjs +2 -2
  65. package/fesm2022/ngstarter-ui-components-country-select.mjs.map +1 -1
  66. package/fesm2022/ngstarter-ui-components-data-view.mjs +2 -2
  67. package/fesm2022/ngstarter-ui-components-data-view.mjs.map +1 -1
  68. package/fesm2022/ngstarter-ui-components-datepicker.mjs +10 -10
  69. package/fesm2022/ngstarter-ui-components-datepicker.mjs.map +1 -1
  70. package/fesm2022/ngstarter-ui-components-dialog.mjs +8 -8
  71. package/fesm2022/ngstarter-ui-components-dialog.mjs.map +1 -1
  72. package/fesm2022/ngstarter-ui-components-divider.mjs +4 -4
  73. package/fesm2022/ngstarter-ui-components-divider.mjs.map +1 -1
  74. package/fesm2022/ngstarter-ui-components-drawer.mjs +2 -2
  75. package/fesm2022/ngstarter-ui-components-drawer.mjs.map +1 -1
  76. package/fesm2022/ngstarter-ui-components-emoji-picker.mjs +2 -2
  77. package/fesm2022/ngstarter-ui-components-emoji-picker.mjs.map +1 -1
  78. package/fesm2022/ngstarter-ui-components-empty-state.mjs +4 -4
  79. package/fesm2022/ngstarter-ui-components-empty-state.mjs.map +1 -1
  80. package/fesm2022/ngstarter-ui-components-expand.mjs +2 -2
  81. package/fesm2022/ngstarter-ui-components-expand.mjs.map +1 -1
  82. package/fesm2022/ngstarter-ui-components-expansion.mjs +2 -2
  83. package/fesm2022/ngstarter-ui-components-expansion.mjs.map +1 -1
  84. package/fesm2022/ngstarter-ui-components-filter-builder.mjs +2 -2
  85. package/fesm2022/ngstarter-ui-components-filter-builder.mjs.map +1 -1
  86. package/fesm2022/ngstarter-ui-components-form-field.mjs +4 -4
  87. package/fesm2022/ngstarter-ui-components-form-field.mjs.map +1 -1
  88. package/fesm2022/{ngstarter-ui-components-form-renderer-divider-content-CwGzDCZv.mjs → ngstarter-ui-components-form-renderer-divider-content-D8Sffofu.mjs} +3 -3
  89. package/fesm2022/{ngstarter-ui-components-form-renderer-divider-content-CwGzDCZv.mjs.map → ngstarter-ui-components-form-renderer-divider-content-D8Sffofu.mjs.map} +1 -1
  90. package/fesm2022/{ngstarter-ui-components-form-renderer-radio-group-field-Cv3AGpoq.mjs → ngstarter-ui-components-form-renderer-radio-group-field-DUCSU3iT.mjs} +3 -3
  91. package/fesm2022/{ngstarter-ui-components-form-renderer-radio-group-field-Cv3AGpoq.mjs.map → ngstarter-ui-components-form-renderer-radio-group-field-DUCSU3iT.mjs.map} +1 -1
  92. package/fesm2022/ngstarter-ui-components-form-renderer.mjs +2 -2
  93. package/fesm2022/ngstarter-ui-components-gauge.mjs +2 -2
  94. package/fesm2022/ngstarter-ui-components-gauge.mjs.map +1 -1
  95. package/fesm2022/ngstarter-ui-components-grid.mjs +2 -2
  96. package/fesm2022/ngstarter-ui-components-grid.mjs.map +1 -1
  97. package/fesm2022/ngstarter-ui-components-guided-tour.mjs +4 -4
  98. package/fesm2022/ngstarter-ui-components-guided-tour.mjs.map +1 -1
  99. package/fesm2022/ngstarter-ui-components-image-placeholder.mjs +2 -2
  100. package/fesm2022/ngstarter-ui-components-image-placeholder.mjs.map +1 -1
  101. package/fesm2022/ngstarter-ui-components-image-resizer.mjs +2 -2
  102. package/fesm2022/ngstarter-ui-components-image-resizer.mjs.map +1 -1
  103. package/fesm2022/ngstarter-ui-components-image-viewer.mjs +2 -2
  104. package/fesm2022/ngstarter-ui-components-image-viewer.mjs.map +1 -1
  105. package/fesm2022/ngstarter-ui-components-image-zoom-viewer.mjs +2 -2
  106. package/fesm2022/ngstarter-ui-components-image-zoom-viewer.mjs.map +1 -1
  107. package/fesm2022/ngstarter-ui-components-incidents.mjs +2 -2
  108. package/fesm2022/ngstarter-ui-components-incidents.mjs.map +1 -1
  109. package/fesm2022/ngstarter-ui-components-inline-text-edit.mjs +2 -2
  110. package/fesm2022/ngstarter-ui-components-inline-text-edit.mjs.map +1 -1
  111. package/fesm2022/ngstarter-ui-components-kanban-board.mjs +2 -2
  112. package/fesm2022/ngstarter-ui-components-kanban-board.mjs.map +1 -1
  113. package/fesm2022/ngstarter-ui-components-kbd.mjs +2 -2
  114. package/fesm2022/ngstarter-ui-components-kbd.mjs.map +1 -1
  115. package/fesm2022/ngstarter-ui-components-list.mjs +10 -10
  116. package/fesm2022/ngstarter-ui-components-list.mjs.map +1 -1
  117. package/fesm2022/ngstarter-ui-components-logo.mjs +8 -8
  118. package/fesm2022/ngstarter-ui-components-logo.mjs.map +1 -1
  119. package/fesm2022/ngstarter-ui-components-menu.mjs +8 -8
  120. package/fesm2022/ngstarter-ui-components-menu.mjs.map +1 -1
  121. package/fesm2022/ngstarter-ui-components-micro-chart.mjs +10 -10
  122. package/fesm2022/ngstarter-ui-components-micro-chart.mjs.map +1 -1
  123. package/fesm2022/ngstarter-ui-components-navigation.mjs +8 -8
  124. package/fesm2022/ngstarter-ui-components-navigation.mjs.map +1 -1
  125. package/fesm2022/ngstarter-ui-components-notifications.mjs +8 -8
  126. package/fesm2022/ngstarter-ui-components-notifications.mjs.map +1 -1
  127. package/fesm2022/ngstarter-ui-components-number-input.mjs +2 -2
  128. package/fesm2022/ngstarter-ui-components-number-input.mjs.map +1 -1
  129. package/fesm2022/ngstarter-ui-components-option.mjs +2 -2
  130. package/fesm2022/ngstarter-ui-components-option.mjs.map +1 -1
  131. package/fesm2022/ngstarter-ui-components-paginator.mjs +2 -2
  132. package/fesm2022/ngstarter-ui-components-paginator.mjs.map +1 -1
  133. package/fesm2022/ngstarter-ui-components-password-strength.mjs +2 -2
  134. package/fesm2022/ngstarter-ui-components-password-strength.mjs.map +1 -1
  135. package/fesm2022/ngstarter-ui-components-phone-input.mjs +2 -2
  136. package/fesm2022/ngstarter-ui-components-phone-input.mjs.map +1 -1
  137. package/fesm2022/ngstarter-ui-components-popover.mjs +2 -2
  138. package/fesm2022/ngstarter-ui-components-popover.mjs.map +1 -1
  139. package/fesm2022/ngstarter-ui-components-progress-bar.mjs +2 -2
  140. package/fesm2022/ngstarter-ui-components-progress-bar.mjs.map +1 -1
  141. package/fesm2022/ngstarter-ui-components-radio-card.mjs +4 -4
  142. package/fesm2022/ngstarter-ui-components-radio-card.mjs.map +1 -1
  143. package/fesm2022/ngstarter-ui-components-radio.mjs +2 -2
  144. package/fesm2022/ngstarter-ui-components-radio.mjs.map +1 -1
  145. package/fesm2022/ngstarter-ui-components-rail-nav.mjs +4 -4
  146. package/fesm2022/ngstarter-ui-components-rail-nav.mjs.map +1 -1
  147. package/fesm2022/ngstarter-ui-components-resizable-container.mjs +2 -2
  148. package/fesm2022/ngstarter-ui-components-resizable-container.mjs.map +1 -1
  149. package/fesm2022/ngstarter-ui-components-screen-loader.mjs +2 -2
  150. package/fesm2022/ngstarter-ui-components-screen-loader.mjs.map +1 -1
  151. package/fesm2022/ngstarter-ui-components-scroll-spy.mjs +6 -6
  152. package/fesm2022/ngstarter-ui-components-scroll-spy.mjs.map +1 -1
  153. package/fesm2022/ngstarter-ui-components-scrollbar-area.mjs +2 -2
  154. package/fesm2022/ngstarter-ui-components-scrollbar-area.mjs.map +1 -1
  155. package/fesm2022/ngstarter-ui-components-segmented.mjs +2 -2
  156. package/fesm2022/ngstarter-ui-components-segmented.mjs.map +1 -1
  157. package/fesm2022/ngstarter-ui-components-select.mjs +8 -8
  158. package/fesm2022/ngstarter-ui-components-select.mjs.map +1 -1
  159. package/fesm2022/ngstarter-ui-components-side-panel.mjs +2 -2
  160. package/fesm2022/ngstarter-ui-components-side-panel.mjs.map +1 -1
  161. package/fesm2022/ngstarter-ui-components-sidebar.mjs +14 -14
  162. package/fesm2022/ngstarter-ui-components-sidebar.mjs.map +1 -1
  163. package/fesm2022/ngstarter-ui-components-sidenav.mjs +4 -4
  164. package/fesm2022/ngstarter-ui-components-sidenav.mjs.map +1 -1
  165. package/fesm2022/ngstarter-ui-components-signature-pad.mjs +2 -2
  166. package/fesm2022/ngstarter-ui-components-signature-pad.mjs.map +1 -1
  167. package/fesm2022/ngstarter-ui-components-skeleton.mjs +2 -2
  168. package/fesm2022/ngstarter-ui-components-skeleton.mjs.map +1 -1
  169. package/fesm2022/ngstarter-ui-components-slide-toggle.mjs +2 -2
  170. package/fesm2022/ngstarter-ui-components-slide-toggle.mjs.map +1 -1
  171. package/fesm2022/ngstarter-ui-components-slider.mjs +2 -2
  172. package/fesm2022/ngstarter-ui-components-slider.mjs.map +1 -1
  173. package/fesm2022/ngstarter-ui-components-snack-bar.mjs +2 -2
  174. package/fesm2022/ngstarter-ui-components-snack-bar.mjs.map +1 -1
  175. package/fesm2022/ngstarter-ui-components-spinner.mjs +2 -2
  176. package/fesm2022/ngstarter-ui-components-spinner.mjs.map +1 -1
  177. package/fesm2022/ngstarter-ui-components-splash-screen.mjs +2 -2
  178. package/fesm2022/ngstarter-ui-components-splash-screen.mjs.map +1 -1
  179. package/fesm2022/ngstarter-ui-components-split.mjs +2 -2
  180. package/fesm2022/ngstarter-ui-components-split.mjs.map +1 -1
  181. package/fesm2022/ngstarter-ui-components-stepper.mjs +2 -2
  182. package/fesm2022/ngstarter-ui-components-stepper.mjs.map +1 -1
  183. package/fesm2022/ngstarter-ui-components-suggestions.mjs +4 -4
  184. package/fesm2022/ngstarter-ui-components-suggestions.mjs.map +1 -1
  185. package/fesm2022/ngstarter-ui-components-tab-panel.mjs +2 -2
  186. package/fesm2022/ngstarter-ui-components-tab-panel.mjs.map +1 -1
  187. package/fesm2022/ngstarter-ui-components-table.mjs +6 -6
  188. package/fesm2022/ngstarter-ui-components-table.mjs.map +1 -1
  189. package/fesm2022/ngstarter-ui-components-tabs.mjs +6 -6
  190. package/fesm2022/ngstarter-ui-components-tabs.mjs.map +1 -1
  191. package/fesm2022/ngstarter-ui-components-text-editor.mjs +10 -10
  192. package/fesm2022/ngstarter-ui-components-text-editor.mjs.map +1 -1
  193. package/fesm2022/ngstarter-ui-components-thumbnail-maker.mjs +2 -2
  194. package/fesm2022/ngstarter-ui-components-thumbnail-maker.mjs.map +1 -1
  195. package/fesm2022/ngstarter-ui-components-tiles.mjs +2 -2
  196. package/fesm2022/ngstarter-ui-components-tiles.mjs.map +1 -1
  197. package/fesm2022/ngstarter-ui-components-timeline.mjs +2 -2
  198. package/fesm2022/ngstarter-ui-components-timeline.mjs.map +1 -1
  199. package/fesm2022/ngstarter-ui-components-timepicker.mjs +2 -2
  200. package/fesm2022/ngstarter-ui-components-timepicker.mjs.map +1 -1
  201. package/fesm2022/ngstarter-ui-components-toolbar.mjs +4 -4
  202. package/fesm2022/ngstarter-ui-components-toolbar.mjs.map +1 -1
  203. package/fesm2022/ngstarter-ui-components-tooltip.mjs +2 -2
  204. package/fesm2022/ngstarter-ui-components-tooltip.mjs.map +1 -1
  205. package/fesm2022/ngstarter-ui-components-upload.mjs +10 -10
  206. package/fesm2022/ngstarter-ui-components-upload.mjs.map +1 -1
  207. package/fesm2022/ngstarter-ui-components-video-viewer.mjs +2 -2
  208. package/fesm2022/ngstarter-ui-components-video-viewer.mjs.map +1 -1
  209. package/package.json +15 -3
  210. package/schematics/collection.json +10 -0
  211. package/schematics/migrations.json +11 -0
  212. package/schematics/ng-add/index.d.ts +6 -0
  213. package/schematics/ng-add/index.js +14 -0
  214. package/schematics/ng-add/index.js.map +1 -0
  215. package/schematics/ng-add/schema.json +17 -0
  216. package/schematics/ng-update/index.d.ts +6 -0
  217. package/schematics/ng-update/index.js +14 -0
  218. package/schematics/ng-update/index.js.map +1 -0
  219. package/schematics/ng-update/schema.json +17 -0
  220. package/schematics/utils.d.ts +8 -0
  221. package/schematics/utils.js +400 -0
  222. package/schematics/utils.js.map +1 -0
  223. package/styles/_common.scss +84 -390
  224. package/styles/_global.scss +12 -12
  225. package/styles/_tokens.scss +1043 -0
  226. package/styles/themes/compact.scss +9 -0
  227. package/styles/themes/enterprise.scss +349 -0
  228. package/styles/themes/modern.scss +352 -0
  229. package/types/ngstarter-ui-components-chips.d.ts +9 -4
  230. package/types/ngstarter-ui-components-core.d.ts +41 -5
@@ -0,0 +1,6 @@
1
+ import { Rule } from '@angular-devkit/schematics';
2
+ export interface NgAddSchema {
3
+ project?: string;
4
+ skipInstall?: boolean;
5
+ }
6
+ export declare function ngAdd(options?: NgAddSchema): Rule;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ngAdd = ngAdd;
4
+ const utils_1 = require("../utils");
5
+ function ngAdd(options = {}) {
6
+ return (tree, context) => {
7
+ (0, utils_1.setupNgStarterComponents)(tree, context, {
8
+ project: options.project,
9
+ skipInstall: options.skipInstall === true,
10
+ updateExistingDependencies: false,
11
+ });
12
+ };
13
+ }
14
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../projects/components/schematics/ng-add/index.ts"],"names":[],"mappings":";;AAQA,sBAQC;AAfD,oCAAoD;AAOpD,SAAgB,KAAK,CAAC,UAAuB,EAAE;IAC7C,OAAO,CAAC,IAAU,EAAE,OAAyB,EAAE,EAAE;QAC/C,IAAA,gCAAwB,EAAC,IAAI,EAAE,OAAO,EAAE;YACtC,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,WAAW,EAAE,OAAO,CAAC,WAAW,KAAK,IAAI;YACzC,0BAA0B,EAAE,KAAK;SAClC,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,17 @@
1
+ {
2
+ "$schema": "http://json-schema.org/schema",
3
+ "$id": "NgStarterComponentsNgAdd",
4
+ "title": "NgStarter Components ng-add Options",
5
+ "type": "object",
6
+ "properties": {
7
+ "project": {
8
+ "type": "string",
9
+ "description": "Angular application project to configure. Defaults to the workspace default project or the first application project."
10
+ },
11
+ "skipInstall": {
12
+ "type": "boolean",
13
+ "description": "Skip running the package manager install task.",
14
+ "default": false
15
+ }
16
+ }
17
+ }
@@ -0,0 +1,6 @@
1
+ import { Rule } from '@angular-devkit/schematics';
2
+ export interface NgUpdateSchema {
3
+ project?: string;
4
+ skipInstall?: boolean;
5
+ }
6
+ export declare function ngUpdate(options?: NgUpdateSchema): Rule;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ngUpdate = ngUpdate;
4
+ const utils_1 = require("../utils");
5
+ function ngUpdate(options = {}) {
6
+ return (tree, context) => {
7
+ (0, utils_1.setupNgStarterComponents)(tree, context, {
8
+ project: options.project,
9
+ skipInstall: options.skipInstall === true,
10
+ updateExistingDependencies: true,
11
+ });
12
+ };
13
+ }
14
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../projects/components/schematics/ng-update/index.ts"],"names":[],"mappings":";;AAQA,4BAQC;AAfD,oCAAoD;AAOpD,SAAgB,QAAQ,CAAC,UAA0B,EAAE;IACnD,OAAO,CAAC,IAAU,EAAE,OAAyB,EAAE,EAAE;QAC/C,IAAA,gCAAwB,EAAC,IAAI,EAAE,OAAO,EAAE;YACtC,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,WAAW,EAAE,OAAO,CAAC,WAAW,KAAK,IAAI;YACzC,0BAA0B,EAAE,IAAI;SACjC,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,17 @@
1
+ {
2
+ "$schema": "http://json-schema.org/schema",
3
+ "$id": "NgStarterComponentsNgUpdate",
4
+ "title": "NgStarter Components ng-update Options",
5
+ "type": "object",
6
+ "properties": {
7
+ "project": {
8
+ "type": "string",
9
+ "description": "Angular application project to configure. Defaults to the workspace default project or the first application project."
10
+ },
11
+ "skipInstall": {
12
+ "type": "boolean",
13
+ "description": "Skip running the package manager install task.",
14
+ "default": false
15
+ }
16
+ }
17
+ }
@@ -0,0 +1,8 @@
1
+ import { SchematicContext, Tree } from '@angular-devkit/schematics';
2
+ interface SetupOptions {
3
+ project?: string;
4
+ skipInstall: boolean;
5
+ updateExistingDependencies: boolean;
6
+ }
7
+ export declare function setupNgStarterComponents(tree: Tree, context: SchematicContext, options: SetupOptions): void;
8
+ export {};
@@ -0,0 +1,400 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.setupNgStarterComponents = setupNgStarterComponents;
4
+ const schematics_1 = require("@angular-devkit/schematics");
5
+ const tasks_1 = require("@angular-devkit/schematics/tasks");
6
+ const packageJson = require('../package.json');
7
+ const PACKAGE_JSON_PATH = '/package.json';
8
+ const ANGULAR_JSON_PATH = '/angular.json';
9
+ const POSTCSS_CONFIG_PATH = '/.postcssrc.json';
10
+ const POSTCSS_CONFIGS = [
11
+ '/.postcssrc',
12
+ '/.postcssrc.json',
13
+ '/.postcssrc.yaml',
14
+ '/.postcssrc.yml',
15
+ '/.postcssrc.js',
16
+ '/.postcssrc.cjs',
17
+ '/postcss.config.js',
18
+ '/postcss.config.cjs',
19
+ '/postcss.config.mjs',
20
+ ];
21
+ const DEPENDENCY_SECTIONS = [
22
+ 'dependencies',
23
+ 'devDependencies',
24
+ 'peerDependencies',
25
+ 'optionalDependencies',
26
+ ];
27
+ const DEV_DEPENDENCY_NAMES = new Set([
28
+ '@tailwindcss/postcss',
29
+ '@tailwindcss/typography',
30
+ 'autoprefixer',
31
+ 'postcss',
32
+ 'tailwindcss',
33
+ ]);
34
+ const GOOGLE_FONTS_HREF = 'https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Sora:wght@500;600;700&display=swap';
35
+ const GOOGLE_FONTS_HREF_PATTERN = /https:\/\/fonts\.googleapis\.com\/css2\?family=Manrope:wght@400;500;600;700;800(?:&|&)family=Sora:wght@500;600;700(?:&|&)display=swap/;
36
+ const GOOGLE_FONTS_LINK = `<link href="${GOOGLE_FONTS_HREF}" rel="stylesheet"/>`;
37
+ const NGS_THEME_IMPORT = '@use "@ngstarter-ui/components/styles/themes/default";';
38
+ const NGS_THEME_PROVIDER = `provideNgsTheme({
39
+ theme: 'default',
40
+ colorScheme: 'auto',
41
+ density: 'comfortable',
42
+ radius: 'medium',
43
+ }),`;
44
+ function setupNgStarterComponents(tree, context, options) {
45
+ validateAngularVersion(tree);
46
+ updatePackageJson(tree, options.updateExistingDependencies);
47
+ setupTailwindFiles(tree, context, options.project);
48
+ if (!options.skipInstall) {
49
+ context.addTask(new tasks_1.NodePackageInstallTask());
50
+ context.logger.info('Installing @ngstarter-ui/components dependencies...');
51
+ }
52
+ }
53
+ function updatePackageJson(tree, updateExistingDependencies) {
54
+ var _a;
55
+ const projectPackageJson = readJson(tree, PACKAGE_JSON_PATH);
56
+ const dependencies = collectPackageDependencies(packageJson.dependencies, packageJson.peerDependencies);
57
+ const runtimeDependencies = filterDependencies(dependencies, false);
58
+ const devDependencies = Object.assign(Object.assign({}, filterDependencies(dependencies, true)), ((_a = packageJson.devDependencies) !== null && _a !== void 0 ? _a : {}));
59
+ addDependencies(projectPackageJson, runtimeDependencies, 'dependencies', updateExistingDependencies);
60
+ addDependencies(projectPackageJson, devDependencies, 'devDependencies', updateExistingDependencies);
61
+ writeJson(tree, PACKAGE_JSON_PATH, projectPackageJson);
62
+ }
63
+ function collectPackageDependencies(dependencies, peerDependencies) {
64
+ return Object.assign(Object.assign({}, (peerDependencies !== null && peerDependencies !== void 0 ? peerDependencies : {})), (dependencies !== null && dependencies !== void 0 ? dependencies : {}));
65
+ }
66
+ function filterDependencies(dependencies, includeDevDependencies) {
67
+ return Object.keys(dependencies).reduce((result, name) => {
68
+ if (DEV_DEPENDENCY_NAMES.has(name) === includeDevDependencies) {
69
+ result[name] = dependencies[name];
70
+ }
71
+ return result;
72
+ }, {});
73
+ }
74
+ function addDependencies(projectPackageJson, dependencies, fallbackSection, updateExistingDependencies) {
75
+ Object.keys(dependencies).sort().forEach(name => {
76
+ if (name === packageJson.name) {
77
+ return;
78
+ }
79
+ const version = dependencies[name];
80
+ const existingSection = findDependencySection(projectPackageJson, name);
81
+ if (existingSection) {
82
+ if (updateExistingDependencies) {
83
+ projectPackageJson[existingSection][name] = version;
84
+ sortDependencySection(projectPackageJson, existingSection);
85
+ }
86
+ return;
87
+ }
88
+ if (!projectPackageJson[fallbackSection]) {
89
+ projectPackageJson[fallbackSection] = {};
90
+ }
91
+ projectPackageJson[fallbackSection][name] = version;
92
+ sortDependencySection(projectPackageJson, fallbackSection);
93
+ });
94
+ }
95
+ function findDependencySection(projectPackageJson, name) {
96
+ return DEPENDENCY_SECTIONS.find(section => { var _a; return ((_a = projectPackageJson[section]) === null || _a === void 0 ? void 0 : _a[name]) !== undefined; });
97
+ }
98
+ function sortDependencySection(projectPackageJson, section) {
99
+ const dependencies = projectPackageJson[section];
100
+ if (!dependencies) {
101
+ return;
102
+ }
103
+ projectPackageJson[section] = Object.keys(dependencies)
104
+ .sort()
105
+ .reduce((result, name) => {
106
+ result[name] = dependencies[name];
107
+ return result;
108
+ }, {});
109
+ }
110
+ function setupTailwindFiles(tree, context, projectName) {
111
+ var _a;
112
+ createPostcssConfig(tree, context);
113
+ if (!tree.exists(ANGULAR_JSON_PATH)) {
114
+ context.logger.warn('No angular.json found. Skipping global styles configuration.');
115
+ return;
116
+ }
117
+ const workspace = readJson(tree, ANGULAR_JSON_PATH);
118
+ const resolvedProjectName = resolveProjectName(workspace, projectName);
119
+ const project = (_a = workspace.projects) === null || _a === void 0 ? void 0 : _a[resolvedProjectName];
120
+ if (!project) {
121
+ throw new schematics_1.SchematicsException(`Project "${resolvedProjectName}" was not found in angular.json.`);
122
+ }
123
+ const buildOptions = getBuildOptions(project);
124
+ const stylePath = resolveGlobalStylePath(project, buildOptions);
125
+ const indexPath = resolveIndexHtmlPath(project, buildOptions);
126
+ const appConfigPath = resolveAppConfigPath(project);
127
+ ensureGlobalStyleFile(tree, stylePath);
128
+ ensureIndexGoogleFontsLink(tree, context, indexPath);
129
+ ensureAppConfigThemeProvider(tree, context, appConfigPath);
130
+ ensureProjectStyleEntry(buildOptions, stylePath);
131
+ writeJson(tree, ANGULAR_JSON_PATH, workspace);
132
+ }
133
+ function validateAngularVersion(tree) {
134
+ var _a;
135
+ const projectPackageJson = readJson(tree, PACKAGE_JSON_PATH);
136
+ const requiredAngularVersion = (_a = packageJson.peerDependencies) === null || _a === void 0 ? void 0 : _a['@angular/core'];
137
+ if (!requiredAngularVersion) {
138
+ return;
139
+ }
140
+ const projectAngularVersion = findDependencyVersion(projectPackageJson, '@angular/core');
141
+ if (!projectAngularVersion) {
142
+ throw new schematics_1.SchematicsException(`Required dependency "@angular/core" was not found in "${PACKAGE_JSON_PATH}".`);
143
+ }
144
+ const supportedMajors = getMajorVersions(requiredAngularVersion);
145
+ const projectMajor = getMajorVersion(projectAngularVersion);
146
+ if (supportedMajors.length === 0 || projectMajor === undefined) {
147
+ throw new schematics_1.SchematicsException(`Could not verify Angular compatibility. Required: ${requiredAngularVersion}, found: ${projectAngularVersion}.`);
148
+ }
149
+ if (!supportedMajors.includes(projectMajor)) {
150
+ throw new schematics_1.SchematicsException(`${packageJson.name} requires Angular ${requiredAngularVersion}, but the project uses @angular/core ${projectAngularVersion}. ` +
151
+ `Run "ng update @angular/core@${supportedMajors[0]} @angular/cli@${supportedMajors[0]}" before adding ${packageJson.name}.`);
152
+ }
153
+ }
154
+ function findDependencyVersion(projectPackageJson, name) {
155
+ var _a;
156
+ const section = findDependencySection(projectPackageJson, name);
157
+ const version = section ? (_a = projectPackageJson[section]) === null || _a === void 0 ? void 0 : _a[name] : undefined;
158
+ return typeof version === 'string' ? version : undefined;
159
+ }
160
+ function getMajorVersions(versionRange) {
161
+ const majors = new Set();
162
+ const matches = versionRange.matchAll(/(\d+)\.\d+\.\d+/g);
163
+ for (const match of matches) {
164
+ majors.add(Number(match[1]));
165
+ }
166
+ return [...majors].sort((a, b) => a - b);
167
+ }
168
+ function getMajorVersion(versionRange) {
169
+ return getMajorVersions(versionRange)[0];
170
+ }
171
+ function createPostcssConfig(tree, context) {
172
+ const hasPostcssConfig = POSTCSS_CONFIGS.some(path => tree.exists(path));
173
+ if (hasPostcssConfig) {
174
+ context.logger.info('Existing PostCSS configuration found. Skipping .postcssrc.json creation.');
175
+ return;
176
+ }
177
+ writeJson(tree, POSTCSS_CONFIG_PATH, {
178
+ plugins: {
179
+ '@tailwindcss/postcss': {},
180
+ },
181
+ });
182
+ }
183
+ function resolveProjectName(workspace, projectName) {
184
+ var _a;
185
+ if (projectName) {
186
+ return projectName;
187
+ }
188
+ if (workspace.defaultProject) {
189
+ return workspace.defaultProject;
190
+ }
191
+ const projects = (_a = workspace.projects) !== null && _a !== void 0 ? _a : {};
192
+ const applicationProject = Object.keys(projects).find(name => projects[name].projectType === 'application');
193
+ if (!applicationProject) {
194
+ throw new schematics_1.SchematicsException('No Angular application project was found in angular.json.');
195
+ }
196
+ return applicationProject;
197
+ }
198
+ function getBuildOptions(project) {
199
+ var _a, _b, _c;
200
+ const buildTarget = (_b = (_a = project.architect) === null || _a === void 0 ? void 0 : _a['build']) !== null && _b !== void 0 ? _b : (_c = project.targets) === null || _c === void 0 ? void 0 : _c['build'];
201
+ const options = buildTarget === null || buildTarget === void 0 ? void 0 : buildTarget['options'];
202
+ if (!options) {
203
+ throw new schematics_1.SchematicsException('The selected project does not have build options in angular.json.');
204
+ }
205
+ return options;
206
+ }
207
+ function resolveGlobalStylePath(project, buildOptions) {
208
+ const styles = Array.isArray(buildOptions['styles']) ? buildOptions['styles'] : [];
209
+ const firstStylePath = styles.reduce((result, style) => {
210
+ if (result) {
211
+ return result;
212
+ }
213
+ if (typeof style === 'string') {
214
+ return style;
215
+ }
216
+ if (style && typeof style === 'object' && typeof style['input'] === 'string') {
217
+ return style['input'];
218
+ }
219
+ return undefined;
220
+ }, undefined);
221
+ if (firstStylePath) {
222
+ const stylePath = normalizeWorkspacePath(firstStylePath);
223
+ assertScssStylePath(stylePath);
224
+ return stylePath;
225
+ }
226
+ const sourceRoot = project.sourceRoot || joinWorkspacePath(project.root || '', 'src');
227
+ const stylePath = normalizeWorkspacePath(joinWorkspacePath(sourceRoot, 'styles.scss'));
228
+ assertScssStylePath(stylePath);
229
+ return stylePath;
230
+ }
231
+ function resolveIndexHtmlPath(project, buildOptions) {
232
+ const index = buildOptions['index'];
233
+ if (typeof index === 'string') {
234
+ return normalizeWorkspacePath(index);
235
+ }
236
+ if (index && typeof index === 'object' && typeof index['input'] === 'string') {
237
+ return normalizeWorkspacePath(index['input']);
238
+ }
239
+ const sourceRoot = project.sourceRoot || joinWorkspacePath(project.root || '', 'src');
240
+ return normalizeWorkspacePath(joinWorkspacePath(sourceRoot, 'index.html'));
241
+ }
242
+ function resolveAppConfigPath(project) {
243
+ const sourceRoot = project.sourceRoot || joinWorkspacePath(project.root || '', 'src');
244
+ return normalizeWorkspacePath(joinWorkspacePath(sourceRoot, 'app/app.config.ts'));
245
+ }
246
+ function assertScssStylePath(stylePath) {
247
+ if (stylePath.endsWith('.scss')) {
248
+ return;
249
+ }
250
+ throw new schematics_1.SchematicsException(`${packageJson.name} supports only SCSS global styles. The selected project uses "${stylePath}". ` +
251
+ 'Switch the project global style file to styles.scss and retry.');
252
+ }
253
+ function ensureIndexGoogleFontsLink(tree, context, indexPath) {
254
+ if (!tree.exists(indexPath)) {
255
+ context.logger.warn(`Index file "${indexPath}" was not found. Skipping Google Fonts setup.`);
256
+ return;
257
+ }
258
+ const content = readText(tree, indexPath);
259
+ if (GOOGLE_FONTS_HREF_PATTERN.test(content)) {
260
+ return;
261
+ }
262
+ const headMatch = /([ \t]*)<\/head>/i.exec(content);
263
+ const nextContent = headMatch
264
+ ? content.replace(/([ \t]*)<\/head>/i, (_match, indent, offset) => {
265
+ const needsLeadingNewline = !content.slice(0, offset).endsWith('\n');
266
+ return `${needsLeadingNewline ? '\n' : ''}${indent} ${GOOGLE_FONTS_LINK}\n${indent}</head>`;
267
+ })
268
+ : `${content.trimEnd()}\n${GOOGLE_FONTS_LINK}\n`;
269
+ tree.overwrite(indexPath, nextContent);
270
+ }
271
+ function ensureAppConfigThemeProvider(tree, context, appConfigPath) {
272
+ if (!tree.exists(appConfigPath)) {
273
+ context.logger.warn(`App config "${appConfigPath}" was not found. Skipping NgStarter theme provider setup.`);
274
+ return;
275
+ }
276
+ const content = readText(tree, appConfigPath);
277
+ if (/provideNgsTheme\s*\(/.test(content)) {
278
+ return;
279
+ }
280
+ if (!/providers\s*:\s*\[/.test(content)) {
281
+ context.logger.warn(`No providers array found in "${appConfigPath}". Skipping NgStarter theme provider setup.`);
282
+ return;
283
+ }
284
+ const nextContent = insertThemeProvider(addCoreImport(content));
285
+ tree.overwrite(appConfigPath, nextContent);
286
+ }
287
+ function addCoreImport(content) {
288
+ var _a;
289
+ const coreImport = /import\s*\{([\s\S]*?)\}\s*from\s*['"]@ngstarter-ui\/components\/core['"];?/m;
290
+ const match = coreImport.exec(content);
291
+ if (match) {
292
+ const imports = match[1]
293
+ .split(',')
294
+ .map(item => item.trim())
295
+ .filter(Boolean);
296
+ if (!imports.includes('provideNgsTheme')) {
297
+ imports.push('provideNgsTheme');
298
+ }
299
+ return content.replace(coreImport, `import { ${imports.sort().join(', ')} } from '@ngstarter-ui/components/core';`);
300
+ }
301
+ const importStatement = `import { provideNgsTheme } from '@ngstarter-ui/components/core';`;
302
+ const imports = [...content.matchAll(/import[\s\S]*?from\s*['"][^'"]+['"];?/g)];
303
+ const lastImport = imports[imports.length - 1];
304
+ if (!lastImport) {
305
+ return `${importStatement}\n${content}`;
306
+ }
307
+ const insertIndex = ((_a = lastImport.index) !== null && _a !== void 0 ? _a : 0) + lastImport[0].length;
308
+ return `${content.slice(0, insertIndex)}\n${importStatement}${content.slice(insertIndex)}`;
309
+ }
310
+ function insertThemeProvider(content) {
311
+ return content.replace(/(\n([ \t]*)providers\s*:\s*\[)([ \t]*)(\r?\n)?/, (_match, start, indent) => {
312
+ const providerIndent = `${indent} `;
313
+ return `${start}\n${indentBlock(NGS_THEME_PROVIDER, providerIndent)}\n`;
314
+ });
315
+ }
316
+ function indentBlock(value, indent) {
317
+ return value
318
+ .split('\n')
319
+ .map(line => `${indent}${line}`)
320
+ .join('\n');
321
+ }
322
+ function ensureGlobalStyleFile(tree, stylePath) {
323
+ const content = tree.exists(stylePath) ? readText(tree, stylePath) : '';
324
+ const imports = [
325
+ {
326
+ needle: /@use\s+["']@ngstarter-ui\/components\/styles\/themes\/[^"']+["'];?/,
327
+ statement: NGS_THEME_IMPORT,
328
+ },
329
+ ];
330
+ const missingImports = imports
331
+ .filter(item => !item.needle.test(content))
332
+ .map(item => item.statement);
333
+ if (tree.exists(stylePath) && missingImports.length === 0) {
334
+ return;
335
+ }
336
+ const nextContent = [
337
+ ...missingImports,
338
+ content.trimStart(),
339
+ ].filter(Boolean).join('\n');
340
+ if (tree.exists(stylePath)) {
341
+ tree.overwrite(stylePath, nextContent.endsWith('\n') ? nextContent : `${nextContent}\n`);
342
+ }
343
+ else {
344
+ tree.create(stylePath, `${nextContent}\n`);
345
+ }
346
+ }
347
+ function ensureProjectStyleEntry(buildOptions, stylePath) {
348
+ const styles = Array.isArray(buildOptions['styles']) ? buildOptions['styles'] : [];
349
+ const hasStyle = styles.some((style) => {
350
+ if (typeof style === 'string') {
351
+ return normalizeWorkspacePath(style) === stylePath;
352
+ }
353
+ if (style && typeof style === 'object' && typeof style['input'] === 'string') {
354
+ return normalizeWorkspacePath(style['input']) === stylePath;
355
+ }
356
+ return false;
357
+ });
358
+ if (!hasStyle) {
359
+ styles.unshift(stylePath);
360
+ }
361
+ buildOptions['styles'] = styles;
362
+ }
363
+ function readJson(tree, path) {
364
+ if (!tree.exists(path)) {
365
+ throw new schematics_1.SchematicsException(`Required file "${path}" was not found.`);
366
+ }
367
+ try {
368
+ return JSON.parse(readText(tree, path));
369
+ }
370
+ catch (error) {
371
+ throw new schematics_1.SchematicsException(`Could not parse "${path}": ${error instanceof Error ? error.message : error}`);
372
+ }
373
+ }
374
+ function writeJson(tree, path, value) {
375
+ const content = `${JSON.stringify(value, null, 2)}\n`;
376
+ if (tree.exists(path)) {
377
+ tree.overwrite(path, content);
378
+ }
379
+ else {
380
+ tree.create(path, content);
381
+ }
382
+ }
383
+ function readText(tree, path) {
384
+ const buffer = tree.read(path);
385
+ if (!buffer) {
386
+ throw new schematics_1.SchematicsException(`Could not read "${path}".`);
387
+ }
388
+ return buffer.toString('utf-8');
389
+ }
390
+ function normalizeWorkspacePath(path) {
391
+ return path.replace(/\\/g, '/').replace(/^\/+/, '');
392
+ }
393
+ function joinWorkspacePath(...parts) {
394
+ return parts
395
+ .filter(Boolean)
396
+ .join('/')
397
+ .replace(/\/+/g, '/')
398
+ .replace(/^\/+/, '');
399
+ }
400
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../projects/components/schematics/utils.ts"],"names":[],"mappings":"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"}