Skip to content

Commit f6afbd7

Browse files
committed
chore: release v0.1.7 - add exportable prop and AI-native integration
1 parent 877211e commit f6afbd7

File tree

48 files changed

+609
-186
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+609
-186
lines changed

.npmignore

Lines changed: 0 additions & 33 deletions
This file was deleted.

CHANGELOG.md

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,19 @@
55

66
---
77

8-
## [0.1.7] — March 12, 2026 🐛
8+
## [0.1.7] — March 13, 2026 🐛✨
9+
10+
### Added
11+
- **`exportable` Property**: Added `exportable?: boolean` to `GridColDef`. This allows excluding specific columns (like action buttons, menus, or images) from all export formats (CSV, Excel, JSON, and Print).
12+
- **AI-Native Integration**: The published npm package now includes raw source code (`lib/`) and full documentation (`docs/`). This allows AI agents (Cursor, Windsurf, Copilot) to "see" the implementation patterns and documentation inside `node_modules`, leading to significantly better code generation for downstream users.
913

1014
### Fixed
1115
- Fixed an issue where the main wrapper `className` would erroneously include extra whitespace (e.g. `ogx `) when no optional classes were active.
1216
- Fixed an issue where `onRowOrderChange` drag-and-drop visuals didn't actually update in the `EventsDemo` component examples because it was referencing a static array instead of React State.
17+
- Corrected a TypeScript regression where `headerClassName` comment structure was accidentally broken during the previous update.
18+
19+
### Changed
20+
- Refined the npm package publication files: `docs/research` and `docs/assets` (large binary images) are now excluded to keep the package size lean while retaining all high-value documentation for humans and AI.
1321

1422

1523
## [0.1.6] — March 12, 2026 🎨

README.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,9 +77,18 @@ export default function App() {
7777
- **Clipboard**: `Ctrl+C` / `Cmd+C` copies selected rows as TSV for Excel/Sheets.
7878
- **Accessibility**: WCAG 2.1 AA — full ARIA roles and keyboard navigation.
7979
- **Theming**: CSS variable API with 5 built-in themes + custom theme support.
80+
- **AI-Native Integration**: Shipped with raw `lib/` source and `docs/` inside the npm package, allowing AI agents (Cursor, Copilot, Windsurf) to flawlessly implement features by "seeing" the internal logic.
8081

8182
---
8283

84+
## 🤖 AI-Powered Implementation
85+
86+
OpenGridX is built for the era of AI-native development. When you install `@opencorestack/opengridx`, we include the full raw source code and markdown documentation in your `node_modules`.
87+
88+
This means that **Cursor**, **GitHub Copilot**, **Windsurf**, and other AI agents can read the actual implementation patterns and docs to accurately help you build complex features like server-side tree data or pivot tables without guessing.
89+
90+
> **Tip for Cursor/Copilot users:** If your AI is struggling, tell it to "Read the docs and source in `./node_modules/@opencorestack/opengridx/docs`" for instant context.
91+
8392
## 📐 API Reference
8493

8594
### Core Props

demo/App.css

Lines changed: 123 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,47 @@
1+
.app-root {
2+
display: flex;
3+
flex-direction: column;
4+
min-height: 100vh;
5+
font-family: "Inter", system-ui, sans-serif;
6+
}
7+
8+
.app-top-header {
9+
height: 60px;
10+
background: #fff;
11+
border-bottom: 1px solid #e0e0e0;
12+
display: flex;
13+
align-items: center;
14+
justify-content: space-between;
15+
padding: 0 24px;
16+
position: sticky;
17+
top: 0;
18+
z-index: 50;
19+
}
20+
21+
.app-github-link {
22+
display: flex;
23+
align-items: center;
24+
gap: 8px;
25+
color: #374151;
26+
text-decoration: none;
27+
font-weight: 500;
28+
font-size: 0.9rem;
29+
padding: 6px 12px;
30+
border-radius: 6px;
31+
transition: background 0.2s;
32+
}
33+
34+
.app-github-link:hover {
35+
background: #f3f4f6;
36+
color: #111827;
37+
}
38+
139
/* App Container */
240
.app-container {
341
display: flex;
4-
min-height: 100vh;
542
flex-direction: row;
643
width: 100%;
7-
font-family: "Inter", system-ui, sans-serif;
44+
flex: 1;
845
}
946

1047
/* Navigation Sidebar */
@@ -26,7 +63,6 @@
2663
display: flex;
2764
align-items: center;
2865
gap: 12px;
29-
margin: 0 0 16px 8px;
3066
}
3167

3268
.app-logo {
@@ -94,11 +130,92 @@
94130

95131
/* Main Content Area */
96132
.app-main-content {
97-
overflow: auto;
98133
background: #fff;
99134
flex: 1;
100-
max-height: 100vh;
101-
height: 100vh;
135+
overflow-y: auto;
136+
height: calc(100vh - 60px);
137+
}
138+
139+
.app-page-wrapper {
140+
display: flex;
141+
flex-direction: row;
142+
width: 100%;
143+
max-width: 100%;
144+
}
145+
146+
.app-content-column {
147+
flex: 1;
148+
min-width: 0;
149+
padding-right: 24px;
150+
}
151+
152+
/* Base Headings within app content area for TOC generation */
153+
.app-content-column h2 {
154+
margin-top: 36px;
155+
margin-bottom: 16px;
156+
border-bottom: 1px solid #e2e8f0;
157+
padding-bottom: 8px;
158+
}
159+
160+
.app-content-column h3 {
161+
margin-top: 24px;
162+
margin-bottom: 12px;
163+
}
164+
165+
/* Table of Contents Sidebar */
166+
.app-toc-sidebar {
167+
width: 240px;
168+
padding: 32px 24px;
169+
position: sticky;
170+
top: 0;
171+
height: calc(100vh - 60px);
172+
overflow-y: auto;
173+
border-left: 1px solid #e0e0e0;
174+
background: #fafafa;
175+
flex-shrink: 0;
176+
}
177+
178+
.toc-title {
179+
font-size: 0.75rem;
180+
text-transform: uppercase;
181+
color: #9ca3af;
182+
font-weight: 700;
183+
letter-spacing: 0.05em;
184+
margin: 0 0 12px 0;
185+
}
186+
187+
.toc-list {
188+
list-style: none;
189+
margin: 0;
190+
padding: 0;
191+
display: flex;
192+
flex-direction: column;
193+
gap: 4px;
194+
}
195+
196+
.toc-item.toc-level-2 { margin-left: 0; }
197+
.toc-item.toc-level-3 { margin-left: 12px; }
198+
199+
.toc-link {
200+
display: block;
201+
color: #64748b;
202+
text-decoration: none;
203+
font-size: 0.85rem;
204+
padding: 4px 8px;
205+
border-radius: 4px;
206+
transition: all 0.2s;
207+
line-height: 1.4;
208+
}
209+
210+
.toc-link:hover {
211+
color: #0f172a;
212+
background: #f1f5f9;
213+
}
214+
215+
.toc-link.active {
216+
color: #4f46e5;
217+
background: #e0e7ff;
218+
font-weight: 500;
102219
}
103220

104221
/* Demo Loading Skeleton */

0 commit comments

Comments
 (0)