@sondor-technology/sondor-components 1.0.1-develop.12 → 1.0.1-develop.14

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 (226) hide show
  1. package/dist/components/alert/alert.constants.d.ts +3 -0
  2. package/dist/components/alert/alert.constants.d.ts.map +1 -0
  3. package/dist/components/alert/alert.constants.js +2 -0
  4. package/dist/components/alert/alert.constants.js.map +1 -0
  5. package/dist/components/alert/alert.d.ts +4 -3
  6. package/dist/components/alert/alert.d.ts.map +1 -1
  7. package/dist/components/alert/alert.js +21 -11
  8. package/dist/components/alert/alert.js.map +1 -0
  9. package/dist/components/badge/badge.constants.d.ts +3 -0
  10. package/dist/components/badge/badge.constants.d.ts.map +1 -0
  11. package/dist/components/badge/badge.constants.js +2 -0
  12. package/dist/components/badge/badge.constants.js.map +1 -0
  13. package/dist/components/badge/badge.d.ts +1 -1
  14. package/dist/components/badge/badge.d.ts.map +1 -1
  15. package/dist/components/badge/badge.js +3 -2
  16. package/dist/components/badge/badge.js.map +1 -0
  17. package/dist/components/breadcrumb/breadcrumb.d.ts.map +1 -1
  18. package/dist/components/breadcrumb/breadcrumb.js +2 -1
  19. package/dist/components/breadcrumb/breadcrumb.js.map +1 -0
  20. package/dist/components/button/button.constants.d.ts +7 -0
  21. package/dist/components/button/button.constants.d.ts.map +1 -0
  22. package/dist/components/button/button.constants.js +4 -0
  23. package/dist/components/button/button.constants.js.map +1 -0
  24. package/dist/components/button/button.d.ts +8 -4
  25. package/dist/components/button/button.d.ts.map +1 -1
  26. package/dist/components/button/button.js +181 -137
  27. package/dist/components/button/button.js.map +1 -0
  28. package/dist/components/button-group/button-group.d.ts +1 -0
  29. package/dist/components/button-group/button-group.d.ts.map +1 -1
  30. package/dist/components/button-group/button-group.js +17 -21
  31. package/dist/components/button-group/button-group.js.map +1 -0
  32. package/dist/components/checkbox/checkbox.constants.d.ts +3 -0
  33. package/dist/components/checkbox/checkbox.constants.d.ts.map +1 -0
  34. package/dist/components/checkbox/checkbox.constants.js +2 -0
  35. package/dist/components/checkbox/checkbox.constants.js.map +1 -0
  36. package/dist/components/checkbox/checkbox.d.ts +5 -1
  37. package/dist/components/checkbox/checkbox.d.ts.map +1 -1
  38. package/dist/components/checkbox/checkbox.js +21 -5
  39. package/dist/components/checkbox/checkbox.js.map +1 -0
  40. package/dist/components/code-block/code-block.d.ts +7 -7
  41. package/dist/components/code-block/code-block.d.ts.map +1 -1
  42. package/dist/components/code-block/code-block.js +130 -66
  43. package/dist/components/code-block/code-block.js.map +1 -0
  44. package/dist/components/content-card/content-card.d.ts.map +1 -1
  45. package/dist/components/content-card/content-card.js +10 -15
  46. package/dist/components/content-card/content-card.js.map +1 -0
  47. package/dist/components/divider/divider.constants.d.ts +5 -0
  48. package/dist/components/divider/divider.constants.d.ts.map +1 -0
  49. package/dist/components/divider/divider.constants.js +3 -0
  50. package/dist/components/divider/divider.constants.js.map +1 -0
  51. package/dist/components/divider/divider.d.ts +4 -2
  52. package/dist/components/divider/divider.d.ts.map +1 -1
  53. package/dist/components/divider/divider.js +18 -9
  54. package/dist/components/divider/divider.js.map +1 -0
  55. package/dist/components/drawer/drawer.d.ts +7 -4
  56. package/dist/components/drawer/drawer.d.ts.map +1 -1
  57. package/dist/components/drawer/drawer.js +73 -30
  58. package/dist/components/drawer/drawer.js.map +1 -0
  59. package/dist/components/field/field.d.ts +2 -2
  60. package/dist/components/field/field.d.ts.map +1 -1
  61. package/dist/components/field/field.js +8 -9
  62. package/dist/components/field/field.js.map +1 -0
  63. package/dist/components/footer/footer.d.ts +8 -1
  64. package/dist/components/footer/footer.d.ts.map +1 -1
  65. package/dist/components/footer/footer.js +42 -12
  66. package/dist/components/footer/footer.js.map +1 -0
  67. package/dist/components/form/form-step.js +1 -0
  68. package/dist/components/form/form-step.js.map +1 -0
  69. package/dist/components/form/form.d.ts +3 -0
  70. package/dist/components/form/form.d.ts.map +1 -1
  71. package/dist/components/form/form.js +109 -69
  72. package/dist/components/form/form.js.map +1 -0
  73. package/dist/components/grid/grid-row.d.ts +3 -3
  74. package/dist/components/grid/grid-row.d.ts.map +1 -1
  75. package/dist/components/grid/grid-row.js +36 -22
  76. package/dist/components/grid/grid-row.js.map +1 -0
  77. package/dist/components/grid/grid.d.ts +2 -2
  78. package/dist/components/grid/grid.d.ts.map +1 -1
  79. package/dist/components/grid/grid.js +5 -2
  80. package/dist/components/grid/grid.js.map +1 -0
  81. package/dist/components/icon/icon-paths.d.ts +161 -86
  82. package/dist/components/icon/icon-paths.d.ts.map +1 -1
  83. package/dist/components/icon/icon-paths.js +176 -106
  84. package/dist/components/icon/icon-paths.js.map +1 -0
  85. package/dist/components/icon/icon.d.ts +1 -1
  86. package/dist/components/icon/icon.d.ts.map +1 -1
  87. package/dist/components/icon/icon.js +6 -5
  88. package/dist/components/icon/icon.js.map +1 -0
  89. package/dist/components/input/input.d.ts +9 -0
  90. package/dist/components/input/input.d.ts.map +1 -1
  91. package/dist/components/input/input.js +30 -37
  92. package/dist/components/input/input.js.map +1 -0
  93. package/dist/components/link/link.d.ts +6 -6
  94. package/dist/components/link/link.d.ts.map +1 -1
  95. package/dist/components/link/link.js +42 -19
  96. package/dist/components/link/link.js.map +1 -0
  97. package/dist/components/metadata/metadata.d.ts +3 -3
  98. package/dist/components/metadata/metadata.d.ts.map +1 -1
  99. package/dist/components/metadata/metadata.js +23 -20
  100. package/dist/components/metadata/metadata.js.map +1 -0
  101. package/dist/components/modal/modal.d.ts +4 -16
  102. package/dist/components/modal/modal.d.ts.map +1 -1
  103. package/dist/components/modal/modal.js +99 -62
  104. package/dist/components/modal/modal.js.map +1 -0
  105. package/dist/components/page-layout/page-layout.d.ts +4 -3
  106. package/dist/components/page-layout/page-layout.d.ts.map +1 -1
  107. package/dist/components/page-layout/page-layout.js +95 -68
  108. package/dist/components/page-layout/page-layout.js.map +1 -0
  109. package/dist/components/radio/radio.d.ts +8 -0
  110. package/dist/components/radio/radio.d.ts.map +1 -1
  111. package/dist/components/radio/radio.js +8 -12
  112. package/dist/components/radio/radio.js.map +1 -0
  113. package/dist/components/radio-group/radio-group.d.ts +6 -1
  114. package/dist/components/radio-group/radio-group.d.ts.map +1 -1
  115. package/dist/components/radio-group/radio-group.js +44 -18
  116. package/dist/components/radio-group/radio-group.js.map +1 -0
  117. package/dist/components/router/router.d.ts +5 -7
  118. package/dist/components/router/router.d.ts.map +1 -1
  119. package/dist/components/router/router.js +54 -38
  120. package/dist/components/router/router.js.map +1 -0
  121. package/dist/components/select/select.d.ts +6 -3
  122. package/dist/components/select/select.d.ts.map +1 -1
  123. package/dist/components/select/select.js +14 -5
  124. package/dist/components/select/select.js.map +1 -0
  125. package/dist/components/skeleton/skeleton.d.ts +3 -2
  126. package/dist/components/skeleton/skeleton.d.ts.map +1 -1
  127. package/dist/components/skeleton/skeleton.js +10 -13
  128. package/dist/components/skeleton/skeleton.js.map +1 -0
  129. package/dist/components/switch/switch.d.ts +12 -0
  130. package/dist/components/switch/switch.d.ts.map +1 -1
  131. package/dist/components/switch/switch.js +28 -22
  132. package/dist/components/switch/switch.js.map +1 -0
  133. package/dist/components/table/data-table.d.ts +3 -25
  134. package/dist/components/table/data-table.d.ts.map +1 -1
  135. package/dist/components/table/data-table.js +211 -146
  136. package/dist/components/table/data-table.js.map +1 -0
  137. package/dist/components/table/table.d.ts +3 -3
  138. package/dist/components/table/table.d.ts.map +1 -1
  139. package/dist/components/table/table.js +39 -20
  140. package/dist/components/table/table.js.map +1 -0
  141. package/dist/components/tabs/tab-panel.d.ts +3 -1
  142. package/dist/components/tabs/tab-panel.d.ts.map +1 -1
  143. package/dist/components/tabs/tab-panel.js +21 -11
  144. package/dist/components/tabs/tab-panel.js.map +1 -0
  145. package/dist/components/tabs/tab.d.ts +5 -1
  146. package/dist/components/tabs/tab.d.ts.map +1 -1
  147. package/dist/components/tabs/tab.js +46 -28
  148. package/dist/components/tabs/tab.js.map +1 -0
  149. package/dist/components/tabs/tabs.d.ts +4 -0
  150. package/dist/components/tabs/tabs.d.ts.map +1 -1
  151. package/dist/components/tabs/tabs.js +76 -13
  152. package/dist/components/tabs/tabs.js.map +1 -0
  153. package/dist/components/textarea/textarea.d.ts +13 -0
  154. package/dist/components/textarea/textarea.d.ts.map +1 -1
  155. package/dist/components/textarea/textarea.js +59 -13
  156. package/dist/components/textarea/textarea.js.map +1 -0
  157. package/dist/components/theme-toggle/theme-toggle.constants.d.ts +3 -0
  158. package/dist/components/theme-toggle/theme-toggle.constants.d.ts.map +1 -0
  159. package/dist/components/theme-toggle/theme-toggle.constants.js +2 -0
  160. package/dist/components/theme-toggle/theme-toggle.constants.js.map +1 -0
  161. package/dist/components/theme-toggle/theme-toggle.d.ts +3 -2
  162. package/dist/components/theme-toggle/theme-toggle.d.ts.map +1 -1
  163. package/dist/components/theme-toggle/theme-toggle.js +46 -19
  164. package/dist/components/theme-toggle/theme-toggle.js.map +1 -0
  165. package/dist/components/vertical-nav/vertical-nav-group.d.ts +5 -2
  166. package/dist/components/vertical-nav/vertical-nav-group.d.ts.map +1 -1
  167. package/dist/components/vertical-nav/vertical-nav-group.js +50 -14
  168. package/dist/components/vertical-nav/vertical-nav-group.js.map +1 -0
  169. package/dist/components/vertical-nav/vertical-nav-item.d.ts +3 -2
  170. package/dist/components/vertical-nav/vertical-nav-item.d.ts.map +1 -1
  171. package/dist/components/vertical-nav/vertical-nav-item.js +30 -8
  172. package/dist/components/vertical-nav/vertical-nav-item.js.map +1 -0
  173. package/dist/styles/index.css +48 -17
  174. package/dist/styles/reset.js +1 -0
  175. package/dist/styles/reset.js.map +1 -0
  176. package/package.json +2 -1
  177. package/src/components/alert/alert.constants.ts +2 -0
  178. package/src/components/alert/alert.ts +24 -15
  179. package/src/components/badge/badge.constants.ts +2 -0
  180. package/src/components/badge/badge.ts +3 -4
  181. package/src/components/breadcrumb/breadcrumb.ts +2 -2
  182. package/src/components/button/button.constants.ts +8 -0
  183. package/src/components/button/button.ts +184 -144
  184. package/src/components/button-group/button-group.ts +18 -22
  185. package/src/components/checkbox/checkbox.constants.ts +2 -0
  186. package/src/components/checkbox/checkbox.ts +33 -18
  187. package/src/components/code-block/code-block.ts +151 -84
  188. package/src/components/content-card/content-card.ts +10 -16
  189. package/src/components/divider/divider.constants.ts +5 -0
  190. package/src/components/divider/divider.ts +22 -11
  191. package/src/components/drawer/drawer.ts +79 -34
  192. package/src/components/field/field.ts +9 -11
  193. package/src/components/footer/footer.ts +43 -12
  194. package/src/components/form/form.ts +121 -84
  195. package/src/components/grid/grid-row.ts +45 -32
  196. package/src/components/grid/grid.ts +7 -4
  197. package/src/components/icon/icon-paths.ts +175 -106
  198. package/src/components/icon/icon.ts +6 -6
  199. package/src/components/input/input.ts +32 -42
  200. package/src/components/link/link.ts +45 -21
  201. package/src/components/metadata/metadata.ts +26 -24
  202. package/src/components/modal/modal.ts +108 -74
  203. package/src/components/page-layout/page-layout.ts +97 -72
  204. package/src/components/radio/radio.ts +8 -13
  205. package/src/components/radio-group/radio-group.ts +45 -21
  206. package/src/components/router/router.ts +73 -50
  207. package/src/components/select/select.ts +23 -18
  208. package/src/components/skeleton/skeleton.ts +14 -14
  209. package/src/components/switch/switch.ts +31 -25
  210. package/src/components/table/data-table.ts +248 -177
  211. package/src/components/table/table.ts +52 -29
  212. package/src/components/tabs/tab-panel.ts +25 -13
  213. package/src/components/tabs/tab.ts +58 -33
  214. package/src/components/tabs/tabs.ts +77 -15
  215. package/src/components/textarea/textarea.ts +63 -15
  216. package/src/components/theme-toggle/theme-toggle.constants.ts +2 -0
  217. package/src/components/theme-toggle/theme-toggle.ts +47 -22
  218. package/src/components/vertical-nav/vertical-nav-group.ts +57 -18
  219. package/src/components/vertical-nav/vertical-nav-item.ts +35 -12
  220. package/src/styles/globals.css +27 -4
  221. package/src/styles/theme.css +38 -32
  222. package/tsconfig.json +2 -1
  223. package/dist/components/card/card.d.ts +0 -11
  224. package/dist/components/card/card.d.ts.map +0 -1
  225. package/dist/components/card/card.js +0 -54
  226. package/src/components/card/card.ts +0 -53
@@ -1,10 +1,10 @@
1
- import { LitElement } from 'lit';
2
- import 'prismjs/components/prism-typescript.js';
3
- import 'prismjs/components/prism-javascript.js';
4
- import 'prismjs/components/prism-css.js';
5
- import 'prismjs/components/prism-json.js';
6
- import 'prismjs/components/prism-bash.js';
7
- import 'prismjs/components/prism-csharp.js';
1
+ import { LitElement } from "lit";
2
+ import "prismjs/components/prism-typescript.js";
3
+ import "prismjs/components/prism-javascript.js";
4
+ import "prismjs/components/prism-css.js";
5
+ import "prismjs/components/prism-json.js";
6
+ import "prismjs/components/prism-bash.js";
7
+ import "prismjs/components/prism-csharp.js";
8
8
  export declare class StCodeBlock extends LitElement {
9
9
  language: string;
10
10
  private _snippets;
@@ -1 +1 @@
1
- {"version":3,"file":"code-block.d.ts","sourceRoot":"","sources":["../../../src/components/code-block/code-block.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAa,MAAM,KAAK,CAAC;AAM5C,OAAO,wCAAwC,CAAC;AAChD,OAAO,wCAAwC,CAAC;AAChD,OAAO,iCAAiC,CAAC;AACzC,OAAO,kCAAkC,CAAC;AAC1C,OAAO,kCAAkC,CAAC;AAC1C,OAAO,oCAAoC,CAAC;AAS5C,qBACa,WAAY,SAAQ,UAAU;IAEb,QAAQ,SAAgB;IAE3C,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,OAAO,CAAS;IAEN,OAAO,CAAC,KAAK,CAAmB;IAE3D,MAAM,CAAC,MAAM,4BAyHX;IAEF,OAAO,CAAC,iBAAiB;IAkCzB,OAAO,CAAC,OAAO;YAaD,gBAAgB;IAc9B,MAAM,yCAwCL;CACF;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,eAAe,EAAE,WAAW,CAAC;KAC9B;CACF"}
1
+ {"version":3,"file":"code-block.d.ts","sourceRoot":"","sources":["../../../src/components/code-block/code-block.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAY,MAAM,KAAK,CAAC;AAM1C,OAAO,wCAAwC,CAAC;AAChD,OAAO,wCAAwC,CAAC;AAChD,OAAO,iCAAiC,CAAC;AACzC,OAAO,kCAAkC,CAAC;AAC1C,OAAO,kCAAkC,CAAC;AAC1C,OAAO,oCAAoC,CAAC;AAS5C,qBACa,WAAY,SAAQ,UAAU;IAEf,QAAQ,SAAgB;IAEzC,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,OAAO,CAAS;IAEN,OAAO,CAAC,KAAK,CAAmB;IAE3D,MAAM,CAAC,MAAM,4BA8KX;IAEF,OAAO,CAAC,iBAAiB;IAoCzB,OAAO,CAAC,OAAO;YAgBD,gBAAgB;IAgB9B,MAAM,yCA+CL;CACF;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,eAAe,EAAE,WAAW,CAAC;KAC9B;CACF"}
@@ -4,22 +4,22 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
4
4
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
- import { LitElement, html, css } from 'lit';
8
- import { customElement, property, state, query } from 'lit/decorators.js';
9
- import { unsafeHTML } from 'lit/directives/unsafe-html.js';
10
- import { resetStyles } from '../../styles/reset.js';
11
- import Prism from 'prismjs';
12
- import 'prismjs/components/prism-typescript.js';
13
- import 'prismjs/components/prism-javascript.js';
14
- import 'prismjs/components/prism-css.js';
15
- import 'prismjs/components/prism-json.js';
16
- import 'prismjs/components/prism-bash.js';
17
- import 'prismjs/components/prism-csharp.js';
7
+ import { LitElement, html, css } from "lit";
8
+ import { customElement, property, state, query } from "lit/decorators.js";
9
+ import { unsafeHTML } from "lit/directives/unsafe-html.js";
10
+ import { resetStyles } from "../../styles/reset.js";
11
+ import Prism from "prismjs";
12
+ import "prismjs/components/prism-typescript.js";
13
+ import "prismjs/components/prism-javascript.js";
14
+ import "prismjs/components/prism-css.js";
15
+ import "prismjs/components/prism-json.js";
16
+ import "prismjs/components/prism-bash.js";
17
+ import "prismjs/components/prism-csharp.js";
18
18
  let StCodeBlock = class StCodeBlock extends LitElement {
19
19
  constructor() {
20
20
  super(...arguments);
21
21
  // Fallback language if a template doesn't provide one
22
- this.language = 'typescript';
22
+ this.language = "typescript";
23
23
  this._snippets = [];
24
24
  this._activeIndex = 0;
25
25
  this._copied = false;
@@ -27,12 +27,12 @@ let StCodeBlock = class StCodeBlock extends LitElement {
27
27
  _handleSlotChange() {
28
28
  const nodes = this._slot.assignedNodes({ flatten: true });
29
29
  // Find ALL template tags passed into the slot
30
- const templates = nodes.filter(n => n instanceof HTMLTemplateElement);
30
+ const templates = nodes.filter((n) => n instanceof HTMLTemplateElement);
31
31
  if (templates.length > 0) {
32
32
  // Map over every template and parse its code and attributes
33
- this._snippets = templates.map(template => {
34
- const lang = template.getAttribute('data-lang') || this.language;
35
- const label = template.getAttribute('data-label') || lang; // Fallback to lang if no label provided
33
+ this._snippets = templates.map((template) => {
34
+ const lang = template.getAttribute("data-lang") || this.language;
35
+ const label = template.getAttribute("data-label") || lang; // Fallback to lang if no label provided
36
36
  const rawCode = this._dedent(template.innerHTML);
37
37
  const grammar = Prism.languages[lang] || Prism.languages.javascript;
38
38
  const highlightedCode = Prism.highlight(rawCode, grammar, lang);
@@ -41,7 +41,7 @@ let StCodeBlock = class StCodeBlock extends LitElement {
41
41
  }
42
42
  else {
43
43
  // Fallback: If no template is used, process raw text just like before
44
- const rawText = nodes.map(n => n.textContent).join('');
44
+ const rawText = nodes.map((n) => n.textContent).join("");
45
45
  const rawCode = this._dedent(rawText);
46
46
  if (rawCode) {
47
47
  const grammar = Prism.languages[this.language] || Prism.languages.javascript;
@@ -53,16 +53,19 @@ let StCodeBlock = class StCodeBlock extends LitElement {
53
53
  this._activeIndex = 0;
54
54
  }
55
55
  _dedent(text) {
56
- const lines = text.split('\n');
56
+ const lines = text.split("\n");
57
57
  const minIndent = lines
58
- .filter(line => line.trim().length > 0)
58
+ .filter((line) => line.trim().length > 0)
59
59
  .reduce((min, line) => {
60
60
  const indent = line.match(/^\s*/)?.[0].length || 0;
61
61
  return Math.min(min, indent);
62
62
  }, Infinity);
63
63
  if (minIndent === Infinity || minIndent === 0)
64
64
  return text.trim();
65
- return lines.map(line => line.slice(minIndent)).join('\n').trim();
65
+ return lines
66
+ .map((line) => line.slice(minIndent))
67
+ .join("\n")
68
+ .trim();
66
69
  }
67
70
  async _copyToClipboard() {
68
71
  // Copy the code from the currently active tab
@@ -72,10 +75,12 @@ let StCodeBlock = class StCodeBlock extends LitElement {
72
75
  try {
73
76
  await navigator.clipboard.writeText(activeSnippet.rawCode);
74
77
  this._copied = true;
75
- setTimeout(() => { this._copied = false; }, 2000);
78
+ setTimeout(() => {
79
+ this._copied = false;
80
+ }, 2000);
76
81
  }
77
82
  catch (err) {
78
- console.error('Failed to copy text: ', err);
83
+ console.error("Failed to copy text: ", err);
79
84
  }
80
85
  }
81
86
  render() {
@@ -86,31 +91,36 @@ let StCodeBlock = class StCodeBlock extends LitElement {
86
91
  ? html `
87
92
  <div class="tabs">
88
93
  ${this._snippets.map((snippet, index) => html `
89
- <button
90
- class="tab ${index === this._activeIndex ? 'active' : ''}"
91
- @click=${() => this._activeIndex = index}
92
- >
93
- ${snippet.label}
94
- </button>
95
- `)}
94
+ <button
95
+ class="tab ${index === this._activeIndex ? "active" : ""}"
96
+ @click=${() => (this._activeIndex = index)}
97
+ >
98
+ ${snippet.label}
99
+ </button>
100
+ `)}
96
101
  </div>
97
102
  `
98
- : html `
99
- <span class="language-label">${activeSnippet?.label || this.language}</span>
100
- `}
101
-
102
- <button class="copy-button ${this._copied ? 'copied' : ''}" @click=${this._copyToClipboard}>
103
+ : html ` <span class="language-label">${activeSnippet?.label || this.language}</span> `}
104
+
105
+ <button class="copy-button ${this._copied ? "copied" : ""}" @click=${this._copyToClipboard}>
103
106
  ${this._copied
104
- ? html `<svg viewBox="0 0 24 24"><polyline points="20 6 9 17 4 12"></polyline></svg> Copied!`
105
- : html `<svg viewBox="0 0 24 24"><rect x="9" y="9" width="13" height="13" rx="2" ry="2"></rect><path d="M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"></path></svg> Copy`}
107
+ ? html `<svg viewBox="0 0 24 24"><polyline points="20 6 9 17 4 12"></polyline></svg>
108
+ Copied!`
109
+ : html `<svg viewBox="0 0 24 24">
110
+ <rect x="9" y="9" width="13" height="13" rx="2" ry="2"></rect>
111
+ <path d="M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"></path>
112
+ </svg>
113
+ Copy`}
106
114
  </button>
107
115
  </div>
108
-
116
+
109
117
  <!-- Render the currently active snippet -->
110
- ${activeSnippet ? html `
111
- <pre><code class="language-${activeSnippet.lang}">${unsafeHTML(activeSnippet.highlightedCode)}</code></pre>
112
- ` : ''}
113
-
118
+ ${activeSnippet
119
+ ? html `
120
+ <pre><code class="language-${activeSnippet.lang}">${unsafeHTML(activeSnippet.highlightedCode)}</code></pre>
121
+ `
122
+ : ""}
123
+
114
124
  <div class="raw-content">
115
125
  <slot name="raw" @slotchange=${this._handleSlotChange}></slot>
116
126
  </div>
@@ -124,7 +134,8 @@ StCodeBlock.styles = [
124
134
  display: block;
125
135
  margin: var(--st-spacing-md) 0;
126
136
  border-radius: 8px;
127
- background-color: var(--st-color-surface);
137
+ /* 1. Lock background to a deep dark surface */
138
+ background-color: #161b22;
128
139
  border: 1px solid var(--st-color-border);
129
140
  overflow: hidden;
130
141
  }
@@ -133,8 +144,9 @@ StCodeBlock.styles = [
133
144
  display: flex;
134
145
  justify-content: space-between;
135
146
  align-items: center;
136
- background-color: rgba(0, 0, 0, 0.2);
137
- border-bottom: 1px solid var(--st-color-border);
147
+ /* 2. Lock header to a slightly darker shade */
148
+ background-color: #0d1117;
149
+ border-bottom: 1px solid #30363d;
138
150
  padding: 0 var(--st-spacing-md);
139
151
  min-height: 2.5rem; /* 40px */
140
152
  }
@@ -142,7 +154,7 @@ StCodeBlock.styles = [
142
154
  /* Single language label */
143
155
  .language-label {
144
156
  font-size: var(--st-font-size-xs);
145
- color: var(--st-color-text-muted);
157
+ color: #8b949e;
146
158
  text-transform: uppercase;
147
159
  letter-spacing: 0.05em;
148
160
  font-weight: var(--st-font-weight-bold);
@@ -159,7 +171,7 @@ StCodeBlock.styles = [
159
171
  background: transparent;
160
172
  border: none;
161
173
  border-bottom: 2px solid transparent;
162
- color: var(--st-color-text-muted);
174
+ color: #8b949e;
163
175
  font-size: var(--st-font-size-xs);
164
176
  font-weight: var(--st-font-weight-medium);
165
177
  padding: var(--st-spacing-xs) 0;
@@ -168,19 +180,20 @@ StCodeBlock.styles = [
168
180
  }
169
181
 
170
182
  .tab:hover {
171
- color: var(--st-color-text);
183
+ color: #c9d1d9;
172
184
  }
173
185
 
174
186
  .tab.active {
175
- color: var(--st-color-primary);
176
- border-bottom-color: var(--st-color-primary);
187
+ /* 3. Hardcode the active tab to a high-contrast blue instead of dynamic primary */
188
+ color: #79c0ff;
189
+ border-bottom-color: #79c0ff;
177
190
  }
178
191
 
179
192
  /* Copy Button */
180
193
  .copy-button {
181
194
  background: transparent;
182
195
  border: 1px solid transparent;
183
- color: var(--st-color-text-muted);
196
+ color: #8b949e;
184
197
  cursor: pointer;
185
198
  display: flex;
186
199
  align-items: center;
@@ -193,8 +206,8 @@ StCodeBlock.styles = [
193
206
  }
194
207
 
195
208
  .copy-button:hover {
196
- color: var(--st-color-text);
197
- background-color: rgba(255, 255, 255, 0.05);
209
+ color: #c9d1d9;
210
+ background-color: rgba(255, 255, 255, 0.1);
198
211
  }
199
212
 
200
213
  .copy-button svg {
@@ -208,17 +221,20 @@ StCodeBlock.styles = [
208
221
  }
209
222
 
210
223
  .copy-button.copied {
211
- color: var(--st-color-success);
224
+ color: #3fb950; /* High-contrast success green */
212
225
  }
213
226
 
214
227
  pre {
215
228
  margin: 0;
216
229
  padding: var(--st-spacing-md);
217
230
  overflow-x: auto;
218
- font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
231
+ font-family:
232
+ ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New",
233
+ monospace;
219
234
  font-size: 0.875rem;
220
235
  line-height: 1.5;
221
- color: var(--st-color-text);
236
+ /* 4. Ensure default text stays light */
237
+ color: #c9d1d9;
222
238
  }
223
239
 
224
240
  .raw-content {
@@ -228,16 +244,63 @@ StCodeBlock.styles = [
228
244
  /* ==========================================================
229
245
  Prism.js Theme Mapping (Space Grey / Purple Aesthetic)
230
246
  ========================================================== */
231
- .token.comment, .token.prolog, .token.doctype, .token.cdata { color: var(--st-color-text-muted); font-style: italic; }
232
- .token.punctuation { color: #8b949e; }
233
- .token.namespace { opacity: .7; }
234
- .token.property, .token.tag, .token.boolean, .token.number, .token.constant, .token.symbol, .token.deleted { color: #79c0ff; }
235
- .token.selector, .token.attr-name, .token.string, .token.char, .token.builtin, .token.inserted { color: #a5d6ff; }
236
- .token.operator, .token.entity, .token.url, .language-css .token.string, .style .token.string { color: var(--st-color-text); }
237
- .token.atrule, .token.attr-value, .token.keyword { color: var(--st-color-primary); }
238
- .token.function, .token.class-name { color: #d2a8ff; }
239
- .token.regex, .token.important, .token.variable { color: #ffa657; }
240
- `
247
+ .token.comment,
248
+ .token.prolog,
249
+ .token.doctype,
250
+ .token.cdata {
251
+ color: #8b949e;
252
+ font-style: italic;
253
+ }
254
+ .token.punctuation {
255
+ color: #8b949e;
256
+ }
257
+ .token.namespace {
258
+ opacity: 0.7;
259
+ }
260
+ .token.property,
261
+ .token.tag,
262
+ .token.boolean,
263
+ .token.number,
264
+ .token.constant,
265
+ .token.symbol,
266
+ .token.deleted {
267
+ color: #79c0ff;
268
+ }
269
+ .token.selector,
270
+ .token.attr-name,
271
+ .token.string,
272
+ .token.char,
273
+ .token.builtin,
274
+ .token.inserted {
275
+ color: #a5d6ff;
276
+ }
277
+
278
+ /* Replaced var(--st-color-text) with #c9d1d9 */
279
+ .token.operator,
280
+ .token.entity,
281
+ .token.url,
282
+ .language-css .token.string,
283
+ .style .token.string {
284
+ color: #c9d1d9;
285
+ }
286
+
287
+ /* Replaced var(--st-color-primary) with #ff7b72 (High-contrast pink/red for keywords) */
288
+ .token.atrule,
289
+ .token.attr-value,
290
+ .token.keyword {
291
+ color: #ff7b72;
292
+ }
293
+
294
+ .token.function,
295
+ .token.class-name {
296
+ color: #d2a8ff;
297
+ }
298
+ .token.regex,
299
+ .token.important,
300
+ .token.variable {
301
+ color: #ffa657;
302
+ }
303
+ `,
241
304
  ];
242
305
  __decorate([
243
306
  property({ type: String })
@@ -255,6 +318,7 @@ __decorate([
255
318
  query('slot[name="raw"]')
256
319
  ], StCodeBlock.prototype, "_slot", void 0);
257
320
  StCodeBlock = __decorate([
258
- customElement('st-code-block')
321
+ customElement("st-code-block")
259
322
  ], StCodeBlock);
260
323
  export { StCodeBlock };
324
+ //# sourceMappingURL=code-block.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"code-block.js","sourceRoot":"","sources":["../../../src/components/code-block/code-block.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"content-card.d.ts","sourceRoot":"","sources":["../../../src/components/content-card/content-card.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAa,MAAM,KAAK,CAAC;AAI5C,qBACa,aAAc,SAAQ,UAAU;IAEf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,QAAQ,GAAG,OAAO,CAAW;IAEjE,MAAM,CAAC,MAAM,4BA8FX;IAEF,MAAM,yCAoBL;CACF;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,iBAAiB,EAAE,aAAa,CAAC;KAClC;CACF"}
1
+ {"version":3,"file":"content-card.d.ts","sourceRoot":"","sources":["../../../src/components/content-card/content-card.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAa,MAAM,KAAK,CAAC;AAK5C,qBACa,aAAc,SAAQ,UAAU;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,QAAQ,GAAG,OAAO,CAAW;IAEjE,MAAM,CAAC,MAAM,4BAuFX;IAEF,MAAM,yCAqBL;CACF;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,iBAAiB,EAAE,aAAa,CAAC;KAClC;CACF"}
@@ -6,6 +6,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  };
7
7
  import { LitElement, html, css } from 'lit';
8
8
  import { customElement, property } from 'lit/decorators.js';
9
+ import { ifDefined } from 'lit/directives/if-defined.js';
9
10
  import { resetStyles } from '../../styles/reset.js';
10
11
  let StContentCard = class StContentCard extends LitElement {
11
12
  constructor() {
@@ -13,7 +14,6 @@ let StContentCard = class StContentCard extends LitElement {
13
14
  this.target = '_self';
14
15
  }
15
16
  render() {
16
- // 1. Define the inner content once to avoid duplication
17
17
  const innerContent = html `
18
18
  <div class="media">
19
19
  <slot name="media"></slot>
@@ -27,9 +27,10 @@ let StContentCard = class StContentCard extends LitElement {
27
27
  </div>
28
28
  </div>
29
29
  `;
30
- // 2. Conditionally wrap it in an anchor or a div
30
+ // 🚀 THE FIX: Conditionally apply security rel if opening in a new tab
31
+ const secureRel = this.target === '_blank' ? 'noopener noreferrer' : undefined;
31
32
  return this.href
32
- ? html `<a href="${this.href}" target="${this.target}" class="card">${innerContent}</a>`
33
+ ? html `<a href="${this.href}" target="${this.target}" rel="${ifDefined(secureRel)}" class="card">${innerContent}</a>`
33
34
  : html `<div class="card">${innerContent}</div>`;
34
35
  }
35
36
  };
@@ -38,7 +39,6 @@ StContentCard.styles = [
38
39
  css `
39
40
  :host {
40
41
  display: block;
41
- /* Ensures cards stretch to equal heights if placed in a flex/grid container */
42
42
  height: 100%;
43
43
  }
44
44
 
@@ -52,8 +52,6 @@ StContentCard.styles = [
52
52
  overflow: hidden;
53
53
  text-decoration: none;
54
54
  color: inherit;
55
-
56
- /* Smooth transitions for the hover effects */
57
55
  transition: border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
58
56
  }
59
57
 
@@ -69,13 +67,11 @@ StContentCard.styles = [
69
67
  outline: none;
70
68
  border-color: var(--st-color-primary);
71
69
  transform: translateY(-2px);
72
- /* Subtle shadow to lift the card off the background */
73
- box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
74
- }
75
-
76
- /* Dark mode specific shadow adjustment */
77
- :host-context([data-theme="dark"]) a.card:hover {
78
- box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4);
70
+ /*
71
+ Safari fix: WebKit ignores :host-context.
72
+ Set --st-card-shadow-hover in your global dark mode CSS instead!
73
+ */
74
+ box-shadow: var(--st-card-shadow-hover, 0 4px 12px rgba(0, 0, 0, 0.05));
79
75
  }
80
76
 
81
77
  /* ==========================================================
@@ -91,14 +87,12 @@ StContentCard.styles = [
91
87
  overflow: hidden;
92
88
  }
93
89
 
94
- /* Image formatting */
95
90
  ::slotted(img[slot="media"]) {
96
91
  width: 100%;
97
92
  height: 100%;
98
93
  object-fit: cover;
99
94
  }
100
95
 
101
- /* SVG formatting (for the icons we just created) */
102
96
  ::slotted(svg[slot="media"]) {
103
97
  width: 3rem;
104
98
  height: 3rem;
@@ -138,3 +132,4 @@ StContentCard = __decorate([
138
132
  customElement('st-content-card')
139
133
  ], StContentCard);
140
134
  export { StContentCard };
135
+ //# sourceMappingURL=content-card.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"content-card.js","sourceRoot":"","sources":["../../../src/components/content-card/content-card.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAG7C,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,UAAU;IAAtC;;QAEuB,WAAM,GAAuB,OAAO,CAAC;IAiHnE,CAAC;IAtBC,MAAM;QACJ,MAAM,YAAY,GAAG,IAAI,CAAA;;;;;;;;;;;;KAYxB,CAAC;QAEF,uEAAuE;QACvE,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,SAAS,CAAC;QAE/E,OAAO,IAAI,CAAC,IAAI;YACd,CAAC,CAAC,IAAI,CAAA,YAAY,IAAI,CAAC,IAAI,aAAa,IAAI,CAAC,MAAM,UAAU,SAAS,CAAC,SAAS,CAAC,kBAAkB,YAAY,MAAM;YACrH,CAAC,CAAC,IAAI,CAAA,qBAAqB,YAAY,QAAQ,CAAC;IACpD,CAAC;CACF,CAAA;AA/GQ,oBAAM,GAAG;IACd,WAAW;IACX,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAoFF;CACF,AAvFY,CAuFX;AA1F0B;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;2CAAe;AACd;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;6CAAsC;AAFtD,aAAa;IADzB,aAAa,CAAC,iBAAiB,CAAC;GACpB,aAAa,CAmHzB"}
@@ -0,0 +1,5 @@
1
+ export declare const dividerDirections: readonly ['horizontal', 'vertical'];
2
+ export type DividerDirection = typeof dividerDirections[number];
3
+ export declare const dividerColors: readonly ['default', 'primary', 'border'];
4
+ export type DividerColor = typeof dividerColors[number];
5
+ //# sourceMappingURL=divider.constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"divider.constants.d.ts","sourceRoot":"","sources":["../../../src/components/divider/divider.constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iBAAiB,YAAI,YAAY,EAAE,UAAU,CAAU,CAAC;AACrE,MAAM,MAAM,gBAAgB,GAAG,OAAO,iBAAiB,CAAC,MAAM,CAAC,CAAC;AAEhE,eAAO,MAAM,aAAa,YAAI,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAU,CAAC;AACvE,MAAM,MAAM,YAAY,GAAG,OAAO,aAAa,CAAC,MAAM,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ export const dividerDirections = ['horizontal', 'vertical'];
2
+ export const dividerColors = ['default', 'primary', 'border'];
3
+ //# sourceMappingURL=divider.constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"divider.constants.js","sourceRoot":"","sources":["../../../src/components/divider/divider.constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,YAAY,EAAE,UAAU,CAAU,CAAC;AAGrE,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAU,CAAC"}
@@ -1,10 +1,12 @@
1
1
  import { LitElement } from 'lit';
2
+ import { DividerColor, DividerDirection } from './divider.constants.js';
2
3
  export declare class StDivider extends LitElement {
3
- direction: 'horizontal' | 'vertical';
4
+ direction: DividerDirection;
4
5
  thickness: string;
5
6
  margin: string;
6
- color: 'default' | 'primary' | 'border';
7
+ color: DividerColor;
7
8
  static styles: import("lit").CSSResult[];
9
+ connectedCallback(): void;
8
10
  updated(changedProperties: Map<string, any>): void;
9
11
  render(): import("lit-html").TemplateResult<1>;
10
12
  }
@@ -1 +1 @@
1
- {"version":3,"file":"divider.d.ts","sourceRoot":"","sources":["../../../src/components/divider/divider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAa,MAAM,KAAK,CAAC;AAI5C,qBACa,SAAU,SAAQ,UAAU;IACI,SAAS,EAAE,YAAY,GAAG,UAAU,CAAgB;IACnE,SAAS,SAAS;IAClB,MAAM,SAAO;IACE,KAAK,EAAE,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAY;IAE9F,MAAM,CAAC,MAAM,4BAgCX;IAEF,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,QAM1C;IAED,MAAM,yCAQL;CACF;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,YAAY,EAAE,SAAS,CAAC;KACzB;CACF"}
1
+ {"version":3,"file":"divider.d.ts","sourceRoot":"","sources":["../../../src/components/divider/divider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAa,MAAM,KAAK,CAAC;AAG5C,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAExE,qBACa,SAAU,SAAQ,UAAU;IACI,SAAS,EAAE,gBAAgB,CAAgB;IAC1D,SAAS,SAAS;IAClB,MAAM,SAAO;IACE,KAAK,EAAE,YAAY,CAAY;IAE1E,MAAM,CAAC,MAAM,4BAgCX;IAEF,iBAAiB,SAMhB;IAED,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,QAa1C;IAED,MAAM,yCAGL;CACF;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,YAAY,EAAE,SAAS,CAAC;KACzB;CACF"}
@@ -15,20 +15,28 @@ let StDivider = class StDivider extends LitElement {
15
15
  this.margin = '0';
16
16
  this.color = 'border';
17
17
  }
18
+ connectedCallback() {
19
+ super.connectedCallback();
20
+ // Semantic role belongs on the host element
21
+ if (!this.hasAttribute('role')) {
22
+ this.setAttribute('role', 'separator');
23
+ }
24
+ }
18
25
  updated(changedProperties) {
19
26
  super.updated(changedProperties);
20
27
  // Sync properties to CSS variables for dynamic adjustment
21
- this.style.setProperty('--divider-thickness', this.thickness);
22
- this.style.setProperty('--divider-margin', this.margin);
28
+ if (changedProperties.has('thickness') || changedProperties.has('margin')) {
29
+ this.style.setProperty('--divider-thickness', this.thickness);
30
+ this.style.setProperty('--divider-margin', this.margin);
31
+ }
32
+ // Keep native ARIA attributes perfectly synced with our Lit properties
33
+ if (changedProperties.has('direction')) {
34
+ this.setAttribute('aria-orientation', this.direction);
35
+ }
23
36
  }
24
37
  render() {
25
- // Accessibility: Set role and aria-orientation
26
- return html `
27
- <div
28
- role="separator"
29
- aria-orientation="${this.direction === 'horizontal' ? 'horizontal' : 'vertical'}"
30
- ></div>
31
- `;
38
+ // The host element itself is the structural divider. No inner DOM bloat needed.
39
+ return html ``;
32
40
  }
33
41
  };
34
42
  StDivider.styles = [
@@ -80,3 +88,4 @@ StDivider = __decorate([
80
88
  customElement('st-divider')
81
89
  ], StDivider);
82
90
  export { StDivider };
91
+ //# sourceMappingURL=divider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"divider.js","sourceRoot":"","sources":["../../../src/components/divider/divider.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAI7C,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,UAAU;IAAlC;;QACsC,cAAS,GAAqB,YAAY,CAAC;QAC1D,cAAS,GAAG,KAAK,CAAC;QAClB,WAAM,GAAG,GAAG,CAAC;QACE,UAAK,GAAiB,QAAQ,CAAC;IA+D5E,CAAC;IA3BC,iBAAiB;QACf,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC1B,4CAA4C;QAC5C,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;YAC/B,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QACzC,CAAC;IACH,CAAC;IAED,OAAO,CAAC,iBAAmC;QACzC,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;QAEjC,0DAA0D;QAC1D,IAAI,iBAAiB,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1E,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,qBAAqB,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;YAC9D,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,kBAAkB,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1D,CAAC;QAED,uEAAuE;QACvE,IAAI,iBAAiB,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;YACvC,IAAI,CAAC,YAAY,CAAC,kBAAkB,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAED,MAAM;QACJ,gFAAgF;QAChF,OAAO,IAAI,CAAA,EAAE,CAAC;IAChB,CAAC;CACF,CAAA;AA7DQ,gBAAM,GAAG;IACd,WAAW;IACX,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA6BF;CACF,AAhCY,CAgCX;AArCyC;IAA1C,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;4CAA4C;AAC1D;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;4CAAmB;AAClB;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;yCAAc;AACE;IAA1C,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;wCAAgC;AAJ/D,SAAS;IADrB,aAAa,CAAC,YAAY,CAAC;GACf,SAAS,CAmErB"}
@@ -1,5 +1,5 @@
1
- import { LitElement, nothing } from 'lit';
2
- export type DrawerPlacement = 'left' | 'right';
1
+ import { LitElement } from "lit";
2
+ export type DrawerPlacement = "left" | "right";
3
3
  export declare class StDrawer extends LitElement {
4
4
  open: boolean;
5
5
  placement: DrawerPlacement;
@@ -8,15 +8,18 @@ export declare class StDrawer extends LitElement {
8
8
  private _currentTranslateX;
9
9
  private _isDragging;
10
10
  static styles: import("lit").CSSResult[];
11
+ updated(changedProperties: Map<string, any>): void;
12
+ disconnectedCallback(): void;
13
+ private _handleKeyDown;
11
14
  private _close;
12
15
  private _handleTouchStart;
13
16
  private _handleTouchMove;
14
17
  private _handleTouchEnd;
15
- render(): typeof nothing | import("lit-html").TemplateResult<1>;
18
+ render(): import("lit-html").TemplateResult<1>;
16
19
  }
17
20
  declare global {
18
21
  interface HTMLElementTagNameMap {
19
- 'st-drawer': StDrawer;
22
+ "st-drawer": StDrawer;
20
23
  }
21
24
  }
22
25
  //# sourceMappingURL=drawer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"drawer.d.ts","sourceRoot":"","sources":["../../../src/components/drawer/drawer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAa,OAAO,EAAE,MAAM,KAAK,CAAC;AAIrD,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,OAAO,CAAC;AAE/C,qBACa,QAAS,SAAQ,UAAU;IACM,IAAI,UAAS;IACd,SAAS,EAAE,eAAe,CAAU;IACT,UAAU,UAAS;IAEzF,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,kBAAkB,CAAK;IAC/B,OAAO,CAAC,WAAW,CAAS;IAE5B,MAAM,CAAC,MAAM,4BAsHX;IAEF,OAAO,CAAC,MAAM;IAOd,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,gBAAgB;IAiBxB,OAAO,CAAC,eAAe;IAkBvB,MAAM,0DAyBL;CACF;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,WAAW,EAAE,QAAQ,CAAC;KACvB;CACF"}
1
+ {"version":3,"file":"drawer.d.ts","sourceRoot":"","sources":["../../../src/components/drawer/drawer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAY,MAAM,KAAK,CAAC;AAI1C,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,OAAO,CAAC;AAE/C,qBACa,QAAS,SAAQ,UAAU;IACI,IAAI,UAAS;IACd,SAAS,EAAE,eAAe,CAAU;IACT,UAAU,UAAS;IAEvF,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,kBAAkB,CAAK;IAC/B,OAAO,CAAC,WAAW,CAAS;IAE5B,MAAM,CAAC,MAAM,4BAsIX;IAEF,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,QAa1C;IAED,oBAAoB,SAKnB;IAED,OAAO,CAAC,cAAc,CAIpB;IAEF,OAAO,CAAC,MAAM;IAOd,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,gBAAgB;IAiBxB,OAAO,CAAC,eAAe;IAmBvB,MAAM,yCAyBL;CACF;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,WAAW,EAAE,QAAQ,CAAC;KACvB;CACF"}