@semantic-components/ui 0.66.0 → 0.67.0

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 (168) hide show
  1. package/esm2022/lib/components/file-upload/file-upload-dropzone.js +91 -0
  2. package/esm2022/lib/components/file-upload/file-upload-dropzone.js.map +1 -0
  3. package/esm2022/lib/components/file-upload/file-upload-item-delete.js +29 -0
  4. package/esm2022/lib/components/file-upload/file-upload-item-delete.js.map +1 -0
  5. package/esm2022/lib/components/file-upload/file-upload-item-name.js +20 -0
  6. package/esm2022/lib/components/file-upload/file-upload-item-name.js.map +1 -0
  7. package/esm2022/lib/components/file-upload/file-upload-item-preview.js +51 -0
  8. package/esm2022/lib/components/file-upload/file-upload-item-preview.js.map +1 -0
  9. package/esm2022/lib/components/file-upload/file-upload-item-progress.js +34 -0
  10. package/esm2022/lib/components/file-upload/file-upload-item-progress.js.map +1 -0
  11. package/esm2022/lib/components/file-upload/file-upload-item-size.js +37 -0
  12. package/esm2022/lib/components/file-upload/file-upload-item-size.js.map +1 -0
  13. package/esm2022/lib/components/file-upload/file-upload-item.js +29 -0
  14. package/esm2022/lib/components/file-upload/file-upload-item.js.map +1 -0
  15. package/esm2022/lib/components/file-upload/file-upload-list.js +20 -0
  16. package/esm2022/lib/components/file-upload/file-upload-list.js.map +1 -0
  17. package/esm2022/lib/components/file-upload/file-upload-trigger.js +66 -0
  18. package/esm2022/lib/components/file-upload/file-upload-trigger.js.map +1 -0
  19. package/esm2022/lib/components/file-upload/file-upload.js +118 -0
  20. package/esm2022/lib/components/file-upload/file-upload.js.map +1 -0
  21. package/esm2022/lib/components/file-upload/index.js +11 -0
  22. package/esm2022/lib/components/file-upload/index.js.map +1 -0
  23. package/esm2022/lib/components/index.js +6 -0
  24. package/esm2022/lib/components/index.js.map +1 -1
  25. package/esm2022/lib/components/menu-bar/menu-bar-item.js +12 -4
  26. package/esm2022/lib/components/menu-bar/menu-bar-item.js.map +1 -1
  27. package/esm2022/lib/components/native-select/index.js +6 -0
  28. package/esm2022/lib/components/native-select/index.js.map +1 -0
  29. package/esm2022/lib/components/native-select/native-select-container.js +20 -0
  30. package/esm2022/lib/components/native-select/native-select-container.js.map +1 -0
  31. package/esm2022/lib/components/native-select/native-select-icon.js +20 -0
  32. package/esm2022/lib/components/native-select/native-select-icon.js.map +1 -0
  33. package/esm2022/lib/components/native-select/native-select-optgroup.js +20 -0
  34. package/esm2022/lib/components/native-select/native-select-optgroup.js.map +1 -0
  35. package/esm2022/lib/components/native-select/native-select-option.js +20 -0
  36. package/esm2022/lib/components/native-select/native-select-option.js.map +1 -0
  37. package/esm2022/lib/components/native-select/native-select.js +29 -0
  38. package/esm2022/lib/components/native-select/native-select.js.map +1 -0
  39. package/esm2022/lib/components/navigation-menu/index.js +8 -0
  40. package/esm2022/lib/components/navigation-menu/index.js.map +1 -0
  41. package/esm2022/lib/components/navigation-menu/navigation-menu-content.js +37 -0
  42. package/esm2022/lib/components/navigation-menu/navigation-menu-content.js.map +1 -0
  43. package/esm2022/lib/components/navigation-menu/navigation-menu-item.js +118 -0
  44. package/esm2022/lib/components/navigation-menu/navigation-menu-item.js.map +1 -0
  45. package/esm2022/lib/components/navigation-menu/navigation-menu-link.js +22 -0
  46. package/esm2022/lib/components/navigation-menu/navigation-menu-link.js.map +1 -0
  47. package/esm2022/lib/components/navigation-menu/navigation-menu-list.js +20 -0
  48. package/esm2022/lib/components/navigation-menu/navigation-menu-list.js.map +1 -0
  49. package/esm2022/lib/components/navigation-menu/navigation-menu-portal.js +14 -0
  50. package/esm2022/lib/components/navigation-menu/navigation-menu-portal.js.map +1 -0
  51. package/esm2022/lib/components/navigation-menu/navigation-menu-trigger-icon.js +22 -0
  52. package/esm2022/lib/components/navigation-menu/navigation-menu-trigger-icon.js.map +1 -0
  53. package/esm2022/lib/components/navigation-menu/navigation-menu-trigger.js +41 -0
  54. package/esm2022/lib/components/navigation-menu/navigation-menu-trigger.js.map +1 -0
  55. package/esm2022/lib/components/navigation-menu/navigation-menu.js +32 -0
  56. package/esm2022/lib/components/navigation-menu/navigation-menu.js.map +1 -0
  57. package/esm2022/lib/components/range-slider/index.js +4 -0
  58. package/esm2022/lib/components/range-slider/index.js.map +1 -0
  59. package/esm2022/lib/components/range-slider/range-slider-max.js +38 -0
  60. package/esm2022/lib/components/range-slider/range-slider-max.js.map +1 -0
  61. package/esm2022/lib/components/range-slider/range-slider-min.js +38 -0
  62. package/esm2022/lib/components/range-slider/range-slider-min.js.map +1 -0
  63. package/esm2022/lib/components/range-slider/range-slider-thumb-base.js +24 -0
  64. package/esm2022/lib/components/range-slider/range-slider-thumb-base.js.map +1 -0
  65. package/esm2022/lib/components/range-slider/range-slider.js +62 -0
  66. package/esm2022/lib/components/range-slider/range-slider.js.map +1 -0
  67. package/esm2022/lib/components/select/index.js +5 -1
  68. package/esm2022/lib/components/select/index.js.map +1 -1
  69. package/esm2022/lib/components/select/select-group-label.js +28 -0
  70. package/esm2022/lib/components/select/select-group-label.js.map +1 -0
  71. package/esm2022/lib/components/select/select-group.js +28 -0
  72. package/esm2022/lib/components/select/select-group.js.map +1 -0
  73. package/esm2022/lib/components/select/{select-icon.js → select-item-icon.js} +7 -7
  74. package/esm2022/lib/components/select/select-item-icon.js.map +1 -0
  75. package/esm2022/lib/components/select/select-list.js +1 -5
  76. package/esm2022/lib/components/select/select-list.js.map +1 -1
  77. package/esm2022/lib/components/select/select-popup.js +32 -0
  78. package/esm2022/lib/components/select/select-popup.js.map +1 -0
  79. package/esm2022/lib/components/select/select-separator.js +22 -0
  80. package/esm2022/lib/components/select/select-separator.js.map +1 -0
  81. package/esm2022/lib/components/select/select-trigger-icon.js +4 -2
  82. package/esm2022/lib/components/select/select-trigger-icon.js.map +1 -1
  83. package/esm2022/lib/components/select/select-trigger.js +4 -7
  84. package/esm2022/lib/components/select/select-trigger.js.map +1 -1
  85. package/esm2022/lib/components/select/select.js +6 -5
  86. package/esm2022/lib/components/select/select.js.map +1 -1
  87. package/esm2022/lib/components/slider/index.js +2 -0
  88. package/esm2022/lib/components/slider/index.js.map +1 -0
  89. package/esm2022/lib/components/slider/slider.js +46 -0
  90. package/esm2022/lib/components/slider/slider.js.map +1 -0
  91. package/esm2022/lib/components/time-picker/index.js +10 -0
  92. package/esm2022/lib/components/time-picker/index.js.map +1 -0
  93. package/esm2022/lib/components/time-picker/time-picker-hours-input.js +67 -0
  94. package/esm2022/lib/components/time-picker/time-picker-hours-input.js.map +1 -0
  95. package/esm2022/lib/components/time-picker/time-picker-input.js +26 -0
  96. package/esm2022/lib/components/time-picker/time-picker-input.js.map +1 -0
  97. package/esm2022/lib/components/time-picker/time-picker-minutes-input.js +57 -0
  98. package/esm2022/lib/components/time-picker/time-picker-minutes-input.js.map +1 -0
  99. package/esm2022/lib/components/time-picker/time-picker-period-am.js +26 -0
  100. package/esm2022/lib/components/time-picker/time-picker-period-am.js.map +1 -0
  101. package/esm2022/lib/components/time-picker/time-picker-period-pm.js +26 -0
  102. package/esm2022/lib/components/time-picker/time-picker-period-pm.js.map +1 -0
  103. package/esm2022/lib/components/time-picker/time-picker-period.js +46 -0
  104. package/esm2022/lib/components/time-picker/time-picker-period.js.map +1 -0
  105. package/esm2022/lib/components/time-picker/time-picker-seconds-input.js +57 -0
  106. package/esm2022/lib/components/time-picker/time-picker-seconds-input.js.map +1 -0
  107. package/esm2022/lib/components/time-picker/time-picker-separator.js +20 -0
  108. package/esm2022/lib/components/time-picker/time-picker-separator.js.map +1 -0
  109. package/esm2022/lib/components/time-picker/time-picker.js +58 -0
  110. package/esm2022/lib/components/time-picker/time-picker.js.map +1 -0
  111. package/lib/components/file-upload/file-upload-dropzone.d.ts +15 -0
  112. package/lib/components/file-upload/file-upload-item-delete.d.ts +10 -0
  113. package/lib/components/file-upload/file-upload-item-name.d.ts +7 -0
  114. package/lib/components/file-upload/file-upload-item-preview.d.ts +11 -0
  115. package/lib/components/file-upload/file-upload-item-progress.d.ts +9 -0
  116. package/lib/components/file-upload/file-upload-item-size.d.ts +10 -0
  117. package/lib/components/file-upload/file-upload-item.d.ts +9 -0
  118. package/lib/components/file-upload/file-upload-list.d.ts +7 -0
  119. package/lib/components/file-upload/file-upload-trigger.d.ts +11 -0
  120. package/lib/components/file-upload/file-upload.d.ts +32 -0
  121. package/lib/components/file-upload/index.d.ts +11 -0
  122. package/lib/components/index.d.ts +6 -0
  123. package/lib/components/menu-bar/menu-bar-item.d.ts +1 -0
  124. package/lib/components/native-select/index.d.ts +5 -0
  125. package/lib/components/native-select/native-select-container.d.ts +7 -0
  126. package/lib/components/native-select/native-select-icon.d.ts +7 -0
  127. package/lib/components/native-select/native-select-optgroup.d.ts +7 -0
  128. package/lib/components/native-select/native-select-option.d.ts +7 -0
  129. package/lib/components/native-select/native-select.d.ts +12 -0
  130. package/lib/components/navigation-menu/index.d.ts +7 -0
  131. package/lib/components/navigation-menu/navigation-menu-content.d.ts +10 -0
  132. package/lib/components/navigation-menu/navigation-menu-item.d.ts +27 -0
  133. package/lib/components/navigation-menu/navigation-menu-link.d.ts +8 -0
  134. package/lib/components/navigation-menu/navigation-menu-list.d.ts +7 -0
  135. package/lib/components/navigation-menu/navigation-menu-portal.d.ts +7 -0
  136. package/lib/components/navigation-menu/navigation-menu-trigger-icon.d.ts +8 -0
  137. package/lib/components/navigation-menu/navigation-menu-trigger.d.ts +12 -0
  138. package/lib/components/navigation-menu/navigation-menu.d.ts +10 -0
  139. package/lib/components/range-slider/index.d.ts +3 -0
  140. package/lib/components/range-slider/range-slider-max.d.ts +10 -0
  141. package/lib/components/range-slider/range-slider-min.d.ts +10 -0
  142. package/lib/components/range-slider/range-slider-thumb-base.d.ts +2 -0
  143. package/lib/components/range-slider/range-slider.d.ts +21 -0
  144. package/lib/components/select/index.d.ts +5 -1
  145. package/lib/components/select/select-group-label.d.ts +7 -0
  146. package/lib/components/select/select-group.d.ts +7 -0
  147. package/lib/components/select/select-item-icon.d.ts +7 -0
  148. package/lib/components/select/select-list.d.ts +0 -1
  149. package/lib/components/select/select-popup.d.ts +8 -0
  150. package/lib/components/select/select-separator.d.ts +7 -0
  151. package/lib/components/select/select-trigger-icon.d.ts +1 -0
  152. package/lib/components/select/select-trigger.d.ts +3 -4
  153. package/lib/components/select/select.d.ts +3 -2
  154. package/lib/components/slider/index.d.ts +1 -0
  155. package/lib/components/slider/slider.d.ts +15 -0
  156. package/lib/components/time-picker/index.d.ts +10 -0
  157. package/lib/components/time-picker/time-picker-hours-input.d.ts +14 -0
  158. package/lib/components/time-picker/time-picker-input.d.ts +9 -0
  159. package/lib/components/time-picker/time-picker-minutes-input.d.ts +12 -0
  160. package/lib/components/time-picker/time-picker-period-am.d.ts +8 -0
  161. package/lib/components/time-picker/time-picker-period-pm.d.ts +8 -0
  162. package/lib/components/time-picker/time-picker-period.d.ts +12 -0
  163. package/lib/components/time-picker/time-picker-seconds-input.d.ts +12 -0
  164. package/lib/components/time-picker/time-picker-separator.d.ts +7 -0
  165. package/lib/components/time-picker/time-picker.d.ts +26 -0
  166. package/package.json +1 -1
  167. package/esm2022/lib/components/select/select-icon.js.map +0 -1
  168. package/lib/components/select/select-icon.d.ts +0 -7
@@ -0,0 +1,11 @@
1
+ export { SC_FILE_UPLOAD, ScFileUpload } from './file-upload';
2
+ export { ScFileUploadDropzone } from './file-upload-dropzone';
3
+ export { ScFileUploadTrigger } from './file-upload-trigger';
4
+ export { ScFileUploadList } from './file-upload-list';
5
+ export { ScFileUploadItem } from './file-upload-item';
6
+ export { ScFileUploadItemPreview } from './file-upload-item-preview';
7
+ export { ScFileUploadItemName } from './file-upload-item-name';
8
+ export { ScFileUploadItemSize } from './file-upload-item-size';
9
+ export { ScFileUploadItemDelete } from './file-upload-item-delete';
10
+ export { ScFileUploadItemProgress } from './file-upload-item-progress';
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../libs/ui/src/lib/components/file-upload/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAC","sourcesContent":["export { SC_FILE_UPLOAD, ScFileUpload } from './file-upload';\nexport type { ScFileUploadFile } from './file-upload';\nexport { ScFileUploadDropzone } from './file-upload-dropzone';\nexport { ScFileUploadTrigger } from './file-upload-trigger';\nexport { ScFileUploadList } from './file-upload-list';\nexport { ScFileUploadItem } from './file-upload-item';\nexport { ScFileUploadItemPreview } from './file-upload-item-preview';\nexport { ScFileUploadItemName } from './file-upload-item-name';\nexport { ScFileUploadItemSize } from './file-upload-item-size';\nexport { ScFileUploadItemDelete } from './file-upload-item-delete';\nexport { ScFileUploadItemProgress } from './file-upload-item-progress';\n"]}
@@ -17,6 +17,7 @@ export * from './dialog';
17
17
  export * from './drawer';
18
18
  export * from './empty';
19
19
  export * from './field';
20
+ export * from './file-upload';
20
21
  export * from './hover-card';
21
22
  export * from './input';
22
23
  export * from './input-group';
@@ -26,6 +27,8 @@ export * from './label';
26
27
  export * from './link';
27
28
  export * from './menu';
28
29
  export * from './menu-bar';
30
+ export * from './native-select';
31
+ export * from './navigation-menu';
29
32
  export * from './pagination';
30
33
  export * from './popover';
31
34
  export * from './progress';
@@ -34,8 +37,11 @@ export * from './select';
34
37
  export * from './separator';
35
38
  export * from './sheet';
36
39
  export * from './skeleton';
40
+ export * from './range-slider';
41
+ export * from './slider';
37
42
  export * from './spinner';
38
43
  export * from './switch';
44
+ export * from './time-picker';
39
45
  export * from './table';
40
46
  export * from './tabs';
41
47
  export * from './textarea';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../libs/ui/src/lib/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,QAAQ,CAAC;AACvB,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,eAAe,CAAC;AAC9B,cAAc,QAAQ,CAAC;AACvB,cAAc,OAAO,CAAC;AACtB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC","sourcesContent":["export * from './accordion';\nexport * from './alert';\nexport * from './alert-dialog';\nexport * from './aspect-ratio';\nexport * from './avatar';\nexport * from './backdrop';\nexport * from './badge';\nexport * from './breadcrumb';\nexport * from './button';\nexport * from './button-group';\nexport * from './calendar';\nexport * from './card';\nexport * from './collapsible';\nexport * from './checkbox';\nexport * from './date-picker';\nexport * from './dialog';\nexport * from './drawer';\nexport * from './empty';\nexport * from './field';\nexport * from './hover-card';\nexport * from './input';\nexport * from './input-group';\nexport * from './item';\nexport * from './kbd';\nexport * from './label';\nexport * from './link';\nexport * from './menu';\nexport * from './menu-bar';\nexport * from './pagination';\nexport * from './popover';\nexport * from './progress';\nexport * from './radio-group';\nexport * from './select';\nexport * from './separator';\nexport * from './sheet';\nexport * from './skeleton';\nexport * from './spinner';\nexport * from './switch';\nexport * from './table';\nexport * from './tabs';\nexport * from './textarea';\nexport * from './toggle';\nexport * from './toggle-group';\nexport * from './toolbar';\nexport * from './toast';\nexport * from './tooltip';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../libs/ui/src/lib/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,QAAQ,CAAC;AACvB,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,eAAe,CAAC;AAC9B,cAAc,QAAQ,CAAC;AACvB,cAAc,OAAO,CAAC;AACtB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC","sourcesContent":["export * from './accordion';\nexport * from './alert';\nexport * from './alert-dialog';\nexport * from './aspect-ratio';\nexport * from './avatar';\nexport * from './backdrop';\nexport * from './badge';\nexport * from './breadcrumb';\nexport * from './button';\nexport * from './button-group';\nexport * from './calendar';\nexport * from './card';\nexport * from './collapsible';\nexport * from './checkbox';\nexport * from './date-picker';\nexport * from './dialog';\nexport * from './drawer';\nexport * from './empty';\nexport * from './field';\nexport * from './file-upload';\nexport * from './hover-card';\nexport * from './input';\nexport * from './input-group';\nexport * from './item';\nexport * from './kbd';\nexport * from './label';\nexport * from './link';\nexport * from './menu';\nexport * from './menu-bar';\nexport * from './native-select';\nexport * from './navigation-menu';\nexport * from './pagination';\nexport * from './popover';\nexport * from './progress';\nexport * from './radio-group';\nexport * from './select';\nexport * from './separator';\nexport * from './sheet';\nexport * from './skeleton';\nexport * from './range-slider';\nexport * from './slider';\nexport * from './spinner';\nexport * from './switch';\nexport * from './time-picker';\nexport * from './table';\nexport * from './tabs';\nexport * from './textarea';\nexport * from './toggle';\nexport * from './toggle-group';\nexport * from './toolbar';\nexport * from './toast';\nexport * from './tooltip';\n"]}
@@ -1,6 +1,6 @@
1
- import { ChangeDetectionStrategy, Component, computed, contentChild, effect, inject, input, ViewEncapsulation, } from '@angular/core';
1
+ import { ChangeDetectionStrategy, Component, computed, contentChild, effect, inject, input, viewChild, ViewEncapsulation, } from '@angular/core';
2
2
  import { NgTemplateOutlet } from '@angular/common';
3
- import { CdkOverlayOrigin, OverlayModule } from '@angular/cdk/overlay';
3
+ import { CdkConnectedOverlay, CdkOverlayOrigin, OverlayModule, } from '@angular/cdk/overlay';
4
4
  import { MenuItem } from '@angular/aria/menu';
5
5
  import { SIGNAL, signalSetFn } from '@angular/core/primitives/signals';
6
6
  import { cn } from '../../utils';
@@ -14,6 +14,7 @@ export class ScMenuBarItem {
14
14
  overlayOrigin = inject(CdkOverlayOrigin);
15
15
  menuItem = inject(MenuItem);
16
16
  submenuPortal = contentChild(ScMenuPortal, ...(ngDevMode ? [{ debugName: "submenuPortal" }] : []));
17
+ connectedOverlay = viewChild(CdkConnectedOverlay, ...(ngDevMode ? [{ debugName: "connectedOverlay" }] : []));
17
18
  scMenuBar = inject(ScMenuBar);
18
19
  rendered = computed(() => this.scMenuBar.rendered(), ...(ngDevMode ? [{ debugName: "rendered" }] : []));
19
20
  class = computed(() => cn('flex items-center rounded-sm px-2 py-0.5 text-sm font-medium outline-hidden select-none cursor-default hover:bg-muted aria-expanded:bg-muted focus-visible:outline-2 focus-visible:outline-ring', this.classInput()), ...(ngDevMode ? [{ debugName: "class" }] : []));
@@ -24,9 +25,16 @@ export class ScMenuBarItem {
24
25
  signalSetFn(this.menuItem.submenu[SIGNAL], menu);
25
26
  }
26
27
  });
28
+ // Force overlay to recalculate position when menu item expands
29
+ effect(() => {
30
+ const expanded = this.menuItem.expanded();
31
+ if (expanded) {
32
+ this.connectedOverlay()?.overlayRef?.updatePosition();
33
+ }
34
+ });
27
35
  }
28
36
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: ScMenuBarItem, deps: [], target: i0.ɵɵFactoryTarget.Component });
29
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.5", type: ScMenuBarItem, isStandalone: true, selector: "[scMenuBarItem]", inputs: { classInput: { classPropertyName: "classInput", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-slot": "menu-bar-item" }, properties: { "class": "class()" } }, queries: [{ propertyName: "submenuPortal", first: true, predicate: ScMenuPortal, descendants: true, isSignal: true }], exportAs: ["scMenuBarItem"], hostDirectives: [{ directive: i1.MenuItem, inputs: ["id", "id", "value", "value", "disabled", "disabled"] }, { directive: i2.CdkOverlayOrigin }], ngImport: i0, template: `
37
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.5", type: ScMenuBarItem, isStandalone: true, selector: "[scMenuBarItem]", inputs: { classInput: { classPropertyName: "classInput", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-slot": "menu-bar-item" }, properties: { "class": "class()" } }, queries: [{ propertyName: "submenuPortal", first: true, predicate: ScMenuPortal, descendants: true, isSignal: true }], viewQueries: [{ propertyName: "connectedOverlay", first: true, predicate: CdkConnectedOverlay, descendants: true, isSignal: true }], exportAs: ["scMenuBarItem"], hostDirectives: [{ directive: i1.MenuItem, inputs: ["id", "id", "value", "value", "disabled", "disabled"] }, { directive: i2.CdkOverlayOrigin }], ngImport: i0, template: `
30
38
  <ng-content />
31
39
 
32
40
  @if (submenuPortal(); as portal) {
@@ -91,5 +99,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImpor
91
99
  encapsulation: ViewEncapsulation.None,
92
100
  changeDetection: ChangeDetectionStrategy.OnPush,
93
101
  }]
94
- }], ctorParameters: () => [], propDecorators: { classInput: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }], submenuPortal: [{ type: i0.ContentChild, args: [i0.forwardRef(() => ScMenuPortal), { isSignal: true }] }] } });
102
+ }], ctorParameters: () => [], propDecorators: { classInput: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }], submenuPortal: [{ type: i0.ContentChild, args: [i0.forwardRef(() => ScMenuPortal), { isSignal: true }] }], connectedOverlay: [{ type: i0.ViewChild, args: [i0.forwardRef(() => CdkConnectedOverlay), { isSignal: true }] }] } });
95
103
  //# sourceMappingURL=menu-bar-item.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"menu-bar-item.js","sourceRoot":"","sources":["../../../../../../../libs/ui/src/lib/components/menu-bar/menu-bar-item.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,SAAS,EACT,QAAQ,EACR,YAAY,EACZ,MAAM,EACN,MAAM,EACN,KAAK,EACL,iBAAiB,GAClB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACvE,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;;;;AA0CvC,MAAM,OAAO,aAAa;IACf,UAAU,GAAG,KAAK,CAAS,EAAE,uDAAI,KAAK,EAAE,OAAO,GAAG,CAAC;IACnD,aAAa,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;IACjC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC1B,aAAa,GAAG,YAAY,CAAC,YAAY,yDAAC,CAAC;IAE7C,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;IAE5B,QAAQ,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,oDAAC,CAAC;IAErD,KAAK,GAAG,QAAQ,CAAC,GAAG,EAAE,CACvC,EAAE,CACA,iMAAiM,EACjM,IAAI,CAAC,UAAU,EAAE,CAClB,iDACF,CAAC;IAEF;QACE,MAAM,CAAC,GAAG,EAAE;YACV,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,EAAE,EAAE,IAAI,EAAE,CAAC;YAC1C,IAAI,IAAI,EAAE,CAAC;gBACT,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC;YACnD,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;uGAxBU,aAAa;2FAAb,aAAa,gWAIwB,YAAY,+OAjClD;;;;;;;;;;;;;;;;;;;;;GAqBT,2DA7BS,aAAa,0nCAAE,gBAAgB;;2FAqC9B,aAAa;kBAxCzB,SAAS;mBAAC;oBACT,QAAQ,EAAE,iBAAiB;oBAC3B,QAAQ,EAAE,eAAe;oBACzB,OAAO,EAAE,CAAC,aAAa,EAAE,gBAAgB,CAAC;oBAC1C,cAAc,EAAE;wBACd;4BACE,SAAS,EAAE,QAAQ;4BACnB,MAAM,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,CAAC;yBACpC;wBACD,gBAAgB;qBACjB;oBACD,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;GAqBT;oBACD,IAAI,EAAE;wBACJ,WAAW,EAAE,eAAe;wBAC5B,SAAS,EAAE,SAAS;qBACrB;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,eAAe,EAAE,uBAAuB,CAAC,MAAM;iBAChD;2NAKiD,YAAY","sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n computed,\n contentChild,\n effect,\n inject,\n input,\n ViewEncapsulation,\n} from '@angular/core';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { CdkOverlayOrigin, OverlayModule } from '@angular/cdk/overlay';\nimport { MenuItem } from '@angular/aria/menu';\nimport { SIGNAL, signalSetFn } from '@angular/core/primitives/signals';\nimport { cn } from '../../utils';\nimport { ScMenuPortal } from '../menu';\nimport { ScMenuBar } from './menu-bar';\n\n@Component({\n selector: '[scMenuBarItem]',\n exportAs: 'scMenuBarItem',\n imports: [OverlayModule, NgTemplateOutlet],\n hostDirectives: [\n {\n directive: MenuItem,\n inputs: ['id', 'value', 'disabled'],\n },\n CdkOverlayOrigin,\n ],\n template: `\n <ng-content />\n\n @if (submenuPortal(); as portal) {\n <ng-template\n [cdkConnectedOverlayOpen]=\"rendered()\"\n [cdkConnectedOverlay]=\"{ origin: overlayOrigin, usePopover: 'inline' }\"\n [cdkConnectedOverlayPositions]=\"[\n {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'top',\n offsetY: 4,\n },\n ]\"\n cdkAttachPopoverAsChild\n >\n <ng-container [ngTemplateOutlet]=\"portal.templateRef\" />\n </ng-template>\n }\n `,\n host: {\n 'data-slot': 'menu-bar-item',\n '[class]': 'class()',\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ScMenuBarItem {\n readonly classInput = input<string>('', { alias: 'class' });\n readonly overlayOrigin = inject(CdkOverlayOrigin);\n private readonly menuItem = inject(MenuItem);\n protected readonly submenuPortal = contentChild(ScMenuPortal);\n\n private readonly scMenuBar = inject(ScMenuBar);\n\n protected readonly rendered = computed(() => this.scMenuBar.rendered());\n\n protected readonly class = computed(() =>\n cn(\n 'flex items-center rounded-sm px-2 py-0.5 text-sm font-medium outline-hidden select-none cursor-default hover:bg-muted aria-expanded:bg-muted focus-visible:outline-2 focus-visible:outline-ring',\n this.classInput(),\n ),\n );\n\n constructor() {\n effect(() => {\n const menu = this.submenuPortal()?.menu();\n if (menu) {\n signalSetFn(this.menuItem.submenu[SIGNAL], menu);\n }\n });\n }\n}\n"]}
1
+ {"version":3,"file":"menu-bar-item.js","sourceRoot":"","sources":["../../../../../../../libs/ui/src/lib/components/menu-bar/menu-bar-item.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,SAAS,EACT,QAAQ,EACR,YAAY,EACZ,MAAM,EACN,MAAM,EACN,KAAK,EACL,SAAS,EACT,iBAAiB,GAClB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,aAAa,GACd,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;;;;AA0CvC,MAAM,OAAO,aAAa;IACf,UAAU,GAAG,KAAK,CAAS,EAAE,uDAAI,KAAK,EAAE,OAAO,GAAG,CAAC;IACnD,aAAa,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;IACjC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC1B,aAAa,GAAG,YAAY,CAAC,YAAY,yDAAC,CAAC;IAC7C,gBAAgB,GAAG,SAAS,CAAC,mBAAmB,4DAAC,CAAC;IAElD,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;IAE5B,QAAQ,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,oDAAC,CAAC;IAErD,KAAK,GAAG,QAAQ,CAAC,GAAG,EAAE,CACvC,EAAE,CACA,iMAAiM,EACjM,IAAI,CAAC,UAAU,EAAE,CAClB,iDACF,CAAC;IAEF;QACE,MAAM,CAAC,GAAG,EAAE;YACV,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,EAAE,EAAE,IAAI,EAAE,CAAC;YAC1C,IAAI,IAAI,EAAE,CAAC;gBACT,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC;YACnD,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,+DAA+D;QAC/D,MAAM,CAAC,GAAG,EAAE;YACV,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;YAC1C,IAAI,QAAQ,EAAE,CAAC;gBACb,IAAI,CAAC,gBAAgB,EAAE,EAAE,UAAU,EAAE,cAAc,EAAE,CAAC;YACxD,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;uGAjCU,aAAa;2FAAb,aAAa,gWAIwB,YAAY,kHACd,mBAAmB,+OAlCvD;;;;;;;;;;;;;;;;;;;;;GAqBT,2DA7BS,aAAa,0nCAAE,gBAAgB;;2FAqC9B,aAAa;kBAxCzB,SAAS;mBAAC;oBACT,QAAQ,EAAE,iBAAiB;oBAC3B,QAAQ,EAAE,eAAe;oBACzB,OAAO,EAAE,CAAC,aAAa,EAAE,gBAAgB,CAAC;oBAC1C,cAAc,EAAE;wBACd;4BACE,SAAS,EAAE,QAAQ;4BACnB,MAAM,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,CAAC;yBACpC;wBACD,gBAAgB;qBACjB;oBACD,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;GAqBT;oBACD,IAAI,EAAE;wBACJ,WAAW,EAAE,eAAe;wBAC5B,SAAS,EAAE,SAAS;qBACrB;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,eAAe,EAAE,uBAAuB,CAAC,MAAM;iBAChD;2NAKiD,YAAY,+FACd,mBAAmB","sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n computed,\n contentChild,\n effect,\n inject,\n input,\n viewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { NgTemplateOutlet } from '@angular/common';\nimport {\n CdkConnectedOverlay,\n CdkOverlayOrigin,\n OverlayModule,\n} from '@angular/cdk/overlay';\nimport { MenuItem } from '@angular/aria/menu';\nimport { SIGNAL, signalSetFn } from '@angular/core/primitives/signals';\nimport { cn } from '../../utils';\nimport { ScMenuPortal } from '../menu';\nimport { ScMenuBar } from './menu-bar';\n\n@Component({\n selector: '[scMenuBarItem]',\n exportAs: 'scMenuBarItem',\n imports: [OverlayModule, NgTemplateOutlet],\n hostDirectives: [\n {\n directive: MenuItem,\n inputs: ['id', 'value', 'disabled'],\n },\n CdkOverlayOrigin,\n ],\n template: `\n <ng-content />\n\n @if (submenuPortal(); as portal) {\n <ng-template\n [cdkConnectedOverlayOpen]=\"rendered()\"\n [cdkConnectedOverlay]=\"{ origin: overlayOrigin, usePopover: 'inline' }\"\n [cdkConnectedOverlayPositions]=\"[\n {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'top',\n offsetY: 4,\n },\n ]\"\n cdkAttachPopoverAsChild\n >\n <ng-container [ngTemplateOutlet]=\"portal.templateRef\" />\n </ng-template>\n }\n `,\n host: {\n 'data-slot': 'menu-bar-item',\n '[class]': 'class()',\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ScMenuBarItem {\n readonly classInput = input<string>('', { alias: 'class' });\n readonly overlayOrigin = inject(CdkOverlayOrigin);\n private readonly menuItem = inject(MenuItem);\n protected readonly submenuPortal = contentChild(ScMenuPortal);\n private readonly connectedOverlay = viewChild(CdkConnectedOverlay);\n\n private readonly scMenuBar = inject(ScMenuBar);\n\n protected readonly rendered = computed(() => this.scMenuBar.rendered());\n\n protected readonly class = computed(() =>\n cn(\n 'flex items-center rounded-sm px-2 py-0.5 text-sm font-medium outline-hidden select-none cursor-default hover:bg-muted aria-expanded:bg-muted focus-visible:outline-2 focus-visible:outline-ring',\n this.classInput(),\n ),\n );\n\n constructor() {\n effect(() => {\n const menu = this.submenuPortal()?.menu();\n if (menu) {\n signalSetFn(this.menuItem.submenu[SIGNAL], menu);\n }\n });\n\n // Force overlay to recalculate position when menu item expands\n effect(() => {\n const expanded = this.menuItem.expanded();\n if (expanded) {\n this.connectedOverlay()?.overlayRef?.updatePosition();\n }\n });\n }\n}\n"]}
@@ -0,0 +1,6 @@
1
+ export * from './native-select-container';
2
+ export * from './native-select';
3
+ export * from './native-select-icon';
4
+ export * from './native-select-option';
5
+ export * from './native-select-optgroup';
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../libs/ui/src/lib/components/native-select/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC","sourcesContent":["export * from './native-select-container';\nexport * from './native-select';\nexport * from './native-select-icon';\nexport * from './native-select-option';\nexport * from './native-select-optgroup';\n"]}
@@ -0,0 +1,20 @@
1
+ import { computed, Directive, input } from '@angular/core';
2
+ import { cn } from '../../utils';
3
+ import * as i0 from "@angular/core";
4
+ export class ScNativeSelectContainer {
5
+ classInput = input('', { ...(ngDevMode ? { debugName: "classInput" } : {}), alias: 'class' });
6
+ class = computed(() => cn('group/native-select relative w-fit has-[select:disabled]:opacity-50', this.classInput()), ...(ngDevMode ? [{ debugName: "class" }] : []));
7
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: ScNativeSelectContainer, deps: [], target: i0.ɵɵFactoryTarget.Directive });
8
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.1.5", type: ScNativeSelectContainer, isStandalone: true, selector: "div[scNativeSelectContainer]", inputs: { classInput: { classPropertyName: "classInput", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-slot": "native-select-container" }, properties: { "class": "class()" } }, ngImport: i0 });
9
+ }
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: ScNativeSelectContainer, decorators: [{
11
+ type: Directive,
12
+ args: [{
13
+ selector: 'div[scNativeSelectContainer]',
14
+ host: {
15
+ 'data-slot': 'native-select-container',
16
+ '[class]': 'class()',
17
+ },
18
+ }]
19
+ }], propDecorators: { classInput: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }] } });
20
+ //# sourceMappingURL=native-select-container.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native-select-container.js","sourceRoot":"","sources":["../../../../../../../libs/ui/src/lib/components/native-select/native-select-container.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;;AASjC,MAAM,OAAO,uBAAuB;IACzB,UAAU,GAAG,KAAK,CAAS,EAAE,uDAAI,KAAK,EAAE,OAAO,GAAG,CAAC;IAEzC,KAAK,GAAG,QAAQ,CAAC,GAAG,EAAE,CACvC,EAAE,CACA,qEAAqE,EACrE,IAAI,CAAC,UAAU,EAAE,CAClB,iDACF,CAAC;uGARS,uBAAuB;2FAAvB,uBAAuB;;2FAAvB,uBAAuB;kBAPnC,SAAS;mBAAC;oBACT,QAAQ,EAAE,8BAA8B;oBACxC,IAAI,EAAE;wBACJ,WAAW,EAAE,yBAAyB;wBACtC,SAAS,EAAE,SAAS;qBACrB;iBACF","sourcesContent":["import { computed, Directive, input } from '@angular/core';\nimport { cn } from '../../utils';\n\n@Directive({\n selector: 'div[scNativeSelectContainer]',\n host: {\n 'data-slot': 'native-select-container',\n '[class]': 'class()',\n },\n})\nexport class ScNativeSelectContainer {\n readonly classInput = input<string>('', { alias: 'class' });\n\n protected readonly class = computed(() =>\n cn(\n 'group/native-select relative w-fit has-[select:disabled]:opacity-50',\n this.classInput(),\n ),\n );\n}\n"]}
@@ -0,0 +1,20 @@
1
+ import { computed, Directive, input } from '@angular/core';
2
+ import { cn } from '../../utils';
3
+ import * as i0 from "@angular/core";
4
+ export class ScNativeSelectIcon {
5
+ classInput = input('', { ...(ngDevMode ? { debugName: "classInput" } : {}), alias: 'class' });
6
+ class = computed(() => cn('text-muted-foreground top-1/2 right-2.5 size-4 -translate-y-1/2 pointer-events-none absolute select-none', this.classInput()), ...(ngDevMode ? [{ debugName: "class" }] : []));
7
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: ScNativeSelectIcon, deps: [], target: i0.ɵɵFactoryTarget.Directive });
8
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.1.5", type: ScNativeSelectIcon, isStandalone: true, selector: "[scNativeSelectIcon]", inputs: { classInput: { classPropertyName: "classInput", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-slot": "native-select-icon" }, properties: { "class": "class()" } }, ngImport: i0 });
9
+ }
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: ScNativeSelectIcon, decorators: [{
11
+ type: Directive,
12
+ args: [{
13
+ selector: '[scNativeSelectIcon]',
14
+ host: {
15
+ 'data-slot': 'native-select-icon',
16
+ '[class]': 'class()',
17
+ },
18
+ }]
19
+ }], propDecorators: { classInput: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }] } });
20
+ //# sourceMappingURL=native-select-icon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native-select-icon.js","sourceRoot":"","sources":["../../../../../../../libs/ui/src/lib/components/native-select/native-select-icon.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;;AASjC,MAAM,OAAO,kBAAkB;IACpB,UAAU,GAAG,KAAK,CAAS,EAAE,uDAAI,KAAK,EAAE,OAAO,GAAG,CAAC;IAEzC,KAAK,GAAG,QAAQ,CAAC,GAAG,EAAE,CACvC,EAAE,CACA,0GAA0G,EAC1G,IAAI,CAAC,UAAU,EAAE,CAClB,iDACF,CAAC;uGARS,kBAAkB;2FAAlB,kBAAkB;;2FAAlB,kBAAkB;kBAP9B,SAAS;mBAAC;oBACT,QAAQ,EAAE,sBAAsB;oBAChC,IAAI,EAAE;wBACJ,WAAW,EAAE,oBAAoB;wBACjC,SAAS,EAAE,SAAS;qBACrB;iBACF","sourcesContent":["import { computed, Directive, input } from '@angular/core';\nimport { cn } from '../../utils';\n\n@Directive({\n selector: '[scNativeSelectIcon]',\n host: {\n 'data-slot': 'native-select-icon',\n '[class]': 'class()',\n },\n})\nexport class ScNativeSelectIcon {\n readonly classInput = input<string>('', { alias: 'class' });\n\n protected readonly class = computed(() =>\n cn(\n 'text-muted-foreground top-1/2 right-2.5 size-4 -translate-y-1/2 pointer-events-none absolute select-none',\n this.classInput(),\n ),\n );\n}\n"]}
@@ -0,0 +1,20 @@
1
+ import { computed, Directive, input } from '@angular/core';
2
+ import { cn } from '../../utils';
3
+ import * as i0 from "@angular/core";
4
+ export class ScNativeSelectOptGroup {
5
+ classInput = input('', { ...(ngDevMode ? { debugName: "classInput" } : {}), alias: 'class' });
6
+ class = computed(() => cn(this.classInput()), ...(ngDevMode ? [{ debugName: "class" }] : []));
7
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: ScNativeSelectOptGroup, deps: [], target: i0.ɵɵFactoryTarget.Directive });
8
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.1.5", type: ScNativeSelectOptGroup, isStandalone: true, selector: "optgroup[scNativeSelectOptgroup]", inputs: { classInput: { classPropertyName: "classInput", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-slot": "native-select-optgroup" }, properties: { "class": "class()" } }, ngImport: i0 });
9
+ }
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: ScNativeSelectOptGroup, decorators: [{
11
+ type: Directive,
12
+ args: [{
13
+ selector: 'optgroup[scNativeSelectOptgroup]',
14
+ host: {
15
+ 'data-slot': 'native-select-optgroup',
16
+ '[class]': 'class()',
17
+ },
18
+ }]
19
+ }], propDecorators: { classInput: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }] } });
20
+ //# sourceMappingURL=native-select-optgroup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native-select-optgroup.js","sourceRoot":"","sources":["../../../../../../../libs/ui/src/lib/components/native-select/native-select-optgroup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;;AASjC,MAAM,OAAO,sBAAsB;IACxB,UAAU,GAAG,KAAK,CAAS,EAAE,uDAAI,KAAK,EAAE,OAAO,GAAG,CAAC;IAEzC,KAAK,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,iDAAC,CAAC;uGAHtD,sBAAsB;2FAAtB,sBAAsB;;2FAAtB,sBAAsB;kBAPlC,SAAS;mBAAC;oBACT,QAAQ,EAAE,kCAAkC;oBAC5C,IAAI,EAAE;wBACJ,WAAW,EAAE,wBAAwB;wBACrC,SAAS,EAAE,SAAS;qBACrB;iBACF","sourcesContent":["import { computed, Directive, input } from '@angular/core';\nimport { cn } from '../../utils';\n\n@Directive({\n selector: 'optgroup[scNativeSelectOptgroup]',\n host: {\n 'data-slot': 'native-select-optgroup',\n '[class]': 'class()',\n },\n})\nexport class ScNativeSelectOptGroup {\n readonly classInput = input<string>('', { alias: 'class' });\n\n protected readonly class = computed(() => cn(this.classInput()));\n}\n"]}
@@ -0,0 +1,20 @@
1
+ import { computed, Directive, input } from '@angular/core';
2
+ import { cn } from '../../utils';
3
+ import * as i0 from "@angular/core";
4
+ export class ScNativeSelectOption {
5
+ classInput = input('', { ...(ngDevMode ? { debugName: "classInput" } : {}), alias: 'class' });
6
+ class = computed(() => cn(this.classInput()), ...(ngDevMode ? [{ debugName: "class" }] : []));
7
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: ScNativeSelectOption, deps: [], target: i0.ɵɵFactoryTarget.Directive });
8
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.1.5", type: ScNativeSelectOption, isStandalone: true, selector: "option[scNativeSelectOption]", inputs: { classInput: { classPropertyName: "classInput", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-slot": "native-select-option" }, properties: { "class": "class()" } }, ngImport: i0 });
9
+ }
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: ScNativeSelectOption, decorators: [{
11
+ type: Directive,
12
+ args: [{
13
+ selector: 'option[scNativeSelectOption]',
14
+ host: {
15
+ 'data-slot': 'native-select-option',
16
+ '[class]': 'class()',
17
+ },
18
+ }]
19
+ }], propDecorators: { classInput: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }] } });
20
+ //# sourceMappingURL=native-select-option.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native-select-option.js","sourceRoot":"","sources":["../../../../../../../libs/ui/src/lib/components/native-select/native-select-option.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;;AASjC,MAAM,OAAO,oBAAoB;IACtB,UAAU,GAAG,KAAK,CAAS,EAAE,uDAAI,KAAK,EAAE,OAAO,GAAG,CAAC;IAEzC,KAAK,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,iDAAC,CAAC;uGAHtD,oBAAoB;2FAApB,oBAAoB;;2FAApB,oBAAoB;kBAPhC,SAAS;mBAAC;oBACT,QAAQ,EAAE,8BAA8B;oBACxC,IAAI,EAAE;wBACJ,WAAW,EAAE,sBAAsB;wBACnC,SAAS,EAAE,SAAS;qBACrB;iBACF","sourcesContent":["import { computed, Directive, input } from '@angular/core';\nimport { cn } from '../../utils';\n\n@Directive({\n selector: 'option[scNativeSelectOption]',\n host: {\n 'data-slot': 'native-select-option',\n '[class]': 'class()',\n },\n})\nexport class ScNativeSelectOption {\n readonly classInput = input<string>('', { alias: 'class' });\n\n protected readonly class = computed(() => cn(this.classInput()));\n}\n"]}
@@ -0,0 +1,29 @@
1
+ import { _IdGenerator } from '@angular/cdk/a11y';
2
+ import { computed, Directive, inject, input } from '@angular/core';
3
+ import { cn } from '../../utils';
4
+ import { SC_FIELD } from '../field';
5
+ import * as i0 from "@angular/core";
6
+ export class ScNativeSelect {
7
+ field = inject(SC_FIELD, { optional: true });
8
+ fallbackId = inject(_IdGenerator).getId('sc-native-select-');
9
+ idInput = input('', { ...(ngDevMode ? { debugName: "idInput" } : {}), alias: 'id' });
10
+ classInput = input('', { ...(ngDevMode ? { debugName: "classInput" } : {}), alias: 'class' });
11
+ size = input('default', ...(ngDevMode ? [{ debugName: "size" }] : []));
12
+ id = computed(() => this.idInput() || this.field?.id() || this.fallbackId, ...(ngDevMode ? [{ debugName: "id" }] : []));
13
+ class = computed(() => cn('border-input placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 dark:hover:bg-input/50 focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:aria-invalid:border-destructive/50 h-8 w-full min-w-0 appearance-none rounded-lg border bg-transparent py-1 pr-8 pl-2.5 text-sm transition-colors select-none focus-visible:ring-3 aria-invalid:ring-3 data-[size=sm]:h-7 data-[size=sm]:rounded-[min(var(--radius-md),10px)] data-[size=sm]:py-0.5 outline-none disabled:pointer-events-none disabled:cursor-not-allowed', this.classInput()), ...(ngDevMode ? [{ debugName: "class" }] : []));
14
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: ScNativeSelect, deps: [], target: i0.ɵɵFactoryTarget.Directive });
15
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.1.5", type: ScNativeSelect, isStandalone: true, selector: "select[scNativeSelect]", inputs: { idInput: { classPropertyName: "idInput", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, classInput: { classPropertyName: "classInput", publicName: "class", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-slot": "native-select" }, properties: { "attr.id": "id()", "attr.data-size": "size()", "class": "class()" } }, ngImport: i0 });
16
+ }
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: ScNativeSelect, decorators: [{
18
+ type: Directive,
19
+ args: [{
20
+ selector: 'select[scNativeSelect]',
21
+ host: {
22
+ 'data-slot': 'native-select',
23
+ '[attr.id]': 'id()',
24
+ '[attr.data-size]': 'size()',
25
+ '[class]': 'class()',
26
+ },
27
+ }]
28
+ }], propDecorators: { idInput: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], classInput: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }] } });
29
+ //# sourceMappingURL=native-select.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native-select.js","sourceRoot":"","sources":["../../../../../../../libs/ui/src/lib/components/native-select/native-select.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACnE,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;;AAWpC,MAAM,OAAO,cAAc;IACR,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7C,UAAU,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;IAErE,OAAO,GAAG,KAAK,CAAC,EAAE,oDAAI,KAAK,EAAE,IAAI,GAAG,CAAC;IACrC,UAAU,GAAG,KAAK,CAAS,EAAE,uDAAI,KAAK,EAAE,OAAO,GAAG,CAAC;IACnD,IAAI,GAAG,KAAK,CAAmB,SAAS,gDAAC,CAAC;IAE1C,EAAE,GAAG,QAAQ,CACpB,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,KAAK,EAAE,EAAE,EAAE,IAAI,IAAI,CAAC,UAAU,8CAC5D,CAAC;IAEiB,KAAK,GAAG,QAAQ,CAAC,GAAG,EAAE,CACvC,EAAE,CACA,0pBAA0pB,EAC1pB,IAAI,CAAC,UAAU,EAAE,CAClB,iDACF,CAAC;uGAjBS,cAAc;2FAAd,cAAc;;2FAAd,cAAc;kBAT1B,SAAS;mBAAC;oBACT,QAAQ,EAAE,wBAAwB;oBAClC,IAAI,EAAE;wBACJ,WAAW,EAAE,eAAe;wBAC5B,WAAW,EAAE,MAAM;wBACnB,kBAAkB,EAAE,QAAQ;wBAC5B,SAAS,EAAE,SAAS;qBACrB;iBACF","sourcesContent":["import { _IdGenerator } from '@angular/cdk/a11y';\nimport { computed, Directive, inject, input } from '@angular/core';\nimport { cn } from '../../utils';\nimport { SC_FIELD } from '../field';\n\n@Directive({\n selector: 'select[scNativeSelect]',\n host: {\n 'data-slot': 'native-select',\n '[attr.id]': 'id()',\n '[attr.data-size]': 'size()',\n '[class]': 'class()',\n },\n})\nexport class ScNativeSelect {\n private readonly field = inject(SC_FIELD, { optional: true });\n private readonly fallbackId = inject(_IdGenerator).getId('sc-native-select-');\n\n readonly idInput = input('', { alias: 'id' });\n readonly classInput = input<string>('', { alias: 'class' });\n readonly size = input<'default' | 'sm'>('default');\n\n readonly id = computed(\n () => this.idInput() || this.field?.id() || this.fallbackId,\n );\n\n protected readonly class = computed(() =>\n cn(\n 'border-input placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 dark:hover:bg-input/50 focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:aria-invalid:border-destructive/50 h-8 w-full min-w-0 appearance-none rounded-lg border bg-transparent py-1 pr-8 pl-2.5 text-sm transition-colors select-none focus-visible:ring-3 aria-invalid:ring-3 data-[size=sm]:h-7 data-[size=sm]:rounded-[min(var(--radius-md),10px)] data-[size=sm]:py-0.5 outline-none disabled:pointer-events-none disabled:cursor-not-allowed',\n this.classInput(),\n ),\n );\n}\n"]}
@@ -0,0 +1,8 @@
1
+ export { ScNavigationMenu } from './navigation-menu';
2
+ export { ScNavigationMenuContent } from './navigation-menu-content';
3
+ export { ScNavigationMenuItem } from './navigation-menu-item';
4
+ export { ScNavigationMenuLink } from './navigation-menu-link';
5
+ export { ScNavigationMenuList } from './navigation-menu-list';
6
+ export { ScNavigationMenuPortal } from './navigation-menu-portal';
7
+ export { ScNavigationMenuTrigger } from './navigation-menu-trigger';
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../libs/ui/src/lib/components/navigation-menu/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC","sourcesContent":["export { ScNavigationMenu } from './navigation-menu';\nexport { ScNavigationMenuContent } from './navigation-menu-content';\nexport { ScNavigationMenuItem } from './navigation-menu-item';\nexport { ScNavigationMenuLink } from './navigation-menu-link';\nexport { ScNavigationMenuList } from './navigation-menu-list';\nexport { ScNavigationMenuPortal } from './navigation-menu-portal';\nexport { ScNavigationMenuTrigger } from './navigation-menu-trigger';\n"]}
@@ -0,0 +1,37 @@
1
+ import { ChangeDetectionStrategy, Component, computed, inject, input, ViewEncapsulation, } from '@angular/core';
2
+ import { cn } from '../../utils';
3
+ import { ScNavigationMenuItem } from './navigation-menu-item';
4
+ import * as i0 from "@angular/core";
5
+ export class ScNavigationMenuContent {
6
+ menuItem = inject(ScNavigationMenuItem);
7
+ classInput = input('', { ...(ngDevMode ? { debugName: "classInput" } : {}), alias: 'class' });
8
+ class = computed(() => cn('block', 'left-0 top-0 w-full md:absolute md:w-auto', 'bg-popover text-popover-foreground', 'rounded-md border shadow-lg', 'overflow-hidden', 'data-[motion^=from-]:animate-in data-[motion^=to-]:animate-out', 'data-[motion^=from-]:fade-in data-[motion^=to-]:fade-out', 'data-[motion=from-end]:slide-in-from-right-52 data-[motion=from-start]:slide-in-from-left-52', 'data-[motion=to-end]:slide-out-to-right-52 data-[motion=to-start]:slide-out-to-left-52', '**:data-[slot=navigation-menu-link]:focus:ring-0 **:data-[slot=navigation-menu-link]:focus:outline-none', this.classInput()), ...(ngDevMode ? [{ debugName: "class" }] : []));
9
+ onMouseEnter() {
10
+ this.menuItem.cancelHide();
11
+ }
12
+ onMouseLeave() {
13
+ this.menuItem.onMouseLeave();
14
+ }
15
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: ScNavigationMenuContent, deps: [], target: i0.ɵɵFactoryTarget.Component });
16
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.1.5", type: ScNavigationMenuContent, isStandalone: true, selector: "div[scNavigationMenuContent]", inputs: { classInput: { classPropertyName: "classInput", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-slot": "navigation-menu-content" }, listeners: { "mouseenter": "onMouseEnter()", "mouseleave": "onMouseLeave()" }, properties: { "class": "class()" } }, ngImport: i0, template: `
17
+ <ng-content />
18
+ `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
19
+ }
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: ScNavigationMenuContent, decorators: [{
21
+ type: Component,
22
+ args: [{
23
+ selector: 'div[scNavigationMenuContent]',
24
+ template: `
25
+ <ng-content />
26
+ `,
27
+ host: {
28
+ 'data-slot': 'navigation-menu-content',
29
+ '[class]': 'class()',
30
+ '(mouseenter)': 'onMouseEnter()',
31
+ '(mouseleave)': 'onMouseLeave()',
32
+ },
33
+ encapsulation: ViewEncapsulation.None,
34
+ changeDetection: ChangeDetectionStrategy.OnPush,
35
+ }]
36
+ }], propDecorators: { classInput: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }] } });
37
+ //# sourceMappingURL=navigation-menu-content.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"navigation-menu-content.js","sourceRoot":"","sources":["../../../../../../../libs/ui/src/lib/components/navigation-menu/navigation-menu-content.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,SAAS,EACT,QAAQ,EACR,MAAM,EACN,KAAK,EACL,iBAAiB,GAClB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;;AAgB9D,MAAM,OAAO,uBAAuB;IACjB,QAAQ,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC;IAChD,UAAU,GAAG,KAAK,CAAS,EAAE,uDAAI,KAAK,EAAE,OAAO,GAAG,CAAC;IAEzC,KAAK,GAAG,QAAQ,CAAC,GAAG,EAAE,CACvC,EAAE,CACA,OAAO,EACP,2CAA2C,EAC3C,oCAAoC,EACpC,6BAA6B,EAC7B,iBAAiB,EACjB,gEAAgE,EAChE,0DAA0D,EAC1D,8FAA8F,EAC9F,wFAAwF,EACxF,yGAAyG,EACzG,IAAI,CAAC,UAAU,EAAE,CAClB,iDACF,CAAC;IAEF,YAAY;QACV,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;IAC7B,CAAC;IAED,YAAY;QACV,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;IAC/B,CAAC;uGA1BU,uBAAuB;2FAAvB,uBAAuB,2ZAZxB;;GAET;;2FAUU,uBAAuB;kBAdnC,SAAS;mBAAC;oBACT,QAAQ,EAAE,8BAA8B;oBACxC,QAAQ,EAAE;;GAET;oBACD,IAAI,EAAE;wBACJ,WAAW,EAAE,yBAAyB;wBACtC,SAAS,EAAE,SAAS;wBACpB,cAAc,EAAE,gBAAgB;wBAChC,cAAc,EAAE,gBAAgB;qBACjC;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,eAAe,EAAE,uBAAuB,CAAC,MAAM;iBAChD","sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n computed,\n inject,\n input,\n ViewEncapsulation,\n} from '@angular/core';\nimport { cn } from '../../utils';\nimport { ScNavigationMenuItem } from './navigation-menu-item';\n\n@Component({\n selector: 'div[scNavigationMenuContent]',\n template: `\n <ng-content />\n `,\n host: {\n 'data-slot': 'navigation-menu-content',\n '[class]': 'class()',\n '(mouseenter)': 'onMouseEnter()',\n '(mouseleave)': 'onMouseLeave()',\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ScNavigationMenuContent {\n private readonly menuItem = inject(ScNavigationMenuItem);\n readonly classInput = input<string>('', { alias: 'class' });\n\n protected readonly class = computed(() =>\n cn(\n 'block',\n 'left-0 top-0 w-full md:absolute md:w-auto',\n 'bg-popover text-popover-foreground',\n 'rounded-md border shadow-lg',\n 'overflow-hidden',\n 'data-[motion^=from-]:animate-in data-[motion^=to-]:animate-out',\n 'data-[motion^=from-]:fade-in data-[motion^=to-]:fade-out',\n 'data-[motion=from-end]:slide-in-from-right-52 data-[motion=from-start]:slide-in-from-left-52',\n 'data-[motion=to-end]:slide-out-to-right-52 data-[motion=to-start]:slide-out-to-left-52',\n '**:data-[slot=navigation-menu-link]:focus:ring-0 **:data-[slot=navigation-menu-link]:focus:outline-none',\n this.classInput(),\n ),\n );\n\n onMouseEnter(): void {\n this.menuItem.cancelHide();\n }\n\n onMouseLeave(): void {\n this.menuItem.onMouseLeave();\n }\n}\n"]}
@@ -0,0 +1,118 @@
1
+ import { _IdGenerator } from '@angular/cdk/a11y';
2
+ import { NgTemplateOutlet } from '@angular/common';
3
+ import { OverlayModule } from '@angular/cdk/overlay';
4
+ import { ChangeDetectionStrategy, Component, computed, contentChild, DestroyRef, inject, input, signal, ViewEncapsulation, } from '@angular/core';
5
+ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
6
+ import { NavigationStart, Router } from '@angular/router';
7
+ import { filter } from 'rxjs';
8
+ import { cn } from '../../utils';
9
+ import { ScNavigationMenu } from './navigation-menu';
10
+ import { ScNavigationMenuPortal } from './navigation-menu-portal';
11
+ import { ScNavigationMenuTrigger } from './navigation-menu-trigger';
12
+ import * as i0 from "@angular/core";
13
+ import * as i1 from "@angular/cdk/overlay";
14
+ const position = {
15
+ originX: 'start',
16
+ originY: 'bottom',
17
+ overlayX: 'start',
18
+ overlayY: 'top',
19
+ offsetY: 4,
20
+ };
21
+ export class ScNavigationMenuItem {
22
+ navigationMenu = inject(ScNavigationMenu);
23
+ router = inject(Router);
24
+ destroyRef = inject(DestroyRef);
25
+ classInput = input('', { ...(ngDevMode ? { debugName: "classInput" } : {}), alias: 'class' });
26
+ itemId = inject(_IdGenerator).getId('sc-navigation-menu-item-');
27
+ /** Whether this item's content is open */
28
+ open = signal(false, ...(ngDevMode ? [{ debugName: "open" }] : []));
29
+ triggerChild = contentChild(ScNavigationMenuTrigger, ...(ngDevMode ? [{ debugName: "triggerChild" }] : []));
30
+ navigationMenuPortal = contentChild(ScNavigationMenuPortal, ...(ngDevMode ? [{ debugName: "navigationMenuPortal" }] : []));
31
+ origin = computed(() => this.triggerChild()?.overlayOrigin, ...(ngDevMode ? [{ debugName: "origin" }] : []));
32
+ position = position;
33
+ class = computed(() => cn('block relative', this.classInput()), ...(ngDevMode ? [{ debugName: "class" }] : []));
34
+ hideTimeout = null;
35
+ ngOnInit() {
36
+ // Close the menu when navigation starts
37
+ this.router.events
38
+ .pipe(filter((event) => event instanceof NavigationStart), takeUntilDestroyed(this.destroyRef))
39
+ .subscribe(() => {
40
+ this.open.set(false);
41
+ if (this.navigationMenu.activeItem() === this.itemId) {
42
+ this.navigationMenu.setActiveItem(null);
43
+ }
44
+ });
45
+ }
46
+ onMouseEnter() {
47
+ this.cancelHide();
48
+ this.open.set(true);
49
+ this.navigationMenu.setActiveItem(this.itemId);
50
+ }
51
+ onMouseLeave() {
52
+ this.scheduleHide();
53
+ }
54
+ scheduleHide() {
55
+ this.cancelHide();
56
+ this.hideTimeout = setTimeout(() => {
57
+ this.open.set(false);
58
+ if (this.navigationMenu.activeItem() === this.itemId) {
59
+ this.navigationMenu.setActiveItem(null);
60
+ }
61
+ }, 100);
62
+ }
63
+ cancelHide() {
64
+ if (this.hideTimeout) {
65
+ clearTimeout(this.hideTimeout);
66
+ this.hideTimeout = null;
67
+ }
68
+ }
69
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: ScNavigationMenuItem, deps: [], target: i0.ɵɵFactoryTarget.Component });
70
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.5", type: ScNavigationMenuItem, isStandalone: true, selector: "li[scNavigationMenuItem]", inputs: { classInput: { classPropertyName: "classInput", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-slot": "navigation-menu-item" }, listeners: { "mouseenter": "onMouseEnter()", "mouseleave": "onMouseLeave()" }, properties: { "class": "class()" } }, queries: [{ propertyName: "triggerChild", first: true, predicate: ScNavigationMenuTrigger, descendants: true, isSignal: true }, { propertyName: "navigationMenuPortal", first: true, predicate: ScNavigationMenuPortal, descendants: true, isSignal: true }], ngImport: i0, template: `
71
+ <ng-content />
72
+
73
+ @if (origin(); as origin) {
74
+ <ng-template
75
+ cdkConnectedOverlay
76
+ [cdkConnectedOverlayOrigin]="origin"
77
+ [cdkConnectedOverlayOpen]="open()"
78
+ [cdkConnectedOverlayPositions]="[position]"
79
+ >
80
+ @if (navigationMenuPortal(); as portal) {
81
+ <ng-container [ngTemplateOutlet]="portal.templateRef" />
82
+ }
83
+ </ng-template>
84
+ }
85
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: OverlayModule }, { kind: "directive", type: i1.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation", "cdkConnectedOverlayUsePopover", "cdkConnectedOverlayMatchWidth", "cdkConnectedOverlay"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
86
+ }
87
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: ScNavigationMenuItem, decorators: [{
88
+ type: Component,
89
+ args: [{
90
+ selector: 'li[scNavigationMenuItem]',
91
+ imports: [OverlayModule, NgTemplateOutlet],
92
+ template: `
93
+ <ng-content />
94
+
95
+ @if (origin(); as origin) {
96
+ <ng-template
97
+ cdkConnectedOverlay
98
+ [cdkConnectedOverlayOrigin]="origin"
99
+ [cdkConnectedOverlayOpen]="open()"
100
+ [cdkConnectedOverlayPositions]="[position]"
101
+ >
102
+ @if (navigationMenuPortal(); as portal) {
103
+ <ng-container [ngTemplateOutlet]="portal.templateRef" />
104
+ }
105
+ </ng-template>
106
+ }
107
+ `,
108
+ host: {
109
+ 'data-slot': 'navigation-menu-item',
110
+ '[class]': 'class()',
111
+ '(mouseenter)': 'onMouseEnter()',
112
+ '(mouseleave)': 'onMouseLeave()',
113
+ },
114
+ encapsulation: ViewEncapsulation.None,
115
+ changeDetection: ChangeDetectionStrategy.OnPush,
116
+ }]
117
+ }], propDecorators: { classInput: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }], triggerChild: [{ type: i0.ContentChild, args: [i0.forwardRef(() => ScNavigationMenuTrigger), { isSignal: true }] }], navigationMenuPortal: [{ type: i0.ContentChild, args: [i0.forwardRef(() => ScNavigationMenuPortal), { isSignal: true }] }] } });
118
+ //# sourceMappingURL=navigation-menu-item.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"navigation-menu-item.js","sourceRoot":"","sources":["../../../../../../../libs/ui/src/lib/components/navigation-menu/navigation-menu-item.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAqB,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACxE,OAAO,EACL,uBAAuB,EACvB,SAAS,EACT,QAAQ,EACR,YAAY,EACZ,UAAU,EACV,MAAM,EACN,KAAK,EAEL,MAAM,EACN,iBAAiB,GAClB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAC9B,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;;;AAEpE,MAAM,QAAQ,GAAsB;IAClC,OAAO,EAAE,OAAO;IAChB,OAAO,EAAE,QAAQ;IACjB,QAAQ,EAAE,OAAO;IACjB,QAAQ,EAAE,KAAK;IACf,OAAO,EAAE,CAAC;CACX,CAAC;AA8BF,MAAM,OAAO,oBAAoB;IACtB,cAAc,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;IAClC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;IACxB,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;IACxC,UAAU,GAAG,KAAK,CAAS,EAAE,uDAAI,KAAK,EAAE,OAAO,GAAG,CAAC;IAEnD,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAEzE,0CAA0C;IACjC,IAAI,GAAG,MAAM,CAAU,KAAK,gDAAC,CAAC;IAEtB,YAAY,GAAG,YAAY,CAAC,uBAAuB,wDAAC,CAAC;IACnD,oBAAoB,GAAG,YAAY,CACpD,sBAAsB,gEACvB,CAAC;IAEO,MAAM,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,aAAa,kDAAC,CAAC;IAElD,QAAQ,GAAG,QAAQ,CAAC;IAEpB,KAAK,GAAG,QAAQ,CAAC,GAAG,EAAE,CACvC,EAAE,CAAC,gBAAgB,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,iDACxC,CAAC;IAEM,WAAW,GAAyC,IAAI,CAAC;IAEjE,QAAQ;QACN,wCAAwC;QACxC,IAAI,CAAC,MAAM,CAAC,MAAM;aACf,IAAI,CACH,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,YAAY,eAAe,CAAC,EACnD,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,CACpC;aACA,SAAS,CAAC,GAAG,EAAE;YACd,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACrB,IAAI,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;gBACrD,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC,CAAC,CAAC;IACP,CAAC;IAED,YAAY;QACV,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACpB,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACjD,CAAC;IAED,YAAY;QACV,IAAI,CAAC,YAAY,EAAE,CAAC;IACtB,CAAC;IAEO,YAAY;QAClB,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,GAAG,EAAE;YACjC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACrB,IAAI,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;gBACrD,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC,EAAE,GAAG,CAAC,CAAC;IACV,CAAC;IAED,UAAU;QACR,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC/B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QAC1B,CAAC;IACH,CAAC;uGAlEU,oBAAoB;2FAApB,oBAAoB,8bAWc,uBAAuB,uGAElE,sBAAsB,gEAtCd;;;;;;;;;;;;;;;GAeT,2DAhBS,aAAa,0nCAAE,gBAAgB;;2FA0B9B,oBAAoB;kBA5BhC,SAAS;mBAAC;oBACT,QAAQ,EAAE,0BAA0B;oBACpC,OAAO,EAAE,CAAC,aAAa,EAAE,gBAAgB,CAAC;oBAC1C,QAAQ,EAAE;;;;;;;;;;;;;;;GAeT;oBACD,IAAI,EAAE;wBACJ,WAAW,EAAE,sBAAsB;wBACnC,SAAS,EAAE,SAAS;wBACpB,cAAc,EAAE,gBAAgB;wBAChC,cAAc,EAAE,gBAAgB;qBACjC;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,eAAe,EAAE,uBAAuB,CAAC,MAAM;iBAChD;gMAY8C,uBAAuB,sGAElE,sBAAsB","sourcesContent":["import { _IdGenerator } from '@angular/cdk/a11y';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { ConnectedPosition, OverlayModule } from '@angular/cdk/overlay';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n contentChild,\n DestroyRef,\n inject,\n input,\n OnInit,\n signal,\n ViewEncapsulation,\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { NavigationStart, Router } from '@angular/router';\nimport { filter } from 'rxjs';\nimport { cn } from '../../utils';\nimport { ScNavigationMenu } from './navigation-menu';\nimport { ScNavigationMenuPortal } from './navigation-menu-portal';\nimport { ScNavigationMenuTrigger } from './navigation-menu-trigger';\n\nconst position: ConnectedPosition = {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'top',\n offsetY: 4,\n};\n\n@Component({\n selector: 'li[scNavigationMenuItem]',\n imports: [OverlayModule, NgTemplateOutlet],\n template: `\n <ng-content />\n\n @if (origin(); as origin) {\n <ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"origin\"\n [cdkConnectedOverlayOpen]=\"open()\"\n [cdkConnectedOverlayPositions]=\"[position]\"\n >\n @if (navigationMenuPortal(); as portal) {\n <ng-container [ngTemplateOutlet]=\"portal.templateRef\" />\n }\n </ng-template>\n }\n `,\n host: {\n 'data-slot': 'navigation-menu-item',\n '[class]': 'class()',\n '(mouseenter)': 'onMouseEnter()',\n '(mouseleave)': 'onMouseLeave()',\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ScNavigationMenuItem implements OnInit {\n readonly navigationMenu = inject(ScNavigationMenu);\n private readonly router = inject(Router);\n private readonly destroyRef = inject(DestroyRef);\n readonly classInput = input<string>('', { alias: 'class' });\n\n readonly itemId = inject(_IdGenerator).getId('sc-navigation-menu-item-');\n\n /** Whether this item's content is open */\n readonly open = signal<boolean>(false);\n\n private readonly triggerChild = contentChild(ScNavigationMenuTrigger);\n protected readonly navigationMenuPortal = contentChild(\n ScNavigationMenuPortal,\n );\n\n readonly origin = computed(() => this.triggerChild()?.overlayOrigin);\n\n protected readonly position = position;\n\n protected readonly class = computed(() =>\n cn('block relative', this.classInput()),\n );\n\n private hideTimeout: ReturnType<typeof setTimeout> | null = null;\n\n ngOnInit(): void {\n // Close the menu when navigation starts\n this.router.events\n .pipe(\n filter((event) => event instanceof NavigationStart),\n takeUntilDestroyed(this.destroyRef),\n )\n .subscribe(() => {\n this.open.set(false);\n if (this.navigationMenu.activeItem() === this.itemId) {\n this.navigationMenu.setActiveItem(null);\n }\n });\n }\n\n onMouseEnter(): void {\n this.cancelHide();\n this.open.set(true);\n this.navigationMenu.setActiveItem(this.itemId);\n }\n\n onMouseLeave(): void {\n this.scheduleHide();\n }\n\n private scheduleHide(): void {\n this.cancelHide();\n this.hideTimeout = setTimeout(() => {\n this.open.set(false);\n if (this.navigationMenu.activeItem() === this.itemId) {\n this.navigationMenu.setActiveItem(null);\n }\n }, 100);\n }\n\n cancelHide(): void {\n if (this.hideTimeout) {\n clearTimeout(this.hideTimeout);\n this.hideTimeout = null;\n }\n }\n}\n"]}
@@ -0,0 +1,22 @@
1
+ import { computed, Directive, input } from '@angular/core';
2
+ import { cn } from '../../utils';
3
+ import * as i0 from "@angular/core";
4
+ export class ScNavigationMenuLink {
5
+ classInput = input('', { ...(ngDevMode ? { debugName: "classInput" } : {}), alias: 'class' });
6
+ active = input(false, ...(ngDevMode ? [{ debugName: "active" }] : []));
7
+ class = computed(() => cn('data-[active=true]:focus:bg-accent data-[active=true]:hover:bg-accent data-[active=true]:bg-accent/50 data-[active=true]:text-accent-foreground', 'hover:bg-accent hover:text-accent-foreground', 'focus:bg-accent focus:text-accent-foreground', 'focus-visible:ring-ring/50', '[&_svg:not([class*="text-"])]:text-muted-foreground', 'flex flex-col gap-1 rounded-sm p-2 text-sm transition-all outline-none', 'focus-visible:ring-[3px] focus-visible:outline-1', '[&_svg:not([class*="size-"])]:size-4', this.classInput()), ...(ngDevMode ? [{ debugName: "class" }] : []));
8
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: ScNavigationMenuLink, deps: [], target: i0.ɵɵFactoryTarget.Directive });
9
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.1.5", type: ScNavigationMenuLink, isStandalone: true, selector: "a[scNavigationMenuLink]", inputs: { classInput: { classPropertyName: "classInput", publicName: "class", isSignal: true, isRequired: false, transformFunction: null }, active: { classPropertyName: "active", publicName: "active", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-slot": "navigation-menu-link" }, properties: { "attr.data-active": "active()", "class": "class()" } }, ngImport: i0 });
10
+ }
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: ScNavigationMenuLink, decorators: [{
12
+ type: Directive,
13
+ args: [{
14
+ selector: 'a[scNavigationMenuLink]',
15
+ host: {
16
+ 'data-slot': 'navigation-menu-link',
17
+ '[attr.data-active]': 'active()',
18
+ '[class]': 'class()',
19
+ },
20
+ }]
21
+ }], propDecorators: { classInput: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }], active: [{ type: i0.Input, args: [{ isSignal: true, alias: "active", required: false }] }] } });
22
+ //# sourceMappingURL=navigation-menu-link.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"navigation-menu-link.js","sourceRoot":"","sources":["../../../../../../../libs/ui/src/lib/components/navigation-menu/navigation-menu-link.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;;AAUjC,MAAM,OAAO,oBAAoB;IACtB,UAAU,GAAG,KAAK,CAAS,EAAE,uDAAI,KAAK,EAAE,OAAO,GAAG,CAAC;IACnD,MAAM,GAAG,KAAK,CAAU,KAAK,kDAAC,CAAC;IAErB,KAAK,GAAG,QAAQ,CAAC,GAAG,EAAE,CACvC,EAAE,CACA,iJAAiJ,EACjJ,8CAA8C,EAC9C,8CAA8C,EAC9C,4BAA4B,EAC5B,qDAAqD,EACrD,wEAAwE,EACxE,kDAAkD,EAClD,sCAAsC,EACtC,IAAI,CAAC,UAAU,EAAE,CAClB,iDACF,CAAC;uGAhBS,oBAAoB;2FAApB,oBAAoB;;2FAApB,oBAAoB;kBARhC,SAAS;mBAAC;oBACT,QAAQ,EAAE,yBAAyB;oBACnC,IAAI,EAAE;wBACJ,WAAW,EAAE,sBAAsB;wBACnC,oBAAoB,EAAE,UAAU;wBAChC,SAAS,EAAE,SAAS;qBACrB;iBACF","sourcesContent":["import { computed, Directive, input } from '@angular/core';\nimport { cn } from '../../utils';\n\n@Directive({\n selector: 'a[scNavigationMenuLink]',\n host: {\n 'data-slot': 'navigation-menu-link',\n '[attr.data-active]': 'active()',\n '[class]': 'class()',\n },\n})\nexport class ScNavigationMenuLink {\n readonly classInput = input<string>('', { alias: 'class' });\n readonly active = input<boolean>(false);\n\n protected readonly class = computed(() =>\n cn(\n 'data-[active=true]:focus:bg-accent data-[active=true]:hover:bg-accent data-[active=true]:bg-accent/50 data-[active=true]:text-accent-foreground',\n 'hover:bg-accent hover:text-accent-foreground',\n 'focus:bg-accent focus:text-accent-foreground',\n 'focus-visible:ring-ring/50',\n '[&_svg:not([class*=\"text-\"])]:text-muted-foreground',\n 'flex flex-col gap-1 rounded-sm p-2 text-sm transition-all outline-none',\n 'focus-visible:ring-[3px] focus-visible:outline-1',\n '[&_svg:not([class*=\"size-\"])]:size-4',\n this.classInput(),\n ),\n );\n}\n"]}
@@ -0,0 +1,20 @@
1
+ import { computed, Directive, input } from '@angular/core';
2
+ import { cn } from '../../utils';
3
+ import * as i0 from "@angular/core";
4
+ export class ScNavigationMenuList {
5
+ classInput = input('', { ...(ngDevMode ? { debugName: "classInput" } : {}), alias: 'class' });
6
+ class = computed(() => cn('group flex flex-1 list-none items-center justify-center gap-1', this.classInput()), ...(ngDevMode ? [{ debugName: "class" }] : []));
7
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: ScNavigationMenuList, deps: [], target: i0.ɵɵFactoryTarget.Directive });
8
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.1.5", type: ScNavigationMenuList, isStandalone: true, selector: "ul[scNavigationMenuList]", inputs: { classInput: { classPropertyName: "classInput", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-slot": "navigation-menu-list" }, properties: { "class": "class()" } }, ngImport: i0 });
9
+ }
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: ScNavigationMenuList, decorators: [{
11
+ type: Directive,
12
+ args: [{
13
+ selector: 'ul[scNavigationMenuList]',
14
+ host: {
15
+ 'data-slot': 'navigation-menu-list',
16
+ '[class]': 'class()',
17
+ },
18
+ }]
19
+ }], propDecorators: { classInput: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }] } });
20
+ //# sourceMappingURL=navigation-menu-list.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"navigation-menu-list.js","sourceRoot":"","sources":["../../../../../../../libs/ui/src/lib/components/navigation-menu/navigation-menu-list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;;AASjC,MAAM,OAAO,oBAAoB;IACtB,UAAU,GAAG,KAAK,CAAS,EAAE,uDAAI,KAAK,EAAE,OAAO,GAAG,CAAC;IAEzC,KAAK,GAAG,QAAQ,CAAC,GAAG,EAAE,CACvC,EAAE,CACA,+DAA+D,EAC/D,IAAI,CAAC,UAAU,EAAE,CAClB,iDACF,CAAC;uGARS,oBAAoB;2FAApB,oBAAoB;;2FAApB,oBAAoB;kBAPhC,SAAS;mBAAC;oBACT,QAAQ,EAAE,0BAA0B;oBACpC,IAAI,EAAE;wBACJ,WAAW,EAAE,sBAAsB;wBACnC,SAAS,EAAE,SAAS;qBACrB;iBACF","sourcesContent":["import { computed, Directive, input } from '@angular/core';\nimport { cn } from '../../utils';\n\n@Directive({\n selector: 'ul[scNavigationMenuList]',\n host: {\n 'data-slot': 'navigation-menu-list',\n '[class]': 'class()',\n },\n})\nexport class ScNavigationMenuList {\n readonly classInput = input<string>('', { alias: 'class' });\n\n protected readonly class = computed(() =>\n cn(\n 'group flex flex-1 list-none items-center justify-center gap-1',\n this.classInput(),\n ),\n );\n}\n"]}
@@ -0,0 +1,14 @@
1
+ import { Directive, inject, TemplateRef } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class ScNavigationMenuPortal {
4
+ templateRef = inject(TemplateRef);
5
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: ScNavigationMenuPortal, deps: [], target: i0.ɵɵFactoryTarget.Directive });
6
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.5", type: ScNavigationMenuPortal, isStandalone: true, selector: "ng-template[scNavigationMenuPortal]", ngImport: i0 });
7
+ }
8
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: ScNavigationMenuPortal, decorators: [{
9
+ type: Directive,
10
+ args: [{
11
+ selector: 'ng-template[scNavigationMenuPortal]',
12
+ }]
13
+ }] });
14
+ //# sourceMappingURL=navigation-menu-portal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"navigation-menu-portal.js","sourceRoot":"","sources":["../../../../../../../libs/ui/src/lib/components/navigation-menu/navigation-menu-portal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;;AAK/D,MAAM,OAAO,sBAAsB;IACxB,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;uGADhC,sBAAsB;2FAAtB,sBAAsB;;2FAAtB,sBAAsB;kBAHlC,SAAS;mBAAC;oBACT,QAAQ,EAAE,qCAAqC;iBAChD","sourcesContent":["import { Directive, inject, TemplateRef } from '@angular/core';\n\n@Directive({\n selector: 'ng-template[scNavigationMenuPortal]',\n})\nexport class ScNavigationMenuPortal {\n readonly templateRef = inject(TemplateRef);\n}\n"]}