@meonode/ui 1.1.3 → 1.1.4
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 +12 -0
- package/dist/cjs/components/style-registry.client.cjs +2 -0
- package/dist/cjs/nextjs-registry/index.cjs +1 -1
- package/dist/esm/components/{registry.client.d.ts → style-registry.client.d.ts} +1 -1
- package/dist/esm/components/style-registry.client.d.ts.map +1 -0
- package/dist/esm/components/style-registry.client.js +2 -0
- package/dist/esm/nextjs-registry/index.d.ts +1 -1
- package/dist/esm/nextjs-registry/index.d.ts.map +1 -1
- package/dist/esm/nextjs-registry/index.js +1 -1
- package/package.json +1 -1
- package/dist/cjs/components/registry.client.cjs +0 -2
- package/dist/esm/components/registry.client.d.ts.map +0 -1
- package/dist/esm/components/registry.client.js +0 -2
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,18 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
|
|
5
|
+
## [1.1.4] - 2026-02-15
|
|
6
|
+
|
|
7
|
+
### Fix
|
|
8
|
+
|
|
9
|
+
- **nextjs**: prevent duplicate style tags and content in StyleRegistry ([`91bec99`](https://github.com/l7aromeo/meonode-ui/commit/91bec99))
|
|
10
|
+
- Renamed `registry.client.ts` to `style-registry.client.ts` and implemented tracking of inserted IDs during SSR to avoid duplicate CSS injection in Next.js streaming.
|
|
11
|
+
|
|
12
|
+
### Test
|
|
13
|
+
|
|
14
|
+
- **emotion**: add style tag generation monitoring test ([`0576f0c`](https://github.com/l7aromeo/meonode-ui/commit/0576f0c))
|
|
15
|
+
- Added tests to verify that nested `Div` structures efficiently batch styles into a single style tag and that state changes correctly append new rules.
|
|
16
|
+
|
|
5
17
|
## [1.1.3] - 2026-02-15
|
|
6
18
|
|
|
7
19
|
### Feat
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),r=require("@emotion/react"),t=require("@emotion/cache"),n=require("../core.node.cjs"),o=require("next/navigation.js");exports.default=function({children:s}){const[i]=e.useState(()=>{const e=t({key:"meonode-css"});return e.compat=!0,e}),[a]=e.useState(()=>new Set);return o.useServerInsertedHTML(()=>{const r=Object.keys(i.inserted).filter(e=>!a.has(e));if(0===r.length)return null;r.forEach(e=>a.add(e));const t=r.sort(),n=t.map(e=>i.inserted[e]).join(""),o=t.join(" ");return e.createElement("style",{"data-emotion":`${i.key} ${o}`,dangerouslySetInnerHTML:{__html:n}})}),n.Node(r.CacheProvider,{value:i,children:s}).render()};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("../components/registry.client.cjs");const r=require("../core.node.cjs").createNode(e.default);exports.StyleRegistry=r;
|
|
1
|
+
"use strict";var e=require("../components/style-registry.client.cjs");const r=require("../core.node.cjs").createNode(e.default);exports.StyleRegistry=r;
|
|
@@ -10,4 +10,4 @@ import { type ReactElement } from 'react';
|
|
|
10
10
|
export default function StyleRegistry({ children }: {
|
|
11
11
|
children: ReactElement;
|
|
12
12
|
}): ReactElement<import("../main").FinalNodeProps, string | import("react").JSXElementConstructor<any>>;
|
|
13
|
-
//# sourceMappingURL=registry.client.d.ts.map
|
|
13
|
+
//# sourceMappingURL=style-registry.client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"style-registry.client.d.ts","sourceRoot":"","sources":["../../../src/components/style-registry.client.ts"],"names":[],"mappings":"AACA,OAAO,EAAiB,KAAK,YAAY,EAAY,MAAM,OAAO,CAAA;AAWlE;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,YAAY,CAAA;CAAE,yGAqC7E"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import{useState as e,createElement as t}from"react";import{CacheProvider as o}from"@emotion/react";import r from"@emotion/cache";import{Node as n}from"../core.node.js";import{useServerInsertedHTML as i}from"next/navigation.js";function m({children:m}){const[a]=e(()=>{const e=r({key:"meonode-css"});return e.compat=!0,e}),[c]=e(()=>new Set);return i(()=>{const e=Object.keys(a.inserted).filter(e=>!c.has(e));if(0===e.length)return null;e.forEach(e=>c.add(e));const o=e.sort(),r=o.map(e=>a.inserted[e]).join(""),n=o.join(" ");return t("style",{"data-emotion":`${a.key} ${n}`,dangerouslySetInnerHTML:{__html:r}})}),n(o,{value:a,children:m}).render()}export{m as default};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import _StyleRegistry from '../components/registry.client
|
|
1
|
+
import _StyleRegistry from '../components/style-registry.client';
|
|
2
2
|
export declare const StyleRegistry: (<AdditionalProps, ExactProps extends object = object>(props: import("../main").MergedProps<typeof _StyleRegistry, AdditionalProps, ExactProps>, deps?: import("../main").DependencyList | undefined) => import("../main").NodeInstance<typeof _StyleRegistry>) & {
|
|
3
3
|
element: typeof _StyleRegistry;
|
|
4
4
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/nextjs-registry/index.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/nextjs-registry/index.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,uCAAuC,CAAA;AAGlE,eAAO,MAAM,aAAa;;CAA6B,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import o from"../components/registry.client.js";import{createNode as r}from"../core.node.js";const t=r(o);export{t as StyleRegistry};
|
|
1
|
+
import o from"../components/style-registry.client.js";import{createNode as r}from"../core.node.js";const t=r(o);export{t as StyleRegistry};
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@meonode/ui",
|
|
3
3
|
"description": "A structured approach to component composition, direct CSS-first prop styling, built-in theming, smart prop handling (including raw property pass-through), and dynamic children.",
|
|
4
|
-
"version": "1.1.
|
|
4
|
+
"version": "1.1.4",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/main.js",
|
|
7
7
|
"types": "./dist/main.d.ts",
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),r=require("@emotion/react"),t=require("@emotion/cache"),n=require("../core.node.cjs"),o=require("next/navigation.js");exports.default=function({children:s}){const[i]=e.useState(()=>{const e=t({key:"meonode-css"});return e.compat=!0,e});return o.useServerInsertedHTML(()=>{const r=Object.keys(i.inserted).sort(),t=r.map(e=>i.inserted[e]).join(""),n=r.join(" ");return t?e.createElement("style",{"data-emotion":`${i.key} ${n}`,dangerouslySetInnerHTML:{__html:t}}):null}),n.Node(r.CacheProvider,{value:i,children:s}).render()};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"registry.client.d.ts","sourceRoot":"","sources":["../../../src/components/registry.client.ts"],"names":[],"mappings":"AACA,OAAO,EAAiB,KAAK,YAAY,EAAY,MAAM,OAAO,CAAA;AAWlE;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,YAAY,CAAA;CAAE,yGA4B7E"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
import{useState as e,createElement as o}from"react";import{CacheProvider as t}from"@emotion/react";import r from"@emotion/cache";import{Node as n}from"../core.node.js";import{useServerInsertedHTML as i}from"next/navigation.js";function m({children:m}){const[c]=e(()=>{const e=r({key:"meonode-css"});return e.compat=!0,e});return i(()=>{const e=Object.keys(c.inserted).sort(),t=e.map(e=>c.inserted[e]).join(""),r=e.join(" ");return t?o("style",{"data-emotion":`${c.key} ${r}`,dangerouslySetInnerHTML:{__html:t}}):null}),n(t,{value:c,children:m}).render()}export{m as default};
|