@aquera/nile-elements 1.6.7 → 1.6.8

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 (218) hide show
  1. package/README.md +4 -0
  2. package/dist/index.cjs.js +1 -1
  3. package/dist/index.esm.js +1 -1
  4. package/dist/index.js +1731 -488
  5. package/dist/internal/enum.cjs.js +1 -1
  6. package/dist/internal/enum.cjs.js.map +1 -1
  7. package/dist/internal/enum.esm.js +1 -1
  8. package/dist/nile-inline-sidebar/index.cjs.js +1 -1
  9. package/dist/nile-inline-sidebar/index.esm.js +1 -1
  10. package/dist/nile-inline-sidebar/nile-inline-sidebar.cjs.js +1 -1
  11. package/dist/nile-inline-sidebar/nile-inline-sidebar.cjs.js.map +1 -1
  12. package/dist/nile-inline-sidebar/nile-inline-sidebar.css.cjs.js +1 -1
  13. package/dist/nile-inline-sidebar/nile-inline-sidebar.css.cjs.js.map +1 -1
  14. package/dist/nile-inline-sidebar/nile-inline-sidebar.css.esm.js +76 -19
  15. package/dist/nile-inline-sidebar/nile-inline-sidebar.esm.js +42 -23
  16. package/dist/nile-inline-sidebar-group/nile-inline-sidebar-group.css.cjs.js +1 -1
  17. package/dist/nile-inline-sidebar-group/nile-inline-sidebar-group.css.cjs.js.map +1 -1
  18. package/dist/nile-inline-sidebar-group/nile-inline-sidebar-group.css.esm.js +8 -9
  19. package/dist/nile-inline-sidebar-item/index.cjs.js +1 -1
  20. package/dist/nile-inline-sidebar-item/index.esm.js +1 -1
  21. package/dist/nile-inline-sidebar-item/nile-inline-sidebar-item.cjs.js +1 -1
  22. package/dist/nile-inline-sidebar-item/nile-inline-sidebar-item.cjs.js.map +1 -1
  23. package/dist/nile-inline-sidebar-item/nile-inline-sidebar-item.css.cjs.js +1 -1
  24. package/dist/nile-inline-sidebar-item/nile-inline-sidebar-item.css.cjs.js.map +1 -1
  25. package/dist/nile-inline-sidebar-item/nile-inline-sidebar-item.css.esm.js +16 -18
  26. package/dist/nile-inline-sidebar-item/nile-inline-sidebar-item.esm.js +22 -4
  27. package/dist/nile-inline-sidebar-item-body/index.cjs.js +2 -0
  28. package/dist/nile-inline-sidebar-item-body/index.cjs.js.map +1 -0
  29. package/dist/nile-inline-sidebar-item-body/index.esm.js +1 -0
  30. package/dist/nile-inline-sidebar-item-body/nile-inline-sidebar-item-body.cjs.js +2 -0
  31. package/dist/nile-inline-sidebar-item-body/nile-inline-sidebar-item-body.cjs.js.map +1 -0
  32. package/dist/nile-inline-sidebar-item-body/nile-inline-sidebar-item-body.css.cjs.js +2 -0
  33. package/dist/nile-inline-sidebar-item-body/nile-inline-sidebar-item-body.css.cjs.js.map +1 -0
  34. package/dist/nile-inline-sidebar-item-body/nile-inline-sidebar-item-body.css.esm.js +53 -0
  35. package/dist/nile-inline-sidebar-item-body/nile-inline-sidebar-item-body.esm.js +13 -0
  36. package/dist/nile-inline-sidebar-item-header/index.cjs.js +2 -0
  37. package/dist/nile-inline-sidebar-item-header/index.cjs.js.map +1 -0
  38. package/dist/nile-inline-sidebar-item-header/index.esm.js +1 -0
  39. package/dist/nile-inline-sidebar-item-header/nile-inline-sidebar-item-header.cjs.js +2 -0
  40. package/dist/nile-inline-sidebar-item-header/nile-inline-sidebar-item-header.cjs.js.map +1 -0
  41. package/dist/nile-inline-sidebar-item-header/nile-inline-sidebar-item-header.css.cjs.js +2 -0
  42. package/dist/nile-inline-sidebar-item-header/nile-inline-sidebar-item-header.css.cjs.js.map +1 -0
  43. package/dist/nile-inline-sidebar-item-header/nile-inline-sidebar-item-header.css.esm.js +27 -0
  44. package/dist/nile-inline-sidebar-item-header/nile-inline-sidebar-item-header.esm.js +16 -0
  45. package/dist/nile-inline-sidebar-panel/index.cjs.js +2 -0
  46. package/dist/nile-inline-sidebar-panel/index.cjs.js.map +1 -0
  47. package/dist/nile-inline-sidebar-panel/index.esm.js +1 -0
  48. package/dist/nile-inline-sidebar-panel/nile-inline-sidebar-panel.cjs.js +2 -0
  49. package/dist/nile-inline-sidebar-panel/nile-inline-sidebar-panel.cjs.js.map +1 -0
  50. package/dist/nile-inline-sidebar-panel/nile-inline-sidebar-panel.css.cjs.js +2 -0
  51. package/dist/nile-inline-sidebar-panel/nile-inline-sidebar-panel.css.cjs.js.map +1 -0
  52. package/dist/nile-inline-sidebar-panel/nile-inline-sidebar-panel.css.esm.js +19 -0
  53. package/dist/nile-inline-sidebar-panel/nile-inline-sidebar-panel.esm.js +5 -0
  54. package/dist/nile-inline-sidebar-panel-group/index.cjs.js +2 -0
  55. package/dist/nile-inline-sidebar-panel-group/index.cjs.js.map +1 -0
  56. package/dist/nile-inline-sidebar-panel-group/index.esm.js +1 -0
  57. package/dist/nile-inline-sidebar-panel-group/nile-inline-sidebar-panel-group.cjs.js +2 -0
  58. package/dist/nile-inline-sidebar-panel-group/nile-inline-sidebar-panel-group.cjs.js.map +1 -0
  59. package/dist/nile-inline-sidebar-panel-group/nile-inline-sidebar-panel-group.css.cjs.js +2 -0
  60. package/dist/nile-inline-sidebar-panel-group/nile-inline-sidebar-panel-group.css.cjs.js.map +1 -0
  61. package/dist/nile-inline-sidebar-panel-group/nile-inline-sidebar-panel-group.css.esm.js +30 -0
  62. package/dist/nile-inline-sidebar-panel-group/nile-inline-sidebar-panel-group.esm.js +12 -0
  63. package/dist/nile-nav-tab/index.cjs.js +2 -0
  64. package/dist/nile-nav-tab/index.cjs.js.map +1 -0
  65. package/dist/nile-nav-tab/index.esm.js +1 -0
  66. package/dist/nile-nav-tab/nile-nav-tab.cjs.js +2 -0
  67. package/dist/nile-nav-tab/nile-nav-tab.cjs.js.map +1 -0
  68. package/dist/nile-nav-tab/nile-nav-tab.css.cjs.js +2 -0
  69. package/dist/nile-nav-tab/nile-nav-tab.css.cjs.js.map +1 -0
  70. package/dist/nile-nav-tab/nile-nav-tab.css.esm.js +190 -0
  71. package/dist/nile-nav-tab/nile-nav-tab.esm.js +36 -0
  72. package/dist/nile-nav-tab-group/index.cjs.js +2 -0
  73. package/dist/nile-nav-tab-group/index.cjs.js.map +1 -0
  74. package/dist/nile-nav-tab-group/index.esm.js +1 -0
  75. package/dist/nile-nav-tab-group/nile-nav-tab-group.cjs.js +4 -0
  76. package/dist/nile-nav-tab-group/nile-nav-tab-group.cjs.js.map +1 -0
  77. package/dist/nile-nav-tab-group/nile-nav-tab-group.css.cjs.js +2 -0
  78. package/dist/nile-nav-tab-group/nile-nav-tab-group.css.cjs.js.map +1 -0
  79. package/dist/nile-nav-tab-group/nile-nav-tab-group.css.esm.js +668 -0
  80. package/dist/nile-nav-tab-group/nile-nav-tab-group.esm.js +61 -0
  81. package/dist/nile-nav-tab-panel/index.cjs.js +2 -0
  82. package/dist/nile-nav-tab-panel/index.cjs.js.map +1 -0
  83. package/dist/nile-nav-tab-panel/index.esm.js +1 -0
  84. package/dist/nile-nav-tab-panel/nile-nav-tab-panel.cjs.js +2 -0
  85. package/dist/nile-nav-tab-panel/nile-nav-tab-panel.cjs.js.map +1 -0
  86. package/dist/nile-nav-tab-panel/nile-nav-tab-panel.css.cjs.js +2 -0
  87. package/dist/nile-nav-tab-panel/nile-nav-tab-panel.css.cjs.js.map +1 -0
  88. package/dist/nile-nav-tab-panel/nile-nav-tab-panel.css.esm.js +22 -0
  89. package/dist/nile-nav-tab-panel/nile-nav-tab-panel.esm.js +8 -0
  90. package/dist/src/index.d.ts +7 -0
  91. package/dist/src/index.js +7 -0
  92. package/dist/src/index.js.map +1 -1
  93. package/dist/src/internal/enum.d.ts +6 -0
  94. package/dist/src/internal/enum.js +7 -0
  95. package/dist/src/internal/enum.js.map +1 -1
  96. package/dist/src/nile-inline-sidebar/nile-inline-sidebar.css.d.ts +1 -0
  97. package/dist/src/nile-inline-sidebar/nile-inline-sidebar.css.js +75 -17
  98. package/dist/src/nile-inline-sidebar/nile-inline-sidebar.css.js.map +1 -1
  99. package/dist/src/nile-inline-sidebar/nile-inline-sidebar.d.ts +17 -1
  100. package/dist/src/nile-inline-sidebar/nile-inline-sidebar.js +147 -18
  101. package/dist/src/nile-inline-sidebar/nile-inline-sidebar.js.map +1 -1
  102. package/dist/src/nile-inline-sidebar-group/nile-inline-sidebar-group.css.d.ts +1 -0
  103. package/dist/src/nile-inline-sidebar-group/nile-inline-sidebar-group.css.js +7 -7
  104. package/dist/src/nile-inline-sidebar-group/nile-inline-sidebar-group.css.js.map +1 -1
  105. package/dist/src/nile-inline-sidebar-item/nile-inline-sidebar-item.css.d.ts +1 -1
  106. package/dist/src/nile-inline-sidebar-item/nile-inline-sidebar-item.css.js +15 -17
  107. package/dist/src/nile-inline-sidebar-item/nile-inline-sidebar-item.css.js.map +1 -1
  108. package/dist/src/nile-inline-sidebar-item/nile-inline-sidebar-item.d.ts +7 -1
  109. package/dist/src/nile-inline-sidebar-item/nile-inline-sidebar-item.js +63 -4
  110. package/dist/src/nile-inline-sidebar-item/nile-inline-sidebar-item.js.map +1 -1
  111. package/dist/src/nile-inline-sidebar-item-body/index.d.ts +1 -0
  112. package/dist/src/nile-inline-sidebar-item-body/index.js +2 -0
  113. package/dist/src/nile-inline-sidebar-item-body/index.js.map +1 -0
  114. package/dist/src/nile-inline-sidebar-item-body/nile-inline-sidebar-item-body.css.d.ts +9 -0
  115. package/dist/src/nile-inline-sidebar-item-body/nile-inline-sidebar-item-body.css.js +62 -0
  116. package/dist/src/nile-inline-sidebar-item-body/nile-inline-sidebar-item-body.css.js.map +1 -0
  117. package/dist/src/nile-inline-sidebar-item-body/nile-inline-sidebar-item-body.d.ts +45 -0
  118. package/dist/src/nile-inline-sidebar-item-body/nile-inline-sidebar-item-body.js +110 -0
  119. package/dist/src/nile-inline-sidebar-item-body/nile-inline-sidebar-item-body.js.map +1 -0
  120. package/dist/src/nile-inline-sidebar-item-header/index.d.ts +1 -0
  121. package/dist/src/nile-inline-sidebar-item-header/index.js +2 -0
  122. package/dist/src/nile-inline-sidebar-item-header/index.js.map +1 -0
  123. package/dist/src/nile-inline-sidebar-item-header/nile-inline-sidebar-item-header.css.d.ts +9 -0
  124. package/dist/src/nile-inline-sidebar-item-header/nile-inline-sidebar-item-header.css.js +36 -0
  125. package/dist/src/nile-inline-sidebar-item-header/nile-inline-sidebar-item-header.css.js.map +1 -0
  126. package/dist/src/nile-inline-sidebar-item-header/nile-inline-sidebar-item-header.d.ts +34 -0
  127. package/dist/src/nile-inline-sidebar-item-header/nile-inline-sidebar-item-header.js +68 -0
  128. package/dist/src/nile-inline-sidebar-item-header/nile-inline-sidebar-item-header.js.map +1 -0
  129. package/dist/src/nile-inline-sidebar-panel/index.d.ts +1 -0
  130. package/dist/src/nile-inline-sidebar-panel/index.js +2 -0
  131. package/dist/src/nile-inline-sidebar-panel/index.js.map +1 -0
  132. package/dist/src/nile-inline-sidebar-panel/nile-inline-sidebar-panel.css.d.ts +9 -0
  133. package/dist/src/nile-inline-sidebar-panel/nile-inline-sidebar-panel.css.js +28 -0
  134. package/dist/src/nile-inline-sidebar-panel/nile-inline-sidebar-panel.css.js.map +1 -0
  135. package/dist/src/nile-inline-sidebar-panel/nile-inline-sidebar-panel.d.ts +35 -0
  136. package/dist/src/nile-inline-sidebar-panel/nile-inline-sidebar-panel.js +55 -0
  137. package/dist/src/nile-inline-sidebar-panel/nile-inline-sidebar-panel.js.map +1 -0
  138. package/dist/src/nile-inline-sidebar-panel-group/index.d.ts +1 -0
  139. package/dist/src/nile-inline-sidebar-panel-group/index.js +2 -0
  140. package/dist/src/nile-inline-sidebar-panel-group/index.js.map +1 -0
  141. package/dist/src/nile-inline-sidebar-panel-group/nile-inline-sidebar-panel-group.css.d.ts +9 -0
  142. package/dist/src/nile-inline-sidebar-panel-group/nile-inline-sidebar-panel-group.css.js +39 -0
  143. package/dist/src/nile-inline-sidebar-panel-group/nile-inline-sidebar-panel-group.css.js.map +1 -0
  144. package/dist/src/nile-inline-sidebar-panel-group/nile-inline-sidebar-panel-group.d.ts +43 -0
  145. package/dist/src/nile-inline-sidebar-panel-group/nile-inline-sidebar-panel-group.js +93 -0
  146. package/dist/src/nile-inline-sidebar-panel-group/nile-inline-sidebar-panel-group.js.map +1 -0
  147. package/dist/src/nile-nav-tab/index.d.ts +1 -0
  148. package/dist/src/nile-nav-tab/index.js +2 -0
  149. package/dist/src/nile-nav-tab/index.js.map +1 -0
  150. package/dist/src/nile-nav-tab/nile-nav-tab.css.d.ts +9 -0
  151. package/dist/src/nile-nav-tab/nile-nav-tab.css.js +199 -0
  152. package/dist/src/nile-nav-tab/nile-nav-tab.css.js.map +1 -0
  153. package/dist/src/nile-nav-tab/nile-nav-tab.d.ts +50 -0
  154. package/dist/src/nile-nav-tab/nile-nav-tab.js +190 -0
  155. package/dist/src/nile-nav-tab/nile-nav-tab.js.map +1 -0
  156. package/dist/src/nile-nav-tab/nile-nav-tab.test.d.ts +1 -0
  157. package/dist/src/nile-nav-tab/nile-nav-tab.test.js +656 -0
  158. package/dist/src/nile-nav-tab/nile-nav-tab.test.js.map +1 -0
  159. package/dist/src/nile-nav-tab-group/index.d.ts +1 -0
  160. package/dist/src/nile-nav-tab-group/index.js +2 -0
  161. package/dist/src/nile-nav-tab-group/index.js.map +1 -0
  162. package/dist/src/nile-nav-tab-group/nile-nav-tab-group.css.d.ts +12 -0
  163. package/dist/src/nile-nav-tab-group/nile-nav-tab-group.css.js +680 -0
  164. package/dist/src/nile-nav-tab-group/nile-nav-tab-group.css.js.map +1 -0
  165. package/dist/src/nile-nav-tab-group/nile-nav-tab-group.d.ts +119 -0
  166. package/dist/src/nile-nav-tab-group/nile-nav-tab-group.js +765 -0
  167. package/dist/src/nile-nav-tab-group/nile-nav-tab-group.js.map +1 -0
  168. package/dist/src/nile-nav-tab-group/nile-nav-tab-group.test.d.ts +3 -0
  169. package/dist/src/nile-nav-tab-group/nile-nav-tab-group.test.js +838 -0
  170. package/dist/src/nile-nav-tab-group/nile-nav-tab-group.test.js.map +1 -0
  171. package/dist/src/nile-nav-tab-panel/index.d.ts +1 -0
  172. package/dist/src/nile-nav-tab-panel/index.js +2 -0
  173. package/dist/src/nile-nav-tab-panel/index.js.map +1 -0
  174. package/dist/src/nile-nav-tab-panel/nile-nav-tab-panel.css.d.ts +15 -0
  175. package/dist/src/nile-nav-tab-panel/nile-nav-tab-panel.css.js +37 -0
  176. package/dist/src/nile-nav-tab-panel/nile-nav-tab-panel.css.js.map +1 -0
  177. package/dist/src/nile-nav-tab-panel/nile-nav-tab-panel.d.ts +37 -0
  178. package/dist/src/nile-nav-tab-panel/nile-nav-tab-panel.js +75 -0
  179. package/dist/src/nile-nav-tab-panel/nile-nav-tab-panel.js.map +1 -0
  180. package/dist/src/nile-nav-tab-panel/nile-nav-tab-panel.test.d.ts +1 -0
  181. package/dist/src/nile-nav-tab-panel/nile-nav-tab-panel.test.js +534 -0
  182. package/dist/src/nile-nav-tab-panel/nile-nav-tab-panel.test.js.map +1 -0
  183. package/dist/src/version.js +1 -1
  184. package/dist/src/version.js.map +1 -1
  185. package/dist/tsconfig.tsbuildinfo +1 -1
  186. package/package.json +8 -3
  187. package/src/index.ts +7 -0
  188. package/src/internal/enum.ts +8 -1
  189. package/src/nile-inline-sidebar/nile-inline-sidebar.css.ts +75 -17
  190. package/src/nile-inline-sidebar/nile-inline-sidebar.ts +148 -18
  191. package/src/nile-inline-sidebar-group/nile-inline-sidebar-group.css.ts +7 -7
  192. package/src/nile-inline-sidebar-item/nile-inline-sidebar-item.css.ts +15 -17
  193. package/src/nile-inline-sidebar-item/nile-inline-sidebar-item.ts +74 -9
  194. package/src/nile-inline-sidebar-item-body/index.ts +1 -0
  195. package/src/nile-inline-sidebar-item-body/nile-inline-sidebar-item-body.css.ts +64 -0
  196. package/src/nile-inline-sidebar-item-body/nile-inline-sidebar-item-body.ts +110 -0
  197. package/src/nile-inline-sidebar-item-header/index.ts +1 -0
  198. package/src/nile-inline-sidebar-item-header/nile-inline-sidebar-item-header.css.ts +38 -0
  199. package/src/nile-inline-sidebar-item-header/nile-inline-sidebar-item-header.ts +69 -0
  200. package/src/nile-inline-sidebar-panel/index.ts +1 -0
  201. package/src/nile-inline-sidebar-panel/nile-inline-sidebar-panel.css.ts +30 -0
  202. package/src/nile-inline-sidebar-panel/nile-inline-sidebar-panel.ts +53 -0
  203. package/src/nile-inline-sidebar-panel-group/index.ts +1 -0
  204. package/src/nile-inline-sidebar-panel-group/nile-inline-sidebar-panel-group.css.ts +41 -0
  205. package/src/nile-inline-sidebar-panel-group/nile-inline-sidebar-panel-group.ts +101 -0
  206. package/src/nile-nav-tab/index.ts +1 -0
  207. package/src/nile-nav-tab/nile-nav-tab.css.ts +201 -0
  208. package/src/nile-nav-tab/nile-nav-tab.test.ts +768 -0
  209. package/src/nile-nav-tab/nile-nav-tab.ts +198 -0
  210. package/src/nile-nav-tab-group/index.ts +1 -0
  211. package/src/nile-nav-tab-group/nile-nav-tab-group.css.ts +682 -0
  212. package/src/nile-nav-tab-group/nile-nav-tab-group.test.ts +1009 -0
  213. package/src/nile-nav-tab-group/nile-nav-tab-group.ts +845 -0
  214. package/src/nile-nav-tab-panel/index.ts +1 -0
  215. package/src/nile-nav-tab-panel/nile-nav-tab-panel.css.ts +39 -0
  216. package/src/nile-nav-tab-panel/nile-nav-tab-panel.test.ts +797 -0
  217. package/src/nile-nav-tab-panel/nile-nav-tab-panel.ts +78 -0
  218. package/vscode-html-custom-data.json +272 -2
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Copyright Aquera Inc 2025
3
+ *
4
+ * This source code is licensed under the BSD-3-Clause license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+ import { CSSResultArray, TemplateResult } from 'lit';
8
+ import NileElement from '../internal/nile-element';
9
+ /**
10
+ * Content panel associated with a `nile-inline-sidebar-item`.
11
+ * Linked via the item's `panel` property matching this panel's `name`.
12
+ *
13
+ * @tag nile-inline-sidebar-panel
14
+ *
15
+ * @attr name - Identifier that links this panel to a sidebar item's `panel` property.
16
+ * @attr active - Whether this panel is currently visible.
17
+ *
18
+ * @slot - Default slot for panel content.
19
+ *
20
+ * @csspart base - The panel container.
21
+ */
22
+ export declare class NileInlineSidebarPanel extends NileElement {
23
+ /** Identifier that links this panel to a sidebar item's `panel` property. */
24
+ name: string;
25
+ /** Whether this panel is currently visible. */
26
+ active: boolean;
27
+ static get styles(): CSSResultArray;
28
+ render(): TemplateResult;
29
+ }
30
+ export default NileInlineSidebarPanel;
31
+ declare global {
32
+ interface HTMLElementTagNameMap {
33
+ 'nile-inline-sidebar-panel': NileInlineSidebarPanel;
34
+ }
35
+ }
@@ -0,0 +1,55 @@
1
+ /**
2
+ * Copyright Aquera Inc 2025
3
+ *
4
+ * This source code is licensed under the BSD-3-Clause license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+ import { __decorate } from "tslib";
8
+ import { html } from 'lit';
9
+ import { customElement, property } from 'lit/decorators.js';
10
+ import { styles } from './nile-inline-sidebar-panel.css';
11
+ import NileElement from '../internal/nile-element';
12
+ /**
13
+ * Content panel associated with a `nile-inline-sidebar-item`.
14
+ * Linked via the item's `panel` property matching this panel's `name`.
15
+ *
16
+ * @tag nile-inline-sidebar-panel
17
+ *
18
+ * @attr name - Identifier that links this panel to a sidebar item's `panel` property.
19
+ * @attr active - Whether this panel is currently visible.
20
+ *
21
+ * @slot - Default slot for panel content.
22
+ *
23
+ * @csspart base - The panel container.
24
+ */
25
+ let NileInlineSidebarPanel = class NileInlineSidebarPanel extends NileElement {
26
+ constructor() {
27
+ super(...arguments);
28
+ /** Identifier that links this panel to a sidebar item's `panel` property. */
29
+ this.name = '';
30
+ /** Whether this panel is currently visible. */
31
+ this.active = false;
32
+ }
33
+ static get styles() {
34
+ return [styles];
35
+ }
36
+ render() {
37
+ return html `
38
+ <div class="panel" part="base">
39
+ <slot></slot>
40
+ </div>
41
+ `;
42
+ }
43
+ };
44
+ __decorate([
45
+ property({ type: String, reflect: true })
46
+ ], NileInlineSidebarPanel.prototype, "name", void 0);
47
+ __decorate([
48
+ property({ type: Boolean, reflect: true })
49
+ ], NileInlineSidebarPanel.prototype, "active", void 0);
50
+ NileInlineSidebarPanel = __decorate([
51
+ customElement('nile-inline-sidebar-panel')
52
+ ], NileInlineSidebarPanel);
53
+ export { NileInlineSidebarPanel };
54
+ export default NileInlineSidebarPanel;
55
+ //# sourceMappingURL=nile-inline-sidebar-panel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nile-inline-sidebar-panel.js","sourceRoot":"","sources":["../../../src/nile-inline-sidebar-panel/nile-inline-sidebar-panel.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;;AAEH,OAAO,EAAE,IAAI,EAAkC,MAAM,KAAK,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAC;AACzD,OAAO,WAAW,MAAM,0BAA0B,CAAC;AAEnD;;;;;;;;;;;;GAYG;AAEI,IAAM,sBAAsB,GAA5B,MAAM,sBAAuB,SAAQ,WAAW;IAAhD;;QACL,6EAA6E;QAClC,SAAI,GAAG,EAAE,CAAC;QAErD,+CAA+C;QACH,WAAM,GAAG,KAAK,CAAC;IAa7D,CAAC;IAXQ,MAAM,KAAK,MAAM;QACtB,OAAO,CAAC,MAAM,CAAC,CAAC;IAClB,CAAC;IAEM,MAAM;QACX,OAAO,IAAI,CAAA;;;;KAIV,CAAC;IACJ,CAAC;CACF,CAAA;AAhB4C;IAA1C,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;oDAAW;AAGT;IAA3C,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;sDAAgB;AALhD,sBAAsB;IADlC,aAAa,CAAC,2BAA2B,CAAC;GAC9B,sBAAsB,CAkBlC;;AAED,eAAe,sBAAsB,CAAC","sourcesContent":["/**\n * Copyright Aquera Inc 2025\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { html, CSSResultArray, TemplateResult } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { styles } from './nile-inline-sidebar-panel.css';\nimport NileElement from '../internal/nile-element';\n\n/**\n * Content panel associated with a `nile-inline-sidebar-item`.\n * Linked via the item's `panel` property matching this panel's `name`.\n *\n * @tag nile-inline-sidebar-panel\n *\n * @attr name - Identifier that links this panel to a sidebar item's `panel` property.\n * @attr active - Whether this panel is currently visible.\n *\n * @slot - Default slot for panel content.\n *\n * @csspart base - The panel container.\n */\n@customElement('nile-inline-sidebar-panel')\nexport class NileInlineSidebarPanel extends NileElement {\n /** Identifier that links this panel to a sidebar item's `panel` property. */\n @property({ type: String, reflect: true }) name = '';\n\n /** Whether this panel is currently visible. */\n @property({ type: Boolean, reflect: true }) active = false;\n\n public static get styles(): CSSResultArray {\n return [styles];\n }\n\n public render(): TemplateResult {\n return html`\n <div class=\"panel\" part=\"base\">\n <slot></slot>\n </div>\n `;\n }\n}\n\nexport default NileInlineSidebarPanel;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-inline-sidebar-panel': NileInlineSidebarPanel;\n }\n}\n"]}
@@ -0,0 +1 @@
1
+ export { NileInlineSidebarPanelGroup } from './nile-inline-sidebar-panel-group';
@@ -0,0 +1,2 @@
1
+ export { NileInlineSidebarPanelGroup } from './nile-inline-sidebar-panel-group';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/nile-inline-sidebar-panel-group/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC","sourcesContent":["export { NileInlineSidebarPanelGroup } from './nile-inline-sidebar-panel-group';\n"]}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Copyright Aquera Inc 2025
3
+ *
4
+ * This source code is licensed under the BSD-3-Clause license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+ export declare const styles: import("lit").CSSResult;
8
+ declare const _default: import("lit").CSSResult[];
9
+ export default _default;
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Copyright Aquera Inc 2025
3
+ *
4
+ * This source code is licensed under the BSD-3-Clause license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+ import { css } from 'lit';
8
+ export const styles = css `
9
+ :host {
10
+ display: flex;
11
+ height: 100%;
12
+ width: 100%;
13
+ }
14
+
15
+ .panel-group {
16
+ display: flex;
17
+ height: 100%;
18
+ width: 100%;
19
+ }
20
+
21
+ :host([placement='right']) .panel-group {
22
+ flex-direction: row-reverse;
23
+ }
24
+
25
+ .sidebar-container {
26
+ display: flex;
27
+ flex-shrink: 0;
28
+ }
29
+
30
+ .panel-container {
31
+ flex: 1;
32
+ min-width: 0;
33
+ height: 100%;
34
+ display: flex;
35
+ overflow: hidden;
36
+ }
37
+ `;
38
+ export default [styles];
39
+ //# sourceMappingURL=nile-inline-sidebar-panel-group.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nile-inline-sidebar-panel-group.css.js","sourceRoot":"","sources":["../../../src/nile-inline-sidebar-panel-group/nile-inline-sidebar-panel-group.css.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6BxB,CAAC;AAEF,eAAe,CAAC,MAAM,CAAC,CAAC","sourcesContent":["/**\n * Copyright Aquera Inc 2025\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { css } from 'lit';\n\nexport const styles = css`\n :host {\n display: flex;\n height: 100%;\n width: 100%;\n }\n\n .panel-group {\n display: flex;\n height: 100%;\n width: 100%;\n }\n\n :host([placement='right']) .panel-group {\n flex-direction: row-reverse;\n }\n\n .sidebar-container {\n display: flex;\n flex-shrink: 0;\n }\n\n .panel-container {\n flex: 1;\n min-width: 0;\n height: 100%;\n display: flex;\n overflow: hidden;\n }\n`;\n\nexport default [styles];\n"]}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * Copyright Aquera Inc 2025
3
+ *
4
+ * This source code is licensed under the BSD-3-Clause license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+ import { CSSResultArray, TemplateResult } from 'lit';
8
+ import NileElement from '../internal/nile-element';
9
+ /**
10
+ * Layout container that positions a `nile-inline-sidebar` beside one or more
11
+ * `nile-inline-sidebar-panel` elements. Handles panel switching when sidebar
12
+ * items are clicked.
13
+ *
14
+ * @tag nile-inline-sidebar-panel-group
15
+ *
16
+ * @attr placement - Mirror of the sidebar's placement. Controls flex direction.
17
+ *
18
+ * @slot sidebar - Slot for the `nile-inline-sidebar` element.
19
+ * @slot - Default slot for `nile-inline-sidebar-panel` elements.
20
+ *
21
+ * @csspart base - The outer flex container.
22
+ * @csspart sidebar-container - Wrapper around the sidebar slot.
23
+ * @csspart panel-container - Wrapper around the panel slot.
24
+ */
25
+ export declare class NileInlineSidebarPanelGroup extends NileElement {
26
+ /** Mirrors the sidebar's placement to control layout direction. */
27
+ placement: 'left' | 'right';
28
+ private defaultSlot;
29
+ static get styles(): CSSResultArray;
30
+ connectedCallback(): void;
31
+ disconnectedCallback(): void;
32
+ private get panels();
33
+ private handleSidebarItemClick;
34
+ /** Activate a panel by name, deactivating all others. */
35
+ activatePanel(name: string): void;
36
+ render(): TemplateResult;
37
+ }
38
+ export default NileInlineSidebarPanelGroup;
39
+ declare global {
40
+ interface HTMLElementTagNameMap {
41
+ 'nile-inline-sidebar-panel-group': NileInlineSidebarPanelGroup;
42
+ }
43
+ }
@@ -0,0 +1,93 @@
1
+ /**
2
+ * Copyright Aquera Inc 2025
3
+ *
4
+ * This source code is licensed under the BSD-3-Clause license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+ import { __decorate } from "tslib";
8
+ import { html } from 'lit';
9
+ import { customElement, property, query } from 'lit/decorators.js';
10
+ import { styles } from './nile-inline-sidebar-panel-group.css';
11
+ import NileElement from '../internal/nile-element';
12
+ /**
13
+ * Layout container that positions a `nile-inline-sidebar` beside one or more
14
+ * `nile-inline-sidebar-panel` elements. Handles panel switching when sidebar
15
+ * items are clicked.
16
+ *
17
+ * @tag nile-inline-sidebar-panel-group
18
+ *
19
+ * @attr placement - Mirror of the sidebar's placement. Controls flex direction.
20
+ *
21
+ * @slot sidebar - Slot for the `nile-inline-sidebar` element.
22
+ * @slot - Default slot for `nile-inline-sidebar-panel` elements.
23
+ *
24
+ * @csspart base - The outer flex container.
25
+ * @csspart sidebar-container - Wrapper around the sidebar slot.
26
+ * @csspart panel-container - Wrapper around the panel slot.
27
+ */
28
+ let NileInlineSidebarPanelGroup = class NileInlineSidebarPanelGroup extends NileElement {
29
+ constructor() {
30
+ super(...arguments);
31
+ /** Mirrors the sidebar's placement to control layout direction. */
32
+ this.placement = 'left';
33
+ this.handleSidebarItemClick = (event) => {
34
+ const detail = event.detail;
35
+ const panelName = detail?.item?.panel;
36
+ if (!panelName)
37
+ return;
38
+ this.activatePanel(panelName);
39
+ };
40
+ }
41
+ static get styles() {
42
+ return [styles];
43
+ }
44
+ connectedCallback() {
45
+ super.connectedCallback();
46
+ this.addEventListener('nile-click', this.handleSidebarItemClick);
47
+ }
48
+ disconnectedCallback() {
49
+ super.disconnectedCallback();
50
+ this.removeEventListener('nile-click', this.handleSidebarItemClick);
51
+ }
52
+ get panels() {
53
+ if (!this.defaultSlot)
54
+ return [];
55
+ return this.defaultSlot
56
+ .assignedElements({ flatten: true })
57
+ .filter((el) => el.tagName.toLowerCase() === 'nile-inline-sidebar-panel');
58
+ }
59
+ /** Activate a panel by name, deactivating all others. */
60
+ activatePanel(name) {
61
+ const allPanels = this.panels;
62
+ allPanels.forEach(panel => {
63
+ panel.active = panel.name === name;
64
+ });
65
+ this.emit('nile-panel-change', { panel: name });
66
+ }
67
+ render() {
68
+ return html `
69
+ <div class="panel-group" part="base">
70
+ <div class="sidebar-container" part="sidebar-container">
71
+ <slot name="sidebar"></slot>
72
+ </div>
73
+ <div class="panel-container" part="panel-container">
74
+ <slot
75
+ @slotchange=${() => this.requestUpdate()}
76
+ ></slot>
77
+ </div>
78
+ </div>
79
+ `;
80
+ }
81
+ };
82
+ __decorate([
83
+ property({ type: String, reflect: true })
84
+ ], NileInlineSidebarPanelGroup.prototype, "placement", void 0);
85
+ __decorate([
86
+ query('slot:not([name])')
87
+ ], NileInlineSidebarPanelGroup.prototype, "defaultSlot", void 0);
88
+ NileInlineSidebarPanelGroup = __decorate([
89
+ customElement('nile-inline-sidebar-panel-group')
90
+ ], NileInlineSidebarPanelGroup);
91
+ export { NileInlineSidebarPanelGroup };
92
+ export default NileInlineSidebarPanelGroup;
93
+ //# sourceMappingURL=nile-inline-sidebar-panel-group.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nile-inline-sidebar-panel-group.js","sourceRoot":"","sources":["../../../src/nile-inline-sidebar-panel-group/nile-inline-sidebar-panel-group.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;;AAEH,OAAO,EAAE,IAAI,EAAkC,MAAM,KAAK,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAC/D,OAAO,WAAW,MAAM,0BAA0B,CAAC;AAGnD;;;;;;;;;;;;;;;GAeG;AAEI,IAAM,2BAA2B,GAAjC,MAAM,2BAA4B,SAAQ,WAAW;IAArD;;QACL,mEAAmE;QACxB,cAAS,GAAqB,MAAM,CAAC;QA4BxE,2BAAsB,GAAG,CAAC,KAAY,EAAE,EAAE;YAChD,MAAM,MAAM,GAAI,KAAqB,CAAC,MAAM,CAAC;YAC7C,MAAM,SAAS,GAAuB,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC;YAC1D,IAAI,CAAC,SAAS;gBAAE,OAAO;YAEvB,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QAChC,CAAC,CAAC;IA0BJ,CAAC;IAxDQ,MAAM,KAAK,MAAM;QACtB,OAAO,CAAC,MAAM,CAAC,CAAC;IAClB,CAAC;IAED,iBAAiB;QACf,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,IAAI,CAAC,sBAAsB,CAAC,CAAC;IACnE,CAAC;IAED,oBAAoB;QAClB,KAAK,CAAC,oBAAoB,EAAE,CAAC;QAC7B,IAAI,CAAC,mBAAmB,CAAC,YAAY,EAAE,IAAI,CAAC,sBAAsB,CAAC,CAAC;IACtE,CAAC;IAED,IAAY,MAAM;QAChB,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,OAAO,EAAE,CAAC;QACjC,OAAO,IAAI,CAAC,WAAW;aACpB,gBAAgB,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;aACnC,MAAM,CACL,CAAC,EAAE,EAAgC,EAAE,CACnC,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,2BAA2B,CAC3D,CAAC;IACN,CAAC;IAUD,yDAAyD;IAClD,aAAa,CAAC,IAAY;QAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC;QAC9B,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACxB,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC;QACrC,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAClD,CAAC;IAEM,MAAM;QACX,OAAO,IAAI,CAAA;;;;;;;0BAOW,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE;;;;KAI/C,CAAC;IACJ,CAAC;CACF,CAAA;AA5D4C;IAA1C,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;8DAAsC;AAE7C;IAAlC,KAAK,CAAC,kBAAkB,CAAC;gEAAuC;AAJtD,2BAA2B;IADvC,aAAa,CAAC,iCAAiC,CAAC;GACpC,2BAA2B,CA8DvC;;AAED,eAAe,2BAA2B,CAAC","sourcesContent":["/**\n * Copyright Aquera Inc 2025\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { html, CSSResultArray, TemplateResult } from 'lit';\nimport { customElement, property, query } from 'lit/decorators.js';\nimport { styles } from './nile-inline-sidebar-panel-group.css';\nimport NileElement from '../internal/nile-element';\nimport type { NileInlineSidebarPanel } from '../nile-inline-sidebar-panel/nile-inline-sidebar-panel';\n\n/**\n * Layout container that positions a `nile-inline-sidebar` beside one or more\n * `nile-inline-sidebar-panel` elements. Handles panel switching when sidebar\n * items are clicked.\n *\n * @tag nile-inline-sidebar-panel-group\n *\n * @attr placement - Mirror of the sidebar's placement. Controls flex direction.\n *\n * @slot sidebar - Slot for the `nile-inline-sidebar` element.\n * @slot - Default slot for `nile-inline-sidebar-panel` elements.\n *\n * @csspart base - The outer flex container.\n * @csspart sidebar-container - Wrapper around the sidebar slot.\n * @csspart panel-container - Wrapper around the panel slot.\n */\n@customElement('nile-inline-sidebar-panel-group')\nexport class NileInlineSidebarPanelGroup extends NileElement {\n /** Mirrors the sidebar's placement to control layout direction. */\n @property({ type: String, reflect: true }) placement: 'left' | 'right' = 'left';\n\n @query('slot:not([name])') private defaultSlot!: HTMLSlotElement;\n\n public static get styles(): CSSResultArray {\n return [styles];\n }\n\n connectedCallback() {\n super.connectedCallback();\n this.addEventListener('nile-click', this.handleSidebarItemClick);\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this.removeEventListener('nile-click', this.handleSidebarItemClick);\n }\n\n private get panels(): NileInlineSidebarPanel[] {\n if (!this.defaultSlot) return [];\n return this.defaultSlot\n .assignedElements({ flatten: true })\n .filter(\n (el): el is NileInlineSidebarPanel =>\n el.tagName.toLowerCase() === 'nile-inline-sidebar-panel'\n );\n }\n\n private handleSidebarItemClick = (event: Event) => {\n const detail = (event as CustomEvent).detail;\n const panelName: string | undefined = detail?.item?.panel;\n if (!panelName) return;\n\n this.activatePanel(panelName);\n };\n\n /** Activate a panel by name, deactivating all others. */\n public activatePanel(name: string) {\n const allPanels = this.panels;\n allPanels.forEach(panel => {\n panel.active = panel.name === name;\n });\n\n this.emit('nile-panel-change', { panel: name });\n }\n\n public render(): TemplateResult {\n return html`\n <div class=\"panel-group\" part=\"base\">\n <div class=\"sidebar-container\" part=\"sidebar-container\">\n <slot name=\"sidebar\"></slot>\n </div>\n <div class=\"panel-container\" part=\"panel-container\">\n <slot\n @slotchange=${() => this.requestUpdate()}\n ></slot>\n </div>\n </div>\n `;\n }\n}\n\nexport default NileInlineSidebarPanelGroup;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-inline-sidebar-panel-group': NileInlineSidebarPanelGroup;\n }\n}\n"]}
@@ -0,0 +1 @@
1
+ export { NileNavTab } from './nile-nav-tab';
@@ -0,0 +1,2 @@
1
+ export { NileNavTab } from './nile-nav-tab';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/nile-nav-tab/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC","sourcesContent":["export { NileNavTab } from './nile-nav-tab';"]}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Copyright Aquera Inc 2023
3
+ *
4
+ * This source code is licensed under the BSD-3-Clause license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+ export declare const styles: import("lit").CSSResult;
8
+ declare const _default: import("lit").CSSResult[];
9
+ export default _default;
@@ -0,0 +1,199 @@
1
+ /**
2
+ * Copyright Aquera Inc 2023
3
+ *
4
+ * This source code is licensed under the BSD-3-Clause license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+ import { css } from 'lit';
8
+ export const styles = css `
9
+
10
+ [hidden] {
11
+ display: none;
12
+ }
13
+
14
+ :host {
15
+ display: flex;
16
+ flex-direction: column;
17
+ align-self: stretch;
18
+ position: relative;
19
+
20
+ -webkit-font-smoothing: var(--nile-webkit-font-smoothing, var(--ng-webkit-font-smoothing));
21
+ -moz-osx-font-smoothing: var(--nile-moz-osx-font-smoothing, var(--ng-moz-osx-font-smoothing));
22
+ text-rendering: var(--nile-text-rendering, var(--ng-text-rendering));
23
+ cursor: pointer;
24
+ }
25
+
26
+ :host([centered]) {
27
+ flex: 1;
28
+ text-align: center;
29
+ }
30
+
31
+ /* --------------------------------------------------------------------------
32
+ * Tab shell (list item)
33
+ * -------------------------------------------------------------------------- */
34
+
35
+ .nav-tab-container {
36
+ flex: 1 1 auto;
37
+ width: var(--nav-tab-item-width);
38
+ padding: 0;
39
+ box-sizing: border-box;
40
+ border-radius: var(--nile-nav-tab-radius);
41
+ border: var(--nile-nav-transparent-border);
42
+ transition: background-color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
43
+ position: relative;
44
+ display: flex;
45
+ align-items: stretch;
46
+ list-style: none;
47
+ overflow: var(--nile-nav-tab-container-overflow);
48
+ margin-top: var(--nile-nav-tab-margin);
49
+ margin-bottom: var(--nile-nav-tab-margin);
50
+
51
+ }
52
+
53
+ /* --------------------------------------------------------------------------
54
+ * nile-link wrapper + internal <a> (part base)
55
+ * -------------------------------------------------------------------------- */
56
+
57
+ .nav-tab {
58
+ display: flex;
59
+ flex: 1 1 auto;
60
+ align-self: stretch;
61
+ width: 100%;
62
+ min-width: 0;
63
+ min-height: 0;
64
+ align-items: center;
65
+ box-sizing: border-box;
66
+ }
67
+
68
+ .nav-tab::part(base) {
69
+ display: flex;
70
+ flex: 1 1 auto;
71
+ align-self: stretch;
72
+ width: 100%;
73
+ min-height: 100%;
74
+ height: 100%;
75
+ align-items: center;
76
+ justify-content: var(--justify-content);
77
+ white-space: var(--white-space, nowrap);
78
+ user-select: none;
79
+ transition: 0.2s box-shadow, 0.2s color;
80
+ gap: var(--nile-spacing-md, var(--ng-spacing-md));
81
+ box-sizing: border-box;
82
+ text-decoration: none;
83
+ font-family: var(--nile-font-family-medium, var(--ng-font-family-body));
84
+ font-size: var(--nile-type-scale-3, var(--ng-font-size-text-sm));
85
+ font-style: normal;
86
+ font-weight: var(--nile-font-weight-medium, var(--ng-font-weight-semibold));
87
+ line-height: var(--nile-line-height-xsmall, var(--ng-line-height-text-sm));
88
+ letter-spacing: 0.2px;
89
+ word-break: var(--word-break);
90
+ overflow-wrap: var(--overflow-wrap);
91
+ text-align: var(--text-align);
92
+ padding: var(--nile-nav-tab-padding);
93
+ }
94
+
95
+ /* --------------------------------------------------------------------------
96
+ * Host: active / hover (container + link color)
97
+ * -------------------------------------------------------------------------- */
98
+
99
+ :host([active]) .nav-tab-container {
100
+ background-color: var(--nile-nav-tab-bg-active);
101
+ border-radius: var(--nile-nav-tab-radius);
102
+ border: var(--nile-nav-tab-border);
103
+ box-shadow: var(--nile-nav-tab-active-box-shadow);
104
+ }
105
+
106
+ :host(:hover:not([disabled]):not([active])) .nav-tab-container {
107
+ background-color: var(--nile-nav-tab-bg-hover);
108
+ border: var(--nile-nav-tab-border);
109
+ box-shadow: var(--nile-nav-tab-active-box-shadow);
110
+ }
111
+
112
+ :host(:hover:not([disabled]):not([active])) .nav-tab-container ::part(base) {
113
+ color: var(--nile-nav-tab-text-color-hover, var(--nile-colors-primary-700, var(--ng-colors-text-brand-secondary-700)));
114
+ }
115
+
116
+ /* --------------------------------------------------------------------------
117
+ * nile-link part: label inherits anchor
118
+ * -------------------------------------------------------------------------- */
119
+
120
+ .nav-tab::part(label) {
121
+ color: inherit;
122
+ font-family: inherit;
123
+ font-size: inherit;
124
+ font-style: inherit;
125
+ font-weight: inherit;
126
+ line-height: inherit;
127
+ letter-spacing: inherit;
128
+ }
129
+
130
+ /* --------------------------------------------------------------------------
131
+ * Interaction states (::part base)
132
+ * -------------------------------------------------------------------------- */
133
+
134
+ /* Default (inactive) */
135
+ .nav-tab:not(.nav-tab--active):not(.nav-tab--disabled)::part(base) {
136
+ color: var(--nile-colors-dark-500, var(--ng-colors-text-secondary-700));
137
+ }
138
+
139
+ /* Hover */
140
+ .nav-tab:hover:not(.nav-tab--disabled)::part(base) {
141
+ color: var(--nile-colors-dark-500, var(--ng-colors-text-brand-secondary-700));
142
+ background-color: var(--tab-hover-background-color);
143
+ }
144
+
145
+ /* Focus — roving tabindex is on :host; inner link stays tabindex=-1 */
146
+ :host(:focus-visible:not([disabled])) .nav-tab::part(base) {
147
+ color: var(--nile-colors-primary-600, var(--ng-colors-text-brand-secondary-700));
148
+ }
149
+
150
+ /* Active */
151
+ .nav-tab.nav-tab--active:not(.nav-tab--disabled)::part(base) {
152
+ color: var(--nile-nav-tab-active-color, var(--nile-colors-primary-600, var(--ng-colors-text-brand-secondary-700)));
153
+ background-color: var(--tab-active-background-color);
154
+ }
155
+
156
+ /* --------------------------------------------------------------------------
157
+ * Disabled
158
+ * -------------------------------------------------------------------------- */
159
+
160
+ .nav-tab.nav-tab--disabled {
161
+ cursor: not-allowed;
162
+ }
163
+
164
+ :host([disabled]) .nav-tab-container {
165
+ cursor: not-allowed;
166
+ }
167
+
168
+ .nav-tab.nav-tab--disabled::part(base) {
169
+ color: var(--nile-colors-neutral-500, var(--ng-colors-text-disabled));
170
+ cursor: not-allowed;
171
+ pointer-events: none;
172
+ }
173
+
174
+ .nav-tab.nav-tab--disabled::part(label) {
175
+ color: var(--nile-colors-neutral-500, var(--ng-colors-text-disabled));
176
+ }
177
+
178
+ .nav-tab.nav-tab--disabled:hover::part(base),
179
+ :host([disabled]:focus-visible) .nav-tab::part(base) {
180
+ background-color: transparent;
181
+ }
182
+
183
+ /* --------------------------------------------------------------------------
184
+ * Closable: close button
185
+ * -------------------------------------------------------------------------- */
186
+
187
+ .nav-tab__close-button {
188
+ font-size: var(--nile-type-scale-4, var(--ng-font-size-text-sm));
189
+ margin-inline-start: var(--nile-spacing-xs, var(--ng-spacing-xs));
190
+ }
191
+
192
+ .nav-tab__close-button::part(base) {
193
+ padding: var(--nile-spacing-xs, var(--ng-spacing-xs));
194
+ }
195
+
196
+
197
+ `;
198
+ export default [styles];
199
+ //# sourceMappingURL=nile-nav-tab.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nile-nav-tab.css.js","sourceRoot":"","sources":["../../../src/nile-nav-tab/nile-nav-tab.css.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6LxB,CAAC;AAEF,eAAe,CAAC,MAAM,CAAC,CAAC","sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { css } from 'lit';\n\nexport const styles = css`\n \n [hidden] {\n display: none;\n }\n\n :host {\n display: flex;\n flex-direction: column;\n align-self: stretch;\n position: relative;\n\n -webkit-font-smoothing: var(--nile-webkit-font-smoothing, var(--ng-webkit-font-smoothing));\n -moz-osx-font-smoothing: var(--nile-moz-osx-font-smoothing, var(--ng-moz-osx-font-smoothing));\n text-rendering: var(--nile-text-rendering, var(--ng-text-rendering));\n cursor: pointer;\n }\n\n :host([centered]) {\n flex: 1;\n text-align: center;\n }\n\n /* --------------------------------------------------------------------------\n * Tab shell (list item)\n * -------------------------------------------------------------------------- */\n\n .nav-tab-container {\n flex: 1 1 auto;\n width: var(--nav-tab-item-width);\n padding: 0;\n box-sizing: border-box;\n border-radius: var(--nile-nav-tab-radius);\n border: var(--nile-nav-transparent-border);\n transition: background-color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;\n position: relative;\n display: flex;\n align-items: stretch;\n list-style: none;\n overflow: var(--nile-nav-tab-container-overflow);\n margin-top: var(--nile-nav-tab-margin);\n margin-bottom: var(--nile-nav-tab-margin);\n \n }\n\n /* --------------------------------------------------------------------------\n * nile-link wrapper + internal <a> (part base)\n * -------------------------------------------------------------------------- */\n\n .nav-tab {\n display: flex;\n flex: 1 1 auto;\n align-self: stretch;\n width: 100%;\n min-width: 0;\n min-height: 0;\n align-items: center;\n box-sizing: border-box;\n }\n\n .nav-tab::part(base) {\n display: flex;\n flex: 1 1 auto;\n align-self: stretch;\n width: 100%;\n min-height: 100%;\n height: 100%;\n align-items: center;\n justify-content: var(--justify-content);\n white-space: var(--white-space, nowrap);\n user-select: none;\n transition: 0.2s box-shadow, 0.2s color;\n gap: var(--nile-spacing-md, var(--ng-spacing-md));\n box-sizing: border-box;\n text-decoration: none;\n font-family: var(--nile-font-family-medium, var(--ng-font-family-body));\n font-size: var(--nile-type-scale-3, var(--ng-font-size-text-sm));\n font-style: normal;\n font-weight: var(--nile-font-weight-medium, var(--ng-font-weight-semibold));\n line-height: var(--nile-line-height-xsmall, var(--ng-line-height-text-sm));\n letter-spacing: 0.2px;\n word-break: var(--word-break);\n overflow-wrap: var(--overflow-wrap);\n text-align: var(--text-align);\n padding: var(--nile-nav-tab-padding);\n }\n\n /* --------------------------------------------------------------------------\n * Host: active / hover (container + link color)\n * -------------------------------------------------------------------------- */\n\n :host([active]) .nav-tab-container {\n background-color: var(--nile-nav-tab-bg-active);\n border-radius: var(--nile-nav-tab-radius);\n border: var(--nile-nav-tab-border);\n box-shadow: var(--nile-nav-tab-active-box-shadow);\n }\n\n :host(:hover:not([disabled]):not([active])) .nav-tab-container {\n background-color: var(--nile-nav-tab-bg-hover);\n border: var(--nile-nav-tab-border);\n box-shadow: var(--nile-nav-tab-active-box-shadow);\n }\n\n :host(:hover:not([disabled]):not([active])) .nav-tab-container ::part(base) {\n color: var(--nile-nav-tab-text-color-hover, var(--nile-colors-primary-700, var(--ng-colors-text-brand-secondary-700)));\n }\n\n /* --------------------------------------------------------------------------\n * nile-link part: label inherits anchor\n * -------------------------------------------------------------------------- */\n\n .nav-tab::part(label) {\n color: inherit;\n font-family: inherit;\n font-size: inherit;\n font-style: inherit;\n font-weight: inherit;\n line-height: inherit;\n letter-spacing: inherit;\n }\n\n /* --------------------------------------------------------------------------\n * Interaction states (::part base)\n * -------------------------------------------------------------------------- */\n\n /* Default (inactive) */\n .nav-tab:not(.nav-tab--active):not(.nav-tab--disabled)::part(base) {\n color: var(--nile-colors-dark-500, var(--ng-colors-text-secondary-700));\n }\n\n /* Hover */\n .nav-tab:hover:not(.nav-tab--disabled)::part(base) {\n color: var(--nile-colors-dark-500, var(--ng-colors-text-brand-secondary-700));\n background-color: var(--tab-hover-background-color);\n }\n\n /* Focus — roving tabindex is on :host; inner link stays tabindex=-1 */\n :host(:focus-visible:not([disabled])) .nav-tab::part(base) {\n color: var(--nile-colors-primary-600, var(--ng-colors-text-brand-secondary-700));\n }\n\n /* Active */\n .nav-tab.nav-tab--active:not(.nav-tab--disabled)::part(base) {\n color: var(--nile-nav-tab-active-color, var(--nile-colors-primary-600, var(--ng-colors-text-brand-secondary-700)));\n background-color: var(--tab-active-background-color);\n }\n\n /* --------------------------------------------------------------------------\n * Disabled\n * -------------------------------------------------------------------------- */\n\n .nav-tab.nav-tab--disabled {\n cursor: not-allowed;\n }\n\n :host([disabled]) .nav-tab-container {\n cursor: not-allowed;\n }\n\n .nav-tab.nav-tab--disabled::part(base) {\n color: var(--nile-colors-neutral-500, var(--ng-colors-text-disabled));\n cursor: not-allowed;\n pointer-events: none;\n }\n\n .nav-tab.nav-tab--disabled::part(label) {\n color: var(--nile-colors-neutral-500, var(--ng-colors-text-disabled));\n }\n\n .nav-tab.nav-tab--disabled:hover::part(base),\n :host([disabled]:focus-visible) .nav-tab::part(base) {\n background-color: transparent;\n }\n\n /* --------------------------------------------------------------------------\n * Closable: close button\n * -------------------------------------------------------------------------- */\n\n .nav-tab__close-button {\n font-size: var(--nile-type-scale-4, var(--ng-font-size-text-sm));\n margin-inline-start: var(--nile-spacing-xs, var(--ng-spacing-xs));\n }\n\n .nav-tab__close-button::part(base) {\n padding: var(--nile-spacing-xs, var(--ng-spacing-xs));\n }\n\n \n`;\n\nexport default [styles];\n"]}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * Copyright Aquera Inc 2023
3
+ *
4
+ * This source code is licensed under the BSD-3-Clause license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+ import type { CSSResultGroup } from 'lit';
8
+ import '../nile-icon-button/nile-icon-button';
9
+ import NileElement from '../internal/nile-element';
10
+ import '../nile-link/nile-link';
11
+ export declare class NileNavTab extends NileElement {
12
+ static styles: CSSResultGroup;
13
+ private readonly attrId;
14
+ private readonly componentId;
15
+ navTab: HTMLElement;
16
+ /** The name of the tab panel this tab is associated with. */
17
+ panel: string;
18
+ /** Draws the tab in an active state. */
19
+ active: boolean;
20
+ /** Makes the tab closable and shows a close button. */
21
+ closable: boolean;
22
+ /** Disables the tab and prevents selection. */
23
+ disabled: boolean;
24
+ centered: boolean;
25
+ link?: string;
26
+ connectedCallback(): void;
27
+ firstUpdated(): void;
28
+ updated(): void;
29
+ private syncA11yState;
30
+ /**
31
+ * Give the host element the accessible name, since nile-link is hidden
32
+ * from the accessibility tree.
33
+ * Author `aria-label` (without `data-auto-aria-label`) is never overwritten so icon-only tabs can keep explicit names.
34
+ * Auto-derived names set `data-auto-aria-label="true"` so slot/text updates can refresh them.
35
+ */
36
+ private updateAccessibleName;
37
+ private handleCloseClick;
38
+ private handleTabClick;
39
+ handleActiveChange(): void;
40
+ handleDisabledChange(): void;
41
+ focus(options?: FocusOptions): void;
42
+ blur(): void;
43
+ render(): import("lit-html").TemplateResult<1>;
44
+ }
45
+ export default NileNavTab;
46
+ declare global {
47
+ interface HTMLElementTagNameMap {
48
+ 'nile-nav-tab': NileNavTab;
49
+ }
50
+ }