neko-ui 1.6.0 → 1.7.0

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 (55) hide show
  1. package/es/avatar/index.d.ts +1 -1
  2. package/es/avatar-group/index.d.ts +1 -1
  3. package/es/avatar-group/index.js +1 -1
  4. package/es/button/index.d.ts +1 -1
  5. package/es/button/style.d.ts +1 -1
  6. package/es/capture-screen/index.js +1 -1
  7. package/es/color-palette/index.js +1 -1
  8. package/es/color-picker/index.d.ts +2 -1
  9. package/es/color-picker/index.js +1 -1
  10. package/es/dropdown/index.js +1 -1
  11. package/es/dropdown/style.d.ts +0 -5
  12. package/es/dropdown/style.js +3 -143
  13. package/es/index.d.ts +1 -0
  14. package/es/index.js +1 -1
  15. package/es/input/index.d.ts +1 -1
  16. package/es/input-number/index.d.ts +1 -1
  17. package/es/input-number/index.js +1 -1
  18. package/es/loading/index.d.ts +9 -0
  19. package/es/loading/index.js +1 -0
  20. package/es/loading/style.d.ts +5 -0
  21. package/es/loading/style.js +50 -0
  22. package/es/popover/index.js +1 -1
  23. package/es/popover/style.d.ts +0 -5
  24. package/es/popover/style.js +2 -43
  25. package/es/select/style.d.ts +0 -1
  26. package/es/select/style.js +6 -9
  27. package/es/tooltip/index.d.ts +1 -1
  28. package/lib/avatar/index.d.ts +1 -1
  29. package/lib/avatar-group/index.d.ts +1 -1
  30. package/lib/avatar-group/index.js +1 -1
  31. package/lib/button/index.d.ts +1 -1
  32. package/lib/button/style.d.ts +1 -1
  33. package/lib/capture-screen/index.js +1 -1
  34. package/lib/color-palette/index.js +1 -1
  35. package/lib/color-picker/index.d.ts +2 -1
  36. package/lib/color-picker/index.js +1 -1
  37. package/lib/dropdown/index.js +1 -1
  38. package/lib/dropdown/style.d.ts +0 -5
  39. package/lib/dropdown/style.js +1 -1
  40. package/lib/index.d.ts +1 -0
  41. package/lib/index.js +1 -1
  42. package/lib/input/index.d.ts +1 -1
  43. package/lib/input-number/index.d.ts +1 -1
  44. package/lib/input-number/index.js +1 -1
  45. package/lib/loading/index.d.ts +9 -0
  46. package/lib/loading/index.js +1 -0
  47. package/lib/loading/style.d.ts +5 -0
  48. package/lib/loading/style.js +1 -0
  49. package/lib/popover/index.js +1 -1
  50. package/lib/popover/style.d.ts +0 -5
  51. package/lib/popover/style.js +1 -1
  52. package/lib/select/style.d.ts +0 -1
  53. package/lib/select/style.js +1 -1
  54. package/lib/tooltip/index.d.ts +1 -1
  55. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { type ComponentSize } from '../';
2
+ import type { ComponentSize } from '../index';
3
3
  export interface AvatarProps extends React.HTMLAttributes<HTMLDivElement> {
4
4
  src?: React.ReactNode;
5
5
  alt?: string;
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { type AvatarProps } from '../index';
2
+ import { type AvatarProps } from '../avatar';
3
3
  export interface AvatarGroupProps {
4
4
  data: Omit<AvatarProps, 'size'>[];
5
5
  size?: AvatarProps['size'];
@@ -1 +1 @@
1
- function _define_property(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 _object_spread(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){_define_property(target,key,source[key])})}return target}import React,{useMemo}from"react";import{cls}from"./style";import{cx}from"../emotion";import{Avatar,Tooltip}from"../index";const AvatarGroup=props=>{const showAvatar=useMemo(()=>props.data.slice(0,props.maxCount),[props.data,props.maxCount]);const more=useMemo(()=>props.data.length-(props.maxCount||props.data.length),[props.data.length,props.maxCount]);return React.createElement("div",{className:cx(cls.group,props.className)},showAvatar.map((a,i)=>React.createElement(Avatar,_object_spread({key:`${i}-${a.src}`,size:props.size},a))),more>0?React.createElement(Tooltip,{title:React.createElement("div",{className:cls.more},props.data.slice(-more).map((a,i)=>React.createElement(Avatar,_object_spread({key:`${i}-${a.src}`,size:props.size},a))))},React.createElement(Avatar,{size:props.size,username:`+${more}`})):null)};export default AvatarGroup;
1
+ function _define_property(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 _object_spread(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){_define_property(target,key,source[key])})}return target}import React,{useMemo}from"react";import{cls}from"./style";import Avatar from"../avatar";import{cx}from"../emotion";import Popover from"../popover";const AvatarGroup=props=>{const showAvatar=useMemo(()=>props.data.slice(0,props.maxCount),[props.data,props.maxCount]);const more=useMemo(()=>props.data.length-(props.maxCount||props.data.length),[props.data.length,props.maxCount]);return React.createElement("div",{className:cx(cls.group,props.className)},showAvatar.map((a,i)=>React.createElement(Avatar,_object_spread({key:`${i}-${a.src}`,size:props.size},a))),more>0?React.createElement(Popover,{arrow:true,trigger:"click",content:React.createElement("div",{className:cls.more},props.data.slice(-more).map((a,i)=>React.createElement(Avatar,_object_spread({key:`${i}-${a.src}`,size:props.size},a))))},React.createElement(Avatar,{size:props.size,username:`+${more}`})):null)};export default AvatarGroup;
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import { type ButtonType } from './style';
3
- import type { ComponentSize } from '../';
3
+ import type { ComponentSize } from '../index';
4
4
  export type { ButtonType } from './style';
5
5
  export interface ButtonProps extends React.HTMLAttributes<HTMLButtonElement> {
6
6
  /** 按钮类型 */
@@ -1,3 +1,3 @@
1
- import type { ComponentSize } from '../';
1
+ import type { ComponentSize } from '../index';
2
2
  export type ButtonType = 'success' | 'error' | 'primary' | 'warning' | 'default';
3
3
  export declare const cls: Record<string | ButtonType | ComponentSize | number | symbol, string>;
@@ -1 +1 @@
1
- function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value}catch(error){reject(error);return}if(info.done){resolve(value)}else{Promise.resolve(value).then(_next,_throw)}}function _async_to_generator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value)}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err)}_next(undefined)})}}function _define_property(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 _object_spread(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){_define_property(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 _object_spread_props(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 _object_without_properties(source,excluded){if(source==null)return{};var target=_object_without_properties_loose(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 _object_without_properties_loose(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{downloadBlob,isObject}from"@moneko/common";import{cls}from"./style";import{cx}from"../emotion";import{Button}from"../index";const displayMediaOptions={video:true,audio:{echoCancellation:true,noiseSuppression:true,sampleRate:44100}};const btnStatusDic={inactive:"primary",paused:"warning",recording:"success"};const CaptureScreen=_param=>{var{options=displayMediaOptions,preview,controls,recorder,captureScreenText="捕获屏幕",stopCaptureText="停止捕获",startRecorderText="开始录制",stopRecorderText="停止录制",pausedRecorderText="暂停录制",recorderingText="录制中",onRecorderError=null,onStopRecorder,onStartRecorder,onStopCapture,onStartCapture,onRecorderDataAvailable,onErrorCapture,onSaveRecorder,className}=_param,props=_object_without_properties(_param,["options","preview","controls","recorder","captureScreenText","stopCaptureText","startRecorderText","stopRecorderText","pausedRecorderText","recorderingText","onRecorderError","onStopRecorder","onStartRecorder","onStopCapture","onStartCapture","onRecorderDataAvailable","onErrorCapture","onSaveRecorder","className"]);const videoElem=useRef(null);const mediaRecorderRef=useRef(null);const mediaStreamRef=useRef(null);const chunks=useRef([]);const recorderRef=useRef(recorder);const[mediaRecorder,setMediaRecorder]=useState(null);const[mediaStream,setMediaStream]=useState(null);const[recordState,setRecordState]=useState("inactive");const handleStartRecorder=useCallback(()=>{if(mediaRecorderRef.current){onStartRecorder===null||onStartRecorder===void 0?void 0:onStartRecorder(mediaRecorderRef.current.state);switch(mediaRecorderRef.current.state){case"inactive":mediaRecorderRef.current.start();break;case"paused":mediaRecorderRef.current.resume();break;case"recording":default:mediaRecorderRef.current.pause();break}setRecordState(mediaRecorderRef.current.state)}},[onStartRecorder]);const handleRecorderDataAvailable=useCallback(e=>{var _chunks_current;(_chunks_current=chunks.current)===null||_chunks_current===void 0?void 0:_chunks_current.push(e.data);onRecorderDataAvailable===null||onRecorderDataAvailable===void 0?void 0:onRecorderDataAvailable(e)},[onRecorderDataAvailable]);const stopRecorder=useCallback(()=>{if(mediaRecorderRef.current){if(mediaRecorderRef.current.state!=="inactive"){mediaRecorderRef.current.stop()}setRecordState(mediaRecorderRef.current.state)}onStopRecorder===null||onStopRecorder===void 0?void 0:onStopRecorder()},[onStopRecorder]);const handleSaveRecorder=useCallback(()=>{var _chunks_current,_chunks_current1;if(!((_chunks_current=chunks.current)===null||_chunks_current===void 0?void 0:_chunks_current.length))return;const{current}=recorderRef;const blob=new Blob(chunks.current,{type:"video/webm"});const name=isObject(current)?current===null||current===void 0?void 0:current.filename:new Date().toISOString();const fileName=name+".webm";(_chunks_current1=chunks.current)===null||_chunks_current1===void 0?void 0:_chunks_current1.splice(0);if(onSaveRecorder){onSaveRecorder(blob,fileName)}else{downloadBlob(blob,fileName)}},[onSaveRecorder]);const stopCapture=useCallback(()=>{stopRecorder();if(mediaStreamRef.current){const tracks=mediaStreamRef.current.getTracks();tracks===null||tracks===void 0?void 0:tracks.forEach(track=>track.stop());setMediaStream(null)}onStopCapture===null||onStopCapture===void 0?void 0:onStopCapture()},[onStopCapture,stopRecorder]);const startCapture=useCallback(_async_to_generator(function*(){stopCapture();try{const stream=yield navigator.mediaDevices.getDisplayMedia(_object_spread({},displayMediaOptions,options));if(stream){stream.addEventListener("inactive",stopCapture,false);setMediaStream(stream)}onStartCapture===null||onStartCapture===void 0?void 0:onStartCapture(stream)}catch(err){onErrorCapture===null||onErrorCapture===void 0?void 0:onErrorCapture(err)}}),[onErrorCapture,onStartCapture,options,stopCapture]);useEffect(()=>{Object.assign(recorderRef,{current:recorder})},[recorder]);useEffect(()=>{Object.assign(mediaRecorderRef,{current:mediaRecorder})},[mediaRecorder]);useEffect(()=>{Object.assign(mediaStreamRef,{current:mediaStream});if(preview&&(videoElem===null||videoElem===void 0?void 0:videoElem.current)&&mediaStream){videoElem.current.srcObject=mediaStream}},[mediaStream,preview]);useEffect(()=>{if(mediaStream===null||mediaStream===void 0?void 0:mediaStream.active){const recorderInstance=new MediaRecorder(mediaStream);recorderInstance.onstop=handleSaveRecorder;recorderInstance.onerror=onRecorderError;recorderInstance.ondataavailable=handleRecorderDataAvailable;setMediaRecorder(recorderInstance)}else{setMediaRecorder(null)}},[handleRecorderDataAvailable,handleSaveRecorder,mediaStream,onRecorderError]);useEffect(()=>{const getMediaRecorderRef=()=>mediaRecorderRef.current;const getMediaStreamRef=()=>mediaStreamRef.current;return()=>{const _mediaRecorderRef=getMediaRecorderRef();if((_mediaRecorderRef===null||_mediaRecorderRef===void 0?void 0:_mediaRecorderRef.state)!=="inactive"){_mediaRecorderRef===null||_mediaRecorderRef===void 0?void 0:_mediaRecorderRef.stop()}const streamRef=getMediaStreamRef();if(streamRef){const tracks=streamRef.getTracks();tracks===null||tracks===void 0?void 0:tracks.forEach(track=>track.stop())}}},[]);const recorderText=useMemo(()=>({paused:pausedRecorderText,recording:recorderingText,inactive:startRecorderText})[recordState],[pausedRecorderText,recordState,recorderingText,startRecorderText]);return React.createElement("div",_object_spread_props(_object_spread({},props),{className:cx(cls.captureScreen,className)}),React.createElement("div",{className:cls.controller},React.createElement(Button,{onClick:startCapture,className:cls.btn},captureScreenText),mediaStream&&React.createElement(React.Fragment,null,React.createElement(Button,{type:"error",onClick:stopCapture,className:cls.btn},stopCaptureText),recorder&&React.createElement("div",{className:cls.record},React.createElement(Button,{type:btnStatusDic[recordState],onClick:handleStartRecorder,className:cls.btn},recorderText),recordState!=="inactive"&&React.createElement(Button,{type:"error",onClick:stopRecorder,className:cls.btn},stopRecorderText)))),preview&&mediaStream?React.createElement("div",{className:cls.view},React.createElement("span",{className:cx(recordState==="recording"&&cls.recording,recordState==="paused"&&cls.paused)}),React.createElement("video",{ref:videoElem,autoPlay:true,controls:!!(mediaStream&&controls)})):null)};export default CaptureScreen;
1
+ function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value}catch(error){reject(error);return}if(info.done){resolve(value)}else{Promise.resolve(value).then(_next,_throw)}}function _async_to_generator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value)}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err)}_next(undefined)})}}function _define_property(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 _object_spread(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){_define_property(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 _object_spread_props(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 _object_without_properties(source,excluded){if(source==null)return{};var target=_object_without_properties_loose(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 _object_without_properties_loose(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{downloadBlob,isObject}from"@moneko/common";import{cls}from"./style";import Button from"../button";import{cx}from"../emotion";const displayMediaOptions={video:true,audio:{echoCancellation:true,noiseSuppression:true,sampleRate:44100}};const btnStatusDic={inactive:"primary",paused:"warning",recording:"success"};const CaptureScreen=_param=>{var{options=displayMediaOptions,preview,controls,recorder,captureScreenText="捕获屏幕",stopCaptureText="停止捕获",startRecorderText="开始录制",stopRecorderText="停止录制",pausedRecorderText="暂停录制",recorderingText="录制中",onRecorderError=null,onStopRecorder,onStartRecorder,onStopCapture,onStartCapture,onRecorderDataAvailable,onErrorCapture,onSaveRecorder,className}=_param,props=_object_without_properties(_param,["options","preview","controls","recorder","captureScreenText","stopCaptureText","startRecorderText","stopRecorderText","pausedRecorderText","recorderingText","onRecorderError","onStopRecorder","onStartRecorder","onStopCapture","onStartCapture","onRecorderDataAvailable","onErrorCapture","onSaveRecorder","className"]);const videoElem=useRef(null);const mediaRecorderRef=useRef(null);const mediaStreamRef=useRef(null);const chunks=useRef([]);const recorderRef=useRef(recorder);const[mediaRecorder,setMediaRecorder]=useState(null);const[mediaStream,setMediaStream]=useState(null);const[recordState,setRecordState]=useState("inactive");const handleStartRecorder=useCallback(()=>{if(mediaRecorderRef.current){onStartRecorder===null||onStartRecorder===void 0?void 0:onStartRecorder(mediaRecorderRef.current.state);switch(mediaRecorderRef.current.state){case"inactive":mediaRecorderRef.current.start();break;case"paused":mediaRecorderRef.current.resume();break;case"recording":default:mediaRecorderRef.current.pause();break}setRecordState(mediaRecorderRef.current.state)}},[onStartRecorder]);const handleRecorderDataAvailable=useCallback(e=>{var _chunks_current;(_chunks_current=chunks.current)===null||_chunks_current===void 0?void 0:_chunks_current.push(e.data);onRecorderDataAvailable===null||onRecorderDataAvailable===void 0?void 0:onRecorderDataAvailable(e)},[onRecorderDataAvailable]);const stopRecorder=useCallback(()=>{if(mediaRecorderRef.current){if(mediaRecorderRef.current.state!=="inactive"){mediaRecorderRef.current.stop()}setRecordState(mediaRecorderRef.current.state)}onStopRecorder===null||onStopRecorder===void 0?void 0:onStopRecorder()},[onStopRecorder]);const handleSaveRecorder=useCallback(()=>{var _chunks_current,_chunks_current1;if(!((_chunks_current=chunks.current)===null||_chunks_current===void 0?void 0:_chunks_current.length))return;const{current}=recorderRef;const blob=new Blob(chunks.current,{type:"video/webm"});const name=isObject(current)?current===null||current===void 0?void 0:current.filename:new Date().toISOString();const fileName=name+".webm";(_chunks_current1=chunks.current)===null||_chunks_current1===void 0?void 0:_chunks_current1.splice(0);if(onSaveRecorder){onSaveRecorder(blob,fileName)}else{downloadBlob(blob,fileName)}},[onSaveRecorder]);const stopCapture=useCallback(()=>{stopRecorder();if(mediaStreamRef.current){const tracks=mediaStreamRef.current.getTracks();tracks===null||tracks===void 0?void 0:tracks.forEach(track=>track.stop());setMediaStream(null)}onStopCapture===null||onStopCapture===void 0?void 0:onStopCapture()},[onStopCapture,stopRecorder]);const startCapture=useCallback(_async_to_generator(function*(){stopCapture();try{const stream=yield navigator.mediaDevices.getDisplayMedia(_object_spread({},displayMediaOptions,options));if(stream){stream.addEventListener("inactive",stopCapture,false);setMediaStream(stream)}onStartCapture===null||onStartCapture===void 0?void 0:onStartCapture(stream)}catch(err){onErrorCapture===null||onErrorCapture===void 0?void 0:onErrorCapture(err)}}),[onErrorCapture,onStartCapture,options,stopCapture]);useEffect(()=>{Object.assign(recorderRef,{current:recorder})},[recorder]);useEffect(()=>{Object.assign(mediaRecorderRef,{current:mediaRecorder})},[mediaRecorder]);useEffect(()=>{Object.assign(mediaStreamRef,{current:mediaStream});if(preview&&(videoElem===null||videoElem===void 0?void 0:videoElem.current)&&mediaStream){videoElem.current.srcObject=mediaStream}},[mediaStream,preview]);useEffect(()=>{if(mediaStream===null||mediaStream===void 0?void 0:mediaStream.active){const recorderInstance=new MediaRecorder(mediaStream);recorderInstance.onstop=handleSaveRecorder;recorderInstance.onerror=onRecorderError;recorderInstance.ondataavailable=handleRecorderDataAvailable;setMediaRecorder(recorderInstance)}else{setMediaRecorder(null)}},[handleRecorderDataAvailable,handleSaveRecorder,mediaStream,onRecorderError]);useEffect(()=>{const getMediaRecorderRef=()=>mediaRecorderRef.current;const getMediaStreamRef=()=>mediaStreamRef.current;return()=>{const _mediaRecorderRef=getMediaRecorderRef();if((_mediaRecorderRef===null||_mediaRecorderRef===void 0?void 0:_mediaRecorderRef.state)!=="inactive"){_mediaRecorderRef===null||_mediaRecorderRef===void 0?void 0:_mediaRecorderRef.stop()}const streamRef=getMediaStreamRef();if(streamRef){const tracks=streamRef.getTracks();tracks===null||tracks===void 0?void 0:tracks.forEach(track=>track.stop())}}},[]);const recorderText=useMemo(()=>({paused:pausedRecorderText,recording:recorderingText,inactive:startRecorderText})[recordState],[pausedRecorderText,recordState,recorderingText,startRecorderText]);return React.createElement("div",_object_spread_props(_object_spread({},props),{className:cx(cls.captureScreen,className)}),React.createElement("div",{className:cls.controller},React.createElement(Button,{onClick:startCapture,className:cls.btn},captureScreenText),mediaStream&&React.createElement(React.Fragment,null,React.createElement(Button,{type:"error",onClick:stopCapture,className:cls.btn},stopCaptureText),recorder&&React.createElement("div",{className:cls.record},React.createElement(Button,{type:btnStatusDic[recordState],onClick:handleStartRecorder,className:cls.btn},recorderText),recordState!=="inactive"&&React.createElement(Button,{type:"error",onClick:stopRecorder,className:cls.btn},stopRecorderText)))),preview&&mediaStream?React.createElement("div",{className:cls.view},React.createElement("span",{className:cx(recordState==="recording"&&cls.recording,recordState==="paused"&&cls.paused)}),React.createElement("video",{ref:videoElem,autoPlay:true,controls:!!(mediaStream&&controls)})):null)};export default CaptureScreen;
@@ -1 +1 @@
1
- function _define_property(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 _object_spread(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){_define_property(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 _object_spread_props(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 _object_without_properties(source,excluded){if(source==null)return{};var target=_object_without_properties_loose(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 _object_without_properties_loose(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,{useEffect,useRef}from"react";import{colorParse,passiveSupported,setClipboard,throttle}from"@moneko/common";import sso from"shared-store-object";import{cls}from"./style";import{cx}from"../emotion";import{Input,InputNumber}from"../index";const material=["#f44336","#E91E63","#9C27B0","#673AB7","#3F51B5","#2196F3","#00BCD4","#009688","#4CAF50","#CDDC39","#FF9800","#795548","#607D8B"];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:"hexa",max:[360,100,100,1]}};const ColorPalette=_param=>{var{className,defaultValue="#5794ff",value,onChange}=_param,props=_object_without_properties(_param,["className","defaultValue","value","onChange"]);const picker=useRef(null);const store=useRef(sso(_object_spread_props(_object_spread({},colorParse(value||defaultValue)),{drag:false,timer:null,hexa:value||defaultValue,handleHexa(v){store.current.hexa=v},handleAlphaRange(e){store.current.setAlpha(Number(e.target.value))},setAlpha(alpha){const next=[...store.current.value];next[3]=alpha||0;store.current.value=next},setHue(e){const next=[...store.current.value];next[0]=Number(e.target.value);store.current.value=next},setColor(c=defaultValue){if(store.current.isColor(c)&&store.current[opt[store.current.type].get]().toString()!==c){const next=colorParse(c);store.current.type=next.type;store.current.value=next.value}},changeColor(ev){if(picker.current){const next=[...store.current.value];const{x,y,width,height}=picker.current.getBoundingClientRect();next[1]=Math.floor(Math.min(Math.max(0,(ev.clientX-x)/width*100),100));next[2]=Math.floor(100-Math.min(Math.max(0,(ev.clientY-y)/height*100),100));store.current.value=next}},handleChange(i,v){if(typeof v==="number"){if(i===3&&store.current.type!=="cmyk"){store.current.setAlpha(v||0)}else{const old=store.current[opt[store.current.type].get]();old[i]=v||0;store.current.value=colorParse(old.toString()).value}}},mouseDown(e){store.current.drag=true;store.current.changeColor(e)},mouseMove(e){if(store.current.drag){store.current.changeColor(e)}},mouseUp(){store.current.drag=false},switch(){store.current.type=opt[store.current.type].next},copy(e){setClipboard(store.current.color.toString(),e.target)},eyeDropper(){if(window.EyeDropper){new window.EyeDropper().open().then(res=>{if(res){store.current.setColor(res.sRGBHex)}}).catch(()=>{});return}}}),{color(){store.current.setValue(store.current.value);return store.current[opt[store.current.type].get]()},style(){return{"--c":store.current.toRgbaString(),"--h":store.current.value[0],"--s":store.current.value[1],"--v":store.current.value[2],"--a":store.current.value[3]}}}));const{type,value:hsva,color,style,hexa}=store.current;useEffect(()=>{throttle(store.current.setColor,4)(value)},[defaultValue,value]);useEffect(()=>{onChange===null||onChange===void 0?void 0:onChange(color.toString())},[onChange,color]);useEffect(()=>{if(store.current.timer){clearTimeout(store.current.timer)}if(type==="hexa"){store.current.hexa=store.current.toHexaString()}},[type,hsva]);useEffect(()=>{const _store=store.current;window.addEventListener("mousemove",_store.mouseMove,passiveSupported);window.addEventListener("mouseup",_store.mouseUp,passiveSupported);return()=>{if(_store.timer){clearTimeout(_store.timer)}window.removeEventListener("mousemove",_store.mouseMove,passiveSupported);window.removeEventListener("mouseup",_store.mouseUp,passiveSupported);_store()}},[]);return React.createElement("div",_object_spread_props(_object_spread({},props),{className:cx(cls.palette,className),style:style}),React.createElement("div",{ref:picker,className:cls.picker,onMouseDown:store.current.mouseDown}),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:store.current.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:store.current.handleAlphaRange}):null),React.createElement("div",{className:cls.preview,onClick:store.current.copy})),React.createElement("div",{className:cls.form},type==="hexa"?React.createElement(Input,{className:cls.input,name:"hex",size:"small",value:hexa,onChange:store.current.handleHexa,onBlur:e=>{store.current.setColor(e.target.value)},onKeyUp:e=>{if(e.key==="Enter"&&typeof hexa==="string"){store.current.setColor(hexa)}}}):color.map((n,i)=>{const isAlpha=i===3&&type!=="cmyk";return React.createElement(InputNumber,{key:type+i,size:"small",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=>store.current.handleChange(i,v)})}),React.createElement("div",{className:cls.switch,onClick:store.current.switch},type)),React.createElement("div",{className:cls.color},window.EyeDropper&&React.createElement("i",{style:{"--c":"transparent"},onClickCapture:store.current.eyeDropper}),material.map(c=>React.createElement("i",{key:c,style:{"--c":c},onClick:()=>{store.current.setColor(c)}}))))};export default ColorPalette;
1
+ function _define_property(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 _object_spread(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){_define_property(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 _object_spread_props(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 _object_without_properties(source,excluded){if(source==null)return{};var target=_object_without_properties_loose(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 _object_without_properties_loose(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,{useEffect,useRef}from"react";import{colorParse,passiveSupported,setClipboard,throttle}from"@moneko/common";import sso from"shared-store-object";import{cls}from"./style";import{cx}from"../emotion";import Input from"../input";import InputNumber from"../input-number";const material=["#f44336","#E91E63","#9C27B0","#673AB7","#3F51B5","#2196F3","#00BCD4","#009688","#4CAF50","#CDDC39","#FF9800","#795548","#607D8B"];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:"hexa",max:[360,100,100,1]}};const ColorPalette=_param=>{var{className,defaultValue="#5794ff",value,onChange}=_param,props=_object_without_properties(_param,["className","defaultValue","value","onChange"]);const picker=useRef(null);const store=useRef(sso(_object_spread_props(_object_spread({},colorParse(value||defaultValue)),{drag:false,timer:null,hexa:value||defaultValue,handleHexa(v){store.current.hexa=v},handleAlphaRange(e){store.current.setAlpha(Number(e.target.value))},setAlpha(alpha){const next=[...store.current.value];next[3]=alpha||0;store.current.value=next},setHue(e){const next=[...store.current.value];next[0]=Number(e.target.value);store.current.value=next},setColor(c=defaultValue){if(store.current.isColor(c)&&store.current[opt[store.current.type].get]().toString()!==c){const next=colorParse(c);store.current.type=next.type;store.current.value=next.value}},changeColor(ev){if(picker.current){const next=[...store.current.value];const{x,y,width,height}=picker.current.getBoundingClientRect();next[1]=Math.floor(Math.min(Math.max(0,(ev.clientX-x)/width*100),100));next[2]=Math.floor(100-Math.min(Math.max(0,(ev.clientY-y)/height*100),100));store.current.value=next}},handleChange(i,v){if(typeof v==="number"){if(i===3&&store.current.type!=="cmyk"){store.current.setAlpha(v||0)}else{const old=store.current[opt[store.current.type].get]();old[i]=v||0;store.current.value=colorParse(old.toString()).value}}},mouseDown(e){store.current.drag=true;store.current.changeColor(e)},mouseMove(e){if(store.current.drag){store.current.changeColor(e)}},mouseUp(){store.current.drag=false},switch(){store.current.type=opt[store.current.type].next},copy(e){setClipboard(store.current.color.toString(),e.target)},eyeDropper(){if(window.EyeDropper){new window.EyeDropper().open().then(res=>{if(res){store.current.setColor(res.sRGBHex)}}).catch(()=>{});return}}}),{color(){store.current.setValue(store.current.value);return store.current[opt[store.current.type].get]()},style(){return{"--c":store.current.toRgbaString(),"--h":store.current.value[0],"--s":store.current.value[1],"--v":store.current.value[2],"--a":store.current.value[3]}}}));const{type,value:hsva,color,style,hexa}=store.current;useEffect(()=>{throttle(store.current.setColor,4)(value)},[defaultValue,value]);useEffect(()=>{onChange===null||onChange===void 0?void 0:onChange(color.toString())},[onChange,color]);useEffect(()=>{if(store.current.timer){clearTimeout(store.current.timer)}if(type==="hexa"){store.current.hexa=store.current.toHexaString()}},[type,hsva]);useEffect(()=>{const _store=store.current;window.addEventListener("mousemove",_store.mouseMove,passiveSupported);window.addEventListener("mouseup",_store.mouseUp,passiveSupported);return()=>{if(_store.timer){clearTimeout(_store.timer)}window.removeEventListener("mousemove",_store.mouseMove,passiveSupported);window.removeEventListener("mouseup",_store.mouseUp,passiveSupported);_store()}},[]);return React.createElement("div",_object_spread_props(_object_spread({},props),{className:cx(cls.palette,className),style:style}),React.createElement("div",{ref:picker,className:cls.picker,onMouseDown:store.current.mouseDown}),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:store.current.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:store.current.handleAlphaRange}):null),React.createElement("div",{className:cls.preview,onClick:store.current.copy})),React.createElement("div",{className:cls.form},type==="hexa"?React.createElement(Input,{className:cls.input,name:"hex",size:"small",value:hexa,onChange:store.current.handleHexa,onBlur:e=>{store.current.setColor(e.target.value)},onKeyUp:e=>{if(e.key==="Enter"&&typeof hexa==="string"){store.current.setColor(hexa)}}}):color.map((n,i)=>{const isAlpha=i===3&&type!=="cmyk";return React.createElement(InputNumber,{key:type+i,size:"small",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=>store.current.handleChange(i,v)})}),React.createElement("div",{className:cls.switch,onClick:store.current.switch},type)),React.createElement("div",{className:cls.color},window.EyeDropper&&React.createElement("i",{style:{"--c":"transparent"},onClickCapture:store.current.eyeDropper}),material.map(c=>React.createElement("i",{key:c,style:{"--c":c},onClick:()=>{store.current.setColor(c)}}))))};export default ColorPalette;
@@ -1,5 +1,6 @@
1
1
  import React from 'react';
2
- import { type ColorPaletteProps, type ComponentSize } from '../index';
2
+ import { type ColorPaletteProps } from '../color-palette';
3
+ import type { ComponentSize } from '../index';
3
4
  export interface ColorPickerProps extends ColorPaletteProps {
4
5
  destroyInactive?: boolean;
5
6
  popupClassName?: string;
@@ -1 +1 @@
1
- function _define_property(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 _object_spread(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){_define_property(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 _object_spread_props(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 _object_without_properties(source,excluded){if(source==null)return{};var target=_object_without_properties_loose(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 _object_without_properties_loose(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,useState}from"react";import{cls}from"./style";import{cx}from"../emotion";import{ColorPalette}from"../index";import Popover from"../popover";const ColorPicker=_param=>{var{destroyInactive=true,popupClassName,className,style,size,value,defaultValue="#fff",onChange}=_param,props=_object_without_properties(_param,["destroyInactive","popupClassName","className","style","size","value","defaultValue","onChange"]);const[val,setVal]=useState(value||defaultValue);const handleChange=useCallback(v=>{setVal(v)},[]);useEffect(()=>{return onChange===null||onChange===void 0?void 0:onChange(val||defaultValue)},[defaultValue,onChange,val]);return React.createElement(Popover,_object_spread_props(_object_spread({},props),{arrow:true,trigger:"click",content:React.createElement(ColorPalette,{value:val,onChange:handleChange}),destroyInactive:destroyInactive,popupClassName:cx(cls.picker,popupClassName),className:cx(cls.trigger,size&&cls[size],className),style:_object_spread_props(_object_spread({},style),{"--c":val})}),null)};export default ColorPicker;
1
+ function _define_property(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 _object_spread(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){_define_property(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 _object_spread_props(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 _object_without_properties(source,excluded){if(source==null)return{};var target=_object_without_properties_loose(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 _object_without_properties_loose(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,useState}from"react";import{cls}from"./style";import ColorPalette from"../color-palette";import{cx}from"../emotion";import Popover from"../popover";const ColorPicker=_param=>{var{destroyInactive=true,popupClassName,className,style,size,value,defaultValue="#fff",onChange}=_param,props=_object_without_properties(_param,["destroyInactive","popupClassName","className","style","size","value","defaultValue","onChange"]);const[val,setVal]=useState(value||defaultValue);const handleChange=useCallback(v=>{setVal(v)},[]);useEffect(()=>{return onChange===null||onChange===void 0?void 0:onChange(val||defaultValue)},[defaultValue,onChange,val]);return React.createElement(Popover,_object_spread_props(_object_spread({},props),{arrow:true,trigger:"click",content:React.createElement(ColorPalette,{value:val,onChange:handleChange}),destroyInactive:destroyInactive,popupClassName:cx(cls.picker,popupClassName),className:cx(cls.trigger,size&&cls[size],className),style:_object_spread_props(_object_spread({},style),{"--c":val})}),null)};export default ColorPicker;
@@ -1 +1 @@
1
- function _define_property(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 _object_spread(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){_define_property(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 _object_spread_props(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 _object_without_properties(source,excluded){if(source==null)return{};var target=_object_without_properties_loose(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 _object_without_properties_loose(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,{useEffect,useRef}from"react";import{isFunction}from"@moneko/common";import sso from"shared-store-object";import{cls}from"./style";import{cx}from"../emotion";import getOptions,{defaultFieldNames}from"../get-options";import Popover from"../popover";const Dropdown=_param=>{var{options,children,open=null,selectable,value,onChange,onOpenChange,disabled,fieldNames}=_param,props=_object_without_properties(_param,["options","children","open","selectable","value","onChange","onOpenChange","disabled","fieldNames"]);const state=useRef(sso({open,options:[],disabled,selectable,fieldNames:_object_spread({},defaultFieldNames,fieldNames),value,change(item){if(!item.disabled&&!state.current.disabled){if(isFunction(onChange)){onChange(item[state.current.fieldNames.value],item)}else{state.current.value=item[state.current.fieldNames.value]}state.current.openChange(false)}},openChange(next){if(isFunction(onOpenChange)){onOpenChange(next)}else{state.current.open=next}},renderMenu(list,option){const{options:optionsKey,label,value:valueKey}=option.fieldNames;return list.map((item,i)=>{if(Array.isArray(item[optionsKey])){return React.createElement(React.Fragment,{key:`${item[valueKey]}-${i}`},React.createElement("div",{className:cx(cls.group,item.className),style:item.style},item.icon&&React.createElement("span",{className:cls.icon},item.icon),item[label]),state.current.renderMenu(item[optionsKey],option))}return React.createElement("div",{key:`${item[valueKey]}-${i}`,className:cx(cls.item,item.className,item.danger&&cls.danger,option.selectable&&option.activeKey===item[valueKey]&&cls.active),"aria-disabled":option.disabled||item.disabled,onClick:e=>{e.preventDefault();e.stopPropagation();state.current.change(item)},style:item.style},item.icon&&React.createElement("span",{className:cls.icon},item.icon),item[label])})}}));const{open:show,options:list,disabled:disable,value:activeKey,selectable:isSelectable,fieldNames:fieldName}=state.current;useEffect(()=>{state.current.open=open},[open]);useEffect(()=>{state.current.selectable=selectable},[selectable]);useEffect(()=>{state.current.value=value},[value]);useEffect(()=>{state.current.disabled=disabled},[disabled]);useEffect(()=>{state.current("fieldNames",prev=>_object_spread({},prev,fieldNames))},[fieldNames]);useEffect(()=>{state.current.options=getOptions(options,state.current.fieldNames)},[options]);useEffect(()=>{const _state=state.current;return()=>{_state()}},[]);return React.createElement(Popover,_object_spread_props(_object_spread({},props),{open:show,onOpenChange:state.current.openChange,disabled:disabled,content:state.current.renderMenu(list,{disabled:disable,fieldNames:fieldName,selectable:isSelectable,activeKey})}),children)};export default Dropdown;
1
+ function _define_property(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 _object_spread(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){_define_property(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 _object_spread_props(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 _object_without_properties(source,excluded){if(source==null)return{};var target=_object_without_properties_loose(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 _object_without_properties_loose(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,{useEffect,useRef}from"react";import{isFunction}from"@moneko/common";import sso from"shared-store-object";import{cls}from"./style";import{cx}from"../emotion";import getOptions,{defaultFieldNames}from"../get-options";import Popover from"../popover";const Dropdown=_param=>{var{options,children,open=null,selectable,value,onChange,onOpenChange,disabled,fieldNames,className,popupClassName}=_param,props=_object_without_properties(_param,["options","children","open","selectable","value","onChange","onOpenChange","disabled","fieldNames","className","popupClassName"]);const state=useRef(sso({open,options:[],disabled,selectable,fieldNames:_object_spread({},defaultFieldNames,fieldNames),value,change(item){if(!item.disabled&&!state.current.disabled){if(isFunction(onChange)){onChange(item[state.current.fieldNames.value],item)}else{state.current.value=item[state.current.fieldNames.value]}state.current.openChange(false)}},openChange(next){if(isFunction(onOpenChange)){onOpenChange(next)}else{state.current.open=next}},renderMenu(list,option){const{options:optionsKey,label,value:valueKey}=option.fieldNames;return list.map((item,i)=>{if(Array.isArray(item[optionsKey])){return React.createElement(React.Fragment,{key:`${item[valueKey]}-${i}`},React.createElement("div",{className:cx(cls.group,item.className),style:item.style},item.icon&&React.createElement("span",{className:cls.icon},item.icon),item[label]),state.current.renderMenu(item[optionsKey],option))}return React.createElement("div",{key:`${item[valueKey]}-${i}`,className:cx(cls.item,item.className,item.danger&&cls.danger,option.selectable&&option.activeKey===item[valueKey]&&cls.active),"aria-disabled":option.disabled||item.disabled,onClick:e=>{e.preventDefault();e.stopPropagation();state.current.change(item)},style:item.style},item.icon&&React.createElement("span",{className:cls.icon},item.icon),item[label])})}}));const{open:show,options:list,disabled:disable,value:activeKey,selectable:isSelectable,fieldNames:fieldName}=state.current;useEffect(()=>{state.current.open=open},[open]);useEffect(()=>{state.current.selectable=selectable},[selectable]);useEffect(()=>{state.current.value=value},[value]);useEffect(()=>{state.current.disabled=disabled},[disabled]);useEffect(()=>{state.current("fieldNames",prev=>_object_spread({},prev,fieldNames))},[fieldNames]);useEffect(()=>{state.current.options=getOptions(options,state.current.fieldNames)},[options]);useEffect(()=>{const _state=state.current;return()=>{_state()}},[]);return React.createElement(Popover,_object_spread_props(_object_spread({},props),{className:cx(cls.dropdown,className),popupClassName:cx(cls.portal,popupClassName),open:show,onOpenChange:state.current.openChange,disabled:disabled,content:state.current.renderMenu(list,{disabled:disable,fieldNames:fieldName,selectable:isSelectable,activeKey})}),children)};export default Dropdown;
@@ -5,10 +5,5 @@ export declare const cls: {
5
5
  group: "n-dropdown-group";
6
6
  danger: "n-dropdown-danger";
7
7
  active: "n-dropdown-active";
8
- arrow: "n-dropdown-arrow";
9
8
  icon: "n-dropdown-icon";
10
- inUp: "n-dropdown-in-up";
11
- outUp: "n-dropdown-out-up";
12
- inDown: "n-dropdown-in-down";
13
- outDown: "n-dropdown-out-down";
14
9
  };
@@ -1,52 +1,9 @@
1
- import{css,injectGlobal}from"../emotion";import prefixCls from"../prefix-cls";export const cls={dropdown:prefixCls("dropdown"),portal:prefixCls("dropdown-portal"),item:prefixCls("dropdown-item"),group:prefixCls("dropdown-group"),danger:prefixCls("dropdown-danger"),active:prefixCls("dropdown-active"),arrow:prefixCls("dropdown-arrow"),icon:prefixCls("dropdown-icon"),inUp:prefixCls("dropdown-in-up"),outUp:prefixCls("dropdown-out-up"),inDown:prefixCls("dropdown-in-down"),outDown:prefixCls("dropdown-out-down")};const cs=css`
2
- :root {
3
- --dropdown-bg: var(--component-bg);
4
- --dropdown-shadow-color: rgb(0 0 0 / 5%);
5
- }
6
-
7
- [data-theme='dark'] {
8
- --dropdown-bg: #1f1f1f;
9
- }
10
-
1
+ import{injectGlobal}from"../emotion";import prefixCls from"../prefix-cls";export const cls={dropdown:prefixCls("dropdown"),portal:prefixCls("dropdown-portal"),item:prefixCls("dropdown-item"),group:prefixCls("dropdown-group"),danger:prefixCls("dropdown-danger"),active:prefixCls("dropdown-active"),icon:prefixCls("dropdown-icon")};injectGlobal`
11
2
  .${cls.dropdown} {
12
- position: relative;
13
- display: inline-block;
14
-
15
- &::-webkit-scrollbar {
16
- inline-size: 1px;
17
- }
3
+ box-sizing: border-box;
18
4
  }
19
5
  .${cls.portal} {
20
- --direction: 1;
21
-
22
- min-inline-size: 100px;
23
- position: fixed;
24
- display: inline-block;
25
- border-radius: var(--border-radius);
26
- padding: 4px;
27
- font-size: var(--font-size);
28
- color: var(--text-color);
29
- background-color: var(--dropdown-bg);
30
- backdrop-filter: blur(16px);
31
6
  box-sizing: border-box;
32
- filter: drop-shadow(0.5px calc(var(--direction) * 1px) 4px var(--dropdown-shadow-color))
33
- drop-shadow(1px calc(var(--direction) * 2px) 8px var(--dropdown-shadow-color))
34
- drop-shadow(2px calc(var(--direction) * 4px) 16px var(--dropdown-shadow-color));
35
- }
36
- .${cls.arrow} {
37
- &::before {
38
- position: absolute;
39
- inset-inline-end: 0;
40
- inset-block-end: 0;
41
- inset-inline-start: 0;
42
- margin: auto;
43
- inline-size: 12px;
44
- block-size: 8px;
45
- background: inherit;
46
- content: '';
47
- clip-path: polygon(0% 0%, 50% 100%, 100% 0%);
48
- transform: translate3d(var(--x, 0), 100%, 0);
49
- }
50
7
  }
51
8
  .${cls.icon} {
52
9
  font-size: 14px;
@@ -89,101 +46,4 @@ import{css,injectGlobal}from"../emotion";import prefixCls from"../prefix-cls";ex
89
46
  font-size: 12px;
90
47
  color: var(--text-secondary);
91
48
  }
92
- .${cls.inUp} {
93
- --direction: -1;
94
-
95
- animation: dropdown-up-in-effect 0.3s forwards;
96
- transform: scaleY(1);
97
- }
98
- .${cls.outUp} {
99
- --direction: -1;
100
-
101
- animation: dropdown-up-out-effect 0.3s forwards;
102
- transform: scaleY(1);
103
- }
104
-
105
- .${cls.inDown} {
106
- --direction: 1;
107
-
108
- animation: dropdown-down-in-effect 0.3s forwards;
109
- transform: scaleY(1);
110
-
111
- &::before {
112
- inset-block-end: unset;
113
- inset-block-start: 0;
114
- transform: translate3d(var(--x, 0), -100%, 0) rotate(180deg);
115
- }
116
- }
117
- .${cls.outDown} {
118
- --direction: 1;
119
-
120
- animation: dropdown-down-out-effect 0.3s forwards;
121
- transform: scaleY(1);
122
-
123
- &::before {
124
- inset-block-end: unset;
125
- inset-block-start: 0;
126
- transform: translate3d(var(--x, 0), -100%, 0) rotate(180deg);
127
- }
128
- }
129
-
130
- @keyframes dropdown-down-in-effect {
131
- 0% {
132
- transform: scaleY(0.8);
133
- transform-origin: 0% 0%;
134
- opacity: 0;
135
- }
136
-
137
- 100% {
138
- transform: scaleY(1);
139
- transform-origin: 0% 0%;
140
- opacity: 1;
141
- }
142
- }
143
-
144
- @keyframes dropdown-down-out-effect {
145
- 0% {
146
- transform: scaleY(1);
147
- transform-origin: 0% 0%;
148
- opacity: 1;
149
- pointer-events: none;
150
- }
151
-
152
- 100% {
153
- transform: scaleY(0.8);
154
- transform-origin: 0% 0%;
155
- opacity: 0;
156
- pointer-events: none;
157
- }
158
- }
159
-
160
- @keyframes dropdown-up-in-effect {
161
- 0% {
162
- transform: scaleY(0.8);
163
- transform-origin: 100% 100%;
164
- opacity: 0;
165
- }
166
-
167
- 100% {
168
- transform: scaleY(1);
169
- transform-origin: 100% 100%;
170
- opacity: 1;
171
- }
172
- }
173
-
174
- @keyframes dropdown-up-out-effect {
175
- 0% {
176
- transform: scaleY(1);
177
- transform-origin: 100% 100%;
178
- opacity: 1;
179
- pointer-events: none;
180
- }
181
-
182
- 100% {
183
- transform: scaleY(0.8);
184
- transform-origin: 100% 100%;
185
- opacity: 0;
186
- pointer-events: none;
187
- }
188
- }
189
- `;injectGlobal([cs]);
49
+ `;
package/es/index.d.ts CHANGED
@@ -28,6 +28,7 @@ export { default as Carousel, type CarouselProps } from './carousel';
28
28
  export { default as Portal, type PortalProps } from './portal';
29
29
  export { default as Typography, type TypographyProps } from './typography';
30
30
  export { default as Switch, type SwitchProps } from './switch';
31
+ export { default as Loading, type LoadingProps } from './loading';
31
32
  export { default as prefixCls, setPrefixCls } from './prefix-cls';
32
33
  export { default as highlight } from './highlight';
33
34
  export { default as Prism } from './prism';
package/es/index.js CHANGED
@@ -1 +1 @@
1
- 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,generateTheme}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 Radio}from"./radio";export{default as Checkbox}from"./checkbox";export{default as Segmented}from"./segmented";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 Dropdown}from"./dropdown";export{default as Popover}from"./popover";export{default as Select}from"./select";export{default as CodeBlock}from"./code-block";export{default as Photo}from"./photo";export{default as Carousel}from"./carousel";export{default as Portal}from"./portal";export{default as Typography}from"./typography";export{default as Switch}from"./switch";export{default as prefixCls,setPrefixCls}from"./prefix-cls";export{default as highlight}from"./highlight";export{default as Prism}from"./prism";export{default as getOptions,defaultFieldNames}from"./get-options";
1
+ 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,generateTheme}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 Radio}from"./radio";export{default as Checkbox}from"./checkbox";export{default as Segmented}from"./segmented";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 Dropdown}from"./dropdown";export{default as Popover}from"./popover";export{default as Select}from"./select";export{default as CodeBlock}from"./code-block";export{default as Photo}from"./photo";export{default as Carousel}from"./carousel";export{default as Portal}from"./portal";export{default as Typography}from"./typography";export{default as Switch}from"./switch";export{default as Loading}from"./loading";export{default as prefixCls,setPrefixCls}from"./prefix-cls";export{default as highlight}from"./highlight";export{default as Prism}from"./prism";export{default as getOptions,defaultFieldNames}from"./get-options";
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { type ComponentSize } from '../index';
2
+ import type { ComponentSize } from '../index';
3
3
  export interface InputProps<T = string | number | undefined> extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'prefix' | 'size' | 'onChange' | 'value' | 'type'> {
4
4
  className?: string;
5
5
  suffix?: React.ReactNode;
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { type InputProps } from '../index';
2
+ import { type InputProps } from '../input';
3
3
  export interface InputNumberProps extends Omit<InputProps, 'value' | 'defaultValue' | 'onChange'> {
4
4
  value?: number;
5
5
  defaultValue?: number;
@@ -1 +1 @@
1
- function _define_property(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 _object_spread(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){_define_property(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 _object_spread_props(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 _object_without_properties(source,excluded){if(source==null)return{};var target=_object_without_properties_loose(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 _object_without_properties_loose(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,{useEffect,useRef}from"react";import{passiveSupported}from"@moneko/common";import sso from"shared-store-object";import{cls}from"./style";import{cx}from"../emotion";import{Input}from"../index";const InputNumber=_param=>{var{value,min=Number.MIN_SAFE_INTEGER,max=Number.MAX_SAFE_INTEGER,step=1,formatter,parser,onChange,onMouseDown,onKeyDown,precision=2,className}=_param,prpos=_object_without_properties(_param,["value","min","max","step","formatter","parser","onChange","onMouseDown","onKeyDown","precision","className"]);const state=useRef(sso({move:false,value,precision,step,min,max,mouseUp(){state.current.move=false},mouseMove({movementX,movementY}){const _val=state.current.value;const val=typeof _val==="number"&&!isNaN(_val)?_val:0;state.current.change(Number(Number(val+(movementX-movementY)*state.current.step).toFixed(state.current.precision)))},mouseDown(e){state.current.move=true;onMouseDown===null||onMouseDown===void 0?void 0:onMouseDown(e)},keyDown(e){if(e.key==="ArrowUp"){state.current.mouseMove({movementX:0,movementY:-1})}else if(e.key==="ArrowDown"){state.current.mouseMove({movementX:0,movementY:1})}onKeyDown===null||onKeyDown===void 0?void 0:onKeyDown(e)},change(val){let _val=typeof val==="string"?parseFloat(val):val;if(isNaN(_val)){_val=""}if(typeof _val!=="undefined"){if(_val<state.current.min)_val=state.current.min;if(_val>state.current.max)_val=state.current.max}if(state.current.value!==_val){state.current.value=_val;onChange===null||onChange===void 0?void 0:onChange(_val)}}}));const{move}=state.current;useEffect(()=>{state.current.value=value},[value]);useEffect(()=>{state.current.precision=precision},[precision]);useEffect(()=>{state.current.step=step},[step]);useEffect(()=>{state.current.min=min},[min]);useEffect(()=>{state.current.max=max},[max]);useEffect(()=>{const _state=state.current;if(move){document.body.addEventListener("mousemove",_state.mouseMove,passiveSupported)}return()=>{document.body.removeEventListener("mousemove",_state.mouseMove,passiveSupported)}},[move]);useEffect(()=>{const _state=state.current;document.body.addEventListener("mouseup",_state.mouseUp,passiveSupported);return()=>{document.body.removeEventListener("mouseup",_state.mouseUp,passiveSupported);_state()}},[]);return React.createElement(Input,_object_spread_props(_object_spread({},prpos),{className:cx(cls.number,className),value:value,max:max,min:min,onChange:state.current.change,onMouseDown:state.current.mouseDown,onKeyDown:state.current.keyDown,parser:parser,formatter:formatter}))};export default InputNumber;
1
+ function _define_property(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 _object_spread(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){_define_property(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 _object_spread_props(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 _object_without_properties(source,excluded){if(source==null)return{};var target=_object_without_properties_loose(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 _object_without_properties_loose(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,{useEffect,useRef}from"react";import{passiveSupported}from"@moneko/common";import sso from"shared-store-object";import{cls}from"./style";import{cx}from"../emotion";import Input from"../input";const InputNumber=_param=>{var{value,min=Number.MIN_SAFE_INTEGER,max=Number.MAX_SAFE_INTEGER,step=1,formatter,parser,onChange,onMouseDown,onKeyDown,precision=2,className}=_param,prpos=_object_without_properties(_param,["value","min","max","step","formatter","parser","onChange","onMouseDown","onKeyDown","precision","className"]);const state=useRef(sso({move:false,value,precision,step,min,max,mouseUp(){state.current.move=false},mouseMove({movementX,movementY}){const _val=state.current.value;const val=typeof _val==="number"&&!isNaN(_val)?_val:0;state.current.change(Number(Number(val+(movementX-movementY)*state.current.step).toFixed(state.current.precision)))},mouseDown(e){state.current.move=true;onMouseDown===null||onMouseDown===void 0?void 0:onMouseDown(e)},keyDown(e){if(e.key==="ArrowUp"){state.current.mouseMove({movementX:0,movementY:-1})}else if(e.key==="ArrowDown"){state.current.mouseMove({movementX:0,movementY:1})}onKeyDown===null||onKeyDown===void 0?void 0:onKeyDown(e)},change(val){let _val=typeof val==="string"?parseFloat(val):val;if(isNaN(_val)){_val=""}if(typeof _val!=="undefined"){if(_val<state.current.min)_val=state.current.min;if(_val>state.current.max)_val=state.current.max}if(state.current.value!==_val){state.current.value=_val;onChange===null||onChange===void 0?void 0:onChange(_val)}}}));const{move}=state.current;useEffect(()=>{state.current.value=value},[value]);useEffect(()=>{state.current.precision=precision},[precision]);useEffect(()=>{state.current.step=step},[step]);useEffect(()=>{state.current.min=min},[min]);useEffect(()=>{state.current.max=max},[max]);useEffect(()=>{const _state=state.current;if(move){document.body.addEventListener("mousemove",_state.mouseMove,passiveSupported)}return()=>{document.body.removeEventListener("mousemove",_state.mouseMove,passiveSupported)}},[move]);useEffect(()=>{const _state=state.current;document.body.addEventListener("mouseup",_state.mouseUp,passiveSupported);return()=>{document.body.removeEventListener("mouseup",_state.mouseUp,passiveSupported);_state()}},[]);return React.createElement(Input,_object_spread_props(_object_spread({},prpos),{className:cx(cls.number,className),value:value,max:max,min:min,onChange:state.current.change,onMouseDown:state.current.mouseDown,onKeyDown:state.current.keyDown,parser:parser,formatter:formatter}))};export default InputNumber;
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ export interface LoadingProps {
3
+ className?: string;
4
+ style?: React.CSSProperties;
5
+ loading: boolean;
6
+ children?: React.ReactNode;
7
+ }
8
+ declare const Loading: React.FC<LoadingProps>;
9
+ export default Loading;
@@ -0,0 +1 @@
1
+ import React from"react";import{cls}from"./style";import{cx}from"..";const Loading=({loading,children,style,className})=>{return React.createElement("div",{className:cx(cls.box,loading&&cls.loading,className),style:style},React.createElement("div",{className:cls.content},children))};export default Loading;
@@ -0,0 +1,5 @@
1
+ export declare const cls: {
2
+ box: "n-loading-box";
3
+ content: "n-loading-content";
4
+ loading: "n-loading";
5
+ };
@@ -0,0 +1,50 @@
1
+ import{injectGlobal}from"../emotion";import prefixCls from"../prefix-cls";export const cls={box:prefixCls("loading-box"),content:prefixCls("loading-content"),loading:prefixCls("loading")};injectGlobal`
2
+ .${cls.box} {
3
+ position: relative;
4
+ box-sizing: border-box;
5
+ }
6
+ .${cls.content} {
7
+ opacity: 1;
8
+ transition: opacity 0.3s;
9
+ }
10
+ .${cls.loading} {
11
+ .${cls.content} {
12
+ opacity: 0.3;
13
+ pointer-events: none;
14
+ user-select: none;
15
+ }
16
+
17
+ &::before {
18
+ position: absolute;
19
+ display: flex;
20
+ justify-content: center;
21
+ align-items: center;
22
+ margin: auto;
23
+ border-style: solid;
24
+ border-width: 1px 0;
25
+ border-color: var(--text-secondary);
26
+ border-radius: 16px;
27
+ font-size: large;
28
+ text-align: center;
29
+ inline-size: 32px;
30
+ block-size: 32px;
31
+ inset-block-start: 0;
32
+ inset-block-end: 0;
33
+ inset-inline-start: 0;
34
+ inset-inline-end: 0;
35
+ box-sizing: border-box;
36
+ content: '✲';
37
+ animation: loading-rotate-effect 1s infinite;
38
+ }
39
+ }
40
+
41
+ @keyframes loading-rotate-effect {
42
+ 0% {
43
+ transform: rotate(0deg);
44
+ }
45
+
46
+ 100% {
47
+ transform: rotate(360deg);
48
+ }
49
+ }
50
+ `;
@@ -1 +1 @@
1
- function _define_property(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 _object_spread(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){_define_property(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 _object_spread_props(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 _object_without_properties(source,excluded){if(source==null)return{};var target=_object_without_properties_loose(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 _object_without_properties_loose(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,{useEffect,useMemo,useRef}from"react";import{getMaxZindex,isString,isFunction}from"@moneko/common";import sso from"shared-store-object";import{cls}from"./style";import{cx}from"../emotion";import Portal from"../portal";const Popover=_param=>{var{className,popupClassName,popupStyle,getPopupContainer,children,content,trigger="hover",open=null,destroyInactive=true,onOpenChange,disabled,placement,arrow}=_param,props=_object_without_properties(_param,["className","popupClassName","popupStyle","getPopupContainer","children","content","trigger","open","destroyInactive","onOpenChange","disabled","placement","arrow"]);const ref=useRef(null);const childRef=useRef(null);const state=useRef(sso({show:open,closeTimer:null,up:false,posi:{left:-9999,top:-9999,x:"0px"},trigger,disabled,arrow,placement,exit(){if(state.current.show===false){state.current.show=null}},close(e){e.preventDefault();e.stopPropagation();if(state.current.closeTimer){clearTimeout(state.current.closeTimer);state.current.closeTimer=null}state.current.closeTimer=setTimeout(()=>{if(state.current.closeTimer){clearTimeout(state.current.closeTimer);state.current.closeTimer=null}if(state.current.show){state.current.openChange(false)}},state.current.trigger==="hover"?300:0)},open(e){e.preventDefault();e.stopPropagation();if(state.current.closeTimer){clearTimeout(state.current.closeTimer);state.current.closeTimer=null}if(state.current.trigger==="contextMenu"&&e.type==="contextmenu"){var _ref_current;state.current.posi=_object_spread_props(_object_spread({},state.current.posi),{left:e.clientX,top:e.clientY,x:-(((_ref_current=ref.current)===null||_ref_current===void 0?void 0:_ref_current.getBoundingClientRect().width)||0)/2+16+"px"})}state.current.openChange(true)},openChange(next){if(!state.current.disabled){if(isFunction(onOpenChange)){onOpenChange(next)}else{state.current.show=next}}},showPortal(){if(!state.current.show||!ref.current||!childRef.current||state.current.trigger==="contextMenu"){return}const elRect=childRef.current.getBoundingClientRect();const portalRect=ref.current.getBoundingClientRect();if(elRect&&portalRect){const portalRectHeight=ref.current.offsetHeight;const offsetX=portalRect.width/2-elRect.width/2;const margin=window.innerHeight-elRect.bottom;let _isBottom=margin>portalRectHeight*.8&&margin>elRect.top;const arrowHeight=state.current.arrow?8:4;const _posi={left:Math.abs(offsetX>elRect.left?elRect.left:elRect.left-offsetX),top:-9999,x:"0px"};_posi.x=-(_posi.left-elRect.left+offsetX)+"px";switch(state.current.placement){case"bottomLeft":_posi.left=elRect.left;_posi.x=-portalRect.width/2+16+"px";_isBottom=true;break;case"bottom":_posi.left=Math.abs(offsetX>elRect.left?elRect.left:elRect.left-offsetX);_posi.x=-(_posi.left-elRect.left+offsetX)+"px";_isBottom=true;break;case"bottomRight":_posi.left=elRect.right-portalRect.width;_posi.x=portalRect.width/2-16+"px";_isBottom=true;break;case"topLeft":_posi.left=elRect.left;_posi.x=-portalRect.width/2+16+"px";_isBottom=false;break;case"top":_posi.left=Math.abs(offsetX>elRect.left?elRect.left:elRect.left-offsetX);_posi.x=-(_posi.left-elRect.left+offsetX)+"px";_isBottom=false;break;case"topRight":_posi.left=elRect.right-portalRect.width;_posi.x=portalRect.width/2-16+"px";_isBottom=false;break;default:break}if(_isBottom){_posi.top=elRect.bottom+arrowHeight}else{_posi.top=elRect.top-portalRectHeight-arrowHeight}state.current.posi=_posi;state.current.up=!_isBottom}}}));const{show,posi,up,arrow:showArrow,trigger:triggerType}=state.current;const container=useMemo(()=>{if(isFunction(getPopupContainer)){return getPopupContainer(childRef.current)}return document.body},[getPopupContainer]);const childrenProps=useMemo(()=>{const _props={};const openEvent={click:"onClick",hover:"onMouseOver",contextMenu:"onContextMenu",none:null};const closeEvent={hover:"onMouseOut",click:null,contextMenu:null,none:null};const triggers=isString(triggerType)?[triggerType]:triggerType;for(let i=0,len=triggers.length;i<len;i++){const openFn=openEvent[triggers[i]];const closeFn=closeEvent[triggers[i]];Object.assign(_props,openFn&&{[openFn]:state.current.open},closeFn&&{[closeFn]:state.current.close})}return _props},[triggerType]);const style=useMemo(()=>{return _object_spread_props(_object_spread({},popupStyle),{left:posi.left,top:posi.top,"--x":posi.x,zIndex:getMaxZindex().toString()})},[popupStyle,posi]);useEffect(()=>{state.current.show=open},[open]);useEffect(()=>{state.current.trigger=trigger},[trigger]);useEffect(()=>{state.current.arrow=arrow},[arrow]);useEffect(()=>{state.current.disabled=disabled},[disabled]);useEffect(()=>{state.current.placement=placement},[placement]);useEffect(()=>{state.current.showPortal()},[show]);useEffect(()=>{const _state=state.current;if(_state.trigger!=="none"){document.documentElement.addEventListener("click",_state.close,false)}window.addEventListener("scroll",_state.showPortal,false);return()=>{if(_state.closeTimer){clearTimeout(_state.closeTimer)}if(_state.trigger!=="none"){document.documentElement.removeEventListener("click",_state.close,false)}window.removeEventListener("scroll",_state.showPortal,false);_state()}},[]);return React.createElement(React.Fragment,null,(show!==null||!destroyInactive)&&React.createElement(Portal,{container:container},React.createElement("div",_object_spread_props(_object_spread({},childrenProps),{ref:ref,onAnimationEnd:state.current.exit,className:cx(cls.portal,showArrow&&cls.arrow,show?up?cls.inUp:cls.inDown:up?cls.outUp:cls.outDown,popupClassName),style:style}),content)),React.createElement("span",_object_spread_props(_object_spread({},props,childrenProps),{className:cx(cls.popover,className),ref:childRef}),children))};export default Popover;
1
+ function _define_property(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 _object_spread(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){_define_property(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 _object_spread_props(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 _object_without_properties(source,excluded){if(source==null)return{};var target=_object_without_properties_loose(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 _object_without_properties_loose(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,{useEffect,useMemo,useRef}from"react";import{getMaxZindex,isString,isFunction,passiveSupported}from"@moneko/common";import sso from"shared-store-object";import{cls}from"./style";import{cx}from"../emotion";import Portal from"../portal";const Popover=_param=>{var{className,popupClassName,popupStyle,getPopupContainer,children,content,trigger="hover",open=null,destroyInactive=true,onOpenChange,disabled,placement,arrow}=_param,props=_object_without_properties(_param,["className","popupClassName","popupStyle","getPopupContainer","children","content","trigger","open","destroyInactive","onOpenChange","disabled","placement","arrow"]);const ref=useRef(null);const childRef=useRef(null);const state=useRef(sso({show:open,closeTimer:null,up:false,posi:{left:-9999,top:-9999,x:"0px"},trigger,disabled,arrow,placement,exit(){if(state.current.show===false){state.current.show=null}},close(e){e.preventDefault();e.stopPropagation();if(state.current.closeTimer){clearTimeout(state.current.closeTimer);state.current.closeTimer=null}state.current.closeTimer=setTimeout(()=>{if(state.current.closeTimer){clearTimeout(state.current.closeTimer);state.current.closeTimer=null}if(state.current.show){state.current.openChange(false)}},state.current.trigger==="hover"?300:0)},open(e){e.preventDefault();e.stopPropagation();if(state.current.closeTimer){clearTimeout(state.current.closeTimer);state.current.closeTimer=null}if(state.current.trigger==="contextMenu"&&e.type==="contextmenu"){var _ref_current;state.current.posi=_object_spread_props(_object_spread({},state.current.posi),{left:e.clientX,top:e.clientY,x:-(((_ref_current=ref.current)===null||_ref_current===void 0?void 0:_ref_current.getBoundingClientRect().width)||0)/2+16+"px"})}state.current.openChange(true)},openChange(next){if(!state.current.disabled){if(isFunction(onOpenChange)){onOpenChange(next)}else{state.current.show=next}}},showPortal(e){if(!state.current.show||!ref.current||!childRef.current||!e&&state.current.trigger==="contextMenu"){return}if((e===null||e===void 0?void 0:e.type)==="scroll"&&state.current.trigger==="contextMenu"){state.current.openChange(false);return}const elRect=childRef.current.getBoundingClientRect();const portalRect=ref.current.getBoundingClientRect();const offsetX=portalRect.width/2-elRect.width/2;const margin=window.innerHeight-elRect.bottom;let _isBottom=true;const arrowHeight=state.current.arrow?8:4;const _posi={left:-9999,top:-9999,x:"0px"};switch(state.current.placement){case"bottomLeft":_posi.left=elRect.left;_posi.x=-portalRect.width/2+16+"px";_isBottom=true;break;case"bottom":_posi.left=Math.abs(offsetX>elRect.left?elRect.left:elRect.left-offsetX);_posi.x=-(_posi.left-elRect.left+offsetX)+"px";_isBottom=true;break;case"bottomRight":_posi.left=elRect.right-portalRect.width;_posi.x=portalRect.width/2-16+"px";_isBottom=true;break;case"topLeft":_posi.left=elRect.left;_posi.x=-portalRect.width/2+16+"px";_isBottom=false;break;case"top":_posi.left=Math.abs(offsetX>elRect.left?elRect.left:elRect.left-offsetX);_posi.x=-(_posi.left-elRect.left+offsetX)+"px";_isBottom=false;break;case"topRight":_posi.left=elRect.right-portalRect.width;_posi.x=portalRect.width/2-16+"px";_isBottom=false;break;default:_posi.left=Math.abs(offsetX>elRect.left?elRect.left:elRect.left-offsetX);_posi.x=-(_posi.left-elRect.left+offsetX)+"px";_isBottom=margin>ref.current.offsetHeight*.8&&margin>elRect.top;break}if(_isBottom){_posi.top=elRect.bottom+arrowHeight}else{_posi.top=elRect.top-ref.current.offsetHeight-arrowHeight}state.current.posi=_posi;state.current.up=!_isBottom}}));const{show,posi,up,arrow:showArrow,trigger:triggerType}=state.current;const container=useMemo(()=>{if(isFunction(getPopupContainer)){return getPopupContainer(childRef.current)}return document.body},[getPopupContainer]);const childrenProps=useMemo(()=>{const _props={};const openEvent={click:"onClick",hover:"onMouseOver",contextMenu:"onContextMenu",none:null};const closeEvent={hover:"onMouseOut",click:null,contextMenu:null,none:null};const triggers=isString(triggerType)?[triggerType]:triggerType;for(let i=0,len=triggers.length;i<len;i++){const openFn=openEvent[triggers[i]];const closeFn=closeEvent[triggers[i]];Object.assign(_props,openFn&&{[openFn]:state.current.open},closeFn&&{[closeFn]:state.current.close})}return _props},[triggerType]);const style=useMemo(()=>{return _object_spread_props(_object_spread({},popupStyle),{left:posi.left,top:posi.top,"--x":posi.x,zIndex:getMaxZindex().toString()})},[popupStyle,posi]);useEffect(()=>{state.current.show=open},[open]);useEffect(()=>{state.current.trigger=trigger},[trigger]);useEffect(()=>{state.current.arrow=arrow},[arrow]);useEffect(()=>{state.current.disabled=disabled},[disabled]);useEffect(()=>{state.current.placement=placement},[placement]);useEffect(()=>{state.current.showPortal()},[show]);useEffect(()=>{const _state=state.current;if(_state.trigger!=="none"){document.documentElement.addEventListener("click",_state.close,false)}window.addEventListener("scroll",_state.showPortal,passiveSupported);return()=>{if(_state.closeTimer){clearTimeout(_state.closeTimer)}if(_state.trigger!=="none"){document.documentElement.removeEventListener("click",_state.close,false)}window.removeEventListener("scroll",_state.showPortal,passiveSupported);_state()}},[]);return React.createElement(React.Fragment,null,(show!==null||!destroyInactive)&&React.createElement(Portal,{container:container},React.createElement("div",_object_spread_props(_object_spread({},childrenProps),{ref:ref,onAnimationEnd:state.current.exit,className:cx(cls.portal,showArrow&&cls.arrow,show?up?cls.inUp:cls.inDown:up?cls.outUp:cls.outDown,popupClassName),style:style}),content)),React.createElement("span",_object_spread_props(_object_spread({},props,childrenProps),{className:cx(cls.popover,className),ref:childRef}),children))};export default Popover;
@@ -1,12 +1,7 @@
1
1
  export declare const cls: {
2
2
  popover: "n-popover";
3
3
  portal: "n-popover-portal";
4
- item: "n-popover-item";
5
- group: "n-popover-group";
6
- danger: "n-popover-danger";
7
- active: "n-popover-active";
8
4
  arrow: "n-popover-arrow";
9
- icon: "n-popover-icon";
10
5
  inUp: "n-popover-in-up";
11
6
  outUp: "n-popover-out-up";
12
7
  inDown: "n-popover-in-down";
@@ -1,4 +1,4 @@
1
- import{css,injectGlobal}from"../emotion";import prefixCls from"../prefix-cls";export const cls={popover:prefixCls("popover"),portal:prefixCls("popover-portal"),item:prefixCls("popover-item"),group:prefixCls("popover-group"),danger:prefixCls("popover-danger"),active:prefixCls("popover-active"),arrow:prefixCls("popover-arrow"),icon:prefixCls("popover-icon"),inUp:prefixCls("popover-in-up"),outUp:prefixCls("popover-out-up"),inDown:prefixCls("popover-in-down"),outDown:prefixCls("popover-out-down")};const cs=css`
1
+ import{injectGlobal}from"../emotion";import prefixCls from"../prefix-cls";export const cls={popover:prefixCls("popover"),portal:prefixCls("popover-portal"),arrow:prefixCls("popover-arrow"),inUp:prefixCls("popover-in-up"),outUp:prefixCls("popover-out-up"),inDown:prefixCls("popover-in-down"),outDown:prefixCls("popover-out-down")};injectGlobal`
2
2
  :root {
3
3
  --popover-bg: var(--component-bg);
4
4
  --popover-shadow-color: rgb(0 0 0 / 5%);
@@ -48,47 +48,6 @@ import{css,injectGlobal}from"../emotion";import prefixCls from"../prefix-cls";ex
48
48
  transform: translate3d(var(--x, 0), 100%, 0);
49
49
  }
50
50
  }
51
- .${cls.icon} {
52
- font-size: 14px;
53
- margin-inline-end: 6px;
54
- }
55
- .${cls.item}, .${cls.group} {
56
- border-radius: calc(var(--border-radius) / 1.5);
57
- transition: 0.2s background-color ease, 0.2s color ease;
58
- cursor: pointer;
59
- box-sizing: border-box;
60
- line-height: 1.57;
61
- }
62
- .${cls.item} {
63
- padding: 5px 12px;
64
- color: var(--text-color);
65
-
66
- &:hover:not(&[aria-disabled]:not([aria-disabled='false'])) {
67
- &:not(.${cls.active},.${cls.danger}) {
68
- background-color: var(--disable-bg);
69
- }
70
- }
71
-
72
- &[aria-disabled]:not([aria-disabled='false']) {
73
- cursor: not-allowed;
74
- color: var(--disable-color);
75
- }
76
- &.${cls.active} {
77
- background-color: var(--primary-selection);
78
- }
79
- &.${cls.danger} {
80
- color: var(--error-color);
81
- &.${cls.active}, &:hover {
82
- color: #fff;
83
- background-color: var(--error-color);
84
- }
85
- }
86
- }
87
- .${cls.group} {
88
- padding: 5px;
89
- font-size: 12px;
90
- color: var(--text-secondary);
91
- }
92
51
  .${cls.inUp} {
93
52
  --direction: -1;
94
53
 
@@ -186,4 +145,4 @@ import{css,injectGlobal}from"../emotion";import prefixCls from"../prefix-cls";ex
186
145
  pointer-events: none;
187
146
  }
188
147
  }
189
- `;injectGlobal([cs]);
148
+ `;
@@ -1,4 +1,3 @@
1
1
  export declare const cls: {
2
2
  select: "n-select";
3
- value: "n-select-value";
4
3
  };
@@ -1,14 +1,11 @@
1
- import{css,injectGlobal}from"../emotion";import prefixCls from"../prefix-cls";export const cls={select:prefixCls("select"),value:prefixCls("select-value")};const cs=css`
1
+ import{injectGlobal}from"../emotion";import prefixCls from"../prefix-cls";export const cls={select:prefixCls("select")};injectGlobal`
2
2
  .${cls.select} {
3
3
  position: relative;
4
4
  display: flex;
5
5
  margin-block-end: 8px;
6
+
7
+ &:last-of-type {
8
+ margin-block-end: 0;
9
+ }
6
10
  }
7
- .${cls.value} {
8
- position: absolute;
9
- inset-block-start: 0;
10
- inset-inline-start: 14px;
11
- pointer-events: none;
12
- z-index: 1;
13
- }
14
- `;injectGlobal([cs]);
11
+ `;