@meonode/ui 0.3.6 → 0.3.8
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 +34 -14
- package/dist/components/registry.client.d.ts +1 -1
- package/dist/components/registry.client.d.ts.map +1 -1
- package/dist/components/registry.client.js +1 -1
- package/dist/components/styled-renderer.client.d.ts +5 -833
- package/dist/components/styled-renderer.client.d.ts.map +1 -1
- package/dist/components/styled-renderer.client.js +3 -2
- package/dist/components/theme-provider.client.d.ts +1 -7
- package/dist/components/theme-provider.client.d.ts.map +1 -1
- package/dist/components/theme-provider.client.js +2 -4
- package/dist/components/theme-provider.d.ts +8 -0
- package/dist/components/theme-provider.d.ts.map +1 -0
- package/dist/components/theme-provider.js +3 -0
- package/dist/core.node.d.ts.map +1 -1
- package/dist/core.node.js +7 -7
- package/dist/helper/node.helper.d.ts +2 -828
- package/dist/helper/node.helper.d.ts.map +1 -1
- package/dist/helper/node.helper.js +11 -11
- package/dist/helper/theme.helper.d.ts +7 -2
- package/dist/helper/theme.helper.d.ts.map +1 -1
- package/dist/helper/theme.helper.js +9 -21
- package/dist/hook/useTheme.d.ts +1 -1
- package/dist/hook/useTheme.d.ts.map +1 -1
- package/dist/main.d.ts +6 -1
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +6 -1
- package/dist/nextjs-registry/index.d.ts +3 -4
- package/dist/nextjs-registry/index.d.ts.map +1 -1
- package/dist/nextjs-registry/index.js +1 -1
- package/dist/node.type.d.ts +27 -4
- package/dist/node.type.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.helper.d.ts","sourceRoot":"","sources":["../../src/helper/node.helper.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"node.helper.d.ts","sourceRoot":"","sources":["../../src/helper/node.helper.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAiB,MAAM,oBAAoB,CAAA;AACzE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAErD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,cAAc,4CAS1B,CAAA;AA8DD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDG;AACH,eAAO,MAAM,mBAAmB,iCAmE/B,CAAA"}
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
* parseFlexShorthand('1 0 auto') // → {grow: 1, shrink: 0, basis: 'auto'}
|
|
34
34
|
*/function parseFlexShorthand(a){// Early returns for invalid inputs
|
|
35
35
|
if(null===a||a===void 0)return null;// Handle numeric flex values (e.g., flex: 1)
|
|
36
|
-
if("number"==typeof a)return{grow:a,shrink:1,basis:"0%"};var b=a.trim().toLowerCase();if(!b)return null;// Handle CSS keyword values
|
|
36
|
+
if("number"==typeof a)return{grow:a,shrink:1,basis:"0%"};if("string"!=typeof a)return null;var b=a.trim().toLowerCase();if(!b)return null;// Handle CSS keyword values
|
|
37
37
|
return"none"===b?{grow:0,shrink:0,basis:"auto"}:"auto"===b?{grow:1,shrink:1,basis:"auto"}:"initial"===b?{grow:0,shrink:1,basis:"auto"}:null}/**
|
|
38
38
|
* Resolves default CSS styles to fix common flexbox layout issues.
|
|
39
39
|
*
|
|
@@ -87,9 +87,9 @@ return"none"===b?{grow:0,shrink:0,basis:"auto"}:"auto"===b?{grow:1,shrink:1,basi
|
|
|
87
87
|
* flexWrap: 'wrap'
|
|
88
88
|
* })
|
|
89
89
|
* // → { display: 'flex', flexWrap: 'wrap', minHeight: 0, minWidth: 0 }
|
|
90
|
-
*/export var resolveDefaultStyle=function resolveDefaultStyle(a){var b
|
|
90
|
+
*/export var resolveDefaultStyle=function resolveDefaultStyle(a){var b;if(null===a||a===void 0||"string"==typeof a||"number"==typeof a||"boolean"==typeof a)return{};// === STEP 1: EXTRACT FLEX PROPERTY ===
|
|
91
91
|
// Extract flex shorthand to handle it separately from individual flex properties
|
|
92
|
-
|
|
92
|
+
var c=a,d=c.flex,e=_objectWithoutProperties(c,_excluded),f="flex"===e.display||"inline-flex"===e.display,g=!!(e.overflow||e.overflowY||e.overflowX),h=(null===(b=e.flexFlow)||void 0===b?void 0:b.includes("wrap"))||"wrap"===e.flexWrap||"wrap-reverse"===e.flexWrap,i="flexShrink"in a&&a.flexShrink!==void 0,j=d?parseFlexShorthand(d):null,k=void 0;// === STEP 2: ANALYZE LAYOUT CONTEXT ===
|
|
93
93
|
// Determine what kind of element we're dealing with
|
|
94
94
|
// Check if overflow is set (any overflow value indicates potential scrolling)
|
|
95
95
|
// Check if flex wrapping is enabled (allows items to wrap to new lines)
|
|
@@ -98,15 +98,15 @@ return"none"===b?{grow:0,shrink:0,basis:"auto"}:"auto"===b?{grow:1,shrink:1,basi
|
|
|
98
98
|
// Extract shrink value from flex shorthand if provided
|
|
99
99
|
// === STEP 4: DETERMINE FLEX SHRINK BEHAVIOR ===
|
|
100
100
|
// Only set flexShrink if user hasn't explicitly provided it
|
|
101
|
-
if(!
|
|
102
|
-
if(
|
|
103
|
-
if(!
|
|
101
|
+
if(!i)// If flex shorthand contains a shrink value, use that
|
|
102
|
+
if(j)k=j.shrink;else// Apply context-based defaults
|
|
103
|
+
if(!f)// NON-FLEX CONTAINER LOGIC:
|
|
104
104
|
// Default flex-shrink to 0 to prevent unwanted shrinking of flex items
|
|
105
|
-
|
|
105
|
+
k=0;else// FLEX CONTAINER LOGIC:
|
|
106
106
|
// Only prevent shrinking when container is constrained (no overflow handling, no wrapping)
|
|
107
|
-
if(!
|
|
107
|
+
if(!g){var l="column"===e.flexDirection||"column-reverse"===e.flexDirection,m="row"===e.flexDirection||"row-reverse"===e.flexDirection||!e.flexDirection;l&&!h?k=0:m&&!h&&(k=0)}// === STEP 5: RETURN RESOLVED STYLES ===
|
|
108
108
|
// Combine all processed styles with essential defaults
|
|
109
|
-
return _objectSpread({flex:
|
|
110
|
-
flexShrink:
|
|
109
|
+
return _objectSpread({flex:d,// Preserve original flex shorthand
|
|
110
|
+
flexShrink:k,// Apply computed or explicit flexShrink
|
|
111
111
|
minHeight:0,// Fix flex item scrolling issues
|
|
112
|
-
minWidth:0},
|
|
112
|
+
minWidth:0},e)};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { Theme } from '../node.type.js';
|
|
2
2
|
/**
|
|
3
3
|
* Resolves theme variable references in an object's values recursively.
|
|
4
4
|
* This function performs a "smart merge" to maintain object reference identity
|
|
@@ -8,8 +8,13 @@ import type { ThemeSystem } from '../node.type.js';
|
|
|
8
8
|
* Theme variables are referenced using the format "theme.path.to.value".
|
|
9
9
|
* @param obj The object (or array) whose values should be resolved against the theme. Defaults to an empty object.
|
|
10
10
|
* @param theme The theme object containing variable definitions. Optional.
|
|
11
|
+
* @param options Options to control processing behavior.
|
|
12
|
+
* - processFunctions: If true, functions within the object will be executed with the theme as an argument.
|
|
13
|
+
* If false, functions will be ignored. Defaults to false.
|
|
11
14
|
* @returns A new object (or array) with all theme variables resolved to their corresponding values,
|
|
12
15
|
* or the original object (or array) if no changes were necessary.
|
|
13
16
|
*/
|
|
14
|
-
export declare const resolveObjWithTheme: (obj?: Record<string, any>, theme?:
|
|
17
|
+
export declare const resolveObjWithTheme: (obj?: Record<string, any>, theme?: Theme | undefined, options?: {
|
|
18
|
+
processFunctions?: boolean | undefined;
|
|
19
|
+
}) => any;
|
|
15
20
|
//# sourceMappingURL=theme.helper.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theme.helper.d.ts","sourceRoot":"","sources":["../../src/helper/theme.helper.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"theme.helper.d.ts","sourceRoot":"","sources":["../../src/helper/theme.helper.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAe,MAAM,mBAAmB,CAAA;AA8G3D;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,mBAAmB;;SA2H/B,CAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
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{getValueByPath}from"./common.helper.js";import{ObjHelper}from"./obj.helper.js";/**
|
|
1
|
+
"use strict";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{getValueByPath}from"./common.helper.js";import{ObjHelper}from"./obj.helper.js";/**
|
|
2
2
|
* Cache manager for theme resolution operations.
|
|
3
3
|
* Provides singleton-based caching with different strategies for server vs client environments.
|
|
4
4
|
*/class ThemeResolverCache{constructor(){// Track cache statistics for performance monitoring
|
|
@@ -30,25 +30,13 @@ _defineProperty(ThemeResolverCache,"_instance",null);var themeCache=ThemeResolve
|
|
|
30
30
|
* Theme variables are referenced using the format "theme.path.to.value".
|
|
31
31
|
* @param obj The object (or array) whose values should be resolved against the theme. Defaults to an empty object.
|
|
32
32
|
* @param theme The theme object containing variable definitions. Optional.
|
|
33
|
+
* @param options Options to control processing behavior.
|
|
34
|
+
* - processFunctions: If true, functions within the object will be executed with the theme as an argument.
|
|
35
|
+
* If false, functions will be ignored. Defaults to false.
|
|
33
36
|
* @returns A new object (or array) with all theme variables resolved to their corresponding values,
|
|
34
37
|
* or the original object (or array) if no changes were necessary.
|
|
35
|
-
*/export var resolveObjWithTheme=function resolveObjWithTheme(){var a=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},b=1<arguments.length?arguments[1]:void 0;if(!b||!!b&&"object"===_typeof(b)&&0===Object.keys(b).length||0===Object.keys(a).length)return a;//
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
* @param currentObj The current object or array being processed in the recursion.
|
|
41
|
-
* @param visited A Set to keep track of objects that have already been visited to detect circular references.
|
|
42
|
-
* @returns The processed object/array with theme variables resolved, or the original `currentObj`
|
|
43
|
-
* if no changes were made to it or its direct children (excluding deeper nested changes).
|
|
44
|
-
*/var d=function resolveRecursively(a,c){// Base cases for non-objects/null, or already visited objects (circular reference)
|
|
45
|
-
if(null===a||"object"!==_typeof(a))return a;if(c.has(a))return a;// Handle Arrays
|
|
46
|
-
if(c.add(a),Array.isArray(a)){for(var e=a,f=!1,g=0;g<a.length;g++){var h=a[g],j=d(h,c);j===h?f&&(e[g]=h):(!f&&(e=[...a],f=!0),e[g]=j)}return e}// Handle Plain Objects (only process objects created with {})
|
|
47
|
-
var k=a,l=!1,m=function _loop(){// Ensure it's an own property
|
|
48
|
-
var e=a[n],f=e;if("function"==typeof e||"object"===_typeof(e)&&null!==e&&!Array.isArray(e)&&Object.getPrototypeOf(e)!==Object.prototype||// Exclude plain objects and arrays
|
|
49
|
-
"object"!==_typeof(e)&&"string"!=typeof e)f=e;else if("string"==typeof e&&e.includes("theme.")){var g=e,h=!1,i=themeCache.getThemeRegex();// Use cached regex instance
|
|
50
|
-
g=g.replace(i,function(a,c){// Check path lookup cache first
|
|
51
|
-
var d=themeCache.getPathLookup(b,c);return null===d&&(d=getValueByPath(b,c),themeCache.setPathLookup(b,c,d)),void 0!==d&&null!==d?(h=!0,"object"===_typeof(d)&&!Array.isArray(d)&&"default"in d?d["default"]:d):a}),f=h&&g!==e?g:e}else"object"===_typeof(e)&&null!==e&&(// Recursively process nested objects or arrays
|
|
52
|
-
f=d(e,c));f===e?l&&(k[n]=e):(!l&&(k=_objectSpread({},a),l=!0),k[n]=f)};for(var n in a)m();return k},e=d(a,new Set);// Perform the resolution
|
|
53
|
-
// Cache the result (only on server-side)
|
|
54
|
-
return themeCache.shouldCache()&&themeCache.setResolution(a,b,e),e};
|
|
38
|
+
*/export var resolveObjWithTheme=function resolveObjWithTheme(){var a=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},b=1<arguments.length?arguments[1]:void 0,c=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{},d=c.processFunctions;if(!b||!!b&&"object"===_typeof(b)&&0===Object.keys(b).length||0===Object.keys(a).length)return a;// Ensure theme has a valid system property
|
|
39
|
+
var e=null===b||void 0===b?void 0:b.system;if(!e||"object"!==_typeof(e)||0===Object.keys(e).length)return a;// Check cache first (only on server-side for RSC optimization)
|
|
40
|
+
if(themeCache.shouldCache()){// Note: Caching is based on the input object. If processFunctions changes behavior,
|
|
41
|
+
// a more complex cache key may be needed in the future.
|
|
42
|
+
var f=themeCache.getResolution(a,e);if(null!==f)return f}var g=function resolveRecursively(a,c){if(null===a||"object"!==_typeof(a))return a;if(c.has(a))return a;c.add(a);var f=function processThemeString(a){var b=a,c=!1,d=themeCache.getThemeRegex();return b=b.replace(d,function(a,b){var d=themeCache.getPathLookup(e,b);return null===d&&(d=getValueByPath(e,b),themeCache.setPathLookup(e,b,d)),void 0!==d&&null!==d?(c=!0,"object"===_typeof(d)&&!Array.isArray(d)&&"default"in d?d["default"]:d):a}),c?b:a};if(Array.isArray(a)){for(var h=a,j=!1,k=0;k<a.length;k++){var l=a[k],m=g(l,c);m===l?j&&(h[k]=l):(!j&&(h=[...a],j=!0),h[k]=m)}return h}var n=a,o=!1;for(var p in a){var q=a[p],r=q;if("function"!=typeof q)("object"!==_typeof(q)||null===q||Array.isArray(q)||Object.getPrototypeOf(q)===Object.prototype)&&("object"===_typeof(q)||"string"==typeof q)?"string"==typeof q&&q.includes("theme.")?r=f(q):"object"===_typeof(q)&&null!==q&&(r=g(q,c)):r=q;else if(void 0!==d&&d){var s=q(b);r=g(s,c)}else r=q;r===q?o&&(n[p]=q):(!o&&(n=_objectSpread({},a),o=!0),n[p]=r)}return n},h=g(a,new Set);return themeCache.shouldCache()&&themeCache.setResolution(a,e,h),h};
|
package/dist/hook/useTheme.d.ts
CHANGED
|
@@ -4,5 +4,5 @@
|
|
|
4
4
|
* @returns {ThemeContextValue} The theme context value.
|
|
5
5
|
* @throws {Error} If used outside of a ThemeProvider.
|
|
6
6
|
*/
|
|
7
|
-
export declare const useTheme: () => import("../
|
|
7
|
+
export declare const useTheme: () => import("../components/theme-provider.client.js").ThemeContextValue;
|
|
8
8
|
//# sourceMappingURL=useTheme.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useTheme.d.ts","sourceRoot":"","sources":["../../src/hook/useTheme.ts"],"names":[],"mappings":"AAIA;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,
|
|
1
|
+
{"version":3,"file":"useTheme.d.ts","sourceRoot":"","sources":["../../src/hook/useTheme.ts"],"names":[],"mappings":"AAIA;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,4EA+BpB,CAAA"}
|
package/dist/main.d.ts
CHANGED
|
@@ -1,8 +1,13 @@
|
|
|
1
1
|
export { Node, createNode, createChildrenFirstNode } from './core.node.js';
|
|
2
|
+
// High Order Components
|
|
2
3
|
export * from './hoc/index.js';
|
|
4
|
+
// Helpers
|
|
3
5
|
export * from './helper/node.helper.js';
|
|
6
|
+
// Types
|
|
4
7
|
export * from './node.type.js';
|
|
8
|
+
// Components
|
|
5
9
|
export * from './components/html.node.js';
|
|
6
|
-
export * from './components/theme-provider.
|
|
10
|
+
export * from './components/theme-provider.js';
|
|
11
|
+
// Hooks
|
|
7
12
|
export * from './hook/index.js';
|
|
8
13
|
//# sourceMappingURL=main.d.ts.map
|
package/dist/main.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAA;AAE7E,cAAc,mBAAmB,CAAA;AAEjC,cAAc,4BAA4B,CAAA;AAE1C,cAAc,mBAAmB,CAAA;AAEjC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,
|
|
1
|
+
{"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAA;AAE7E,wBAAwB;AACxB,cAAc,mBAAmB,CAAA;AAEjC,UAAU;AACV,cAAc,4BAA4B,CAAA;AAE1C,QAAQ;AACR,cAAc,mBAAmB,CAAA;AAEjC,aAAa;AACb,cAAc,8BAA8B,CAAA;AAC5C,cAAc,mCAAmC,CAAA;AAEjD,QAAQ;AACR,cAAc,oBAAoB,CAAA"}
|
package/dist/main.js
CHANGED
|
@@ -1 +1,6 @@
|
|
|
1
|
-
export{Node,createNode,createChildrenFirstNode}from"./core.node.js"
|
|
1
|
+
export{Node,createNode,createChildrenFirstNode}from"./core.node.js";// High Order Components
|
|
2
|
+
export*from"./hoc/index.js";// Helpers
|
|
3
|
+
export*from"./helper/node.helper.js";// Types
|
|
4
|
+
export*from"./node.type.js";// Components
|
|
5
|
+
export*from"./components/html.node.js";export*from"./components/theme-provider.js";// Hooks
|
|
6
|
+
export*from"./hook/index.js";
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import type { NodeElement, NodeInstance } from '../node.type.js';
|
|
2
1
|
import _StyleRegistry from '../components/registry.client.js';
|
|
3
|
-
export declare const StyleRegistry: <
|
|
4
|
-
|
|
5
|
-
}
|
|
2
|
+
export declare const StyleRegistry: (<AdditionalProps extends Record<string, any> = Record<string, any>>(props: import("../node.type").MergedProps<typeof _StyleRegistry, AdditionalProps>) => import("../node.type").NodeInstance<typeof _StyleRegistry>) & {
|
|
3
|
+
element: typeof _StyleRegistry;
|
|
4
|
+
};
|
|
6
5
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/nextjs-registry/index.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/nextjs-registry/index.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,oCAAoC,CAAA;AAG/D,eAAO,MAAM,aAAa;;CAA6B,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import _StyleRegistry from"../components/registry.client.js";import{
|
|
1
|
+
import _StyleRegistry from"../components/registry.client.js";import{createNode}from"../core.node.js";export var StyleRegistry=createNode(_StyleRegistry);
|
package/dist/node.type.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React, { type CSSProperties, type ReactNode, type JSX, type ElementType, type ComponentType, type JSXElementConstructor, type Component, type ExoticComponent, type ReactElement } from 'react';
|
|
2
|
-
import type { CSSInterpolation } from '@emotion/serialize';
|
|
3
2
|
import type { NO_STYLE_TAGS } from './constants/common.const.js';
|
|
4
|
-
import type { ComponentNodeProps } from './hoc';
|
|
3
|
+
import type { ComponentNodeProps } from './hoc/component.hoc.js';
|
|
4
|
+
import type { CSSObject, CSSInterpolation } from '@emotion/serialize';
|
|
5
5
|
// --- Utility Types ---
|
|
6
6
|
// Utility to get keys of required properties in a type T.
|
|
7
7
|
type RequiredKeys<T> = {
|
|
@@ -96,6 +96,29 @@ export type FinalNodeProps = ReactAttributes & Partial<{
|
|
|
96
96
|
css: any;
|
|
97
97
|
children: Children;
|
|
98
98
|
}>;
|
|
99
|
+
/**
|
|
100
|
+
* A value that can be a direct value or a function of the theme.
|
|
101
|
+
*/
|
|
102
|
+
type ThemedValue<T> = T | ((theme: Theme) => T);
|
|
103
|
+
/**
|
|
104
|
+
* A themed version of CSSProperties where each property can be a theme-dependent function.
|
|
105
|
+
*/
|
|
106
|
+
type ThemedCSSProperties = {
|
|
107
|
+
[P in keyof CSSProperties]: ThemedValue<CSSProperties[P]>;
|
|
108
|
+
};
|
|
109
|
+
/**
|
|
110
|
+
* A themed version of Emotion's `CSSObject` type. It allows property values to be
|
|
111
|
+
* functions that receive the theme. This is applied recursively to handle
|
|
112
|
+
* nested objects like pseudo-selectors and media queries.
|
|
113
|
+
*/
|
|
114
|
+
type ThemedCSSObject = {
|
|
115
|
+
[P in keyof CSSObject]: ThemedValue<CSSObject[P] extends object ? ThemedCSSObject : CSSObject[P]>;
|
|
116
|
+
};
|
|
117
|
+
/**
|
|
118
|
+
* The complete type for the `css` prop, combining Emotion's `CSSInterpolation`
|
|
119
|
+
* with a themed version (`ThemedCSSObject`) to support theme-aware styling functions.
|
|
120
|
+
*/
|
|
121
|
+
export type CssProp = ThemedCSSObject | CSSInterpolation;
|
|
99
122
|
/**
|
|
100
123
|
* Helper type to determine if the props P have a 'style' property
|
|
101
124
|
* that is compatible with CSSProperties.
|
|
@@ -123,8 +146,8 @@ export type HasNoStyleProp<E extends NodeElement> = E extends NoStyleTags ? true
|
|
|
123
146
|
* - Maintains React's key prop for reconciliation
|
|
124
147
|
* @template E - The element type these props apply to
|
|
125
148
|
*/
|
|
126
|
-
export type NodeProps<E extends NodeElement> = Omit<PropsOf<E>, keyof CSSProperties | 'children' | 'style' | 'props' | 'key'> & ReactAttributes & (HasCSSCompatibleStyleProp<PropsOf<E>> extends true ?
|
|
127
|
-
css:
|
|
149
|
+
export type NodeProps<E extends NodeElement> = Omit<PropsOf<E>, keyof CSSProperties | 'children' | 'style' | 'props' | 'key'> & ReactAttributes & (HasCSSCompatibleStyleProp<PropsOf<E>> extends true ? ThemedCSSProperties : object) & (HasNoStyleProp<E> extends false ? Partial<{
|
|
150
|
+
css: CssProp;
|
|
128
151
|
}> : object) & Partial<{
|
|
129
152
|
props: Partial<Omit<PropsOf<E>, 'children'>>;
|
|
130
153
|
children: Children;
|
package/dist/node.type.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.type.d.ts","sourceRoot":"","sources":["../src/node.type.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EACZ,KAAK,aAAa,EAClB,KAAK,SAAS,EACd,KAAK,GAAG,EACR,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,qBAAqB,EAC1B,KAAK,SAAS,EACd,KAAK,eAAe,EACpB,KAAK,YAAY,EAClB,MAAM,OAAO,CAAA;AACd,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"node.type.d.ts","sourceRoot":"","sources":["../src/node.type.ts"],"names":[],"mappings":"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"}
|
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.3.
|
|
4
|
+
"version": "0.3.8",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/main.js",
|
|
7
7
|
"types": "./dist/main.d.ts",
|