neko-ui 1.0.45 → 1.0.47

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 (49) hide show
  1. package/es/back-top/style.js +2 -2
  2. package/es/button/style.js +14 -14
  3. package/es/capture-screen/style.js +2 -2
  4. package/es/carousel/index.js +1 -1
  5. package/es/color-palette/index.js +1 -1
  6. package/es/color-palette/style.js +4 -4
  7. package/es/color-picker/style.js +2 -2
  8. package/es/from-schema/index.d.ts +3 -0
  9. package/es/from-schema/index.js +1 -0
  10. package/es/index.d.ts +1 -1
  11. package/es/index.js +33 -2
  12. package/es/input/index.js +9 -9
  13. package/es/markdown/index.css +35 -35
  14. package/es/photo/index.js +1 -1
  15. package/es/photo/style.js +1 -0
  16. package/es/prism/prism.css +15 -15
  17. package/es/skeleton/style.js +1 -1
  18. package/es/tooltip/style.js +3 -3
  19. package/es/tree/index.d.ts +46 -15
  20. package/es/tree/index.js +1 -1
  21. package/es/tree/style.d.ts +0 -1
  22. package/es/tree/style.js +11 -11
  23. package/lib/back-top/style.js +1 -1
  24. package/lib/button/style.js +1 -1
  25. package/lib/capture-screen/style.js +1 -1
  26. package/lib/carousel/index.js +1 -1
  27. package/lib/color-palette/index.js +1 -1
  28. package/lib/color-palette/style.js +1 -1
  29. package/lib/color-picker/style.js +1 -1
  30. package/lib/from-schema/index.d.ts +3 -0
  31. package/lib/from-schema/index.js +1 -0
  32. package/lib/index.d.ts +1 -1
  33. package/lib/index.js +1 -1
  34. package/lib/input/index.js +1 -1
  35. package/lib/markdown/index.css +35 -35
  36. package/lib/photo/index.js +1 -1
  37. package/lib/photo/style.js +1 -1
  38. package/lib/prism/prism.css +15 -15
  39. package/lib/skeleton/style.js +1 -1
  40. package/lib/tooltip/style.js +1 -1
  41. package/lib/tree/index.d.ts +46 -15
  42. package/lib/tree/index.js +1 -1
  43. package/lib/tree/style.d.ts +0 -1
  44. package/lib/tree/style.js +1 -1
  45. package/package.json +12 -12
  46. package/es/schema-to-tree-data/index.d.ts +0 -3
  47. package/es/schema-to-tree-data/index.js +0 -1
  48. package/lib/schema-to-tree-data/index.d.ts +0 -3
  49. package/lib/schema-to-tree-data/index.js +0 -1
@@ -1,8 +1,8 @@
1
1
  import{injectGlobal}from"../emotion";import prefixCls from"../prefix-cls";export const cls={backtop:prefixCls("back-top"),out:prefixCls("back-top-out")};injectGlobal`
2
2
  :root {
3
3
  --back-top-color: #fff;
4
- --back-top-bg: var(--text-secondary, #4e4e4e);
5
- --back-top-hover-bg: var(--text-color, rgb(0 0 0 / 65%));
4
+ --back-top-bg: var(--text-secondary);
5
+ --back-top-hover-bg: var(--text-color);
6
6
  }
7
7
 
8
8
  [data-theme='dark'] {
@@ -3,17 +3,17 @@ import{injectGlobal}from"../emotion";import prefixCls from"../prefix-cls";export
3
3
  .${cls.label} {
4
4
  --btn-color: var(--${type}-color);
5
5
  }
6
- --btn-border: var(--${type}-color-border);
7
- --btn-bg: var(--${type}-color-bg);
8
- --btn-hover-color: var(--${type}-color-hover);
9
- --btn-active-color: var(--${type}-color-active);
10
- --btn-outline-color: var(--${type}-color-outline);
6
+ --btn-border: var(--${type}-border);
7
+ --btn-bg: var(--${type}-bg);
8
+ --btn-hover-color: var(--${type}-hover);
9
+ --btn-active-color: var(--${type}-active);
10
+ --btn-outline-color: var(--${type}-outline);
11
11
  }
12
12
  ${fillCls} {
13
13
  --btn-bg: var(--${type}-color);
14
14
  --btn-border: var(--${type}-color);
15
- --btn-hover-bg: var(--${type}-color-hover);
16
- --btn-active-bg: var(--${type}-color-active);
15
+ --btn-hover-bg: var(--${type}-hover);
16
+ --btn-active-bg: var(--${type}-active);
17
17
  }
18
18
  `}injectGlobal`
19
19
  :root {
@@ -52,7 +52,7 @@ import{injectGlobal}from"../emotion";import prefixCls from"../prefix-cls";export
52
52
  min-inline-size: var(--btn-size);
53
53
  block-size: fit-content;
54
54
  min-block-size: var(--btn-size);
55
- font-size: var(--font-size, 14px);
55
+ font-size: var(--font-size);
56
56
  color: var(--btn-color);
57
57
  background-color: var(--btn-bg);
58
58
  outline-offset: 4px;
@@ -87,12 +87,12 @@ import{injectGlobal}from"../emotion";import prefixCls from"../prefix-cls";export
87
87
  --btn-size: 1.5rem;
88
88
 
89
89
  padding: 0 7px;
90
- font-size: var(--font-size-xs, 10px);
90
+ font-size: var(--font-size-xs);
91
91
  }
92
92
  .${cls.large} {
93
93
  --btn-size: 2.5rem;
94
94
 
95
- font-size: var(--font-size-lg, 16px);
95
+ font-size: var(--font-size-lg);
96
96
  }
97
97
  .${cls.link} {
98
98
  .${cls.label} {
@@ -100,12 +100,12 @@ import{injectGlobal}from"../emotion";import prefixCls from"../prefix-cls";export
100
100
  }
101
101
  }
102
102
  .${cls.default} {
103
- --btn-outline-color: var(--primary-color-outline);
103
+ --btn-outline-color: var(--primary-outline);
104
104
  --btn-color: var(--text-color);
105
- --btn-bg: var(--component-background, #fff);
105
+ --btn-bg: var(--component-background);
106
106
  --btn-border: var(--border-color);
107
- --btn-hover-color: var(--primary-color-hover);
108
- --btn-active-color: var(--primary-color-active);
107
+ --btn-hover-color: var(--primary-hover);
108
+ --btn-active-color: var(--primary-active);
109
109
  }
110
110
  ${btnColor("primary")}
111
111
  ${btnColor("error")}
@@ -7,7 +7,7 @@ import{injectGlobal}from"../emotion";import prefixCls from"../prefix-cls";export
7
7
  }
8
8
  .${cls.view} video {
9
9
  border: var(--border-base);
10
- border-radius: var(--border-radius, 8px);
10
+ border-radius: var(--border-radius);
11
11
  inline-size: 100%;
12
12
  transition: border-color var(--transition-duration) var(--transition-timing-function);
13
13
  }
@@ -39,7 +39,7 @@ import{injectGlobal}from"../emotion";import prefixCls from"../prefix-cls";export
39
39
 
40
40
  &::before {
41
41
  display: block;
42
- border-inline-start: 1px solid var(--border-color, #d9d9d9);
42
+ border-inline-start: 1px solid var(--border-color);
43
43
  block-size: 100%;
44
44
  transition: border-color var(--transition-duration) var(--transition-timing-function);
45
45
  transform: translateX(-16px);
@@ -1 +1 @@
1
- import React,{useEffect,useMemo,useRef}from"react";import{isUndefined}from"@moneko/common";import sso from"shared-store-object";import{cls}from"./style";import{cx}from"../emotion";function Carousel(props){const carousel=useRef(sso({prev:props.children.length-1,offset:props.offset||0,next:1,direction:0,playTimer:null,onOffsetChange(){var _props_onOffsetChange;if(carousel.current.direction===-1){carousel.current.offset=carousel.current.prev}else if(carousel.current.direction===1){carousel.current.offset=carousel.current.next}carousel.current.direction=0;(_props_onOffsetChange=props.onOffsetChange)===null||_props_onOffsetChange===void 0?void 0:_props_onOffsetChange.call(props,carousel.current.offset)},handlePrev(){carousel.current.direction=-1},handleNext(){carousel.current.direction=1}}));const{offset,prev,next,direction}=carousel.current;const{autoplay=-1,className,style,dots,children,header}=props;const dotLen=useMemo(()=>Array(children.length>20?20:children.length).fill(0),[children.length]);useEffect(()=>{if(carousel.current.playTimer){clearTimeout(carousel.current.playTimer)}if(autoplay>0){carousel.current.playTimer=setInterval(()=>{if(autoplay<1&&carousel.current.playTimer){clearInterval(carousel.current.playTimer)}carousel.current.handleNext()},autoplay)}},[autoplay]);useEffect(()=>{if(!isUndefined(props.offset)){carousel.current.offset=props.offset}},[props.offset]);useEffect(()=>{let _prev=offset-1,_next=offset+1;if(_prev<0){_prev=children.length-1}if(_next>children.length-1){_next=0}carousel.current.prev=_prev;carousel.current.next=_next},[children.length,offset]);return React.createElement("section",{className:cx(cls.carousel,className),style:style},React.createElement("section",{className:cls.list,"data-dir":direction,onAnimationEnd:carousel.current.onOffsetChange},React.createElement("div",{className:cls.item},children[prev]),React.createElement("div",{className:cls.item},children[offset]),React.createElement("div",{className:cls.item},children[next])),header?React.createElement("section",{className:cls.header},header(offset)):null,React.createElement("div",{className:cx("neko-icon",cls.prev),onClick:carousel.current.handlePrev}),React.createElement("div",{className:cx("neko-icon",cls.next),onClick:carousel.current.handleNext}),dots?React.createElement("div",{className:cls.dots},dotLen.map((_,i)=>React.createElement("i",{key:i,className:cx(cls.dot,i===offset%20+direction&&cls.active),onClick:()=>carousel.current.offset=Math.floor(offset/20)*20+i}))):null)}export default Carousel;
1
+ import React,{useEffect,useMemo,useRef}from"react";import{isUndefined}from"@moneko/common";import sso from"shared-store-object";import{cls}from"./style";import{cx}from"../emotion";function Carousel(props){const carousel=useRef(sso({prev:props.children.length-1,offset:props.offset||0,next:1,direction:0,playTimer:null,onOffsetChange(){var _props_onOffsetChange;if(carousel.current.direction===-1){carousel.current.offset=carousel.current.prev}else if(carousel.current.direction===1){carousel.current.offset=carousel.current.next}carousel.current.direction=0;(_props_onOffsetChange=props.onOffsetChange)===null||_props_onOffsetChange===void 0?void 0:_props_onOffsetChange.call(props,carousel.current.offset)},handlePrev(){carousel.current.direction=-1},handleNext(){carousel.current.direction=1}}));const{offset,prev,next,direction}=carousel.current;const{autoplay=-1,className,style,dots,children,header}=props;const dotLen=useMemo(()=>Array(children.length>20?20:children.length).fill(0),[children.length]);useEffect(()=>{if(carousel.current.playTimer){clearTimeout(carousel.current.playTimer)}if(autoplay>0){carousel.current.playTimer=setInterval(()=>{if(autoplay<1&&carousel.current.playTimer){clearInterval(carousel.current.playTimer)}carousel.current.handleNext()},autoplay)}},[autoplay]);useEffect(()=>{if(!isUndefined(props.offset)){carousel.current.offset=props.offset}},[props.offset]);useEffect(()=>{let _prev=offset-1,_next=offset+1;if(_prev<0){_prev=children.length-1}if(_next>children.length-1){_next=0}carousel.current.prev=_prev;carousel.current.next=_next},[children.length,offset]);useEffect(()=>{const _store=carousel.current;return()=>{if(_store.playTimer){clearTimeout(_store.playTimer)}_store()}},[]);return React.createElement("section",{className:cx(cls.carousel,className),style:style},React.createElement("section",{className:cls.list,"data-dir":direction,onAnimationEnd:carousel.current.onOffsetChange},React.createElement("div",{className:cls.item},children[prev]),React.createElement("div",{className:cls.item},children[offset]),React.createElement("div",{className:cls.item},children[next])),header?React.createElement("section",{className:cls.header},header(offset)):null,React.createElement("div",{className:cx("neko-icon",cls.prev),onClick:carousel.current.handlePrev}),React.createElement("div",{className:cx("neko-icon",cls.next),onClick:carousel.current.handleNext}),dots?React.createElement("div",{className:cls.dots},dotLen.map((_,i)=>React.createElement("i",{key:i,className:cx(cls.dot,i===offset%20+direction&&cls.active),onClick:()=>carousel.current.offset=Math.floor(offset/20)*20+i}))):null)}export default Carousel;
@@ -1 +1 @@
1
- function _extends(){_extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key]}}}return target};return _extends.apply(this,arguments)}function _objectWithoutProperties(source,excluded){if(source==null)return{};var target=_objectWithoutPropertiesLoose(source,excluded);var key,i;if(Object.getOwnPropertySymbols){var sourceSymbolKeys=Object.getOwnPropertySymbols(source);for(i=0;i<sourceSymbolKeys.length;i++){key=sourceSymbolKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}}return target}function _objectWithoutPropertiesLoose(source,excluded){if(source==null)return{};var target={};var sourceKeys=Object.keys(source);var key,i;for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;target[key]=source[key]}return target}import React,{useCallback,useEffect,useMemo,useRef,useState}from"react";import{colorParse,passiveSupported,setClipboard,throttle}from"@moneko/common";import{cls}from"./style";import{cx}from"../emotion";import{Input,InputNumber}from"../index";const material=["#f44336","#E91E63","#9C27B0","#673AB7","#3F51B5","#2196F3","#03A9F4","#00BCD4","#009688","#4CAF50","#8BC34A","#CDDC39","#FFEB3B","#FFC107","#FF9800","#FF5722","#795548","#9E9E9E","#607D8B","rgba(0,0,0,.65)","transparent"];function formatterOpacity(v){return v?Number((v*100).toFixed()):v}function parseOpacity(v){let _val=v;if(typeof v==="string"){_val=v.replace(/[^\d]/g,"")}return _val/100}const opt={hexa:{get:"toHexa",next:"rgba",max:[255,255,255,1]},rgba:{get:"toRgba",next:"hsla",max:[255,255,255,1]},hsla:{get:"toHsla",next:"hsva",max:[360,100,100,1]},hsva:{get:"toHsva",next:"cmyk",max:[360,100,100,1]},cmyk:{get:"toCmyk",next:"hexa",max:[100,100,100,100]}};const HexaForm=({value,onChange})=>{const[hex,setHex]=useState(value);const hexChange=useCallback(v=>{if(typeof v==="string"){setHex(v);throttle(onChange,4)(v)}},[onChange]);useEffect(()=>{setHex(value)},[value]);return React.createElement(Input,{className:cls.input,name:"hex",size:"small",value:hex,onChange:hexChange})};const ColorPalette=_param=>{var{className,defaultValue="#5794ff",value,onChange}=_param,props=_objectWithoutProperties(_param,["className","defaultValue","value","onChange"]);const colorPickerRef=useRef(null);const color=useRef(colorParse(value||defaultValue));const drag=useRef(false);const[type,setType]=useState(color.current.type);const[hsva,setHSVA]=useState(color.current.value);const[inputVal,setInputVal]=useState(color.current[opt[type].get]());const setColor=useCallback(c=>{if(c&&color.current[opt[color.current.type].get]().toString()!==c){const nc=colorParse(c);color.current.setValue(nc.value);color.current.type=nc.type;setInputVal(color.current[opt[color.current.type].get]());setType(color.current.type);setHSVA(color.current.value)}},[]);const changeColor=useCallback(ev=>{if(colorPickerRef.current){const _hsva=[...color.current.value];const{x,y,width,height}=colorPickerRef.current.getBoundingClientRect();_hsva[1]=Math.floor(Math.min(Math.max(0,(ev.clientX-x)/width*100),100));_hsva[2]=Math.floor(100-Math.min(Math.max(0,(ev.clientY-y)/height*100),100));color.current.setValue(_hsva);setHSVA(_hsva)}},[]);const colorPickerMouseDown=useCallback(e=>{Object.assign(drag,{current:true});changeColor(e)},[changeColor]);const colorPickerMouseMove=useCallback(e=>{if(drag.current){changeColor(e)}},[changeColor]);const colorPickerMouseUp=useCallback(()=>{Object.assign(drag,{current:false})},[]);const handleSwitch=useCallback(()=>{color.current.type=opt[color.current.type].next;setInputVal(color.current[opt[color.current.type].get]());setType(color.current.type)},[]);const handleCopy=useCallback(e=>{setClipboard(inputVal.toString(),e.target)},[inputVal]);const setHue=useCallback(e=>{const _hsva=[...color.current.value];_hsva[0]=Number(e.target.value);setHSVA(_hsva)},[]);const setAlpha=useCallback(e=>{const _hsva=[...color.current.value];_hsva[3]=Number(e.target.value);setHSVA(_hsva)},[]);const handleFliedChange=useCallback((i,v)=>{if(typeof v==="number"){const old=color.current[opt[color.current.type].get]();old[i]=v||0;setInputVal(old);if(i===3&&color.current.type!=="cmyk"){setAlpha({target:{value:v||0}})}else{setHSVA(colorParse(old.toString()).value)}}},[setAlpha]);const handleHexChange=useCallback(hex=>{if(color.current.isColor(hex)){setColor(hex)}},[setColor]);const style=useMemo(()=>{return{"--c":color.current.toRgbaString(),"--h":hsva[0],"--s":hsva[1],"--v":hsva[2],"--a":hsva[3]}},[hsva]);useEffect(()=>{throttle(setColor,4)(value)},[setColor,value]);useEffect(()=>{color.current.setValue(hsva);color.current.type=type;setInputVal(color.current[opt[type].get]())},[hsva,type]);useEffect(()=>{onChange===null||onChange===void 0?void 0:onChange(inputVal.toString())},[onChange,inputVal,setColor]);useEffect(()=>{document.documentElement.addEventListener("mousemove",colorPickerMouseMove,passiveSupported);document.documentElement.addEventListener("mouseup",colorPickerMouseUp,passiveSupported);return()=>{document.documentElement.removeEventListener("mousemove",colorPickerMouseMove,passiveSupported);document.documentElement.removeEventListener("mouseup",colorPickerMouseUp,passiveSupported)}},[colorPickerMouseMove,colorPickerMouseUp]);return React.createElement("div",_extends({},props,{className:cx(cls.palette,className),style:style}),React.createElement("div",{className:cls.picker,ref:colorPickerRef,onMouseDown:colorPickerMouseDown}),React.createElement("div",{className:cls.chooser},React.createElement("div",{className:cls.range},React.createElement("input",{className:cx(cls.slider,cls.hue,type==="cmyk"&&cls.cmykHue),min:"0",max:"360",type:"range",value:hsva[0],onChange:setHue}),type!=="cmyk"?React.createElement("input",{className:cx(cls.slider,cls.opacity),min:"0",max:"1",step:"0.01",type:"range",value:hsva[3],onChange:setAlpha}):null),React.createElement("div",{className:cls.preview,onClick:handleCopy})),React.createElement("div",{className:cls.form},type==="hexa"?React.createElement(HexaForm,{value:inputVal.toString(),onChange:handleHexChange}):inputVal.map((n,i)=>{const isAlpha=i===3&&type!=="cmyk";return React.createElement(InputNumber,{size:"small",key:type+i,className:cls.input,value:n,max:opt[type].max[i],min:0,step:isAlpha?.01:1,formatter:isAlpha?formatterOpacity:null,parser:isAlpha?parseOpacity:null,onChange:v=>handleFliedChange(i,v)})}),React.createElement("div",{className:cls.switch,onClick:handleSwitch},type)),React.createElement("div",{className:cls.color},material.map(c=>React.createElement("i",{key:c,style:{"--c":c},onClick:()=>{setColor(c)}}))))};export default ColorPalette;
1
+ function _extends(){_extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key]}}}return target};return _extends.apply(this,arguments)}function _objectWithoutProperties(source,excluded){if(source==null)return{};var target=_objectWithoutPropertiesLoose(source,excluded);var key,i;if(Object.getOwnPropertySymbols){var sourceSymbolKeys=Object.getOwnPropertySymbols(source);for(i=0;i<sourceSymbolKeys.length;i++){key=sourceSymbolKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}}return target}function _objectWithoutPropertiesLoose(source,excluded){if(source==null)return{};var target={};var sourceKeys=Object.keys(source);var key,i;for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;target[key]=source[key]}return target}import React,{useCallback,useEffect,useMemo,useRef,useState}from"react";import{colorParse,passiveSupported,setClipboard,throttle}from"@moneko/common";import{cls}from"./style";import{cx}from"../emotion";import{Input,InputNumber}from"../index";const material=["#f44336","#E91E63","#9C27B0","#673AB7","#3F51B5","#2196F3","#03A9F4","#00BCD4","#009688","#4CAF50","#8BC34A","#CDDC39","#FFEB3B","#FFC107","#FF9800","#FF5722","#795548","#9E9E9E","#607D8B","rgba(0,0,0,.65)","transparent"];function formatterOpacity(v){return v?Number((v*100).toFixed()):v}function parseOpacity(v){let _val=v;if(typeof v==="string"){_val=v.replace(/[^\d]/g,"")}return _val/100}const opt={hexa:{get:"toHexa",next:"rgba",max:[255,255,255,1]},rgba:{get:"toRgba",next:"hsla",max:[255,255,255,1]},hsla:{get:"toHsla",next:"hsva",max:[360,100,100,1]},hsva:{get:"toHsva",next:"cmyk",max:[360,100,100,1]},cmyk:{get:"toCmyk",next:"hexa",max:[100,100,100,100]}};const HexaForm=({value,onChange})=>{const[hex,setHex]=useState(value);const hexChange=useCallback(v=>{if(typeof v==="string"){setHex(v);throttle(onChange,4)(v)}},[onChange]);useEffect(()=>{setHex(value)},[value]);return React.createElement(Input,{className:cls.input,name:"hex",size:"small",value:hex,onChange:hexChange})};const ColorPalette=_param=>{var{className,defaultValue="#5794ff",value,onChange}=_param,props=_objectWithoutProperties(_param,["className","defaultValue","value","onChange"]);const colorPickerRef=useRef(null);const color=useRef(colorParse(value||defaultValue));const drag=useRef(false);const[type,setType]=useState(color.current.type);const[hsva,setHSVA]=useState(color.current.value);const[inputVal,setInputVal]=useState(color.current[opt[type].get]());const setColor=useCallback(c=>{if(c&&color.current[opt[color.current.type].get]().toString()!==c){const nc=colorParse(c);color.current.setValue(nc.value);color.current.type=nc.type;setInputVal(color.current[opt[color.current.type].get]());setType(color.current.type);setHSVA(color.current.value)}},[]);const changeColor=useCallback(ev=>{if(colorPickerRef.current){const _hsva=[...color.current.value];const{x,y,width,height}=colorPickerRef.current.getBoundingClientRect();_hsva[1]=Math.floor(Math.min(Math.max(0,(ev.clientX-x)/width*100),100));_hsva[2]=Math.floor(100-Math.min(Math.max(0,(ev.clientY-y)/height*100),100));color.current.setValue(_hsva);setHSVA(_hsva)}},[]);const colorPickerMouseDown=useCallback(e=>{Object.assign(drag,{current:true});changeColor(e)},[changeColor]);const colorPickerMouseMove=useCallback(e=>{if(drag.current){changeColor(e)}},[changeColor]);const colorPickerMouseUp=useCallback(()=>{Object.assign(drag,{current:false})},[]);const handleSwitch=useCallback(()=>{color.current.type=opt[color.current.type].next;setInputVal(color.current[opt[color.current.type].get]());setType(color.current.type)},[]);const handleCopy=useCallback(e=>{setClipboard(inputVal.toString(),e.target)},[inputVal]);const setHue=useCallback(e=>{const _hsva=[...color.current.value];_hsva[0]=Number(e.target.value);setHSVA(_hsva)},[]);const setAlpha=useCallback(e=>{const _hsva=[...color.current.value];_hsva[3]=Number(e.target.value);setHSVA(_hsva)},[]);const handleFliedChange=useCallback((i,v)=>{if(typeof v==="number"){const old=color.current[opt[color.current.type].get]();old[i]=v||0;setInputVal(old);if(i===3&&color.current.type!=="cmyk"){setAlpha({target:{value:v||0}})}else{setHSVA(colorParse(old.toString()).value)}}},[setAlpha]);const handleHexChange=useCallback(hex=>{if(color.current.isColor(hex)){setColor(hex)}},[setColor]);const style=useMemo(()=>{return{"--c":color.current.toRgbaString(),"--h":hsva[0],"--s":hsva[1],"--v":hsva[2],"--a":hsva[3]}},[hsva]);useEffect(()=>{throttle(setColor,4)(value)},[setColor,value]);useEffect(()=>{color.current.setValue(hsva);color.current.type=type;setInputVal(color.current[opt[type].get]())},[hsva,type]);useEffect(()=>{onChange===null||onChange===void 0?void 0:onChange(inputVal.toString())},[onChange,inputVal]);useEffect(()=>{document.documentElement.addEventListener("mousemove",colorPickerMouseMove,passiveSupported);document.documentElement.addEventListener("mouseup",colorPickerMouseUp,passiveSupported);return()=>{document.documentElement.removeEventListener("mousemove",colorPickerMouseMove,passiveSupported);document.documentElement.removeEventListener("mouseup",colorPickerMouseUp,passiveSupported)}},[colorPickerMouseMove,colorPickerMouseUp]);return React.createElement("div",_extends({},props,{className:cx(cls.palette,className),style:style}),React.createElement("div",{className:cls.picker,ref:colorPickerRef,onMouseDown:colorPickerMouseDown}),React.createElement("div",{className:cls.chooser},React.createElement("div",{className:cls.range},React.createElement("input",{className:cx(cls.slider,cls.hue,type==="cmyk"&&cls.cmykHue),min:"0",max:"360",type:"range",value:hsva[0],onChange:setHue}),type!=="cmyk"?React.createElement("input",{className:cx(cls.slider,cls.opacity),min:"0",max:"1",step:"0.01",type:"range",value:hsva[3],onChange:setAlpha}):null),React.createElement("div",{className:cls.preview,onClick:handleCopy})),React.createElement("div",{className:cls.form},type==="hexa"?React.createElement(HexaForm,{value:inputVal.toString(),onChange:handleHexChange}):inputVal.map((n,i)=>{const isAlpha=i===3&&type!=="cmyk";return React.createElement(InputNumber,{size:"small",key:type+i,className:cls.input,value:n,max:opt[type].max[i],min:0,step:isAlpha?.01:1,formatter:isAlpha?formatterOpacity:null,parser:isAlpha?parseOpacity:null,onChange:v=>handleFliedChange(i,v)})}),React.createElement("div",{className:cls.switch,onClick:handleSwitch},type)),React.createElement("div",{className:cls.color},material.map(c=>React.createElement("i",{key:c,style:{"--c":c},onClick:()=>{setColor(c)}}))))};export default ColorPalette;
@@ -57,19 +57,19 @@ import{injectGlobal}from"../emotion";import prefixCls from"../prefix-cls";export
57
57
  font-size: 12px;
58
58
  text-align: center;
59
59
  color: var(--primary-color);
60
- background-color: var(--primary-color-bg);
60
+ background-color: var(--primary-bg);
61
61
  text-transform: uppercase;
62
- outline-color: var(--primary-color-outline);
62
+ outline-color: var(--primary-outline);
63
63
  transition-property: background-color, color, outline-color, border-radius, transform;
64
64
  transition-timing-function: var(--transition-timing-function);
65
65
  transition-duration: var(--transition-duration);
66
66
 
67
67
  &:hover {
68
- color: var(--primary-color-hover);
68
+ color: var(--primary-hover);
69
69
  }
70
70
 
71
71
  &:active {
72
- color: var(--primary-color-active);
72
+ color: var(--primary-active);
73
73
  transform: scale(0.98);
74
74
  }
75
75
  }
@@ -7,14 +7,14 @@ import{injectGlobal}from"../emotion";import prefixCls from"../prefix-cls";export
7
7
  --alpha-gradient: repeating-conic-gradient(#eee 0 25%, transparent 0 50%) 0 / 10px 10px;
8
8
 
9
9
  display: inline-block;
10
- border-radius: var(--border-radius, 8px);
10
+ border-radius: var(--border-radius);
11
11
  inline-size: 25px;
12
12
  block-size: 25px;
13
13
  background: var(--alpha-gradient);
14
14
 
15
15
  &::after {
16
16
  display: block;
17
- border-radius: var(--border-radius, 8px);
17
+ border-radius: var(--border-radius);
18
18
  inline-size: 100%;
19
19
  block-size: 100%;
20
20
  background: var(--c, #fff);
@@ -0,0 +1,3 @@
1
+ import { type TreeData } from '../tree';
2
+ declare function fromSchema(schema: Record<string, any>, pid?: string): TreeData<string>[];
3
+ export default fromSchema;
@@ -0,0 +1 @@
1
+ function _defineProperty(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _objectSpread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};var ownKeys=Object.keys(source);if(typeof Object.getOwnPropertySymbols==="function"){ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))}ownKeys.forEach(function(key){_defineProperty(target,key,source[key])})}return target}function ownKeys(object,enumerableOnly){var keys=Object.keys(object);if(Object.getOwnPropertySymbols){var symbols=Object.getOwnPropertySymbols(object);if(enumerableOnly){symbols=symbols.filter(function(sym){return Object.getOwnPropertyDescriptor(object,sym).enumerable})}keys.push.apply(keys,symbols)}return keys}function _objectSpreadProps(target,source){source=source!=null?source:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(target,Object.getOwnPropertyDescriptors(source))}else{ownKeys(Object(source)).forEach(function(key){Object.defineProperty(target,key,Object.getOwnPropertyDescriptor(source,key))})}return target}function _objectWithoutProperties(source,excluded){if(source==null)return{};var target=_objectWithoutPropertiesLoose(source,excluded);var key,i;if(Object.getOwnPropertySymbols){var sourceSymbolKeys=Object.getOwnPropertySymbols(source);for(i=0;i<sourceSymbolKeys.length;i++){key=sourceSymbolKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}}return target}function _objectWithoutPropertiesLoose(source,excluded){if(source==null)return{};var target={};var sourceKeys=Object.keys(source);var key,i;for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;target[key]=source[key]}return target}function fromSchema(schema,pid){const treeData=[];const{properties}=schema;for(const _ref in properties){var name=_ref;if(Object.prototype.hasOwnProperty.call(properties,name)){const _properties_name=properties[name],{properties:_properties,items}=_properties_name,item=_objectWithoutProperties(_properties_name,["properties","items"]);const node=_objectSpreadProps(_objectSpread({},item),{name:name,subTitle:item.type,key:`${pid?pid+".":""}${name}`});if(item.type==="object"){node.children=fromSchema({properties:_properties},node.key)}else if(item.type==="array"){node.children=fromSchema({properties:{items:_objectSpreadProps(_objectSpread({},items),{title:"items"})}},node.key)}treeData.push(node)}}return treeData}export default fromSchema;
package/es/index.d.ts CHANGED
@@ -2,7 +2,7 @@ export * from './emotion';
2
2
  export { default as Markdown, getMarkedImgList, markdownUtil, type PhotoViewDataType, type MarkdownProps, type CodeToolType, type AnchorType, } from './markdown';
3
3
  export { default as BackTop, type BackTopProps } from './back-top';
4
4
  export { default as Tree, type TreeProps, type TreeBaseProp, type TreeData } from './tree';
5
- export { default as schemaToTreeData } from './schema-to-tree-data';
5
+ export { default as fromSchema } from './from-schema';
6
6
  export { default as HighlightText, strToHighlight, RegExp_HighLight, type HighlightFlag, type Highlight, type HighlightTextProps, type HighlightTextJson, } from './highlight-text';
7
7
  export { default as colorScheme, type ColorScheme } from './color-scheme';
8
8
  export { default as Avatar, type AvatarProps } from './avatar';
package/es/index.js CHANGED
@@ -1,12 +1,43 @@
1
- import{getColorVariableString}from"@moneko/common";import{injectGlobal}from"./emotion";export*from"./emotion";export{default as Markdown,getMarkedImgList,markdownUtil}from"./markdown";export{default as BackTop}from"./back-top";export{default as Tree}from"./tree";export{default as schemaToTreeData}from"./schema-to-tree-data";export{default as HighlightText,strToHighlight,RegExp_HighLight}from"./highlight-text";export{default as colorScheme}from"./color-scheme";export{default as Avatar}from"./avatar";export{default as AvatarGroup}from"./avatar-group";export{default as CaptureScreen}from"./capture-screen";export{default as WaveCircle}from"./wave-circle";export{default as Button}from"./button";export{default as Input}from"./input";export{default as InputNumber}from"./input-number";export{default as Tooltip}from"./tooltip";export{default as ColorPalette}from"./color-palette";export{default as ColorPicker}from"./color-picker";export{default as Skeleton}from"./skeleton";export{default as CodeBlock}from"./code-block";export{default as Photo}from"./photo";export{default as Carousel}from"./carousel";export{default as prefixCls,setPrefixCls}from"./prefix-cls";export{default as highlight}from"./highlight";export{default as Prism}from"./prism";injectGlobal([`:root {
1
+ import{getColorVariableString}from"@moneko/common";import{injectGlobal}from"./emotion";export*from"./emotion";export{default as Markdown,getMarkedImgList,markdownUtil}from"./markdown";export{default as BackTop}from"./back-top";export{default as Tree}from"./tree";export{default as fromSchema}from"./from-schema";export{default as HighlightText,strToHighlight,RegExp_HighLight}from"./highlight-text";export{default as colorScheme}from"./color-scheme";export{default as Avatar}from"./avatar";export{default as AvatarGroup}from"./avatar-group";export{default as CaptureScreen}from"./capture-screen";export{default as WaveCircle}from"./wave-circle";export{default as Button}from"./button";export{default as Input}from"./input";export{default as InputNumber}from"./input-number";export{default as Tooltip}from"./tooltip";export{default as ColorPalette}from"./color-palette";export{default as ColorPicker}from"./color-picker";export{default as Skeleton}from"./skeleton";export{default as CodeBlock}from"./code-block";export{default as Photo}from"./photo";export{default as Carousel}from"./carousel";export{default as prefixCls,setPrefixCls}from"./prefix-cls";export{default as highlight}from"./highlight";export{default as Prism}from"./prism";injectGlobal`
2
+ :root {
3
+ --font-size: 14px;
4
+ --font-size-sm: 12px;
5
+ --font-size-xs: 10px;
6
+ --font-size-lg: 16px;
7
+ --border-base: 1px solid var(--border-color);
8
+ --border-color: rgb(5 5 5 / 6%);
9
+ --border-radius: 8px;
10
+ --component-background: rgb(255 255 255 / 80%);
11
+ --text-color: rgb(0 0 0 / 65%);
12
+ --text-secondary: #4e4e4e;
13
+ --text-heading: #1b1b1b;
14
+ --text-selection-bg: var(--primary-bg);
15
+ --text-shadow-color: rgb(0 0 0 / 10%);
16
+ --box-shadow-base: 0 3px 6px -4px rgb(0 0 0 / 12%), 0 6px 16px 0 rgb(0 0 0 / 8%),
17
+ 0 9px 28px 8px rgb(0 0 0 / 5%);
18
+ --font-family: -apple-system, 'BlinkMacSystemFont', 'Segoe UI', 'Roboto', 'Helvetica Neue',
19
+ 'Arial', 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol',
20
+ 'Noto Color Emoji', 'Helvetica', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans';
21
+ --transition-duration: 0.3s;
22
+ --transition-timing-function: cubic-bezier(0.94, -0.1, 0.1, 1.2);
2
23
  ${getColorVariableString("#5794ff",{name:"primary"})}
3
24
  ${getColorVariableString("#faad14",{name:"warning"})}
4
25
  ${getColorVariableString("#ff4d4f",{name:"error"})}
5
26
  ${getColorVariableString("#52c41a",{name:"success"})}
6
27
  }
28
+
7
29
  :root[data-theme='dark'] {
30
+ --text-color: #ffffffd9;
31
+ --text-secondary: #cdcdcd;
32
+ --text-heading: rgb(255 255 255 / 85%);
33
+ --text-shadow-color: rgb(255 255 255 / 10%);
34
+ --body-background: #000;
35
+ --component-background: rgb(20 20 20 / 80%);
36
+ --header-bg: rgb(20 20 20 / 90%);
37
+ --border-color: #303030;
8
38
  ${getColorVariableString("#4d81dc",{name:"primary",theme:"dark"})}
9
39
  ${getColorVariableString("#bb8314",{name:"warning",theme:"dark"})}
10
40
  ${getColorVariableString("#901c22",{name:"error",theme:"dark"})}
11
41
  ${getColorVariableString("#419418",{name:"success",theme:"dark"})}
12
- }`]);
42
+ }
43
+ `;
package/es/input/index.js CHANGED
@@ -9,12 +9,12 @@ function _extends(){_extends=Object.assign||function(target){for(var i=1;i<argum
9
9
  `;const wrapperCss=css`
10
10
  display: flex;
11
11
  border: var(--border-base);
12
- border-radius: var(--border-radius, 8px);
12
+ border-radius: var(--border-radius);
13
13
  padding: 4px 10px;
14
14
  inline-size: 100%;
15
- font-size: var(--font-size, 14px);
16
- color: var(--text-color, rgb(0 0 0 / 65%));
17
- background-color: var(--component-background, rgb(255 255 255 / 80%));
15
+ font-size: var(--font-size);
16
+ color: var(--text-color);
17
+ background-color: var(--component-background);
18
18
  transition: all 0.3s;
19
19
  line-height: 1.5715;
20
20
  background-image: none;
@@ -22,7 +22,7 @@ function _extends(){_extends=Object.assign||function(target){for(var i=1;i<argum
22
22
  accent-color: var(--primary-color, #5794ff);
23
23
 
24
24
  &:hover {
25
- border-color: var(--primary-color-hover, #80b3ff);
25
+ border-color: var(--primary-hover, #80b3ff);
26
26
  border-inline-end-width: 1px;
27
27
  }
28
28
 
@@ -30,12 +30,12 @@ function _extends(){_extends=Object.assign||function(target){for(var i=1;i<argum
30
30
  background: none;
31
31
  }
32
32
  `;const focusCss=css`
33
- border-color: var(--primary-color-hover, #80b3ff);
33
+ border-color: var(--primary-hover, #80b3ff);
34
34
  border-inline-end-width: 1px;
35
35
  outline: 0;
36
36
  box-shadow: 0 0 0 2px rgb(45 115 255 / 20%);
37
37
  `;const disabledCss=css`
38
- border-color: var(--border-color, #d9d9d9);
38
+ border-color: var(--border-color);
39
39
  background: var(--disabled-bg, #f5f5f5);
40
40
  cursor: not-allowed;
41
41
  `;const prefixCss=css`
@@ -44,7 +44,7 @@ function _extends(){_extends=Object.assign||function(target){for(var i=1;i<argum
44
44
  margin-inline-start: 4px;
45
45
  `;const sizeCss={small:css`
46
46
  padding: 2px;
47
- font-size: var(--font-size-sm, 12px);
47
+ font-size: var(--font-size-sm);
48
48
  line-height: 20px;
49
49
 
50
50
  input {
@@ -52,5 +52,5 @@ function _extends(){_extends=Object.assign||function(target){for(var i=1;i<argum
52
52
  }
53
53
  `,large:css`
54
54
  padding: 6px 16px;
55
- font-size: var(--font-size-lg, 16px);
55
+ font-size: var(--font-size-lg);
56
56
  `,normal:null};const Input=_param=>{var{className,suffix,prefix,value,size,type="text",disabled,formatter,parser,onChange,onFocus,onBlur,autoComplete="off"}=_param,prpos=_objectWithoutProperties(_param,["className","suffix","prefix","value","size","type","disabled","formatter","parser","onChange","onFocus","onBlur","autoComplete"]);const[focus,setFocus]=useState(false);const getValue=useCallback(val=>{return formatter?formatter===null||formatter===void 0?void 0:formatter(val):val},[formatter]);const parserValue=useCallback(val=>{if(parser){return parser(val)}else if(type==="number"&&typeof val==="string"){const num=val.replace(/[^\d]/g,"");return num.length?parseFloat(num):undefined}return val},[parser,type]);const handleChange=useCallback(e=>{onChange===null||onChange===void 0?void 0:onChange(parserValue(e.target.value))},[onChange,parserValue]);const handleFocus=useCallback(e=>{setFocus(true);onFocus===null||onFocus===void 0?void 0:onFocus(e)},[onFocus]);const handleBlur=useCallback(e=>{setFocus(false);onBlur===null||onBlur===void 0?void 0:onBlur(e)},[onBlur]);return React.createElement("span",{className:cx(wrapperCss,size&&sizeCss[size],disabled&&disabledCss,focus&&focusCss,className)},prefix?React.createElement("span",{className:prefixCss},prefix):null,React.createElement("input",_extends({value:getValue(value),className:inputCss,autoComplete:autoComplete,type:"text",disabled:disabled,onFocus:handleFocus,onBlur:handleBlur,onChange:handleChange},prpos)),suffix?React.createElement("span",{className:suffixCss},suffix):null)};export default Input;
@@ -37,27 +37,27 @@
37
37
  display: inline-block;
38
38
  margin: auto;
39
39
  border: 1px solid;
40
- border-radius: var(--border-radius, 8px);
40
+ border-radius: var(--border-radius);
41
41
  padding: 4px 8px;
42
42
  inline-size: fit-content;
43
- font-size: var(--font-size-sm, 12px);
43
+ font-size: var(--font-size-sm);
44
44
  transition: background-color .2s, color .2s, border-color .2s;
45
45
  animation-fill-mode: forwards;
46
46
  content: '\590d\5236\6210\529f';
47
47
  }
48
48
 
49
49
  [data-copy='success']::before {
50
- border-color: var(--success-color-border, #b7eb8f);
50
+ border-color: var(--success-border, #b7eb8f);
51
51
  color: var(--success-color, #52c41a);
52
- background-color: var(--success-color-bg, #f6ffed);
52
+ background-color: var(--success-bg, #f6ffed);
53
53
  animation: copy-slide-in .3s ease-in-out;
54
54
  content: '\590d\5236\6210\529f';
55
55
  }
56
56
 
57
57
  [data-copy='failure']::before {
58
- border-color: var(--error-color-border, #ffccc7);
58
+ border-color: var(--error-border, #ffccc7);
59
59
  color: var(--error-color, #ff4d4f);
60
- background-color: var(--error-color-bg, #fff2f0);
60
+ background-color: var(--error-bg, #fff2f0);
61
61
  animation: copy-slide-in .3s ease-in-out, error 1s ease-in-out 1s;
62
62
  content: '\590d\5236\5931\8d25';
63
63
  }
@@ -102,10 +102,10 @@
102
102
  .n-md-body {
103
103
  overflow: hidden;
104
104
  margin: 0 auto 1.5rem;
105
- border-radius: var(--border-radius, 8px);
105
+ border-radius: var(--border-radius);
106
106
  padding: 1.5rem;
107
107
  max-inline-size: 80rem;
108
- background-color: var(--component-background, rgb(255 255 255 / 80%));
108
+ background-color: var(--component-background);
109
109
  box-sizing: border-box;
110
110
  overflow-wrap: break-word;
111
111
  transition-duration: var(--transition-duration);
@@ -118,7 +118,7 @@
118
118
  .n-md-body a {
119
119
  position: relative;
120
120
  text-decoration: none;
121
- color: var(--text-color, rgb(0 0 0 / 65%));
121
+ color: var(--text-color);
122
122
  }
123
123
 
124
124
  .n-md-toc,
@@ -134,7 +134,7 @@
134
134
  display: block;
135
135
  overflow-y: auto;
136
136
  margin: 0;
137
- border-radius: var(--border-radius, 8px);
137
+ border-radius: var(--border-radius);
138
138
  padding: 16px;
139
139
  max-inline-size: 200px;
140
140
  block-size: fit-content;
@@ -158,11 +158,11 @@
158
158
  .n-md-toc li a {
159
159
  overflow: hidden;
160
160
  max-inline-size: 100%;
161
- font-size: var(--font-size-sm, 12px);
161
+ font-size: var(--font-size-sm);
162
162
  text-overflow: ellipsis;
163
163
  text-decoration: none;
164
164
  white-space: nowrap;
165
- color: var(--text-color, rgb(0 0 0 / 65%));
165
+ color: var(--text-color);
166
166
  transition-duration: var(--transition-duration);
167
167
  transition-timing-function: var(--transition-timing-function);
168
168
  transition-property: color;
@@ -180,7 +180,7 @@
180
180
  inset-inline-start: 0;
181
181
  inline-size: 100%;
182
182
  block-size: 2px;
183
- background-color: var(--primary-color-hover, #80b3ff);
183
+ background-color: var(--primary-hover, #80b3ff);
184
184
  transform: scaleX(0);
185
185
  transform-origin: center;
186
186
  transition-duration: var(--transition-duration);
@@ -190,11 +190,11 @@
190
190
  }
191
191
 
192
192
  .n-md-body a:visited {
193
- color: var(--text-secondary, #4e4e4e);
193
+ color: var(--text-secondary);
194
194
  }
195
195
 
196
196
  .n-md-body a:hover {
197
- color: var(--primary-color-hover, #80b3ff);
197
+ color: var(--primary-hover, #80b3ff);
198
198
  }
199
199
 
200
200
  .n-md-body a:hover::after {
@@ -251,7 +251,7 @@ h6[data-prefix]::before {
251
251
  .n-md-body td > code,
252
252
  .n-md-body mark,
253
253
  .n-md-body code:not([class]) {
254
- border-radius: var(--border-radius, 8px);
254
+ border-radius: var(--border-radius);
255
255
  padding: 2px 7px;
256
256
  font-size: 90%;
257
257
  color: var(--md-mark-color, #cd9278);
@@ -269,7 +269,7 @@ h6[data-prefix]::before {
269
269
  margin-block-start: 1em;
270
270
  margin-block-end: 1em;
271
271
  font-weight: 500;
272
- color: var(--text-heading, #1b1b1b);
272
+ color: var(--text-heading);
273
273
  transition-duration: var(--transition-duration);
274
274
  transition-timing-function: var(--transition-timing-function);
275
275
  transition-property: border-color, background-color, box-shadow, color;
@@ -309,7 +309,7 @@ blockquote p {
309
309
 
310
310
  .n-md-body h1,
311
311
  .n-md-body h2 {
312
- border-block-end: 1px dotted var(--border-color, #d9d9d9);
312
+ border-block-end: 1px dotted var(--border-color);
313
313
  padding-block-end: 10px;
314
314
  }
315
315
 
@@ -335,7 +335,7 @@ blockquote p {
335
335
  block-size: 2px;
336
336
  text-align: start;
337
337
  color: var(--text-color);
338
- background-color: var(--border-color, #d9d9d9);
338
+ background-color: var(--border-color);
339
339
  }
340
340
 
341
341
  .n-md-body p {
@@ -351,7 +351,7 @@ blockquote p {
351
351
  position: relative;
352
352
  display: block;
353
353
  margin: auto;
354
- border-radius: var(--border-radius, 8px);
354
+ border-radius: var(--border-radius);
355
355
  max-inline-size: 100%;
356
356
  cursor: pointer;
357
357
  }
@@ -359,7 +359,7 @@ blockquote p {
359
359
  .n-md-body p,
360
360
  .n-md-body ul,
361
361
  .n-md-body ol {
362
- font-size: var(--font-size, 14px);
362
+ font-size: var(--font-size);
363
363
  }
364
364
 
365
365
  .n-md-body dl {
@@ -382,8 +382,8 @@ blockquote p {
382
382
 
383
383
  .n-md-body table {
384
384
  overflow: hidden;
385
- border-block-end: 1px solid var(--border-color, #d9d9d9);
386
- border-radius: var(--border-radius, 8px);
385
+ border-block-end: 1px solid var(--border-color);
386
+ border-radius: var(--border-radius);
387
387
  inline-size: 100%;
388
388
  max-inline-size: 100%;
389
389
  border-spacing: 0;
@@ -397,25 +397,25 @@ blockquote p {
397
397
 
398
398
  .n-md-body table tr[role='row'] th[role='gridcell'] {
399
399
  padding: 10px;
400
- color: var(--text-heading, #1b1b1b);
401
- background-color: var(--border-color, #d9d9d9);
400
+ color: var(--text-heading);
401
+ background-color: var(--border-color);
402
402
  transition-property: background-color, color;
403
403
  }
404
404
 
405
405
  .n-md-body table td[role='gridcell'] {
406
406
  border-style: dotted;
407
407
  border-width: 0 0 1px 1px;
408
- border-color: var(--border-color, #d9d9d9);
408
+ border-color: var(--border-color);
409
409
  padding: 10px;
410
410
  transition-property: border-color;
411
411
  }
412
412
 
413
413
  .n-md-body table td[role='gridcell']:first-of-type {
414
- border-inline-start: 1px solid var(--border-color, #d9d9d9);
414
+ border-inline-start: 1px solid var(--border-color);
415
415
  }
416
416
 
417
417
  .n-md-body table td[role='gridcell']:last-of-type {
418
- border-inline-end: 1px solid var(--border-color, #d9d9d9);
418
+ border-inline-end: 1px solid var(--border-color);
419
419
  }
420
420
 
421
421
  .n-md-body table tr[role='row']:last-of-type td[role='gridcell'] {
@@ -425,7 +425,7 @@ blockquote p {
425
425
  .n-md-body blockquote {
426
426
  position: relative;
427
427
  margin: 30px 54px;
428
- border-radius: var(--border-radius, 8px);
428
+ border-radius: var(--border-radius);
429
429
  padding: 16px;
430
430
  font-weight: 500;
431
431
  background-color: var(--blockquote-bg, #ecf8ff);
@@ -480,7 +480,7 @@ blockquote p {
480
480
  }
481
481
 
482
482
  .n-md-body blockquote cite {
483
- font-size: var(--font-size, 14px);
483
+ font-size: var(--font-size);
484
484
  color: var(--cite-color, #bfbfbf);
485
485
  line-height: 20px;
486
486
  }
@@ -491,7 +491,7 @@ blockquote p {
491
491
 
492
492
  .n-md-body blockquote p {
493
493
  margin: auto 0;
494
- font-size: var(--font-size, 14px);
494
+ font-size: var(--font-size);
495
495
  color: var(--blockquote-color, #5e6d82);
496
496
  line-height: 24px;
497
497
  transition-property: color;
@@ -499,8 +499,8 @@ blockquote p {
499
499
 
500
500
  .n-md-body details {
501
501
  overflow: hidden;
502
- border-inline-start: 5px solid var(--primary-color-border, #5794ff);
503
- border-radius: var(--border-radius, 8px);
502
+ border-inline-start: 5px solid var(--primary-border, #5794ff);
503
+ border-radius: var(--border-radius);
504
504
  padding: 12px 24px;
505
505
  background: var(--details-bg, #fafaff);
506
506
  box-sizing: border-box;
@@ -521,7 +521,7 @@ blockquote p {
521
521
 
522
522
  .n-md-body details >summary,
523
523
  .n-md-body details >summary ~ * {
524
- font-size: var(--font-size, 14px);
524
+ font-size: var(--font-size);
525
525
  font-weight: normal;
526
526
  font-style: normal;
527
527
  line-height: 1.4;
@@ -549,7 +549,7 @@ blockquote p {
549
549
  display: inline-block;
550
550
  margin-inline-end: 4px;
551
551
  inline-size: 14px;
552
- font-size: var(--font-size-sm, 12px);
552
+ font-size: var(--font-size-sm);
553
553
  font-family: neko-icon, sans-serif;
554
554
  font-weight: lighter;
555
555
  text-align: center;
package/es/photo/index.js CHANGED
@@ -1 +1 @@
1
- function _extends(){_extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key]}}}return target};return _extends.apply(this,arguments)}import React,{useCallback,useEffect,useMemo,useRef}from"react";import sso from"shared-store-object";import{cls}from"./style";import Carousel from"../carousel";import{cx}from"../emotion";import Portal from"../portal";function Photo(props){const photo=useRef(sso({open:props.open,onOpenChange(){var _props_onOpenChange;(_props_onOpenChange=props.onOpenChange)===null||_props_onOpenChange===void 0?void 0:_props_onOpenChange.call(props,!photo.current.open)}}));const{open}=photo.current;const handleDestroy=useCallback(()=>{if(props.open===false){photo.current.open=false}},[props.open]);const renderDom=useMemo(()=>React.createElement(Carousel,_extends({},props,{className:cx(cls.photo,props.className)}),props.data.map(item=>{return React.createElement("div",{className:cls.item,key:item.key,style:{"--img":`url(${item.src})`}},React.createElement("img",{className:cls.img,src:item.src,alt:item.alt}))})),[props]);const render=useMemo(()=>{if(typeof open==="boolean"){return open?React.createElement(Portal,{container:document.body},React.createElement("div",{className:cx(cls.portal,props.open===false?cls.closeing:props.open?cls.open:""),onAnimationEnd:handleDestroy},renderDom,React.createElement("span",{className:cx("neko-icon",cls.close),onClick:photo.current.onOpenChange}))):null}return renderDom},[handleDestroy,open,props.open,renderDom]);useEffect(()=>{if(props.open===true){photo.current.open=true}},[props.open]);useEffect(()=>{const _photo=photo.current;return()=>{_photo()}},[]);return render}export default Photo;
1
+ function _extends(){_extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key]}}}return target};return _extends.apply(this,arguments)}import React,{useCallback,useEffect,useMemo,useRef}from"react";import sso from"shared-store-object";import{cls}from"./style";import Carousel from"../carousel";import{cx}from"../emotion";import Portal from"../portal";function Photo(props){const photo=useRef(sso({open:props.open,onOpenChange(){var _props_onOpenChange;(_props_onOpenChange=props.onOpenChange)===null||_props_onOpenChange===void 0?void 0:_props_onOpenChange.call(props,!photo.current.open)}}));const{open}=photo.current;const handleDestroy=useCallback(()=>{if(props.open===false){photo.current.open=false}},[props.open]);const renderDom=useMemo(()=>React.createElement(Carousel,_extends({},props,{className:cx(cls.photo,props.className)}),props.data.map(item=>{return React.createElement("div",{className:cls.item,key:item.key,style:{"--img":`url(${item.src})`}},React.createElement("img",{className:cls.img,src:item.src,alt:item.alt,onDragStart:()=>false}))})),[props]);const render=useMemo(()=>{if(typeof open==="boolean"){return open?React.createElement(Portal,{container:document.body},React.createElement("div",{className:cx(cls.portal,props.open===false?cls.closeing:props.open?cls.open:""),onAnimationEnd:handleDestroy},renderDom,React.createElement("span",{className:cx("neko-icon",cls.close),onClick:photo.current.onOpenChange}))):null}return renderDom},[handleDestroy,open,props.open,renderDom]);useEffect(()=>{if(props.open===true){photo.current.open=true}},[props.open]);useEffect(()=>{const _photo=photo.current;return()=>{_photo()}},[]);return render}export default Photo;
package/es/photo/style.js CHANGED
@@ -13,6 +13,7 @@ import{injectGlobal}from"../emotion";import prefixCls from"../prefix-cls";export
13
13
  object-fit: contain;
14
14
  content-visibility: auto;
15
15
  backdrop-filter: blur(16px);
16
+ border-radius: 8px;
16
17
  }
17
18
 
18
19
  .${cls.close} {