@arbocollab/arbo-plugin-item-table 0.0.1-alpha.2

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/README.md ADDED
@@ -0,0 +1,81 @@
1
+ # @arbocollab/item-table
2
+
3
+ <p align="center">
4
+ <strong>A powerful and reusable Vue 3 component for displaying and managing item data in a feature-rich, infinite-scrolling table.</strong>
5
+ </p>
6
+
7
+ This package provides the `<item-table>` component, a core UI element designed for the Arbo ecosystem. It is built on top of AG-Grid and offers a highly customized and performant solution for handling large datasets with features like infinite scroll, real-time updates, and inline editing.
8
+
9
+ ## ✨ Key Features
10
+
11
+ - **Infinite Scrolling**: Efficiently handles large datasets by loading data in chunks as the user scrolls.
12
+ - **Custom Cell Renderers**: Utilizes `@arbocollab/vue-ag-grid` for seamless integration of Vue components as cell renderers and editors.
13
+ - **State Management with Composables**: Logic is cleanly separated into Vue Composables for managing items, table state, and forms.
14
+ - **Real-time Ready**: Includes mechanisms for refreshing data and responding to external changes.
15
+
16
+ ## Prerequisites
17
+
18
+ This is a package within the `arbo-plugins` pnpm monorepo. Before you begin, ensure you have the following installed at the root of the repository:
19
+
20
+ - [Node.js](https://nodejs.org/) (v18.x or later recommended)
21
+ - [pnpm](https://pnpm.io/) (v9.x or later)
22
+
23
+ ## 🚀 Development & Usage
24
+
25
+ As a package within a monorepo, commands are typically run from the root directory.
26
+
27
+ 1. **Install Dependencies:**
28
+ From the root of the monorepo, run:
29
+
30
+ ```bash
31
+ pnpm install
32
+ ```
33
+
34
+ 2. **Build the Package:**
35
+ To build this specific package for production:
36
+
37
+ ```bash
38
+ # This command runs the "build" script in this package's package.json
39
+ pnpm --filter @arbocollab/item-table build
40
+ ```
41
+
42
+ 3. **Run Storybook:**
43
+ To view and develop this component in isolation, run the root Storybook command:
44
+
45
+ ```bash
46
+ pnpm storybook
47
+ ```
48
+
49
+ 4. **Linting:**
50
+ To run the linter and check for code quality:
51
+ ```bash
52
+ pnpm --filter @arbocollab/item-table lint
53
+ ```
54
+
55
+ ## 📂 Project Structure
56
+
57
+ Here is a brief overview of the key files in this package:
58
+
59
+ ```
60
+ .
61
+ ├── src/
62
+ │ ├── item-table.vue # The main Vue component.
63
+ │ ├── composables/ # Vue Composables for business logic.
64
+ │ │ ├── useItems.ts # Logic for fetching and managing item data.
65
+ │ │ ├── useItemTable.ts # Logic for AG-Grid configuration and state.
66
+ │ │ └── ...
67
+ │ └── index.ts # Main entry point for the package exports.
68
+ ├── vite.config.ts # Vite configuration for the build process.
69
+ └── package.json # Package dependencies and scripts.
70
+ ```
71
+
72
+ ## 🛠️ Tech Stack
73
+
74
+ - **Framework**: [Vue 3](https://vuejs.org/) (Composition API)
75
+ - **Language**: [TypeScript](https://www.typescriptlang.org/)
76
+ - **Data Grid**: [AG-Grid](https://www.ag-grid.com/)
77
+ - **Build Tool**: [Vite](https://vitejs.dev/)
78
+ - **Core Dependencies**:
79
+ - `@arbocollab/ag-grid-ui-components`
80
+ - `@arbocollab/vue-ag-grid`
81
+ - **Monorepo Tools**: [pnpm](https://pnpm.io/) & [Turborepo](https://turbo.build/repo)