@aquera/nile-elements 0.1.32-beta-1.2 → 0.1.32-beta-1.4

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 (192) hide show
  1. package/README.md +9 -23
  2. package/demo/index.html +263 -24
  3. package/dist/axe.min-2b379f29.cjs.js +12 -0
  4. package/dist/axe.min-2b379f29.cjs.js.map +1 -0
  5. package/dist/axe.min-c2cd8733.esm.js +12 -0
  6. package/dist/{fixture-3acb409b.cjs.js → fixture-d5b55278.cjs.js} +3 -3
  7. package/dist/fixture-d5b55278.cjs.js.map +1 -0
  8. package/dist/{fixture-db35a8ae.esm.js → fixture-df8b52d7.esm.js} +1 -1
  9. package/dist/index.cjs.js +1 -1
  10. package/dist/index.esm.js +1 -1
  11. package/dist/nile-accordion/nile-accordian.test.cjs.js +1 -1
  12. package/dist/nile-accordion/nile-accordian.test.esm.js +1 -1
  13. package/dist/nile-accordion/nile-accordion.cjs.js +1 -1
  14. package/dist/nile-accordion/nile-accordion.cjs.js.map +1 -1
  15. package/dist/nile-accordion/nile-accordion.css.cjs.js +1 -1
  16. package/dist/nile-accordion/nile-accordion.css.cjs.js.map +1 -1
  17. package/dist/nile-accordion/nile-accordion.css.esm.js +1 -1
  18. package/dist/nile-accordion/nile-accordion.esm.js +4 -4
  19. package/dist/nile-auto-complete/nile-auto-complete.test.cjs.js +1 -1
  20. package/dist/nile-auto-complete/nile-auto-complete.test.esm.js +1 -1
  21. package/dist/nile-avatar/nile-avatar.test.cjs.js +1 -1
  22. package/dist/nile-avatar/nile-avatar.test.esm.js +1 -1
  23. package/dist/nile-badge/nile-badge.test.cjs.js +1 -1
  24. package/dist/nile-badge/nile-badge.test.esm.js +1 -1
  25. package/dist/nile-button/nile-button.test.cjs.js +1 -1
  26. package/dist/nile-button/nile-button.test.esm.js +1 -1
  27. package/dist/nile-button-toggle-group/nile-button-toggle-group.test.cjs.js +1 -1
  28. package/dist/nile-button-toggle-group/nile-button-toggle-group.test.esm.js +1 -1
  29. package/dist/nile-calendar/nile-calendar.test.cjs.js +1 -1
  30. package/dist/nile-calendar/nile-calendar.test.esm.js +1 -1
  31. package/dist/nile-card/nile-card.test.cjs.js +1 -1
  32. package/dist/nile-card/nile-card.test.esm.js +1 -1
  33. package/dist/nile-checkbox/nile-checkbox.test.cjs.js +1 -1
  34. package/dist/nile-checkbox/nile-checkbox.test.esm.js +1 -1
  35. package/dist/nile-chip/nile-chip.test.cjs.js +1 -1
  36. package/dist/nile-chip/nile-chip.test.esm.js +1 -1
  37. package/dist/nile-circular-progressbar/nile-circular-progressbar.css.cjs.js +1 -1
  38. package/dist/nile-circular-progressbar/nile-circular-progressbar.css.cjs.js.map +1 -1
  39. package/dist/nile-circular-progressbar/nile-circular-progressbar.css.esm.js +49 -49
  40. package/dist/nile-code-editor/extensionSetup.cjs.js +7 -7
  41. package/dist/nile-code-editor/extensionSetup.cjs.js.map +1 -1
  42. package/dist/nile-code-editor/extensionSetup.esm.js +1 -1
  43. package/dist/nile-code-editor/nile-code-editor.cjs.js +2 -2
  44. package/dist/nile-code-editor/nile-code-editor.cjs.js.map +1 -1
  45. package/dist/nile-code-editor/nile-code-editor.esm.js +2 -2
  46. package/dist/nile-dialog/nile-dialog.test.cjs.js +1 -1
  47. package/dist/nile-dialog/nile-dialog.test.esm.js +1 -1
  48. package/dist/nile-drawer/nile-drawer.test.cjs.js +1 -1
  49. package/dist/nile-drawer/nile-drawer.test.esm.js +1 -1
  50. package/dist/nile-dropdown/nile-dropdown.test.cjs.js +1 -1
  51. package/dist/nile-dropdown/nile-dropdown.test.esm.js +1 -1
  52. package/dist/nile-empty-state/nile-empty-state.test.cjs.js +1 -1
  53. package/dist/nile-empty-state/nile-empty-state.test.esm.js +1 -1
  54. package/dist/nile-error-message/nile-error-message.test.cjs.js +1 -1
  55. package/dist/nile-error-message/nile-error-message.test.esm.js +1 -1
  56. package/dist/nile-form-group/nile-form-group.test.cjs.js +1 -1
  57. package/dist/nile-form-group/nile-form-group.test.esm.js +1 -1
  58. package/dist/nile-form-help-text/nile-form-help-text.test.cjs.js +1 -1
  59. package/dist/nile-form-help-text/nile-form-help-text.test.esm.js +1 -1
  60. package/dist/nile-hero/nile-hero.test.cjs.js +1 -1
  61. package/dist/nile-hero/nile-hero.test.esm.js +1 -1
  62. package/dist/nile-icon/nile-icon.test.cjs.js +1 -1
  63. package/dist/nile-icon/nile-icon.test.esm.js +1 -1
  64. package/dist/nile-input/nile-input.css.cjs.js +1 -1
  65. package/dist/nile-input/nile-input.css.cjs.js.map +1 -1
  66. package/dist/nile-input/nile-input.css.esm.js +8 -0
  67. package/dist/nile-input/nile-input.test.cjs.js +1 -1
  68. package/dist/nile-input/nile-input.test.esm.js +1 -1
  69. package/dist/nile-link/nile-link.test.cjs.js +1 -1
  70. package/dist/nile-link/nile-link.test.esm.js +1 -1
  71. package/dist/nile-loader/nile-loader.test.cjs.js +1 -1
  72. package/dist/nile-loader/nile-loader.test.esm.js +1 -1
  73. package/dist/nile-popover/nile-popover.test.cjs.js +1 -1
  74. package/dist/nile-popover/nile-popover.test.esm.js +1 -1
  75. package/dist/nile-popup/nile-popup.test.cjs.js +1 -1
  76. package/dist/nile-popup/nile-popup.test.esm.js +1 -1
  77. package/dist/nile-progress-bar/nile-progress-bar.test.cjs.js +1 -1
  78. package/dist/nile-progress-bar/nile-progress-bar.test.esm.js +1 -1
  79. package/dist/nile-radio/nile-radio.test.cjs.js +1 -1
  80. package/dist/nile-radio/nile-radio.test.esm.js +1 -1
  81. package/dist/nile-radio-group/nile-radio-group.test.cjs.js +1 -1
  82. package/dist/nile-radio-group/nile-radio-group.test.esm.js +1 -1
  83. package/dist/nile-select/nile-select.test.cjs.js +1 -1
  84. package/dist/nile-select/nile-select.test.esm.js +1 -1
  85. package/dist/nile-slide-toggle/nile-slide-toggle.test.cjs.js +1 -1
  86. package/dist/nile-slide-toggle/nile-slide-toggle.test.esm.js +1 -1
  87. package/dist/nile-tab-group/nile-tab-group.test.cjs.js +1 -1
  88. package/dist/nile-tab-group/nile-tab-group.test.esm.js +1 -1
  89. package/dist/nile-table-body/nile-table-body.cjs.js +1 -1
  90. package/dist/nile-table-body/nile-table-body.cjs.js.map +1 -1
  91. package/dist/nile-table-body/nile-table-body.esm.js +2 -2
  92. package/dist/nile-table-cell-item/nile-table-cell-item.css.cjs.js +1 -1
  93. package/dist/nile-table-cell-item/nile-table-cell-item.css.cjs.js.map +1 -1
  94. package/dist/nile-table-cell-item/nile-table-cell-item.css.esm.js +4 -8
  95. package/dist/nile-table-header-item/nile-table-header-item.cjs.js +1 -1
  96. package/dist/nile-table-header-item/nile-table-header-item.cjs.js.map +1 -1
  97. package/dist/nile-table-header-item/nile-table-header-item.css.cjs.js +1 -1
  98. package/dist/nile-table-header-item/nile-table-header-item.css.cjs.js.map +1 -1
  99. package/dist/nile-table-header-item/nile-table-header-item.css.esm.js +0 -5
  100. package/dist/nile-table-header-item/nile-table-header-item.esm.js +9 -9
  101. package/dist/nile-table-row/nile-table-row.cjs.js.map +1 -1
  102. package/dist/nile-textarea/nile-textarea.test.cjs.js +1 -1
  103. package/dist/nile-textarea/nile-textarea.test.esm.js +1 -1
  104. package/dist/nile-tooltip/index.cjs.js +1 -1
  105. package/dist/nile-tooltip/index.esm.js +1 -1
  106. package/dist/nile-tooltip/nile-tooltip-utils.cjs.js +2 -0
  107. package/dist/nile-tooltip/nile-tooltip-utils.cjs.js.map +1 -0
  108. package/dist/nile-tooltip/nile-tooltip-utils.esm.js +1 -0
  109. package/dist/nile-tooltip/nile-tooltip.cjs.js +1 -1
  110. package/dist/nile-tooltip/nile-tooltip.cjs.js.map +1 -1
  111. package/dist/nile-tooltip/nile-tooltip.css.cjs.js +1 -1
  112. package/dist/nile-tooltip/nile-tooltip.css.cjs.js.map +1 -1
  113. package/dist/nile-tooltip/nile-tooltip.css.esm.js +20 -76
  114. package/dist/nile-tooltip/nile-tooltip.esm.js +20 -8
  115. package/dist/nile-tooltip/nile-tooltip.test.cjs.js +2 -0
  116. package/dist/nile-tooltip/nile-tooltip.test.cjs.js.map +1 -0
  117. package/dist/nile-tooltip/nile-tooltip.test.esm.js +51 -0
  118. package/dist/src/index.d.ts +0 -1
  119. package/dist/src/index.js +0 -1
  120. package/dist/src/index.js.map +1 -1
  121. package/dist/src/nile-accordion/nile-accordion.css.js +1 -1
  122. package/dist/src/nile-accordion/nile-accordion.css.js.map +1 -1
  123. package/dist/src/nile-accordion/nile-accordion.d.ts +5 -6
  124. package/dist/src/nile-accordion/nile-accordion.js +8 -21
  125. package/dist/src/nile-accordion/nile-accordion.js.map +1 -1
  126. package/dist/src/nile-circular-progressbar/nile-circular-progressbar.css.js +49 -49
  127. package/dist/src/nile-circular-progressbar/nile-circular-progressbar.css.js.map +1 -1
  128. package/dist/src/nile-input/nile-input.css.js +8 -0
  129. package/dist/src/nile-input/nile-input.css.js.map +1 -1
  130. package/dist/src/nile-table-body/nile-table-body.d.ts +1 -3
  131. package/dist/src/nile-table-body/nile-table-body.js +1 -9
  132. package/dist/src/nile-table-body/nile-table-body.js.map +1 -1
  133. package/dist/src/nile-table-cell-item/nile-table-cell-item.css.js +2 -6
  134. package/dist/src/nile-table-cell-item/nile-table-cell-item.css.js.map +1 -1
  135. package/dist/src/nile-table-header-item/nile-table-header-item.css.js +0 -5
  136. package/dist/src/nile-table-header-item/nile-table-header-item.css.js.map +1 -1
  137. package/dist/src/nile-table-header-item/nile-table-header-item.js +1 -1
  138. package/dist/src/nile-table-header-item/nile-table-header-item.js.map +1 -1
  139. package/dist/src/nile-table-row/nile-table-row.js.map +1 -1
  140. package/dist/src/nile-tooltip/nile-tooltip-utils.d.ts +18 -0
  141. package/dist/src/nile-tooltip/nile-tooltip-utils.js +151 -0
  142. package/dist/src/nile-tooltip/nile-tooltip-utils.js.map +1 -0
  143. package/dist/src/nile-tooltip/nile-tooltip.css.js +19 -75
  144. package/dist/src/nile-tooltip/nile-tooltip.css.js.map +1 -1
  145. package/dist/src/nile-tooltip/nile-tooltip.d.ts +28 -9
  146. package/dist/src/nile-tooltip/nile-tooltip.js +111 -117
  147. package/dist/src/nile-tooltip/nile-tooltip.js.map +1 -1
  148. package/dist/src/nile-tooltip/nile-tooltip.test.d.ts +1 -0
  149. package/dist/src/nile-tooltip/nile-tooltip.test.js +158 -0
  150. package/dist/src/nile-tooltip/nile-tooltip.test.js.map +1 -0
  151. package/dist/tsconfig.tsbuildinfo +1 -1
  152. package/package.json +3 -3
  153. package/src/index.ts +1 -2
  154. package/src/nile-accordion/nile-accordion.css.ts +1 -1
  155. package/src/nile-accordion/nile-accordion.ts +4 -15
  156. package/src/nile-circular-progressbar/nile-circular-progressbar.css.ts +56 -55
  157. package/src/nile-input/nile-input.css.ts +8 -0
  158. package/src/nile-table-body/nile-table-body.ts +2 -8
  159. package/src/nile-table-cell-item/nile-table-cell-item.css.ts +2 -6
  160. package/src/nile-table-header-item/nile-table-header-item.css.ts +0 -5
  161. package/src/nile-table-header-item/nile-table-header-item.ts +1 -1
  162. package/src/nile-table-row/nile-table-row.ts +2 -1
  163. package/src/nile-tooltip/nile-tooltip-utils.ts +190 -0
  164. package/src/nile-tooltip/nile-tooltip.css.ts +20 -76
  165. package/src/nile-tooltip/nile-tooltip.test.ts +178 -0
  166. package/src/nile-tooltip/nile-tooltip.ts +142 -162
  167. package/vscode-html-custom-data.json +72 -90
  168. package/dist/axe.min-5bf06036.esm.js +0 -12
  169. package/dist/axe.min-ff35bfba.cjs.js +0 -12
  170. package/dist/axe.min-ff35bfba.cjs.js.map +0 -1
  171. package/dist/fixture-3acb409b.cjs.js.map +0 -1
  172. package/dist/nile-table/index.cjs.js +0 -2
  173. package/dist/nile-table/index.cjs.js.map +0 -1
  174. package/dist/nile-table/index.esm.js +0 -1
  175. package/dist/nile-table/nile-table.cjs.js +0 -2
  176. package/dist/nile-table/nile-table.cjs.js.map +0 -1
  177. package/dist/nile-table/nile-table.css.cjs.js +0 -2
  178. package/dist/nile-table/nile-table.css.cjs.js.map +0 -1
  179. package/dist/nile-table/nile-table.css.esm.js +0 -6
  180. package/dist/nile-table/nile-table.esm.js +0 -3
  181. package/dist/src/nile-table/index.d.ts +0 -1
  182. package/dist/src/nile-table/index.js +0 -2
  183. package/dist/src/nile-table/index.js.map +0 -1
  184. package/dist/src/nile-table/nile-table.css.d.ts +0 -12
  185. package/dist/src/nile-table/nile-table.css.js +0 -18
  186. package/dist/src/nile-table/nile-table.css.js.map +0 -1
  187. package/dist/src/nile-table/nile-table.d.ts +0 -48
  188. package/dist/src/nile-table/nile-table.js +0 -143
  189. package/dist/src/nile-table/nile-table.js.map +0 -1
  190. package/src/nile-table/index.ts +0 -1
  191. package/src/nile-table/nile-table.css.ts +0 -20
  192. package/src/nile-table/nile-table.ts +0 -161
@@ -4,7 +4,7 @@
4
4
  * This source code is licensed under the BSD-3-Clause license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
- import { CSSResultArray, TemplateResult, PropertyValues } from 'lit';
7
+ import { CSSResultArray, TemplateResult } from 'lit';
8
8
  import NileElement from '../internal/nile-element';
9
9
  /**
10
10
  * nile-table-body component.
@@ -19,13 +19,11 @@ export declare class NileTableBody extends NileElement {
19
19
  */
20
20
  defaultSlot: HTMLSlotElement;
21
21
  _childNodes: Array<HTMLElement>;
22
- type: 'primary' | 'secondary';
23
22
  private rows_data;
24
23
  private header_rows_data;
25
24
  private sort__index;
26
25
  private search__index;
27
26
  static get styles(): CSSResultArray;
28
- protected firstUpdated(_changedProperties: PropertyValues): void;
29
27
  private getChildren;
30
28
  private getIndexValue;
31
29
  handleSlotchange(e: any): void;
@@ -6,7 +6,7 @@
6
6
  */
7
7
  import { __decorate } from "tslib";
8
8
  import { html, } from 'lit';
9
- import { customElement, query, state, queryAssignedNodes, property } from 'lit/decorators.js';
9
+ import { customElement, query, state, queryAssignedNodes } from 'lit/decorators.js';
10
10
  import { styles } from './nile-table-body.css';
11
11
  import NileElement from '../internal/nile-element';
12
12
  /**
@@ -22,7 +22,6 @@ let NileTableBody = class NileTableBody extends NileElement {
22
22
  * @remarks If you are extending this class you can extend the base styles with super. Eg `return [super(), myCustomStyles]`
23
23
  */
24
24
  super(...arguments);
25
- this.type = 'primary';
26
25
  this.rows_data = [];
27
26
  this.header_rows_data = [];
28
27
  /* #endregion */
@@ -30,9 +29,6 @@ let NileTableBody = class NileTableBody extends NileElement {
30
29
  static get styles() {
31
30
  return [styles];
32
31
  }
33
- firstUpdated(_changedProperties) {
34
- this.emit('nile-body-load', { value: this.type, comp: this }, true, false);
35
- }
36
32
  /* #endregion */
37
33
  /* #region Methods */
38
34
  getChildren(child, tagname) {
@@ -42,7 +38,6 @@ let NileTableBody = class NileTableBody extends NileElement {
42
38
  return this.header_rows_data.indexOf(index__value);
43
39
  }
44
40
  handleSlotchange(e) {
45
- this.emit('nile-body-content-changed', { value: this.type, comp: this }, true, false);
46
41
  let row_data = [];
47
42
  this._childNodes.forEach((child) => {
48
43
  if (child.tagName && child?.tagName?.toLowerCase() === 'nile-table-row') {
@@ -100,9 +95,6 @@ __decorate([
100
95
  __decorate([
101
96
  queryAssignedNodes({ flatten: true })
102
97
  ], NileTableBody.prototype, "_childNodes", void 0);
103
- __decorate([
104
- property()
105
- ], NileTableBody.prototype, "type", void 0);
106
98
  __decorate([
107
99
  state()
108
100
  ], NileTableBody.prototype, "rows_data", void 0);
@@ -1 +1 @@
1
- {"version":3,"file":"nile-table-body.js","sourceRoot":"","sources":["../../../src/nile-table-body/nile-table-body.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;;AAEH,OAAO,EAEL,IAAI,GAIL,MAAM,KAAK,CAAC;AACb,OAAO,EACL,aAAa,EACb,KAAK,EACL,KAAK,EAGL,kBAAkB,EAClB,QAAQ,EACT,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,WAAW,MAAM,0BAA0B,CAAC;AAGnD;;;;;GAKG;AAEI,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,WAAW;IAAvC;QACL;;;WAGG;;QAIS,SAAI,GAA4B,SAAS,CAAC;QAErC,cAAS,GAAU,EAAE,CAAC;QACtB,qBAAgB,GAAU,EAAE,CAAC;QA+E9C,gBAAgB;IAClB,CAAC;IA5EQ,MAAM,KAAK,MAAM;QACtB,OAAO,CAAC,MAAM,CAAC,CAAC;IAClB,CAAC;IAES,YAAY,CAAC,kBAAkC;QACvD,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAC,IAAI,EAAE,EAAC,IAAI,EAAC,KAAK,CAAC,CAAA;IACzE,CAAC;IAED,gBAAgB;IAEhB,qBAAqB;IAEb,WAAW,CAAC,KAAU,EAAE,OAAe;QAC7C,OAAO,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC;IAEO,aAAa,CAAC,YAAoB;QACxC,OAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IACrD,CAAC;IAED,gBAAgB,CAAC,CAAM;QACrB,IAAI,CAAC,IAAI,CAAC,2BAA2B,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAC,IAAI,EAAE,EAAC,IAAI,EAAC,KAAK,CAAC,CAAA;QAClF,IAAI,QAAQ,GAAQ,EAAE,CAAC;QACvB,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,KAAU,EAAE,EAAE;YACtC,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,CAAC;gBACxE,IAAI,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,sBAAsB,CAAC,CAAC;gBAC/D,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACxB,QAAQ,CAAC,OAAO,CAAC,CAAC,OAA2B,EAAE,EAAE;wBAC/C,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;oBACnC,CAAC,CAAC,CAAC;oBACH,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAChC,CAAC;qBAAM,CAAC;oBACN,IAAI,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,wBAAwB,CAAC,CAAC;oBACpE,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC3B,WAAW,CAAC,OAAO,CAAC,CAAC,MAAuB,EAAE,KAAa,EAAE,EAAE;4BAC7D,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;wBAC/C,CAAC,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;gBACD,QAAQ,GAAG,EAAE,CAAC;YAChB,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,UAAU,CAAC,CAAM;QACvB,MAAM,EAAE,gBAAgB,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;QACnD,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;QAC1D,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACrB,KAAK,EAAE,EAAE,YAAY,EAAE,gBAAgB,EAAE,KAAK,EAAE;SACjD,CAAC,CAAC;IACL,CAAC;IAEO,YAAY,CAAC,CAAM;QACzB,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;QAClC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC9D,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE;YAC7B,KAAK,EAAE,IAAI,CAAC,aAAa;YACzB,KAAK,EAAE,UAAU;SAClB,CAAC,CAAC;IACL,CAAC;IAEM,MAAM;QACX,OAAO,IAAI,CAAA;;;;wBAIS,IAAI,CAAC,gBAAgB;6BAChB,IAAI,CAAC,UAAU;;yBAEnB,IAAI,CAAC,YAAY;;;KAGrC,CAAC;IACJ,CAAC;CAGF,CAAA;AArFgB;IAAd,KAAK,CAAC,MAAM,CAAC;kDAA8B;AACL;IAAtC,kBAAkB,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;kDAAkC;AAC5D;IAAX,QAAQ,EAAE;2CAA2C;AAErC;IAAhB,KAAK,EAAE;gDAA+B;AACtB;IAAhB,KAAK,EAAE;uDAAsC;AAC7B;IAAhB,KAAK,EAAE;kDAA6B;AACpB;IAAhB,KAAK,EAAE;oDAA+B;AAb5B,aAAa;IADzB,aAAa,CAAC,iBAAiB,CAAC;GACpB,aAAa,CA2FzB;;AAED,eAAe,aAAa,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 {\n LitElement,\n html,\n CSSResultArray,\n TemplateResult,\n PropertyValues,\n} from 'lit';\nimport {\n customElement,\n query,\n state,\n queryAll,\n queryAssignedElements,\n queryAssignedNodes,\n property\n} from 'lit/decorators.js';\nimport { styles } from './nile-table-body.css';\nimport NileElement from '../internal/nile-element';\nimport { getInnerHTML } from '../slot';\n\n/**\n * nile-table-body component.\n *\n * @tag nile-table-body\n *\n */\n@customElement('nile-table-body')\nexport class NileTableBody extends NileElement {\n /**\n * The styles for TableBody\n * @remarks If you are extending this class you can extend the base styles with super. Eg `return [super(), myCustomStyles]`\n */\n\n @query('slot') defaultSlot: HTMLSlotElement;\n @queryAssignedNodes({ flatten: true }) _childNodes!: Array<HTMLElement>;\n @property() type: 'primary' | 'secondary' = 'primary';\n\n @state() private rows_data: any[] = [];\n @state() private header_rows_data: any[] = [];\n @state() private sort__index: number;\n @state() private search__index: number;\n\n public static get styles(): CSSResultArray {\n return [styles];\n }\n\n protected firstUpdated(_changedProperties: PropertyValues): void {\n this.emit('nile-body-load', { value: this.type, comp:this },true,false)\n }\n\n /* #endregion */\n\n /* #region Methods */\n\n private getChildren(child: any, tagname: string) {\n return child.querySelectorAll(tagname);\n }\n\n private getIndexValue(index__value: string): number {\n return this.header_rows_data.indexOf(index__value);\n }\n\n handleSlotchange(e: any) {\n this.emit('nile-body-content-changed', { value: this.type, comp:this },true,false)\n let row_data: any = [];\n this._childNodes.forEach((child: any) => {\n if (child.tagName && child?.tagName?.toLowerCase() === 'nile-table-row') {\n let nilerows = this.getChildren(child, 'nile-table-cell-item');\n if (nilerows.length > 0) {\n nilerows.forEach((element: { innerHTML: any }) => {\n row_data.push(element.innerHTML);\n });\n this.rows_data.push(row_data);\n } else {\n let nileheaders = this.getChildren(child, 'nile-table-header-item');\n if (nileheaders.length > 0) {\n nileheaders.forEach((header: HTMLSlotElement, index: number) => {\n this.header_rows_data.push(header.innerHTML);\n });\n }\n }\n row_data = [];\n }\n });\n }\n\n private handleSort(e: any) {\n const { curr_sort_string, order } = e.detail.value;\n const header_index = this.getIndexValue(curr_sort_string);\n this.emit('nile-sort', {\n value: { header_index, curr_sort_string, order },\n });\n }\n\n private handleSearch(e: any) {\n const searchText = e.detail.value;\n this.search__index = this.getIndexValue(e.target.textContent);\n this.emit('nile-table-search', {\n index: this.search__index,\n value: searchText,\n });\n }\n\n public render(): TemplateResult {\n return html`\n <div class=\"base\" part=\"base\">\n <slot name=\"table__header\" class=\"table__header\"></slot>\n <slot\n @slotchange=${this.handleSlotchange}\n @nile-click-sort=${this.handleSort}\n class=\"nile__table__body\"\n @nile-search=${this.handleSearch}\n ></slot>\n </div>\n `;\n }\n\n /* #endregion */\n}\n\nexport default NileTableBody;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-table-body': NileTableBody;\n }\n}\n"]}
1
+ {"version":3,"file":"nile-table-body.js","sourceRoot":"","sources":["../../../src/nile-table-body/nile-table-body.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;;AAEH,OAAO,EAEL,IAAI,GAGL,MAAM,KAAK,CAAC;AACb,OAAO,EACL,aAAa,EACb,KAAK,EACL,KAAK,EAGL,kBAAkB,EAEnB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,WAAW,MAAM,0BAA0B,CAAC;AAGnD;;;;;GAKG;AAEI,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,WAAW;IAAvC;QACL;;;WAGG;;QAMc,cAAS,GAAU,EAAE,CAAC;QACtB,qBAAgB,GAAU,EAAE,CAAC;QA0E9C,gBAAgB;IAClB,CAAC;IAvEQ,MAAM,KAAK,MAAM;QACtB,OAAO,CAAC,MAAM,CAAC,CAAC;IAClB,CAAC;IAED,gBAAgB;IAEhB,qBAAqB;IAEb,WAAW,CAAC,KAAU,EAAE,OAAe;QAC7C,OAAO,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC;IAEO,aAAa,CAAC,YAAoB;QACxC,OAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IACrD,CAAC;IAED,gBAAgB,CAAC,CAAM;QACrB,IAAI,QAAQ,GAAQ,EAAE,CAAC;QACvB,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,KAAU,EAAE,EAAE;YACtC,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,CAAC;gBACxE,IAAI,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,sBAAsB,CAAC,CAAC;gBAC/D,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACxB,QAAQ,CAAC,OAAO,CAAC,CAAC,OAA2B,EAAE,EAAE;wBAC/C,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;oBACnC,CAAC,CAAC,CAAC;oBACH,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAChC,CAAC;qBAAM,CAAC;oBACN,IAAI,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,wBAAwB,CAAC,CAAC;oBACpE,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC3B,WAAW,CAAC,OAAO,CAAC,CAAC,MAAuB,EAAE,KAAa,EAAE,EAAE;4BAC7D,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;wBAC/C,CAAC,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;gBACD,QAAQ,GAAG,EAAE,CAAC;YAChB,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,UAAU,CAAC,CAAM;QACvB,MAAM,EAAE,gBAAgB,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;QACnD,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;QAC1D,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACrB,KAAK,EAAE,EAAE,YAAY,EAAE,gBAAgB,EAAE,KAAK,EAAE;SACjD,CAAC,CAAC;IACL,CAAC;IAEO,YAAY,CAAC,CAAM;QACzB,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;QAClC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC9D,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE;YAC7B,KAAK,EAAE,IAAI,CAAC,aAAa;YACzB,KAAK,EAAE,UAAU;SAClB,CAAC,CAAC;IACL,CAAC;IAEM,MAAM;QACX,OAAO,IAAI,CAAA;;;;wBAIS,IAAI,CAAC,gBAAgB;6BAChB,IAAI,CAAC,UAAU;;yBAEnB,IAAI,CAAC,YAAY;;;KAGrC,CAAC;IACJ,CAAC;CAGF,CAAA;AAhFgB;IAAd,KAAK,CAAC,MAAM,CAAC;kDAA8B;AAE5C;IADC,kBAAkB,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;kDACL;AAEhB;IAAhB,KAAK,EAAE;gDAA+B;AACtB;IAAhB,KAAK,EAAE;uDAAsC;AAC7B;IAAhB,KAAK,EAAE;kDAA6B;AACpB;IAAhB,KAAK,EAAE;oDAA+B;AAb5B,aAAa;IADzB,aAAa,CAAC,iBAAiB,CAAC;GACpB,aAAa,CAsFzB;;AAED,eAAe,aAAa,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 {\n LitElement,\n html,\n CSSResultArray,\n TemplateResult,\n} from 'lit';\nimport {\n customElement,\n query,\n state,\n queryAll,\n queryAssignedElements,\n queryAssignedNodes,\n property\n} from 'lit/decorators.js';\nimport { styles } from './nile-table-body.css';\nimport NileElement from '../internal/nile-element';\nimport { getInnerHTML } from '../slot';\n\n/**\n * nile-table-body component.\n *\n * @tag nile-table-body\n *\n */\n@customElement('nile-table-body')\nexport class NileTableBody extends NileElement {\n /**\n * The styles for TableBody\n * @remarks If you are extending this class you can extend the base styles with super. Eg `return [super(), myCustomStyles]`\n */\n\n @query('slot') defaultSlot: HTMLSlotElement;\n @queryAssignedNodes({ flatten: true })\n _childNodes!: Array<HTMLElement>;\n\n @state() private rows_data: any[] = [];\n @state() private header_rows_data: any[] = [];\n @state() private sort__index: number;\n @state() private search__index: number;\n\n public static get styles(): CSSResultArray {\n return [styles];\n }\n\n /* #endregion */\n\n /* #region Methods */\n\n private getChildren(child: any, tagname: string) {\n return child.querySelectorAll(tagname);\n }\n\n private getIndexValue(index__value: string): number {\n return this.header_rows_data.indexOf(index__value);\n }\n\n handleSlotchange(e: any) {\n let row_data: any = [];\n this._childNodes.forEach((child: any) => {\n if (child.tagName && child?.tagName?.toLowerCase() === 'nile-table-row') {\n let nilerows = this.getChildren(child, 'nile-table-cell-item');\n if (nilerows.length > 0) {\n nilerows.forEach((element: { innerHTML: any }) => {\n row_data.push(element.innerHTML);\n });\n this.rows_data.push(row_data);\n } else {\n let nileheaders = this.getChildren(child, 'nile-table-header-item');\n if (nileheaders.length > 0) {\n nileheaders.forEach((header: HTMLSlotElement, index: number) => {\n this.header_rows_data.push(header.innerHTML);\n });\n }\n }\n row_data = [];\n }\n });\n }\n\n private handleSort(e: any) {\n const { curr_sort_string, order } = e.detail.value;\n const header_index = this.getIndexValue(curr_sort_string);\n this.emit('nile-sort', {\n value: { header_index, curr_sort_string, order },\n });\n }\n\n private handleSearch(e: any) {\n const searchText = e.detail.value;\n this.search__index = this.getIndexValue(e.target.textContent);\n this.emit('nile-table-search', {\n index: this.search__index,\n value: searchText,\n });\n }\n\n public render(): TemplateResult {\n return html`\n <div class=\"base\" part=\"base\">\n <slot name=\"table__header\" class=\"table__header\"></slot>\n <slot\n @slotchange=${this.handleSlotchange}\n @nile-click-sort=${this.handleSort}\n class=\"nile__table__body\"\n @nile-search=${this.handleSearch}\n ></slot>\n </div>\n `;\n }\n\n /* #endregion */\n}\n\nexport default NileTableBody;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-table-body': NileTableBody;\n }\n}\n"]}
@@ -10,21 +10,17 @@ import { css } from 'lit';
10
10
  */
11
11
  export const styles = css `
12
12
  :host {
13
- --min-cell-width:auto;
14
- --cell-width:auto;
15
- --min--height: 52px;
16
- --max--cell-width: auto;
17
13
  box-sizing: border-box;
18
14
  display: table-cell;
19
15
  vertical-align: middle;
16
+ --min--height: 52px;
17
+ --max--cell-width: auto;
20
18
  max-width: var(--max--cell-width);
21
19
  padding: 16px 24px;
22
20
  min-height: var(--min--height);
23
21
  }
24
22
 
25
23
  .column {
26
- min-width:var(--min-cell-width);
27
- width:var(--cell-width);
28
24
  height: 100%;
29
25
  color: var(--nile-colors-gray-light-mode-600);
30
26
  font-family: var(--nile-font-family-serif);
@@ -1 +1 @@
1
- {"version":3,"file":"nile-table-cell-item.css.js","sourceRoot":"","sources":["../../../src/nile-table-cell-item/nile-table-cell-item.css.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2BxB,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\n/**\n * TableCellItem CSS\n */\nexport const styles = css`\n :host {\n --min-cell-width:auto;\n --cell-width:auto;\n --min--height: 52px;\n --max--cell-width: auto;\n box-sizing: border-box;\n display: table-cell;\n vertical-align: middle;\n max-width: var(--max--cell-width);\n padding: 16px 24px;\n min-height: var(--min--height);\n }\n\n .column {\n min-width:var(--min-cell-width);\n width:var(--cell-width);\n height: 100%;\n color: var(--nile-colors-gray-light-mode-600);\n font-family: var(--nile-font-family-serif);\n font-size: var(--nile-type-scale-3);\n font-style: normal;\n font-weight: var(--nile-font-weight-regular);\n /* line-height: var(--nile-type-scale-6); */\n line-height: normal;\n letter-spacing: 0.2px;\n }\n`;\n\nexport default [styles];\n"]}
1
+ {"version":3,"file":"nile-table-cell-item.css.js","sourceRoot":"","sources":["../../../src/nile-table-cell-item/nile-table-cell-item.css.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;CAuBxB,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\n/**\n * TableCellItem CSS\n */\nexport const styles = css`\n :host {\n box-sizing: border-box;\n display: table-cell;\n vertical-align: middle;\n --min--height: 52px;\n --max--cell-width: auto;\n max-width: var(--max--cell-width);\n padding: 16px 24px;\n min-height: var(--min--height);\n }\n\n .column {\n height: 100%;\n color: var(--nile-colors-gray-light-mode-600);\n font-family: var(--nile-font-family-serif);\n font-size: var(--nile-type-scale-3);\n font-style: normal;\n font-weight: var(--nile-font-weight-regular);\n /* line-height: var(--nile-type-scale-6); */\n line-height: normal;\n letter-spacing: 0.2px;\n }\n`;\n\nexport default [styles];\n"]}
@@ -10,15 +10,11 @@ import { css } from 'lit';
10
10
  */
11
11
  export const styles = css `
12
12
  :host {
13
- --cell-min-width: auto;
14
- --cell-width: auto;
15
13
  display: table-cell;
16
14
  box-sizing: border-box;
17
15
  }
18
16
 
19
17
  .header__item__wrapper{
20
- min-width:var(--cell-min-width);
21
- width:var(--cell-width);
22
18
  display:flex;
23
19
  align-items:center;
24
20
  box-sizing: border-box;
@@ -28,7 +24,6 @@ export const styles = css `
28
24
  }
29
25
 
30
26
  .headers {
31
- overflow:hidden;
32
27
  display: flex;
33
28
  align-items: center;
34
29
  height: auto;
@@ -1 +1 @@
1
- {"version":3,"file":"nile-table-header-item.css.js","sourceRoot":"","sources":["../../../src/nile-table-header-item/nile-table-header-item.css.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyDxB,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\n/**\n * TableHeaderItem CSS\n */\nexport const styles = css`\n :host {\n --cell-min-width: auto;\n --cell-width: auto;\n display: table-cell;\n box-sizing: border-box;\n }\n \n .header__item__wrapper{\n min-width:var(--cell-min-width);\n width:var(--cell-width);\n display:flex;\n align-items:center;\n box-sizing: border-box;\n padding: var(--nile-spacing-spacing-lg) var(--nile-spacing-spacing-3xl);\n min-height: 44px;\n height: 44px;\n }\n\n .headers {\n overflow:hidden;\n display: flex;\n align-items: center;\n height: auto;\n width: 100%;\n gap: 8px;\n color: var(--nile-colors-gray-light-mode-600);\n font-family: var(--nile-font-family-serif);\n font-feature-settings: 'clig' off, 'liga' off;\n font-size: var(--nile-type-scale-2);\n font-weight: 500;\n font-style: normal;\n /* line-height: var(--nile-type-scale-5); */\n line-height: normal;\n }\n\n nile-icon {\n cursor: pointer;\n }\n\n .sorting__icons {\n display: flex;\n flex-direction: column;\n align-items: centre;\n }\n\n .sorting__icons nile-icon:hover {\n opacity: 0.4;\n }\n\n .hover__arrow {\n opacity: 0;\n }\n\n .headers:hover .hover__arrow {\n opacity: 0.3;\n }\n`;\n\nexport default [styles];\n"]}
1
+ {"version":3,"file":"nile-table-header-item.css.js","sourceRoot":"","sources":["../../../src/nile-table-header-item/nile-table-header-item.css.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoDxB,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\n/**\n * TableHeaderItem CSS\n */\nexport const styles = css`\n :host {\n display: table-cell;\n box-sizing: border-box;\n }\n \n .header__item__wrapper{\n display:flex;\n align-items:center;\n box-sizing: border-box;\n padding: var(--nile-spacing-spacing-lg) var(--nile-spacing-spacing-3xl);\n min-height: 44px;\n height: 44px;\n }\n\n .headers {\n display: flex;\n align-items: center;\n height: auto;\n width: 100%;\n gap: 8px;\n color: var(--nile-colors-gray-light-mode-600);\n font-family: var(--nile-font-family-serif);\n font-feature-settings: 'clig' off, 'liga' off;\n font-size: var(--nile-type-scale-2);\n font-weight: 500;\n font-style: normal;\n /* line-height: var(--nile-type-scale-5); */\n line-height: normal;\n }\n\n nile-icon {\n cursor: pointer;\n }\n\n .sorting__icons {\n display: flex;\n flex-direction: column;\n align-items: centre;\n }\n\n .sorting__icons nile-icon:hover {\n opacity: 0.4;\n }\n\n .hover__arrow {\n opacity: 0;\n }\n\n .headers:hover .hover__arrow {\n opacity: 0.3;\n }\n`;\n\nexport default [styles];\n"]}
@@ -56,7 +56,7 @@ let NileTableHeaderItem = class NileTableHeaderItem extends NileElement {
56
56
  render() {
57
57
  return html ` ${this.hasSlotController.test('[default]')
58
58
  ? html `
59
- <div class="header__item__wrapper" part="nile__table-header-cell">
59
+ <div class="header__item__wrapper">
60
60
  <div class="headers">
61
61
  <slot> </slot>
62
62
  ${this.havesort && this.sorting_ct % 3 === 0
@@ -1 +1 @@
1
- {"version":3,"file":"nile-table-header-item.js","sourceRoot":"","sources":["../../../src/nile-table-header-item/nile-table-header-item.ts"],"names":[],"mappings":"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","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 {\n LitElement,\n html,\n CSSResultArray,\n TemplateResult,\n} from 'lit';\nimport { customElement, state, property } from 'lit/decorators.js';\nimport { styles } from './nile-table-header-item.css';\nimport NileElement from '../internal/nile-element';\nimport { HasSlotController } from '../internal/slot';\n\n/**\n * Nile icon component.\n *\n * @tag nile-table-header-item\n *\n */\n@customElement('nile-table-header-item')\nexport class NileTableHeaderItem extends NileElement {\n private readonly hasSlotController = new HasSlotController(this, '[default]');\n /**\n * The styles for TableHeaderItem\n * @remarks If you are extending this class you can extend the base styles with super. Eg `return [super(), myCustomStyles]`\n */\n public static get styles(): CSSResultArray {\n return [styles];\n }\n\n /** Enables the sort functionality. */\n @property({ type: Boolean, reflect: true }) havesort = false;\n\n /** Enables the sort functionality. */\n @property({ type: Boolean, reflect: true }) havefilter = false;\n\n /** Places the icon . */\n @property({ type: String, reflect: true, attribute: 'icon-name' }) iconName =\n '';\n\n @state() sorting_ct = 0;\n\n /* #endregion */\n\n /* #region Methods */\n\n /**\n * Render method\n * @slot This is a slot test\n */\n private handleSort(e: any) {\n this.sorting_ct++;\n let curr_sort_string = this.hasSlotController.host.innerHTML;\n const order = ['normal', 'asc', 'des'];\n this.emit('nile-click-sort', {\n value: { curr_sort_string, order: order[this.sorting_ct % 3] },\n });\n }\n\n private handleSearch(e: any) {\n this.emit('nile-search', { value: e.detail.value });\n }\n\n public render(): TemplateResult {\n return html` ${this.hasSlotController.test('[default]')\n ? html`\n <div class=\"header__item__wrapper\" part=\"nile__table-header-cell\">\n <div class=\"headers\">\n <slot> </slot>\n ${this.havesort && this.sorting_ct % 3 === 0\n ? html`<nile-icon\n name=\"sortdown\"\n size=\"16\"\n @click=${this.handleSort}\n class=\"hover__arrow\"\n ></nile-icon>`\n : null}\n ${this.havesort && this.sorting_ct % 3 === 1\n ? html`<nile-icon\n name=\"sortdown\"\n size=\"16\"\n @click=${this.handleSort}\n ></nile-icon>`\n : null}\n ${this.havesort && this.sorting_ct % 3 === 2\n ? html`<nile-icon\n name=\"sortup\"\n size=\"16\"\n @click=${this.handleSort}\n ></nile-icon>`\n : null}\n ${this.iconName\n ? html` <nile-icon name=\"${this.iconName}\" size=\"16\"></nile-icon>`\n : html``}\n ${this.havefilter\n ? html` <nile-popover title=\"Filter\" placement=\"bottom\">\n <nile-icon name=\"filter\" size=\"16\" slot=\"anchor\"></nile-icon>\n <nile-input\n placeholder=\"Search\"\n @nile-input=${this.handleSearch}\n part=\"filter__search\"\n ></nile-input>\n <slot name=\"filter__content\" part=\"filter__content\"></slot>\n </nile-popover>`\n : html``}\n </div>\n </div>`\n : null}`;\n }\n /* #endregion */\n}\n\nexport default NileTableHeaderItem;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-table-header-item': NileTableHeaderItem;\n }\n}\n"]}
1
+ {"version":3,"file":"nile-table-header-item.js","sourceRoot":"","sources":["../../../src/nile-table-header-item/nile-table-header-item.ts"],"names":[],"mappings":"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","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 {\n LitElement,\n html,\n CSSResultArray,\n TemplateResult,\n} from 'lit';\nimport { customElement, state, property } from 'lit/decorators.js';\nimport { styles } from './nile-table-header-item.css';\nimport NileElement from '../internal/nile-element';\nimport { HasSlotController } from '../internal/slot';\n\n/**\n * Nile icon component.\n *\n * @tag nile-table-header-item\n *\n */\n@customElement('nile-table-header-item')\nexport class NileTableHeaderItem extends NileElement {\n private readonly hasSlotController = new HasSlotController(this, '[default]');\n /**\n * The styles for TableHeaderItem\n * @remarks If you are extending this class you can extend the base styles with super. Eg `return [super(), myCustomStyles]`\n */\n public static get styles(): CSSResultArray {\n return [styles];\n }\n\n /** Enables the sort functionality. */\n @property({ type: Boolean, reflect: true }) havesort = false;\n\n /** Enables the sort functionality. */\n @property({ type: Boolean, reflect: true }) havefilter = false;\n\n /** Places the icon . */\n @property({ type: String, reflect: true, attribute: 'icon-name' }) iconName =\n '';\n\n @state() sorting_ct = 0;\n\n /* #endregion */\n\n /* #region Methods */\n\n /**\n * Render method\n * @slot This is a slot test\n */\n private handleSort(e: any) {\n this.sorting_ct++;\n let curr_sort_string = this.hasSlotController.host.innerHTML;\n const order = ['normal', 'asc', 'des'];\n this.emit('nile-click-sort', {\n value: { curr_sort_string, order: order[this.sorting_ct % 3] },\n });\n }\n\n private handleSearch(e: any) {\n this.emit('nile-search', { value: e.detail.value });\n }\n\n public render(): TemplateResult {\n return html` ${this.hasSlotController.test('[default]')\n ? html`\n <div class=\"header__item__wrapper\">\n <div class=\"headers\">\n <slot> </slot>\n ${this.havesort && this.sorting_ct % 3 === 0\n ? html`<nile-icon\n name=\"sortdown\"\n size=\"16\"\n @click=${this.handleSort}\n class=\"hover__arrow\"\n ></nile-icon>`\n : null}\n ${this.havesort && this.sorting_ct % 3 === 1\n ? html`<nile-icon\n name=\"sortdown\"\n size=\"16\"\n @click=${this.handleSort}\n ></nile-icon>`\n : null}\n ${this.havesort && this.sorting_ct % 3 === 2\n ? html`<nile-icon\n name=\"sortup\"\n size=\"16\"\n @click=${this.handleSort}\n ></nile-icon>`\n : null}\n ${this.iconName\n ? html` <nile-icon name=\"${this.iconName}\" size=\"16\"></nile-icon>`\n : html``}\n ${this.havefilter\n ? html` <nile-popover title=\"Filter\" placement=\"bottom\">\n <nile-icon name=\"filter\" size=\"16\" slot=\"anchor\"></nile-icon>\n <nile-input\n placeholder=\"Search\"\n @nile-input=${this.handleSearch}\n part=\"filter__search\"\n ></nile-input>\n <slot name=\"filter__content\" part=\"filter__content\"></slot>\n </nile-popover>`\n : html``}\n </div>\n </div>`\n : null}`;\n }\n /* #endregion */\n}\n\nexport default NileTableHeaderItem;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-table-header-item': NileTableHeaderItem;\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"nile-table-row.js","sourceRoot":"","sources":["../../../src/nile-table-row/nile-table-row.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;;AAEH,OAAO,EAEL,IAAI,GAGL,MAAM,KAAK,CAAC;AACb,OAAO,EAAE,aAAa,EAAmB,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,WAAW,MAAM,0BAA0B,CAAC;AAEnD;;;;;GAKG;AAEI,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQ,WAAW;IAC3C;;;OAGG;IAEI,MAAM,KAAK,MAAM;QACtB,OAAO,CAAC,MAAM,CAAC,CAAC;IAClB,CAAC;IAED,gBAAgB;IAEhB,qBAAqB;IAErB;;;OAGG;IAEK,kBAAkB,CAAC,KAAkB;QAC3C,MAAM,YAAY,GAAQ;YACxB,GAAG,IAAI,CAAC,gBAAgB,CAAC,wBAAwB,CAAC;SACnD,CAAC;QACF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7C,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;YAC/B,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC;YAC3E,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,CAAC,UAAU,GAAG,CAAC,CAAC;YACxB,CAAC;QACH,CAAC;IACH,CAAC;IAEM,MAAM;QACX,OAAO,IAAI,CAAA;;;4BAGa,IAAI,CAAC,kBAAkB;;KAE9C,CAAC;IACJ,CAAC;CAGF,CAAA;AA1CY,YAAY;IADxB,aAAa,CAAC,gBAAgB,CAAC;GACnB,YAAY,CA0CxB;;AAED,eAAe,YAAY,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 {\n LitElement,\n html,\n CSSResultArray,\n TemplateResult,\n} from 'lit';\nimport { customElement, query, property } from 'lit/decorators.js';\nimport { styles } from './nile-table-row.css';\nimport NileElement from '../internal/nile-element';\n\n/**\n *nile-table-row component.\n *\n * @tag nile-table-row\n *\n */\n@customElement('nile-table-row')\nexport class NileTableRow extends NileElement {\n /**\n * The styles for TableRow\n * @remarks If you are extending this class you can extend the base styles with super. Eg `return [super(), myCustomStyles]`\n */\n\n public static get styles(): CSSResultArray {\n return [styles];\n }\n\n /* #endregion */\n\n /* #region Methods */\n\n /**\n * Render method\n * @slot This is a slot test\n */\n\n private handleSortingAlter(event: CustomEvent) {\n const header_items: any = [\n ...this.querySelectorAll('nile-table-header-item'),\n ];\n for (let i = 0; i < header_items.length; i++) {\n const header = header_items[i];\n const haveIcon = header.textContent == event.detail.value.curr_sort_string;\n if (!haveIcon) {\n header.sorting_ct = 0;\n }\n }\n }\n\n public render(): TemplateResult {\n return html`\n <slot\n part=\"nile-row\"\n @nile-click-sort=\"${this.handleSortingAlter}\"\n ></slot>\n `;\n }\n\n /* #endregion */\n}\n\nexport default NileTableRow;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-table-row': NileTableRow;\n }\n}\n"]}
1
+ {"version":3,"file":"nile-table-row.js","sourceRoot":"","sources":["../../../src/nile-table-row/nile-table-row.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;;AAEH,OAAO,EAEL,IAAI,GAGL,MAAM,KAAK,CAAC;AACb,OAAO,EAAE,aAAa,EAAmB,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,WAAW,MAAM,0BAA0B,CAAC;AAEnD;;;;;GAKG;AAEI,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQ,WAAW;IAC3C;;;OAGG;IAEI,MAAM,KAAK,MAAM;QACtB,OAAO,CAAC,MAAM,CAAC,CAAC;IAClB,CAAC;IAED,gBAAgB;IAEhB,qBAAqB;IAErB;;;OAGG;IAEK,kBAAkB,CAAC,KAAkB;QAC3C,MAAM,YAAY,GAAQ;YACxB,GAAG,IAAI,CAAC,gBAAgB,CAAC,wBAAwB,CAAC;SACnD,CAAC;QACF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7C,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;YAC/B,MAAM,QAAQ,GACZ,MAAM,CAAC,WAAW,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC;YAC5D,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,CAAC,UAAU,GAAG,CAAC,CAAC;YACxB,CAAC;QACH,CAAC;IACH,CAAC;IAEM,MAAM;QACX,OAAO,IAAI,CAAA;;;4BAGa,IAAI,CAAC,kBAAkB;;KAE9C,CAAC;IACJ,CAAC;CAGF,CAAA;AA3CY,YAAY;IADxB,aAAa,CAAC,gBAAgB,CAAC;GACnB,YAAY,CA2CxB;;AAED,eAAe,YAAY,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 {\n LitElement,\n html,\n CSSResultArray,\n TemplateResult,\n} from 'lit';\nimport { customElement, query, property } from 'lit/decorators.js';\nimport { styles } from './nile-table-row.css';\nimport NileElement from '../internal/nile-element';\n\n/**\n *nile-table-row component.\n *\n * @tag nile-table-row\n *\n */\n@customElement('nile-table-row')\nexport class NileTableRow extends NileElement {\n /**\n * The styles for TableRow\n * @remarks If you are extending this class you can extend the base styles with super. Eg `return [super(), myCustomStyles]`\n */\n\n public static get styles(): CSSResultArray {\n return [styles];\n }\n\n /* #endregion */\n\n /* #region Methods */\n\n /**\n * Render method\n * @slot This is a slot test\n */\n\n private handleSortingAlter(event: CustomEvent) {\n const header_items: any = [\n ...this.querySelectorAll('nile-table-header-item'),\n ];\n for (let i = 0; i < header_items.length; i++) {\n const header = header_items[i];\n const haveIcon =\n header.textContent == event.detail.value.curr_sort_string;\n if (!haveIcon) {\n header.sorting_ct = 0;\n }\n }\n }\n\n public render(): TemplateResult {\n return html`\n <slot\n part=\"nile-row\"\n @nile-click-sort=\"${this.handleSortingAlter}\"\n ></slot>\n `;\n }\n\n /* #endregion */\n}\n\nexport default NileTableRow;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-table-row': NileTableRow;\n }\n}\n"]}
@@ -0,0 +1,18 @@
1
+ export declare function isInViewport(element: HTMLElement): boolean;
2
+ export declare function getValidTooltipPosition(triggerRect: DOMRect, tooltipRect: DOMRect, originalPlacement: string, distance: number, skidding: number, caretSize: number, viewportWidth: number, viewportHeight: number): {
3
+ top: number;
4
+ left: number;
5
+ placement: string;
6
+ };
7
+ export interface CaretPositionInput {
8
+ placement: string;
9
+ tooltipRect: DOMRect;
10
+ triggerRect: DOMRect;
11
+ caretSize: number;
12
+ left: number;
13
+ top: number;
14
+ }
15
+ export declare function getCaretPosition({ placement, tooltipRect, triggerRect, caretSize, left, top }: CaretPositionInput): {
16
+ caretLeft: number;
17
+ caretTop: number;
18
+ };
@@ -0,0 +1,151 @@
1
+ export function isInViewport(element) {
2
+ const rect = element.getBoundingClientRect();
3
+ return (rect.top >= 0 &&
4
+ rect.left >= 0 &&
5
+ rect.bottom <= (window.innerHeight || document.documentElement.clientHeight) &&
6
+ rect.right <= (window.innerWidth || document.documentElement.clientWidth));
7
+ }
8
+ export function getValidTooltipPosition(triggerRect, tooltipRect, originalPlacement, distance, skidding, caretSize, viewportWidth, viewportHeight) {
9
+ const triggerCenterX = triggerRect.left + triggerRect.width / 2;
10
+ const getCandidatePosition = (placement) => {
11
+ let top = 0;
12
+ let left = 0;
13
+ switch (placement) {
14
+ case 'top':
15
+ top = triggerRect.top - tooltipRect.height - distance;
16
+ left = triggerRect.left + (triggerRect.width - tooltipRect.width) / 2 + skidding;
17
+ break;
18
+ case 'top-start':
19
+ top = triggerRect.top - tooltipRect.height - distance;
20
+ left = triggerCenterX - caretSize + skidding;
21
+ break;
22
+ case 'top-end':
23
+ top = triggerRect.top - tooltipRect.height - distance;
24
+ left = triggerCenterX - tooltipRect.width + caretSize + 10 + skidding;
25
+ break;
26
+ case 'bottom':
27
+ top = triggerRect.bottom + distance;
28
+ left = triggerRect.left + (triggerRect.width - tooltipRect.width) / 2 + skidding;
29
+ break;
30
+ case 'bottom-start':
31
+ top = triggerRect.bottom + distance;
32
+ left = triggerCenterX - caretSize - 10 + skidding;
33
+ break;
34
+ case 'bottom-end':
35
+ top = triggerRect.bottom + distance;
36
+ left = triggerCenterX - (tooltipRect.width - caretSize) + 10 + skidding;
37
+ break;
38
+ case 'left':
39
+ top = triggerRect.top + (triggerRect.height - tooltipRect.height) / 2 + skidding;
40
+ left = triggerRect.left - tooltipRect.width - distance;
41
+ break;
42
+ case 'left-start':
43
+ top = triggerRect.top + skidding;
44
+ left = triggerRect.left - tooltipRect.width - distance;
45
+ break;
46
+ case 'left-end':
47
+ top = triggerRect.bottom - tooltipRect.height + skidding;
48
+ left = triggerRect.left - tooltipRect.width - distance;
49
+ break;
50
+ case 'right':
51
+ top = triggerRect.top + (triggerRect.height - tooltipRect.height) / 2 + skidding;
52
+ left = triggerRect.right + distance;
53
+ break;
54
+ case 'right-start':
55
+ top = triggerRect.top + skidding;
56
+ left = triggerRect.right + distance;
57
+ break;
58
+ case 'right-end':
59
+ top = triggerRect.bottom - tooltipRect.height + skidding;
60
+ left = triggerRect.right + distance;
61
+ break;
62
+ default:
63
+ top = triggerRect.top - tooltipRect.height - distance;
64
+ left = triggerRect.left + (triggerRect.width - tooltipRect.width) / 2 + skidding;
65
+ }
66
+ return { top, left };
67
+ };
68
+ const candidateFits = (top, left) => top >= 0 &&
69
+ left >= 0 &&
70
+ top + tooltipRect.height <= viewportHeight &&
71
+ left + tooltipRect.width <= viewportWidth;
72
+ let placement = originalPlacement;
73
+ let candidate = getCandidatePosition(placement);
74
+ if (!candidateFits(candidate.top, candidate.left)) {
75
+ if (!placement.startsWith('bottom')) {
76
+ placement = 'bottom';
77
+ candidate = getCandidatePosition(placement);
78
+ }
79
+ }
80
+ if (candidate.left < 0) {
81
+ candidate.left = 5;
82
+ }
83
+ else if (candidate.left + tooltipRect.width > viewportWidth) {
84
+ candidate.left = viewportWidth - tooltipRect.width - 5;
85
+ }
86
+ if (candidate.top < 0) {
87
+ candidate.top = 5;
88
+ }
89
+ else if (candidate.top + tooltipRect.height > viewportHeight) {
90
+ candidate.top = viewportHeight - tooltipRect.height - 5;
91
+ }
92
+ return { ...candidate, placement };
93
+ }
94
+ export function getCaretPosition({ placement, tooltipRect, triggerRect, caretSize, left, top }) {
95
+ const triggerCenterX = triggerRect.left + triggerRect.width / 2;
96
+ const triggerCenterY = triggerRect.top + triggerRect.height / 2;
97
+ const [primaryPlacement, secondaryPlacement] = placement.split('-');
98
+ let caretLeft = 0;
99
+ let caretTop = 0;
100
+ switch (primaryPlacement) {
101
+ case 'top':
102
+ caretTop = tooltipRect.height - caretSize;
103
+ caretLeft = triggerCenterX - left - caretSize;
104
+ if (placement === 'top-end') {
105
+ caretLeft = triggerCenterX - left - caretSize;
106
+ }
107
+ else if (secondaryPlacement === 'start') {
108
+ caretLeft = triggerCenterX - left - caretSize;
109
+ }
110
+ else if (secondaryPlacement === 'end') {
111
+ caretLeft = tooltipRect.width - 2 * caretSize + 8;
112
+ }
113
+ caretLeft = Math.max(caretSize, Math.min(caretLeft, tooltipRect.width - 2 * caretSize));
114
+ break;
115
+ case 'bottom':
116
+ caretTop = -caretSize;
117
+ caretLeft = triggerCenterX - left - caretSize;
118
+ break;
119
+ case 'left':
120
+ caretLeft = tooltipRect.width - caretSize;
121
+ if (secondaryPlacement === 'start') {
122
+ caretTop = triggerRect.height / 2 - caretSize;
123
+ }
124
+ else if (secondaryPlacement === 'end') {
125
+ caretTop = tooltipRect.height - triggerRect.height / 2 - caretSize;
126
+ }
127
+ else {
128
+ caretTop = triggerCenterY - top - caretSize;
129
+ }
130
+ caretTop = Math.max(caretSize, Math.min(caretTop, tooltipRect.height - 2 * caretSize));
131
+ break;
132
+ case 'right':
133
+ caretLeft = -caretSize;
134
+ if (secondaryPlacement === 'start') {
135
+ caretTop = triggerRect.height / 2 - caretSize;
136
+ }
137
+ else if (secondaryPlacement === 'end') {
138
+ caretTop = tooltipRect.height - triggerRect.height / 2 - caretSize;
139
+ }
140
+ else {
141
+ caretTop = triggerCenterY - top - caretSize;
142
+ }
143
+ caretTop = Math.max(caretSize, Math.min(caretTop, tooltipRect.height - 2 * caretSize));
144
+ break;
145
+ default:
146
+ caretLeft = tooltipRect.width / 2 - caretSize;
147
+ caretTop = tooltipRect.height / 2 - caretSize;
148
+ }
149
+ return { caretLeft, caretTop };
150
+ }
151
+ //# sourceMappingURL=nile-tooltip-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nile-tooltip-utils.js","sourceRoot":"","sources":["../../../src/nile-tooltip/nile-tooltip-utils.ts"],"names":[],"mappings":"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","sourcesContent":["export function isInViewport(element: HTMLElement): boolean {\n const rect = element.getBoundingClientRect();\n return (\n rect.top >= 0 &&\n rect.left >= 0 &&\n rect.bottom <= (window.innerHeight || document.documentElement.clientHeight) &&\n rect.right <= (window.innerWidth || document.documentElement.clientWidth)\n );\n}\n\n\nexport function getValidTooltipPosition(\n triggerRect: DOMRect,\n tooltipRect: DOMRect,\n originalPlacement: string,\n distance: number,\n skidding: number,\n caretSize: number,\n viewportWidth: number,\n viewportHeight: number\n): { top: number; left: number; placement: string } {\n const triggerCenterX = triggerRect.left + triggerRect.width / 2;\n\n const getCandidatePosition = (placement: string) => {\n let top = 0;\n let left = 0;\n\n switch (placement) {\n case 'top':\n top = triggerRect.top - tooltipRect.height - distance;\n left = triggerRect.left + (triggerRect.width - tooltipRect.width) / 2 + skidding;\n break;\n case 'top-start':\n top = triggerRect.top - tooltipRect.height - distance;\n left = triggerCenterX - caretSize + skidding;\n break;\n case 'top-end':\n top = triggerRect.top - tooltipRect.height - distance;\n left = triggerCenterX - tooltipRect.width + caretSize + 10 + skidding;\n break;\n case 'bottom':\n top = triggerRect.bottom + distance;\n left = triggerRect.left + (triggerRect.width - tooltipRect.width) / 2 + skidding;\n break;\n case 'bottom-start':\n top = triggerRect.bottom + distance;\n left = triggerCenterX - caretSize - 10 + skidding;\n break;\n case 'bottom-end':\n top = triggerRect.bottom + distance;\n left = triggerCenterX - (tooltipRect.width - caretSize) + 10 + skidding;\n break;\n case 'left':\n top = triggerRect.top + (triggerRect.height - tooltipRect.height) / 2 + skidding;\n left = triggerRect.left - tooltipRect.width - distance;\n break;\n case 'left-start':\n top = triggerRect.top + skidding;\n left = triggerRect.left - tooltipRect.width - distance;\n break;\n case 'left-end':\n top = triggerRect.bottom - tooltipRect.height + skidding;\n left = triggerRect.left - tooltipRect.width - distance;\n break;\n case 'right':\n top = triggerRect.top + (triggerRect.height - tooltipRect.height) / 2 + skidding;\n left = triggerRect.right + distance;\n break;\n case 'right-start':\n top = triggerRect.top + skidding;\n left = triggerRect.right + distance;\n break;\n case 'right-end':\n top = triggerRect.bottom - tooltipRect.height + skidding;\n left = triggerRect.right + distance;\n break;\n default:\n top = triggerRect.top - tooltipRect.height - distance;\n left = triggerRect.left + (triggerRect.width - tooltipRect.width) / 2 + skidding;\n }\n\n return { top, left };\n };\n\n const candidateFits = (top: number, left: number) =>\n top >= 0 &&\n left >= 0 &&\n top + tooltipRect.height <= viewportHeight &&\n left + tooltipRect.width <= viewportWidth;\n\n let placement = originalPlacement;\n let candidate = getCandidatePosition(placement);\n\n if (!candidateFits(candidate.top, candidate.left)) {\n if (!placement.startsWith('bottom')) {\n placement = 'bottom';\n candidate = getCandidatePosition(placement);\n }\n }\n\n if (candidate.left < 0) {\n candidate.left = 5;\n } else if (candidate.left + tooltipRect.width > viewportWidth) {\n candidate.left = viewportWidth - tooltipRect.width - 5;\n }\n\n if (candidate.top < 0) {\n candidate.top = 5;\n } else if (candidate.top + tooltipRect.height > viewportHeight) {\n candidate.top = viewportHeight - tooltipRect.height - 5;\n }\n\n return { ...candidate, placement };\n}\n\nexport interface CaretPositionInput {\n placement: string;\n tooltipRect: DOMRect;\n triggerRect: DOMRect;\n caretSize: number;\n left: number;\n top: number;\n}\n\nexport function getCaretPosition({\n placement,\n tooltipRect,\n triggerRect,\n caretSize,\n left,\n top\n}: CaretPositionInput): { caretLeft: number; caretTop: number } {\n const triggerCenterX = triggerRect.left + triggerRect.width / 2;\n const triggerCenterY = triggerRect.top + triggerRect.height / 2;\n\n const [primaryPlacement, secondaryPlacement] = placement.split('-');\n\n let caretLeft = 0;\n let caretTop = 0;\n\n switch (primaryPlacement) {\n case 'top':\n caretTop = tooltipRect.height - caretSize;\n caretLeft = triggerCenterX - left - caretSize;\n if (placement === 'top-end') {\n caretLeft = triggerCenterX - left - caretSize;\n } else if (secondaryPlacement === 'start') {\n caretLeft = triggerCenterX - left - caretSize;\n } else if (secondaryPlacement === 'end') {\n caretLeft = tooltipRect.width - 2 * caretSize + 8;\n }\n caretLeft = Math.max(caretSize, Math.min(caretLeft, tooltipRect.width - 2 * caretSize));\n break;\n\n case 'bottom':\n caretTop = -caretSize;\n caretLeft = triggerCenterX - left - caretSize;\n break;\n\n case 'left':\n caretLeft = tooltipRect.width - caretSize;\n if (secondaryPlacement === 'start') {\n caretTop = triggerRect.height / 2 - caretSize;\n } else if (secondaryPlacement === 'end') {\n caretTop = tooltipRect.height - triggerRect.height / 2 - caretSize;\n } else {\n caretTop = triggerCenterY - top - caretSize;\n }\n caretTop = Math.max(caretSize, Math.min(caretTop, tooltipRect.height - 2 * caretSize));\n break;\n\n case 'right':\n caretLeft = -caretSize;\n if (secondaryPlacement === 'start') {\n caretTop = triggerRect.height / 2 - caretSize;\n } else if (secondaryPlacement === 'end') {\n caretTop = tooltipRect.height - triggerRect.height / 2 - caretSize;\n } else {\n caretTop = triggerCenterY - top - caretSize;\n }\n caretTop = Math.max(caretSize, Math.min(caretTop, tooltipRect.height - 2 * caretSize));\n break;\n\n default:\n caretLeft = tooltipRect.width / 2 - caretSize;\n caretTop = tooltipRect.height / 2 - caretSize;\n }\n\n return { caretLeft, caretTop };\n}"]}
@@ -15,7 +15,6 @@ export const styles = css `
15
15
  position: relative;
16
16
  display: inline-block;
17
17
  }
18
-
19
18
  .tooltip {
20
19
  position: fixed;
21
20
  z-index: 1000;
@@ -28,100 +27,45 @@ export const styles = css `
28
27
  opacity: 0;
29
28
  transition: opacity 0.2s, transform 0.2s;
30
29
  pointer-events: none;
31
- white-space: nowrap;
30
+ white-space: normal;
32
31
  visibility: hidden;
33
- transform: scale(0.95);
34
- transition: opacity 0.2s ease-out, transform 0.2s ease-out;
32
+ overflow: visible;
33
+
35
34
  }
36
-
37
- .tooltip[open] {
38
- opacity: 1;
39
- transform: scale(1);
40
- }
41
-
42
35
  :host([open]) .tooltip {
43
36
  opacity: 1;
44
37
  visibility: visible;
45
38
  pointer-events: auto;
46
39
  }
47
-
48
40
  .tooltip__body--large {
49
- font-size: var(--nile-type-scale-4, 16px);
41
+ font-size: var(--nile-tooltip-font-size-lg, 16px);
50
42
  line-height: var(--nile-tooltip-line-height-lg, 1.75);
51
43
  }
52
-
53
- /* Tooltip Arrow */
54
- .tooltip::after {
55
- content: '';
56
- position: absolute;
57
- width: 0;
58
- height: 0;
59
- border-style: solid;
60
- }
61
-
62
- /* Basic Arrow Positions */
63
- .tooltip[data-placement^="top"]::after {
64
- bottom: -6px;
65
- border-width: 6px 6px 0 6px;
66
- border-color: var(--nile-tooltip-color-background, #333) transparent transparent transparent;
44
+ .tooltip-content {
45
+ overflow: auto;
46
+ max-width: 252px;
47
+ max-height: 116px;
67
48
  }
68
-
69
- .tooltip[data-placement^="bottom"]::after {
70
- top: -6px;
71
- border-width: 0 6px 6px 6px;
72
- border-color: transparent transparent var(--nile-tooltip-color-background, #333) transparent;
49
+ .tooltip-caret {
50
+ position: absolute;
51
+ width: calc(2 * var(--caret-size, 6px));
52
+ height: calc(2 * var(--caret-size, 6px));
53
+ background-color: inherit;
54
+ transform: rotate(45deg);
55
+ z-index: -1;
73
56
  }
74
-
75
- .tooltip[data-placement^="left"]::after {
76
- right: -6px;
77
- border-width: 6px 0 6px 6px;
78
- border-color: transparent transparent transparent var(--nile-tooltip-color-background, #333);
57
+ .trigger-container {
58
+ display: inline-block;
79
59
  }
60
+
80
61
 
81
- .tooltip[data-placement^="right"]::after {
82
- left: -6px;
83
- border-width: 6px 6px 6px 0;
84
- border-color: transparent var(--nile-tooltip-color-background, #333) transparent transparent;
85
- }
86
62
 
87
- /* Arrow Horizontal Alignment for top/bottom placements */
88
- .tooltip[data-placement="top"]::after,
89
- .tooltip[data-placement="bottom"]::after {
90
- left: 50%;
91
- transform: translateX(-50%);
92
- }
93
63
 
94
- .tooltip[data-placement="top-start"]::after,
95
- .tooltip[data-placement="bottom-start"]::after {
96
- left: 12px;
97
- }
98
64
 
99
- .tooltip[data-placement="top-end"]::after,
100
- .tooltip[data-placement="bottom-end"]::after {
101
- right: 12px;
102
- left: auto;
103
- }
104
65
 
105
- /* Arrow Vertical Alignment for left/right placements */
106
- .tooltip[data-placement="left"]::after,
107
- .tooltip[data-placement="right"]::after {
108
- top: 50%;
109
- transform: translateY(-50%);
110
- }
111
66
 
112
- .tooltip[data-placement="left-start"]::after,
113
- .tooltip[data-placement="right-start"]::after {
114
- top: 12px;
115
- transform: none;
116
- }
117
67
 
118
- .tooltip[data-placement="left-end"]::after,
119
- .tooltip[data-placement="right-end"]::after {
120
- bottom: 12px;
121
- top: auto;
122
- transform: none;
123
- }
124
-
68
+
125
69
  `;
126
70
  export default [styles];
127
71
  //# sourceMappingURL=nile-tooltip.css.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"nile-tooltip.css.js","sourceRoot":"","sources":["../../../src/nile-tooltip/nile-tooltip.css.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkHxB,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\n/**\n * Tooltip CSS\n */\nexport const styles = css`\n\n\n:host {\n position: relative;\n display: inline-block;\n }\n\n .tooltip {\n position: fixed;\n z-index: 1000;\n background-color: var(--nile-tooltip-color-background, #333);\n color: var(--nile-colors-white-base, #fff);\n padding: 6px 10px;\n border-radius: 4px;\n font-size: var(--nile-tooltip-font-size-sm, 14px);\n line-height: var(--nile-tooltip-line-height-sm, 1.5);\n opacity: 0;\n transition: opacity 0.2s, transform 0.2s;\n pointer-events: none;\n white-space: nowrap;\n visibility: hidden;\n transform: scale(0.95);\n transition: opacity 0.2s ease-out, transform 0.2s ease-out;\n }\n\n .tooltip[open] {\n opacity: 1;\n transform: scale(1);\n}\n\n :host([open]) .tooltip {\n opacity: 1;\n visibility: visible;\n pointer-events: auto;\n }\n\n .tooltip__body--large {\n font-size: var(--nile-type-scale-4, 16px);\n line-height: var(--nile-tooltip-line-height-lg, 1.75);\n }\n\n /* Tooltip Arrow */\n .tooltip::after {\n content: '';\n position: absolute;\n width: 0;\n height: 0;\n border-style: solid;\n }\n\n /* Basic Arrow Positions */\n .tooltip[data-placement^=\"top\"]::after {\n bottom: -6px;\n border-width: 6px 6px 0 6px;\n border-color: var(--nile-tooltip-color-background, #333) transparent transparent transparent;\n }\n\n .tooltip[data-placement^=\"bottom\"]::after {\n top: -6px;\n border-width: 0 6px 6px 6px;\n border-color: transparent transparent var(--nile-tooltip-color-background, #333) transparent;\n }\n\n .tooltip[data-placement^=\"left\"]::after {\n right: -6px;\n border-width: 6px 0 6px 6px;\n border-color: transparent transparent transparent var(--nile-tooltip-color-background, #333);\n }\n\n .tooltip[data-placement^=\"right\"]::after {\n left: -6px;\n border-width: 6px 6px 6px 0;\n border-color: transparent var(--nile-tooltip-color-background, #333) transparent transparent;\n }\n\n /* Arrow Horizontal Alignment for top/bottom placements */\n .tooltip[data-placement=\"top\"]::after,\n .tooltip[data-placement=\"bottom\"]::after {\n left: 50%;\n transform: translateX(-50%);\n }\n\n .tooltip[data-placement=\"top-start\"]::after,\n .tooltip[data-placement=\"bottom-start\"]::after {\n left: 12px;\n }\n\n .tooltip[data-placement=\"top-end\"]::after,\n .tooltip[data-placement=\"bottom-end\"]::after {\n right: 12px;\n left: auto;\n }\n\n /* Arrow Vertical Alignment for left/right placements */\n .tooltip[data-placement=\"left\"]::after,\n .tooltip[data-placement=\"right\"]::after {\n top: 50%;\n transform: translateY(-50%);\n }\n\n .tooltip[data-placement=\"left-start\"]::after,\n .tooltip[data-placement=\"right-start\"]::after {\n top: 12px;\n transform: none;\n }\n\n .tooltip[data-placement=\"left-end\"]::after,\n .tooltip[data-placement=\"right-end\"]::after {\n bottom: 12px;\n top: auto;\n transform: none;\n }\n \n`;\n\nexport default [styles];\n"]}
1
+ {"version":3,"file":"nile-tooltip.css.js","sourceRoot":"","sources":["../../../src/nile-tooltip/nile-tooltip.css.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0DxB,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\n/**\n * Tooltip CSS\n */\nexport const styles = css`\n\n\n:host {\n position: relative;\n display: inline-block;\n }\n .tooltip {\n position: fixed;\n z-index: 1000;\n background-color: var(--nile-tooltip-color-background, #333);\n color: var(--nile-colors-white-base, #fff);\n padding: 6px 10px;\n border-radius: 4px;\n font-size: var(--nile-tooltip-font-size-sm, 14px);\n line-height: var(--nile-tooltip-line-height-sm, 1.5);\n opacity: 0;\n transition: opacity 0.2s, transform 0.2s;\n pointer-events: none;\n white-space: normal;\n visibility: hidden;\n overflow: visible;\n \n }\n :host([open]) .tooltip {\n opacity: 1;\n visibility: visible;\n pointer-events: auto;\n }\n .tooltip__body--large {\n font-size: var(--nile-tooltip-font-size-lg, 16px);\n line-height: var(--nile-tooltip-line-height-lg, 1.75);\n }\n .tooltip-content {\n overflow: auto;\n max-width: 252px;\n max-height: 116px;\n }\n .tooltip-caret {\n position: absolute;\n width: calc(2 * var(--caret-size, 6px));\n height: calc(2 * var(--caret-size, 6px));\n background-color: inherit;\n transform: rotate(45deg);\n z-index: -1;\n }\n .trigger-container {\n display: inline-block;\n }\n \n\n\n\n\n\n\n\n \n`;\n\nexport default [styles];"]}