@acusti/uikit-docs 0.4.4 → 0.4.6

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 (84) hide show
  1. package/.storybook/main.ts +19 -4
  2. package/CHANGELOG.md +60 -0
  3. package/dist/assets/CSSValueInput-B69U5DrZ.js +5 -0
  4. package/dist/assets/{CSSValueInput-BgAgo3f9.css → CSSValueInput-DKgB9IQs.css} +1 -1
  5. package/dist/assets/CSSValueInput.stories-vCftVQHX.js +113 -0
  6. package/dist/assets/Color-6BZIO3FS-BHsDhiaJ.js +1 -0
  7. package/dist/assets/DatePicker.stories-X2JO2cn6.js +585 -0
  8. package/dist/assets/DocsRenderer-LL677BLK-i2bqAbNY.js +2 -0
  9. package/dist/assets/Dropdown-QkqMQiyU.css +1 -0
  10. package/dist/assets/Dropdown-_IIsqrAA.js +101 -0
  11. package/dist/assets/Dropdown.stories-msGED41R.js +364 -0
  12. package/dist/assets/InputText-_BMv0r1n.css +1 -0
  13. package/dist/assets/InputText.stories-CG1EnzrQ.js +148 -0
  14. package/dist/assets/Introduction-orXeKug7.js +184 -0
  15. package/dist/assets/MonthCalendar.stories-CJT-JiqF.js +177 -0
  16. package/dist/assets/WithTooltip-65CFNBJE-DlgYg9W2.js +9 -0
  17. package/dist/assets/blocks-C4xgyV4X.js +46 -0
  18. package/dist/assets/chunk-242VQQM5-DEt_wvrI.js +1 -0
  19. package/dist/assets/chunk-YKABRMAI-BpCcWWoG.js +18 -0
  20. package/dist/assets/client-Bvdml6v2.js +9 -0
  21. package/dist/assets/clsx-Bdud1Ih_.js +1 -0
  22. package/dist/assets/compiler-runtime-BOsKKfMw.js +1 -0
  23. package/dist/assets/components-CuDS54ZU.js +92 -0
  24. package/dist/assets/dist-6e4YoSiG.js +1 -0
  25. package/dist/assets/dist-BreUZhw6.js +1 -0
  26. package/dist/assets/formatter-EIJCOSYU-4RP_9NAI.js +1 -0
  27. package/dist/assets/iframe-BsC6HWDY.js +1221 -0
  28. package/dist/assets/jsx-runtime-CZwoFFIL.js +1 -0
  29. package/dist/assets/lib-WXkUx4TK.js +1 -0
  30. package/dist/assets/preload-helper-Bhb7V-Yo.js +1 -0
  31. package/dist/assets/react-18-6aLPZbD-.js +1 -0
  32. package/dist/assets/react-DcwytXSz.js +1 -0
  33. package/dist/assets/react-dom-CFVoDXTy.js +1 -0
  34. package/dist/assets/syntaxhighlighter-ED5Y7EFY-BQSv6pbL.js +6 -0
  35. package/dist/assets/theming-DLDZLcJn.js +39 -0
  36. package/dist/assets/useIsOutOfBounds.stories-CI4DMSUD.js +105 -0
  37. package/dist/assets/{useKeyboardEvents-BH4Zd7d3.css → useKeyboardEvents-CKMYGqVT.css} +1 -1
  38. package/dist/assets/useKeyboardEvents.stories-CNX299tr.js +3 -0
  39. package/dist/favicon-wrapper.svg +46 -0
  40. package/dist/favicon.svg +1 -1
  41. package/dist/iframe.html +59 -40
  42. package/dist/index.html +8 -16
  43. package/dist/index.json +1 -1
  44. package/dist/project.json +1 -1
  45. package/dist/sb-addons/docs-1/manager-bundle.js +1 -149
  46. package/dist/sb-addons/storybook-2/manager-bundle.js +1 -1
  47. package/dist/sb-addons/storybook-core-server-presets-0/common-manager-bundle.js +548 -108
  48. package/dist/sb-common-assets/favicon-wrapper.svg +46 -0
  49. package/dist/sb-common-assets/favicon.svg +1 -1
  50. package/dist/sb-manager/globals-runtime.js +73064 -67182
  51. package/dist/sb-manager/globals.js +6 -16
  52. package/dist/sb-manager/manager-stores.js +23 -0
  53. package/dist/sb-manager/runtime.js +17712 -10309
  54. package/dist/vite-inject-mocker-entry.js +2 -0
  55. package/package.json +11 -9
  56. package/stories/CSSValueInput.stories.tsx +1 -1
  57. package/stories/DatePicker.stories.tsx +182 -45
  58. package/stories/InputText.stories.tsx +36 -0
  59. package/tsconfig.json +1 -0
  60. package/tsconfig.tsbuildinfo +1 -1
  61. package/dist/assets/CSSValueInput-BoZriUnh.js +0 -1
  62. package/dist/assets/CSSValueInput.stories-D1VcYZJ0.js +0 -113
  63. package/dist/assets/Color-AVL7NMMY-BeW0C7pE.js +0 -1
  64. package/dist/assets/DatePicker.stories-BSWV31FV.js +0 -244
  65. package/dist/assets/DocsRenderer-PQXLIZUC-D92GwNti.js +0 -2
  66. package/dist/assets/Dropdown-D5cyjefk.css +0 -1
  67. package/dist/assets/Dropdown-DUP_ybXe.js +0 -84
  68. package/dist/assets/Dropdown.stories-2Wtw1otE.js +0 -336
  69. package/dist/assets/InputText-Tkbh5amB.css +0 -1
  70. package/dist/assets/InputText.stories-BYt2Aj0_.js +0 -90
  71. package/dist/assets/Introduction-nSE2hjmb.js +0 -183
  72. package/dist/assets/MonthCalendar.stories-IJrL6wIl.js +0 -169
  73. package/dist/assets/blocks-Du178fXa.js +0 -658
  74. package/dist/assets/client-B2qWCcIR.js +0 -25
  75. package/dist/assets/clsx-hXifHU8N.js +0 -9
  76. package/dist/assets/iframe-ByGa_ItU.js +0 -1102
  77. package/dist/assets/index-BRXcJgsA.js +0 -1
  78. package/dist/assets/index-BVajFqaV.js +0 -1
  79. package/dist/assets/index-DwJ-mRZ2.js +0 -9
  80. package/dist/assets/jsx-runtime-D_zvdyIk.js +0 -9
  81. package/dist/assets/react-18-djOrgGe8.js +0 -1
  82. package/dist/assets/useIsOutOfBounds.stories-e48KZd_G.js +0 -105
  83. package/dist/assets/useKeyboardEvents.stories-CJbDuGfk.js +0 -3
  84. package/dist/sb-manager/globals-module-info.js +0 -797
@@ -0,0 +1,2 @@
1
+ import{t as e}from"./assets/preload-helper-Bhb7V-Yo.js";var t=class{registryByUrl=new Map;registryById=new Map;clear(){this.registryByUrl.clear(),this.registryById.clear()}keys(){return this.registryByUrl.keys()}add(e){this.registryByUrl.set(e.url,e),this.registryById.set(e.id,e)}register(e,t,o,s,c){let l=typeof e==`object`?e.type:e;if(typeof e==`object`){let t=e;if(t instanceof n||t instanceof r||t instanceof a||t instanceof i)throw TypeError(`[vitest] Cannot register a mock that is already defined. Expected a JSON representation from \`MockedModule.toJSON\`, instead got "${t.type}". Use "registry.add()" to update a mock instead.`);if(t.type===`automock`){let e=n.fromJSON(t);return this.add(e),e}else if(t.type===`autospy`){let e=r.fromJSON(t);return this.add(e),e}else if(t.type===`redirect`){let e=i.fromJSON(t);return this.add(e),e}else throw t.type===`manual`?Error("Cannot set serialized manual mock. Define a factory function manually with `ManualMockedModule.fromJSON()`."):Error(`Unknown mock type: ${t.type}`)}if(typeof t!=`string`)throw TypeError(`[vitest] Mocks require a raw string.`);if(typeof s!=`string`)throw TypeError(`[vitest] Mocks require a url string.`);if(typeof o!=`string`)throw TypeError(`[vitest] Mocks require an id string.`);if(l===`manual`){if(typeof c!=`function`)throw TypeError(`[vitest] Manual mocks require a factory function.`);let e=new a(t,o,s,c);return this.add(e),e}else if(l===`automock`||l===`autospy`){let e=l===`automock`?new n(t,o,s):new r(t,o,s);return this.add(e),e}else if(l===`redirect`){if(typeof c!=`string`)throw TypeError(`[vitest] Redirect mocks require a redirect string.`);let e=new i(t,o,s,c);return this.add(e),e}else throw Error(`[vitest] Unknown mock type: ${l}`)}delete(e){this.registryByUrl.delete(e)}get(e){return this.registryByUrl.get(e)}getById(e){return this.registryById.get(e)}has(e){return this.registryByUrl.has(e)}},n=class{type=`automock`;constructor(e,t,n){this.raw=e,this.id=t,this.url=n}static fromJSON(e){return new r(e.raw,e.id,e.url)}toJSON(){return{type:this.type,url:this.url,raw:this.raw,id:this.id}}},r=class e{type=`autospy`;constructor(e,t,n){this.raw=e,this.id=t,this.url=n}static fromJSON(t){return new e(t.raw,t.id,t.url)}toJSON(){return{type:this.type,url:this.url,id:this.id,raw:this.raw}}},i=class e{type=`redirect`;constructor(e,t,n,r){this.raw=e,this.id=t,this.url=n,this.redirect=r}static fromJSON(t){return new e(t.raw,t.id,t.url,t.redirect)}toJSON(){return{type:this.type,url:this.url,raw:this.raw,id:this.id,redirect:this.redirect}}},a=class e{cache;type=`manual`;constructor(e,t,n,r){this.raw=e,this.id=t,this.url=n,this.factory=r}async resolve(){if(this.cache)return this.cache;let e;try{e=await this.factory()}catch(e){let t=Error(`[vitest] There was an error when mocking a module. If you are using "vi.mock" factory, make sure there are no top level variables inside, since this call is hoisted to top of the file. Read more: https://vitest.dev/api/vi.html#vi-mock`);throw t.cause=e,t}if(typeof e!=`object`||!e||Array.isArray(e))throw TypeError(`[vitest] vi.mock("${this.raw}", factory?: () => unknown) is not returning an object. Did you mean to return an object with a "default" key?`);return this.cache=e}static fromJSON(t,n){return new e(t.raw,t.id,t.url,n)}toJSON(){return{type:this.type,url:this.url,id:this.id,raw:this.raw}}};function o(e,t,n={}){let r=[],i=new s,a=(e,t,n)=>{try{return e[t]=n,!0}catch{return!1}},o=(t,n)=>{let s=c(t),d=s===`Module`||!!t.__esModule;for(let{key:f,descriptor:p}of u(t,d,e.globalConstructors)){if(!d&&p.get){try{Object.defineProperty(n,f,p)}catch{}continue}if(l(f,s))continue;let m=t[f],h=i.getId(m);if(h!==void 0){r.push(()=>a(n,f,i.getMockedValue(h)));continue}let g=c(m);if(Array.isArray(m)){a(n,f,[]);continue}let _=g.includes(`Function`)&&typeof m==`function`;if((!_||m._isMockFunction)&&g!==`Object`&&g!==`Module`){a(n,f,m);continue}if(a(n,f,_?m:{})){if(_){let t=function(){if(this instanceof n[f])for(let{key:t,descriptor:n}of u(this,!1,e.globalConstructors)){if(n.get)continue;let e=this[t];if(c(e).includes(`Function`)&&typeof e==`function`){let e=this[t],n=r(this,t).mockImplementation(e),i=n.mockReset;n.mockRestore=n.mockReset=()=>(i.call(n),n.mockImplementation(e),n)}}};if(!e.spyOn)throw Error("[@vitest/mocker] `spyOn` is not defined. This is a Vitest error. Please open a new issue with reproduction.");let r=e.spyOn,i=r(n,f);if(e.type===`automock`){i.mockImplementation(t);let e=i.mockReset;i.mockRestore=i.mockReset=()=>(e.call(i),i.mockImplementation(t),i)}Object.defineProperty(n[f],`length`,{value:0})}i.track(m,n[f]),o(m,n[f])}}},d=n;o(t,d);for(let e of r)e();return d}var s=class{idMap=new Map;mockedValueMap=new Map;getId(e){return this.idMap.get(e)}getMockedValue(e){return this.mockedValueMap.get(e)}track(e,t){let n=this.idMap.size;return this.idMap.set(e,n),this.mockedValueMap.set(n,t),n}};function c(e){return Object.prototype.toString.apply(e).slice(8,-1)}function l(e,t){return t.includes(`Function`)&&typeof e==`string`&&[`arguments`,`callee`,`caller`,`length`,`name`].includes(e)}function u(e,t,n){let{Map:r,Object:i,Function:a,RegExp:o,Array:s}=n,c=new r,l=e;do{if(l===i.prototype||l===a.prototype||l===o.prototype)break;d(l,e=>{let t=i.getOwnPropertyDescriptor(l,e);t&&c.set(e,{key:e,descriptor:t})})}while(l=i.getPrototypeOf(l));if(t&&!c.has(`default`)&&`default`in e){let t=i.getOwnPropertyDescriptor(e,`default`);t&&c.set(`default`,{key:`default`,descriptor:t})}return s.from(c.values())}function d(e,t){let n=typeof t==`function`?t:e=>t.add(e);Object.getOwnPropertyNames(e).forEach(n),Object.getOwnPropertySymbols(e).forEach(n)}var f=/^[A-Za-z]:\//;function p(e=``){return e&&e.replace(/\\/g,`/`).replace(f,e=>e.toUpperCase())}var m=/^[/\\]{2}/,h=/^[/\\](?![/\\])|^[/\\]{2}(?!\.)|^[A-Za-z]:[/\\]/,g=/^[A-Za-z]:$/,_=/.(\.[^./]+|\.)$/,v=function(e){if(e.length===0)return`.`;e=p(e);let t=e.match(m),n=x(e),r=e[e.length-1]===`/`;return e=b(e,!n),e.length===0?n?`/`:r?`./`:`.`:(r&&(e+=`/`),g.test(e)&&(e+=`/`),t?n?`//${e}`:`//./${e}`:n&&!x(e)?`/${e}`:e)},y=function(...e){let t=``;for(let n of e)if(n)if(t.length>0){let e=t[t.length-1]===`/`,r=n[0]===`/`;e&&r?t+=n.slice(1):t+=e||r?n:`/${n}`}else t+=n;return v(t)};function b(e,t){let n=``,r=0,i=-1,a=0,o=null;for(let s=0;s<=e.length;++s){if(s<e.length)o=e[s];else{if(o===`/`)break;o=`/`}if(o===`/`){if(!(i===s-1||a===1))if(a===2){if(n.length<2||r!==2||n[n.length-1]!==`.`||n[n.length-2]!==`.`){if(n.length>2){let e=n.lastIndexOf(`/`);e===-1?(n=``,r=0):(n=n.slice(0,e),r=n.length-1-n.lastIndexOf(`/`)),i=s,a=0;continue}else if(n.length>0){n=``,r=0,i=s,a=0;continue}}t&&(n+=n.length>0?`/..`:`..`,r=2)}else n.length>0?n+=`/${e.slice(i+1,s)}`:n=e.slice(i+1,s),r=s-i-1;i=s,a=0}else o===`.`&&a!==-1?++a:a=-1}return n}var x=function(e){return h.test(e)},S=function(e){if(e===`..`)return``;let t=_.exec(p(e));return t&&t[1]||``},C=Object.entries({reset:[0,0],bold:[1,22,`\x1B[22m\x1B[1m`],dim:[2,22,`\x1B[22m\x1B[2m`],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29],black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],gray:[90,39],bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],blackBright:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39],bgBlackBright:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]});function w(e){return String(e)}w.open=``,w.close=``;function T(e=!1){let t=typeof process<`u`?process:void 0,n=t?.env||{},r=t?.argv||[];return!(`NO_COLOR`in n||r.includes(`--no-color`))&&(`FORCE_COLOR`in n||r.includes(`--color`)||t?.platform===`win32`||e&&n.TERM!==`dumb`||`CI`in n)||typeof window<`u`&&!!window.chrome}function E(e=!1){let t=T(e),n=(e,t,n,r)=>{let i=``,a=0;do i+=e.substring(a,r)+n,a=r+t.length,r=e.indexOf(t,a);while(~r);return i+e.substring(a)},r=(e,t,r=e)=>{let i=i=>{let a=String(i),o=a.indexOf(t,e.length);return~o?e+n(a,t,r,o)+t:e+a+t};return i.open=e,i.close=t,i},i={isColorSupported:t},a=e=>`\x1B[${e}m`;for(let[e,n]of C)i[e]=t?r(a(n[0]),a(n[1]),n[2]):w;return i}E();function D(e,t){return t.forEach(function(t){t&&typeof t!=`string`&&!Array.isArray(t)&&Object.keys(t).forEach(function(n){if(n!==`default`&&!(n in e)){var r=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(e,n,r.get?r:{enumerable:!0,get:function(){return t[n]}})}})}),Object.freeze(e)}function O(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,`default`)?e.default:e}var k={exports:{}},A={},j;function M(){if(j)return A;j=1;var e=Symbol.for(`react.transitional.element`),t=Symbol.for(`react.portal`),n=Symbol.for(`react.fragment`),r=Symbol.for(`react.strict_mode`),i=Symbol.for(`react.profiler`),a=Symbol.for(`react.consumer`),o=Symbol.for(`react.context`),s=Symbol.for(`react.forward_ref`),c=Symbol.for(`react.suspense`),l=Symbol.for(`react.suspense_list`),u=Symbol.for(`react.memo`),d=Symbol.for(`react.lazy`),f=Symbol.for(`react.view_transition`),p=Symbol.for(`react.client.reference`);function m(p){if(typeof p==`object`&&p){var m=p.$$typeof;switch(m){case e:switch(p=p.type,p){case n:case i:case r:case c:case l:case f:return p;default:switch(p&&=p.$$typeof,p){case o:case s:case d:case u:return p;case a:return p;default:return m}}case t:return m}}}return A.ContextConsumer=a,A.ContextProvider=o,A.Element=e,A.ForwardRef=s,A.Fragment=n,A.Lazy=d,A.Memo=u,A.Portal=t,A.Profiler=i,A.StrictMode=r,A.Suspense=c,A.SuspenseList=l,A.isContextConsumer=function(e){return m(e)===a},A.isContextProvider=function(e){return m(e)===o},A.isElement=function(t){return typeof t==`object`&&!!t&&t.$$typeof===e},A.isForwardRef=function(e){return m(e)===s},A.isFragment=function(e){return m(e)===n},A.isLazy=function(e){return m(e)===d},A.isMemo=function(e){return m(e)===u},A.isPortal=function(e){return m(e)===t},A.isProfiler=function(e){return m(e)===i},A.isStrictMode=function(e){return m(e)===r},A.isSuspense=function(e){return m(e)===c},A.isSuspenseList=function(e){return m(e)===l},A.isValidElementType=function(e){return typeof e==`string`||typeof e==`function`||e===n||e===i||e===r||e===c||e===l||typeof e==`object`&&!!e&&(e.$$typeof===d||e.$$typeof===u||e.$$typeof===o||e.$$typeof===a||e.$$typeof===s||e.$$typeof===p||e.getModuleId!==void 0)},A.typeOf=m,A}var N;function P(){return N||(N=1,k.exports=M()),k.exports}var F=P(),ee=D({__proto__:null,default:O(F)},[F]),I={exports:{}},L={},R;function te(){if(R)return L;R=1;var e=Symbol.for(`react.element`),t=Symbol.for(`react.portal`),n=Symbol.for(`react.fragment`),r=Symbol.for(`react.strict_mode`),i=Symbol.for(`react.profiler`),a=Symbol.for(`react.provider`),o=Symbol.for(`react.context`),s=Symbol.for(`react.server_context`),c=Symbol.for(`react.forward_ref`),l=Symbol.for(`react.suspense`),u=Symbol.for(`react.suspense_list`),d=Symbol.for(`react.memo`),f=Symbol.for(`react.lazy`),p=Symbol.for(`react.offscreen`),m=Symbol.for(`react.module.reference`);function h(p){if(typeof p==`object`&&p){var m=p.$$typeof;switch(m){case e:switch(p=p.type,p){case n:case i:case r:case l:case u:return p;default:switch(p&&=p.$$typeof,p){case s:case o:case c:case f:case d:case a:return p;default:return m}}case t:return m}}}return L.ContextConsumer=o,L.ContextProvider=a,L.Element=e,L.ForwardRef=c,L.Fragment=n,L.Lazy=f,L.Memo=d,L.Portal=t,L.Profiler=i,L.StrictMode=r,L.Suspense=l,L.SuspenseList=u,L.isAsyncMode=function(){return!1},L.isConcurrentMode=function(){return!1},L.isContextConsumer=function(e){return h(e)===o},L.isContextProvider=function(e){return h(e)===a},L.isElement=function(t){return typeof t==`object`&&!!t&&t.$$typeof===e},L.isForwardRef=function(e){return h(e)===c},L.isFragment=function(e){return h(e)===n},L.isLazy=function(e){return h(e)===f},L.isMemo=function(e){return h(e)===d},L.isPortal=function(e){return h(e)===t},L.isProfiler=function(e){return h(e)===i},L.isStrictMode=function(e){return h(e)===r},L.isSuspense=function(e){return h(e)===l},L.isSuspenseList=function(e){return h(e)===u},L.isValidElementType=function(e){return typeof e==`string`||typeof e==`function`||e===n||e===i||e===r||e===l||e===u||e===p||typeof e==`object`&&!!e&&(e.$$typeof===f||e.$$typeof===d||e.$$typeof===a||e.$$typeof===o||e.$$typeof===c||e.$$typeof===m||e.getModuleId!==void 0)},L.typeOf=h,L}var z;function ne(){return z||(z=1,I.exports=te()),I.exports}var B=ne(),re=D({__proto__:null,default:O(B)},[B]);Object.fromEntries([`isAsyncMode`,`isConcurrentMode`,`isContextConsumer`,`isContextProvider`,`isElement`,`isForwardRef`,`isFragment`,`isLazy`,`isMemo`,`isPortal`,`isProfiler`,`isStrictMode`,`isSuspense`,`isSuspenseList`,`isValidElementType`].map(e=>[e,t=>re[e](t)||ee[e](t)]));try{let{getPromiseDetails:e,kPending:t,kRejected:n}=process.binding(`util`);Array.isArray(e(Promise.resolve()))}catch{}function ie(e){let{message:t=`$$stack trace error`,stackTraceLimit:n=1}=e||{},r=Error.stackTraceLimit,i=Error.prepareStackTrace;Error.stackTraceLimit=n,Error.prepareStackTrace=e=>e.stack;let a=Error(t).stack||``;return Error.prepareStackTrace=i,Error.stackTraceLimit=r,a}var V,H;function ae(){if(H)return V;H=1;var e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_,v;return f=/\/(?![*\/])(?:\[(?:(?![\]\\]).|\\.)*\]|(?![\/\\]).|\\.)*(\/[$_\u200C\u200D\p{ID_Continue}]*|\\)?/uy,d=/--|\+\+|=>|\.{3}|\??\.(?!\d)|(?:&&|\|\||\?\?|[+\-%&|^]|\*{1,2}|<{1,2}|>{1,3}|!=?|={1,2}|\/(?![\/*]))=?|[?~,:;[\](){}]/y,e=/(\x23?)(?=[$_\p{ID_Start}\\])(?:[$_\u200C\u200D\p{ID_Continue}]|\\u[\da-fA-F]{4}|\\u\{[\da-fA-F]+\})+/uy,m=/(['"])(?:(?!\1)[^\\\n\r]|\\(?:\r\n|[^]))*(\1)?/y,u=/(?:0[xX][\da-fA-F](?:_?[\da-fA-F])*|0[oO][0-7](?:_?[0-7])*|0[bB][01](?:_?[01])*)n?|0n|[1-9](?:_?\d)*n|(?:(?:0(?!\d)|0\d*[89]\d*|[1-9](?:_?\d)*)(?:\.(?:\d(?:_?\d)*)?)?|\.\d(?:_?\d)*)(?:[eE][+-]?\d(?:_?\d)*)?|0[0-7]+/y,h=/[`}](?:[^`\\$]|\\[^]|\$(?!\{))*(`|\$\{)?/y,v=/[\t\v\f\ufeff\p{Zs}]+/uy,s=/\r?\n|[\r\u2028\u2029]/y,c=/\/\*(?:[^*]|\*(?!\/))*(\*\/)?/y,p=/\/\/.*/y,n=/[<>.:={}]|\/(?![\/*])/y,t=/[$_\p{ID_Start}][$_\u200C\u200D\p{ID_Continue}-]*/uy,r=/(['"])(?:(?!\1)[^])*(\1)?/y,i=/[^<>{}]+/y,_=/^(?:[\/+-]|\.{3}|\?(?:InterpolationIn(?:JSX|Template)|NoLineTerminatorHere|NonExpressionParenEnd|UnaryIncDec))?$|[{}([,;<>=*%&|^!~?:]$/,g=/^(?:=>|[;\]){}]|else|\?(?:NoLineTerminatorHere|NonExpressionParenEnd))?$/,a=/^(?:await|case|default|delete|do|else|instanceof|new|return|throw|typeof|void|yield)$/,o=/^(?:return|throw|yield)$/,l=RegExp(s.source),V=function*(y,{jsx:b=!1}={}){var x,S,C,w,T,E,D,O,k,A,j,M,N,P;for({length:E}=y,w=0,T=``,P=[{tag:`JS`}],x=[],j=0,M=!1;w<E;){switch(O=P[P.length-1],O.tag){case`JS`:case`JSNonExpressionParen`:case`InterpolationInTemplate`:case`InterpolationInJSX`:if(y[w]===`/`&&(_.test(T)||a.test(T))&&(f.lastIndex=w,D=f.exec(y))){w=f.lastIndex,T=D[0],M=!0,yield{type:`RegularExpressionLiteral`,value:D[0],closed:D[1]!==void 0&&D[1]!==`\\`};continue}if(d.lastIndex=w,D=d.exec(y)){switch(N=D[0],k=d.lastIndex,A=N,N){case`(`:T===`?NonExpressionParenKeyword`&&P.push({tag:`JSNonExpressionParen`,nesting:j}),j++,M=!1;break;case`)`:j--,M=!0,O.tag===`JSNonExpressionParen`&&j===O.nesting&&(P.pop(),A=`?NonExpressionParenEnd`,M=!1);break;case`{`:d.lastIndex=0,C=!g.test(T)&&(_.test(T)||a.test(T)),x.push(C),M=!1;break;case`}`:switch(O.tag){case`InterpolationInTemplate`:if(x.length===O.nesting){h.lastIndex=w,D=h.exec(y),w=h.lastIndex,T=D[0],D[1]==="${"?(T=`?InterpolationInTemplate`,M=!1,yield{type:`TemplateMiddle`,value:D[0]}):(P.pop(),M=!0,yield{type:`TemplateTail`,value:D[0],closed:D[1]==="`"});continue}break;case`InterpolationInJSX`:if(x.length===O.nesting){P.pop(),w+=1,T=`}`,yield{type:`JSXPunctuator`,value:`}`};continue}}M=x.pop(),A=M?`?ExpressionBraceEnd`:`}`;break;case`]`:M=!0;break;case`++`:case`--`:A=M?`?PostfixIncDec`:`?UnaryIncDec`;break;case`<`:if(b&&(_.test(T)||a.test(T))){P.push({tag:`JSXTag`}),w+=1,T=`<`,yield{type:`JSXPunctuator`,value:N};continue}M=!1;break;default:M=!1}w=k,T=A,yield{type:`Punctuator`,value:N};continue}if(e.lastIndex=w,D=e.exec(y)){switch(w=e.lastIndex,A=D[0],D[0]){case`for`:case`if`:case`while`:case`with`:T!==`.`&&T!==`?.`&&(A=`?NonExpressionParenKeyword`)}T=A,M=!a.test(D[0]),yield{type:D[1]===`#`?`PrivateIdentifier`:`IdentifierName`,value:D[0]};continue}if(m.lastIndex=w,D=m.exec(y)){w=m.lastIndex,T=D[0],M=!0,yield{type:`StringLiteral`,value:D[0],closed:D[2]!==void 0};continue}if(u.lastIndex=w,D=u.exec(y)){w=u.lastIndex,T=D[0],M=!0,yield{type:`NumericLiteral`,value:D[0]};continue}if(h.lastIndex=w,D=h.exec(y)){w=h.lastIndex,T=D[0],D[1]==="${"?(T=`?InterpolationInTemplate`,P.push({tag:`InterpolationInTemplate`,nesting:x.length}),M=!1,yield{type:`TemplateHead`,value:D[0]}):(M=!0,yield{type:`NoSubstitutionTemplate`,value:D[0],closed:D[1]==="`"});continue}break;case`JSXTag`:case`JSXTagEnd`:if(n.lastIndex=w,D=n.exec(y)){switch(w=n.lastIndex,A=D[0],D[0]){case`<`:P.push({tag:`JSXTag`});break;case`>`:P.pop(),T===`/`||O.tag===`JSXTagEnd`?(A=`?JSX`,M=!0):P.push({tag:`JSXChildren`});break;case`{`:P.push({tag:`InterpolationInJSX`,nesting:x.length}),A=`?InterpolationInJSX`,M=!1;break;case`/`:T===`<`&&(P.pop(),P[P.length-1].tag===`JSXChildren`&&P.pop(),P.push({tag:`JSXTagEnd`}))}T=A,yield{type:`JSXPunctuator`,value:D[0]};continue}if(t.lastIndex=w,D=t.exec(y)){w=t.lastIndex,T=D[0],yield{type:`JSXIdentifier`,value:D[0]};continue}if(r.lastIndex=w,D=r.exec(y)){w=r.lastIndex,T=D[0],yield{type:`JSXString`,value:D[0],closed:D[2]!==void 0};continue}break;case`JSXChildren`:if(i.lastIndex=w,D=i.exec(y)){w=i.lastIndex,T=D[0],yield{type:`JSXText`,value:D[0]};continue}switch(y[w]){case`<`:P.push({tag:`JSXTag`}),w++,T=`<`,yield{type:`JSXPunctuator`,value:`<`};continue;case`{`:P.push({tag:`InterpolationInJSX`,nesting:x.length}),w++,T=`?InterpolationInJSX`,M=!1,yield{type:`JSXPunctuator`,value:`{`};continue}}if(v.lastIndex=w,D=v.exec(y)){w=v.lastIndex,yield{type:`WhiteSpace`,value:D[0]};continue}if(s.lastIndex=w,D=s.exec(y)){w=s.lastIndex,M=!1,o.test(T)&&(T=`?NoLineTerminatorHere`),yield{type:`LineTerminatorSequence`,value:D[0]};continue}if(c.lastIndex=w,D=c.exec(y)){w=c.lastIndex,l.test(D[0])&&(M=!1,o.test(T)&&(T=`?NoLineTerminatorHere`)),yield{type:`MultiLineComment`,value:D[0],closed:D[1]!==void 0};continue}if(p.lastIndex=w,D=p.exec(y)){w=p.lastIndex,M=!1,yield{type:`SingleLineComment`,value:D[0]};continue}S=String.fromCodePoint(y.codePointAt(w)),w+=S.length,T=S,M=!1,yield{type:O.tag.startsWith(`JSX`)?`JSXInvalid`:`Invalid`,value:S}}},V}ae();var U={keyword:`break.case.catch.continue.debugger.default.do.else.finally.for.function.if.return.switch.throw.try.var.const.while.with.new.this.super.class.extends.export.import.null.true.false.in.instanceof.typeof.void.delete`.split(`.`),strict:[`implements`,`interface`,`let`,`package`,`private`,`protected`,`public`,`static`,`yield`]};new Set(U.keyword),new Set(U.strict);var W=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,oe=new Uint8Array(64),se=new Uint8Array(128);for(let e=0;e<W.length;e++){let t=W.charCodeAt(e);oe[e]=t,se[t]=e}var G;(function(e){e[e.Empty=1]=`Empty`,e[e.Hash=2]=`Hash`,e[e.Query=3]=`Query`,e[e.RelativePath=4]=`RelativePath`,e[e.AbsolutePath=5]=`AbsolutePath`,e[e.SchemeRelative=6]=`SchemeRelative`,e[e.Absolute=7]=`Absolute`})(G||={});var ce=/^[A-Za-z]:\//;function le(e=``){return e&&e.replace(/\\/g,`/`).replace(ce,e=>e.toUpperCase())}var ue=/^[/\\](?![/\\])|^[/\\]{2}(?!\.)|^[A-Za-z]:[/\\]/;function de(){return typeof process<`u`&&typeof process.cwd==`function`?process.cwd().replace(/\\/g,`/`):`/`}var fe=function(...e){e=e.map(e=>le(e));let t=``,n=!1;for(let r=e.length-1;r>=-1&&!n;r--){let i=r>=0?e[r]:de();!i||i.length===0||(t=`${i}/${t}`,n=K(i))}return t=pe(t,!n),n&&!K(t)?`/${t}`:t.length>0?t:`.`};function pe(e,t){let n=``,r=0,i=-1,a=0,o=null;for(let s=0;s<=e.length;++s){if(s<e.length)o=e[s];else{if(o===`/`)break;o=`/`}if(o===`/`){if(!(i===s-1||a===1))if(a===2){if(n.length<2||r!==2||n[n.length-1]!==`.`||n[n.length-2]!==`.`){if(n.length>2){let e=n.lastIndexOf(`/`);e===-1?(n=``,r=0):(n=n.slice(0,e),r=n.length-1-n.lastIndexOf(`/`)),i=s,a=0;continue}else if(n.length>0){n=``,r=0,i=s,a=0;continue}}t&&(n+=n.length>0?`/..`:`..`,r=2)}else n.length>0?n+=`/${e.slice(i+1,s)}`:n=e.slice(i+1,s),r=s-i-1;i=s,a=0}else o===`.`&&a!==-1?++a:a=-1}return n}var K=function(e){return ue.test(e)},q=/^\s*at .*(?:\S:\d+|\(native\))/m,me=/^(?:eval@)?(?:\[native code\])?$/;function J(e){if(!e.includes(`:`))return[e];let t=/(.+?)(?::(\d+))?(?::(\d+))?$/.exec(e.replace(/^\(|\)$/g,``));if(!t)return[e];let n=t[1];if(n.startsWith(`async `)&&(n=n.slice(6)),n.startsWith(`http:`)||n.startsWith(`https:`)){let e=new URL(n);e.searchParams.delete(`import`),e.searchParams.delete(`browserv`),n=e.pathname+e.hash+e.search}if(n.startsWith(`/@fs/`)){let e=/^\/@fs\/[a-zA-Z]:\//.test(n);n=n.slice(e?5:4)}return[n,t[2]||void 0,t[3]||void 0]}function he(e){let t=e.trim();if(me.test(t)||(t.includes(` > eval`)&&(t=t.replace(/ line (\d+)(?: > eval line \d+)* > eval:\d+:\d+/g,`:$1`)),!t.includes(`@`)&&!t.includes(`:`)))return null;let n=/((.*".+"[^@]*)?[^@]*)(@)/,r=t.match(n),i=r&&r[1]?r[1]:void 0,[a,o,s]=J(t.replace(n,``));return!a||!o||!s?null:{file:a,method:i||``,line:Number.parseInt(o),column:Number.parseInt(s)}}function ge(e){let t=e.trim();return q.test(t)?_e(t):he(t)}function _e(e){let t=e.trim();if(!q.test(t))return null;t.includes(`(eval `)&&(t=t.replace(/eval code/g,`eval`).replace(/(\(eval at [^()]*)|(,.*$)/g,``));let n=t.replace(/^\s+/,``).replace(/\(eval code/g,`(`).replace(/^.*?\s+/,``),r=n.match(/ (\(.+\)$)/);n=r?n.replace(r[0],``):n;let[i,a,o]=J(r?r[1]:n),s=r&&n||``,c=i&&[`eval`,`<anonymous>`].includes(i)?void 0:i;return!c||!a||!o?null:(s.startsWith(`async `)&&(s=s.slice(6)),c.startsWith(`file://`)&&(c=c.slice(7)),c=c.startsWith(`node:`)||c.startsWith(`internal:`)?c:fe(c),s&&=s.replace(/__vite_ssr_import_\d+__\./g,``),{method:s,file:c,line:Number.parseInt(a),column:Number.parseInt(o)})}function ve(e){let t=e?.globalThisKey||`__vitest_mocker__`;function n(){return typeof globalThis[t]<`u`?globalThis[t]:new Proxy({},{get(e,t){throw Error(`Vitest mocker was not initialized in this environment. vi.${String(t)}() is forbidden.`)}})}return{hoisted(e){if(typeof e!=`function`)throw TypeError(`vi.hoisted() expects a function, but received a ${typeof e}`);return e()},mock(e,t){if(typeof e!=`string`)throw TypeError(`vi.mock() expects a string path, but received a ${typeof e}`);let r=Y(`mock`);n().queueMock(e,r,typeof t==`function`?()=>t(()=>n().importActual(e,r)):t)},unmock(e){if(typeof e!=`string`)throw TypeError(`vi.unmock() expects a string path, but received a ${typeof e}`);n().queueUnmock(e,Y(`unmock`))},doMock(e,t){if(typeof e!=`string`)throw TypeError(`vi.doMock() expects a string path, but received a ${typeof e}`);let r=Y(`doMock`);n().queueMock(e,r,typeof t==`function`?()=>t(()=>n().importActual(e,r)):t)},doUnmock(e){if(typeof e!=`string`)throw TypeError(`vi.doUnmock() expects a string path, but received a ${typeof e}`);n().queueUnmock(e,Y(`doUnmock`))},async importActual(e){return n().importActual(e,Y(`importActual`))},async importMock(e){return n().importMock(e,Y(`importMock`))}}}function Y(e){let t=ie({stackTraceLimit:5}).split(`
2
+ `);return ge(t[t.findIndex(t=>t.includes(` at Object.${e}`)||t.includes(`${e}@`))+1])?.file||``}var{now:X}=Date,Z=class{registry=new t;queue=new Set;mockedIds=new Set;constructor(e,t,n,r){this.interceptor=e,this.rpc=t,this.spyOn=n,this.config=r}async prepare(){this.queue.size&&await Promise.all([...this.queue.values()])}async resolveFactoryModule(e){let t=this.registry.get(e);if(!t||t.type!==`manual`)throw Error(`Mock ${e} wasn't registered. This is probably a Vitest error. Please, open a new issue with reproduction.`);return await t.resolve()}getFactoryModule(e){let t=this.registry.get(e);if(!t||t.type!==`manual`)throw Error(`Mock ${e} wasn't registered. This is probably a Vitest error. Please, open a new issue with reproduction.`);if(!t.cache)throw Error(`Mock ${e} wasn't resolved. This is probably a Vitest error. Please, open a new issue with reproduction.`);return t.cache}async invalidate(){let e=Array.from(this.mockedIds);e.length&&(await this.rpc.invalidate(e),await this.interceptor.invalidate(),this.registry.clear())}async importActual(t,n){let r=await this.rpc.resolveId(t,n);if(r==null)throw Error(`[vitest] Cannot resolve "${t}" imported from "${n}"`);let i=S(r.id),a=new URL(r.url,location.href),o=`_vitest_original&ext${i}`,s=`${a.pathname}${a.search?`${a.search}&${o}`:`?${o}`}${a.hash}`;return this.wrapDynamicImport(()=>e(()=>import(s),[],import.meta.url)).then(e=>{if(!r.optimized||typeof e.default>`u`)return e;let t=e.default;return t?.__esModule?t:{...typeof t==`object`&&!Array.isArray(t)||typeof t==`function`?t:{},default:t}})}async importMock(t,r){await this.prepare();let{resolvedId:a,resolvedUrl:o,redirectUrl:s}=await this.rpc.resolveMock(t,r,{mock:`auto`}),c=this.resolveMockPath(Q(o)),l=this.registry.get(c);if(l||=s?new i(t,a,c,new URL(this.resolveMockPath(Q(s)),location.href).toString()):new n(t,a,c),l.type===`manual`)return await l.resolve();if(l.type===`automock`||l.type===`autospy`){let t=new URL(`/@id/${a}`,location.href),n=t.search?`${t.search}&t=${X()}`:`?t=${X()}`,r=await e(()=>import(`${t.pathname}${n}&mock=${l.type}${t.hash}`),[],import.meta.url);return this.mockObject(r,l.type)}return e(()=>import(l.redirect),[],import.meta.url)}mockObject(e,t=`automock`){return o({globalConstructors:{Object,Function,Array,Map,RegExp},spyOn:this.spyOn,type:t},e)}queueMock(e,t,n){let r=this.rpc.resolveMock(e,t,{mock:typeof n==`function`?`factory`:n?.spy?`spy`:`auto`}).then(async({redirectUrl:t,resolvedId:r,resolvedUrl:i,needsInterop:a,mockType:o})=>{let s=this.resolveMockPath(Q(i));this.mockedIds.add(r);let c=typeof n==`function`?async()=>{let e=await n();return a?{default:e}:e}:void 0,l=typeof t==`string`?new URL(this.resolveMockPath(Q(t)),location.href).toString():null,u;u=o===`manual`?this.registry.register(`manual`,e,r,s,c):o===`autospy`?this.registry.register(`autospy`,e,r,s):o===`redirect`?this.registry.register(`redirect`,e,r,s,l):this.registry.register(`automock`,e,r,s),await this.interceptor.register(u)}).finally(()=>{this.queue.delete(r)});this.queue.add(r)}queueUnmock(e,t){let n=this.rpc.resolveId(e,t).then(async e=>{if(!e)return;let t=this.resolveMockPath(Q(e.url));this.mockedIds.add(e.id),this.registry.delete(t),await this.interceptor.delete(t)}).finally(()=>{this.queue.delete(n)});this.queue.add(n)}wrapDynamicImport(e){return typeof e==`function`?new Promise((t,n)=>{this.prepare().finally(()=>{e().then(t,n)})}):e}resolveMockPath(e){let t=this.config,n=y(`/@fs/`,t.root);return e.startsWith(t.root)?e.slice(t.root.length):e.startsWith(n)?e.slice(n.length):e}},ye=/(\?|&)v=\w{8}/;function Q(e){return e.replace(ye,``)}var be=class{mocks=new t;constructor(){}async register(e){this.mocks.add(e)}async delete(e){this.mocks.delete(e)}async invalidate(){this.mocks.clear()}},$=e=>{switch(e){case`resolveId`:return Promise.resolve({id:``,url:``,optimized:!1});case`resolveMock`:return Promise.resolve({mockType:`dummy`,resolvedId:``,resolvedUrl:``,redirectUrl:``,needsInterop:!1});case`invalidate`:return Promise.resolve()}},xe=class extends Z{queueMock(){}};function Se(e){let t=new xe(e(`__vitest_mocker__`),{resolveId(e,t){return $(`resolveId`,{id:e,importer:t})},resolveMock(e,t,n){return $(`resolveMock`,{id:e,importer:t,options:n})},async invalidate(e){return $(`invalidate`,{ids:e})}},(...e)=>globalThis.__STORYBOOK_MODULE_TEST__.spyOn(...e),{root:``});return globalThis.__vitest_mocker__=t,ve({globalThisKey:`__vitest_mocker__`})}globalThis.__STORYBOOK_MOCKER__=Se(()=>new be);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@acusti/uikit-docs",
3
- "version": "0.4.4",
3
+ "version": "0.4.6",
4
4
  "engines": {
5
5
  "node": ">=20"
6
6
  },
@@ -9,15 +9,17 @@
9
9
  "storybook": "storybook dev -p 6006"
10
10
  },
11
11
  "devDependencies": {
12
- "@storybook/addon-docs": "^9",
13
- "@storybook/react-vite": "^9",
14
- "@types/react": "^19.2.2",
15
- "core-js": "^3.46.0",
16
- "react": "^19.2.0",
17
- "react-dom": "^19.2.0",
18
- "storybook": "^9",
12
+ "@storybook/addon-docs": "^10",
13
+ "@storybook/react-vite": "^10",
14
+ "@types/react": "^19.2.10",
15
+ "@vitejs/plugin-react": "^5.0.4",
16
+ "babel-plugin-react-compiler": "^1",
17
+ "core-js": "^3.48.0",
18
+ "react": "^19.2.4",
19
+ "react-dom": "^19.2.4",
20
+ "storybook": "^10",
19
21
  "typescript": "5.9.2",
20
- "vite": "^7.1.10"
22
+ "vite": "^8.0.0-0"
21
23
  },
22
24
  "dependencies": {
23
25
  "@acusti/css-value-input": "workspace:^",
@@ -113,7 +113,7 @@ export const LabelLess: Story = {
113
113
  export const CustomGetValueAsNumber: Story = {
114
114
  args: {
115
115
  className: 'letter-spacing',
116
- getValueAsNumber: (value) => {
116
+ getValueAsNumber: (value: number | string) => {
117
117
  if (typeof value === 'number') return value;
118
118
  // “normal” for letter-spacing is effectively equivalent to 0
119
119
  if (typeof value === 'string' && value.toLowerCase() === 'normal') {
@@ -7,13 +7,13 @@ import './DatePicker.css';
7
7
 
8
8
  const meta: Meta<typeof DatePicker> = {
9
9
  argTypes: {
10
- dateEnd: {
10
+ defaultDateEnd: {
11
11
  control: 'date',
12
- description: '(optional) end date of current date range',
12
+ description: '(optional) default end date of current date range',
13
13
  },
14
- dateStart: {
14
+ defaultDateStart: {
15
15
  control: 'date',
16
- description: '(optional) start date of current date range',
16
+ description: '(optional) default start date of current date range',
17
17
  },
18
18
  },
19
19
  component: DatePicker,
@@ -49,31 +49,65 @@ export const TwoUpDatePicker: Story = {
49
49
 
50
50
  const DATE_RANGE_NAVIDAD_DIA_DE_LOS_REYES_PROPS = {
51
51
  className: 'date-range-date-picker-story',
52
- dateEnd: new Date(2024, 0, 6).toISOString(),
53
- dateStart: new Date(2023, 11, 25).toISOString(),
52
+ defaultDateEnd: new Date(2024, 0, 6).toISOString(),
53
+ defaultDateStart: new Date(2023, 11, 25).toISOString(),
54
54
  isTwoUp: true,
55
55
  };
56
56
 
57
57
  export const DateRangeNavidadDiaDeLosReyesDatePicker: Story = {
58
58
  args: DATE_RANGE_NAVIDAD_DIA_DE_LOS_REYES_PROPS,
59
59
  render() {
60
- const [dateStart, setDateStart] = useState(
61
- DATE_RANGE_NAVIDAD_DIA_DE_LOS_REYES_PROPS.dateStart,
62
- );
63
- const [dateEnd, setDateEnd] = useState(
64
- DATE_RANGE_NAVIDAD_DIA_DE_LOS_REYES_PROPS.dateEnd,
65
- );
60
+ const [resetKey, setResetKey] = useState(0);
61
+ const [selectedDates, setSelectedDates] = useState({
62
+ start: DATE_RANGE_NAVIDAD_DIA_DE_LOS_REYES_PROPS.defaultDateStart,
63
+ end: DATE_RANGE_NAVIDAD_DIA_DE_LOS_REYES_PROPS.defaultDateEnd,
64
+ });
65
+
66
+ const handleReset = () => {
67
+ setResetKey((prev) => prev + 1);
68
+ setSelectedDates({
69
+ start: DATE_RANGE_NAVIDAD_DIA_DE_LOS_REYES_PROPS.defaultDateStart,
70
+ end: DATE_RANGE_NAVIDAD_DIA_DE_LOS_REYES_PROPS.defaultDateEnd,
71
+ });
72
+ };
66
73
 
67
74
  return (
68
- <DatePicker
69
- {...DATE_RANGE_NAVIDAD_DIA_DE_LOS_REYES_PROPS}
70
- dateEnd={dateEnd}
71
- dateStart={dateStart}
72
- onChange={(update) => {
73
- if (update.dateEnd != null) setDateEnd(update.dateEnd);
74
- if (update.dateStart != null) setDateStart(update.dateStart);
75
- }}
76
- />
75
+ <div>
76
+ <DatePicker
77
+ key={resetKey}
78
+ className={DATE_RANGE_NAVIDAD_DIA_DE_LOS_REYES_PROPS.className}
79
+ isTwoUp={DATE_RANGE_NAVIDAD_DIA_DE_LOS_REYES_PROPS.isTwoUp}
80
+ defaultDateEnd={selectedDates.end}
81
+ defaultDateStart={selectedDates.start}
82
+ onChange={(update) => {
83
+ setSelectedDates({
84
+ start: update.dateStart,
85
+ end: update.dateEnd ?? '',
86
+ });
87
+ }}
88
+ />
89
+ <div style={{ marginTop: '16px' }}>
90
+ <button
91
+ onClick={handleReset}
92
+ style={{
93
+ padding: '8px 16px',
94
+ border: '1px solid #ccc',
95
+ borderRadius: '4px',
96
+ cursor: 'pointer',
97
+ backgroundColor: '#f5f5f5',
98
+ }}
99
+ >
100
+ Reset to Christmas-Epiphany Range
101
+ </button>
102
+ {selectedDates.start && (
103
+ <p style={{ marginTop: '8px' }}>
104
+ Selected: {new Date(selectedDates.start).toLocaleDateString()}
105
+ {selectedDates.end &&
106
+ ` - ${new Date(selectedDates.end).toLocaleDateString()}`}
107
+ </p>
108
+ )}
109
+ </div>
110
+ </div>
77
111
  );
78
112
  },
79
113
  };
@@ -89,8 +123,8 @@ export const NoFutureTwoUpDatePicker: Story = {
89
123
  export const ShowEndInitiallyDatePicker: Story = {
90
124
  args: {
91
125
  className: 'no-future-two-up-date-picker-story',
92
- dateEnd: new Date(1234, 0, 1).toISOString(),
93
- dateStart: new Date(1233, 0, 1).toISOString(),
126
+ defaultDateEnd: new Date(1234, 0, 1).toISOString(),
127
+ defaultDateStart: new Date(1233, 0, 1).toISOString(),
94
128
  isTwoUp: true,
95
129
  showEndInitially: true,
96
130
  },
@@ -108,6 +142,7 @@ const BOOKING_PROPS = {
108
142
  export const BookingSystemDateRange: Story = {
109
143
  args: BOOKING_PROPS,
110
144
  render() {
145
+ const [resetKey, setResetKey] = useState(0);
111
146
  const [checkIn, setCheckIn] = useState('');
112
147
  const [checkOut, setCheckOut] = useState('');
113
148
  const isValid = checkIn && checkOut;
@@ -117,10 +152,17 @@ export const BookingSystemDateRange: Story = {
117
152
  const monthLimitFirst = getMonthFromDate(today);
118
153
  const monthLimitLast = monthLimitFirst + 12;
119
154
 
155
+ const handleClearDates = () => {
156
+ setResetKey((prev) => prev + 1);
157
+ setCheckIn('');
158
+ setCheckOut('');
159
+ };
160
+
120
161
  return (
121
162
  <div className="booking-date-picker">
122
163
  <h3>Select Your Stay</h3>
123
164
  <DatePicker
165
+ key={resetKey}
124
166
  {...BOOKING_PROPS}
125
167
  monthLimitFirst={monthLimitFirst}
126
168
  monthLimitLast={monthLimitLast}
@@ -128,10 +170,27 @@ export const BookingSystemDateRange: Story = {
128
170
  setCheckIn(dateStart);
129
171
  setCheckOut(dateEnd ?? '');
130
172
  }}
131
- dateStart={checkIn}
132
- dateEnd={checkOut}
173
+ defaultDateStart={checkIn}
174
+ defaultDateEnd={checkOut}
133
175
  />
134
176
 
177
+ <div style={{ marginTop: '16px' }}>
178
+ <button
179
+ onClick={handleClearDates}
180
+ style={{
181
+ padding: '8px 16px',
182
+ border: '1px solid #dc3545',
183
+ borderRadius: '4px',
184
+ cursor: 'pointer',
185
+ backgroundColor: '#fff',
186
+ color: '#dc3545',
187
+ marginRight: '8px',
188
+ }}
189
+ >
190
+ Clear Dates
191
+ </button>
192
+ </div>
193
+
135
194
  {isValid ? (
136
195
  <div
137
196
  className="booking-summary"
@@ -185,12 +244,19 @@ const EVENT_PROPS = {
185
244
  export const EventScheduler: Story = {
186
245
  args: EVENT_PROPS,
187
246
  render() {
247
+ const [resetKey, setResetKey] = useState(0);
188
248
  const [eventDate, setEventDate] = useState('');
189
249
  const [showPicker, setShowPicker] = useState(false);
190
250
 
191
251
  // Only allow future dates
192
252
  const monthLimitFirst = getMonthFromDate(new Date());
193
253
 
254
+ const handleClearDate = () => {
255
+ setResetKey((prev) => prev + 1);
256
+ setEventDate('');
257
+ setShowPicker(false);
258
+ };
259
+
194
260
  return (
195
261
  <div className="event-scheduler">
196
262
  <div style={{ marginBottom: '16px' }}>
@@ -204,21 +270,41 @@ export const EventScheduler: Story = {
204
270
  >
205
271
  Event Date:
206
272
  </label>
207
- <input
208
- id="event-date"
209
- type="text"
210
- value={eventDate ? new Date(eventDate).toLocaleDateString() : ''}
211
- onClick={() => setShowPicker(true)}
212
- placeholder="Click to select date"
213
- readOnly
214
- style={{
215
- padding: '8px 12px',
216
- border: '2px solid #e1e5e9',
217
- borderRadius: '6px',
218
- cursor: 'pointer',
219
- width: '200px',
220
- }}
221
- />
273
+ <div style={{ display: 'flex', alignItems: 'center', gap: '8px' }}>
274
+ <input
275
+ id="event-date"
276
+ type="text"
277
+ value={
278
+ eventDate ? new Date(eventDate).toLocaleDateString() : ''
279
+ }
280
+ onClick={() => setShowPicker(true)}
281
+ placeholder="Click to select date"
282
+ readOnly
283
+ style={{
284
+ padding: '8px 12px',
285
+ border: '2px solid #e1e5e9',
286
+ borderRadius: '6px',
287
+ cursor: 'pointer',
288
+ width: '200px',
289
+ }}
290
+ />
291
+ {eventDate && (
292
+ <button
293
+ onClick={handleClearDate}
294
+ style={{
295
+ padding: '6px 12px',
296
+ border: '1px solid #dc3545',
297
+ borderRadius: '4px',
298
+ cursor: 'pointer',
299
+ backgroundColor: '#fff',
300
+ color: '#dc3545',
301
+ fontSize: '12px',
302
+ }}
303
+ >
304
+ Clear
305
+ </button>
306
+ )}
307
+ </div>
222
308
  </div>
223
309
 
224
310
  {showPicker ? (
@@ -239,13 +325,14 @@ export const EventScheduler: Story = {
239
325
  }}
240
326
  >
241
327
  <DatePicker
328
+ key={resetKey}
242
329
  {...EVENT_PROPS}
243
330
  monthLimitFirst={monthLimitFirst}
244
331
  onChange={({ dateStart }) => {
245
332
  setEventDate(dateStart);
246
333
  setShowPicker(false);
247
334
  }}
248
- dateStart={eventDate}
335
+ defaultDateStart={eventDate}
249
336
  />
250
337
  <button
251
338
  onClick={() => setShowPicker(false)}
@@ -276,6 +363,7 @@ export const EventScheduler: Story = {
276
363
 
277
364
  export const BirthdayPicker: Story = {
278
365
  render() {
366
+ const [resetKey, setResetKey] = useState(0);
279
367
  const [birthday, setBirthday] = useState('');
280
368
 
281
369
  // Reasonable age limits: 13 to 120 years ago
@@ -299,21 +387,47 @@ export const BirthdayPicker: Story = {
299
387
  new Date(today.getFullYear() - 25, today.getMonth(), today.getDate()),
300
388
  );
301
389
 
390
+ const handleClear = () => {
391
+ setResetKey((prev) => prev + 1);
392
+ setBirthday('');
393
+ };
394
+
302
395
  return (
303
396
  <div className="birthday-picker">
304
397
  <h3>Enter Your Birthday</h3>
305
398
  <DatePicker
399
+ key={resetKey}
306
400
  initialMonth={defaultMonth}
307
401
  monthLimitFirst={monthLimitFirst}
308
402
  monthLimitLast={monthLimitLast}
309
403
  onChange={({ dateStart }) => setBirthday(dateStart)}
310
- dateStart={birthday}
404
+ defaultDateStart={birthday}
311
405
  />
312
406
 
407
+ <div style={{ marginTop: '16px' }}>
408
+ {birthday && (
409
+ <button
410
+ onClick={handleClear}
411
+ style={{
412
+ padding: '6px 12px',
413
+ border: '1px solid #dc3545',
414
+ borderRadius: '4px',
415
+ cursor: 'pointer',
416
+ backgroundColor: '#fff',
417
+ color: '#dc3545',
418
+ fontSize: '14px',
419
+ marginBottom: '12px',
420
+ }}
421
+ >
422
+ Clear Birthday
423
+ </button>
424
+ )}
425
+ </div>
426
+
313
427
  {birthday ? (
314
428
  <p
315
429
  style={{
316
- marginTop: '16px',
430
+ marginTop: '8px',
317
431
  padding: '12px',
318
432
  backgroundColor: '#e3f2fd',
319
433
  borderRadius: '6px',
@@ -343,9 +457,15 @@ export const BirthdayPicker: Story = {
343
457
 
344
458
  export const FlexibleDatePicker: Story = {
345
459
  render() {
460
+ const [resetKey, setResetKey] = useState(0);
346
461
  const [selectedDate, setSelectedDate] = useState('');
347
462
  const [viewMode, setViewMode] = useState<'single' | 'double'>('single');
348
463
 
464
+ const handleClear = () => {
465
+ setResetKey((prev) => prev + 1);
466
+ setSelectedDate('');
467
+ };
468
+
349
469
  return (
350
470
  <div className="flexible-date-picker">
351
471
  <div style={{ marginBottom: '16px' }}>
@@ -358,7 +478,7 @@ export const FlexibleDatePicker: Story = {
358
478
  />
359
479
  Single Month
360
480
  </label>
361
- <label>
481
+ <label style={{ marginRight: '16px' }}>
362
482
  <input
363
483
  type="radio"
364
484
  checked={viewMode === 'double'}
@@ -367,13 +487,30 @@ export const FlexibleDatePicker: Story = {
367
487
  />
368
488
  Two Months
369
489
  </label>
490
+ {selectedDate && (
491
+ <button
492
+ onClick={handleClear}
493
+ style={{
494
+ padding: '4px 8px',
495
+ border: '1px solid #dc3545',
496
+ borderRadius: '4px',
497
+ cursor: 'pointer',
498
+ backgroundColor: '#fff',
499
+ color: '#dc3545',
500
+ fontSize: '12px',
501
+ }}
502
+ >
503
+ Clear
504
+ </button>
505
+ )}
370
506
  </div>
371
507
 
372
508
  <DatePicker
509
+ key={resetKey}
373
510
  isTwoUp={viewMode === 'double'}
374
511
  useMonthAbbreviations={viewMode === 'double'}
375
512
  onChange={({ dateStart }) => setSelectedDate(dateStart)}
376
- dateStart={selectedDate}
513
+ defaultDateStart={selectedDate}
377
514
  />
378
515
 
379
516
  {selectedDate ? (
@@ -148,6 +148,42 @@ export const InputWithAutoFocus: Story = {
148
148
  },
149
149
  };
150
150
 
151
+ export const MultiLineInputWithMinHeight: Story = {
152
+ args: {
153
+ className: 'multi-line-input-text',
154
+ initialValue:
155
+ 'This textarea has a minHeight of 50px.\n\nTry deleting this text to see that the textarea does not shrink below the minimum height.',
156
+ minHeight: 50,
157
+ multiLine: true,
158
+ name: 'multi-line-min-height-input',
159
+ placeholder: 'enter text of any length',
160
+ },
161
+ };
162
+
163
+ export const MultiLineInputWithMaxHeight: Story = {
164
+ args: {
165
+ className: 'multi-line-input-text',
166
+ initialValue:
167
+ 'This textarea has a maxHeight of 150px.\n\nLine 3\nLine 4\nLine 5\nLine 6\nLine 7\nLine 8\nLine 9\nLine 10',
168
+ maxHeight: 150,
169
+ multiLine: true,
170
+ name: 'multi-line-max-height-input',
171
+ placeholder: 'enter text of any length',
172
+ },
173
+ };
174
+
175
+ export const MultiLineInputWithMinHeightAndMaxHeight: Story = {
176
+ args: {
177
+ className: 'multi-line-input-text',
178
+ initialValue: 'This textarea has minHeight of 100px and maxHeight of 200px.',
179
+ maxHeight: 200,
180
+ minHeight: 100,
181
+ multiLine: true,
182
+ name: 'multi-line-min-max-height-input',
183
+ placeholder: 'enter text of any length',
184
+ },
185
+ };
186
+
151
187
  export const MultiLineInputWithCSSTransition: Story = {
152
188
  args: {
153
189
  className: 'multi-line-input-css-transition',
package/tsconfig.json CHANGED
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "extends": "../../tsconfig.json",
3
3
  "compilerOptions": {
4
+ "moduleResolution": "bundler",
4
5
  "noEmit": true
5
6
  },
6
7
  "references": [