@furystack/shades-common-components 10.0.32 → 10.0.35
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.
- package/CHANGELOG.md +14 -100
- package/README.md +227 -0
- package/esm/components/data-grid/body.js.map +1 -1
- package/esm/components/data-grid/data-grid-row.d.ts +1 -1
- package/esm/components/data-grid/data-grid-row.d.ts.map +1 -1
- package/esm/components/data-grid/data-grid-row.js +3 -1
- package/esm/components/data-grid/data-grid-row.js.map +1 -1
- package/esm/components/data-grid/footer.d.ts +4 -6
- package/esm/components/data-grid/footer.d.ts.map +1 -1
- package/esm/components/data-grid/footer.js +4 -1
- package/esm/components/data-grid/footer.js.map +1 -1
- package/package.json +24 -12
- package/src/components/data-grid/body.tsx +1 -1
- package/src/components/data-grid/data-grid-row.tsx +8 -2
- package/src/components/data-grid/footer.tsx +9 -5
- package/readme.md +0 -26
package/CHANGELOG.md
CHANGED
|
@@ -1,113 +1,27 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Changelog
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
3
|
+
## [10.0.35] - 2026-01-26
|
|
5
4
|
|
|
6
|
-
###
|
|
5
|
+
### 🔧 Chores
|
|
7
6
|
|
|
8
|
-
|
|
7
|
+
- Standardized author format, improved keywords, removed obsolete `gitHead`, added `engines` (Node 22+) and `sideEffects: false`
|
|
9
8
|
|
|
10
|
-
|
|
9
|
+
## [10.0.34] - 2026-01-26
|
|
11
10
|
|
|
12
|
-
|
|
11
|
+
### ⬆️ Dependencies
|
|
13
12
|
|
|
14
|
-
|
|
13
|
+
- Updated `@furystack/inject` with fix for singleton injector reference being overwritten by child injectors
|
|
15
14
|
|
|
16
|
-
|
|
15
|
+
## [10.0.33] - 2026-01-22
|
|
17
16
|
|
|
18
|
-
###
|
|
17
|
+
### ⬆️ Dependencies
|
|
19
18
|
|
|
20
|
-
|
|
19
|
+
- Dependency updates
|
|
21
20
|
|
|
22
|
-
###
|
|
21
|
+
### 📚 Documentation
|
|
23
22
|
|
|
24
|
-
|
|
23
|
+
- Added detailed README with component documentation and usage examples
|
|
25
24
|
|
|
26
|
-
|
|
25
|
+
### 🔧 Chores
|
|
27
26
|
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
- **@furystack/shades:** Disposable resources on Shade Components (#165)
|
|
31
|
-
- **@furystack/shades:** Routing based on pathname, add basic unit tests for component factory (#164)
|
|
32
|
-
|
|
33
|
-
- **@furystack/shades:** Routing based on pathname, add basic unit tests for component factory ([#164](https://github.com/furystack/furystack/issues/164)) ([3221e0c](https://github.com/furystack/furystack/commit/3221e0ce60d3532b6e5f570db64d211e479673ec))
|
|
34
|
-
|
|
35
|
-
### 🚀 What's new
|
|
36
|
-
|
|
37
|
-
- **@furystack/shades:** Disposable resources on Shade Components ([#165](https://github.com/furystack/furystack/issues/165)) ([8567e7e](https://github.com/furystack/furystack/commit/8567e7e2e01cec232a5f4448dfc0833c1f183229))
|
|
38
|
-
|
|
39
|
-
### [1.8.3](https://github.com/furystack/furystack/compare/@furystack/shades-common-components@1.8.2...@furystack/shades-common-components@1.8.3) (2021-11-30)
|
|
40
|
-
|
|
41
|
-
**Note:** Version bump only for package @furystack/shades-common-components
|
|
42
|
-
|
|
43
|
-
### [1.8.2](https://github.com/furystack/furystack/compare/@furystack/shades-common-components@1.8.1...@furystack/shades-common-components@1.8.2) (2021-11-29)
|
|
44
|
-
|
|
45
|
-
**Note:** Version bump only for package @furystack/shades-common-components
|
|
46
|
-
|
|
47
|
-
### [1.8.1](https://github.com/furystack/furystack/compare/@furystack/shades-common-components@1.8.0...@furystack/shades-common-components@1.8.1) (2021-11-19)
|
|
48
|
-
|
|
49
|
-
**Note:** Version bump only for package @furystack/shades-common-components
|
|
50
|
-
|
|
51
|
-
## [1.8.0](https://github.com/furystack/furystack/compare/@furystack/shades-common-components@1.7.6...@furystack/shades-common-components@1.8.0) (2021-11-17)
|
|
52
|
-
|
|
53
|
-
### 🚀 What's new
|
|
54
|
-
|
|
55
|
-
- **@furystack/shades-common-components:** improved button theme look and feel ([c117e5e](https://github.com/furystack/furystack/commit/c117e5eaf3fe2cd9553357e06ec6bd6a43cf0f50))
|
|
56
|
-
- **@furystack/shades-common-components:** input theme from provider ([4cdc6bc](https://github.com/furystack/furystack/commit/4cdc6bc60525b04a1aefa4e4a3438db730e63b68))
|
|
57
|
-
|
|
58
|
-
### [1.7.6](https://github.com/furystack/furystack/compare/@furystack/shades-common-components@1.7.5...@furystack/shades-common-components@1.7.6) (2021-11-09)
|
|
59
|
-
|
|
60
|
-
**Note:** Version bump only for package @furystack/shades-common-components
|
|
61
|
-
|
|
62
|
-
### [1.7.5](https://github.com/furystack/furystack/compare/@furystack/shades-common-components@1.7.4...@furystack/shades-common-components@1.7.5) (2021-10-15)
|
|
63
|
-
|
|
64
|
-
**Note:** Version bump only for package @furystack/shades-common-components
|
|
65
|
-
|
|
66
|
-
### [1.7.4](https://github.com/furystack/furystack/compare/@furystack/shades-common-components@1.7.3...@furystack/shades-common-components@1.7.4) (2021-10-05)
|
|
67
|
-
|
|
68
|
-
**Note:** Version bump only for package @furystack/shades-common-components
|
|
69
|
-
|
|
70
|
-
### [1.7.3](https://github.com/furystack/furystack/compare/@furystack/shades-common-components@1.7.2...@furystack/shades-common-components@1.7.3) (2021-09-16)
|
|
71
|
-
|
|
72
|
-
**Note:** Version bump only for package @furystack/shades-common-components
|
|
73
|
-
|
|
74
|
-
### [1.7.2](https://github.com/furystack/furystack/compare/@furystack/shades-common-components@1.7.1...@furystack/shades-common-components@1.7.2) (2021-08-27)
|
|
75
|
-
|
|
76
|
-
**Note:** Version bump only for package @furystack/shades-common-components
|
|
77
|
-
|
|
78
|
-
### [1.7.1](https://github.com/furystack/furystack/compare/@furystack/shades-common-components@1.7.0...@furystack/shades-common-components@1.7.1) (2021-08-19)
|
|
79
|
-
|
|
80
|
-
**Note:** Version bump only for package @furystack/shades-common-components
|
|
81
|
-
|
|
82
|
-
## 1.7.0 (2021-08-19)
|
|
83
|
-
|
|
84
|
-
### 🚀 What's new
|
|
85
|
-
|
|
86
|
-
- **project:** re-added Shades ([#120](https://github.com/furystack/furystack/issues/120)) ([9f58174](https://github.com/furystack/furystack/commit/9f58174b3762fd4e4106f48215a72ec295cf2553))
|
|
87
|
-
- **shades-common-components:** Optional full screen hit list for Command Palette ([0b48022](https://github.com/furystack/furystack/commit/0b48022c14b2d343722f5274010e2e5bc7a18e12))
|
|
88
|
-
|
|
89
|
-
### 🐛 Bug Fixes
|
|
90
|
-
|
|
91
|
-
- **common-components:** DataGrid props ([4ce2b0d](https://github.com/furystack/furystack/commit/4ce2b0d15f3e37387ec955aadc51164ca85b7535))
|
|
92
|
-
|
|
93
|
-
## 1.6.0 (2021-07-31)
|
|
94
|
-
|
|
95
|
-
### 🚀 What's new
|
|
96
|
-
|
|
97
|
-
- **project:** re-added Shades ([#120](https://github.com/furystack/furystack/issues/120)) ([9f58174](https://github.com/furystack/furystack/commit/9f58174b3762fd4e4106f48215a72ec295cf2553))
|
|
98
|
-
- **shades-common-components:** Optional full screen hit list for Command Palette ([0b48022](https://github.com/furystack/furystack/commit/0b48022c14b2d343722f5274010e2e5bc7a18e12))
|
|
99
|
-
|
|
100
|
-
### 🐛 Bug Fixes
|
|
101
|
-
|
|
102
|
-
- **common-components:** DataGrid props ([4ce2b0d](https://github.com/furystack/furystack/commit/4ce2b0d15f3e37387ec955aadc51164ca85b7535))
|
|
103
|
-
|
|
104
|
-
## 1.5.0 (2021-07-30)
|
|
105
|
-
|
|
106
|
-
### 🚀 What's new
|
|
107
|
-
|
|
108
|
-
- **project:** re-added Shades ([#120](https://github.com/furystack/furystack/issues/120)) ([9f58174](https://github.com/furystack/furystack/commit/9f58174b3762fd4e4106f48215a72ec295cf2553))
|
|
109
|
-
- **shades-common-components:** Optional full screen hit list for Command Palette ([0b48022](https://github.com/furystack/furystack/commit/0b48022c14b2d343722f5274010e2e5bc7a18e12))
|
|
110
|
-
|
|
111
|
-
### 🐛 Bug Fixes
|
|
112
|
-
|
|
113
|
-
- **common-components:** DataGrid props ([4ce2b0d](https://github.com/furystack/furystack/commit/4ce2b0d15f3e37387ec955aadc51164ca85b7535))
|
|
27
|
+
- Migrated to centralized changelog management system
|
package/README.md
ADDED
|
@@ -0,0 +1,227 @@
|
|
|
1
|
+
# @furystack/shades-common-components
|
|
2
|
+
|
|
3
|
+
Common and reusable UI components for FuryStack Shades.
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm install @furystack/shades-common-components
|
|
9
|
+
# or
|
|
10
|
+
yarn add @furystack/shades-common-components
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Components
|
|
14
|
+
|
|
15
|
+
### Button
|
|
16
|
+
|
|
17
|
+
A styled button component with contained and outlined variants.
|
|
18
|
+
|
|
19
|
+
```tsx
|
|
20
|
+
import { Button } from '@furystack/shades-common-components'
|
|
21
|
+
|
|
22
|
+
// Contained button (default)
|
|
23
|
+
<Button onclick={() => console.log('Clicked!')}>Click me</Button>
|
|
24
|
+
|
|
25
|
+
// Outlined button
|
|
26
|
+
<Button variant="outlined" color="primary">Outlined</Button>
|
|
27
|
+
|
|
28
|
+
// Disabled button
|
|
29
|
+
<Button disabled>Disabled</Button>
|
|
30
|
+
|
|
31
|
+
// With color
|
|
32
|
+
<Button variant="contained" color="error">Delete</Button>
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
### Input
|
|
36
|
+
|
|
37
|
+
A styled text input with validation support.
|
|
38
|
+
|
|
39
|
+
```tsx
|
|
40
|
+
import { Input } from '@furystack/shades-common-components'
|
|
41
|
+
|
|
42
|
+
// Basic input
|
|
43
|
+
<Input
|
|
44
|
+
labelTitle="Username"
|
|
45
|
+
placeholder="Enter your username"
|
|
46
|
+
onTextChange={(value) => console.log(value)}
|
|
47
|
+
/>
|
|
48
|
+
|
|
49
|
+
// With validation
|
|
50
|
+
<Input
|
|
51
|
+
labelTitle="Email"
|
|
52
|
+
type="email"
|
|
53
|
+
required
|
|
54
|
+
variant="outlined"
|
|
55
|
+
getValidationResult={({ state }) => {
|
|
56
|
+
if (!state.value.includes('@')) {
|
|
57
|
+
return { isValid: false, message: 'Please enter a valid email' }
|
|
58
|
+
}
|
|
59
|
+
return { isValid: true }
|
|
60
|
+
}}
|
|
61
|
+
/>
|
|
62
|
+
|
|
63
|
+
// Contained variant
|
|
64
|
+
<Input
|
|
65
|
+
labelTitle="Password"
|
|
66
|
+
type="password"
|
|
67
|
+
variant="contained"
|
|
68
|
+
defaultColor="primary"
|
|
69
|
+
/>
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
### Modal
|
|
73
|
+
|
|
74
|
+
A modal dialog component.
|
|
75
|
+
|
|
76
|
+
```tsx
|
|
77
|
+
import { Modal } from '@furystack/shades-common-components'
|
|
78
|
+
import { ObservableValue } from '@furystack/utils'
|
|
79
|
+
|
|
80
|
+
const isVisible = new ObservableValue(false)
|
|
81
|
+
|
|
82
|
+
<Button onclick={() => isVisible.setValue(true)}>Open Modal</Button>
|
|
83
|
+
|
|
84
|
+
<Modal
|
|
85
|
+
isVisible={isVisible}
|
|
86
|
+
onClose={() => isVisible.setValue(false)}
|
|
87
|
+
backdropStyle={{ background: 'rgba(0, 0, 0, 0.5)' }}
|
|
88
|
+
>
|
|
89
|
+
<div onclick={(e) => e.stopPropagation()}>
|
|
90
|
+
<h2>Modal Title</h2>
|
|
91
|
+
<p>Modal content goes here</p>
|
|
92
|
+
<Button onclick={() => isVisible.setValue(false)}>Close</Button>
|
|
93
|
+
</div>
|
|
94
|
+
</Modal>
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
### DataGrid
|
|
98
|
+
|
|
99
|
+
A data grid component for displaying tabular data.
|
|
100
|
+
|
|
101
|
+
```tsx
|
|
102
|
+
import { DataGrid, CollectionService } from '@furystack/shades-common-components'
|
|
103
|
+
import { ObservableValue } from '@furystack/utils'
|
|
104
|
+
|
|
105
|
+
type User = { id: number; name: string; email: string }
|
|
106
|
+
|
|
107
|
+
const collectionService = new CollectionService<User>({ /* options */ })
|
|
108
|
+
const findOptions = new ObservableValue({ top: 10, skip: 0 })
|
|
109
|
+
|
|
110
|
+
<DataGrid<User, 'name' | 'email'>
|
|
111
|
+
columns={['name', 'email']}
|
|
112
|
+
collectionService={collectionService}
|
|
113
|
+
findOptions={findOptions}
|
|
114
|
+
headerComponents={{
|
|
115
|
+
name: () => <span>Name</span>,
|
|
116
|
+
email: () => <span>Email</span>,
|
|
117
|
+
}}
|
|
118
|
+
rowComponents={{
|
|
119
|
+
name: (user) => <span>{user.name}</span>,
|
|
120
|
+
email: (user) => <span>{user.email}</span>,
|
|
121
|
+
}}
|
|
122
|
+
styles={{ container: { minHeight: '400px' } }}
|
|
123
|
+
/>
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
### AppBar
|
|
127
|
+
|
|
128
|
+
A top navigation bar component.
|
|
129
|
+
|
|
130
|
+
```tsx
|
|
131
|
+
import { AppBar, AppBarLink } from '@furystack/shades-common-components'
|
|
132
|
+
;<AppBar>
|
|
133
|
+
<h1>My App</h1>
|
|
134
|
+
<AppBarLink href="/">Home</AppBarLink>
|
|
135
|
+
<AppBarLink href="/about">About</AppBarLink>
|
|
136
|
+
</AppBar>
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
### Tabs
|
|
140
|
+
|
|
141
|
+
A tabbed interface component.
|
|
142
|
+
|
|
143
|
+
```tsx
|
|
144
|
+
import { Tabs } from '@furystack/shades-common-components'
|
|
145
|
+
;<Tabs
|
|
146
|
+
tabs={[
|
|
147
|
+
{ header: <span>Tab 1</span>, component: <div>Content 1</div> },
|
|
148
|
+
{ header: <span>Tab 2</span>, component: <div>Content 2</div> },
|
|
149
|
+
]}
|
|
150
|
+
/>
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
### Loader
|
|
154
|
+
|
|
155
|
+
A loading spinner component.
|
|
156
|
+
|
|
157
|
+
```tsx
|
|
158
|
+
import { Loader } from '@furystack/shades-common-components'
|
|
159
|
+
;<Loader />
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
### Paper
|
|
163
|
+
|
|
164
|
+
A container component with elevation.
|
|
165
|
+
|
|
166
|
+
```tsx
|
|
167
|
+
import { Paper } from '@furystack/shades-common-components'
|
|
168
|
+
;<Paper>
|
|
169
|
+
<p>Content with elevated background</p>
|
|
170
|
+
</Paper>
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
### Avatar
|
|
174
|
+
|
|
175
|
+
An avatar component for displaying user images or initials.
|
|
176
|
+
|
|
177
|
+
```tsx
|
|
178
|
+
import { Avatar } from '@furystack/shades-common-components'
|
|
179
|
+
;<Avatar userName="John Doe" />
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
### FAB (Floating Action Button)
|
|
183
|
+
|
|
184
|
+
A floating action button component.
|
|
185
|
+
|
|
186
|
+
```tsx
|
|
187
|
+
import { Fab } from '@furystack/shades-common-components'
|
|
188
|
+
;<Fab onclick={() => console.log('FAB clicked')}>+</Fab>
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
## Services
|
|
192
|
+
|
|
193
|
+
### CollectionService
|
|
194
|
+
|
|
195
|
+
A service for managing collections of data with pagination, sorting, and filtering.
|
|
196
|
+
|
|
197
|
+
```tsx
|
|
198
|
+
import { CollectionService } from '@furystack/shades-common-components'
|
|
199
|
+
|
|
200
|
+
const service = new CollectionService<MyModel>({
|
|
201
|
+
loader: async (options) => {
|
|
202
|
+
const response = await fetch('/api/items', {
|
|
203
|
+
/* ... */
|
|
204
|
+
})
|
|
205
|
+
return response.json()
|
|
206
|
+
},
|
|
207
|
+
})
|
|
208
|
+
|
|
209
|
+
// Subscribe to data changes
|
|
210
|
+
service.data.subscribe((items) => {
|
|
211
|
+
console.log('Items updated:', items)
|
|
212
|
+
})
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
### ThemeProviderService
|
|
216
|
+
|
|
217
|
+
Provides theming capabilities for all components.
|
|
218
|
+
|
|
219
|
+
```tsx
|
|
220
|
+
import { ThemeProviderService } from '@furystack/shades-common-components'
|
|
221
|
+
|
|
222
|
+
// Get the theme provider instance from the injector
|
|
223
|
+
const themeProvider = injector.getInstance(ThemeProviderService)
|
|
224
|
+
|
|
225
|
+
// Access theme properties
|
|
226
|
+
const primaryColor = themeProvider.theme.palette.primary.main
|
|
227
|
+
```
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"body.js","sourceRoot":"","sources":["../../../src/components/data-grid/body.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAE1D,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAkBhD,MAAM,CAAC,MAAM,YAAY,GAGD,KAAK,
|
|
1
|
+
{"version":3,"file":"body.js","sourceRoot":"","sources":["../../../src/components/data-grid/body.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAE1D,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAkBhD,MAAM,CAAC,MAAM,YAAY,GAGD,KAAK,CAAC;IAC5B,aAAa,EAAE,sBAAsB;IACrC,WAAW,EAAE,uBAAuB;IACpC,eAAe,EAAE,OAAO;IACxB,KAAK,EAAE;QACL,OAAO,EAAE,iBAAiB;KAC3B;IACD,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,EAAE;QACnC,MAAM,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAExD,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;YAC3B,OAAO,KAAK,CAAC,cAAc,IAAI,6CAAwB,CAAA;QACzD,CAAC;QAED,OAAO,CACL,uCACG,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAC7B,gBAAC,WAAW,IACV,OAAO,EAAE,KAAK,CAAC,OAAO,EACtB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,KAAK,CAAC,OAAO,EACtB,aAAa,EAAE,KAAK,CAAC,aAAa,EAClC,UAAU,EAAE,KAAK,CAAC,UAAU,EAC5B,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,EACxC,eAAe,EAAE,KAAK,CAAC,eAAe,EACtC,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,EAC1C,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,EACxC,kBAAkB,EAAE,KAAK,CAAC,kBAAkB,GAC/B,CAChB,CAAC,CACD,CACJ,CAAA;IACH,CAAC;CACF,CAAC,CAAA"}
|
|
@@ -3,7 +3,7 @@ import type { CollectionService } from '../../services/collection-service.js';
|
|
|
3
3
|
import type { DataRowCells } from './data-grid.js';
|
|
4
4
|
export interface DataGridRowProps<T, Column extends string> {
|
|
5
5
|
entry: T;
|
|
6
|
-
columns:
|
|
6
|
+
columns: Column[];
|
|
7
7
|
service: CollectionService<T>;
|
|
8
8
|
rowComponents?: DataRowCells<T, Column>;
|
|
9
9
|
onRowClick?: (row: T, event: MouseEvent) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-grid-row.d.ts","sourceRoot":"","sources":["../../../src/components/data-grid/data-grid-row.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAErD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAA;AAC7E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAElD,MAAM,WAAW,gBAAgB,CAAC,CAAC,EAAE,MAAM,SAAS,MAAM;IACxD,KAAK,EAAE,CAAC,CAAA;IACR,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"data-grid-row.d.ts","sourceRoot":"","sources":["../../../src/components/data-grid/data-grid-row.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAErD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAA;AAC7E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAElD,MAAM,WAAW,gBAAgB,CAAC,CAAC,EAAE,MAAM,SAAS,MAAM;IACxD,KAAK,EAAE,CAAC,CAAA;IACR,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAA;IAC7B,aAAa,CAAC,EAAE,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;IACvC,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,KAAK,IAAI,CAAA;IAChD,gBAAgB,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,KAAK,IAAI,CAAA;IACtD,eAAe,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAA;IAC9C,gBAAgB,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAA;IAC/C,iBAAiB,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAA;IAChD,kBAAkB,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAA;CAClD;AAED,eAAO,MAAM,WAAW,EAAE,CAAC,CAAC,EAAE,MAAM,SAAS,MAAM,EACjD,KAAK,EAAE,gBAAgB,CAAC,CAAC,EAAE,MAAM,CAAC,EAClC,QAAQ,EAAE,YAAY,KACnB,GAAG,CAAC,OAAO,CAAC,GAAG,CAsIlB,CAAA"}
|
|
@@ -100,7 +100,9 @@ export const DataGridRow = Shade({
|
|
|
100
100
|
fontSize: '0.875rem',
|
|
101
101
|
lineHeight: '1.5',
|
|
102
102
|
}, onclick: (ev) => props.onRowClick?.(entry, ev), ondblclick: (ev) => props.onRowDoubleClick?.(entry, ev) }, rowComponents?.[column]?.(entry, { selection, focus }) ||
|
|
103
|
-
rowComponents?.default?.(entry, { selection, focus }) || createComponent("span", null, entry
|
|
103
|
+
rowComponents?.default?.(entry, { selection, focus }) || (createComponent("span", null, typeof entry === 'object' && entry && column in entry
|
|
104
|
+
? entry[column]
|
|
105
|
+
: null)))))));
|
|
104
106
|
},
|
|
105
107
|
});
|
|
106
108
|
//# sourceMappingURL=data-grid-row.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-grid-row.js","sourceRoot":"","sources":["../../../src/components/data-grid/data-grid-row.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"data-grid-row.js","sourceRoot":"","sources":["../../../src/components/data-grid/data-grid-row.tsx"],"names":[],"mappings":"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"}
|
|
@@ -2,10 +2,8 @@ import type { FindOptions } from '@furystack/core';
|
|
|
2
2
|
import type { ObservableValue } from '@furystack/utils';
|
|
3
3
|
import type { CollectionService } from '../../services/collection-service.js';
|
|
4
4
|
export declare const dataGridItemsPerPage: number[];
|
|
5
|
-
export declare const DataGridFooter: (props: {
|
|
6
|
-
service: CollectionService<
|
|
7
|
-
findOptions: ObservableValue<FindOptions<
|
|
8
|
-
}
|
|
9
|
-
style?: Partial<CSSStyleDeclaration>;
|
|
10
|
-
}, children?: import("@furystack/shades").ChildrenList) => JSX.Element;
|
|
5
|
+
export declare const DataGridFooter: <T>(props: {
|
|
6
|
+
service: CollectionService<T>;
|
|
7
|
+
findOptions: ObservableValue<FindOptions<T, Array<keyof T>>>;
|
|
8
|
+
}) => JSX.Element;
|
|
11
9
|
//# sourceMappingURL=footer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"footer.d.ts","sourceRoot":"","sources":["../../../src/components/data-grid/footer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAElD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAA;AAG7E,eAAO,MAAM,oBAAoB,UAAkC,CAAA;AAEnE,eAAO,MAAM,cAAc;
|
|
1
|
+
{"version":3,"file":"footer.d.ts","sourceRoot":"","sources":["../../../src/components/data-grid/footer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAElD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAA;AAG7E,eAAO,MAAM,oBAAoB,UAAkC,CAAA;AAEnE,eAAO,MAAM,cAAc,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE;IACtC,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAA;IAC7B,WAAW,EAAE,eAAe,CAAC,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;CAC7D,KAAK,GAAG,CAAC,OA8ER,CAAA"}
|
|
@@ -16,6 +16,9 @@ export const DataGridFooter = Shade({
|
|
|
16
16
|
const skip = currentOptions.skip || 0;
|
|
17
17
|
const currentPage = Math.ceil(skip) / (top || 1);
|
|
18
18
|
const currentEntriesPerPage = top;
|
|
19
|
+
const pages = new Array(Math.ceil(currentData.count / (currentOptions.top || Infinity)))
|
|
20
|
+
.fill(0)
|
|
21
|
+
.map((_, index) => index);
|
|
19
22
|
return (createComponent("div", { className: "pager", style: {
|
|
20
23
|
backdropFilter: 'blur(10px)',
|
|
21
24
|
color: theme.text.secondary,
|
|
@@ -31,7 +34,7 @@ export const DataGridFooter = Shade({
|
|
|
31
34
|
createComponent("select", { style: { margin: '0 1em' }, onchange: (ev) => {
|
|
32
35
|
const value = parseInt(ev.target.value, 10);
|
|
33
36
|
setCurrentOptions({ ...currentOptions, skip: (currentOptions.top || 0) * value });
|
|
34
|
-
} },
|
|
37
|
+
} }, pages.map((index) => (createComponent("option", { value: index.toString(), selected: currentPage === index }, (index + 1).toString())))))),
|
|
35
38
|
createComponent("div", null,
|
|
36
39
|
"Show",
|
|
37
40
|
createComponent("select", { style: { margin: '0 1em' }, onchange: (ev) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"footer.js","sourceRoot":"","sources":["../../../src/components/data-grid/footer.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAG1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAA;AAE/E,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAA;AAEnE,MAAM,CAAC,MAAM,cAAc,
|
|
1
|
+
{"version":3,"file":"footer.js","sourceRoot":"","sources":["../../../src/components/data-grid/footer.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,46 +1,58 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@furystack/shades-common-components",
|
|
3
|
-
"version": "10.0.
|
|
4
|
-
"description": "",
|
|
3
|
+
"version": "10.0.35",
|
|
4
|
+
"description": "Common UI components for FuryStack Shades",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"scripts": {
|
|
7
|
-
"build
|
|
7
|
+
"build": "tsc --outDir ./esm"
|
|
8
8
|
},
|
|
9
9
|
"exports": {
|
|
10
10
|
".": {
|
|
11
|
+
"types": "./esm/index.d.ts",
|
|
11
12
|
"import": "./esm/index.js"
|
|
12
13
|
}
|
|
13
14
|
},
|
|
14
15
|
"files": [
|
|
15
16
|
"esm",
|
|
16
|
-
"types",
|
|
17
17
|
"src"
|
|
18
18
|
],
|
|
19
|
+
"repository": {
|
|
20
|
+
"type": "git",
|
|
21
|
+
"url": "https://github.com/furystack/furystack.git"
|
|
22
|
+
},
|
|
19
23
|
"keywords": [
|
|
20
24
|
"FuryStack",
|
|
21
25
|
"Shades",
|
|
26
|
+
"UI components",
|
|
22
27
|
"Input",
|
|
23
28
|
"Button",
|
|
24
|
-
"
|
|
29
|
+
"DataGrid",
|
|
25
30
|
"AppBar",
|
|
26
31
|
"Autocomplete"
|
|
27
32
|
],
|
|
28
33
|
"publishConfig": {
|
|
29
34
|
"access": "public"
|
|
30
35
|
},
|
|
31
|
-
"author": "gallay.lajos@gmail.com",
|
|
36
|
+
"author": "Gallay Lajos <gallay.lajos@gmail.com>",
|
|
32
37
|
"license": "GPL-2.0",
|
|
38
|
+
"bugs": {
|
|
39
|
+
"url": "https://github.com/furystack/furystack/issues"
|
|
40
|
+
},
|
|
41
|
+
"homepage": "https://github.com/furystack/furystack",
|
|
33
42
|
"devDependencies": {
|
|
34
43
|
"typescript": "^5.9.3",
|
|
35
|
-
"vitest": "^4.0.
|
|
44
|
+
"vitest": "^4.0.17"
|
|
36
45
|
},
|
|
37
46
|
"dependencies": {
|
|
38
|
-
"@furystack/core": "^15.0.
|
|
39
|
-
"@furystack/inject": "^12.0.
|
|
40
|
-
"@furystack/shades": "^11.0.
|
|
41
|
-
"@furystack/utils": "^8.1.
|
|
47
|
+
"@furystack/core": "^15.0.34",
|
|
48
|
+
"@furystack/inject": "^12.0.28",
|
|
49
|
+
"@furystack/shades": "^11.0.35",
|
|
50
|
+
"@furystack/utils": "^8.1.9",
|
|
42
51
|
"path-to-regexp": "^8.3.0",
|
|
43
52
|
"semaphore-async-await": "^1.5.1"
|
|
44
53
|
},
|
|
45
|
-
"
|
|
54
|
+
"engines": {
|
|
55
|
+
"node": ">=22.0.0"
|
|
56
|
+
},
|
|
57
|
+
"sideEffects": false
|
|
46
58
|
}
|
|
@@ -22,7 +22,7 @@ export interface DataGridBodyProps<T, Column extends string> {
|
|
|
22
22
|
export const DataGridBody: <T, Column extends string>(
|
|
23
23
|
props: DataGridBodyProps<T, Column>,
|
|
24
24
|
children: ChildrenList,
|
|
25
|
-
) => JSX.Element<any> = Shade
|
|
25
|
+
) => JSX.Element<any> = Shade({
|
|
26
26
|
shadowDomName: 'shade-data-grid-body',
|
|
27
27
|
elementBase: HTMLTableSectionElement,
|
|
28
28
|
elementBaseName: 'tbody',
|
|
@@ -5,7 +5,7 @@ import type { DataRowCells } from './data-grid.js'
|
|
|
5
5
|
|
|
6
6
|
export interface DataGridRowProps<T, Column extends string> {
|
|
7
7
|
entry: T
|
|
8
|
-
columns:
|
|
8
|
+
columns: Column[]
|
|
9
9
|
service: CollectionService<T>
|
|
10
10
|
rowComponents?: DataRowCells<T, Column>
|
|
11
11
|
onRowClick?: (row: T, event: MouseEvent) => void
|
|
@@ -141,7 +141,13 @@ export const DataGridRow: <T, Column extends string>(
|
|
|
141
141
|
ondblclick={(ev) => props.onRowDoubleClick?.(entry, ev)}
|
|
142
142
|
>
|
|
143
143
|
{rowComponents?.[column]?.(entry, { selection, focus }) ||
|
|
144
|
-
rowComponents?.default?.(entry, { selection, focus }) ||
|
|
144
|
+
rowComponents?.default?.(entry, { selection, focus }) || (
|
|
145
|
+
<span>
|
|
146
|
+
{typeof entry === 'object' && entry && column in entry
|
|
147
|
+
? (entry as Record<typeof column, unknown>)[column]
|
|
148
|
+
: null}
|
|
149
|
+
</span>
|
|
150
|
+
)}
|
|
145
151
|
</td>
|
|
146
152
|
))}
|
|
147
153
|
</>
|
|
@@ -6,10 +6,10 @@ import { ThemeProviderService } from '../../services/theme-provider-service.js'
|
|
|
6
6
|
|
|
7
7
|
export const dataGridItemsPerPage = [10, 20, 25, 50, 100, Infinity]
|
|
8
8
|
|
|
9
|
-
export const DataGridFooter
|
|
10
|
-
service: CollectionService<
|
|
11
|
-
findOptions: ObservableValue<FindOptions<
|
|
12
|
-
}
|
|
9
|
+
export const DataGridFooter: <T>(props: {
|
|
10
|
+
service: CollectionService<T>
|
|
11
|
+
findOptions: ObservableValue<FindOptions<T, Array<keyof T>>>
|
|
12
|
+
}) => JSX.Element = Shade({
|
|
13
13
|
shadowDomName: 'shade-data-grid-footer',
|
|
14
14
|
render: ({ props, injector, useObservable }) => {
|
|
15
15
|
const { theme } = injector.getInstance(ThemeProviderService)
|
|
@@ -27,6 +27,10 @@ export const DataGridFooter = Shade<{
|
|
|
27
27
|
const currentPage = Math.ceil(skip) / (top || 1)
|
|
28
28
|
const currentEntriesPerPage = top
|
|
29
29
|
|
|
30
|
+
const pages = new Array(Math.ceil(currentData.count / (currentOptions.top || Infinity)))
|
|
31
|
+
.fill(0)
|
|
32
|
+
.map((_, index) => index)
|
|
33
|
+
|
|
30
34
|
return (
|
|
31
35
|
<div
|
|
32
36
|
className="pager"
|
|
@@ -51,7 +55,7 @@ export const DataGridFooter = Shade<{
|
|
|
51
55
|
setCurrentOptions({ ...currentOptions, skip: (currentOptions.top || 0) * value })
|
|
52
56
|
}}
|
|
53
57
|
>
|
|
54
|
-
{
|
|
58
|
+
{pages.map((index) => (
|
|
55
59
|
<option value={index.toString()} selected={currentPage === index}>
|
|
56
60
|
{(index + 1).toString()}
|
|
57
61
|
</option>
|
package/readme.md
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
## @furystack/shades-common-components
|
|
2
|
-
|
|
3
|
-
Some common and reusable components for FuryStack Shades
|
|
4
|
-
|
|
5
|
-
### Component list
|
|
6
|
-
|
|
7
|
-
- Command Palette
|
|
8
|
-
- Data Grid
|
|
9
|
-
- Suggest
|
|
10
|
-
- Suggestion
|
|
11
|
-
- Animations
|
|
12
|
-
- AppBar
|
|
13
|
-
- AutoComplete
|
|
14
|
-
- Avatar
|
|
15
|
-
- Button
|
|
16
|
-
- FAB
|
|
17
|
-
- Grid
|
|
18
|
-
- Input
|
|
19
|
-
- Loader
|
|
20
|
-
- Modal
|
|
21
|
-
- Paper
|
|
22
|
-
- Tabs
|
|
23
|
-
|
|
24
|
-
### Custom Services
|
|
25
|
-
|
|
26
|
-
- CollectionService
|