@1771technologies/lytenyte-pro 2.0.0 → 2.0.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.
Files changed (32) hide show
  1. package/README.md +52 -31
  2. package/SECURITY.md +22 -0
  3. package/css/components.css +4 -4
  4. package/css/grid.css +1 -1
  5. package/dist/__play__/alpha.play.d.ts +1 -0
  6. package/dist/__play__/alpha.play.js +3 -3
  7. package/dist/__play__/basic-server-data/page-data.d.ts +16 -0
  8. package/dist/__play__/basic-server-data/page-data.js +21002 -0
  9. package/dist/__play__/basic-server-data/page-server.d.ts +31 -0
  10. package/dist/__play__/basic-server-data/page-server.js +25 -0
  11. package/dist/__play__/paginated.play.d.ts +7 -0
  12. package/dist/__play__/paginated.play.js +48 -0
  13. package/dist/cell-selection/cell-selection-driver/use-cell-focus-change.d.ts +1 -2
  14. package/dist/cell-selection/cell-style-row.d.ts +1 -1
  15. package/dist/cell-selection/cell-style-row.js +1 -1
  16. package/dist/cell-selection/index.d.ts +0 -2
  17. package/dist/cell-selection/index.js +0 -2
  18. package/dist/cell-selection/split-cell-selection-rect.d.ts +1 -7
  19. package/dist/cell-selection/split-cell-selection-rect.js +2 -6
  20. package/dist/cell-selection/update-additive-cell-selection.d.ts +1 -1
  21. package/dist/components/column-manager/column-manager.d.ts +1 -1
  22. package/dist/components/column-manager/column-manager.js +30 -10
  23. package/dist/components/pill-manager/pill-manager.play.d.ts +1 -0
  24. package/dist/components/pill-manager/pill-manager.play.js +3 -2
  25. package/dist/components/smart-select/root.js +1 -1
  26. package/dist/components/tree-view/root.js +1 -0
  27. package/dist/data-source-client/hooks/use-flattened-groups.js +1 -1
  28. package/dist/root/root.js +1 -1
  29. package/dist/types/grid.d.ts +0 -1
  30. package/package.json +6 -5
  31. package/dist/cell-selection/split-on-pivot.d.ts +0 -3
  32. package/dist/cell-selection/split-on-pivot.js +0 -50
package/README.md CHANGED
@@ -1,32 +1,29 @@
1
1
  <div align="center">
2
2
  <br><br>
3
3
  <picture>
4
- <source media="(prefers-color-scheme: dark)" srcset="https://xwhoymbxqtnizjadugph.supabase.co/storage/v1/object/public/images//github-lytenyte-dark.svg"/>
5
- <source media="(prefers-color-scheme: light)" srcset="https://xwhoymbxqtnizjadugph.supabase.co/storage/v1/object/public/images//github-lytenyte-light.svg"/>
6
- <img width="360" alt="Logo of LyteNyte Grid" src="https://xwhoymbxqtnizjadugph.supabase.co/storage/v1/object/public/images//github-lytenyte-dark.svg"/>
4
+ <source media="(prefers-color-scheme: dark)" srcset="https://xwhoymbxqtnizjadugph.supabase.co/storage/v1/object/public/images/github-lytenyte-dark.svg"/>
5
+ <source media="(prefers-color-scheme: light)" srcset="https://xwhoymbxqtnizjadugph.supabase.co/storage/v1/object/public/images/github-lytenyte-light.svg"/>
6
+ <img width="360" alt="Logo of LyteNyte Grid" src="https://xwhoymbxqtnizjadugph.supabase.co/storage/v1/object/public/images/github-lytenyte-light.svg"/>
7
7
  </picture>
8
8
  <br><br>
9
9
 
10
10
  <h3>
11
- The Fastest React Data Grid Available on the Modern Web
11
+ The Fastest React Data Grid On The Modern Web
12
12
  </h3>
13
13
 
14
14
  </div>
15
15
  <div align="center">
16
16
 
17
- Experience unrivaled performance, memory efficiency, and a
18
- comprehensive feature set, all in a tiny bundle size.
19
- LyteNyte Grid is designed to help developers handle large, real-time,
20
- and complex datasets without compromising speed or usability.
17
+ LyteNyte Grid is a **~40 KB, zero-dependency React data grid** engineered for
18
+ high performance and enterprise-scale datasets. It can handle **10,000 updates/sec**
19
+ and render **millions of rows**. No wrappers. No heavy abstractions.
21
20
 
22
- The free **LyteNyte Grid Core** edition includes intuitive sorting, precise filtering, row grouping,
23
- and data aggregation capabilities, everything you need to take complete control of your data.
21
+ Choose between **headless** components or a **pre-styled** grid out of
22
+ the box, and ship faster with a **declarative API** that
23
+ is purpose-built for React.
24
24
 
25
- Need more power? Upgrade to **LyteNyte Grid PRO** to access more advanced features like tree data structures,
26
- asynchronous data loading, and purpose-built UI components for managing columns, views, and exports.
27
- Build custom menus, popover dialogs, and dynamic workflows with ease.
28
-
29
- Meticulously engineered to redefine what your enterprise expects from a React data grid.
25
+ Start with **LyteNyte Grid Core** (free and open source). Upgrade
26
+ to **LyteNyte Grid PRO** for advanced enterprise features and support.
30
27
 
31
28
  [Compare Features](https://1771technologies.com/pricing)
32
29
 
@@ -60,12 +57,14 @@ Meticulously engineered to redefine what your enterprise expects from a React da
60
57
 
61
58
  LyteNyte Grid is available in two editions:
62
59
 
63
- 1. **LyteNyte Grid Core:** A free, high-performance edition that delivers essential
64
- table capabilities like **row grouping, column auto-sizing,** and **row detail** views.
60
+ 1. **LyteNyte Grid Core: Free, open-source edition** for building high-performance data tables.
61
+ Includes sorting, filtering, editing, row selection, detail views, and more. Also includes advanced
62
+ features such as aggregation, row grouping, and data export, often locked behind paywalls in other grids.
65
63
 
66
- 2. **LyteNyte Grid PRO:** An advanced enterprise edition that builds on Core with additional
67
- features such as **asynchronous data loading, column manager components,** and 
68
- **data exporting** capabilities.
64
+ 2. **LyteNyte Grid PRO: Commercial edition** that extends Core with powerful enterprise
65
+ features such as server-side data loading, pivoting, tree data, component managers,
66
+ and advanced filtering. Build custom menus, popovers and dialogs,
67
+ and workflow-driven UIs with ease.
69
68
 
70
69
  ## Key Design Principles
71
70
 
@@ -80,6 +79,26 @@ LyteNyte Grid is available in two editions:
80
79
  implements one-way data binding and declarative rendering to
81
80
  maintain predictable state management.
82
81
 
82
+ ## Installation
83
+
84
+ LyteNyte Grid can be installed via NPM:
85
+
86
+ **PRO:**
87
+
88
+ ```sh
89
+ npm install --save @1771technologies/lytenyte-pro
90
+ ```
91
+
92
+ > [!NOTE]
93
+ > You can install and use LyteNyte Grid PRO
94
+ > without license but a watermark will be displayed.
95
+
96
+ **Core:**
97
+
98
+ ```sh
99
+ npm install --save @1771technologies/lytenyte-core
100
+ ```
101
+
83
102
  ## Quick Start
84
103
 
85
104
  - Begin with our comprehensive [getting started guide](https://www.1771technologies.com/docs/intro-getting-started).
@@ -88,19 +107,21 @@ LyteNyte Grid is available in two editions:
88
107
 
89
108
  ## Licensing
90
109
 
91
- LyteNyte Grid is available in two editions, Core and PRO, and offered under the following three license plans:
110
+ LyteNyte Grid is available in two editions, Core and PRO, and is offered under the following three license plans:
111
+
112
+ 1. **Core License Plan:** An [Apache 2.0](https://www.apache.org/licenses/LICENSE-2.0)
113
+ license for the Core edition, which is free and open-source. Ideal for individual developers and community use.
92
114
 
93
- 1. **Core License Plan:** Free and open source, licensed under [Apache 2.0](https://www.apache.org/licenses/LICENSE-2.0).
94
- Includes LyteNyte Grid Core edition with foundational features like sorting, filtering, row grouping,
95
- and column auto-sizing. Ideal for individual developers and community use.
115
+ 2. **Developer PRO License Plan:** A [commercial license](https://www.1771technologies.com/eula) for the PRO edition, designed for
116
+ individuals and teams with up to 50 developers. Unlocks the full potential of LyteNyte
117
+ Grid with advanced features unavailable in the Core edition.
96
118
 
97
- 2. **Developer PRO License Plan:** A [commercial license](https://www.1771technologies.com/eula) for the PRO
98
- edition, designed for individuals and teams with up to 50 developers. Unlocks the full potential of LyteNyte Grid
99
- with advanced features unavailable in the Core edition.
100
- 3. **Organization PRO License Plan:** A [commercial license](https://www.1771technologies.com/eula) for the PRO edition, tailored for teams
101
- with 50+ developers. Includes all PRO features along with an enhanced support agreement and negotiated pricing terms.
119
+ 3. **Organization PRO License Plan:** A [commercial license](https://www.1771technologies.com/eula) for the PRO edition,
120
+ tailored for teams with 50+ developers. Includes all PRO features along
121
+ with an enhanced support agreement and negotiated pricing terms.
102
122
 
103
- All **PRO licenses** are **perpetual** and include **12 months** of software updates, feature upgrades, and dedicated technical support.
123
+ All **PRO licenses** are **perpetual** and include **12 months** of software updates,
124
+ feature upgrades, and dedicated technical support during your active license term.
104
125
 
105
126
  ## Support
106
127
 
@@ -122,4 +143,4 @@ LyteNyte Grid follows [semantic versioning](https://semver.org/) to ensure clear
122
143
  ## Security
123
144
 
124
145
  For information on reporting security vulnerabilities,
125
- please consult our [security policy](./SECURITY.md).
146
+ please consult our [security policy](https://github.com/1771-Technologies/lytenyte/blob/main/SECURITY.md).
package/SECURITY.md ADDED
@@ -0,0 +1,22 @@
1
+ # Security Policy
2
+
3
+ ## Supported Versions
4
+
5
+ | Version | Security Updates |
6
+ | ----------------- | -------------------------------- |
7
+ | Latest | ✅ All security vulnerabilities |
8
+ | Previous versions | ⚠️ Critical vulnerabilities only |
9
+
10
+ The team at 1771 Technologies addresses security vulnerabilities as follows:
11
+
12
+ - **Critical vulnerabilities**: Patched for all supported versions of LyteNyte Grid.
13
+ - **Non-critical vulnerabilities**: Patched only for the latest version.
14
+
15
+ ## Reporting a Vulnerability
16
+
17
+ We take the security of LyteNyte Grid seriously. Please report security vulnerabilities through our confidential reporting process:
18
+
19
+ 1. Email [support@1771technologies.com](mailto:support@1771technologies.com) with details about the vulnerability.
20
+ 2. Include steps to reproduce, potential impact, and any relevant documentation.
21
+ 3. Our security team will acknowledge receipt within 24 hours.
22
+ 4. You'll receive regular updates as we address the issue.
@@ -225,8 +225,8 @@
225
225
 
226
226
  font-family: var(--ln-typeface);
227
227
 
228
- border: 1px solid var(--ln-border);
229
- background-color: var(--ln-bg);
228
+ border: 1px solid var(--ln-border-popover);
229
+ background-color: var(--ln-bg-popover);
230
230
  box-shadow: var(--ln-shadow-400);
231
231
 
232
232
  transition-property: opacity, scale;
@@ -249,10 +249,10 @@
249
249
  position: absolute;
250
250
 
251
251
  [data-ln-dialog-arrow-area="true"] {
252
- fill: var(--ln-bg);
252
+ fill: var(--ln-bg-popover);
253
253
  }
254
254
  [data-ln-dialog-arrow-border] {
255
- stroke: var(--ln-border);
255
+ stroke: var(--ln-border-popover);
256
256
  }
257
257
 
258
258
  &[data-ln-placement="bottom"] {
package/css/grid.css CHANGED
@@ -3,7 +3,7 @@
3
3
  @layer ln-grid {
4
4
  .ln-grid {
5
5
  /* CELL SELECTION */
6
- [data-ln-cell-selection-rect]:not([data-ln-cell-selection-is-unit="true"]) {
6
+ [data-ln-cell-selection-rect] {
7
7
  background-color: var(--ln-primary-10);
8
8
  box-sizing: border-box;
9
9
 
@@ -1,3 +1,4 @@
1
+ import "@1771technologies/lytenyte-design/shadcn-vars.css";
1
2
  import "@1771technologies/lytenyte-design/fonts.css";
2
3
  import "../../css/grid-full.css";
3
4
  export default function Experimental(): import("react/jsx-runtime").JSX.Element;
@@ -1,5 +1,6 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { useTheme } from "@1771technologies/play-frame";
2
+ // import { useTheme } from "@1771technologies/play-frame";
3
+ import "@1771technologies/lytenyte-design/shadcn-vars.css";
3
4
  import "@1771technologies/lytenyte-design/fonts.css";
4
5
  import "../../css/grid-full.css";
5
6
  import { bankDataSmall } from "@1771technologies/grid-sample-data/bank-data-smaller";
@@ -48,8 +49,7 @@ export default function Experimental() {
48
49
  const [rowGroupColumn, setRowGroupColumn] = useState({
49
50
  cellRenderer: RowGroupCell,
50
51
  });
51
- const { resolvedTheme } = useTheme();
52
- return (_jsxs(_Fragment, { children: [_jsx("div", { style: { display: "flex", alignItems: "center", justifyContent: "center", padding: "8px" }, children: _jsx("button", { onClick: () => setPivotMode((prev) => !prev), children: "Toggle Pivot Mode" }) }), _jsx("div", { style: { display: "flex", alignItems: "center", justifyContent: "center" }, children: _jsx("div", { className: "ln-grid " + (resolvedTheme === "light" ? "ln-light" : "ln-dark"), style: { height: "90vh", width: "90vw" }, children: _jsx(Grid, { columns: columns, columnBase: useMemo(() => ({ movable: true, resizable: true, width: 100 }), []), slotShadows: ViewportShadows, columnGroupRenderer: (props) => {
52
+ return (_jsxs(_Fragment, { children: [_jsx("div", { style: { display: "flex", alignItems: "center", justifyContent: "center", padding: "8px" }, children: _jsx("button", { onClick: () => setPivotMode((prev) => !prev), children: "Toggle Pivot Mode" }) }), _jsx("div", { style: { display: "flex", alignItems: "center", justifyContent: "center" }, children: _jsx("div", { className: "ln-grid ln-shadcn", style: { height: "90vh", width: "90vw" }, children: _jsx(Grid, { columns: columns, columnBase: useMemo(() => ({ movable: true, resizable: true, width: 100 }), []), slotShadows: ViewportShadows, columnGroupRenderer: (props) => {
53
53
  const label = props.groupPath.at(-1);
54
54
  return (_jsxs("div", { children: [label, props.collapsible && (_jsx("button", { onClick: () => props.api.columnToggleGroup(props.groupPath), children: ">" }))] }));
55
55
  }, rowSource: ds, rowGroupColumn: rowGroupColumn, onRowGroupColumnChange: setRowGroupColumn, rowSelectionMode: "multiple", ...pivotProps }) }) })] }));
@@ -0,0 +1,16 @@
1
+ export type MovieData = (typeof data)[number];
2
+ export declare const data: {
3
+ link: string;
4
+ name: string;
5
+ released_at: string;
6
+ genre: string;
7
+ poster: string;
8
+ streaming_on: string;
9
+ country: string;
10
+ number_of_seasons: string;
11
+ type: string;
12
+ content_rating: string;
13
+ imdb_rating: string;
14
+ uniq_id: string;
15
+ scraped_at: string;
16
+ }[];