@nectary/components 4.10.5 → 4.11.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (173) hide show
  1. package/accordion/index.d.ts +13 -0
  2. package/accordion/index.js +3 -2
  3. package/accordion-item/index.d.ts +23 -1
  4. package/accordion-item/index.js +3 -2
  5. package/action-menu/index.d.ts +12 -0
  6. package/action-menu/index.js +3 -2
  7. package/action-menu-option/index.d.ts +14 -0
  8. package/action-menu-option/index.js +3 -2
  9. package/alert/index.d.ts +14 -1
  10. package/alert/index.js +3 -2
  11. package/avatar/index.d.ts +21 -1
  12. package/avatar/index.js +3 -2
  13. package/badge/index.d.ts +21 -2
  14. package/badge/index.js +3 -2
  15. package/button/index.d.ts +25 -1
  16. package/button/index.js +3 -2
  17. package/button-group/index.d.ts +14 -0
  18. package/button-group/index.js +3 -2
  19. package/button-group-item/index.d.ts +15 -0
  20. package/button-group-item/index.js +3 -2
  21. package/card/index.d.ts +17 -1
  22. package/card/index.js +3 -2
  23. package/card-container/index.d.ts +4 -0
  24. package/card-container/index.js +3 -2
  25. package/card-v2/index.d.ts +15 -0
  26. package/card-v2/index.js +3 -2
  27. package/card-v2-title/index.d.ts +15 -1
  28. package/card-v2-title/index.js +3 -2
  29. package/checkbox/index.d.ts +28 -0
  30. package/checkbox/index.js +3 -2
  31. package/chip/index.d.ts +16 -0
  32. package/chip/index.js +3 -2
  33. package/code-tag/index.d.ts +9 -0
  34. package/code-tag/index.js +3 -2
  35. package/color-menu/index.d.ts +20 -1
  36. package/color-menu/index.js +3 -2
  37. package/color-menu-option/index.d.ts +11 -0
  38. package/color-menu-option/index.js +3 -2
  39. package/color-swatch/index.d.ts +11 -0
  40. package/color-swatch/index.js +3 -2
  41. package/date-picker/index.d.ts +35 -1
  42. package/date-picker/index.js +3 -2
  43. package/dialog/index.d.ts +15 -0
  44. package/dialog/index.js +3 -2
  45. package/emoji/index.d.ts +11 -0
  46. package/emoji/index.js +3 -2
  47. package/emoji-picker/index.d.ts +15 -1
  48. package/emoji-picker/index.js +3 -2
  49. package/field/index.d.ts +21 -0
  50. package/field/index.js +3 -2
  51. package/file-drop/index.d.ts +23 -0
  52. package/file-drop/index.js +3 -2
  53. package/file-picker/index.d.ts +15 -0
  54. package/file-picker/index.js +3 -2
  55. package/file-status/index.d.ts +14 -1
  56. package/file-status/index.js +3 -2
  57. package/flag/index.d.ts +11 -0
  58. package/flag/index.js +3 -2
  59. package/grid/index.d.ts +4 -0
  60. package/grid/index.js +3 -2
  61. package/grid-item/index.d.ts +12 -0
  62. package/grid-item/index.js +3 -2
  63. package/help-tooltip/index.d.ts +17 -0
  64. package/help-tooltip/index.js +3 -2
  65. package/horizontal-stepper/index.d.ts +11 -0
  66. package/horizontal-stepper/index.js +3 -2
  67. package/horizontal-stepper-item/index.d.ts +14 -1
  68. package/horizontal-stepper-item/index.js +3 -2
  69. package/icon/index.d.ts +12 -0
  70. package/icon/index.js +3 -2
  71. package/inline-alert/index.d.ts +16 -1
  72. package/inline-alert/index.js +3 -2
  73. package/input/index.d.ts +45 -1
  74. package/input/index.js +3 -2
  75. package/link/index.d.ts +26 -0
  76. package/link/index.js +3 -2
  77. package/list/index.d.ts +5 -0
  78. package/list/index.js +3 -2
  79. package/list-item/index.d.ts +5 -0
  80. package/list-item/index.js +3 -2
  81. package/package.json +2 -2
  82. package/pagination/index.d.ts +20 -1
  83. package/pagination/index.js +3 -2
  84. package/persistent-overlay/index.d.ts +13 -0
  85. package/persistent-overlay/index.js +3 -2
  86. package/pop/index.d.ts +21 -2
  87. package/pop/index.js +3 -2
  88. package/popover/index.d.ts +20 -1
  89. package/popover/index.js +3 -2
  90. package/progress/index.d.ts +12 -0
  91. package/progress/index.js +3 -2
  92. package/progress-stepper/index.d.ts +15 -1
  93. package/progress-stepper/index.js +3 -2
  94. package/progress-stepper-item/index.d.ts +16 -0
  95. package/progress-stepper-item/index.js +3 -2
  96. package/radio/index.d.ts +19 -0
  97. package/radio/index.js +3 -2
  98. package/radio-option/index.d.ts +18 -0
  99. package/radio-option/index.js +3 -2
  100. package/rich-text/index.d.ts +14 -0
  101. package/rich-text/index.js +3 -2
  102. package/rich-textarea/index.d.ts +28 -0
  103. package/rich-textarea/index.js +3 -2
  104. package/segment/index.d.ts +18 -1
  105. package/segment/index.js +3 -2
  106. package/segment-collapse/index.d.ts +14 -0
  107. package/segment-collapse/index.js +3 -2
  108. package/segmented-control/index.d.ts +11 -0
  109. package/segmented-control/index.js +3 -2
  110. package/segmented-control-option/index.d.ts +16 -0
  111. package/segmented-control-option/index.js +3 -2
  112. package/segmented-icon-control/index.d.ts +13 -0
  113. package/segmented-icon-control/index.js +3 -2
  114. package/segmented-icon-control-option/index.d.ts +14 -0
  115. package/segmented-icon-control-option/index.js +3 -2
  116. package/select-button/index.d.ts +21 -0
  117. package/select-button/index.js +3 -2
  118. package/select-menu/index.d.ts +30 -0
  119. package/select-menu/index.js +3 -2
  120. package/skeleton/index.d.ts +9 -0
  121. package/skeleton/index.js +3 -2
  122. package/skeleton-item/index.d.ts +4 -0
  123. package/skeleton-item/index.js +3 -2
  124. package/spinner/index.d.ts +12 -0
  125. package/spinner/index.js +3 -2
  126. package/stop-events/index.d.ts +6 -1
  127. package/stop-events/index.js +3 -2
  128. package/table/index.d.ts +5 -0
  129. package/table/index.js +3 -2
  130. package/table-body/index.d.ts +5 -0
  131. package/table-body/index.js +3 -2
  132. package/table-cell/index.d.ts +8 -1
  133. package/table-cell/index.js +3 -2
  134. package/table-head/index.d.ts +5 -0
  135. package/table-head/index.js +3 -2
  136. package/table-head-cell/index.d.ts +15 -0
  137. package/table-head-cell/index.js +3 -2
  138. package/table-row/index.d.ts +11 -0
  139. package/table-row/index.js +3 -2
  140. package/tabs/index.d.ts +13 -1
  141. package/tabs/index.js +3 -2
  142. package/tabs-icon-option/index.d.ts +16 -0
  143. package/tabs-icon-option/index.js +3 -2
  144. package/tabs-option/index.d.ts +18 -0
  145. package/tabs-option/index.js +3 -2
  146. package/tag/index.d.ts +15 -0
  147. package/tag/index.js +3 -2
  148. package/text/index.d.ts +17 -1
  149. package/text/index.js +3 -2
  150. package/textarea/index.d.ts +38 -0
  151. package/textarea/index.js +3 -2
  152. package/tile-control/index.d.ts +17 -0
  153. package/tile-control/index.js +3 -2
  154. package/tile-control-option/index.d.ts +18 -0
  155. package/tile-control-option/index.js +3 -2
  156. package/time-picker/index.d.ts +21 -1
  157. package/time-picker/index.js +3 -2
  158. package/title/index.d.ts +15 -1
  159. package/title/index.js +3 -2
  160. package/toast/index.d.ts +16 -1
  161. package/toast/index.js +3 -2
  162. package/toast-manager/index.d.ts +14 -2
  163. package/toast-manager/index.js +3 -2
  164. package/toggle/index.d.ts +20 -0
  165. package/toggle/index.js +3 -2
  166. package/tooltip/index.d.ts +21 -2
  167. package/tooltip/index.js +3 -2
  168. package/types.d.ts +10 -7
  169. package/utils/adapters.d.ts +4 -4
  170. package/vertical-stepper/index.d.ts +11 -0
  171. package/vertical-stepper/index.js +3 -2
  172. package/vertical-stepper-item/index.d.ts +14 -1
  173. package/vertical-stepper-item/index.js +3 -2
@@ -1,5 +1,17 @@
1
+ import { NectaryElement } from '../utils';
1
2
  import type { TSinchSpinner } from './types';
2
3
  import type { NectaryComponentReact, NectaryComponentVanilla } from '../types';
4
+ import type { TSinchSize } from '../utils/size';
5
+ export declare class Spinner extends NectaryElement {
6
+ #private;
7
+ constructor();
8
+ connectedCallback(): void;
9
+ disconnectedCallback(): void;
10
+ static get observedAttributes(): string[];
11
+ attributeChangedCallback(name: string, oldVal: string | null, newVal: string | null): void;
12
+ set size(size: TSinchSize);
13
+ get size(): TSinchSize;
14
+ }
3
15
  declare global {
4
16
  interface NectaryComponentMap {
5
17
  'sinch-spinner': TSinchSpinner;
package/spinner/index.js CHANGED
@@ -3,7 +3,7 @@ import { DEFAULT_SIZE, sizeValues } from '../utils/size';
3
3
  const templateHTML = '<style>@keyframes spinner{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}:host{display:block}:host([data-size="l"]){width:50px;height:50px;contain:strict}:host([data-size="m"]){width:24px;height:24px;contain:strict}:host([data-size="s"]){width:16px;height:16px;contain:strict}#spinner-size-l,#spinner-size-m,#spinner-size-s{display:none;will-change:transform}:host([data-size="l"])>#spinner-size-l{display:block;animation:1s linear infinite spinner}:host([data-size="m"])>#spinner-size-m{display:block;animation:1s linear infinite spinner}:host([data-size="s"])>#spinner-size-s{display:block;animation:1s linear infinite spinner}.bg{opacity:.3;stroke:var(--sinch-global-color-icon,var(--sinch-sys-color-text-default))}.fg{stroke:var(--sinch-global-color-icon,var(--sinch-sys-color-text-default))}</style><svg id="spinner-size-l" width="50" height="50" fill="none"><circle class="bg" cx="25" cy="25" r="22" stroke-width="6"/><path class="fg" d="M25 3a22 22 0 0 1 22 22" stroke-width="6" stroke-linecap="round"/></svg><svg id="spinner-size-m" width="24" height="24" fill="none"><circle class="bg" cx="12" cy="12" r="9" stroke-width="4"/><path class="fg" d="M21 12a9 9 0 0 0-9-9" stroke-width="4" stroke-linecap="round"/></svg><svg id="spinner-size-s" width="16" height="16" fill="none"><circle class="bg" cx="8" cy="8" r="6" stroke-width="2"/><path class="fg" d="M14 8a6 6 0 0 0-6-6" stroke-width="2" stroke-linecap="round"/></svg>';
4
4
  const template = document.createElement('template');
5
5
  template.innerHTML = templateHTML;
6
- defineCustomElement('sinch-spinner', class extends NectaryElement {
6
+ export class Spinner extends NectaryElement {
7
7
  #controller = null;
8
8
  constructor() {
9
9
  super();
@@ -55,4 +55,5 @@ defineCustomElement('sinch-spinner', class extends NectaryElement {
55
55
  }
56
56
  }
57
57
  };
58
- });
58
+ }
59
+ defineCustomElement('sinch-spinner', Spinner);
@@ -1 +1,6 @@
1
- export {};
1
+ export declare class StopEvents extends HTMLElement {
2
+ #private;
3
+ constructor();
4
+ connectedCallback(): void;
5
+ disconnectedCallback(): void;
6
+ }
@@ -1,5 +1,5 @@
1
1
  import { defineCustomElement, unpackCsv } from '../utils';
2
- defineCustomElement('sinch-stop-events', class extends HTMLElement {
2
+ export class StopEvents extends HTMLElement {
3
3
  #controller = null;
4
4
  constructor() {
5
5
  super();
@@ -24,4 +24,5 @@ defineCustomElement('sinch-stop-events', class extends HTMLElement {
24
24
  #stopEvent = e => {
25
25
  e.stopPropagation();
26
26
  };
27
- });
27
+ }
28
+ defineCustomElement('sinch-stop-events', StopEvents);
package/table/index.d.ts CHANGED
@@ -1,4 +1,9 @@
1
+ import { NectaryElement } from '../utils';
1
2
  import type { NectaryComponentReact, NectaryComponentVanilla } from '../types';
3
+ export declare class Table extends NectaryElement {
4
+ constructor();
5
+ connectedCallback(): void;
6
+ }
2
7
  declare global {
3
8
  interface NectaryComponentMap {
4
9
  'sinch-table': {};
package/table/index.js CHANGED
@@ -2,7 +2,7 @@ import { defineCustomElement, NectaryElement } from '../utils';
2
2
  const templateHTML = '<style>:host{display:table}</style><slot></slot>';
3
3
  const template = document.createElement('template');
4
4
  template.innerHTML = templateHTML;
5
- defineCustomElement('sinch-table', class extends NectaryElement {
5
+ export class Table extends NectaryElement {
6
6
  constructor() {
7
7
  super();
8
8
  const shadowRoot = this.attachShadow();
@@ -11,4 +11,5 @@ defineCustomElement('sinch-table', class extends NectaryElement {
11
11
  connectedCallback() {
12
12
  this.setAttribute('role', 'table');
13
13
  }
14
- });
14
+ }
15
+ defineCustomElement('sinch-table', Table);
@@ -1,4 +1,9 @@
1
+ import { NectaryElement } from '../utils';
1
2
  import type { NectaryComponentVanilla, NectaryComponentReact } from '../types';
3
+ export declare class TableBody extends NectaryElement {
4
+ constructor();
5
+ connectedCallback(): void;
6
+ }
2
7
  declare global {
3
8
  interface NectaryComponentMap {
4
9
  'sinch-table-body': {};
@@ -2,7 +2,7 @@ import { defineCustomElement, NectaryElement } from '../utils';
2
2
  const templateHTML = '<style>:host{display:table-row-group}</style><slot></slot>';
3
3
  const template = document.createElement('template');
4
4
  template.innerHTML = templateHTML;
5
- defineCustomElement('sinch-table-body', class extends NectaryElement {
5
+ export class TableBody extends NectaryElement {
6
6
  constructor() {
7
7
  super();
8
8
  const shadowRoot = this.attachShadow();
@@ -11,4 +11,5 @@ defineCustomElement('sinch-table-body', class extends NectaryElement {
11
11
  connectedCallback() {
12
12
  this.setAttribute('role', 'rowgroup');
13
13
  }
14
- });
14
+ }
15
+ defineCustomElement('sinch-table-body', TableBody);
@@ -1,5 +1,12 @@
1
- import type { TSinchTableCell } from './types';
1
+ import { NectaryElement } from '../utils';
2
+ import type { TSinchTableAlignType, TSinchTableCell } from './types';
2
3
  import type { NectaryComponentReact, NectaryComponentVanilla } from '../types';
4
+ export declare class TableCell extends NectaryElement {
5
+ constructor();
6
+ connectedCallback(): void;
7
+ set align(value: TSinchTableAlignType);
8
+ get align(): TSinchTableAlignType;
9
+ }
3
10
  declare global {
4
11
  interface NectaryComponentMap {
5
12
  'sinch-table-cell': TSinchTableCell;
@@ -3,7 +3,7 @@ const templateHTML = '<style>:host{display:table-cell;vertical-align:top;border-
3
3
  import { alignValues } from './utils';
4
4
  const template = document.createElement('template');
5
5
  template.innerHTML = templateHTML;
6
- defineCustomElement('sinch-table-cell', class extends NectaryElement {
6
+ export class TableCell extends NectaryElement {
7
7
  constructor() {
8
8
  super();
9
9
  const shadowRoot = this.attachShadow();
@@ -18,4 +18,5 @@ defineCustomElement('sinch-table-cell', class extends NectaryElement {
18
18
  get align() {
19
19
  return getLiteralAttribute(this, alignValues, 'align', 'start');
20
20
  }
21
- });
21
+ }
22
+ defineCustomElement('sinch-table-cell', TableCell);
@@ -1,4 +1,9 @@
1
+ import { NectaryElement } from '../utils';
1
2
  import type { NectaryComponentReact, NectaryComponentVanilla } from '../types';
3
+ export declare class TableHead extends NectaryElement {
4
+ constructor();
5
+ connectedCallback(): void;
6
+ }
2
7
  declare global {
3
8
  interface NectaryComponentMap {
4
9
  'sinch-table-head': {};
@@ -2,7 +2,7 @@ import { defineCustomElement, NectaryElement } from '../utils';
2
2
  const templateHTML = '<style>:host{display:table-header-group}</style><slot></slot>';
3
3
  const template = document.createElement('template');
4
4
  template.innerHTML = templateHTML;
5
- defineCustomElement('sinch-table-head', class extends NectaryElement {
5
+ export class TableHead extends NectaryElement {
6
6
  constructor() {
7
7
  super();
8
8
  const shadowRoot = this.attachShadow();
@@ -11,4 +11,5 @@ defineCustomElement('sinch-table-head', class extends NectaryElement {
11
11
  connectedCallback() {
12
12
  this.setAttribute('role', 'rowgroup');
13
13
  }
14
- });
14
+ }
15
+ defineCustomElement('sinch-table-head', TableHead);
@@ -1,6 +1,21 @@
1
1
  import '../text';
2
+ import { NectaryElement } from '../utils';
2
3
  import type { TSinchTableHeaderCell } from './types';
4
+ import type { TSinchTableAlignType } from '../table-cell/types';
3
5
  import type { NectaryComponentReact, NectaryComponentVanilla } from '../types';
6
+ export declare class TableHeadCell extends NectaryElement {
7
+ #private;
8
+ constructor();
9
+ connectedCallback(): void;
10
+ static get observedAttributes(): string[];
11
+ attributeChangedCallback(name: string, oldVal: string | null, newVal: string | null): void;
12
+ set text(value: string | null);
13
+ get text(): string | null;
14
+ set align(value: TSinchTableAlignType);
15
+ get align(): TSinchTableAlignType;
16
+ set fit(isFit: boolean);
17
+ get fit(): boolean;
18
+ }
4
19
  declare global {
5
20
  interface NectaryComponentMap {
6
21
  'sinch-table-head-cell': TSinchTableHeaderCell;
@@ -4,7 +4,7 @@ import { defineCustomElement, getAttribute, getBooleanAttribute, getLiteralAttri
4
4
  const templateHTML = '<style>:host{display:table-cell;border-bottom:1px solid var(--sinch-comp-table-color-head-cell-default-border-initial);vertical-align:middle}#wrapper{position:relative;display:flex;align-items:center;gap:8px;width:100%;height:100%;padding:8px;box-sizing:border-box;--sinch-global-color-icon:var(--sinch-comp-table-color-head-cell-default-icon-initial)}#text{flex-shrink:1;min-width:0;--sinch-global-color-text:var(--sinch-comp-table-color-head-cell-default-text-initial)}#text:empty{display:none}:host([align=center])>#wrapper{justify-content:center}:host([align=end])>#wrapper{justify-content:flex-end}:host([fit]){width:1px}</style><div id="wrapper"><slot name="checkbox"></slot><slot name="left"></slot><sinch-text id="text" type="m"></sinch-text><slot name="tooltip"></slot><slot name="right"></slot></div>';
5
5
  const template = document.createElement('template');
6
6
  template.innerHTML = templateHTML;
7
- defineCustomElement('sinch-table-head-cell', class extends NectaryElement {
7
+ export class TableHeadCell extends NectaryElement {
8
8
  #$text;
9
9
  constructor() {
10
10
  super();
@@ -54,4 +54,5 @@ defineCustomElement('sinch-table-head-cell', class extends NectaryElement {
54
54
  get fit() {
55
55
  return getBooleanAttribute(this, 'fit');
56
56
  }
57
- });
57
+ }
58
+ defineCustomElement('sinch-table-head-cell', TableHeadCell);
@@ -1,5 +1,16 @@
1
+ import { NectaryElement } from '../utils';
1
2
  import type { TSinchTableRow } from './types';
2
3
  import type { NectaryComponentReact, NectaryComponentVanilla } from '../types';
4
+ export declare class TableRow extends NectaryElement {
5
+ constructor();
6
+ connectedCallback(): void;
7
+ static get observedAttributes(): string[];
8
+ attributeChangedCallback(name: string, oldVal: string | null, newVal: string | null): void;
9
+ set sticky(isSticky: boolean);
10
+ get sticky(): boolean;
11
+ set selected(isSelected: boolean);
12
+ get selected(): boolean;
13
+ }
3
14
  declare global {
4
15
  interface NectaryComponentMap {
5
16
  'sinch-table-row': TSinchTableRow;
@@ -2,7 +2,7 @@ import { defineCustomElement, getBooleanAttribute, isAttrEqual, isAttrTrue, Nect
2
2
  const templateHTML = '<style>:host{display:table-row;background-color:var(--sinch-comp-table-color-row-default-background-initial)}:host([selected]){background-color:var(--sinch-comp-table-color-row-checked-background-initial)}:host(:hover){background-color:var(--sinch-comp-table-color-row-default-background-hover)}:host([sticky]) ::slotted(sinch-table-head-cell){position:sticky;top:0;z-index:1;background-color:var(--sinch-comp-table-color-row-default-background-sticky)}:host(:last-child) ::slotted(sinch-table-cell){border-bottom:none}</style><slot></slot>';
3
3
  const template = document.createElement('template');
4
4
  template.innerHTML = templateHTML;
5
- defineCustomElement('sinch-table-row', class extends NectaryElement {
5
+ export class TableRow extends NectaryElement {
6
6
  constructor() {
7
7
  super();
8
8
  const shadowRoot = this.attachShadow();
@@ -39,4 +39,5 @@ defineCustomElement('sinch-table-row', class extends NectaryElement {
39
39
  get selected() {
40
40
  return getBooleanAttribute(this, 'selected');
41
41
  }
42
- });
42
+ }
43
+ defineCustomElement('sinch-table-row', TableRow);
package/tabs/index.d.ts CHANGED
@@ -1,5 +1,17 @@
1
+ import { NectaryElement } from '../utils';
1
2
  import type { TSinchTabs } from './types';
2
- import type { NectaryComponentVanilla, NectaryComponentReact } from '../types';
3
+ import type { NectaryComponentVanilla, NectaryComponentReact, TRect } from '../types';
4
+ export declare class Tabs extends NectaryElement {
5
+ #private;
6
+ constructor();
7
+ connectedCallback(): void;
8
+ disconnectedCallback(): void;
9
+ static get observedAttributes(): string[];
10
+ attributeChangedCallback(name: string, _: string | null, newVal: string | null): void;
11
+ set value(value: string);
12
+ get value(): string;
13
+ nthOptionRect(index: number): TRect | null;
14
+ }
3
15
  declare global {
4
16
  interface NectaryComponentMap {
5
17
  'sinch-tabs': TSinchTabs;
package/tabs/index.js CHANGED
@@ -2,7 +2,7 @@ import { defineCustomElement, getAttribute, getBooleanAttribute, getReactEventHa
2
2
  const templateHTML = '<style>:host{display:block}#wrapper{display:flex;width:100%;height:40px;border-bottom:1px solid var(--sinch-comp-tab-color-default-border-initial);box-sizing:border-box}</style><div id="wrapper"><slot></slot></div>';
3
3
  const template = document.createElement('template');
4
4
  template.innerHTML = templateHTML;
5
- defineCustomElement('sinch-tabs', class extends NectaryElement {
5
+ export class Tabs extends NectaryElement {
6
6
  #$slot;
7
7
  #controller = null;
8
8
  constructor() {
@@ -77,4 +77,5 @@ defineCustomElement('sinch-tabs', class extends NectaryElement {
77
77
  #onChangeReactHandler = e => {
78
78
  getReactEventHandler(this, 'on-change')?.(e);
79
79
  };
80
- });
80
+ }
81
+ defineCustomElement('sinch-tabs', Tabs);
@@ -1,5 +1,21 @@
1
+ import { NectaryElement } from '../utils';
1
2
  import type { TSinchTabsIconOption } from './types';
2
3
  import type { NectaryComponentVanilla, NectaryComponentReact } from '../types';
4
+ export declare class TabsIconOption extends NectaryElement {
5
+ #private;
6
+ constructor();
7
+ connectedCallback(): void;
8
+ disconnectedCallback(): void;
9
+ static get observedAttributes(): string[];
10
+ set value(value: string);
11
+ get value(): string;
12
+ set disabled(isDisabled: boolean);
13
+ get disabled(): boolean;
14
+ attributeChangedCallback(name: string, oldVal: string | null, newVal: string | null): void;
15
+ get focusable(): boolean;
16
+ focus(): void;
17
+ blur(): void;
18
+ }
3
19
  declare global {
4
20
  interface NectaryComponentMap {
5
21
  'sinch-tabs-icon-option': TSinchTabsIconOption;
@@ -2,7 +2,7 @@ import { defineCustomElement, getAttribute, getBooleanAttribute, isAttrEqual, is
2
2
  const templateHTML = '<style>:host{display:block;outline:0}#button{all:initial;position:relative;display:flex;flex-direction:column;padding:12px 16px 0;box-sizing:border-box;cursor:pointer;background-color:var(--sinch-comp-tab-color-default-background-initial);border-top-left-radius:var(--sinch-comp-tab-shape-radius);border-top-right-radius:var(--sinch-comp-tab-shape-radius);height:39px;--sinch-global-color-icon:var(--sinch-comp-tab-color-default-icon-initial);--sinch-global-size-icon:var(--sinch-comp-tab-size-icon)}#button:hover{background-color:var(--sinch-comp-tab-color-default-background-hover)}#button:focus-visible::after{content:"";position:absolute;inset:0;bottom:-3px;border:2px solid var(--sinch-comp-tab-color-default-outline-focus);border-top-left-radius:var(--sinch-comp-tab-shape-radius);border-top-right-radius:var(--sinch-comp-tab-shape-radius);pointer-events:none}#button:disabled{cursor:unset;pointer-events:none;--sinch-global-color-icon:var(--sinch-comp-tab-color-disabled-icon-initial)}:host([data-checked]) #button{--sinch-global-color-icon:var(--sinch-comp-tab-color-checked-icon-initial)}:host([data-checked]) #button::before{content:"";position:absolute;left:0;right:0;bottom:-1px;pointer-events:none;border-top:2px solid var(--sinch-comp-tab-color-checked-border-initial)}::slotted(*){display:block}</style><sinch-tooltip id="tooltip"><button id="button" tabindex="0"><slot name="icon"></slot></button></sinch-tooltip>';
3
3
  const template = document.createElement('template');
4
4
  template.innerHTML = templateHTML;
5
- defineCustomElement('sinch-tabs-icon-option', class extends NectaryElement {
5
+ export class TabsIconOption extends NectaryElement {
6
6
  #$button;
7
7
  #$tooltip;
8
8
  constructor() {
@@ -76,4 +76,5 @@ defineCustomElement('sinch-tabs-icon-option', class extends NectaryElement {
76
76
  detail: this.value
77
77
  }));
78
78
  };
79
- });
79
+ }
80
+ defineCustomElement('sinch-tabs-icon-option', TabsIconOption);
@@ -1,6 +1,24 @@
1
1
  import '../text';
2
+ import { NectaryElement } from '../utils';
2
3
  import type { TSinchTabsOption } from './types';
3
4
  import type { NectaryComponentVanilla, NectaryComponentReact } from '../types';
5
+ export declare class TabsOption extends NectaryElement {
6
+ #private;
7
+ constructor();
8
+ connectedCallback(): void;
9
+ disconnectedCallback(): void;
10
+ static get observedAttributes(): string[];
11
+ attributeChangedCallback(name: string, oldVal: string | null, newVal: string | null): void;
12
+ set value(value: string);
13
+ get value(): string;
14
+ set disabled(isDisabled: boolean);
15
+ get disabled(): boolean;
16
+ set text(value: string);
17
+ get text(): string;
18
+ get focusable(): boolean;
19
+ focus(): void;
20
+ blur(): void;
21
+ }
4
22
  declare global {
5
23
  interface NectaryComponentMap {
6
24
  'sinch-tabs-option': TSinchTabsOption;
@@ -3,7 +3,7 @@ import { defineCustomElement, getAttribute, getBooleanAttribute, isAttrEqual, is
3
3
  const templateHTML = '<style>:host{display:block}#button{all:initial;position:relative;display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px 16px;box-sizing:border-box;cursor:pointer;background-color:var(--sinch-comp-tab-color-default-background-initial);border-top-left-radius:var(--sinch-comp-tab-shape-radius);border-top-right-radius:var(--sinch-comp-tab-shape-radius);height:39px;--sinch-global-color-text:var(--sinch-comp-tab-color-default-text-initial);--sinch-global-color-icon:var(--sinch-comp-tab-color-default-icon-initial);--sinch-global-size-icon:var(--sinch-comp-tab-size-icon)}#button:hover{background-color:var(--sinch-comp-tab-color-default-background-hover)}#button:focus-visible::after{content:"";position:absolute;inset:0;bottom:-3px;border:2px solid var(--sinch-comp-tab-color-default-outline-focus);border-top-left-radius:var(--sinch-comp-tab-shape-radius);border-top-right-radius:var(--sinch-comp-tab-shape-radius);pointer-events:none}#button:disabled{cursor:unset;pointer-events:none;--sinch-global-color-text:var(--sinch-comp-tab-color-disabled-text-initial);--sinch-global-color-icon:var(--sinch-comp-tab-color-disabled-icon-initial)}:host([data-checked]) #button{--sinch-global-color-text:var(--sinch-comp-tab-color-checked-text-initial);--sinch-global-color-icon:var(--sinch-comp-tab-color-checked-icon-initial)}:host([data-checked]) #button::before{content:"";position:absolute;left:0;right:0;bottom:-1px;pointer-events:none;border-top:2px solid var(--sinch-comp-tab-color-checked-border-initial)}#text{flex-shrink:1;flex-basis:auto;min-width:0;--sinch-comp-text-font:var(--sinch-comp-tab-font-label)}::slotted(*){display:block}</style><button id="button" tabindex="0"><slot name="icon"></slot><sinch-text id="text" type="m" ellipsis></sinch-text></button>';
4
4
  const template = document.createElement('template');
5
5
  template.innerHTML = templateHTML;
6
- defineCustomElement('sinch-tabs-option', class extends NectaryElement {
6
+ export class TabsOption extends NectaryElement {
7
7
  #$button;
8
8
  #$text;
9
9
  constructor() {
@@ -83,4 +83,5 @@ defineCustomElement('sinch-tabs-option', class extends NectaryElement {
83
83
  detail: this.value
84
84
  }));
85
85
  };
86
- });
86
+ }
87
+ defineCustomElement('sinch-tabs-option', TabsOption);
package/tag/index.d.ts CHANGED
@@ -1,7 +1,22 @@
1
1
  import '../text';
2
2
  import '../tooltip';
3
+ import { NectaryElement } from '../utils';
3
4
  import type { TSinchTag } from './types';
4
5
  import type { NectaryComponentReact, NectaryComponentVanilla } from '../types';
6
+ export declare class Tag extends NectaryElement {
7
+ #private;
8
+ constructor();
9
+ connectedCallback(): void;
10
+ disconnectedCallback(): void;
11
+ get color(): string | null;
12
+ set color(value: string | null);
13
+ get text(): string;
14
+ set text(value: string);
15
+ get small(): boolean;
16
+ set small(isSmall: boolean);
17
+ static get observedAttributes(): string[];
18
+ attributeChangedCallback(name: string, oldVal: string | null, newVal: string | null): void;
19
+ }
5
20
  declare global {
6
21
  interface NectaryComponentMap {
7
22
  'sinch-tag': TSinchTag;
package/tag/index.js CHANGED
@@ -5,7 +5,7 @@ const templateHTML = '<style>:host{display:inline-block;vertical-align:middle;ou
5
5
  import { getTagColorBg, getTagColorFg } from './utils';
6
6
  const template = document.createElement('template');
7
7
  template.innerHTML = templateHTML;
8
- defineCustomElement('sinch-tag', class extends NectaryElement {
8
+ export class Tag extends NectaryElement {
9
9
  #$text;
10
10
  #$tooltip;
11
11
  #$wrapper;
@@ -98,4 +98,5 @@ defineCustomElement('sinch-tag', class extends NectaryElement {
98
98
  }
99
99
  });
100
100
  }
101
- });
101
+ }
102
+ defineCustomElement('sinch-tag', Tag);
package/text/index.d.ts CHANGED
@@ -1,5 +1,21 @@
1
- import type { TSinchText } from './types';
1
+ import { NectaryElement } from '../utils';
2
+ import type { TSinchTextType, TSinchText } from './types';
2
3
  import type { NectaryComponentVanilla, NectaryComponentReact } from '../types';
4
+ export declare class Text extends NectaryElement {
5
+ #private;
6
+ constructor();
7
+ connectedCallback(): void;
8
+ static get observedAttributes(): string[];
9
+ attributeChangedCallback(name: string, oldVal: string | null, newVal: string | null): void;
10
+ get type(): TSinchTextType;
11
+ set type(value: TSinchTextType);
12
+ set inline(isInline: boolean);
13
+ get inline(): boolean;
14
+ set ellipsis(isEllipsis: boolean);
15
+ get ellipsis(): boolean;
16
+ set emphasized(isEmphasized: boolean);
17
+ get emphasized(): boolean;
18
+ }
3
19
  declare global {
4
20
  interface NectaryComponentMap {
5
21
  'sinch-text': TSinchText;
package/text/index.js CHANGED
@@ -3,7 +3,7 @@ const templateHTML = '<style>:host{text-align:var(--sinch-comp-text-align);displ
3
3
  import { typeValues } from './utils';
4
4
  const template = document.createElement('template');
5
5
  template.innerHTML = templateHTML;
6
- defineCustomElement('sinch-text', class extends NectaryElement {
6
+ export class Text extends NectaryElement {
7
7
  constructor() {
8
8
  super();
9
9
  const shadowRoot = this.attachShadow();
@@ -61,4 +61,5 @@ defineCustomElement('sinch-text', class extends NectaryElement {
61
61
  #updateRole() {
62
62
  this.setAttribute('role', getBooleanAttribute(this, 'inline') ? 'text' : 'paragraph');
63
63
  }
64
- });
64
+ }
65
+ defineCustomElement('sinch-text', Text);
@@ -1,5 +1,43 @@
1
+ import { NectaryElement } from '../utils';
1
2
  import type { TSinchTextarea } from './types';
2
3
  import type { NectaryComponentReact, NectaryComponentVanilla } from '../types';
4
+ export declare class Textarea extends NectaryElement {
5
+ #private;
6
+ static formAssociated: boolean;
7
+ constructor();
8
+ connectedCallback(): void;
9
+ disconnectedCallback(): void;
10
+ formAssociatedCallback(): void;
11
+ formResetCallback(): void;
12
+ formStateRestoreCallback(state: string | FormData | null): void;
13
+ static get observedAttributes(): string[];
14
+ attributeChangedCallback(name: string, oldVal: string | null, newVal: string | null): void;
15
+ set name(value: string);
16
+ get name(): string;
17
+ set value(value: string);
18
+ get value(): string;
19
+ set placeholder(value: string | null);
20
+ get placeholder(): string | null;
21
+ set invalid(value: boolean);
22
+ get invalid(): boolean;
23
+ set disabled(isDisabled: boolean);
24
+ get disabled(): boolean;
25
+ set resizable(isResizable: boolean);
26
+ get resizable(): boolean;
27
+ set rows(value: HTMLTextAreaElement['rows']);
28
+ get rows(): HTMLTextAreaElement['rows'];
29
+ set minRows(value: number);
30
+ get minRows(): number;
31
+ get selectionStart(): HTMLTextAreaElement['selectionStart'];
32
+ set selectionStart(value: HTMLTextAreaElement['selectionStart']);
33
+ get selectionEnd(): HTMLTextAreaElement['selectionEnd'];
34
+ set selectionEnd(value: HTMLTextAreaElement['selectionEnd']);
35
+ get selectionDirection(): HTMLTextAreaElement['selectionDirection'];
36
+ set selectionDirection(value: HTMLTextAreaElement['selectionDirection']);
37
+ get focusable(): boolean;
38
+ focus(): void;
39
+ blur(): void;
40
+ }
3
41
  declare global {
4
42
  interface NectaryComponentMap {
5
43
  'sinch-textarea': TSinchTextarea;
package/textarea/index.js CHANGED
@@ -4,7 +4,7 @@ import { DEFAULT_SIZE } from '../utils/size';
4
4
  const templateHTML = '<style>:host{display:block}#wrapper{display:flex;flex-direction:column;position:relative;width:100%;box-sizing:border-box;background-color:var(--sinch-comp-textarea-color-default-background-initial);border-radius:var(--sinch-local-shape-radius);padding-right:2px;overflow:hidden;--sinch-local-shape-radius:var(--sinch-comp-textarea-shape-radius)}#input{all:initial;display:block;font:var(--sinch-comp-textarea-font-input);color:var(--sinch-comp-textarea-color-default-text-initial);resize:none;white-space:pre-wrap;overflow-wrap:break-word;padding:8px 10px 8px 12px;border:none;box-sizing:border-box}#input::placeholder{color:var(--sinch-comp-textarea-color-default-text-placeholder);opacity:1}#input:disabled{color:var(--sinch-comp-textarea-color-disabled-text-initial);-webkit-text-fill-color:var(--sinch-comp-textarea-color-disabled-text-initial)}#border{position:absolute;border:1px solid var(--sinch-comp-textarea-color-default-border-initial);border-radius:var(--sinch-local-shape-radius);inset:0;pointer-events:none}:host([invalid]) #border{border-color:var(--sinch-comp-textarea-color-invalid-border-initial)}#input:focus+#border{border-color:var(--sinch-comp-textarea-color-default-border-focus);border-width:2px}#input:disabled+#border{border-color:var(--sinch-comp-textarea-color-disabled-border-initial)}#bottom{display:flex;flex-direction:row;align-items:center;gap:8px;padding:12px 4px 4px}#bottom.empty{display:none}:host([resizable]) #bottom{padding-right:calc(var(--sinch-comp-textarea-size-resize-handle) + 4px)}#resize-handle{display:none;position:absolute;width:var(--sinch-comp-textarea-size-resize-handle);height:var(--sinch-comp-textarea-size-resize-handle);bottom:0;right:0;cursor:ns-resize}:host([resizable]) #resize-handle{display:block}#resize-icon{display:block;pointer-events:none;fill:var(--sinch-comp-textarea-color-default-border-initial)}</style><div id="wrapper"><textarea id="input"></textarea><div id="border"></div><div id="bottom"><slot name="bottom"></slot><div id="resize-handle"><svg id="resize-icon" width="16" height="16"><path d="m14.833 4.724-9.61 9.61-.942-.944 9.61-9.609.942.943ZM15.443 10 10.5 14.943 9.557 14 14.5 9.057l.943.943Z"/></svg></div></div></div>';
5
5
  const template = document.createElement('template');
6
6
  template.innerHTML = templateHTML;
7
- defineCustomElement('sinch-textarea', class extends NectaryElement {
7
+ export class Textarea extends NectaryElement {
8
8
  #$input;
9
9
  #$bottomSlot;
10
10
  #$bottomWrapper;
@@ -358,4 +358,5 @@ defineCustomElement('sinch-textarea', class extends NectaryElement {
358
358
  #onBlurReactHandler = () => {
359
359
  getReactEventHandler(this, 'on-blur')?.();
360
360
  };
361
- });
361
+ }
362
+ defineCustomElement('sinch-textarea', Textarea);
@@ -1,5 +1,22 @@
1
+ import { NectaryElement } from '../utils';
1
2
  import type { TSinchTileControl } from './types';
2
3
  import type { NectaryComponentVanilla, NectaryComponentReact } from '../types';
4
+ export declare class TileControl extends NectaryElement {
5
+ #private;
6
+ constructor();
7
+ connectedCallback(): void;
8
+ disconnectedCallback(): void;
9
+ static get observedAttributes(): string[];
10
+ attributeChangedCallback(name: string, oldVal: string | null, newVal: string | null): void;
11
+ set value(value: string);
12
+ get value(): string;
13
+ set small(isSmall: boolean);
14
+ get small(): boolean;
15
+ set multiple(isMultiple: boolean);
16
+ get multiple(): boolean;
17
+ set cols(value: number);
18
+ get cols(): number;
19
+ }
3
20
  declare global {
4
21
  interface NectaryComponentMap {
5
22
  'sinch-tile-control': TSinchTileControl;
@@ -2,7 +2,7 @@ import { defineCustomElement, getAttribute, getBooleanAttribute, unpackCsv, getF
2
2
  const templateHTML = '<style>:host{display:block;outline:0;--sinch-grid-num-columns:1}#wrapper{display:grid;grid-template-columns:repeat(var(--sinch-grid-num-columns),auto);gap:16px;width:fit-content}:host([small]) #wrapper{gap:8px}:host([cols="2"]){--sinch-grid-num-columns:2}:host([cols="3"]){--sinch-grid-num-columns:3}:host([cols="4"]){--sinch-grid-num-columns:4}:host([cols="5"]){--sinch-grid-num-columns:5}:host([cols="6"]){--sinch-grid-num-columns:6}:host([cols="7"]){--sinch-grid-num-columns:7}:host([cols="8"]){--sinch-grid-num-columns:8}:host([cols="9"]){--sinch-grid-num-columns:9}:host([cols="10"]){--sinch-grid-num-columns:10}</style><div id="wrapper"><slot></slot></div>';
3
3
  const template = document.createElement('template');
4
4
  template.innerHTML = templateHTML;
5
- defineCustomElement('sinch-tile-control', class extends NectaryElement {
5
+ export class TileControl extends NectaryElement {
6
6
  #$slot;
7
7
  constructor() {
8
8
  super();
@@ -107,4 +107,5 @@ defineCustomElement('sinch-tile-control', class extends NectaryElement {
107
107
  #onChangeReactHandler = e => {
108
108
  getReactEventHandler(this, 'on-change')?.(e);
109
109
  };
110
- });
110
+ }
111
+ defineCustomElement('sinch-tile-control', TileControl);
@@ -1,5 +1,23 @@
1
+ import { NectaryElement } from '../utils';
1
2
  import type { TSinchTileControlOption } from './types';
2
3
  import type { NectaryComponentReact, NectaryComponentVanilla } from '../types';
4
+ export declare class TileControlOption extends NectaryElement {
5
+ #private;
6
+ constructor();
7
+ connectedCallback(): void;
8
+ disconnectedCallback(): void;
9
+ static get observedAttributes(): string[];
10
+ attributeChangedCallback(name: string, oldVal: string | null, newVal: string | null): void;
11
+ set value(value: string);
12
+ get value(): string;
13
+ set disabled(isDisabled: boolean);
14
+ get disabled(): boolean;
15
+ set text(value: string);
16
+ get text(): string;
17
+ get focusable(): boolean;
18
+ focus(): void;
19
+ blur(): void;
20
+ }
3
21
  declare global {
4
22
  interface NectaryComponentMap {
5
23
  'sinch-tile-control-option': TSinchTileControlOption;
@@ -2,7 +2,7 @@ import { defineCustomElement, getAttribute, getBooleanAttribute, getReactEventHa
2
2
  const templateHTML = '<style>:host{display:inline-block;vertical-align:middle;outline:0}button{all:initial;position:relative;display:flex;flex-direction:column;justify-content:space-between;box-sizing:border-box;width:var(--sinch-local-size);height:var(--sinch-local-size);padding:16px 8px 8px;border-radius:var(--sinch-local-shape-radius);background-color:var(--sinch-local-color-background);box-shadow:var(--sinch-local-shadow);cursor:pointer;--sinch-local-color-background:var(--sinch-comp-tile-control-color-default-background-initial);--sinch-local-color-border:var(--sinch-comp-tile-control-color-default-border-initial);--sinch-local-color-text:var(--sinch-comp-tile-control-color-default-text-initial);--sinch-local-color-icon:var(--sinch-comp-tile-control-color-default-icon-initial);--sinch-local-shadow:var(--sinch-comp-tile-control-shadow-initial);--sinch-local-shape-radius:var(--sinch-comp-tile-control-shape-radius-l);--sinch-local-size:88px;--sinch-local-size-icon:var(--sinch-comp-tile-control-size-m-icon)}button::before{content:"";position:absolute;inset:0;border:1px solid var(--sinch-local-color-border);border-radius:var(--sinch-local-shape-radius);pointer-events:none}button:focus-visible::after{position:absolute;content:"";inset:-4px;padding:2px;border:2px solid var(--sinch-comp-tile-control-color-default-outline-focus);border-radius:calc(var(--sinch-local-shape-radius) + 4px);pointer-events:none}:host([data-small])>button{padding:12px 4px 4px;--sinch-local-shape-radius:var(--sinch-comp-tile-control-shape-radius-s);--sinch-local-size:64px;--sinch-local-size-icon:var(--sinch-comp-tile-control-size-s-icon)}button:enabled:hover{--sinch-local-color-background:var(--sinch-comp-tile-control-color-default-background-hover);--sinch-local-color-border:var(--sinch-comp-tile-control-color-default-border-hover);--sinch-local-shadow:var(--sinch-comp-tile-control-shadow-hover)}:host([data-checked])>button:enabled,button:enabled:active{--sinch-local-color-background:var(--sinch-comp-tile-control-color-checked-background-initial);--sinch-local-color-border:var(--sinch-comp-tile-control-color-checked-border-initial);--sinch-local-color-text:var(--sinch-comp-tile-control-color-checked-text-initial);--sinch-local-color-icon:var(--sinch-comp-tile-control-color-checked-icon-initial);--sinch-local-shadow:var(--sinch-comp-tile-control-shadow-active)}:host([data-checked])>button:enabled::before,button:enabled:active::before{border-width:2px}button:disabled{cursor:initial;--sinch-local-color-background:var(--sinch-comp-tile-control-color-disabled-background-initial);--sinch-local-color-border:var(--sinch-comp-tile-control-color-disabled-border-initial);--sinch-local-color-text:var(--sinch-comp-tile-control-color-disabled-text-initial);--sinch-local-color-icon:var(--sinch-comp-tile-control-color-disabled-icon-initial);--sinch-local-shadow:var(--sinch-comp-tile-control-shadow-disabled)}#text{display:inline-block;min-height:20px;text-align:center;font:var(--sinch-comp-tile-control-font-label);color:var(--sinch-local-color-text);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}#icon{width:var(--sinch-local-size-icon);height:var(--sinch-local-size-icon);align-self:center;--sinch-global-size-icon:var(--sinch-local-size-icon);--sinch-global-color-icon:var(--sinch-local-color-icon)}</style><button><div id="icon"><slot name="icon"></slot></div><span id="text"></span></button>';
3
3
  const template = document.createElement('template');
4
4
  template.innerHTML = templateHTML;
5
- defineCustomElement('sinch-tile-control-option', class extends NectaryElement {
5
+ export class TileControlOption extends NectaryElement {
6
6
  #$button;
7
7
  #$text;
8
8
  constructor() {
@@ -95,4 +95,5 @@ defineCustomElement('sinch-tile-control-option', class extends NectaryElement {
95
95
  #onBlurReactHandler = () => {
96
96
  getReactEventHandler(this, 'on-blur')?.();
97
97
  };
98
- });
98
+ }
99
+ defineCustomElement('sinch-tile-control-option', TileControlOption);
@@ -1,8 +1,28 @@
1
1
  import '../icon';
2
2
  import '../segmented-control';
3
3
  import '../segmented-control-option';
4
+ import { NectaryElement } from '../utils';
4
5
  import type { TSinchTimePicker } from './types';
5
- import type { NectaryComponentReact, NectaryComponentVanilla } from '../types';
6
+ import type { NectaryComponentReact, NectaryComponentVanilla, TRect } from '../types';
7
+ export declare class TimePicker extends NectaryElement {
8
+ #private;
9
+ constructor();
10
+ connectedCallback(): void;
11
+ disconnectedCallback(): void;
12
+ static get observedAttributes(): string[];
13
+ attributeChangedCallback(name: string, prevValue: string | null, newVal: string | null): void;
14
+ set value(value: string);
15
+ get value(): string;
16
+ set ampm(value: boolean);
17
+ get ampm(): boolean;
18
+ set submitAriaLabel(value: string);
19
+ get submitAriaLabel(): string;
20
+ get submitButtonRect(): TRect;
21
+ get amButtonRect(): TRect | null;
22
+ get pmButtonRect(): TRect | null;
23
+ hourDigitRect(hour: number): TRect | null;
24
+ minuteDigitRect(minute: number): TRect | null;
25
+ }
6
26
  declare global {
7
27
  interface NectaryComponentMap {
8
28
  'sinch-time-picker': TSinchTimePicker;