@meonode/ui 0.2.13 → 0.2.14

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.
@@ -7,16 +7,33 @@
7
7
  export declare const Div: (<AdditionalProps extends Record<string, any> = Record<string, any>>(props?: import("../node.type").MergedProps<"div", AdditionalProps> | undefined) => import("../node.type").NodeInstance<"div">) & {
8
8
  element: "div";
9
9
  };
10
+ /**
11
+ * Alias for \`Div(...)\`. Recommended for general-purpose container elements.
12
+ *
13
+ * **Example:**
14
+ * ```typescript
15
+ * Container({
16
+ * padding: 'theme.spacing.md',
17
+ * backgroundColor: 'lightgray',
18
+ * children: [H2('Welcome'), P('This is a container example.')]
19
+ * })
20
+ * ```
21
+ */
22
+ export declare const Container: (<AdditionalProps extends Record<string, any> = Record<string, any>>(props?: import("../node.type").MergedProps<"div", AdditionalProps> | undefined) => import("../node.type").NodeInstance<"div">) & {
23
+ element: "div";
24
+ };
10
25
  /**
11
26
  * Represents a root div element with full viewport dimensions and column flex layout.
12
27
  * By default, applies flex column layout and 100% viewport dimensions.
13
28
  * @param props Optional properties for the root div element that merge with defaults.
14
29
  * @returns A div element node configured as root container.
15
30
  * @example
31
+ * ```typescript
16
32
  * Root({
17
- * backgroundColor: 'white',
18
- * children: [Header(), Main(), Footer()]
33
+ * backgroundColor: 'white',
34
+ * children: [Header(), Main(), Footer()]
19
35
  * })
36
+ * ```
20
37
  */
21
38
  export declare const Root: (<AdditionalProps extends Record<string, any> = Record<string, any>>(props?: import("../node.type").MergedProps<"div", AdditionalProps> | undefined) => import("../node.type").NodeInstance<"div">) & {
22
39
  element: "div";
@@ -207,7 +224,9 @@ export declare const P: (<AdditionalProps extends Record<string, any> = Record<s
207
224
  * Renders a semantic block of text using a `<p>` element.
208
225
  * Alias for `P(...)`, recommended for general-purpose text content.
209
226
  * @example
210
- * Text('Hello world', { fontSize: 'theme.text.md' })
227
+ * ```typescript
228
+ * Text('This is a sample text paragraph.', { fontSize: 'theme.text.base', color: 'theme.text.primary' })
229
+ * ```
211
230
  */
212
231
  export declare const Text: (<AdditionalProps extends Record<string, any> = Record<string, any>>(children?: import("../node.type").NodeElement[] | import("../node.type").NodeElement, props?: Omit<import("../node.type").MergedProps<"p", AdditionalProps>, "children"> | undefined) => import("../node.type").NodeInstance<"p">) & {
213
232
  element: "p";
@@ -1 +1 @@
1
- {"version":3,"file":"html.node.d.ts","sourceRoot":"","sources":["../../src/components/html.node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"html.node.d.ts","sourceRoot":"","sources":["../../src/components/html.node.ts"],"names":[],"mappings":"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"}
@@ -4,15 +4,28 @@
4
4
  * @param props Optional properties for the div element.
5
5
  * @returns A div element node.
6
6
  */export var Div=createNode("div");/**
7
+ * Alias for \`Div(...)\`. Recommended for general-purpose container elements.
8
+ *
9
+ * **Example:**
10
+ * ```typescript
11
+ * Container({
12
+ * padding: 'theme.spacing.md',
13
+ * backgroundColor: 'lightgray',
14
+ * children: [H2('Welcome'), P('This is a container example.')]
15
+ * })
16
+ * ```
17
+ */export var Container=Div;/**
7
18
  * Represents a root div element with full viewport dimensions and column flex layout.
8
19
  * By default, applies flex column layout and 100% viewport dimensions.
9
20
  * @param props Optional properties for the root div element that merge with defaults.
10
21
  * @returns A div element node configured as root container.
11
22
  * @example
23
+ * ```typescript
12
24
  * Root({
13
- * backgroundColor: 'white',
14
- * children: [Header(), Main(), Footer()]
25
+ * backgroundColor: 'white',
26
+ * children: [Header(), Main(), Footer()]
15
27
  * })
28
+ * ```
16
29
  */export var Root=createNode("div",{display:"flex",flexDirection:"column",minHeight:"100vh",minWidth:"100vw"});/**
17
30
  * Represents a column layout using flexbox.
18
31
  * @param props Optional properties for the column layout.
@@ -115,7 +128,9 @@
115
128
  * Renders a semantic block of text using a `<p>` element.
116
129
  * Alias for `P(...)`, recommended for general-purpose text content.
117
130
  * @example
118
- * Text('Hello world', { fontSize: 'theme.text.md' })
131
+ * ```typescript
132
+ * Text('This is a sample text paragraph.', { fontSize: 'theme.text.base', color: 'theme.text.primary' })
133
+ * ```
119
134
  */export var Text=P;/**
120
135
  * Creates a preformatted text element node.
121
136
  * @param children The content to be rendered within the element (text, numbers, components, etc) for the pre element.
@@ -27,6 +27,8 @@ export declare class BaseNode<E extends NodeElement> implements NodeInstance<E>
27
27
  private _childrenHash?;
28
28
  /** Cache for normalized children */
29
29
  private _normalizedChildren?;
30
+ /** Cache for processed children to avoid redundant processing */
31
+ private static _processedChildrenCache;
30
32
  /**
31
33
  * Constructs a new BaseNode instance.
32
34
  *
@@ -60,16 +62,37 @@ export declare class BaseNode<E extends NodeElement> implements NodeInstance<E>
60
62
  */
61
63
  private _processProps;
62
64
  /**
63
- * Processes raw children, wrapping them in `BaseNode` instances where necessary
64
- * and propagating the theme.
65
+ * Attempts to retrieve cached processed children based on the current children and theme.
66
+ * This method uses a WeakMap for client-side caching and skips caching on the server.
67
+ * @param children
68
+ * @param theme
69
+ * @private
70
+ */
71
+ private _getCachedChildren;
72
+ /**
73
+ * Caches processed children for a given set of children and theme.
74
+ * This method stores the processed ReactNode in a WeakMap for client-side caching,
75
+ * avoiding redundant processing of the same children-theme combination.
76
+ * No caching is performed on the server to avoid memory leaks.
77
+ * @param children The original children to cache.
78
+ * @param theme The theme associated with the children.
79
+ * @param processed The processed ReactNode to cache.
80
+ * @private
81
+ */
82
+ private _setCachedChildren;
83
+ /**
84
+ * Recursively processes raw children, converting them into `BaseNode` instances as needed
85
+ * and propagating the provided theme.
86
+ *
87
+ * This method ensures consistent theme handling for all children and optimizes performance
88
+ * using caching strategies: a WeakMap for client-side and no caching for server-side.
65
89
  *
66
- * This method recursively processes each child to ensure consistent theme handling
67
- * and to convert valid elements into `BaseNode` instances. It uses caching to
68
- * optimize performance, with different strategies for server-side (string-based key)
69
- * and client-side (WeakMap-based key) environments.
90
+ * - If `children` is an array, each child is processed individually.
91
+ * - If `children` is a single node, it is processed directly.
92
+ * - The processed result is cached on the client to avoid redundant work.
70
93
  * @param children The raw child or array of children to process.
71
94
  * @param theme The theme to propagate to the children.
72
- * @returns The processed children, ready to be normalized for rendering.
95
+ * @returns The processed children, ready for normalization and rendering.
73
96
  * @private
74
97
  */
75
98
  private _processChildren;
@@ -1 +1 @@
1
- {"version":3,"file":"core.node.d.ts","sourceRoot":"","sources":["../src/core.node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"core.node.d.ts","sourceRoot":"","sources":["../src/core.node.ts"],"names":[],"mappings":"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"}
package/dist/core.node.js CHANGED
@@ -1,4 +1,4 @@
1
- "use strict";var _excluded=["ref","key","children","nodetheme","theme","props"],_excluded2=["style"],_excluded3=["style","css"],_excluded4=["style"],_excluded5=["children","key","nativeProps"];function _typeof(a){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(a){return typeof a}:function(a){return a&&"function"==typeof Symbol&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a},_typeof(a)}function _objectWithoutProperties(a,b){if(null==a)return{};var c,d,e=_objectWithoutPropertiesLoose(a,b);if(Object.getOwnPropertySymbols){var f=Object.getOwnPropertySymbols(a);for(d=0;d<f.length;d++)c=f[d],-1===b.indexOf(c)&&{}.propertyIsEnumerable.call(a,c)&&(e[c]=a[c])}return e}function _objectWithoutPropertiesLoose(a,b){if(null==a)return{};var c={};for(var d in a)if({}.hasOwnProperty.call(a,d)){if(-1!==b.indexOf(d))continue;c[d]=a[d]}return c}function ownKeys(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function _objectSpread(a){for(var b,c=1;c<arguments.length;c++)b=null==arguments[c]?{}:arguments[c],c%2?ownKeys(Object(b),!0).forEach(function(c){_defineProperty(a,c,b[c])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(b)):ownKeys(Object(b)).forEach(function(c){Object.defineProperty(a,c,Object.getOwnPropertyDescriptor(b,c))});return a}function _defineProperty(a,b,c){return(b=_toPropertyKey(b))in a?Object.defineProperty(a,b,{value:c,enumerable:!0,configurable:!0,writable:!0}):a[b]=c,a}function _toPropertyKey(a){var b=_toPrimitive(a,"string");return"symbol"==_typeof(b)?b:b+""}function _toPrimitive(a,b){if("object"!=_typeof(a)||!a)return a;var c=a[Symbol.toPrimitive];if(void 0!==c){var d=c.call(a,b||"default");if("object"!=_typeof(d))return d;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===b?String:Number)(a)}import React,{Fragment,createElement,isValidElement}from"react";import{createStableHash,isNodeInstance,resolveDefaultStyle}from"./helper/node.helper.js";import{isForwardRef,isFragment,isMemo,isReactClassComponent,isValidElementType}from"./helper/react-is.helper.js";import{createRoot}from"react-dom/client";import{getComponentType,getCSSProps,getDOMProps,getElementTypeName,hasNoStyleTag,shallowEqual}from"./helper/common.helper.js";import StyledRenderer from"./components/styled-renderer.client.js";import{resolveObjWithTheme}from"./helper/theme.helper.js";/**
1
+ "use strict";var _excluded=["ref","key","children","nodetheme","theme","props"],_excluded2=["style"],_excluded3=["style","css"],_excluded4=["style"],_excluded5=["children","key","nativeProps"];function _objectWithoutProperties(a,b){if(null==a)return{};var c,d,e=_objectWithoutPropertiesLoose(a,b);if(Object.getOwnPropertySymbols){var f=Object.getOwnPropertySymbols(a);for(d=0;d<f.length;d++)c=f[d],-1===b.indexOf(c)&&{}.propertyIsEnumerable.call(a,c)&&(e[c]=a[c])}return e}function _objectWithoutPropertiesLoose(a,b){if(null==a)return{};var c={};for(var d in a)if({}.hasOwnProperty.call(a,d)){if(-1!==b.indexOf(d))continue;c[d]=a[d]}return c}function ownKeys(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function _objectSpread(a){for(var b,c=1;c<arguments.length;c++)b=null==arguments[c]?{}:arguments[c],c%2?ownKeys(Object(b),!0).forEach(function(c){_defineProperty(a,c,b[c])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(b)):ownKeys(Object(b)).forEach(function(c){Object.defineProperty(a,c,Object.getOwnPropertyDescriptor(b,c))});return a}function _typeof(a){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(a){return typeof a}:function(a){return a&&"function"==typeof Symbol&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a},_typeof(a)}function _defineProperty(a,b,c){return(b=_toPropertyKey(b))in a?Object.defineProperty(a,b,{value:c,enumerable:!0,configurable:!0,writable:!0}):a[b]=c,a}function _toPropertyKey(a){var b=_toPrimitive(a,"string");return"symbol"==_typeof(b)?b:b+""}function _toPrimitive(a,b){if("object"!=_typeof(a)||!a)return a;var c=a[Symbol.toPrimitive];if(void 0!==c){var d=c.call(a,b||"default");if("object"!=_typeof(d))return d;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===b?String:Number)(a)}import React,{Fragment,createElement,isValidElement}from"react";import{createStableHash,isNodeInstance,resolveDefaultStyle}from"./helper/node.helper.js";import{isForwardRef,isFragment,isMemo,isReactClassComponent,isValidElementType}from"./helper/react-is.helper.js";import{createRoot}from"react-dom/client";import{getComponentType,getCSSProps,getDOMProps,getElementTypeName,hasNoStyleTag}from"./helper/common.helper.js";import StyledRenderer from"./components/styled-renderer.client.js";import{resolveObjWithTheme}from"./helper/theme.helper.js";/**
2
2
  * Represents a node in a React component tree with theme and styling capabilities.
3
3
  * This class wraps React elements and handles:
4
4
  * - Props processing and normalization
@@ -6,7 +6,7 @@
6
6
  * - Child node processing and management
7
7
  * - Style processing with theme variables
8
8
  * @template E The type of React element or component this node represents
9
- */export class BaseNode{/** Hash of the current children and theme to detect changes *//** Cache for normalized children *//**
9
+ */export class BaseNode{/**
10
10
  * Constructs a new BaseNode instance.
11
11
  *
12
12
  * This constructor initializes a node with a given React element or component type
@@ -40,9 +40,11 @@
40
40
  * @returns A renderable `ReactNode`.
41
41
  * @throws {Error} If the child is not a valid React element type.
42
42
  * @private
43
- */_defineProperty(this,"rawProps",{}),_defineProperty(this,"isBaseNode",!0),_defineProperty(this,"_portalDOMElement",null),_defineProperty(this,"_portalReactRoot",null),_defineProperty(this,"_generateKey",function(a){var b=a.nodeIndex,c=a.element,d=a.existingKey,e=a.children;if(d)return d;var f,g=getElementTypeName(c);return f=Array.isArray(e)&&0<e.length?void 0===b?"".concat(g,"-").concat(e.length):"".concat(g,"-").concat(b,"-").concat(e.length):void 0===b?g:"".concat(g,"-").concat(b),f}),_defineProperty(this,"_normalizeChild",function(a){var c,d;if(!a)return a;var e=(null===(c=b.rawProps)||void 0===c?void 0:c.nodetheme)||(null===(d=b.rawProps)||void 0===d?void 0:d.theme)||b.props.nodetheme||b.props.theme;// For BaseNode instances, apply current theme if child has no theme
44
- if(a instanceof BaseNode){var f;return null!==(f=a.rawProps)&&void 0!==f&&f.nodetheme||void 0===e?a.render():new BaseNode(a.element,_objectSpread(_objectSpread({},a.rawProps),{},{nodetheme:e})).render()}// Validate element type before returning
45
- if(!isValidElementType(a)){var g=getComponentType(a);throw new Error("Invalid element type: ".concat(g," provided!"))}// Return valid React elements as-is
43
+ */_defineProperty(this,"rawProps",{}),_defineProperty(this,"isBaseNode",!0),_defineProperty(this,"_portalDOMElement",null),_defineProperty(this,"_portalReactRoot",null),_defineProperty(this,"_generateKey",function(a){var b=a.nodeIndex,c=a.element,d=a.existingKey,e=a.children;if(d)return d;var f,g=getElementTypeName(c);return f=Array.isArray(e)&&0<e.length?void 0===b?"".concat(g,"-").concat(e.length):"".concat(g,"-").concat(b,"-").concat(e.length):void 0===b?g:"".concat(g,"-").concat(b),f}),_defineProperty(this,"_normalizeChild",function(a){var c,d;// Handle null/undefined quickly
44
+ if(null===a||a===void 0)return a;// Primitives should be returned as-is (text nodes, numbers, booleans)
45
+ var e=_typeof(a);if("string"===e||"number"===e||"boolean"===e)return a;var f=(null===(c=b.rawProps)||void 0===c?void 0:c.nodetheme)||(null===(d=b.rawProps)||void 0===d?void 0:d.theme)||b.props.nodetheme||b.props.theme;// For BaseNode instances, apply current theme if child has no theme
46
+ if(a instanceof BaseNode){var g;return null!==(g=a.rawProps)&&void 0!==g&&g.nodetheme||void 0===f?a.render():new BaseNode(a.element,_objectSpread(_objectSpread({},a.rawProps),{},{nodetheme:f})).render()}// Validate element type before returning
47
+ if(!isValidElementType(a)){var h=getComponentType(a);throw new Error("Invalid element type: ".concat(h," provided!"))}// Return valid React elements as-is
46
48
  return a}),this.element=a,this.rawProps=c}/**
47
49
  * Lazily processes and retrieves the final, normalized props for the node.
48
50
  *
@@ -65,19 +67,40 @@ return a}),this.element=a,this.rawProps=c}/**
65
67
  var a=this.rawProps,b=a.ref,c=a.key,d=a.children,e=a.nodetheme,f=a.theme,g=a.props,h=void 0===g?{}:g,i=_objectWithoutProperties(a,_excluded),j=f||e,k=h,l=k.style,m=_objectWithoutProperties(k,_excluded2),n=resolveObjWithTheme(i,j),o=resolveObjWithTheme(l,j),p=n.style,q=n.css,r=_objectWithoutProperties(n,_excluded3),s=getCSSProps(r),t=getDOMProps(r),u=resolveDefaultStyle(_objectSpread(_objectSpread({},s),p)),v=this._processChildren(d,j);// Process children while maintaining theme inheritance
66
68
  // Combine processed props into final normalized form
67
69
  return _objectSpread(_objectSpread({ref:b,key:c,nodetheme:j,theme:f,css:_objectSpread(_objectSpread({},u),q),style:o},t),{},{nativeProps:m,children:v})}/**
68
- * Processes raw children, wrapping them in `BaseNode` instances where necessary
69
- * and propagating the theme.
70
+ * Attempts to retrieve cached processed children based on the current children and theme.
71
+ * This method uses a WeakMap for client-side caching and skips caching on the server.
72
+ * @param children
73
+ * @param theme
74
+ * @private
75
+ */_getCachedChildren(a,b){// Only cache on client-side, and with server-side detection
76
+ if("undefined"==typeof window)return null;// No server caching
77
+ var c=BaseNode._processedChildrenCache.get({children:a,theme:b}),d=createStableHash(a,b);return(null===c||void 0===c?void 0:c.hash)!==d||c.isServerSide?null:c.children}/**
78
+ * Caches processed children for a given set of children and theme.
79
+ * This method stores the processed ReactNode in a WeakMap for client-side caching,
80
+ * avoiding redundant processing of the same children-theme combination.
81
+ * No caching is performed on the server to avoid memory leaks.
82
+ * @param children The original children to cache.
83
+ * @param theme The theme associated with the children.
84
+ * @param processed The processed ReactNode to cache.
85
+ * @private
86
+ */_setCachedChildren(a,b,c){// Only cache on client-side to avoid RSC issues
87
+ if("undefined"!=typeof window){var d=createStableHash(a,b);BaseNode._processedChildrenCache.set({children:a,theme:b},{hash:d,children:c,isServerSide:!1})}}/**
88
+ * Recursively processes raw children, converting them into `BaseNode` instances as needed
89
+ * and propagating the provided theme.
70
90
  *
71
- * This method recursively processes each child to ensure consistent theme handling
72
- * and to convert valid elements into `BaseNode` instances. It uses caching to
73
- * optimize performance, with different strategies for server-side (string-based key)
74
- * and client-side (WeakMap-based key) environments.
91
+ * This method ensures consistent theme handling for all children and optimizes performance
92
+ * using caching strategies: a WeakMap for client-side and no caching for server-side.
93
+ *
94
+ * - If `children` is an array, each child is processed individually.
95
+ * - If `children` is a single node, it is processed directly.
96
+ * - The processed result is cached on the client to avoid redundant work.
75
97
  * @param children The raw child or array of children to process.
76
98
  * @param theme The theme to propagate to the children.
77
- * @returns The processed children, ready to be normalized for rendering.
99
+ * @returns The processed children, ready for normalization and rendering.
78
100
  * @private
79
- */_processChildren(a,b){var c=this;return a?Array.isArray(a)?a.map(function(a,d){return c._processRawNode(a,b,d)}):this._processRawNode(a,b):void 0;// No caching on the client, as it was ineffective and complex.
80
- }/**
101
+ */_processChildren(a,b){var c=this;if(a){// Use RSC-safe caching strategy
102
+ var d=this._getCachedChildren(a,b);if(d)return d;var e=Array.isArray(a)?a.map(function(a,d){return c._processRawNode(a,b,d)}):this._processRawNode(a,b);// Only cache on client-side
103
+ return"undefined"!=typeof window&&this._setCachedChildren(a,b,e),e}}/**
81
104
  * Renders a processed `NodeElement` into a `ReactNode`, applying a theme and key if necessary.
82
105
  *
83
106
  * This static method centralizes the logic for converting various types of processed elements
@@ -95,8 +118,7 @@ return _objectSpread(_objectSpread({ref:b,key:c,nodetheme:j,theme:f,css:_objectS
95
118
  * @private
96
119
  * @static
97
120
  */static _renderProcessedNode(a,b,c){var d={};// 1. BaseNode instance: re-wrap to apply key/theme if needed
98
- if(void 0!==c&&(d.key=c),a instanceof BaseNode){var e,f,g,h,i,j=(null===(e=a.rawProps)||void 0===e?void 0:e.theme)||(null===(f=a.rawProps)||void 0===f?void 0:f.nodetheme)||b;// Avoid creating new BaseNode if props are identical
99
- return shallowEqual(d,{key:null===(g=a.rawProps)||void 0===g?void 0:g.key})&&j===((null===(h=a.rawProps)||void 0===h?void 0:h.nodetheme)||(null===(i=a.rawProps)||void 0===i?void 0:i.theme))?a.render():new BaseNode(a.element,_objectSpread(_objectSpread(_objectSpread({},a.rawProps),d),{},{nodetheme:j})).render()}// 2. React class component type: wrap in BaseNode
121
+ if(void 0!==c&&(d.key=c),a instanceof BaseNode){var e,f,g,h,i,j=(null===(e=a.rawProps)||void 0===e?void 0:e.theme)||(null===(f=a.rawProps)||void 0===f?void 0:f.nodetheme)||b,k=null===(g=a.rawProps)||void 0===g?void 0:g.key;return k===c&&j===((null===(h=a.rawProps)||void 0===h?void 0:h.nodetheme)||(null===(i=a.rawProps)||void 0===i?void 0:i.theme))?a.render():new BaseNode(a.element,_objectSpread(_objectSpread(_objectSpread({},a.rawProps),d),{},{nodetheme:j})).render()}// 2. React class component type: wrap in BaseNode
100
122
  return isReactClassComponent(a)?new BaseNode(a,d).render():isNodeInstance(a)?a.render():a instanceof React.Component?a.render():"function"==typeof a?createElement(a,{key:c}):a;// 3. NodeInstance object: call its render
101
123
  // 4. React.Component instance: call its render
102
124
  // 5. Functional component: create element with key
@@ -114,11 +136,11 @@ return isReactClassComponent(a)?new BaseNode(a,d).render():isNodeInstance(a)?a.r
114
136
  * @param props.processRawNode A reference to the `_processRawNode` method for recursive processing.
115
137
  * @returns The rendered `ReactNode`.
116
138
  * @private
117
- */_functionRenderer(a){var b=a.render,c=a.passedTheme,d=a.passedKey,e=a.processRawNode,f=b();// Invoke the render function to get the child node.
118
- // Handle React.Component instance
119
- if(f instanceof React.Component){var g=f.render(),h=e(g,c);return BaseNode._renderProcessedNode(h,c,d)}// Handle BaseNode instance
120
- if(f instanceof BaseNode||isNodeInstance(f)){var i,j=f;return void 0===(null===(i=j.rawProps)||void 0===i?void 0:i.nodetheme)&&void 0!==c?new BaseNode(j.element,_objectSpread(_objectSpread({key:d},j.rawProps),{},{nodetheme:c})).render():j.render()}// Process other result types
121
- var k=e(f,c);return k?BaseNode._renderProcessedNode(k,c,d):f}/**
139
+ */_functionRenderer(a){var b,c=a.render,d=a.passedTheme,e=a.passedKey,f=a.processRawNode;// Invoke the render function to get the child node.
140
+ try{b=c()}catch(a){b=null}// Handle React.Component instance
141
+ if(b instanceof React.Component){var g=b.render(),h=f(g,d);return BaseNode._renderProcessedNode(h,d,e)}// Handle BaseNode instance
142
+ if(b instanceof BaseNode||isNodeInstance(b)){var i,j=b;return void 0===(null===(i=j.rawProps)||void 0===i?void 0:i.nodetheme)&&void 0!==d?new BaseNode(j.element,_objectSpread(_objectSpread({key:e},j.rawProps),{},{nodetheme:d})).render():j.render()}// Process other result types
143
+ var k=f(b,d);return k?BaseNode._renderProcessedNode(k,d,e):b}/**
122
144
  * Processes a single raw node, recursively converting it into a `BaseNode` or other renderable type.
123
145
  *
124
146
  * This is a central method for normalizing children. It handles various types of input:
@@ -187,7 +209,13 @@ return j=this.element===Fragment||isFragment(this.element)?{key:e}:_objectSpread
187
209
  * to call multiple times.
188
210
  * @returns `true` if the portal infrastructure is ready, `false` if on the server.
189
211
  * @private
190
- */_ensurePortalInfrastructure(){if("undefined"==typeof window)return!1;if(this._portalDOMElement&&this._portalReactRoot)return!0;if(this._portalDOMElement&&!this._portalDOMElement.isConnected&&(this._portalDOMElement=null,this._portalDOMElement=null),this._portalDOMElement||(this._portalDOMElement=document.createElement("div"),document.body.appendChild(this._portalDOMElement)),!this._portalReactRoot){if(!this._portalDOMElement)return!1;this._portalReactRoot=createRoot(this._portalDOMElement)}return!0}/**
212
+ */_ensurePortalInfrastructure(){if("undefined"==typeof window)return!1;// If both exist and DOM is connected, we're ready
213
+ if(this._portalDOMElement&&this._portalReactRoot&&this._portalDOMElement.isConnected)return!0;// If DOM element exists but isn't connected, clear both DOM element and root
214
+ if(this._portalDOMElement&&!this._portalDOMElement.isConnected){// attempt to unmount root if present
215
+ if(this._portalReactRoot){try{this._portalReactRoot.unmount()}catch(a){// swallow: unmount might fail if already removed; avoid breaking the app
216
+ }this._portalReactRoot=null}this._portalDOMElement=null}// Create DOM element if needed
217
+ // Create react root if needed
218
+ if(this._portalDOMElement||(this._portalDOMElement=document.createElement("div"),document.body.appendChild(this._portalDOMElement)),!this._portalReactRoot){if(!this._portalDOMElement)return!1;this._portalReactRoot=createRoot(this._portalDOMElement)}return!0}/**
191
219
  * Renders the node into a React Portal.
192
220
  *
193
221
  * This method mounts the node's rendered content into a separate DOM tree
@@ -206,7 +234,7 @@ return j=this.element===Fragment||isFragment(this.element)?{key:e}:_objectSpread
206
234
  * @param props The props for the node (optional).
207
235
  * @param additionalProps Additional props to merge into the node (optional).
208
236
  * @returns A new `BaseNode` instance as a `NodeInstance<E>`.
209
- */export function Node(a){var b=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{},c=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{},d=_objectSpread(_objectSpread({},b),c);return d.theme&&!d.nodetheme&&(d.nodetheme=d.theme),new BaseNode(a,d)}/**
237
+ */_defineProperty(BaseNode,"_processedChildrenCache",new WeakMap);export function Node(a){var b=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{},c=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{},d=_objectSpread(_objectSpread({},b),c);return d.theme&&!d.nodetheme&&(d.nodetheme=d.theme),new BaseNode(a,d)}/**
210
238
  * Creates a curried node factory for a given React element or component type.
211
239
  *
212
240
  * Returns a function that, when called with props, produces a `BaseNode` instance.
@@ -77,6 +77,4 @@ export declare function getDOMProps<E extends ElementType, T extends ComponentPr
77
77
  * @returns `true` if the tag is in the no-style set, otherwise `false`.
78
78
  */
79
79
  export declare function hasNoStyleTag(tag?: NodeElement): boolean;
80
- // Shallow comparison utility
81
- export declare function shallowEqual(obj1: any, obj2: any): boolean;
82
80
  //# sourceMappingURL=common.helper.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"common.helper.d.ts","sourceRoot":"","sources":["../../src/helper/common.helper.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAEpE,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AAGvE;;;;;;;;;;GAUG;AACH,eAAO,MAAM,cAAc,iCAE1B,CAAA;AAED;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,gBAAgB,qCAmC5B,CAAA;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,CAsFxD;AAED;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,GAAG,CAAC,MAAM,CAA0B,CAAA;AAEjE;;;;;;;;;;;GAWG;AACH,wBAAgB,WAAW,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC,CAU3F;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,WAAW,CAAC,CAAC,SAAS,WAAW,EAAE,CAAC,SAAS,cAAc,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC,CAUjH;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,GAAG,CAAC,EAAE,WAAW,GAAG,OAAO,CAGxD;AAED,6BAA6B;AAC7B,wBAAgB,YAAY,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAgB1D"}
1
+ {"version":3,"file":"common.helper.d.ts","sourceRoot":"","sources":["../../src/helper/common.helper.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAEpE,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AAGvE;;;;;;;;;;GAUG;AACH,eAAO,MAAM,cAAc,iCAE1B,CAAA;AAED;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,gBAAgB,qCAmC5B,CAAA;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,CAsFxD;AAED;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,GAAG,CAAC,MAAM,CAA0B,CAAA;AAEjE;;;;;;;;;;;GAWG;AACH,wBAAgB,WAAW,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC,CAU3F;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,WAAW,CAAC,CAAC,SAAS,WAAW,EAAE,CAAC,SAAS,cAAc,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC,CAUjH;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,GAAG,CAAC,EAAE,WAAW,GAAG,OAAO,CAGxD"}
@@ -61,5 +61,4 @@ function _typeof(a){"@babel/helpers - typeof";return _typeof="function"==typeof
61
61
  * Checks if a given tag is in the set of tags that should not receive style props.
62
62
  * @param tag The tag name to check (e.g., 'script', 'style').
63
63
  * @returns `true` if the tag is in the no-style set, otherwise `false`.
64
- */export function hasNoStyleTag(a){return!!(a&&"string"==typeof a)&&noStyleTagsSet.has(a.toLowerCase())}// Shallow comparison utility
65
- export function shallowEqual(a,b){if(a===b)return!0;if(!a||!b)return!1;if("object"!==_typeof(a)||"object"!==_typeof(b))return a===b;var c=Object.keys(a),d=Object.keys(b);if(c.length!==d.length)return!1;for(var e,f=0,g=c;f<g.length;f++)if(e=g[f],!(e in b)||a[e]!==b[e])return!1;return!0}
64
+ */export function hasNoStyleTag(a){return!!(a&&"string"==typeof a)&&noStyleTagsSet.has(a.toLowerCase())}
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": "0.2.13",
4
+ "version": "0.2.14",
5
5
  "type": "module",
6
6
  "main": "./dist/main.js",
7
7
  "types": "./dist/main.d.ts",