@x33025/sveltely 0.1.18 → 0.1.21

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 (138) hide show
  1. package/dist/actions/LoaderOverlay.svelte +33 -8
  2. package/dist/actions/LoaderOverlay.svelte.d.ts +3 -0
  3. package/dist/actions/loader.d.ts +3 -0
  4. package/dist/actions/loader.js +20 -7
  5. package/dist/components/Library/AnimatedNumber/AnimatedNumber.demo.svelte +3 -9
  6. package/dist/components/Library/ArticleEditor/ArticleEditor.svelte +1 -1
  7. package/dist/components/Library/ArticleEditor/ArticleEditorHeader.svelte +20 -30
  8. package/dist/components/Library/ArticleEditor/Blocks/Code.svelte +0 -1
  9. package/dist/components/Library/ArticleEditor/Blocks/FAQ.svelte +1 -1
  10. package/dist/components/Library/ArticleEditor/Blocks/Heading.svelte +7 -7
  11. package/dist/components/Library/ArticleEditor/Blocks/Image.svelte +20 -36
  12. package/dist/components/Library/ArticleEditor/Blocks/Image.svelte.d.ts +1 -0
  13. package/dist/components/Library/ArticleEditor/Blocks/List.svelte +2 -2
  14. package/dist/components/Library/ArticleEditor/Blocks/Paragraph.svelte +1 -1
  15. package/dist/components/Library/ArticleEditor/Blocks/index.d.ts +0 -1
  16. package/dist/components/Library/ArticleEditor/Blocks/index.js +0 -1
  17. package/dist/components/Library/AsyncButton/AsyncButton.demo.svelte +2 -6
  18. package/dist/components/Library/AsyncButton/AsyncButton.svelte +9 -5
  19. package/dist/components/Library/AsyncButton/AsyncButton.svelte.d.ts +2 -1
  20. package/dist/components/Library/Button/Button.demo.svelte +2 -17
  21. package/dist/components/Library/Button/Button.demo.svelte.d.ts +0 -1
  22. package/dist/components/Library/Button/Button.svelte +15 -16
  23. package/dist/components/Library/Button/Button.svelte.d.ts +2 -1
  24. package/dist/components/Library/Calendar/Calendar.svelte +17 -27
  25. package/dist/components/Library/Checkbox/Checkbox.demo.svelte +7 -4
  26. package/dist/components/Library/Checkbox/Checkbox.svelte +24 -61
  27. package/dist/components/Library/Checkbox/Checkbox.svelte.d.ts +2 -4
  28. package/dist/components/Library/ChipInput/ChipInput.demo.svelte +2 -2
  29. package/dist/components/Library/ChipInput/ChipInput.svelte +7 -11
  30. package/dist/components/Library/ChipInput/ChipInput.svelte.d.ts +3 -2
  31. package/dist/components/Library/Dropdown/Action.svelte +1 -1
  32. package/dist/components/Library/Dropdown/Dropdown.demo.svelte +10 -10
  33. package/dist/components/Library/Dropdown/Dropdown.svelte +2 -6
  34. package/dist/components/Library/Dropdown/Item.svelte +2 -2
  35. package/dist/components/Library/Dropdown/Section.svelte +1 -1
  36. package/dist/components/Library/Dropdown/Trigger.svelte +3 -7
  37. package/dist/components/Library/Image/Image.demo.svelte +3 -3
  38. package/dist/components/Library/Image/Image.svelte +57 -12
  39. package/dist/components/Library/Image/Image.svelte.d.ts +1 -2
  40. package/dist/components/Library/Image/ImagePlaceholder.demo.svelte +12 -0
  41. package/dist/components/Library/Image/ImagePlaceholder.demo.svelte.d.ts +23 -0
  42. package/dist/components/Library/Image/ImagePlaceholder.svelte +28 -4
  43. package/dist/components/Library/Image/ImagePlaceholder.svelte.d.ts +1 -1
  44. package/dist/components/Library/Image/index.d.ts +1 -0
  45. package/dist/components/Library/Image/index.js +1 -0
  46. package/dist/components/Library/ImageMask/BrushPreview.svelte +6 -6
  47. package/dist/components/Library/ImageMask/ImageMask.demo.svelte +10 -8
  48. package/dist/components/Library/ImageMask/ImageMask.svelte +14 -6
  49. package/dist/components/Library/ImageMask/ImageMask.svelte.d.ts +1 -2
  50. package/dist/components/Library/ImageMask/MaskLayer.svelte +12 -6
  51. package/dist/components/Library/Label/Label.demo.svelte +16 -3
  52. package/dist/components/Library/Label/Label.svelte +15 -3
  53. package/dist/components/Library/Label/Label.svelte.d.ts +1 -0
  54. package/dist/components/Library/Link/Link.svelte +10 -22
  55. package/dist/components/Library/Link/Link.svelte.d.ts +2 -3
  56. package/dist/components/Library/Loader/Loader.demo.svelte +9 -3
  57. package/dist/components/Library/NavigationStack/Link.svelte +8 -12
  58. package/dist/components/Library/NavigationStack/Link.svelte.d.ts +1 -3
  59. package/dist/components/Library/NavigationStack/SidebarToggle.svelte +8 -2
  60. package/dist/components/Library/NumberField/NumberField.svelte +21 -17
  61. package/dist/components/Library/NumberField/NumberField.svelte.d.ts +4 -2
  62. package/dist/components/Library/Pagination/Pagination.svelte +3 -3
  63. package/dist/components/Library/Popover/Popover.svelte +2 -7
  64. package/dist/components/Library/ScrollView/ScrollView.demo.svelte +50 -0
  65. package/dist/components/Library/ScrollView/ScrollView.demo.svelte.d.ts +10 -0
  66. package/dist/components/Library/ScrollView/ScrollView.svelte +414 -67
  67. package/dist/components/Library/ScrollView/ScrollView.svelte.d.ts +17 -1
  68. package/dist/components/Library/ScrollView/index.d.ts +1 -1
  69. package/dist/components/Library/SearchField/SearchField.demo.svelte +2 -2
  70. package/dist/components/Library/SearchField/SearchField.svelte +9 -4
  71. package/dist/components/Library/SearchField/SearchField.svelte.d.ts +2 -1
  72. package/dist/components/Library/SegmentedPicker/SegmentedPicker.demo.svelte +2 -2
  73. package/dist/components/Library/SegmentedPicker/SegmentedPicker.svelte +7 -7
  74. package/dist/components/Library/Sheet/Sheet.demo.svelte +1 -1
  75. package/dist/components/Library/Sheet/Sheet.svelte +2 -7
  76. package/dist/components/Library/Slider/Slider.demo.svelte +1 -1
  77. package/dist/components/Library/Slider/Slider.svelte +11 -7
  78. package/dist/components/Library/Slider/Slider.svelte.d.ts +2 -1
  79. package/dist/components/Library/Spinner/Spinner.demo.svelte +1 -1
  80. package/dist/components/Library/Switch/Switch.demo.svelte +7 -4
  81. package/dist/components/Library/Switch/Switch.svelte +28 -68
  82. package/dist/components/Library/Switch/Switch.svelte.d.ts +2 -4
  83. package/dist/components/Library/Table/Column.svelte +81 -0
  84. package/dist/components/Library/Table/Column.svelte.d.ts +39 -0
  85. package/dist/components/Library/Table/Table.demo.svelte +148 -0
  86. package/dist/components/Library/Table/Table.demo.svelte.d.ts +10 -0
  87. package/dist/components/Library/Table/Table.svelte +624 -0
  88. package/dist/components/Library/Table/Table.svelte.d.ts +42 -0
  89. package/dist/components/Library/Table/context.d.ts +5 -0
  90. package/dist/components/Library/Table/context.js +2 -0
  91. package/dist/components/Library/Table/index.js +5 -0
  92. package/dist/components/Library/Table/types.d.ts +37 -0
  93. package/dist/components/Library/Table/types.js +1 -0
  94. package/dist/components/Library/Text/Text.demo.svelte +21 -0
  95. package/dist/components/Library/Text/Text.demo.svelte.d.ts +24 -0
  96. package/dist/components/Library/Text/Text.svelte +41 -0
  97. package/dist/components/Library/Text/Text.svelte.d.ts +9 -0
  98. package/dist/components/Library/Text/index.d.ts +1 -0
  99. package/dist/components/Library/Text/index.js +1 -0
  100. package/dist/components/Library/TextEditor/TextEditor.svelte +15 -9
  101. package/dist/components/Library/TextEditor/TextEditor.svelte.d.ts +2 -4
  102. package/dist/components/Library/TextField/TextField.demo.svelte +1 -1
  103. package/dist/components/Library/TextField/TextField.svelte +21 -18
  104. package/dist/components/Library/TextField/TextField.svelte.d.ts +4 -2
  105. package/dist/components/Library/TextShimmer/TextShimmer.demo.svelte +1 -1
  106. package/dist/components/Library/TimePicker/TimePicker.demo.svelte +10 -2
  107. package/dist/components/Library/TimePicker/TimePicker.svelte +10 -5
  108. package/dist/components/Library/TokenSearchField/TokenSearchField.demo.svelte +4 -2
  109. package/dist/components/Library/TokenSearchField/TokenSearchField.svelte +11 -11
  110. package/dist/components/Library/TokenSearchField/TokenSearchField.svelte.d.ts +2 -1
  111. package/dist/components/Library/WheelPicker/WheelColumn.svelte +183 -126
  112. package/dist/components/Library/WheelPicker/WheelPicker.svelte +4 -4
  113. package/dist/components/Library/WheelPicker/WheelPicker.svelte.d.ts +2 -2
  114. package/dist/components/Library/WheelPicker/index.d.ts +1 -1
  115. package/dist/components/Library/WheelPicker/types.d.ts +6 -0
  116. package/dist/components/Local/ColorStyleControls.svelte +201 -0
  117. package/dist/components/Local/ColorStyleControls.svelte.d.ts +13 -0
  118. package/dist/components/Local/HeroCard.svelte +3 -3
  119. package/dist/components/Local/LayoutStyleControls.svelte +67 -0
  120. package/dist/components/Local/LayoutStyleControls.svelte.d.ts +11 -0
  121. package/dist/components/Local/StyleControls.svelte +48 -124
  122. package/dist/components/Local/StyleControls.svelte.d.ts +7 -5
  123. package/dist/index.d.ts +9 -2
  124. package/dist/index.js +5 -1
  125. package/dist/style/index.css +7 -12
  126. package/dist/style/label.d.ts +2 -1
  127. package/dist/style/label.js +2 -1
  128. package/dist/style/surface.js +4 -0
  129. package/dist/style/text-editor.d.ts +2 -13
  130. package/dist/style/text-editor.js +1 -12
  131. package/dist/style/text.d.ts +26 -0
  132. package/dist/style/text.js +69 -0
  133. package/dist/style/tooltip.d.ts +4 -0
  134. package/dist/style/tooltip.js +1 -0
  135. package/dist/style.css +44 -111
  136. package/package.json +1 -1
  137. package/dist/components/Library/ArticleEditor/Blocks/ImagePreview.svelte +0 -71
  138. package/dist/components/Library/ArticleEditor/Blocks/ImagePreview.svelte.d.ts +0 -8
@@ -0,0 +1,148 @@
1
+ <script module lang="ts">
2
+ type Project = {
3
+ id: number;
4
+ name: string;
5
+ owner: string;
6
+ status: 'Active' | 'Paused' | 'Review';
7
+ budget: number;
8
+ };
9
+
10
+ export const demo = {
11
+ name: 'Table',
12
+ description: 'SwiftUI-style data table with sortable columns and bound selection.',
13
+ columnSpan: 3,
14
+ rowSpan: 3
15
+ };
16
+ </script>
17
+
18
+ <script lang="ts">
19
+ import Table from './index';
20
+ import type { TableSortDescriptor } from './types';
21
+
22
+ const rows: Project[] = [
23
+ { id: 1, name: 'Atlas', owner: 'Mika', status: 'Active', budget: 18200 },
24
+ { id: 2, name: 'Beacon', owner: 'Nia', status: 'Review', budget: 9400 },
25
+ { id: 3, name: 'Canopy', owner: 'Tao', status: 'Paused', budget: 12650 },
26
+ { id: 4, name: 'Drift', owner: 'Ari', status: 'Active', budget: 22100 },
27
+ { id: 5, name: 'Ember', owner: 'Sana', status: 'Review', budget: 15840 },
28
+ { id: 6, name: 'Fjord', owner: 'Leo', status: 'Active', budget: 27600 },
29
+ { id: 7, name: 'Grove', owner: 'Ilya', status: 'Paused', budget: 7300 },
30
+ { id: 8, name: 'Harbor', owner: 'Noor', status: 'Active', budget: 31450 },
31
+ { id: 9, name: 'Ion', owner: 'Mika', status: 'Review', budget: 11900 },
32
+ { id: 10, name: 'Juno', owner: 'Tao', status: 'Active', budget: 19875 },
33
+ { id: 11, name: 'Keystone', owner: 'Ari', status: 'Paused', budget: 14620 },
34
+ { id: 12, name: 'Lumen', owner: 'Nia', status: 'Review', budget: 24880 },
35
+ { id: 13, name: 'Meridian', owner: 'Sana', status: 'Active', budget: 33750 },
36
+ { id: 14, name: 'Nimbus', owner: 'Leo', status: 'Paused', budget: 6800 },
37
+ { id: 15, name: 'Orchid', owner: 'Ilya', status: 'Active', budget: 17340 },
38
+ { id: 16, name: 'Pulse', owner: 'Noor', status: 'Review', budget: 20410 }
39
+ ];
40
+
41
+ let selection = $state<Set<number>>(new Set([1, 4]));
42
+ let sortOrder = $state<TableSortDescriptor<Project>[]>([{ key: 'name', direction: 'ascending' }]);
43
+
44
+ const avatarUrl = (project: Project) =>
45
+ `https://ui-avatars.com/api/?name=${project.name}&size=64&background=18181b&color=fff`;
46
+ </script>
47
+
48
+ {#snippet projectCell(row: Project)}
49
+ <div class="table-demo-project">
50
+ <img class="table-demo-avatar" src={avatarUrl(row)} alt="" />
51
+ <span>{row.name}</span>
52
+ </div>
53
+ {/snippet}
54
+
55
+ {#snippet metaCell(row: Project)}
56
+ <div class="table-demo-meta">
57
+ <span>{row.owner}</span>
58
+ <span>{row.status}</span>
59
+ </div>
60
+ {/snippet}
61
+
62
+ {#snippet statusCell(row: Project)}
63
+ <span class={`table-demo-status table-demo-status-${row.status.toLowerCase()}`}>{row.status}</span
64
+ >
65
+ {/snippet}
66
+
67
+ {#snippet budgetCell(row: Project)}
68
+ {row.budget.toLocaleString(undefined, {
69
+ style: 'currency',
70
+ currency: 'USD',
71
+ maximumFractionDigits: 0
72
+ })}
73
+ {/snippet}
74
+
75
+ <Table data={rows} bind:selection bind:sortOrder selectionMode="multiple">
76
+ <Table.Column label="Project" sortKey="name" sortable minWidth={160}>
77
+ {#snippet cell(project: Project)}
78
+ {@render projectCell(project)}
79
+ {/snippet}
80
+ </Table.Column>
81
+
82
+ <Table.Column label="Meta" colspan={2} minWidth={144}>
83
+ {#snippet cell(project: Project)}
84
+ {@render metaCell(project)}
85
+ {/snippet}
86
+ </Table.Column>
87
+
88
+ <Table.Column label="Status" sortKey="status" sortable minWidth={96}>
89
+ {#snippet cell(project: Project)}
90
+ {@render statusCell(project)}
91
+ {/snippet}
92
+ </Table.Column>
93
+
94
+ <Table.Column label="Budget" sortKey="budget" alignment="trailing" sortable minWidth={104}>
95
+ {#snippet cell(project: Project)}
96
+ {@render budgetCell(project)}
97
+ {/snippet}
98
+ </Table.Column>
99
+ </Table>
100
+
101
+ <style>
102
+ .table-demo-project {
103
+ display: inline-flex;
104
+ align-items: center;
105
+ gap: 0.5rem;
106
+ font-weight: 600;
107
+ }
108
+
109
+ .table-demo-avatar {
110
+ width: 1.75rem;
111
+ height: 1.75rem;
112
+ border-radius: 999px;
113
+ }
114
+
115
+ .table-demo-meta {
116
+ display: grid;
117
+ gap: 0.125rem;
118
+ }
119
+
120
+ .table-demo-meta span:last-child {
121
+ color: var(--sveltely-text-secondary-color);
122
+ font-size: 0.82em;
123
+ }
124
+
125
+ .table-demo-status {
126
+ display: inline-flex;
127
+ align-items: center;
128
+ border-radius: 999px;
129
+ padding: 0.125rem 0.5rem;
130
+ font-size: 0.78em;
131
+ font-weight: 600;
132
+ }
133
+
134
+ .table-demo-status-active {
135
+ background: color-mix(in oklab, #16a34a 16%, transparent);
136
+ color: #166534;
137
+ }
138
+
139
+ .table-demo-status-paused {
140
+ background: color-mix(in oklab, #64748b 16%, transparent);
141
+ color: #334155;
142
+ }
143
+
144
+ .table-demo-status-review {
145
+ background: color-mix(in oklab, #d97706 18%, transparent);
146
+ color: #92400e;
147
+ }
148
+ </style>
@@ -0,0 +1,10 @@
1
+ export declare const demo: {
2
+ name: string;
3
+ description: string;
4
+ columnSpan: number;
5
+ rowSpan: number;
6
+ };
7
+ import Table from './index';
8
+ declare const Table: import("svelte").Component<Record<string, never>, {}, "">;
9
+ type Table = ReturnType<typeof Table>;
10
+ export default Table;