@object-ui/plugin-report 3.3.0 → 3.3.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/CHANGELOG.md ADDED
@@ -0,0 +1,160 @@
1
+ # @object-ui/plugin-report
2
+
3
+ ## 3.3.2
4
+
5
+ ### Patch Changes
6
+
7
+ - @object-ui/types@3.3.2
8
+ - @object-ui/core@3.3.2
9
+ - @object-ui/react@3.3.2
10
+ - @object-ui/components@3.3.2
11
+ - @object-ui/fields@3.3.2
12
+
13
+ ## 3.3.1
14
+
15
+ ### Patch Changes
16
+
17
+ - Updated dependencies [b429568]
18
+ - @object-ui/components@3.3.1
19
+ - @object-ui/fields@3.3.1
20
+ - @object-ui/types@3.3.1
21
+ - @object-ui/core@3.3.1
22
+ - @object-ui/react@3.3.1
23
+
24
+ ## 3.3.0
25
+
26
+ ### Patch Changes
27
+
28
+ - @object-ui/types@3.3.0
29
+ - @object-ui/core@3.3.0
30
+ - @object-ui/react@3.3.0
31
+ - @object-ui/components@3.3.0
32
+ - @object-ui/fields@3.3.0
33
+
34
+ ## 3.2.0
35
+
36
+ ### Patch Changes
37
+
38
+ - @object-ui/types@3.2.0
39
+ - @object-ui/core@3.2.0
40
+ - @object-ui/react@3.2.0
41
+ - @object-ui/components@3.2.0
42
+ - @object-ui/fields@3.2.0
43
+
44
+ ## 3.1.5
45
+
46
+ ### Patch Changes
47
+
48
+ - @object-ui/react@3.1.5
49
+ - @object-ui/components@3.1.5
50
+ - @object-ui/fields@3.1.5
51
+ - @object-ui/types@3.1.5
52
+ - @object-ui/core@3.1.5
53
+
54
+ ## 3.1.4
55
+
56
+ ### Patch Changes
57
+
58
+ - @object-ui/types@3.1.4
59
+ - @object-ui/core@3.1.4
60
+ - @object-ui/react@3.1.4
61
+ - @object-ui/components@3.1.4
62
+ - @object-ui/fields@3.1.4
63
+
64
+ ## 3.1.3
65
+
66
+ ### Patch Changes
67
+
68
+ - @object-ui/types@3.1.3
69
+ - @object-ui/core@3.1.3
70
+ - @object-ui/react@3.1.3
71
+ - @object-ui/components@3.1.3
72
+ - @object-ui/fields@3.1.3
73
+
74
+ ## 3.1.2
75
+
76
+ ### Patch Changes
77
+
78
+ - @object-ui/types@3.1.2
79
+ - @object-ui/core@3.1.2
80
+ - @object-ui/react@3.1.2
81
+ - @object-ui/components@3.1.2
82
+ - @object-ui/fields@3.1.2
83
+
84
+ ## 3.1.1
85
+
86
+ ### Patch Changes
87
+
88
+ - Updated dependencies
89
+ - @object-ui/types@3.1.1
90
+ - @object-ui/components@3.1.1
91
+ - @object-ui/core@3.1.1
92
+ - @object-ui/fields@3.1.1
93
+ - @object-ui/react@3.1.1
94
+
95
+ ## 3.0.3
96
+
97
+ ### Patch Changes
98
+
99
+ - @object-ui/types@3.0.3
100
+ - @object-ui/core@3.0.3
101
+ - @object-ui/react@3.0.3
102
+ - @object-ui/components@3.0.3
103
+ - @object-ui/fields@3.0.3
104
+
105
+ ## 3.0.2
106
+
107
+ ### Patch Changes
108
+
109
+ - @object-ui/types@3.0.2
110
+ - @object-ui/core@3.0.2
111
+ - @object-ui/react@3.0.2
112
+ - @object-ui/components@3.0.2
113
+ - @object-ui/fields@3.0.2
114
+
115
+ ## 3.0.1
116
+
117
+ ### Patch Changes
118
+
119
+ - Updated dependencies [adf2cc0]
120
+ - @object-ui/react@3.0.1
121
+ - @object-ui/components@3.0.1
122
+ - @object-ui/fields@3.0.1
123
+ - @object-ui/types@3.0.1
124
+ - @object-ui/core@3.0.1
125
+
126
+ ## 3.0.0
127
+
128
+ ### Minor Changes
129
+
130
+ - 87979c3: Upgrade to @objectstack v3.0.0 and console bundle optimization
131
+ - Upgraded all @objectstack/\* packages from ^2.0.7 to ^3.0.0
132
+ - Breaking change migrations: Hub → Cloud namespace, definePlugin removed, PaginatedResult.value → .records, PaginatedResult.count → .total, client.meta.getObject() → client.meta.getItem()
133
+ - Console bundle optimization: split monolithic 3.7 MB chunk into 17 granular cacheable chunks (95% main entry reduction)
134
+ - Added gzip + brotli pre-compression via vite-plugin-compression2
135
+ - Lazy MSW loading for build:server (~150 KB gzip saved)
136
+ - Added bundle analysis with rollup-plugin-visualizer
137
+
138
+ ### Patch Changes
139
+
140
+ - Updated dependencies [87979c3]
141
+ - @object-ui/types@3.0.0
142
+ - @object-ui/core@3.0.0
143
+ - @object-ui/react@3.0.0
144
+ - @object-ui/components@3.0.0
145
+ - @object-ui/fields@3.0.0
146
+
147
+ ## 2.0.0
148
+
149
+ ### Major Changes
150
+
151
+ - b859617: Release v1.0.0 — unify all package versions to 1.0.0
152
+
153
+ ### Patch Changes
154
+
155
+ - Updated dependencies [b859617]
156
+ - @object-ui/types@2.0.0
157
+ - @object-ui/core@2.0.0
158
+ - @object-ui/react@2.0.0
159
+ - @object-ui/components@2.0.0
160
+ - @object-ui/fields@2.0.0
package/README.md CHANGED
@@ -132,6 +132,26 @@ Components auto-register with `ComponentRegistry`:
132
132
  }
133
133
  ```
134
134
 
135
+ <!-- release-metadata:v3.3.0 -->
136
+
137
+ ## Compatibility
138
+
139
+ - **React:** 18.x or 19.x
140
+ - **Node.js:** ≥ 18
141
+ - **TypeScript:** ≥ 5.0 (strict mode)
142
+ - **`@objectstack/spec`:** ^3.3.0
143
+ - **`@objectstack/client`:** ^3.3.0
144
+ - **Tailwind CSS:** ≥ 3.4 (for packages with UI)
145
+
146
+ ## Links
147
+
148
+ - 📚 [Documentation](https://www.objectui.org/docs/plugins/plugin-report)
149
+ - 📦 [npm package](https://www.npmjs.com/package/@object-ui/plugin-report)
150
+ - 📝 [Changelog](./CHANGELOG.md)
151
+ - 🐛 [Report an issue](https://github.com/objectstack-ai/objectui/issues)
152
+ - 🤝 [Contributing Guide](https://github.com/objectstack-ai/objectui/blob/main/CONTRIBUTING.md)
153
+ - 🗺️ [Roadmap](https://github.com/objectstack-ai/objectui/blob/main/ROADMAP.md)
154
+
135
155
  ## License
136
156
 
137
- MIT
157
+ MIT — see [LICENSE](./LICENSE).
package/dist/index.js CHANGED
@@ -5,7 +5,7 @@ import { Badge as i, Button as a, Card as o, CardContent as s, CardDescription a
5
5
  import { SchemaRenderer as x } from "@object-ui/react";
6
6
  import { Calendar as S, Clock as C, Download as w, Filter as T, Layers as E, Mail as D, Plus as O, Printer as k, RefreshCw as A, Save as ee, Settings as j, Trash2 as M } from "lucide-react";
7
7
  //#region \0rolldown/runtime.js
8
- var N = (e, t) => () => (t || e((t = { exports: {} }).exports, t), t.exports), P = /* @__PURE__ */ N(((e) => {
8
+ var N = (e, t) => () => (t || (e((t = { exports: {} }).exports, t), e = null), t.exports), P = /* @__PURE__ */ N(((e) => {
9
9
  var t = Symbol.for("react.transitional.element"), n = Symbol.for("react.fragment");
10
10
  function r(e, n, r) {
11
11
  var i = null;
@@ -1,4 +1,4 @@
1
- (function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require(`@object-ui/core`),require(`react`),require(`@object-ui/components`),require(`@object-ui/react`),require(`lucide-react`)):typeof define==`function`&&define.amd?define([`exports`,`@object-ui/core`,`react`,`@object-ui/components`,`@object-ui/react`,`lucide-react`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.ObjectUIPluginReport={},e.ObjectUICore,e.React,e.ObjectUIComponents,e.ObjectUIReact,e.lucide_react))})(this,function(e,t,n,r,i,a){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});var o=Object.create,s=Object.defineProperty,c=Object.getOwnPropertyDescriptor,l=Object.getOwnPropertyNames,u=Object.getPrototypeOf,d=Object.prototype.hasOwnProperty,f=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),p=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var i=l(t),a=0,o=i.length,u;a<o;a++)u=i[a],!d.call(e,u)&&u!==n&&s(e,u,{get:(e=>t[e]).bind(null,u),enumerable:!(r=c(t,u))||r.enumerable});return e};n=((e,t,n)=>(n=e==null?{}:o(u(e)),p(t||!e||!e.__esModule?s(n,`default`,{value:e,enumerable:!0}):n,e)))(n,1);var m=f((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.fragment`);function r(e,n,r){var i=null;if(r!==void 0&&(i=``+r),n.key!==void 0&&(i=``+n.key),`key`in n)for(var a in r={},n)a!==`key`&&(r[a]=n[a]);else r=n;return n=r.ref,{$$typeof:t,type:e,key:i,ref:n===void 0?null:n,props:r}}e.Fragment=n,e.jsx=r,e.jsxs=r})),h=f(((e,t)=>{t.exports=m()}))(),g=({schema:e})=>{let{title:n,description:i,data:a,columns:o}=e;e.chart?.type;let s=!!e.chart;return(0,h.jsxs)(r.Card,{className:`h-full flex flex-col ${e.className||``}`,children:[(0,h.jsxs)(r.CardHeader,{children:[n&&(0,h.jsx)(r.CardTitle,{children:n}),i&&(0,h.jsx)(r.CardDescription,{children:i})]}),(0,h.jsxs)(r.CardContent,{className:`flex-1 overflow-auto space-y-4`,children:[s&&(()=>{let n=e.chart?.type,r=n?t.ComponentRegistry.get(n):null;return r||=t.ComponentRegistry.get(`chart`),r?(0,h.jsx)(`div`,{className:`min-h-[300px] border rounded-lg p-4 bg-background/50`,children:(0,h.jsx)(r,{schema:{...e.chart,data:e.chart.data||a}})}):(0,h.jsxs)(`div`,{className:`min-h-[100px] border rounded-md p-4 bg-muted/20 text-muted-foreground flex items-center justify-center`,children:[`Unknown component type: `,n||`chart`]})})(),a&&a.length>0&&(0,h.jsx)(`div`,{className:`border rounded-lg`,children:(()=>{let e=t.ComponentRegistry.get(`aggrid`)||t.ComponentRegistry.get(`table`);return e?(0,h.jsx)(e,{schema:{type:`aggrid`,rowData:a,columnDefs:o,domLayout:`autoHeight`}}):(0,h.jsx)(`div`,{className:`overflow-x-auto`,children:(0,h.jsxs)(`table`,{className:`w-full text-sm text-left`,children:[(0,h.jsx)(`thead`,{className:`text-xs uppercase bg-muted`,children:(0,h.jsx)(`tr`,{children:o?.map(e=>(0,h.jsx)(`th`,{className:`px-6 py-3`,children:e.headerName||e.label||e.field},e.field))})}),(0,h.jsx)(`tbody`,{children:a.map((e,t)=>(0,h.jsx)(`tr`,{className:`bg-background border-b`,children:o?.map(t=>(0,h.jsx)(`td`,{className:`px-6 py-4`,children:e[t.field]},t.field))},t))})]})})})()})]})]})};function _(e,t,n){let r=e.fields||[],i=r.map(e=>e.label||e.name),a=t.map(e=>r.map(t=>{let n=e[t.name];return n=w(n),typeof n==`string`&&(n.includes(`,`)||n.includes(`"`)||n.includes(`
1
+ (function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require(`@object-ui/core`),require(`react`),require(`@object-ui/components`),require(`@object-ui/react`),require(`lucide-react`)):typeof define==`function`&&define.amd?define([`exports`,`@object-ui/core`,`react`,`@object-ui/components`,`@object-ui/react`,`lucide-react`],t):(e=typeof globalThis<`u`?globalThis:e||self,t(e.ObjectUIPluginReport={},e.ObjectUICore,e.React,e.ObjectUIComponents,e.ObjectUIReact,e.lucide_react))})(this,function(e,t,n,r,i,a){Object.defineProperty(e,Symbol.toStringTag,{value:`Module`});var o=Object.create,s=Object.defineProperty,c=Object.getOwnPropertyDescriptor,l=Object.getOwnPropertyNames,u=Object.getPrototypeOf,d=Object.prototype.hasOwnProperty,f=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),p=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var i=l(t),a=0,o=i.length,u;a<o;a++)u=i[a],!d.call(e,u)&&u!==n&&s(e,u,{get:(e=>t[e]).bind(null,u),enumerable:!(r=c(t,u))||r.enumerable});return e};n=((e,t,n)=>(n=e==null?{}:o(u(e)),p(t||!e||!e.__esModule?s(n,`default`,{value:e,enumerable:!0}):n,e)))(n,1);var m=f((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.fragment`);function r(e,n,r){var i=null;if(r!==void 0&&(i=``+r),n.key!==void 0&&(i=``+n.key),`key`in n)for(var a in r={},n)a!==`key`&&(r[a]=n[a]);else r=n;return n=r.ref,{$$typeof:t,type:e,key:i,ref:n===void 0?null:n,props:r}}e.Fragment=n,e.jsx=r,e.jsxs=r})),h=f(((e,t)=>{t.exports=m()}))(),g=({schema:e})=>{let{title:n,description:i,data:a,columns:o}=e;e.chart?.type;let s=!!e.chart;return(0,h.jsxs)(r.Card,{className:`h-full flex flex-col ${e.className||``}`,children:[(0,h.jsxs)(r.CardHeader,{children:[n&&(0,h.jsx)(r.CardTitle,{children:n}),i&&(0,h.jsx)(r.CardDescription,{children:i})]}),(0,h.jsxs)(r.CardContent,{className:`flex-1 overflow-auto space-y-4`,children:[s&&(()=>{let n=e.chart?.type,r=n?t.ComponentRegistry.get(n):null;return r||=t.ComponentRegistry.get(`chart`),r?(0,h.jsx)(`div`,{className:`min-h-[300px] border rounded-lg p-4 bg-background/50`,children:(0,h.jsx)(r,{schema:{...e.chart,data:e.chart.data||a}})}):(0,h.jsxs)(`div`,{className:`min-h-[100px] border rounded-md p-4 bg-muted/20 text-muted-foreground flex items-center justify-center`,children:[`Unknown component type: `,n||`chart`]})})(),a&&a.length>0&&(0,h.jsx)(`div`,{className:`border rounded-lg`,children:(()=>{let e=t.ComponentRegistry.get(`aggrid`)||t.ComponentRegistry.get(`table`);return e?(0,h.jsx)(e,{schema:{type:`aggrid`,rowData:a,columnDefs:o,domLayout:`autoHeight`}}):(0,h.jsx)(`div`,{className:`overflow-x-auto`,children:(0,h.jsxs)(`table`,{className:`w-full text-sm text-left`,children:[(0,h.jsx)(`thead`,{className:`text-xs uppercase bg-muted`,children:(0,h.jsx)(`tr`,{children:o?.map(e=>(0,h.jsx)(`th`,{className:`px-6 py-3`,children:e.headerName||e.label||e.field},e.field))})}),(0,h.jsx)(`tbody`,{children:a.map((e,t)=>(0,h.jsx)(`tr`,{className:`bg-background border-b`,children:o?.map(t=>(0,h.jsx)(`td`,{className:`px-6 py-4`,children:e[t.field]},t.field))},t))})]})})})()})]})]})};function _(e,t,n){let r=e.fields||[],i=r.map(e=>e.label||e.name),a=t.map(e=>r.map(t=>{let n=e[t.name];return n=w(n),typeof n==`string`&&(n.includes(`,`)||n.includes(`"`)||n.includes(`
2
2
  `))?`"${n.replace(/"/g,`""`)}"`:n??``}));D([...n?.includeHeaders===!1?[]:[i.join(`,`)],...a.map(e=>e.join(`,`))].join(`
3
3
  `),n?.filename||`${e.title||`report`}.csv`,`text/csv`)}function v(e,t,n){let r={title:e.title,description:e.description,generatedAt:new Date().toISOString(),data:t};D(JSON.stringify(r,null,2),n?.filename||`${e.title||`report`}.json`,`application/json`)}function y(e,t,n){let r=e.fields||[],i=E(n?.orientation),a=T(n?.pageSize);D(`<!DOCTYPE html>
4
4
  <html>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@object-ui/plugin-report",
3
- "version": "3.3.0",
3
+ "version": "3.3.2",
4
4
  "type": "module",
5
5
  "main": "dist/index.umd.cjs",
6
6
  "module": "dist/index.js",
@@ -13,17 +13,20 @@
13
13
  }
14
14
  },
15
15
  "files": [
16
- "dist"
16
+ "dist",
17
+ "README.md",
18
+ "CHANGELOG.md",
19
+ "LICENSE"
17
20
  ],
18
21
  "dependencies": {
19
22
  "clsx": "^2.1.1",
20
23
  "lucide-react": "^1.8.0",
21
24
  "tailwind-merge": "^3.5.0",
22
- "@object-ui/components": "3.3.0",
23
- "@object-ui/core": "3.3.0",
24
- "@object-ui/fields": "3.3.0",
25
- "@object-ui/react": "3.3.0",
26
- "@object-ui/types": "3.3.0"
25
+ "@object-ui/components": "3.3.2",
26
+ "@object-ui/core": "3.3.2",
27
+ "@object-ui/fields": "3.3.2",
28
+ "@object-ui/react": "3.3.2",
29
+ "@object-ui/types": "3.3.2"
27
30
  },
28
31
  "peerDependencies": {
29
32
  "react": "^18.0.0",
@@ -34,9 +37,37 @@
34
37
  "@types/react": "19.2.14",
35
38
  "@types/react-dom": "19.2.3",
36
39
  "@vitejs/plugin-react": "^6.0.1",
37
- "vite": "^8.0.8",
40
+ "vite": "^8.0.10",
38
41
  "vite-plugin-dts": "^3.9.1",
39
- "vitest": "^4.1.4"
42
+ "vitest": "^4.1.5"
43
+ },
44
+ "description": "Report plugin for Object UI — schema-driven pivot tables, grouped aggregations and printable report layouts",
45
+ "keywords": [
46
+ "objectui",
47
+ "sdui",
48
+ "schema-driven-ui",
49
+ "react",
50
+ "tailwind",
51
+ "shadcn",
52
+ "objectstack",
53
+ "plugin",
54
+ "report",
55
+ "pivot-table",
56
+ "analytics"
57
+ ],
58
+ "license": "MIT",
59
+ "author": "ObjectStack Team <team@objectstack.ai>",
60
+ "repository": {
61
+ "type": "git",
62
+ "url": "git+https://github.com/objectstack-ai/objectui.git",
63
+ "directory": "packages/plugin-report"
64
+ },
65
+ "bugs": {
66
+ "url": "https://github.com/objectstack-ai/objectui/issues"
67
+ },
68
+ "homepage": "https://www.objectui.org/docs/plugins/plugin-report",
69
+ "publishConfig": {
70
+ "access": "public"
40
71
  },
41
72
  "scripts": {
42
73
  "build": "vite build",