sdocs 0.0.2 → 0.0.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 (194) hide show
  1. package/bin/sdocs.js +1 -1
  2. package/dist/app-gen.d.ts +10 -0
  3. package/dist/app-gen.js +147 -0
  4. package/dist/cli.js +71 -0
  5. package/dist/client/App.svelte +151 -0
  6. package/dist/client/App.svelte.d.ts +14 -0
  7. package/dist/client/CollapsiblePanel.svelte +63 -0
  8. package/dist/client/CollapsiblePanel.svelte.d.ts +9 -0
  9. package/dist/client/ComponentView.svelte +321 -0
  10. package/dist/client/ComponentView.svelte.d.ts +10 -0
  11. package/dist/client/ControlsPanel.svelte +191 -0
  12. package/dist/client/ControlsPanel.svelte.d.ts +13 -0
  13. package/dist/client/DataTable.svelte +78 -0
  14. package/dist/client/DataTable.svelte.d.ts +11 -0
  15. package/dist/client/HomePage.svelte +92 -0
  16. package/dist/client/HomePage.svelte.d.ts +8 -0
  17. package/dist/client/LayoutView.svelte +27 -0
  18. package/dist/client/LayoutView.svelte.d.ts +8 -0
  19. package/dist/client/PageView.svelte +130 -0
  20. package/dist/client/PageView.svelte.d.ts +8 -0
  21. package/dist/client/PreviewFrame.svelte +100 -0
  22. package/dist/client/PreviewFrame.svelte.d.ts +10 -0
  23. package/dist/client/Sidebar.svelte +329 -0
  24. package/dist/client/Sidebar.svelte.d.ts +16 -0
  25. package/dist/client/controls/CheckboxControl.svelte +37 -0
  26. package/dist/client/controls/CheckboxControl.svelte.d.ts +8 -0
  27. package/dist/client/controls/ColorControl.svelte +47 -0
  28. package/dist/client/controls/ColorControl.svelte.d.ts +8 -0
  29. package/dist/client/controls/DimensionControl.svelte +56 -0
  30. package/dist/client/controls/DimensionControl.svelte.d.ts +8 -0
  31. package/dist/client/controls/NumberControl.svelte +44 -0
  32. package/dist/client/controls/NumberControl.svelte.d.ts +8 -0
  33. package/dist/client/controls/SelectControl.svelte +48 -0
  34. package/dist/client/controls/SelectControl.svelte.d.ts +9 -0
  35. package/dist/client/controls/TextControl.svelte +43 -0
  36. package/dist/client/controls/TextControl.svelte.d.ts +8 -0
  37. package/dist/client/router.svelte.d.ts +11 -0
  38. package/dist/client/router.svelte.js +45 -0
  39. package/dist/client/theme.css +34 -0
  40. package/dist/client/tree-builder.d.ts +30 -0
  41. package/dist/client/tree-builder.js +162 -0
  42. package/dist/commands/build.d.ts +1 -0
  43. package/dist/commands/build.js +38 -0
  44. package/dist/commands/dev.d.ts +1 -0
  45. package/dist/commands/dev.js +40 -0
  46. package/dist/commands/init.d.ts +1 -0
  47. package/dist/commands/init.js +41 -0
  48. package/dist/commands/preview.d.ts +1 -0
  49. package/dist/commands/preview.js +25 -0
  50. package/dist/config.d.ts +7 -0
  51. package/dist/config.js +57 -0
  52. package/dist/index.d.ts +2 -2
  53. package/dist/index.js +1 -4
  54. package/dist/server/discovery.d.ts +6 -0
  55. package/dist/server/discovery.js +24 -0
  56. package/dist/server/highlighter.d.ts +4 -0
  57. package/dist/server/highlighter.js +31 -0
  58. package/dist/server/meta-parser.d.ts +11 -0
  59. package/dist/server/meta-parser.js +107 -0
  60. package/dist/server/prop-parser.d.ts +5 -0
  61. package/dist/server/prop-parser.js +275 -0
  62. package/dist/server/sdocx-parser.d.ts +11 -0
  63. package/dist/server/sdocx-parser.js +197 -0
  64. package/dist/server/snippet-compiler.d.ts +27 -0
  65. package/dist/server/snippet-compiler.js +145 -0
  66. package/dist/server/snippet-extractor.d.ts +11 -0
  67. package/dist/server/snippet-extractor.js +37 -0
  68. package/dist/server/toc-extractor.d.ts +5 -0
  69. package/dist/server/toc-extractor.js +37 -0
  70. package/dist/types.d.ts +100 -148
  71. package/dist/vite.d.ts +5 -2
  72. package/dist/vite.js +266 -2
  73. package/package.json +50 -74
  74. package/README.md +0 -43
  75. package/dist/Sdocs.svelte +0 -1210
  76. package/dist/Sdocs.svelte.d.ts +0 -5
  77. package/dist/cli/app-plugin.d.ts +0 -7
  78. package/dist/cli/app-plugin.js +0 -69
  79. package/dist/cli/config.d.ts +0 -12
  80. package/dist/cli/config.js +0 -34
  81. package/dist/cli/index.js +0 -72
  82. package/dist/cli/server.d.ts +0 -2
  83. package/dist/cli/server.js +0 -63
  84. package/dist/docgen.d.ts +0 -47
  85. package/dist/docgen.js +0 -463
  86. package/dist/internal/ComponentPreview.svelte +0 -58
  87. package/dist/internal/ComponentPreview.svelte.d.ts +0 -17
  88. package/dist/internal/CssPropsTable.svelte +0 -239
  89. package/dist/internal/CssPropsTable.svelte.d.ts +0 -11
  90. package/dist/internal/Home.svelte +0 -92
  91. package/dist/internal/Home.svelte.d.ts +0 -9
  92. package/dist/internal/MethodsTable.svelte +0 -72
  93. package/dist/internal/MethodsTable.svelte.d.ts +0 -7
  94. package/dist/internal/PropsTable.svelte +0 -342
  95. package/dist/internal/PropsTable.svelte.d.ts +0 -12
  96. package/dist/internal/Showcase.svelte +0 -130
  97. package/dist/internal/Showcase.svelte.d.ts +0 -21
  98. package/dist/ui/Badge/Badge.docs.svelte +0 -46
  99. package/dist/ui/Badge/Badge.docs.svelte.d.ts +0 -26
  100. package/dist/ui/Badge/Badge.svelte +0 -59
  101. package/dist/ui/Badge/Badge.svelte.d.ts +0 -17
  102. package/dist/ui/Badge/index.d.ts +0 -1
  103. package/dist/ui/Badge/index.js +0 -1
  104. package/dist/ui/Checkbox/Checkbox.docs.svelte +0 -51
  105. package/dist/ui/Checkbox/Checkbox.docs.svelte.d.ts +0 -27
  106. package/dist/ui/Checkbox/Checkbox.svelte +0 -169
  107. package/dist/ui/Checkbox/Checkbox.svelte.d.ts +0 -18
  108. package/dist/ui/Checkbox/index.d.ts +0 -1
  109. package/dist/ui/Checkbox/index.js +0 -1
  110. package/dist/ui/CodeBlock/CodeBlock.docs.svelte +0 -28
  111. package/dist/ui/CodeBlock/CodeBlock.docs.svelte.d.ts +0 -24
  112. package/dist/ui/CodeBlock/CodeBlock.svelte +0 -101
  113. package/dist/ui/CodeBlock/CodeBlock.svelte.d.ts +0 -7
  114. package/dist/ui/CodeBlock/index.d.ts +0 -1
  115. package/dist/ui/CodeBlock/index.js +0 -1
  116. package/dist/ui/Frame/Frame.docs.svelte +0 -140
  117. package/dist/ui/Frame/Frame.docs.svelte.d.ts +0 -26
  118. package/dist/ui/Frame/Frame.svelte +0 -88
  119. package/dist/ui/Frame/Frame.svelte.d.ts +0 -15
  120. package/dist/ui/Frame/index.d.ts +0 -1
  121. package/dist/ui/Frame/index.js +0 -1
  122. package/dist/ui/InputNumber/InputNumber.docs.svelte +0 -50
  123. package/dist/ui/InputNumber/InputNumber.docs.svelte.d.ts +0 -26
  124. package/dist/ui/InputNumber/InputNumber.svelte +0 -275
  125. package/dist/ui/InputNumber/InputNumber.svelte.d.ts +0 -26
  126. package/dist/ui/InputNumber/index.d.ts +0 -1
  127. package/dist/ui/InputNumber/index.js +0 -1
  128. package/dist/ui/InputText/InputText.docs.svelte +0 -43
  129. package/dist/ui/InputText/InputText.docs.svelte.d.ts +0 -26
  130. package/dist/ui/InputText/InputText.svelte +0 -116
  131. package/dist/ui/InputText/InputText.svelte.d.ts +0 -22
  132. package/dist/ui/InputText/index.d.ts +0 -1
  133. package/dist/ui/InputText/index.js +0 -1
  134. package/dist/ui/Panel/CollapsiblePanel.docs.svelte +0 -45
  135. package/dist/ui/Panel/CollapsiblePanel.docs.svelte.d.ts +0 -25
  136. package/dist/ui/Panel/CollapsiblePanel.svelte +0 -93
  137. package/dist/ui/Panel/CollapsiblePanel.svelte.d.ts +0 -14
  138. package/dist/ui/Panel/index.d.ts +0 -1
  139. package/dist/ui/Panel/index.js +0 -1
  140. package/dist/ui/Placeholder/Placeholder.docs.svelte +0 -49
  141. package/dist/ui/Placeholder/Placeholder.docs.svelte.d.ts +0 -26
  142. package/dist/ui/Placeholder/Placeholder.svelte +0 -99
  143. package/dist/ui/Placeholder/Placeholder.svelte.d.ts +0 -21
  144. package/dist/ui/Placeholder/index.d.ts +0 -1
  145. package/dist/ui/Placeholder/index.js +0 -1
  146. package/dist/ui/Radio/Radio.docs.svelte +0 -67
  147. package/dist/ui/Radio/Radio.docs.svelte.d.ts +0 -27
  148. package/dist/ui/Radio/Radio.svelte +0 -165
  149. package/dist/ui/Radio/Radio.svelte.d.ts +0 -22
  150. package/dist/ui/Radio/RadioGroup.docs.svelte +0 -70
  151. package/dist/ui/Radio/RadioGroup.docs.svelte.d.ts +0 -27
  152. package/dist/ui/Radio/RadioGroup.svelte +0 -98
  153. package/dist/ui/Radio/RadioGroup.svelte.d.ts +0 -27
  154. package/dist/ui/Radio/index.d.ts +0 -2
  155. package/dist/ui/Radio/index.js +0 -2
  156. package/dist/ui/SegmentControl/SegmentControl.docs.svelte +0 -54
  157. package/dist/ui/SegmentControl/SegmentControl.docs.svelte.d.ts +0 -25
  158. package/dist/ui/SegmentControl/SegmentControl.svelte +0 -120
  159. package/dist/ui/SegmentControl/SegmentControl.svelte.d.ts +0 -18
  160. package/dist/ui/SegmentControl/index.d.ts +0 -1
  161. package/dist/ui/SegmentControl/index.js +0 -1
  162. package/dist/ui/Stack/Stack.docs.svelte +0 -63
  163. package/dist/ui/Stack/Stack.docs.svelte.d.ts +0 -26
  164. package/dist/ui/Stack/Stack.svelte +0 -45
  165. package/dist/ui/Stack/Stack.svelte.d.ts +0 -19
  166. package/dist/ui/Stack/index.d.ts +0 -1
  167. package/dist/ui/Stack/index.js +0 -1
  168. package/dist/ui/Table/Body.svelte +0 -17
  169. package/dist/ui/Table/Body.svelte.d.ts +0 -11
  170. package/dist/ui/Table/Caption.svelte +0 -17
  171. package/dist/ui/Table/Caption.svelte.d.ts +0 -11
  172. package/dist/ui/Table/Cell.svelte +0 -24
  173. package/dist/ui/Table/Cell.svelte.d.ts +0 -15
  174. package/dist/ui/Table/Foot.svelte +0 -17
  175. package/dist/ui/Table/Foot.svelte.d.ts +0 -11
  176. package/dist/ui/Table/Head.svelte +0 -17
  177. package/dist/ui/Table/Head.svelte.d.ts +0 -11
  178. package/dist/ui/Table/Header.svelte +0 -27
  179. package/dist/ui/Table/Header.svelte.d.ts +0 -17
  180. package/dist/ui/Table/Row.svelte +0 -19
  181. package/dist/ui/Table/Row.svelte.d.ts +0 -13
  182. package/dist/ui/Table/Table.docs.svelte +0 -197
  183. package/dist/ui/Table/Table.docs.svelte.d.ts +0 -28
  184. package/dist/ui/Table/Table.svelte +0 -140
  185. package/dist/ui/Table/Table.svelte.d.ts +0 -27
  186. package/dist/ui/Table/index.js +0 -10
  187. package/dist/ui/css/colors.css +0 -377
  188. package/dist/ui/css/global.css +0 -10
  189. package/dist/ui/index.d.ts +0 -12
  190. package/dist/ui/index.js +0 -12
  191. package/dist/virtual-sdocs.d.ts +0 -20
  192. package/dist/vite-plugin.d.ts +0 -18
  193. package/dist/vite-plugin.js +0 -206
  194. /package/dist/{cli/index.d.ts → cli.d.ts} +0 -0
@@ -1,24 +0,0 @@
1
- <script lang="ts">
2
- import type { Snippet } from 'svelte';
3
-
4
- /**
5
- * A table data cell. Use inside Row.
6
- */
7
- interface Props {
8
- /** Cell content */
9
- children: Snippet;
10
- /** Number of columns to span */
11
- colspan?: number;
12
- /** Text alignment */
13
- align?: 'left' | 'center' | 'right';
14
- }
15
-
16
- let { children, colspan, align }: Props = $props();
17
- </script>
18
-
19
- <td
20
- {colspan}
21
- style:text-align={align}
22
- >
23
- {@render children()}
24
- </td>
@@ -1,15 +0,0 @@
1
- import type { Snippet } from 'svelte';
2
- /**
3
- * A table data cell. Use inside Row.
4
- */
5
- interface Props {
6
- /** Cell content */
7
- children: Snippet;
8
- /** Number of columns to span */
9
- colspan?: number;
10
- /** Text alignment */
11
- align?: 'left' | 'center' | 'right';
12
- }
13
- declare const Cell: import("svelte").Component<Props, {}, "">;
14
- type Cell = ReturnType<typeof Cell>;
15
- export default Cell;
@@ -1,17 +0,0 @@
1
- <script lang="ts">
2
- import type { Snippet } from 'svelte';
3
-
4
- /**
5
- * Table footer section. Used for summary rows (totals, counts).
6
- */
7
- interface Props {
8
- /** Footer rows */
9
- children: Snippet;
10
- }
11
-
12
- let { children }: Props = $props();
13
- </script>
14
-
15
- <tfoot>
16
- {@render children()}
17
- </tfoot>
@@ -1,11 +0,0 @@
1
- import type { Snippet } from 'svelte';
2
- /**
3
- * Table footer section. Used for summary rows (totals, counts).
4
- */
5
- interface Props {
6
- /** Footer rows */
7
- children: Snippet;
8
- }
9
- declare const Foot: import("svelte").Component<Props, {}, "">;
10
- type Foot = ReturnType<typeof Foot>;
11
- export default Foot;
@@ -1,17 +0,0 @@
1
- <script lang="ts">
2
- import type { Snippet } from 'svelte';
3
-
4
- /**
5
- * Table header section. Contains header rows.
6
- */
7
- interface Props {
8
- /** Header rows */
9
- children: Snippet;
10
- }
11
-
12
- let { children }: Props = $props();
13
- </script>
14
-
15
- <thead>
16
- {@render children()}
17
- </thead>
@@ -1,11 +0,0 @@
1
- import type { Snippet } from 'svelte';
2
- /**
3
- * Table header section. Contains header rows.
4
- */
5
- interface Props {
6
- /** Header rows */
7
- children: Snippet;
8
- }
9
- declare const Head: import("svelte").Component<Props, {}, "">;
10
- type Head = ReturnType<typeof Head>;
11
- export default Head;
@@ -1,27 +0,0 @@
1
- <script lang="ts">
2
- import type { Snippet } from 'svelte';
3
-
4
- /**
5
- * A table header cell. Use inside Row.
6
- */
7
- interface Props {
8
- /** Cell content */
9
- children: Snippet;
10
- /** Number of columns to span */
11
- colspan?: number;
12
- /** Text alignment */
13
- align?: 'left' | 'center' | 'right';
14
- /** Column width (e.g. '20%', '200px') */
15
- width?: string;
16
- }
17
-
18
- let { children, colspan, align, width }: Props = $props();
19
- </script>
20
-
21
- <th
22
- {colspan}
23
- style:text-align={align}
24
- style:width={width}
25
- >
26
- {@render children()}
27
- </th>
@@ -1,17 +0,0 @@
1
- import type { Snippet } from 'svelte';
2
- /**
3
- * A table header cell. Use inside Row.
4
- */
5
- interface Props {
6
- /** Cell content */
7
- children: Snippet;
8
- /** Number of columns to span */
9
- colspan?: number;
10
- /** Text alignment */
11
- align?: 'left' | 'center' | 'right';
12
- /** Column width (e.g. '20%', '200px') */
13
- width?: string;
14
- }
15
- declare const Header: import("svelte").Component<Props, {}, "">;
16
- type Header = ReturnType<typeof Header>;
17
- export default Header;
@@ -1,19 +0,0 @@
1
- <script lang="ts">
2
- import type { Snippet } from 'svelte';
3
-
4
- /**
5
- * A table row. Use inside Head, Body, or Foot.
6
- */
7
- interface Props {
8
- /** Row cells */
9
- children: Snippet;
10
- /** Additional CSS class */
11
- class?: string;
12
- }
13
-
14
- let { children, class: className = '' }: Props = $props();
15
- </script>
16
-
17
- <tr class={className || undefined}>
18
- {@render children()}
19
- </tr>
@@ -1,13 +0,0 @@
1
- import type { Snippet } from 'svelte';
2
- /**
3
- * A table row. Use inside Head, Body, or Foot.
4
- */
5
- interface Props {
6
- /** Row cells */
7
- children: Snippet;
8
- /** Additional CSS class */
9
- class?: string;
10
- }
11
- declare const Row: import("svelte").Component<Props, {}, "">;
12
- type Row = ReturnType<typeof Row>;
13
- export default Row;
@@ -1,197 +0,0 @@
1
- <script lang="ts" module>
2
- import { Table } from './index.js';
3
- import type { DocMeta } from '../../types.js';
4
-
5
- export const meta: DocMeta = {
6
- title: 'Layout / Table',
7
- component: Table
8
- };
9
-
10
- export { Default, Striped, Compact, WithCaption, WithFooter, SectionHeaders };
11
- </script>
12
-
13
- {#snippet Default(args: any)}
14
- <Table {...args}>
15
- <Table.Head>
16
- <Table.Row>
17
- <Table.Header>Name</Table.Header>
18
- <Table.Header>Type</Table.Header>
19
- <Table.Header>Description</Table.Header>
20
- </Table.Row>
21
- </Table.Head>
22
- <Table.Body>
23
- <Table.Row>
24
- <Table.Cell>label</Table.Cell>
25
- <Table.Cell>string</Table.Cell>
26
- <Table.Cell>Button text</Table.Cell>
27
- </Table.Row>
28
- <Table.Row>
29
- <Table.Cell>disabled</Table.Cell>
30
- <Table.Cell>boolean</Table.Cell>
31
- <Table.Cell>Disable the button</Table.Cell>
32
- </Table.Row>
33
- <Table.Row>
34
- <Table.Cell>size</Table.Cell>
35
- <Table.Cell>'s' | 'm' | 'l'</Table.Cell>
36
- <Table.Cell>Size variant</Table.Cell>
37
- </Table.Row>
38
- </Table.Body>
39
- </Table>
40
- {/snippet}
41
-
42
- {#snippet Striped()}
43
- <Table striped>
44
- <Table.Head>
45
- <Table.Row>
46
- <Table.Header>Name</Table.Header>
47
- <Table.Header>Role</Table.Header>
48
- <Table.Header>Status</Table.Header>
49
- </Table.Row>
50
- </Table.Head>
51
- <Table.Body>
52
- <Table.Row>
53
- <Table.Cell>Alice</Table.Cell>
54
- <Table.Cell>Admin</Table.Cell>
55
- <Table.Cell>Active</Table.Cell>
56
- </Table.Row>
57
- <Table.Row>
58
- <Table.Cell>Bob</Table.Cell>
59
- <Table.Cell>Editor</Table.Cell>
60
- <Table.Cell>Active</Table.Cell>
61
- </Table.Row>
62
- <Table.Row>
63
- <Table.Cell>Carol</Table.Cell>
64
- <Table.Cell>Viewer</Table.Cell>
65
- <Table.Cell>Inactive</Table.Cell>
66
- </Table.Row>
67
- <Table.Row>
68
- <Table.Cell>Dave</Table.Cell>
69
- <Table.Cell>Editor</Table.Cell>
70
- <Table.Cell>Active</Table.Cell>
71
- </Table.Row>
72
- </Table.Body>
73
- </Table>
74
- {/snippet}
75
-
76
- {#snippet Compact()}
77
- <Table compact>
78
- <Table.Head>
79
- <Table.Row>
80
- <Table.Header>Property</Table.Header>
81
- <Table.Header>Value</Table.Header>
82
- </Table.Row>
83
- </Table.Head>
84
- <Table.Body>
85
- <Table.Row>
86
- <Table.Cell>font-size</Table.Cell>
87
- <Table.Cell>14px</Table.Cell>
88
- </Table.Row>
89
- <Table.Row>
90
- <Table.Cell>line-height</Table.Cell>
91
- <Table.Cell>1.5</Table.Cell>
92
- </Table.Row>
93
- <Table.Row>
94
- <Table.Cell>font-weight</Table.Cell>
95
- <Table.Cell>400</Table.Cell>
96
- </Table.Row>
97
- </Table.Body>
98
- </Table>
99
- {/snippet}
100
-
101
- {#snippet WithCaption()}
102
- <Table>
103
- <Table.Caption>Team members and their roles</Table.Caption>
104
- <Table.Head>
105
- <Table.Row>
106
- <Table.Header>Name</Table.Header>
107
- <Table.Header>Role</Table.Header>
108
- <Table.Header align="right">Hours</Table.Header>
109
- </Table.Row>
110
- </Table.Head>
111
- <Table.Body>
112
- <Table.Row>
113
- <Table.Cell>Alice</Table.Cell>
114
- <Table.Cell>Lead</Table.Cell>
115
- <Table.Cell align="right">40</Table.Cell>
116
- </Table.Row>
117
- <Table.Row>
118
- <Table.Cell>Bob</Table.Cell>
119
- <Table.Cell>Developer</Table.Cell>
120
- <Table.Cell align="right">32</Table.Cell>
121
- </Table.Row>
122
- </Table.Body>
123
- </Table>
124
- {/snippet}
125
-
126
- {#snippet WithFooter()}
127
- <Table>
128
- <Table.Head>
129
- <Table.Row>
130
- <Table.Header>Product</Table.Header>
131
- <Table.Header align="right">Price</Table.Header>
132
- <Table.Header align="right">Qty</Table.Header>
133
- <Table.Header align="right">Total</Table.Header>
134
- </Table.Row>
135
- </Table.Head>
136
- <Table.Body>
137
- <Table.Row>
138
- <Table.Cell>Widget A</Table.Cell>
139
- <Table.Cell align="right">$10</Table.Cell>
140
- <Table.Cell align="right">3</Table.Cell>
141
- <Table.Cell align="right">$30</Table.Cell>
142
- </Table.Row>
143
- <Table.Row>
144
- <Table.Cell>Widget B</Table.Cell>
145
- <Table.Cell align="right">$25</Table.Cell>
146
- <Table.Cell align="right">2</Table.Cell>
147
- <Table.Cell align="right">$50</Table.Cell>
148
- </Table.Row>
149
- </Table.Body>
150
- <Table.Foot>
151
- <Table.Row>
152
- <Table.Header colspan={3}>Total</Table.Header>
153
- <Table.Cell align="right"><strong>$80</strong></Table.Cell>
154
- </Table.Row>
155
- </Table.Foot>
156
- </Table>
157
- {/snippet}
158
-
159
- {#snippet SectionHeaders()}
160
- <Table>
161
- <Table.Head>
162
- <Table.Row>
163
- <Table.Header>Name</Table.Header>
164
- <Table.Header>Type</Table.Header>
165
- <Table.Header>Default</Table.Header>
166
- </Table.Row>
167
- </Table.Head>
168
- <Table.Body>
169
- <Table.Row>
170
- <Table.Header colspan={3}>Appearance</Table.Header>
171
- </Table.Row>
172
- <Table.Row>
173
- <Table.Cell>size</Table.Cell>
174
- <Table.Cell>'s' | 'm' | 'l'</Table.Cell>
175
- <Table.Cell>'m'</Table.Cell>
176
- </Table.Row>
177
- <Table.Row>
178
- <Table.Cell>variant</Table.Cell>
179
- <Table.Cell>'solid' | 'outline'</Table.Cell>
180
- <Table.Cell>'solid'</Table.Cell>
181
- </Table.Row>
182
- <Table.Row>
183
- <Table.Header colspan={3}>Behavior</Table.Header>
184
- </Table.Row>
185
- <Table.Row>
186
- <Table.Cell>disabled</Table.Cell>
187
- <Table.Cell>boolean</Table.Cell>
188
- <Table.Cell>false</Table.Cell>
189
- </Table.Row>
190
- <Table.Row>
191
- <Table.Cell>loading</Table.Cell>
192
- <Table.Cell>boolean</Table.Cell>
193
- <Table.Cell>false</Table.Cell>
194
- </Table.Row>
195
- </Table.Body>
196
- </Table>
197
- {/snippet}
@@ -1,28 +0,0 @@
1
- import { Table } from './index.js';
2
- import type { DocMeta } from '../../types.js';
3
- declare const Default: (args: any) => ReturnType<import("svelte").Snippet>;
4
- declare const Striped: () => ReturnType<import("svelte").Snippet>;
5
- declare const Compact: () => ReturnType<import("svelte").Snippet>;
6
- declare const WithCaption: () => ReturnType<import("svelte").Snippet>;
7
- declare const WithFooter: () => ReturnType<import("svelte").Snippet>;
8
- declare const SectionHeaders: () => ReturnType<import("svelte").Snippet>;
9
- export declare const meta: DocMeta;
10
- export { Default, Striped, Compact, WithCaption, WithFooter, SectionHeaders };
11
- interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
12
- new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
13
- $$bindings?: Bindings;
14
- } & Exports;
15
- (internal: unknown, props: {
16
- $$events?: Events;
17
- $$slots?: Slots;
18
- }): Exports & {
19
- $set?: any;
20
- $on?: any;
21
- };
22
- z_$$bindings?: Bindings;
23
- }
24
- declare const Table: $$__sveltets_2_IsomorphicComponent<Record<string, never>, {
25
- [evt: string]: CustomEvent<any>;
26
- }, {}, {}, string>;
27
- type Table = InstanceType<typeof Table>;
28
- export default Table;
@@ -1,140 +0,0 @@
1
- <script lang="ts">
2
- import type { Snippet } from 'svelte';
3
-
4
- /**
5
- * A compound table component with semantic HTML sub-components.
6
- *
7
- * @cssvar {color} --table-border - Border color (default: var(--color-border))
8
- * @cssvar {color} --table-bg - Background color (default: white)
9
- * @cssvar {color} --table-header-bg - Header background (default: var(--color-bg))
10
- * @cssvar {color} --table-hover-bg - Row hover background (default: var(--color-bg-hover))
11
- * @cssvar {color} --table-stripe-bg - Striped row background (default: var(--color-bg))
12
- */
13
- interface Props {
14
- /** Table content (Head, Body, Foot, Caption) */
15
- children: Snippet;
16
- /** Show alternating row colors */
17
- striped?: boolean;
18
- /** Compact padding */
19
- compact?: boolean;
20
- /** Fixed table layout */
21
- fixed?: boolean;
22
- /** Remove outer border */
23
- borderless?: boolean;
24
- /** Additional CSS class */
25
- class?: string;
26
- }
27
-
28
- let {
29
- children,
30
- striped = false,
31
- compact = false,
32
- fixed = false,
33
- borderless = false,
34
- class: className = ''
35
- }: Props = $props();
36
- </script>
37
-
38
- <div class="Table-wrapper {className}" class:striped class:compact class:fixed class:borderless>
39
- <table>
40
- {@render children()}
41
- </table>
42
- </div>
43
-
44
- <style>
45
- .Table-wrapper {
46
- width: 100%;
47
- overflow-x: auto;
48
- border: 1px solid var(--table-border, var(--color-border));
49
- border-radius: 0;
50
- background: var(--table-bg, white);
51
- }
52
-
53
- .Table-wrapper table {
54
- width: 100%;
55
- border-collapse: collapse;
56
- font-size: 14px;
57
- }
58
-
59
- .Table-wrapper.fixed table {
60
- table-layout: fixed;
61
- }
62
-
63
- /* Head */
64
- .Table-wrapper :global(thead th) {
65
- text-align: left;
66
- padding: 10px 12px;
67
- background: var(--table-header-bg, var(--color-bg));
68
- border-bottom: 1px solid var(--table-border, var(--color-border));
69
- font-weight: 600;
70
- color: var(--color-text-secondary);
71
- font-size: 12px;
72
- text-transform: uppercase;
73
- letter-spacing: 0.05em;
74
- }
75
-
76
- /* Body cells */
77
- .Table-wrapper :global(tbody td),
78
- .Table-wrapper :global(tbody th) {
79
- padding: 10px 12px;
80
- border-bottom: 1px solid var(--color-border-subtle);
81
- vertical-align: middle;
82
- }
83
-
84
- .Table-wrapper :global(tbody tr:last-child td),
85
- .Table-wrapper :global(tbody tr:last-child th) {
86
- border-bottom: none;
87
- }
88
-
89
- .Table-wrapper :global(tbody tr:hover) {
90
- background: var(--table-hover-bg, var(--base-50));
91
- }
92
-
93
- /* Foot */
94
- .Table-wrapper :global(tfoot td),
95
- .Table-wrapper :global(tfoot th) {
96
- padding: 10px 12px;
97
- background: var(--table-header-bg, var(--color-bg));
98
- border-top: 1px solid var(--table-border, var(--color-border));
99
- font-weight: 600;
100
- font-size: 13px;
101
- color: var(--color-text-secondary);
102
- }
103
-
104
- /* Caption */
105
- .Table-wrapper :global(caption) {
106
- padding: 10px 12px;
107
- font-size: 13px;
108
- color: var(--color-text-secondary);
109
- text-align: left;
110
- caption-side: top;
111
- }
112
-
113
- /* Compact variant */
114
- .Table-wrapper.compact :global(thead th) {
115
- padding: 6px 10px;
116
- font-size: 11px;
117
- }
118
-
119
- .Table-wrapper.compact :global(tbody td),
120
- .Table-wrapper.compact :global(tbody th),
121
- .Table-wrapper.compact :global(tfoot td),
122
- .Table-wrapper.compact :global(tfoot th) {
123
- padding: 6px 10px;
124
- font-size: 13px;
125
- }
126
-
127
- /* Borderless variant */
128
- .Table-wrapper.borderless {
129
- border: none;
130
- }
131
-
132
- /* Striped variant */
133
- .Table-wrapper.striped :global(tbody tr:nth-child(even)) {
134
- background: var(--table-stripe-bg, var(--color-bg));
135
- }
136
-
137
- .Table-wrapper.striped :global(tbody tr:nth-child(even):hover) {
138
- background: var(--table-hover-bg, var(--base-50));
139
- }
140
- </style>
@@ -1,27 +0,0 @@
1
- import type { Snippet } from 'svelte';
2
- /**
3
- * A compound table component with semantic HTML sub-components.
4
- *
5
- * @cssvar {color} --table-border - Border color (default: var(--color-border))
6
- * @cssvar {color} --table-bg - Background color (default: white)
7
- * @cssvar {color} --table-header-bg - Header background (default: var(--color-bg))
8
- * @cssvar {color} --table-hover-bg - Row hover background (default: var(--color-bg-hover))
9
- * @cssvar {color} --table-stripe-bg - Striped row background (default: var(--color-bg))
10
- */
11
- interface Props {
12
- /** Table content (Head, Body, Foot, Caption) */
13
- children: Snippet;
14
- /** Show alternating row colors */
15
- striped?: boolean;
16
- /** Compact padding */
17
- compact?: boolean;
18
- /** Fixed table layout */
19
- fixed?: boolean;
20
- /** Remove outer border */
21
- borderless?: boolean;
22
- /** Additional CSS class */
23
- class?: string;
24
- }
25
- declare const Table: import("svelte").Component<Props, {}, "">;
26
- type Table = ReturnType<typeof Table>;
27
- export default Table;
@@ -1,10 +0,0 @@
1
- import TableRoot from './Table.svelte';
2
- import Head from './Head.svelte';
3
- import Body from './Body.svelte';
4
- import Foot from './Foot.svelte';
5
- import Row from './Row.svelte';
6
- import Header from './Header.svelte';
7
- import Cell from './Cell.svelte';
8
- import Caption from './Caption.svelte';
9
- const Table = Object.assign(TableRoot, { Head, Body, Foot, Row, Header, Cell, Caption });
10
- export { Table, Head, Body, Foot, Row, Header, Cell, Caption };