@daoyi/nmtl-ui 1.1.44-beta.8 → 1.1.44-beta.9
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_ as e,a as n,b as o}from"./_rollupPluginBabelHelpers-b18bba19.js";import t,{useCallback as
|
|
1
|
+
import{_ as e,a as n,b as o}from"./_rollupPluginBabelHelpers-b18bba19.js";import t,{useCallback as a,useState as r,useRef as l,useEffect as u}from"react";import i from"prop-types";import{c}from"./index-b2745105.js";import{d as p}from"./debounce-c993109b.js";import{Autocomplete as s}from"@material-ui/lab";import{Chip as f,TextField as d,CircularProgress as m}from"@material-ui/core";import{Close as b,SearchOutlined as g}from"@material-ui/icons";import h from"./Empty.js";import{s as y}from"./style-inject.es-1f59c1d0.js";y(".autocomplete .MuiAutocomplete-inputRoot[class*='MuiOutlinedInput-root'] {\n padding: 0px 8px; }\n\n.autocomplete .MuiChip-deleteIcon {\n width: 16px;\n height: 16px; }\n\n.autocomplete__icon {\n font-size: 1.25rem;\n margin-right: 8px; }\n\n.autocomplete--showSearchIcon .MuiAutocomplete-inputRoot[class*='MuiOutlinedInput-root'] {\n display: flex;\n flex-wrap: nowrap;\n padding: 4px 8px; }\n");var I=function(i){var y=i.options,I=i.defaultValue,v=i.renderAfterDefaultValueChange,A=i.filterable,V=i.loading,x=i.labelInValue,E=i.disabled,w=i.className,C=i.multiple,O=i.freeTyping,T=i.placeholder,_=i.searchIcon,j=i.renderInput,N=i.renderTags,F=i.onChange,S=i.onSearch,D=i.onFocus,B=i.onBlur,M=i.onEnter,P=r(!0),R=n(P,2),k=R[0],L=R[1],z=r(),H=n(z,2),J=H[0],K=H[1],U=r(),q=n(U,2),G=q[0],Q=q[1],W=r(),X=n(W,2),Y=X[0],Z=X[1],$=r(),ee=n($,2),ne=ee[0],oe=ee[1],te=(({options:n,placeholder:o,loading:r,searchIcon:l,labelInValue:u})=>{const i=a((e=>"object"==typeof e?e.value:e),[]),c=a((e=>{const o=(Array.isArray(n)?n:[]).find((n=>i(n)===i(e)));return o?"object"==typeof o?o.label:o:"object"==typeof e?e.label:e}),[n]),p=a((e=>{if(Array.isArray(n)){if(Array.isArray(e))return e.map((e=>n.find((({value:n})=>e===n||e.value===n))||e));const o=n.find((({value:n})=>e===n));return u?e:o||{label:e,value:e}}return e}),[n,u]),s=a(((n,o)=>n.map(((n,a)=>t.createElement(f,e({label:c(n),deleteIcon:t.createElement(b,null)},o({index:a})))))),[n]),h=a((n=>t.createElement(d,e({},n,{variant:"outlined",placeholder:o,InputProps:{...n.InputProps,endAdornment:t.createElement(t.Fragment,null,r&&t.createElement(m,{className:"autocomplete__icon",color:"inherit",size:20}),l&&t.createElement(g,{className:"autocomplete__icon"}),n.InputProps.endAdornment)}}))),[r,l]);return{getValue:i,getValueFromOptions:p,defaultTag:s,defaultRenderInput:h}})(o({},{options:y,placeholder:T,loading:V,searchIcon:_,labelInValue:x})),ae=te.getValue,re=te.getValueFromOptions,le=te.defaultTag,ue=te.defaultRenderInput,ie=l(p((function(e){return S(e)}),500)).current;return u((function(){oe("string"==typeof I&&C?{label:J,value:J}:re(I))}),[JSON.stringify(I)]),u((function(){v&&L(!1)}),[ne]),u((function(){k||L(!0)}),[k]),u((function(){G&&(K(G),ie(G))}),[G]),t.createElement("div",{className:c("autocomplete",{"autocomplete--showSearchIcon":_},w)},k&&t.createElement(s,{className:"autocomplete__component",options:Array.isArray(y)&&(O&&J?[{label:J,value:J}].concat(y):y)||[],defaultValue:ne,disabled:E,multiple:C,filterOptions:function(e,n){var o=n.inputValue,t=void 0===o?"":o;return(Array.isArray(e)?e:[]).filter((function(e){var n=(e||{}).label;return!A||(void 0===n?"":n).toLowerCase().indexOf(t.toLowerCase())>-1}))},onChange:function(e,n){Array.isArray(n)?F(n.map((function(e){return x?e:ae(e)}))):n&&F(x?n:ae(n))},onInputChange:function(e,n,o){n&&"string"==typeof n&&"input"===o&&Q(n)},onKeyDown:function(e){switch(e.key){case"ArrowDown":case"ArrowUp":Z(!0);break;case"Enter":if(!Y){var n=O&&!C;M(e,n?{label:J,value:J}:void 0),n&&oe({label:J,value:J})}break;default:Z(!1)}},getOptionLabel:function(e){return e&&e.label||""},getOptionDisabled:function(e){return e.disabled},renderInput:function(e){return j&&j(e)||ue(e)},renderTags:function(e,n){return N&&N(e,n)||le(e,n)},popupIcon:null,noOptionsText:t.createElement(h,null),onFocus:D,onBlur:B}))};I.defaultProps={className:void 0,defaultValue:void 0,renderAfterDefaultValueChange:!1,options:void 0,freeTyping:!1,loading:!1,disabled:!1,labelInValue:!0,searchIcon:!0,multiple:!1,placeholder:"Search...",filterable:!1,renderInput:void 0,renderTags:void 0,onChange:function(){},onSearch:function(){},onFocus:function(){},onBlur:function(){},onEnter:function(){}},I.propTypes={className:i.string,defaultValue:i.any,renderAfterDefaultValueChange:i.bool,options:i.arrayOf(i.any),freeTyping:i.bool,loading:i.bool,disabled:i.bool,labelInValue:i.bool,searchIcon:i.bool,multiple:i.bool,placeholder:i.string,filterable:i.bool,renderInput:i.func,renderTags:i.func,onChange:i.func,onSearch:i.func,onFocus:i.func,onBlur:i.func,onEnter:i.func};export{I as default};
|
package/lib/components/Header.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import e,{useState as a,useRef as n,useEffect as r}from"react";import t from"prop-types";import{c as o}from"./index-11391ca3.js";import{d as i,K as l}from"./KeywordSearch-
|
|
1
|
+
import e,{useState as a,useRef as n,useEffect as r}from"react";import t from"prop-types";import{c as o}from"./index-11391ca3.js";import{d as i,K as l}from"./KeywordSearch-71d79d41.js";import{useHistory as s,useRouteMatch as d,NavLink as p}from"react-router-dom";import{List as c,ListItem as m,ListItemIcon as h,ListItemText as g,IconButton as _,Drawer as u,Divider as f,Typography as y}from"@material-ui/core";import{DehazeRounded as w,SearchOutlined as x}from"@material-ui/icons";import{S as k}from"./Select-c8f23c48.js";import{s as v}from"./style-inject.es-c875d022.js";import"axios";import"./isObjectLike-2f1983fe.js";import"@material-ui/lab";import"./_rollupPluginBabelHelpers-1b8c042f.js";import"./Empty-8a67e9c0.js";const E=({language:e,supportLanguages:a})=>a.some((({value:a})=>a===e))?e:a[0].value,b=({drawerList:a,setOpen:n})=>{const r=s(),{url:t}=d();return e.createElement(c,{className:"drawer__list"},Array.isArray(a)&&a.map((({name:a,icon:o,path:i},l)=>e.createElement(m,{button:!0,key:l.toString(),onClick:()=>{i.indexOf("http")>-1?window.location=i:r.push({pathname:`${t}${i}`}),n(!1)}},o&&e.createElement(h,{style:{marginRight:24}},o),e.createElement(g,{primary:a})))))};b.defaultProps={},b.propTypes={drawerList:t.arrayOf(t.any).isRequired,setOpen:t.func.isRequired};v(".drawer__icon {\n display: none !important; }\n\n.drawer__header {\n display: flex;\n align-items: center;\n padding: 20px; }\n .drawer__header-title {\n font-size: 18px;\n font-weight: bold; }\n\n.drawer__list {\n padding: 10px !important; }\n .drawer__list .MuiSvgIcon-root {\n margin-left: 8px; }\n\n.drawer__lang {\n margin: 24px 36px !important; }\n\n@media screen and (max-width: 768px) {\n .drawer {\n display: flex;\n justify-content: flex-end; }\n .drawer__icon {\n display: flex !important; } }\n");const S=({title:n,logo:r,locale:t,supportLanguages:o,drawerList:i,onLanguageChange:l})=>{const[s,d]=a(!1);return e.createElement("div",{className:"drawer"},e.createElement(_,{className:"drawer__icon",onClick:()=>d(!0)},e.createElement(w,{fontSize:"large"})),e.createElement(u,{anchor:"right",open:s,onClose:()=>d(!1),onKeyDown:()=>d(!1)},(r||n)&&e.createElement("div",{className:"drawer__header"},e.createElement("div",{className:"drawer__header-logo"},r),e.createElement("div",{className:"drawer__header-title"},n)),e.createElement(f,null),e.createElement(b,{drawerList:(Array.isArray(i)?i:[]).filter((({showInHeader:e})=>e)),setOpen:d}),e.createElement(f,null),Array.isArray(o)&&o.length>0&&e.createElement(k,{className:"drawer__lang",defaultValue:E({language:t,supportLanguages:o}),onChange:e=>l(e),options:o})))};S.defaultProps={title:void 0,logo:void 0,locale:void 0,supportLanguages:[{value:"en",label:"English"},{value:"zh-tw",label:"繁體中文"},{value:"zh-cn",label:"簡體中文"}],drawerList:void 0,onLanguageChange:()=>{}},S.propTypes={title:t.string,logo:t.node,locale:t.string,supportLanguages:t.arrayOf(t.any),drawerList:t.arrayOf(t.any),onLanguageChange:t.func};v(".header {\n display: flex;\n align-items: center;\n background: rgba(255, 255, 255, 0.6);\n background-color: rgba(255, 255, 255, 0.6);\n padding: 12px 36px !important;\n position: fixed;\n top: 0;\n z-index: 10;\n width: 100% !important;\n transition: top 0.3s ease-in-out;\n box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.1);\n -webkit-backdrop-filter: blur(4px);\n backdrop-filter: blur(4px); }\n .header__logo {\n display: flex;\n width: -moz-fit-content !important;\n width: fit-content !important;\n margin-right: 30px !important;\n cursor: pointer; }\n .header__logo__img {\n display: flex;\n align-items: center; }\n .header__logo__title {\n white-space: nowrap;\n margin-left: 1rem !important;\n font-size: 1.5rem !important;\n font-weight: 700 !important;\n font-family: 'Noto Sans TC' !important; }\n .header__links {\n display: flex;\n justify-content: flex-end;\n padding-right: 14px; }\n .header__links a {\n text-decoration: none; }\n .header__links--full {\n flex: 1; }\n .header__links__item {\n color: rgba(0, 0, 0, 0.85);\n font-size: 1.125rem !important;\n font-weight: 500 !important;\n white-space: nowrap;\n padding: 6px 14px;\n font-family: 'Noto Sans TC' !important; }\n .header__links__item--active .header__links__item {\n font-weight: 800 !important;\n background: transparent;\n border-radius: 45px; }\n .header__links__item:hover {\n font-weight: 800 !important; }\n .header__language {\n min-width: 100px !important; }\n .header__searchIcon {\n display: none !important; }\n @media screen and (max-width: 768px) {\n .header--smallUseSearchIcon .header__searchIcon {\n display: flex !important;\n margin-right: 10px !important; }\n .header--smallUseSearchIcon .keywordSearch {\n visibility: hidden;\n flex: 1;\n width: 0; } }\n .header--hide {\n top: -100px; }\n .header--focus .header__links {\n display: none; }\n .header .MuiTypography-root {\n width: 100%;\n display: flex;\n align-items: center; }\n .header .autocomplete {\n float: right; }\n .header .autocomplete .MuiAutocomplete-inputRoot[class*='MuiOutlinedInput-root'] {\n padding: 1px 8px !important; }\n .header .keywordSearch {\n margin-right: 8px; }\n .header .keywordSearch--focus .autocomplete {\n width: 100% !important; }\n .header .keywordSearch--animation .autocomplete {\n width: 240px;\n transition: width 0.3s ease-in-out; }\n\n@media screen and (max-width: 768px) {\n .header {\n padding: 12px 15px !important; }\n .header__logo {\n margin-right: 16px !important; }\n .header__logo__title {\n display: none !important; }\n .header__links {\n display: none; }\n .header__links__item {\n font-size: 1rem !important; }\n .header__language {\n display: none !important; }\n .header--focus .header__logo {\n display: none !important; }\n .autocomplete__icon {\n display: none !important; } }\n");const L=t=>{const{title:c,logo:m,locale:h,supportLanguages:g,pages:u,darkMode:f,typographyColor:w,className:v}=t,{searchAPI:b,searchPlaceholder:L,smallUseSearchIcon:C}=t,{onSearch:N,setDarkMode:I,onLanguageChange:A,onSearchIconClick:O}=t,P=s(),{location:{search:z}}=P,{url:M}=d(),[j,T]=a(!1),[U,D]=a(!1),R=n(i((()=>T(window.scrollY>100)),10)).current;return r((()=>(window.addEventListener("scroll",R),()=>{window.removeEventListener("scroll",R)})),[]),r((()=>{D(!1)}),[z]),e.createElement("div",{className:o("MuiPaper-root","header",{"header--smallUseSearchIcon":C},{"header--hide":j},{"header--focus":U},v)},e.createElement("div",{className:"header__logo",onClick:()=>P.push(`/${h}`)},m&&e.createElement("div",{className:"header__logo__img"},m),!U&&c&&e.createElement(y,{color:w,className:"header__logo__title"},c)),b&&e.createElement(l,{animation:!0,searchAPI:b,placeholder:L,menuOpen:U,setMenuOpen:D,onSearch:N}),e.createElement("div",{className:o("header__links",{"header__links--full":!b})},(Array.isArray(u)?u:[]).filter((({showInHeader:e})=>e)).map((({path:a="",name:n},r)=>{const t=e.createElement(y,{className:"header__links__item",color:w},n);return a.indexOf("http")>-1?e.createElement("a",{key:r.toString(),href:a,className:"header__links__item--active"},t):e.createElement(p,{key:r.toString(),to:`${M}${a}`,activeClassName:"header__links__item--active"},t)}))),e.createElement(_,{className:"header__searchIcon",onClick:O},e.createElement(x,{fontSize:"large"})),false,Array.isArray(g)&&g.length>0&&e.createElement(k,{className:"header__language",defaultValue:E({language:h,supportLanguages:g}),onChange:e=>A(e),options:g}),e.createElement(S,{title:c,logo:m,drawerList:u,supportLanguages:g}))};L.defaultProps={className:void 0,title:void 0,logo:void 0,locale:void 0,supportLanguages:[{value:"en",label:"English"},{value:"zh-tw",label:"繁體中文"},{value:"zh-cn",label:"簡體中文"}],darkMode:!1,typographyColor:"primary",searchAPI:void 0,searchPlaceholder:void 0,smallUseSearchIcon:void 0,onSearch:()=>{},setDarkMode:()=>{},onLanguageChange:()=>{},onSearchIconClick:()=>{}},L.propTypes={className:t.string,title:t.string,logo:t.node,locale:t.string,supportLanguages:t.arrayOf(t.any),pages:t.arrayOf(t.any).isRequired,darkMode:t.bool,typographyColor:t.oneOf(["initial","inherit","primary","secondary","textPrimary","textSecondary","error"]),searchAPI:t.string,searchPlaceholder:t.string,smallUseSearchIcon:t.bool,onSearch:t.func,setDarkMode:t.func,onLanguageChange:t.func,onSearchIconClick:t.func};export{L as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import e,{useCallback as n,useState as a,useRef as t,useEffect as o}from"react";import r from"prop-types";import{c as l}from"./index-11391ca3.js";import i from"axios";import{_ as u,i as c,a as s,b as p}from"./isObjectLike-2f1983fe.js";import{Autocomplete as d}from"@material-ui/lab";import{_ as f}from"./_rollupPluginBabelHelpers-1b8c042f.js";import{Chip as m,TextField as h,CircularProgress as g}from"@material-ui/core";import{Close as b,SearchOutlined as y}from"@material-ui/icons";import{E as v}from"./Empty-8a67e9c0.js";import{s as I}from"./style-inject.es-c875d022.js";var A=function(){return u.Date.now()},w=/\s/;var x=function(e){for(var n=e.length;n--&&w.test(e.charAt(n)););return n},S=/^\s+/;var O=function(e){return e?e.slice(0,x(e)+1).replace(S,""):e};var E=function(e){return"symbol"==typeof e||c(e)&&"[object Symbol]"==s(e)},T=/^[-+]0x[0-9a-f]+$/i,N=/^0b[01]+$/i,V=/^0o[0-7]+$/i,k=parseInt;var C=function(e){if("number"==typeof e)return e;if(E(e))return NaN;if(p(e)){var n="function"==typeof e.valueOf?e.valueOf():e;e=p(n)?n+"":n}if("string"!=typeof e)return 0===e?e:+e;e=O(e);var a=N.test(e);return a||V.test(e)?k(e.slice(2),a?2:8):T.test(e)?NaN:+e},M=Math.max,j=Math.min;var _=function(e,n,a){var t,o,r,l,i,u,c=0,s=!1,d=!1,f=!0;if("function"!=typeof e)throw new TypeError("Expected a function");function m(n){var a=t,r=o;return t=o=void 0,c=n,l=e.apply(r,a)}function h(e){return c=e,i=setTimeout(b,n),s?m(e):l}function g(e){var a=e-u;return void 0===u||a>=n||a<0||d&&e-c>=r}function b(){var e=A();if(g(e))return y(e);i=setTimeout(b,function(e){var a=n-(e-u);return d?j(a,r-(e-c)):a}(e))}function y(e){return i=void 0,f&&t?m(e):(t=o=void 0,l)}function v(){var e=A(),a=g(e);if(t=arguments,o=this,u=e,a){if(void 0===i)return h(u);if(d)return clearTimeout(i),i=setTimeout(b,n),m(u)}return void 0===i&&(i=setTimeout(b,n)),l}return n=C(n)||0,p(a)&&(s=!!a.leading,r=(d="maxWait"in a)?M(C(a.maxWait)||0,n):r,f="trailing"in a?!!a.trailing:f),v.cancel=function(){void 0!==i&&clearTimeout(i),c=0,t=u=o=i=void 0},v.flush=function(){return void 0===i?l:y(A())},v};I(".autocomplete .MuiAutocomplete-inputRoot[class*='MuiOutlinedInput-root'] {\n padding: 0px 8px; }\n\n.autocomplete .MuiChip-deleteIcon {\n width: 16px;\n height: 16px; }\n\n.autocomplete__icon {\n font-size: 1.25rem;\n margin-right: 8px; }\n\n.autocomplete--showSearchIcon .MuiAutocomplete-inputRoot[class*='MuiOutlinedInput-root'] {\n display: flex;\n flex-wrap: nowrap;\n padding: 4px 8px; }\n");const P=r=>{const{options:i,defaultValue:u,renderAfterDefaultValueChange:c,filterable:s,loading:p,labelInValue:I,disabled:A}=r,{className:w,multiple:x,freeTyping:S,placeholder:O,searchIcon:E,renderInput:T,renderTags:N}=r,{onChange:V,onSearch:k,onFocus:C,onBlur:M,onEnter:j}=r,[P,D]=a(!0),[F,B]=a(),[R,L]=a(),[$,z]=a(),[K,W]=a(),{getValue:H,getValueFromOptions:J,defaultTag:U,defaultRenderInput:q}=(({options:a,placeholder:t,loading:o,searchIcon:r,labelInValue:l})=>{const i=n((e=>"object"==typeof e?e.value:e),[]),u=n((e=>{const n=(Array.isArray(a)?a:[]).find((n=>i(n)===i(e)));return n?"object"==typeof n?n.label:n:"object"==typeof e?e.label:e}),[a]),c=n((e=>{if(Array.isArray(a)){if(Array.isArray(e))return e.map((e=>a.find((({value:n})=>e===n||e.value===n))||e));const n=a.find((({value:n})=>e===n));return l?e:n||{label:e,value:e}}return e}),[a,l]),s=n(((n,a)=>n.map(((n,t)=>e.createElement(m,f({label:u(n),deleteIcon:e.createElement(b,null)},a({index:t})))))),[a]),p=n((n=>e.createElement(h,f({},n,{variant:"outlined",placeholder:t,InputProps:{...n.InputProps,endAdornment:e.createElement(e.Fragment,null,o&&e.createElement(g,{className:"autocomplete__icon",color:"inherit",size:20}),r&&e.createElement(y,{className:"autocomplete__icon"}),n.InputProps.endAdornment)}}))),[o,r]);return{getValue:i,getValueFromOptions:c,defaultTag:s,defaultRenderInput:p}})({options:i,placeholder:O,loading:p,searchIcon:E,labelInValue:I}),G=t(_((e=>k(e)),500)).current;return o((()=>{W("string"==typeof u&&x?{label:F,value:F}:J(u))}),[JSON.stringify(u)]),o((()=>{c&&D(!1)}),[K]),o((()=>{P||D(!0)}),[P]),o((()=>{R&&(B(R),G(R))}),[R]),e.createElement("div",{className:l("autocomplete",{"autocomplete--showSearchIcon":E},w)},P&&e.createElement(d,{className:"autocomplete__component",options:Array.isArray(i)&&(S&&F?[{label:F,value:F}].concat(i):i)||[],defaultValue:K,disabled:A,multiple:x,filterOptions:(e,n)=>{const{inputValue:a=""}=n;return(Array.isArray(e)?e:[]).filter((e=>{const{label:n=""}=e||{};return!s||n.toLowerCase().indexOf(a.toLowerCase())>-1}))},onChange:(e,n)=>{Array.isArray(n)?V(n.map((e=>I?e:H(e)))):n&&V(I?n:H(n))},onInputChange:(e,n,a)=>{n&&"string"==typeof n&&"input"===a&&L(n)},onKeyDown:e=>{switch(e.key){case"ArrowDown":case"ArrowUp":z(!0);break;case"Enter":if(!$){const n=S&&!x;j(e,n?{label:F,value:F}:void 0),n&&W({label:F,value:F})}break;default:z(!1)}},getOptionLabel:e=>e&&e.label||"",getOptionDisabled:e=>e.disabled,renderInput:e=>T&&T(e)||q(e),renderTags:(e,n)=>N&&N(e,n)||U(e,n),popupIcon:null,noOptionsText:e.createElement(v,null),onFocus:C,onBlur:M}))};P.defaultProps={className:void 0,defaultValue:void 0,renderAfterDefaultValueChange:!1,options:void 0,freeTyping:!1,loading:!1,disabled:!1,labelInValue:!0,searchIcon:!0,multiple:!1,placeholder:"Search...",filterable:!1,renderInput:void 0,renderTags:void 0,onChange:()=>{},onSearch:()=>{},onFocus:()=>{},onBlur:()=>{},onEnter:()=>{}},P.propTypes={className:r.string,defaultValue:r.any,renderAfterDefaultValueChange:r.bool,options:r.arrayOf(r.any),freeTyping:r.bool,loading:r.bool,disabled:r.bool,labelInValue:r.bool,searchIcon:r.bool,multiple:r.bool,placeholder:r.string,filterable:r.bool,renderInput:r.func,renderTags:r.func,onChange:r.func,onSearch:r.func,onFocus:r.func,onBlur:r.func,onEnter:r.func};const D=(e,n="value")=>Array.isArray(e)?e.filter(((e,a,t)=>t.findIndex((a=>a[n]===e[n]))===a)):[];I(".keywordSearch {\n border-radius: 4px;\n width: 100%;\n margin-right: 14px; }\n .keywordSearch--animation .autocomplete {\n transition: max-width 0.3s ease-out;\n max-width: 240px; }\n .keywordSearch--focus {\n flex: 1; }\n .keywordSearch--focus .autocomplete {\n max-width: 100%; }\n .keywordSearch .MuiAutocomplete-hasPopupIcon.MuiAutocomplete-hasClearIcon .MuiAutocomplete-inputRoot[class*='MuiOutlinedInput-root'] {\n border-radius: 10px;\n background-color: #ffffff66; }\n");const F=({className:n,animation:t,filterSameName:r,keyword:u,searchAPI:c,placeholder:s,setMenuOpen:p,menuOpen:d,onSearch:f})=>{const[m,h]=a(!1),[g,b]=a([]),[y,v]=a(u);return o((()=>{var e;(e=y)&&0!==e.length&&(h(!0),i.get(c,{params:{keyword:e}}).then((e=>{e.data&&e.data.data&&b(D(e.data.data,"id"))})).finally((()=>h(!1))))}),[y]),e.createElement("div",{className:l("keywordSearch",{"keywordSearch--animation":t},{"keywordSearch--focus":d},n)},e.createElement(P,{freeTyping:!0,renderAfterDefaultValueChange:!0,defaultValue:{label:u,value:u},loading:m,options:(r?D(g,"name"):g).map((({name:e,id:n,value:a,label:t})=>({value:n||a||e,label:e||t}))),placeholder:s,onSearch:v,onChange:e=>{e&&f(g.find((({id:n,value:a})=>n===e.value||a===e.value))||e)},onEnter:(e,n)=>f(n),onFocus:()=>p(!0),onBlur:()=>p(!1)}))};F.defaultProps={className:void 0,animation:!1,filterSameName:!0,keyword:void 0,searchAPI:void 0,placeholder:void 0,menuOpen:!1,setMenuOpen:()=>{},onSearch:()=>{}},F.propTypes={className:r.string,animation:r.bool,filterSameName:r.bool,keyword:r.string,searchAPI:r.string,placeholder:r.string,menuOpen:r.bool,setMenuOpen:r.func,onSearch:r.func};export{F as K,_ as d};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"react";import"prop-types";import"./index-11391ca3.js";import"axios";export{K as default}from"./KeywordSearch-
|
|
1
|
+
import"react";import"prop-types";import"./index-11391ca3.js";import"axios";export{K as default}from"./KeywordSearch-71d79d41.js";import"./style-inject.es-c875d022.js";import"./isObjectLike-2f1983fe.js";import"@material-ui/lab";import"./_rollupPluginBabelHelpers-1b8c042f.js";import"@material-ui/core";import"@material-ui/icons";import"./Empty-8a67e9c0.js";
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import e,{useCallback as n,useState as a,useRef as o,useMemo as t,useEffect as r}from"react";import l from"prop-types";import{c as i}from"./index-11391ca3.js";import u from"axios";import{_ as c,i as s,a as p,b as d}from"./isObjectLike-2f1983fe.js";import{Autocomplete as f}from"@material-ui/lab";import{_ as m}from"./_rollupPluginBabelHelpers-1b8c042f.js";import{Chip as h,TextField as g,CircularProgress as y}from"@material-ui/core";import{Close as b,SearchOutlined as v}from"@material-ui/icons";import{E as I}from"./Empty-8a67e9c0.js";import{s as A}from"./style-inject.es-c875d022.js";var w=function(){return c.Date.now()},x=/\s/;var S=function(e){for(var n=e.length;n--&&x.test(e.charAt(n)););return n},O=/^\s+/;var E=function(e){return e?e.slice(0,S(e)+1).replace(O,""):e};var T=function(e){return"symbol"==typeof e||s(e)&&"[object Symbol]"==p(e)},N=/^[-+]0x[0-9a-f]+$/i,V=/^0b[01]+$/i,k=/^0o[0-7]+$/i,C=parseInt;var M=function(e){if("number"==typeof e)return e;if(T(e))return NaN;if(d(e)){var n="function"==typeof e.valueOf?e.valueOf():e;e=d(n)?n+"":n}if("string"!=typeof e)return 0===e?e:+e;e=E(e);var a=V.test(e);return a||k.test(e)?C(e.slice(2),a?2:8):N.test(e)?NaN:+e},j=Math.max,_=Math.min;var P=function(e,n,a){var o,t,r,l,i,u,c=0,s=!1,p=!1,f=!0;if("function"!=typeof e)throw new TypeError("Expected a function");function m(n){var a=o,r=t;return o=t=void 0,c=n,l=e.apply(r,a)}function h(e){return c=e,i=setTimeout(y,n),s?m(e):l}function g(e){var a=e-u;return void 0===u||a>=n||a<0||p&&e-c>=r}function y(){var e=w();if(g(e))return b(e);i=setTimeout(y,function(e){var a=n-(e-u);return p?_(a,r-(e-c)):a}(e))}function b(e){return i=void 0,f&&o?m(e):(o=t=void 0,l)}function v(){var e=w(),a=g(e);if(o=arguments,t=this,u=e,a){if(void 0===i)return h(u);if(p)return clearTimeout(i),i=setTimeout(y,n),m(u)}return void 0===i&&(i=setTimeout(y,n)),l}return n=M(n)||0,d(a)&&(s=!!a.leading,r=(p="maxWait"in a)?j(M(a.maxWait)||0,n):r,f="trailing"in a?!!a.trailing:f),v.cancel=function(){void 0!==i&&clearTimeout(i),c=0,o=u=t=i=void 0},v.flush=function(){return void 0===i?l:b(w())},v};A(".autocomplete .MuiAutocomplete-inputRoot[class*='MuiOutlinedInput-root'] {\n padding: 0px 8px; }\n\n.autocomplete .MuiChip-deleteIcon {\n width: 16px;\n height: 16px; }\n\n.autocomplete__icon {\n font-size: 1.25rem;\n margin-right: 8px; }\n\n.autocomplete--showSearchIcon .MuiAutocomplete-inputRoot[class*='MuiOutlinedInput-root'] {\n display: flex;\n flex-wrap: nowrap;\n padding: 4px 8px; }\n");const F=l=>{const{options:u,defaultValue:c,renderAfterDefaultValueChange:s,filterable:p,loading:d,labelInValue:A,disabled:w}=l,{className:x,multiple:S,freeTyping:O,placeholder:E,searchIcon:T,renderInput:N,renderTags:V}=l,{onChange:k,onSearch:C,onFocus:M,onBlur:j,onEnter:_}=l,[F,D]=a(!0),[B,R]=a(),[L,$]=a(),[z,K]=a(),{getValue:W,getValueFromOptions:H,defaultTag:J,defaultRenderInput:U}=(({options:a,placeholder:o,loading:t,searchIcon:r,labelInValue:l})=>{const i=n((e=>"object"==typeof e?e.value:e),[]),u=n((e=>{const n=(Array.isArray(a)?a:[]).find((n=>i(n)===i(e)));return n?"object"==typeof n?n.label:n:"object"==typeof e?e.label:e}),[a]),c=n((e=>{if(Array.isArray(a)){if(Array.isArray(e))return e.map((e=>a.find((({value:n})=>e===n||e.value===n))||e));const n=a.find((({value:n})=>e===n));return l?e:n||{label:e,value:e}}return e}),[a,l]),s=n(((n,a)=>n.map(((n,o)=>e.createElement(h,m({label:u(n),deleteIcon:e.createElement(b,null)},a({index:o})))))),[a]),p=n((n=>e.createElement(g,m({},n,{variant:"outlined",placeholder:o,InputProps:{...n.InputProps,endAdornment:e.createElement(e.Fragment,null,t&&e.createElement(y,{className:"autocomplete__icon",color:"inherit",size:20}),r&&e.createElement(v,{className:"autocomplete__icon"}),n.InputProps.endAdornment)}}))),[t,r]);return{getValue:i,getValueFromOptions:c,defaultTag:s,defaultRenderInput:p}})({options:u,placeholder:E,loading:d,searchIcon:T,labelInValue:A}),q=o(P((e=>C(e)),500)).current,G=t((()=>"string"==typeof c&&S?{label:B,value:B}:H(c)),[JSON.stringify(c)]);return r((()=>{s&&D(!1)}),[G]),r((()=>{F||D(!0)}),[F]),r((()=>{L&&(R(L),q(L))}),[L]),e.createElement("div",{className:i("autocomplete",{"autocomplete--showSearchIcon":T},x)},F&&e.createElement(f,{className:"autocomplete__component",options:Array.isArray(u)&&(O&&B?[{label:B,value:B}].concat(u):u)||[],openOnFocus:console.info,defaultValue:G,disabled:w,multiple:S,filterOptions:(e,n)=>{const{inputValue:a=""}=n;return(Array.isArray(e)?e:[]).filter((e=>{const{label:n=""}=e||{};return!p||n.toLowerCase().indexOf(a.toLowerCase())>-1}))},onChange:(e,n)=>{Array.isArray(n)?k(n.map((e=>A?e:W(e)))):n&&k(A?n:W(n))},onInputChange:(e,n,a)=>{n&&"string"==typeof n&&"input"===a&&$(n)},onKeyDown:e=>{switch(e.key){case"ArrowDown":case"ArrowUp":K(!0);break;case"Enter":z||_(e,O?{label:B,value:B}:void 0);break;default:K(!1)}},getOptionLabel:e=>e&&e.label||"",getOptionDisabled:e=>e.disabled,renderInput:e=>N&&N(e)||U(e),renderTags:(e,n)=>V&&V(e,n)||J(e,n),popupIcon:null,noOptionsText:e.createElement(I,null),onFocus:M,onBlur:j}))};F.defaultProps={className:void 0,defaultValue:void 0,renderAfterDefaultValueChange:!1,options:void 0,freeTyping:!1,loading:!1,disabled:!1,labelInValue:!0,searchIcon:!0,multiple:!1,placeholder:"Search...",filterable:!1,renderInput:void 0,renderTags:void 0,onChange:()=>{},onSearch:()=>{},onFocus:()=>{},onBlur:()=>{},onEnter:()=>{}},F.propTypes={className:l.string,defaultValue:l.any,renderAfterDefaultValueChange:l.bool,options:l.arrayOf(l.any),freeTyping:l.bool,loading:l.bool,disabled:l.bool,labelInValue:l.bool,searchIcon:l.bool,multiple:l.bool,placeholder:l.string,filterable:l.bool,renderInput:l.func,renderTags:l.func,onChange:l.func,onSearch:l.func,onFocus:l.func,onBlur:l.func,onEnter:l.func};const D=(e,n="value")=>Array.isArray(e)?e.filter(((e,a,o)=>o.findIndex((a=>a[n]===e[n]))===a)):[];A(".keywordSearch {\n border-radius: 4px;\n width: 100%;\n margin-right: 14px; }\n .keywordSearch--animation .autocomplete {\n transition: max-width 0.3s ease-out;\n max-width: 240px; }\n .keywordSearch--focus {\n flex: 1; }\n .keywordSearch--focus .autocomplete {\n max-width: 100%; }\n .keywordSearch .MuiAutocomplete-hasPopupIcon.MuiAutocomplete-hasClearIcon .MuiAutocomplete-inputRoot[class*='MuiOutlinedInput-root'] {\n border-radius: 10px;\n background-color: #ffffff66; }\n");const B=({className:n,animation:o,filterSameName:t,keyword:l,searchAPI:c,placeholder:s,setMenuOpen:p,menuOpen:d,onSearch:f})=>{const[m,h]=a(!1),[g,y]=a([]),[b,v]=a(l);return r((()=>{var e;(e=b)&&0!==e.length&&(h(!0),u.get(c,{params:{keyword:e}}).then((e=>{e.data&&e.data.data&&y(D(e.data.data,"id"))})).finally((()=>h(!1))))}),[b]),e.createElement("div",{className:i("keywordSearch",{"keywordSearch--animation":o},{"keywordSearch--focus":d},n)},e.createElement(F,{freeTyping:!0,renderAfterDefaultValueChange:!0,defaultValue:{label:l,value:l},loading:m,options:(t?D(g,"name"):g).map((({name:e,id:n,value:a,label:o})=>({value:n||a||e,label:e||o}))),placeholder:s,onSearch:v,onChange:e=>{e&&f(g.find((({id:n,value:a})=>n===e.value||a===e.value))||e)},onEnter:(e,n)=>f(n),onFocus:()=>p(!0),onBlur:()=>p(!1)}))};B.defaultProps={className:void 0,animation:!1,filterSameName:!0,keyword:void 0,searchAPI:void 0,placeholder:void 0,menuOpen:!1,setMenuOpen:()=>{},onSearch:()=>{}},B.propTypes={className:l.string,animation:l.bool,filterSameName:l.bool,keyword:l.string,searchAPI:l.string,placeholder:l.string,menuOpen:l.bool,setMenuOpen:l.func,onSearch:l.func};export{B as K,P as d};
|