@sky.ui/core 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (320) hide show
  1. package/LICENSE.md +139 -0
  2. package/README.md +113 -0
  3. package/auto-import-loader.js +60 -0
  4. package/auto-import.js +93 -0
  5. package/dist/custom-elements.json +27051 -0
  6. package/dist/helper/controllers/animation-controller.d.ts +120 -0
  7. package/dist/helper/controllers/animation-controller.js +2 -0
  8. package/dist/helper/controllers/animation-controller.js.map +1 -0
  9. package/dist/helper/controllers/index.d.ts +2 -0
  10. package/dist/helper/controllers/popover-controller.d.ts +162 -0
  11. package/dist/helper/controllers/popover-controller.js +2 -0
  12. package/dist/helper/controllers/popover-controller.js.map +1 -0
  13. package/dist/helper/form-control-base.d.ts +1 -0
  14. package/dist/helper/iconify-offline.d.ts +73 -0
  15. package/dist/helper/iconify-offline.js +2 -0
  16. package/dist/helper/iconify-offline.js.map +1 -0
  17. package/dist/helper/index.d.ts +5 -0
  18. package/dist/helper/internals/form-control-base.d.ts +81 -0
  19. package/dist/helper/internals/form-control-base.js +2 -0
  20. package/dist/helper/internals/form-control-base.js.map +1 -0
  21. package/dist/helper/internals/index.d.ts +1 -0
  22. package/dist/helper/utils/color-resolver.d.ts +139 -0
  23. package/dist/helper/utils/color-resolver.js +2 -0
  24. package/dist/helper/utils/color-resolver.js.map +1 -0
  25. package/dist/helper/utils/index.d.ts +2 -0
  26. package/dist/helper/utils/size-resolver.d.ts +6 -0
  27. package/dist/helper/utils/size-resolver.js +2 -0
  28. package/dist/helper/utils/size-resolver.js.map +1 -0
  29. package/dist/index.d.ts +58 -0
  30. package/dist/index.js +2 -0
  31. package/dist/index.js.map +1 -0
  32. package/dist/sky-accordion/index.d.ts +1 -0
  33. package/dist/sky-accordion/index.js +1 -0
  34. package/dist/sky-accordion/sky-accordion.d.ts +201 -0
  35. package/dist/sky-accordion/sky-accordion.js +85 -0
  36. package/dist/sky-accordion/sky-accordion.js.map +1 -0
  37. package/dist/sky-accordion-item/index.d.ts +1 -0
  38. package/dist/sky-accordion-item/index.js +1 -0
  39. package/dist/sky-accordion-item/sky-accordion-item.d.ts +161 -0
  40. package/dist/sky-accordion-item/sky-accordion-item.js +191 -0
  41. package/dist/sky-accordion-item/sky-accordion-item.js.map +1 -0
  42. package/dist/sky-alert/index.d.ts +1 -0
  43. package/dist/sky-alert/index.js +1 -0
  44. package/dist/sky-alert/sky-alert.d.ts +136 -0
  45. package/dist/sky-alert/sky-alert.js +292 -0
  46. package/dist/sky-alert/sky-alert.js.map +1 -0
  47. package/dist/sky-appbar/index.d.ts +1 -0
  48. package/dist/sky-appbar/index.js +1 -0
  49. package/dist/sky-appbar/sky-appbar.d.ts +84 -0
  50. package/dist/sky-appbar/sky-appbar.js +173 -0
  51. package/dist/sky-appbar/sky-appbar.js.map +1 -0
  52. package/dist/sky-avatar/index.d.ts +1 -0
  53. package/dist/sky-avatar/index.js +1 -0
  54. package/dist/sky-avatar/sky-avatar.d.ts +104 -0
  55. package/dist/sky-avatar/sky-avatar.js +152 -0
  56. package/dist/sky-avatar/sky-avatar.js.map +1 -0
  57. package/dist/sky-badge/index.d.ts +1 -0
  58. package/dist/sky-badge/index.js +1 -0
  59. package/dist/sky-badge/sky-badge.d.ts +154 -0
  60. package/dist/sky-badge/sky-badge.js +148 -0
  61. package/dist/sky-badge/sky-badge.js.map +1 -0
  62. package/dist/sky-breadcrumb/index.d.ts +1 -0
  63. package/dist/sky-breadcrumb/index.js +1 -0
  64. package/dist/sky-breadcrumb/sky-breadcrumb.d.ts +111 -0
  65. package/dist/sky-breadcrumb/sky-breadcrumb.js +230 -0
  66. package/dist/sky-breadcrumb/sky-breadcrumb.js.map +1 -0
  67. package/dist/sky-button/index.d.ts +1 -0
  68. package/dist/sky-button/index.js +1 -0
  69. package/dist/sky-button/sky-button.d.ts +118 -0
  70. package/dist/sky-button/sky-button.js +172 -0
  71. package/dist/sky-button/sky-button.js.map +1 -0
  72. package/dist/sky-button-group/index.d.ts +1 -0
  73. package/dist/sky-button-group/index.js +1 -0
  74. package/dist/sky-button-group/sky-button-group.d.ts +93 -0
  75. package/dist/sky-button-group/sky-button-group.js +281 -0
  76. package/dist/sky-button-group/sky-button-group.js.map +1 -0
  77. package/dist/sky-card/index.d.ts +1 -0
  78. package/dist/sky-card/index.js +1 -0
  79. package/dist/sky-card/sky-card.d.ts +143 -0
  80. package/dist/sky-card/sky-card.js +186 -0
  81. package/dist/sky-card/sky-card.js.map +1 -0
  82. package/dist/sky-carousel/index.d.ts +1 -0
  83. package/dist/sky-carousel/index.js +1 -0
  84. package/dist/sky-carousel/sky-carousel.d.ts +265 -0
  85. package/dist/sky-carousel/sky-carousel.js +211 -0
  86. package/dist/sky-carousel/sky-carousel.js.map +1 -0
  87. package/dist/sky-checkbox/index.d.ts +1 -0
  88. package/dist/sky-checkbox/index.js +1 -0
  89. package/dist/sky-checkbox/sky-checkbox.d.ts +165 -0
  90. package/dist/sky-checkbox/sky-checkbox.js +276 -0
  91. package/dist/sky-checkbox/sky-checkbox.js.map +1 -0
  92. package/dist/sky-chip/index.d.ts +1 -0
  93. package/dist/sky-chip/index.js +1 -0
  94. package/dist/sky-chip/sky-chip.d.ts +95 -0
  95. package/dist/sky-chip/sky-chip.js +210 -0
  96. package/dist/sky-chip/sky-chip.js.map +1 -0
  97. package/dist/sky-col/index.d.ts +1 -0
  98. package/dist/sky-col/index.js +1 -0
  99. package/dist/sky-col/sky-col.d.ts +84 -0
  100. package/dist/sky-col/sky-col.js +46 -0
  101. package/dist/sky-col/sky-col.js.map +1 -0
  102. package/dist/sky-combobox/index.d.ts +1 -0
  103. package/dist/sky-combobox/index.js +1 -0
  104. package/dist/sky-combobox/sky-combobox.d.ts +313 -0
  105. package/dist/sky-combobox/sky-combobox.js +1146 -0
  106. package/dist/sky-combobox/sky-combobox.js.map +1 -0
  107. package/dist/sky-counter/index.d.ts +1 -0
  108. package/dist/sky-counter/index.js +1 -0
  109. package/dist/sky-counter/sky-counter.d.ts +130 -0
  110. package/dist/sky-counter/sky-counter.js +101 -0
  111. package/dist/sky-counter/sky-counter.js.map +1 -0
  112. package/dist/sky-dialog/index.d.ts +1 -0
  113. package/dist/sky-dialog/index.js +1 -0
  114. package/dist/sky-dialog/sky-dialog.d.ts +237 -0
  115. package/dist/sky-dialog/sky-dialog.js +265 -0
  116. package/dist/sky-dialog/sky-dialog.js.map +1 -0
  117. package/dist/sky-divider/index.d.ts +1 -0
  118. package/dist/sky-divider/index.js +1 -0
  119. package/dist/sky-divider/sky-divider.d.ts +120 -0
  120. package/dist/sky-divider/sky-divider.js +42 -0
  121. package/dist/sky-divider/sky-divider.js.map +1 -0
  122. package/dist/sky-drawer/index.d.ts +1 -0
  123. package/dist/sky-drawer/index.js +1 -0
  124. package/dist/sky-drawer/sky-drawer.d.ts +161 -0
  125. package/dist/sky-drawer/sky-drawer.js +177 -0
  126. package/dist/sky-drawer/sky-drawer.js.map +1 -0
  127. package/dist/sky-dropdown/index.d.ts +1 -0
  128. package/dist/sky-dropdown/index.js +1 -0
  129. package/dist/sky-dropdown/sky-dropdown.d.ts +252 -0
  130. package/dist/sky-dropdown/sky-dropdown.js +58 -0
  131. package/dist/sky-dropdown/sky-dropdown.js.map +1 -0
  132. package/dist/sky-dropdown-item/index.d.ts +1 -0
  133. package/dist/sky-dropdown-item/index.js +1 -0
  134. package/dist/sky-dropdown-item/sky-dropdown-item.d.ts +207 -0
  135. package/dist/sky-dropdown-item/sky-dropdown-item.js +341 -0
  136. package/dist/sky-dropdown-item/sky-dropdown-item.js.map +1 -0
  137. package/dist/sky-flexbar/index.d.ts +1 -0
  138. package/dist/sky-flexbar/index.js +1 -0
  139. package/dist/sky-flexbar/sky-flexbar.d.ts +189 -0
  140. package/dist/sky-flexbar/sky-flexbar.js +148 -0
  141. package/dist/sky-flexbar/sky-flexbar.js.map +1 -0
  142. package/dist/sky-flexbox/index.d.ts +1 -0
  143. package/dist/sky-flexbox/index.js +1 -0
  144. package/dist/sky-flexbox/sky-flexbox.d.ts +156 -0
  145. package/dist/sky-flexbox/sky-flexbox.js +40 -0
  146. package/dist/sky-flexbox/sky-flexbox.js.map +1 -0
  147. package/dist/sky-flexcol/index.d.ts +1 -0
  148. package/dist/sky-flexcol/index.js +1 -0
  149. package/dist/sky-flexcol/sky-flexcol.d.ts +154 -0
  150. package/dist/sky-flexcol/sky-flexcol.js +14 -0
  151. package/dist/sky-flexcol/sky-flexcol.js.map +1 -0
  152. package/dist/sky-flexitem/index.d.ts +1 -0
  153. package/dist/sky-flexitem/index.js +1 -0
  154. package/dist/sky-flexitem/sky-flexitem.d.ts +114 -0
  155. package/dist/sky-flexitem/sky-flexitem.js +45 -0
  156. package/dist/sky-flexitem/sky-flexitem.js.map +1 -0
  157. package/dist/sky-form/index.d.ts +1 -0
  158. package/dist/sky-form/index.js +1 -0
  159. package/dist/sky-form/sky-form.d.ts +286 -0
  160. package/dist/sky-form/sky-form.js +66 -0
  161. package/dist/sky-form/sky-form.js.map +1 -0
  162. package/dist/sky-grid/index.d.ts +1 -0
  163. package/dist/sky-grid/index.js +1 -0
  164. package/dist/sky-grid/sky-grid.d.ts +78 -0
  165. package/dist/sky-grid/sky-grid.js +40 -0
  166. package/dist/sky-grid/sky-grid.js.map +1 -0
  167. package/dist/sky-icon/index.d.ts +1 -0
  168. package/dist/sky-icon/index.js +1 -0
  169. package/dist/sky-icon/ion-local.json.js +2 -0
  170. package/dist/sky-icon/ion-local.json.js.map +1 -0
  171. package/dist/sky-icon/sky-icon.d.ts +123 -0
  172. package/dist/sky-icon/sky-icon.js +40 -0
  173. package/dist/sky-icon/sky-icon.js.map +1 -0
  174. package/dist/sky-image/index.d.ts +1 -0
  175. package/dist/sky-image/index.js +1 -0
  176. package/dist/sky-image/sky-image.d.ts +102 -0
  177. package/dist/sky-image/sky-image.js +29 -0
  178. package/dist/sky-image/sky-image.js.map +1 -0
  179. package/dist/sky-input/index.d.ts +1 -0
  180. package/dist/sky-input/index.js +1 -0
  181. package/dist/sky-input/sky-input.d.ts +345 -0
  182. package/dist/sky-input/sky-input.js +820 -0
  183. package/dist/sky-input/sky-input.js.map +1 -0
  184. package/dist/sky-list/index.d.ts +1 -0
  185. package/dist/sky-list/index.js +1 -0
  186. package/dist/sky-list/sky-list.d.ts +85 -0
  187. package/dist/sky-list/sky-list.js +41 -0
  188. package/dist/sky-list/sky-list.js.map +1 -0
  189. package/dist/sky-listitem/index.d.ts +1 -0
  190. package/dist/sky-listitem/index.js +1 -0
  191. package/dist/sky-listitem/sky-listitem.d.ts +76 -0
  192. package/dist/sky-listitem/sky-listitem.js +104 -0
  193. package/dist/sky-listitem/sky-listitem.js.map +1 -0
  194. package/dist/sky-navbar/index.d.ts +1 -0
  195. package/dist/sky-navbar/index.js +1 -0
  196. package/dist/sky-navbar/sky-navbar.d.ts +207 -0
  197. package/dist/sky-navbar/sky-navbar.js +521 -0
  198. package/dist/sky-navbar/sky-navbar.js.map +1 -0
  199. package/dist/sky-navpanel/index.d.ts +1 -0
  200. package/dist/sky-navpanel/index.js +1 -0
  201. package/dist/sky-navpanel/sky-navpanel.d.ts +186 -0
  202. package/dist/sky-navpanel/sky-navpanel.js +404 -0
  203. package/dist/sky-navpanel/sky-navpanel.js.map +1 -0
  204. package/dist/sky-notification/index.d.ts +1 -0
  205. package/dist/sky-notification/index.js +1 -0
  206. package/dist/sky-notification/sky-notification.d.ts +152 -0
  207. package/dist/sky-notification/sky-notification.js +456 -0
  208. package/dist/sky-notification/sky-notification.js.map +1 -0
  209. package/dist/sky-otp/index.d.ts +1 -0
  210. package/dist/sky-otp/index.js +1 -0
  211. package/dist/sky-otp/sky-otp.d.ts +101 -0
  212. package/dist/sky-otp/sky-otp.js +96 -0
  213. package/dist/sky-otp/sky-otp.js.map +1 -0
  214. package/dist/sky-overlay/index.d.ts +1 -0
  215. package/dist/sky-overlay/index.js +1 -0
  216. package/dist/sky-overlay/sky-overlay.d.ts +71 -0
  217. package/dist/sky-overlay/sky-overlay.js +26 -0
  218. package/dist/sky-overlay/sky-overlay.js.map +1 -0
  219. package/dist/sky-pagination/index.d.ts +1 -0
  220. package/dist/sky-pagination/index.js +1 -0
  221. package/dist/sky-pagination/sky-pagination.d.ts +167 -0
  222. package/dist/sky-pagination/sky-pagination.js +453 -0
  223. package/dist/sky-pagination/sky-pagination.js.map +1 -0
  224. package/dist/sky-progress/index.d.ts +1 -0
  225. package/dist/sky-progress/index.js +1 -0
  226. package/dist/sky-progress/sky-progress.d.ts +70 -0
  227. package/dist/sky-progress/sky-progress.js +87 -0
  228. package/dist/sky-progress/sky-progress.js.map +1 -0
  229. package/dist/sky-radio/index.d.ts +1 -0
  230. package/dist/sky-radio/index.js +1 -0
  231. package/dist/sky-radio/sky-radio.d.ts +118 -0
  232. package/dist/sky-radio/sky-radio.js +109 -0
  233. package/dist/sky-radio/sky-radio.js.map +1 -0
  234. package/dist/sky-radio-group/index.d.ts +1 -0
  235. package/dist/sky-radio-group/index.js +1 -0
  236. package/dist/sky-radio-group/sky-radio-group.d.ts +186 -0
  237. package/dist/sky-radio-group/sky-radio-group.js +239 -0
  238. package/dist/sky-radio-group/sky-radio-group.js.map +1 -0
  239. package/dist/sky-range/index.d.ts +1 -0
  240. package/dist/sky-range/index.js +1 -0
  241. package/dist/sky-range/sky-range.d.ts +110 -0
  242. package/dist/sky-range/sky-range.js +196 -0
  243. package/dist/sky-range/sky-range.js.map +1 -0
  244. package/dist/sky-row/index.d.ts +1 -0
  245. package/dist/sky-row/index.js +1 -0
  246. package/dist/sky-row/sky-row.d.ts +57 -0
  247. package/dist/sky-row/sky-row.js +6 -0
  248. package/dist/sky-row/sky-row.js.map +1 -0
  249. package/dist/sky-serial/index.d.ts +1 -0
  250. package/dist/sky-serial/index.js +1 -0
  251. package/dist/sky-serial/sky-serial.d.ts +127 -0
  252. package/dist/sky-serial/sky-serial.js +133 -0
  253. package/dist/sky-serial/sky-serial.js.map +1 -0
  254. package/dist/sky-sheet/index.d.ts +1 -0
  255. package/dist/sky-sheet/index.js +1 -0
  256. package/dist/sky-sheet/sky-sheet.d.ts +70 -0
  257. package/dist/sky-sheet/sky-sheet.js +47 -0
  258. package/dist/sky-sheet/sky-sheet.js.map +1 -0
  259. package/dist/sky-skeleton/index.d.ts +1 -0
  260. package/dist/sky-skeleton/index.js +1 -0
  261. package/dist/sky-skeleton/sky-skeleton.d.ts +80 -0
  262. package/dist/sky-skeleton/sky-skeleton.js +233 -0
  263. package/dist/sky-skeleton/sky-skeleton.js.map +1 -0
  264. package/dist/sky-slider/index.d.ts +1 -0
  265. package/dist/sky-slider/index.js +1 -0
  266. package/dist/sky-slider/sky-slider.d.ts +96 -0
  267. package/dist/sky-slider/sky-slider.js +139 -0
  268. package/dist/sky-slider/sky-slider.js.map +1 -0
  269. package/dist/sky-speeddial/index.d.ts +1 -0
  270. package/dist/sky-speeddial/index.js +1 -0
  271. package/dist/sky-speeddial/sky-speeddial.d.ts +86 -0
  272. package/dist/sky-speeddial/sky-speeddial.js +154 -0
  273. package/dist/sky-speeddial/sky-speeddial.js.map +1 -0
  274. package/dist/sky-spinner/index.d.ts +1 -0
  275. package/dist/sky-spinner/index.js +1 -0
  276. package/dist/sky-spinner/sky-spinner.d.ts +87 -0
  277. package/dist/sky-spinner/sky-spinner.js +334 -0
  278. package/dist/sky-spinner/sky-spinner.js.map +1 -0
  279. package/dist/sky-steps/index.d.ts +1 -0
  280. package/dist/sky-steps/index.js +1 -0
  281. package/dist/sky-steps/sky-steps.d.ts +170 -0
  282. package/dist/sky-steps/sky-steps.js +455 -0
  283. package/dist/sky-steps/sky-steps.js.map +1 -0
  284. package/dist/sky-switch/index.d.ts +1 -0
  285. package/dist/sky-switch/index.js +1 -0
  286. package/dist/sky-switch/sky-switch.d.ts +116 -0
  287. package/dist/sky-switch/sky-switch.js +191 -0
  288. package/dist/sky-switch/sky-switch.js.map +1 -0
  289. package/dist/sky-tab/index.d.ts +1 -0
  290. package/dist/sky-tab/index.js +1 -0
  291. package/dist/sky-tab/sky-tab.d.ts +188 -0
  292. package/dist/sky-tab/sky-tab.js +390 -0
  293. package/dist/sky-tab/sky-tab.js.map +1 -0
  294. package/dist/sky-tab-button/index.d.ts +1 -0
  295. package/dist/sky-tab-button/index.js +1 -0
  296. package/dist/sky-tab-button/sky-tab-button.d.ts +114 -0
  297. package/dist/sky-tab-button/sky-tab-button.js +167 -0
  298. package/dist/sky-tab-button/sky-tab-button.js.map +1 -0
  299. package/dist/sky-theme-provider/index.d.ts +1 -0
  300. package/dist/sky-theme-provider/index.js +1 -0
  301. package/dist/sky-theme-provider/sky-theme-provider.d.ts +169 -0
  302. package/dist/sky-theme-provider/sky-theme-provider.js +12 -0
  303. package/dist/sky-theme-provider/sky-theme-provider.js.map +1 -0
  304. package/dist/sky-theme-switcher/index.d.ts +1 -0
  305. package/dist/sky-theme-switcher/index.js +1 -0
  306. package/dist/sky-theme-switcher/sky-theme-switcher.d.ts +92 -0
  307. package/dist/sky-theme-switcher/sky-theme-switcher.js +43 -0
  308. package/dist/sky-theme-switcher/sky-theme-switcher.js.map +1 -0
  309. package/dist/sky-tooltip/index.d.ts +1 -0
  310. package/dist/sky-tooltip/index.js +1 -0
  311. package/dist/sky-tooltip/sky-tooltip.d.ts +156 -0
  312. package/dist/sky-tooltip/sky-tooltip.js +242 -0
  313. package/dist/sky-tooltip/sky-tooltip.js.map +1 -0
  314. package/package.json +475 -0
  315. package/plugins/rollup-plugin.d.ts +19 -0
  316. package/plugins/rollup-plugin.js +129 -0
  317. package/plugins/vite-plugin.d.ts +22 -0
  318. package/plugins/vite-plugin.js +116 -0
  319. package/plugins/webpack-plugin.d.ts +12 -0
  320. package/plugins/webpack-plugin.js +46 -0
@@ -0,0 +1,84 @@
1
+ import { LitElement } from "lit";
2
+ export type SkyColAlign = "stretch" | "start" | "center" | "end" | "baseline";
3
+ export type SkyColJustify = "start" | "center" | "end" | "space-between" | "space-around" | "space-evenly";
4
+ /**
5
+ * @element sky-col
6
+ *
7
+ * @summary Grid/flex column helper with responsive spans and configurable alignment/justification.
8
+ *
9
+ * @status stable
10
+ * @since 1.0.0
11
+ *
12
+ * @documentation https://library.sky-ui.com/components/grid
13
+ *
14
+ * @slot title - Optional title content shown before main content.
15
+ * @slot - Default content for the column body.
16
+ *
17
+ * @csspart col - The column container.
18
+ *
19
+ * @property {number} span - Default column span.
20
+ * @property {string} gap - Internal content gap CSS value.
21
+ * @property {SkyColJustify} justify - Content justification within the column.
22
+ * @property {SkyColAlign} align - Content alignment within the column.
23
+ * @property {number | undefined} start - Optional explicit grid column start.
24
+ * @property {number | undefined} end - Optional explicit grid column end.
25
+ * @property {number | undefined} sm - Responsive span for small breakpoint.
26
+ * @property {number | undefined} md - Responsive span for medium breakpoint.
27
+ * @property {number | undefined} lg - Responsive span for large breakpoint.
28
+ * @property {number | undefined} xl - Responsive span for extra-large breakpoint.
29
+ * @method refreshLayout Reapplies internal CSS variables from current properties.
30
+ *
31
+ * @Behavior
32
+ * - Applies span and responsive spans through host CSS variables.
33
+ * - Supports explicit `start`/`end` grid positioning when provided.
34
+ * - Automatically updates layout variables when relevant properties change.
35
+ *
36
+ * @example
37
+ * ```html
38
+ * <sky-col span="4" md="6" justify="space-between" align="center">
39
+ * <span slot="title">Revenue</span>
40
+ * Q2 performance details
41
+ * </sky-col>
42
+ * ```
43
+ * ```vue
44
+ * <template>
45
+ * <sky-col span="4" md="6" justify="space-between" align="center">
46
+ * <span slot="title">Revenue</span>
47
+ * Q2 performance details
48
+ * </sky-col>
49
+ * </template>
50
+ * ```
51
+ * ```jsx
52
+ * export default function Demo() {
53
+ * return (
54
+ * <sky-col span="4" md="6" justify="space-between" align="center">
55
+ * <span slot="title">Revenue</span>
56
+ * Q2 performance details
57
+ * </sky-col>
58
+ * );
59
+ * }
60
+ * ```
61
+ */
62
+ export declare class SkyCol extends LitElement {
63
+ span: number;
64
+ gap: string;
65
+ justify: SkyColJustify;
66
+ align: SkyColAlign;
67
+ start?: number;
68
+ end?: number;
69
+ sm?: number;
70
+ md?: number;
71
+ lg?: number;
72
+ xl?: number;
73
+ static styles: import("lit").CSSResult;
74
+ firstUpdated(): void;
75
+ updated(changed: Map<string | number | symbol, unknown>): void;
76
+ /**
77
+ * Reapplies internal CSS variables from current properties.
78
+ *
79
+ * @returns {void}
80
+ */
81
+ refreshLayout(): void;
82
+ private syncVars;
83
+ render(): import("lit-html").TemplateResult<1>;
84
+ }
@@ -0,0 +1,46 @@
1
+ import{__decorate as t,__metadata as s}from"tslib";import{property as e,customElement as i}from"lit/decorators.js";import{when as r}from"lit/directives/when.js";import{LitElement as o,css as p,html as a}from"lit";let l=class extends o{constructor(){super(...arguments),this.span=1,this.gap="0",this.justify="center",this.align="stretch"}static{this.styles=p`
2
+ :host {
3
+ display: contents;
4
+ }
5
+
6
+ .col {
7
+ display: flex;
8
+ flex-direction: column;
9
+ grid-column: span var(--col-span, 1);
10
+ gap: var(--col-gap, 0);
11
+ align-items: var(--col-align, stretch);
12
+ justify-content: var(--col-justify, center);
13
+ }
14
+
15
+ ::slotted([slot="title"]) {
16
+ font-weight: bold;
17
+ margin-bottom: 0.5rem;
18
+ }
19
+
20
+ @media (max-width: 768px) {
21
+ .col {
22
+ grid-column: span var(--col-span-sm, var(--col-span, 1));
23
+ }
24
+ }
25
+ @media (max-width: 992px) {
26
+ .col {
27
+ grid-column: span var(--col-span-md, var(--col-span, 1));
28
+ }
29
+ }
30
+ @media (max-width: 1200px) {
31
+ .col {
32
+ grid-column: span var(--col-span-lg, var(--col-span, 1));
33
+ }
34
+ }
35
+ @media (min-width: 1201px) {
36
+ .col {
37
+ grid-column: span var(--col-span-xl, var(--col-span, var(--col-span, 1)));
38
+ }
39
+ }
40
+ `}firstUpdated(){this.syncVars()}updated(t){(t.has("span")||t.has("gap")||t.has("justify")||t.has("align")||t.has("sm")||t.has("md")||t.has("lg")||t.has("xl")||t.has("start")||t.has("end"))&&this.syncVars()}refreshLayout(){this.syncVars()}syncVars(){this.style.setProperty("--col-span",String(this.span)),this.style.setProperty("--col-gap",this.gap),this.style.setProperty("--col-justify",this.justify),this.style.setProperty("--col-align",this.align),this.sm&&this.style.setProperty("--col-span-sm",String(this.sm)),this.md&&this.style.setProperty("--col-span-md",String(this.md)),this.lg&&this.style.setProperty("--col-span-lg",String(this.lg)),this.xl&&this.style.setProperty("--col-span-xl",String(this.xl)),this.start&&this.style.setProperty("--col-start",String(this.start)),this.end&&this.style.setProperty("--col-end",String(this.end))}render(){const t=this.start||this.end?`grid-column: ${this.start??"auto"} / ${this.end??"auto"};`:"";return a`
41
+ <div class="col" style=${r(this.start||this.end,()=>t,()=>"")} part="col">
42
+ <slot name="title"></slot>
43
+ <slot></slot>
44
+ </div>
45
+ `}};t([e({type:Number}),s("design:type",Object)],l.prototype,"span",void 0),t([e({type:String}),s("design:type",Object)],l.prototype,"gap",void 0),t([e({type:String}),s("design:type",String)],l.prototype,"justify",void 0),t([e({type:String}),s("design:type",String)],l.prototype,"align",void 0),t([e({type:Number}),s("design:type",Number)],l.prototype,"start",void 0),t([e({type:Number}),s("design:type",Number)],l.prototype,"end",void 0),t([e({type:Number}),s("design:type",Number)],l.prototype,"sm",void 0),t([e({type:Number}),s("design:type",Number)],l.prototype,"md",void 0),t([e({type:Number}),s("design:type",Number)],l.prototype,"lg",void 0),t([e({type:Number}),s("design:type",Number)],l.prototype,"xl",void 0),l=t([i("sky-col")],l);export{l as SkyCol};
46
+ //# sourceMappingURL=sky-col.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sky-col.js","sources":["../../src/sky-col/sky-col.ts"],"sourcesContent":[null],"names":["SkyCol","LitElement","constructor","this","span","gap","justify","align","styles","css","firstUpdated","syncVars","updated","changed","has","refreshLayout","style","setProperty","String","sm","md","lg","xl","start","end","render","gridStyle","html","when","__decorate","property","type","Number","prototype","customElement"],"mappings":"qNAwEO,IAAMA,EAAN,cAAqBC,EAArB,WAAAC,uBACuBC,KAAAC,KAAO,EACPD,KAAAE,IAAM,IACNF,KAAAG,QAAyB,SACzBH,KAAAI,MAAqB,SA6GnD,QAnGkBJ,KAAAK,OAASC,CAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuC1B,CAEO,YAAAC,GACPP,KAAKQ,UACP,CAES,OAAAC,CAAQC,IAEbA,EAAQC,IAAI,SACZD,EAAQC,IAAI,QACZD,EAAQC,IAAI,YACZD,EAAQC,IAAI,UACZD,EAAQC,IAAI,OACZD,EAAQC,IAAI,OACZD,EAAQC,IAAI,OACZD,EAAQC,IAAI,OACZD,EAAQC,IAAI,UACZD,EAAQC,IAAI,SAEZX,KAAKQ,UAET,CAOO,aAAAI,GACLZ,KAAKQ,UACP,CAEQ,QAAAA,GACNR,KAAKa,MAAMC,YAAY,aAAcC,OAAOf,KAAKC,OACjDD,KAAKa,MAAMC,YAAY,YAAad,KAAKE,KACzCF,KAAKa,MAAMC,YAAY,gBAAiBd,KAAKG,SAC7CH,KAAKa,MAAMC,YAAY,cAAed,KAAKI,OAEvCJ,KAAKgB,IAAIhB,KAAKa,MAAMC,YAAY,gBAAiBC,OAAOf,KAAKgB,KAC7DhB,KAAKiB,IAAIjB,KAAKa,MAAMC,YAAY,gBAAiBC,OAAOf,KAAKiB,KAC7DjB,KAAKkB,IAAIlB,KAAKa,MAAMC,YAAY,gBAAiBC,OAAOf,KAAKkB,KAC7DlB,KAAKmB,IAAInB,KAAKa,MAAMC,YAAY,gBAAiBC,OAAOf,KAAKmB,KAE7DnB,KAAKoB,OAAOpB,KAAKa,MAAMC,YAAY,cAAeC,OAAOf,KAAKoB,QAC9DpB,KAAKqB,KAAKrB,KAAKa,MAAMC,YAAY,YAAaC,OAAOf,KAAKqB,KAChE,CAES,MAAAC,GACP,MAAMC,EACJvB,KAAKoB,OAASpB,KAAKqB,IACf,gBAAgBrB,KAAKoB,OAAS,YAAYpB,KAAKqB,KAAO,UACtD,GAEN,OAAOG,CAAI;+BACgBC,EAAKzB,KAAKoB,OAASpB,KAAKqB,IAAK,IAAME,EAAW,IAAM;;;;KAKjF,GA/G4BG,EAAA,CAA3BC,EAAS,CAAEC,KAAMC,kCAAmBhC,EAAAiC,UAAA,eACTJ,EAAA,CAA3BC,EAAS,CAAEC,KAAMb,kCAAoBlB,EAAAiC,UAAA,cACVJ,EAAA,CAA3BC,EAAS,CAAEC,KAAMb,kCAA4ClB,EAAAiC,UAAA,kBAClCJ,EAAA,CAA3BC,EAAS,CAAEC,KAAMb,kCAAyClB,EAAAiC,UAAA,gBAE/BJ,EAAA,CAA3BC,EAAS,CAAEC,KAAMC,kCAAyBhC,EAAAiC,UAAA,gBACfJ,EAAA,CAA3BC,EAAS,CAAEC,KAAMC,kCAAuBhC,EAAAiC,UAAA,cAEbJ,EAAA,CAA3BC,EAAS,CAAEC,KAAMC,kCAAsBhC,EAAAiC,UAAA,aACZJ,EAAA,CAA3BC,EAAS,CAAEC,KAAMC,kCAAsBhC,EAAAiC,UAAA,aACZJ,EAAA,CAA3BC,EAAS,CAAEC,KAAMC,kCAAsBhC,EAAAiC,UAAA,aACZJ,EAAA,CAA3BC,EAAS,CAAEC,KAAMC,kCAAsBhC,EAAAiC,UAAA,aAZ7BjC,EAAM6B,EAAA,CADlBK,EAAc,YACFlC"}
@@ -0,0 +1 @@
1
+ export * from "./sky-combobox";
@@ -0,0 +1 @@
1
+ export * from './sky-combobox.js';
@@ -0,0 +1,313 @@
1
+ import { FormControlBase, FormState } from "../helper/internals/form-control-base";
2
+ export type SkyComboboxJustify = "flex-start" | "center" | "flex-end" | "space-between" | "space-around" | "space-evenly";
3
+ export type SkyComboboxErrorDisplayMode = "single" | "all" | "none";
4
+ export type SkyComboboxIconPosition = "left" | "right";
5
+ export type SkyComboboxValueChangedDetail = {
6
+ value: any | any[];
7
+ selectedItems: any[];
8
+ emittedValues?: any | any[];
9
+ isFilteredSelection?: boolean;
10
+ };
11
+ export type SkyComboboxSearchQueryChangedDetail = {
12
+ searchQuery: string;
13
+ };
14
+ export type SkyComboboxValidationErrorDetail = {
15
+ errors: string[];
16
+ };
17
+ export type SkyComboboxValidationSuccessDetail = {
18
+ value: any;
19
+ };
20
+ export type SkyComboboxIconClickDetail = {
21
+ position: SkyComboboxIconPosition;
22
+ event: MouseEvent;
23
+ };
24
+ export type SkyComboboxAddNewOptionDetail = {
25
+ value: string;
26
+ };
27
+ /**
28
+ * @element sky-combobox
29
+ *
30
+ * @summary Interactive combobox with single/multi select, search, chips, validation, and popover-based option selection.
31
+ *
32
+ * @status stable
33
+ * @since 1.0.0
34
+ *
35
+ * @documentation https://library.sky-ui.com/components/combobox
36
+ * @dependency sky-icon
37
+ * @dependency sky-checkbox
38
+ *
39
+ * @uiVModel value value-changed
40
+ * @uiVModel searchQuery search-query-changed
41
+ *
42
+ * @slot icon-left - Slot for the left icon in the combobox (e.g., search icon).
43
+ * @slot icon-right - Slot for the right icon in the combobox (e.g., dropdown icon).
44
+ * @slot - Default slot for adding custom options or content.
45
+ *
46
+ * @csspart combo-box-container - The main container element wrapping the entire component
47
+ * @csspart input-wrapper - The input field wrapper that contains chips, icons, and dropdown button
48
+ * @csspart icon-slot - Both left and right icon containers
49
+ * @csspart placeholder-label - The placeholder text label
50
+ * @csspart clear-button - The clear (×) button
51
+ * @csspart dropdown-button - The dropdown toggle arrow button
52
+ * @csspart chip-container - Container for the chips in multi-select mode
53
+ * @csspart chip - Individual chip element
54
+ * @csspart single-select-chip - Chip shown in single-select mode
55
+ * @csspart overflow-chip - The "+N" chip that shows hidden chips count
56
+ * @csspart remove-chip-icon - The remove icon within chips
57
+ * @csspart hidden-chips-dropdown - Dropdown that appears when clicking overflow chip
58
+ * @csspart hidden-chip-inner - Individual chip in the hidden chips dropdown
59
+ * @csspart hidden-chip-label - Label text in hidden chips dropdown
60
+ * @csspart dropdown - The main dropdown container
61
+ * @csspart search-container - Container for the search input in the dropdown
62
+ * @csspart search-input - The search input field
63
+ * @csspart add-option-icon - The "+" icon for adding new options
64
+ * @csspart select-all - The "Select All" row in the dropdown
65
+ * @csspart checkbox - Checkbox elements in multi-select mode
66
+ * @csspart option - Individual option row in the dropdown
67
+ * @csspart highlighted-text - Highlighted text in search results
68
+ * @csspart no-options - "No options found" message
69
+ * @csspart error-list - Container for validation error messages
70
+ * @csspart error-item - Individual validation error message
71
+ * @csspart dropdown-scroller - Scrollable container for dropdown options
72
+ * @csspart chip-label - Label text within chips
73
+ *
74
+ * @fires {CustomEvent<SkyComboboxValueChangedDetail>} value-changed - Fired whenever selection changes.
75
+ * @fires {CustomEvent<SkyComboboxSearchQueryChangedDetail>} search-query-changed - Fired when search query changes.
76
+ * @fires {CustomEvent<SkyComboboxValidationErrorDetail>} validation-error - Fired when validation fails.
77
+ * @fires {CustomEvent<SkyComboboxValidationSuccessDetail>} validation-success - Fired when validation passes.
78
+ * @fires {CustomEvent<SkyComboboxIconClickDetail>} icon-click - Fired when icon slot is clicked.
79
+ * @fires {CustomEvent<SkyComboboxAddNewOptionDetail>} add-new-option - Fired when user confirms adding a new option.
80
+ *
81
+ * @property {any} value - Current selection value (single) or value array (multi).
82
+ * @property {string} placeholder - Main placeholder text.
83
+ * @property {string} searchPlaceholder - Search input placeholder text.
84
+ * @property {string} searchQuery - Current search filter text when `searchable` is enabled. Default: `""`.
85
+ * @property {string} label - Optional external label text.
86
+ * @property {any[]} options - Available options list.
87
+ * @property {boolean} searchable - Enables search input and filtering.
88
+ * @property {boolean} addOption - Enables ad-hoc option creation from search query.
89
+ * @property {boolean} multiSelect - Enables multi-select chip behavior.
90
+ * @property {boolean} selectAll - Shows select-all row in eligible modes.
91
+ * @property {boolean} clearable - Shows clear button when value exists.
92
+ * @property {boolean} loading - Shows loading affordance.
93
+ * @property {boolean} compact - Enables compact sizing.
94
+ * @property {boolean} disabled - Disables interaction.
95
+ * @property {boolean} required - Enables required validation.
96
+ * @property {boolean} readonly - Enables read-only mode.
97
+ * @property {boolean} emitFullObject - Emits full option objects in events.
98
+ * @property {string} emittedKey - Key emitted from object options when `emitFullObject` is false.
99
+ * @property {string} displayKey - Key used for visual labels in object options.
100
+ * @property {number} visibleChips - Number of visible chips before `+N` overflow chip.
101
+ * @property {number} chipSize - Maximum label length for each chip.
102
+ * @property {string} color - Accent color token/CSS color.
103
+ * @property {number} zIndex - Dropdown overlay z-index.
104
+ * @property {string} height - Max dropdown scroll height.
105
+ * @property {boolean} openAbove - Opens dropdown above when true.
106
+ * @property {SkyComboboxJustify} justify - Option-row content justification.
107
+ * @property {boolean} showErrors - Renders validation errors below control.
108
+ * @property {SkyComboboxErrorDisplayMode} errorDisplayMode - Validation error rendering strategy.
109
+ * @property {(value:any)=>true|string} validations - External validator callbacks.
110
+ * @property {boolean} validationArrayFormat - Sends selected array into validators when true.
111
+ * @property {string} prefix - Optional inline prefix text.
112
+ * @property {string} suffix - Optional inline suffix text.
113
+ * @property {string} prefixColor - Prefix color value.
114
+ * @property {string} suffixColor - Suffix color value.
115
+ * @property {string} requiredMessage - Required validation failure text.
116
+ * @property {boolean} enforceMinOneSelection - Prevents clearing all selections in multi-select mode.
117
+ * @property {boolean} validationActive - Enables validation UI state.
118
+ * @property {boolean} invalid - Reflects invalid state.
119
+ * @property {string} variant - Visual variant style.
120
+ *
121
+ * @method openDropdown Opens the combobox dropdown.
122
+ * @method closeDropdown Closes the combobox dropdown.
123
+ * @method clearSelection Clears current selection if allowed.
124
+ * @method reset Resets combobox state and clears validation UI.
125
+ *
126
+ * @example
127
+ * ```html
128
+ * <sky-combobox label="Assignee" searchable clearable placeholder="Select user"></sky-combobox>
129
+ * ```
130
+ * ```vue
131
+ * <template>
132
+ * <sky-combobox label="Assignee" searchable clearable placeholder="Select user"></sky-combobox>
133
+ * </template>
134
+ * ```
135
+ * ```jsx
136
+ * export default function Demo() {
137
+ * return <sky-combobox label="Assignee" searchable clearable placeholder="Select user"></sky-combobox>;
138
+ * }
139
+ * ```
140
+ */
141
+ export declare class SkyCombobox extends FormControlBase {
142
+ static dependencies: Record<string, CustomElementConstructor>;
143
+ /** Current value. Set via attribute in HTML (e.g. value="option-1") or via JS (string or array when multiSelect). Not reflected when set to array from JS. */
144
+ value: any;
145
+ placeholder: string;
146
+ searchPlaceholder: string;
147
+ label: string;
148
+ options: any[];
149
+ chipSize: number;
150
+ color: string;
151
+ clearable: boolean;
152
+ loading: boolean;
153
+ compact: boolean;
154
+ disabled: boolean;
155
+ searchable: boolean;
156
+ multiSelect: boolean;
157
+ visibleChips: number;
158
+ selectAll: boolean;
159
+ validations: ((value: any) => true | string)[];
160
+ showErrors: boolean;
161
+ errorDisplayMode: SkyComboboxErrorDisplayMode;
162
+ required: boolean;
163
+ emitFullObject: boolean;
164
+ emittedKey: string;
165
+ displayKey: string;
166
+ addOption: boolean;
167
+ validationArrayFormat: boolean;
168
+ prefix: string;
169
+ suffix: string;
170
+ prefixColor: string;
171
+ suffixColor: string;
172
+ justify: SkyComboboxJustify;
173
+ zIndex: number;
174
+ height: string;
175
+ requiredMessage: string;
176
+ readonly: boolean;
177
+ enforceMinOneSelection: boolean;
178
+ openAbove: boolean;
179
+ validationActive: boolean;
180
+ invalid: boolean;
181
+ variant: string;
182
+ /** Current search filter when `searchable`; exposed for controlled search / `v-model:search-query`. */
183
+ searchQuery: string;
184
+ filteredOptions: any[];
185
+ focused: boolean;
186
+ open: boolean;
187
+ selectedItems: any[];
188
+ hiddenChipsOpen: boolean;
189
+ activeIndex: number;
190
+ validationErrors: string[];
191
+ validationStatus: any[];
192
+ private hasLeftIcon;
193
+ private hasRightIcon;
194
+ private optionSlotSet;
195
+ private inputWrapperEl;
196
+ private dropdownEl;
197
+ private hiddenDropdownEl;
198
+ private searchInputEl;
199
+ private overflowChipEl;
200
+ private comboContainerEl;
201
+ private rowEls;
202
+ private iconLeftEls;
203
+ private iconRightEls;
204
+ private _searchDebounceId;
205
+ private static readonly _SEARCH_DEBOUNCE_MS;
206
+ private static readonly _SEARCH_DEBOUNCE_OPTIONS_THRESHOLD;
207
+ private dropdownPopover;
208
+ private hiddenPopover;
209
+ static styles: import("lit").CSSResult;
210
+ constructor();
211
+ static shadowRootOptions: {
212
+ delegatesFocus: boolean;
213
+ clonable?: boolean;
214
+ customElementRegistry?: CustomElementRegistry;
215
+ mode: ShadowRootMode;
216
+ serializable?: boolean;
217
+ slotAssignment?: SlotAssignmentMode;
218
+ };
219
+ connectedCallback(): void;
220
+ firstUpdated(): void;
221
+ private refreshOptionSlots;
222
+ /** Get the current value for form submission */
223
+ protected getFormValue(): FormState;
224
+ /** Set value from form state (e.g., form reset) */
225
+ protected setValueFromFormState(state: FormState): void;
226
+ protected syncFormValue(): void;
227
+ private setValueFromArray;
228
+ /** Get the validity anchor (for validation messages) */
229
+ protected getValidityAnchor(): HTMLElement | undefined;
230
+ /** Check if empty (for required validation) */
231
+ protected isEmpty(): boolean;
232
+ protected getNativeControl(): HTMLElement | null;
233
+ /** Override to provide custom error messages */
234
+ protected getCustomErrorMessage(): string;
235
+ /** Override form reset callback */
236
+ protected onFormReset(): void;
237
+ /** Override form disabled callback */
238
+ protected onFormDisabled(disabled: boolean): void;
239
+ /** Override form state restore callback */
240
+ protected onFormStateRestore(state: FormState): void;
241
+ private toggleSelectAll;
242
+ private isAllFilteredSelected;
243
+ private truncateText;
244
+ private validateInput;
245
+ protected validateForForm(): string;
246
+ focus(options?: FocusOptions): void;
247
+ blur(): void;
248
+ private handleFocus;
249
+ /**
250
+ * Resets combobox state and clears validation UI.
251
+ *
252
+ * @returns {void}
253
+ */
254
+ reset(): void;
255
+ /**
256
+ * Opens the combobox dropdown.
257
+ *
258
+ * @returns {void}
259
+ */
260
+ openDropdown(): void;
261
+ /**
262
+ * Closes the combobox dropdown.
263
+ *
264
+ * @returns {void}
265
+ */
266
+ closeDropdown(): void;
267
+ /**
268
+ * Clears current selection when allowed by component settings.
269
+ *
270
+ * @returns {void}
271
+ */
272
+ clearSelection(): void;
273
+ private handleBlur;
274
+ updated(changedProperties: Map<string, unknown>): void;
275
+ willUpdate(changedProperties: Map<string, unknown>): void;
276
+ private syncSelectedItemsWithValue;
277
+ private filterOptions;
278
+ /** Emit search query for hosts / `v-model:search-query` when `searchQuery` changes outside the search input handler. */
279
+ private emitSearchQueryChanged;
280
+ private handleInput;
281
+ disconnectedCallback(): void;
282
+ private handleClear;
283
+ selectOption(option: any): void;
284
+ toggleHiddenChips(e: Event): void;
285
+ renderHiddenChipsDropdown(): import("lit-html").TemplateResult<1>;
286
+ removeChip(option: any): void;
287
+ renderChips(): import("lit-html").TemplateResult<1>;
288
+ handleKeydown(event: KeyboardEvent): void;
289
+ private onSearchKeydown;
290
+ /** Number of non-option rows before the first option (search + select-all). */
291
+ private get headerRows();
292
+ private getOptionByActiveIndex;
293
+ /**
294
+ * Commits the current keyboard highlight on Enter (search row vs select-all vs option).
295
+ * Shared by {@link handleKeydown} and {@link onSearchKeydown} so focus in the search
296
+ * field matches the same semantics as the input wrapper.
297
+ */
298
+ private commitDropdownEnter;
299
+ /** Focus logic when opening the dropdown. */
300
+ private focusOnOpen;
301
+ private canAddaddOption;
302
+ private handleAddaddOption;
303
+ scrollActiveItemIntoView(): void;
304
+ toggleDropdown(event: MouseEvent): void;
305
+ renderDropdown(): import("lit-html").TemplateResult<1>;
306
+ getOptionValue(option: any): any;
307
+ getOptionLabel(option: any): string;
308
+ renderValidationErrors(): import("lit-html").TemplateResult<1> | null;
309
+ getErrorMessages(): string[];
310
+ handleIconClick(position: "left" | "right", event: MouseEvent): void;
311
+ private onIconSlotChange;
312
+ render(): import("lit-html").TemplateResult<1>;
313
+ }