react-ui89 0.29.2 → 0.29.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/esm/index.css +0 -1
- package/dist/esm/index.js +128 -120
- package/dist/esm/index.js.map +1 -1
- package/package.json +1 -1
package/dist/esm/index.css
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
1
|
:root{--ui89-palette-black:#000000;--ui89-palette-dark-blue:#0000aa;--ui89-palette-dark-green:#00aa00;--ui89-palette-dark-cyan:#00aaaa;--ui89-palette-dark-red:#aa0000;--ui89-palette-dark-pink:#aa00aa;--ui89-palette-dark-yellow:#aa5500;--ui89-palette-light-gray:#aaaaaa;--ui89-palette-dark-gray:#555555;--ui89-palette-light-blue:#5454ff;--ui89-palette-light-green:#55ff55;--ui89-palette-light-cyan:#55ffff;--ui89-palette-light-red:#ff5555;--ui89-palette-light-pink:#ff55ff;--ui89-palette-light-yellow:#ffff55;--ui89-palette-white:#ffffff;--ui89-theme-primary-text-color:var(--ui89-palette-black);--ui89-theme-primary-bg-color:var(--ui89-palette-light-yellow);--ui89-theme-secondary-text-color:var(--ui89-palette-black);--ui89-theme-secondary-bg-color:var(--ui89-palette-white);--ui89-theme-success-text-color:var(--ui89-palette-white);--ui89-theme-success-bg-color:var(--ui89-palette-dark-green);--ui89-theme-info-text-color:var(--ui89-palette-white);--ui89-theme-info-bg-color:var(--ui89-palette-light-blue);--ui89-theme-warning-text-color:var(--ui89-palette-white);--ui89-theme-warning-bg-color:var(--ui89-palette-dark-yellow);--ui89-theme-danger-text-color:var(--ui89-palette-white);--ui89-theme-danger-bg-color:var(--ui89-palette-dark-red);--ui89-safe-space:8px;--ui89-input-height:32px;--ui89-font-size-huge:32px;--ui89-font-size-big:20px;--ui89-font-size-normal:16px;--ui89-font-size-small:14px;--ui89-font-size-tiny:10px;--ui89-input-bg-color:var(--ui89-palette-black);--ui89-input-text-color:var(--ui89-palette-light-yellow);--ui89-animation-speed:100ms;--ui89-cursor-default:default;--ui89-cursor-pointer:pointer;--ui89-box-shadow:10px 10px 0px black;}
|
|
2
2
|
.ui89-toaster::before{content:"";position:absolute;inset:0;border:var(--ui89-toaster-border-width) solid var(--ui89-chosen-theme-text-color);margin:var(--ui89-safe-space);}.ui89-toaster::after{content:"";display:block;position:absolute;top:0;left:50%;transform:translateX(-50%);background:var(--ui89-chosen-theme-bg-color);color:var(--ui89-chosen-theme-text-color);padding:0 var(--ui89-safe-space);}.ui89-toaster.Toastify__toast--default{--ui89-toaster-border-width:1px;display:block;min-height:auto;padding:calc(var(--ui89-safe-space) * 2 + var(--ui89-toaster-border-width));border-radius:0;box-shadow:var(--ui89-box-shadow);background:var(--ui89-chosen-theme-bg-color);color:var(--ui89-chosen-theme-text-color);}.ui89-toaster .Toastify__progress-bar--wrp{border-radius:0;}
|
|
3
|
-
@charset "UTF-8";.react-datepicker__navigation-icon::before,.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{border-color:#ccc;border-style:solid;border-width:3px 3px 0 0;content:"";display:block;height:9px;position:absolute;top:6px;width:9px;}.react-datepicker-wrapper{display:inline-block;padding:0;border:0;}.react-datepicker{font-family:"Helvetica Neue",helvetica,arial,sans-serif;font-size:0.8rem;background-color:#fff;color:#000;border:1px solid #aeaeae;border-radius:0.3rem;display:inline-block;position:relative;line-height:initial;}.react-datepicker--time-only .react-datepicker__time-container{border-left:0;}.react-datepicker--time-only .react-datepicker__time,.react-datepicker--time-only .react-datepicker__time-box{border-bottom-left-radius:0.3rem;border-bottom-right-radius:0.3rem;}.react-datepicker-popper{z-index:1;line-height:0;}.react-datepicker-popper .react-datepicker__triangle{stroke:#aeaeae;}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0;}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle{fill:#fff;color:#fff;}.react-datepicker__header{text-align:center;background-color:#f0f0f0;border-bottom:1px solid #aeaeae;border-top-left-radius:0.3rem;padding:8px 0;position:relative;}.react-datepicker__header--time{padding-bottom:8px;padding-left:5px;padding-right:5px;}.react-datepicker__header--time:not(.react-datepicker__header--time--only){border-top-left-radius:0;}.react-datepicker__header:not(.react-datepicker__header--has-time-select){border-top-right-radius:0.3rem;}.react-datepicker__year-dropdown-container--select,.react-datepicker__month-dropdown-container--select,.react-datepicker__month-year-dropdown-container--select,.react-datepicker__year-dropdown-container--scroll,.react-datepicker__month-dropdown-container--scroll,.react-datepicker__month-year-dropdown-container--scroll{display:inline-block;margin:0 15px;}.react-datepicker__current-month,.react-datepicker-time__header,.react-datepicker-year-header{margin-top:0;color:#000;font-weight:bold;font-size:0.944rem;}h2.react-datepicker__current-month{padding:0;margin:0;}.react-datepicker-time__header{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;}.react-datepicker__navigation{align-items:center;background:none;display:flex;justify-content:center;text-align:center;cursor:pointer;position:absolute;top:2px;padding:0;border:none;z-index:1;height:32px;width:32px;text-indent:-999em;overflow:hidden;}.react-datepicker__navigation--previous{left:2px;}.react-datepicker__navigation--next{right:2px;}.react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:85px;}.react-datepicker__navigation--years{position:relative;top:0;display:block;margin-left:auto;margin-right:auto;}.react-datepicker__navigation--years-previous{top:4px;}.react-datepicker__navigation--years-upcoming{top:-4px;}.react-datepicker__navigation:hover *::before{border-color:rgb(165.75,165.75,165.75);}.react-datepicker__navigation-icon{position:relative;top:-1px;font-size:20px;width:0;}.react-datepicker__navigation-icon--next{left:-2px;}.react-datepicker__navigation-icon--next::before{transform:rotate(45deg);left:-7px;}.react-datepicker__navigation-icon--previous{right:-2px;}.react-datepicker__navigation-icon--previous::before{transform:rotate(225deg);right:-7px;}.react-datepicker__month-container{float:left;}.react-datepicker__year{margin:0.4rem;text-align:center;}.react-datepicker__year-wrapper{display:flex;flex-wrap:wrap;max-width:180px;}.react-datepicker__year .react-datepicker__year-text{display:inline-block;width:4rem;margin:2px;}.react-datepicker__month{margin:0.4rem;text-align:center;}.react-datepicker__month .react-datepicker__month-text,.react-datepicker__month .react-datepicker__quarter-text{display:inline-block;width:4rem;margin:2px;}.react-datepicker__input-time-container{clear:both;width:100%;float:left;margin:5px 0 10px 15px;text-align:left;}.react-datepicker__input-time-container .react-datepicker-time__caption{display:inline-block;}.react-datepicker__input-time-container .react-datepicker-time__input-container{display:inline-block;}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input{display:inline-block;margin-left:10px;}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input{width:auto;}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-inner-spin-button,.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0;}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]{-moz-appearance:textfield;}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__delimiter{margin-left:5px;display:inline-block;}.react-datepicker__time-container{float:right;border-left:1px solid #aeaeae;width:85px;}.react-datepicker__time-container--with-today-button{display:inline;border:1px solid #aeaeae;border-radius:0.3rem;position:absolute;right:-87px;top:0;}.react-datepicker__time-container .react-datepicker__time{position:relative;background:white;border-bottom-right-radius:0.3rem;}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{width:85px;overflow-x:hidden;margin:0 auto;text-align:center;border-bottom-right-radius:0.3rem;}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{list-style:none;margin:0;height:calc(195px + 1.7rem / 2);overflow-y:scroll;padding-right:0;padding-left:0;width:100%;box-sizing:content-box;}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{height:30px;padding:5px 10px;white-space:nowrap;}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover{cursor:pointer;background-color:#f0f0f0;}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected{background-color:#216ba5;color:white;font-weight:bold;}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected:hover{background-color:#216ba5;}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled{color:#ccc;}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled:hover{cursor:default;background-color:transparent;}.react-datepicker__week-number{color:#ccc;display:inline-block;width:1.7rem;line-height:1.7rem;text-align:center;margin:0.166rem;}.react-datepicker__week-number.react-datepicker__week-number--clickable{cursor:pointer;}.react-datepicker__week-number.react-datepicker__week-number--clickable:not(.react-datepicker__week-number--selected):hover{border-radius:0.3rem;background-color:#f0f0f0;}.react-datepicker__week-number--selected{border-radius:0.3rem;background-color:#216ba5;color:#fff;}.react-datepicker__week-number--selected:hover{background-color:rgb(28.75,93.2196969697,143.75);}.react-datepicker__day-names{white-space:nowrap;margin-bottom:-8px;}.react-datepicker__week{white-space:nowrap;}.react-datepicker__day-name,.react-datepicker__day,.react-datepicker__time-name{color:#000;display:inline-block;width:1.7rem;line-height:1.7rem;text-align:center;margin:0.166rem;}.react-datepicker__day,.react-datepicker__month-text,.react-datepicker__quarter-text,.react-datepicker__year-text{cursor:pointer;}.react-datepicker__day:not([aria-disabled=true]):hover,.react-datepicker__month-text:not([aria-disabled=true]):hover,.react-datepicker__quarter-text:not([aria-disabled=true]):hover,.react-datepicker__year-text:not([aria-disabled=true]):hover{border-radius:0.3rem;background-color:#f0f0f0;}.react-datepicker__day--today,.react-datepicker__month-text--today,.react-datepicker__quarter-text--today,.react-datepicker__year-text--today{font-weight:bold;}.react-datepicker__day--highlighted,.react-datepicker__month-text--highlighted,.react-datepicker__quarter-text--highlighted,.react-datepicker__year-text--highlighted{border-radius:0.3rem;background-color:#3dcc4a;color:#fff;}.react-datepicker__day--highlighted:not([aria-disabled=true]):hover,.react-datepicker__month-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__year-text--highlighted:not([aria-disabled=true]):hover{background-color:rgb(49.8551020408,189.6448979592,62.5632653061);}.react-datepicker__day--highlighted-custom-1,.react-datepicker__month-text--highlighted-custom-1,.react-datepicker__quarter-text--highlighted-custom-1,.react-datepicker__year-text--highlighted-custom-1{color:magenta;}.react-datepicker__day--highlighted-custom-2,.react-datepicker__month-text--highlighted-custom-2,.react-datepicker__quarter-text--highlighted-custom-2,.react-datepicker__year-text--highlighted-custom-2{color:green;}.react-datepicker__day--holidays,.react-datepicker__month-text--holidays,.react-datepicker__quarter-text--holidays,.react-datepicker__year-text--holidays{position:relative;border-radius:0.3rem;background-color:#ff6803;color:#fff;}.react-datepicker__day--holidays .overlay,.react-datepicker__month-text--holidays .overlay,.react-datepicker__quarter-text--holidays .overlay,.react-datepicker__year-text--holidays .overlay{position:absolute;bottom:100%;left:50%;transform:translateX(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity 0.3s ease-in-out;}.react-datepicker__day--holidays:not([aria-disabled=true]):hover,.react-datepicker__month-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__year-text--holidays:not([aria-disabled=true]):hover{background-color:rgb(207,82.9642857143,0);}.react-datepicker__day--holidays:hover .overlay,.react-datepicker__month-text--holidays:hover .overlay,.react-datepicker__quarter-text--holidays:hover .overlay,.react-datepicker__year-text--holidays:hover .overlay{visibility:visible;opacity:1;}.react-datepicker__day--selected,.react-datepicker__day--in-selecting-range,.react-datepicker__day--in-range,.react-datepicker__month-text--selected,.react-datepicker__month-text--in-selecting-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--selected,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--selected,.react-datepicker__year-text--in-selecting-range,.react-datepicker__year-text--in-range{border-radius:0.3rem;background-color:#216ba5;color:#fff;}.react-datepicker__day--selected:not([aria-disabled=true]):hover,.react-datepicker__day--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__day--in-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-range:not([aria-disabled=true]):hover{background-color:rgb(28.75,93.2196969697,143.75);}.react-datepicker__day--keyboard-selected,.react-datepicker__month-text--keyboard-selected,.react-datepicker__quarter-text--keyboard-selected,.react-datepicker__year-text--keyboard-selected{border-radius:0.3rem;background-color:rgb(186.25,217.0833333333,241.25);color:rgb(0,0,0);}.react-datepicker__day--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--keyboard-selected:not([aria-disabled=true]):hover{background-color:rgb(28.75,93.2196969697,143.75);}.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__month-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__quarter-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__year-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range){background-color:rgba(33,107,165,0.5);}.react-datepicker__month--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range){background-color:#f0f0f0;color:#000;}.react-datepicker__day--disabled,.react-datepicker__month-text--disabled,.react-datepicker__quarter-text--disabled,.react-datepicker__year-text--disabled{cursor:default;color:#ccc;}.react-datepicker__day--disabled .overlay,.react-datepicker__month-text--disabled .overlay,.react-datepicker__quarter-text--disabled .overlay,.react-datepicker__year-text--disabled .overlay{position:absolute;bottom:70%;left:50%;transform:translateX(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity 0.3s ease-in-out;}.react-datepicker__input-container{position:relative;display:inline-block;width:100%;}.react-datepicker__input-container .react-datepicker__calendar-icon{position:absolute;padding:0.5rem;box-sizing:content-box;}.react-datepicker__view-calendar-icon input{padding:6px 10px 5px 25px;}.react-datepicker__year-read-view,.react-datepicker__month-read-view,.react-datepicker__month-year-read-view{border:1px solid transparent;border-radius:0.3rem;position:relative;}.react-datepicker__year-read-view:hover,.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover{cursor:pointer;}.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__month-read-view--down-arrow{border-top-color:rgb(178.5,178.5,178.5);}.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{transform:rotate(135deg);right:-16px;top:0;}.react-datepicker__year-dropdown,.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown{background-color:#f0f0f0;position:absolute;width:50%;left:25%;top:30px;z-index:1;text-align:center;border-radius:0.3rem;border:1px solid #aeaeae;}.react-datepicker__year-dropdown:hover,.react-datepicker__month-dropdown:hover,.react-datepicker__month-year-dropdown:hover{cursor:pointer;}.react-datepicker__year-dropdown--scrollable,.react-datepicker__month-dropdown--scrollable,.react-datepicker__month-year-dropdown--scrollable{height:150px;overflow-y:scroll;}.react-datepicker__year-option,.react-datepicker__month-option,.react-datepicker__month-year-option{line-height:20px;width:100%;display:block;margin-left:auto;margin-right:auto;}.react-datepicker__year-option:first-of-type,.react-datepicker__month-option:first-of-type,.react-datepicker__month-year-option:first-of-type{border-top-left-radius:0.3rem;border-top-right-radius:0.3rem;}.react-datepicker__year-option:last-of-type,.react-datepicker__month-option:last-of-type,.react-datepicker__month-year-option:last-of-type{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-bottom-left-radius:0.3rem;border-bottom-right-radius:0.3rem;}.react-datepicker__year-option:hover,.react-datepicker__month-option:hover,.react-datepicker__month-year-option:hover{background-color:#ccc;}.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming{border-bottom-color:rgb(178.5,178.5,178.5);}.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous{border-top-color:rgb(178.5,178.5,178.5);}.react-datepicker__year-option--selected,.react-datepicker__month-option--selected,.react-datepicker__month-year-option--selected{position:absolute;left:15px;}.react-datepicker__close-icon{cursor:pointer;background-color:transparent;border:0;outline:0;padding:0 6px 0 0;position:absolute;top:0;right:0;height:100%;display:table-cell;vertical-align:middle;}.react-datepicker__close-icon::after{cursor:pointer;background-color:#216ba5;color:#fff;border-radius:50%;height:16px;width:16px;padding:2px;font-size:12px;line-height:1;text-align:center;display:table-cell;vertical-align:middle;content:"×";}.react-datepicker__close-icon--disabled{cursor:default;}.react-datepicker__close-icon--disabled::after{cursor:default;background-color:#ccc;}.react-datepicker__today-button{background:#f0f0f0;border-top:1px solid #aeaeae;cursor:pointer;text-align:center;font-weight:bold;padding:5px 0;clear:left;}.react-datepicker__portal{position:fixed;width:100vw;height:100vh;background-color:rgba(0,0,0,0.8);left:0;top:0;justify-content:center;align-items:center;display:flex;z-index:2147483647;}.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__time-name{width:3rem;line-height:3rem;}@media (max-width:400px),(max-height:550px){.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__time-name{width:2rem;line-height:2rem;}}.react-datepicker__portal .react-datepicker__current-month,.react-datepicker__portal .react-datepicker-time__header{font-size:1.44rem;}.react-datepicker__children-container{width:13.8rem;margin:0.4rem;padding-right:0.2rem;padding-left:0.2rem;height:auto;}.react-datepicker__aria-live{position:absolute;clip-path:circle(0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;width:1px;white-space:nowrap;}.react-datepicker__calendar-icon{width:1em;height:1em;vertical-align:-0.125em;}
|
|
4
3
|
.ui89-date-time-picker>.react-datepicker-wrapper{display:block;}.ui89-date-time-picker .react-datepicker__triangle{display:none;}.ui89-date-time-picker .react-datepicker{color:var(--ui89-scene-text-color);background:var(--ui89-scene-bg-color);border:1px solid currentColor;border-radius:0;box-shadow:var(--ui89-box-shadow);}.ui89-date-time-picker .react-datepicker__current-month{margin-top:calc(var(--ui89-safe-space) / 2);margin-bottom:calc(var(--ui89-safe-space) / 2);}.ui89-date-time-picker .react-datepicker__current-month,.ui89-date-time-picker .react-datepicker-time__header,.ui89-date-time-picker .react-datepicker-year-header{color:currentColor;}.ui89-date-time-picker .react-datepicker__day-name,.ui89-date-time-picker .react-datepicker__day,.ui89-date-time-picker .react-datepicker__time-name{color:currentColor;}.ui89-date-time-picker .react-datepicker__day--outside-month{color:var(--ui89-scene-text-subtle-color);}.ui89-date-time-picker .react-datepicker__header{background:transparent;border:0;}.ui89-date-time-picker .react-datepicker__time-container .react-datepicker__time{background:transparent;}.ui89-date-time-picker .react-datepicker__day--keyboard-selected,.ui89-date-time-picker .react-datepicker__month-text--keyboard-selected,.ui89-date-time-picker .react-datepicker__quarter-text--keyboard-selected,.ui89-date-time-picker .react-datepicker__year-text--keyboard-selected{color:var(--ui89-theme-secondary-text-color);background:var(--ui89-theme-secondary-bg-color);}.ui89-date-time-picker .react-datepicker__day--selected,.ui89-date-time-picker .react-datepicker__day--in-selecting-range,.ui89-date-time-picker .react-datepicker__day--in-range,.ui89-date-time-picker .react-datepicker__month-text--selected,.ui89-date-time-picker .react-datepicker__month-text--in-selecting-range,.ui89-date-time-picker .react-datepicker__month-text--in-range,.ui89-date-time-picker .react-datepicker__quarter-text--selected,.ui89-date-time-picker .react-datepicker__quarter-text--in-selecting-range,.ui89-date-time-picker .react-datepicker__quarter-text--in-range,.ui89-date-time-picker .react-datepicker__year-text--selected,.ui89-date-time-picker .react-datepicker__year-text--in-selecting-range,.ui89-date-time-picker .react-datepicker__year-text--in-range{border-radius:0;color:var(--ui89-theme-primary-text-color);background:var(--ui89-theme-primary-bg-color);}.ui89-date-time-picker .react-datepicker__day--selected:not([aria-disabled="true"]):hover,.ui89-date-time-picker .react-datepicker__day--in-selecting-range:not([aria-disabled="true"]):hover,.ui89-date-time-picker .react-datepicker__day--in-range:not([aria-disabled="true"]):hover,.ui89-date-time-picker .react-datepicker__month-text--selected:not([aria-disabled="true"]):hover,.ui89-date-time-picker .react-datepicker__month-text--in-selecting-range:not([aria-disabled="true"]):hover,.ui89-date-time-picker .react-datepicker__month-text--in-range:not([aria-disabled="true"]):hover,.ui89-date-time-picker .react-datepicker__quarter-text--selected:not([aria-disabled="true"]):hover,.ui89-date-time-picker .react-datepicker__quarter-text--in-selecting-range:not([aria-disabled="true"]):hover,.ui89-date-time-picker .react-datepicker__quarter-text--in-range:not([aria-disabled="true"]):hover,.ui89-date-time-picker .react-datepicker__year-text--selected:not([aria-disabled="true"]):hover,.ui89-date-time-picker .react-datepicker__year-text--in-selecting-range:not([aria-disabled="true"]):hover,.ui89-date-time-picker .react-datepicker__year-text--in-range:not([aria-disabled="true"]):hover{color:var(--ui89-theme-primary-text-color);background:var(--ui89-theme-primary-bg-color);}.ui89-date-time-picker .react-datepicker__day:not([aria-disabled="true"]):hover,.ui89-date-time-picker .react-datepicker__month-text:not([aria-disabled="true"]):hover,.ui89-date-time-picker .react-datepicker__quarter-text:not([aria-disabled="true"]):hover,.ui89-date-time-picker .react-datepicker__year-text:not([aria-disabled="true"]):hover{border-radius:0;color:var(--ui89-theme-secondary-text-color);background:var(--ui89-theme-secondary-bg-color);}.ui89-date-time-picker .react-datepicker__month-container{border-right:1px solid currentColor;}.ui89-date-time-picker .react-datepicker__time-container{border-left:0;}.ui89-date-time-picker .react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{height:auto;}.ui89-date-time-picker .react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected{color:var(--ui89-theme-primary-text-color);background:var(--ui89-theme-primary-bg-color);}.ui89-date-time-picker .react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover{color:var(--ui89-theme-secondary-text-color);background:var(--ui89-theme-secondary-bg-color);}
|
package/dist/esm/index.js
CHANGED
|
@@ -7,6 +7,10 @@ import { toast, ToastContainer } from 'react-toastify';
|
|
|
7
7
|
import { VariableSizeGrid } from 'react-window';
|
|
8
8
|
import AutoSizer from 'react-virtualized-auto-sizer';
|
|
9
9
|
|
|
10
|
+
const sheet$w = new CSSStyleSheet();sheet$w.replaceSync(":root{--ui89-palette-black:#000000;--ui89-palette-dark-blue:#0000aa;--ui89-palette-dark-green:#00aa00;--ui89-palette-dark-cyan:#00aaaa;--ui89-palette-dark-red:#aa0000;--ui89-palette-dark-pink:#aa00aa;--ui89-palette-dark-yellow:#aa5500;--ui89-palette-light-gray:#aaaaaa;--ui89-palette-dark-gray:#555555;--ui89-palette-light-blue:#5454ff;--ui89-palette-light-green:#55ff55;--ui89-palette-light-cyan:#55ffff;--ui89-palette-light-red:#ff5555;--ui89-palette-light-pink:#ff55ff;--ui89-palette-light-yellow:#ffff55;--ui89-palette-white:#ffffff;--ui89-theme-primary-text-color:var(--ui89-palette-black);--ui89-theme-primary-bg-color:var(--ui89-palette-light-yellow);--ui89-theme-secondary-text-color:var(--ui89-palette-black);--ui89-theme-secondary-bg-color:var(--ui89-palette-white);--ui89-theme-success-text-color:var(--ui89-palette-white);--ui89-theme-success-bg-color:var(--ui89-palette-dark-green);--ui89-theme-info-text-color:var(--ui89-palette-white);--ui89-theme-info-bg-color:var(--ui89-palette-light-blue);--ui89-theme-warning-text-color:var(--ui89-palette-white);--ui89-theme-warning-bg-color:var(--ui89-palette-dark-yellow);--ui89-theme-danger-text-color:var(--ui89-palette-white);--ui89-theme-danger-bg-color:var(--ui89-palette-dark-red);--ui89-safe-space:8px;--ui89-input-height:32px;--ui89-font-size-huge:32px;--ui89-font-size-big:20px;--ui89-font-size-normal:16px;--ui89-font-size-small:14px;--ui89-font-size-tiny:10px;--ui89-input-bg-color:var(--ui89-palette-black);--ui89-input-text-color:var(--ui89-palette-light-yellow);--ui89-animation-speed:100ms;--ui89-cursor-default:default;--ui89-cursor-pointer:pointer;--ui89-box-shadow:10px 10px 0px black;}");
|
|
11
|
+
|
|
12
|
+
const sheet$v = new CSSStyleSheet();sheet$v.replaceSync(".ui89-toaster::before{content:\"\";position:absolute;inset:0;border:var(--ui89-toaster-border-width) solid var(--ui89-chosen-theme-text-color);margin:var(--ui89-safe-space);}.ui89-toaster::after{content:\"\";display:block;position:absolute;top:0;left:50%;transform:translateX(-50%);background:var(--ui89-chosen-theme-bg-color);color:var(--ui89-chosen-theme-text-color);padding:0 var(--ui89-safe-space);}.ui89-toaster.Toastify__toast--default{--ui89-toaster-border-width:1px;display:block;min-height:auto;padding:calc(var(--ui89-safe-space) * 2 + var(--ui89-toaster-border-width));border-radius:0;box-shadow:var(--ui89-box-shadow);background:var(--ui89-chosen-theme-bg-color);color:var(--ui89-chosen-theme-text-color);}.ui89-toaster .Toastify__progress-bar--wrp{border-radius:0;}");
|
|
13
|
+
|
|
10
14
|
var Ui89Theme;
|
|
11
15
|
(function (Ui89Theme) {
|
|
12
16
|
Ui89Theme["primary"] = "primary";
|
|
@@ -22,13 +26,13 @@ var Ui89Look;
|
|
|
22
26
|
Ui89Look["side"] = "side";
|
|
23
27
|
})(Ui89Look || (Ui89Look = {}));
|
|
24
28
|
|
|
25
|
-
|
|
29
|
+
const sheet$u = new CSSStyleSheet();sheet$u.replaceSync(".breadcrumbs{display:flex;flex-direction:row-reverse;justify-content:flex-end;overflow:hidden;padding:var(--ui89-safe-space);}.breadcrumbsItem{display:block;color:var(--ui89-chosen-theme-text-color);padding-left:calc(var(--ui89-safe-space) * 3);padding-right:calc(var(--ui89-safe-space) * 2);margin:calc(var(--ui89-safe-space) * -1);position:relative;clip-path:polygon(0% 0%,calc(100% - var(--ui89-safe-space)) 0%,100% 50%,calc(100% - var(--ui89-safe-space)) 100%,0% 100%);animation:appear var(--ui89-animation-speed);}.breadcrumbsItem:last-child{padding-left:calc(var(--ui89-safe-space) * 2);}@keyframes appear{from{transform:translateX(-100%);}to{transform:translateX(0%);}}.breadcrumbsItemBackground{position:absolute;z-index:-1;inset:0;background-color:var(--ui89-chosen-theme-bg-color);filter:brightness(calc(1 - var(--ui89-index) * 0.1));}");
|
|
26
30
|
|
|
27
|
-
|
|
31
|
+
const sheet$t = new CSSStyleSheet();sheet$t.replaceSync(".big{font-family:monospace;font-size:var(--ui89-font-size-big);line-height:25px;}.normal{font-family:monospace;font-size:var(--ui89-font-size-normal);line-height:16px;}.normalBold{font-family:monospace;font-size:var(--ui89-font-size-normal);line-height:16px;font-weight:bold;}.small{font-family:monospace;font-size:var(--ui89-font-size-small);line-height:16px;}.smallBold{font-family:monospace;font-size:var(--ui89-font-size-small);line-height:16px;font-weight:bold;}.special{font-family:monospace;font-size:var(--ui89-font-size-small);font-weight:bold;}");
|
|
28
32
|
|
|
29
|
-
|
|
33
|
+
const sheet$s = new CSSStyleSheet();sheet$s.replaceSync(".a{text-decoration:none;}");
|
|
30
34
|
|
|
31
|
-
|
|
35
|
+
const sheet$r = new CSSStyleSheet();sheet$r.replaceSync(".primary{--ui89-chosen-theme-text-color:var(--ui89-theme-primary-text-color);--ui89-chosen-theme-bg-color:var(--ui89-theme-primary-bg-color);}.secondary{--ui89-chosen-theme-text-color:var(--ui89-theme-secondary-text-color);--ui89-chosen-theme-bg-color:var(--ui89-theme-secondary-bg-color);}.info{--ui89-chosen-theme-text-color:var(--ui89-theme-info-text-color);--ui89-chosen-theme-bg-color:var(--ui89-theme-info-bg-color);}.success{--ui89-chosen-theme-text-color:var(--ui89-theme-success-text-color);--ui89-chosen-theme-bg-color:var(--ui89-theme-success-bg-color);}.warning{--ui89-chosen-theme-text-color:var(--ui89-theme-warning-text-color);--ui89-chosen-theme-bg-color:var(--ui89-theme-warning-bg-color);}.danger{--ui89-chosen-theme-text-color:var(--ui89-theme-danger-text-color);--ui89-chosen-theme-bg-color:var(--ui89-theme-danger-bg-color);}");
|
|
32
36
|
|
|
33
37
|
const Ui89OverrideContext = createContext({});
|
|
34
38
|
const Ui89OverrideProvider = ({ routerPush, children, }) => {
|
|
@@ -56,22 +60,22 @@ function Ui89BreadcrumbsItem({ index, item, onSelect, }) {
|
|
|
56
60
|
}
|
|
57
61
|
}
|
|
58
62
|
};
|
|
59
|
-
return (React__default.createElement("a", { className: `${
|
|
60
|
-
React__default.createElement("div", { className:
|
|
63
|
+
return (React__default.createElement("a", { className: `${sheet$s.a} ${sheet$u.breadcrumbsItem}`, href: item.url, style: style, onClick: onClick },
|
|
64
|
+
React__default.createElement("div", { className: sheet$u.breadcrumbsItemBackground }),
|
|
61
65
|
item.label));
|
|
62
66
|
}
|
|
63
67
|
function Ui89Breadcrumbs({ theme = Ui89Theme.primary, items, onSelect, }) {
|
|
64
|
-
return (React__default.createElement("div", { className: `${
|
|
68
|
+
return (React__default.createElement("div", { className: `${sheet$u.breadcrumbs} ${sheet$t.special} ${sheet$r[theme]}` }, [...items.entries()].reverse().map(([index, item]) => (React__default.createElement(Ui89BreadcrumbsItem, { key: index, index: index, item: item, onSelect: onSelect })))));
|
|
65
69
|
}
|
|
66
70
|
|
|
67
|
-
|
|
71
|
+
const sheet$q = new CSSStyleSheet();sheet$q.replaceSync(".container{display:inline-grid;height:fit-content;}.container--size-standard .button{height:22px;padding:0 calc(var(--ui89-safe-space) * 2);min-width:60px;}.container--size-square{width:fit-content;}.container--size-square .button{width:22px;height:22px;flex-basis:22px;overflow:hidden;}.button{display:inline-flex;justify-content:center;align-items:center;border:0;color:var(--ui89-chosen-theme-text-color);background-color:var(--ui89-chosen-theme-bg-color);border-radius:1px;font-weight:bold;user-select:none;text-align:center;box-sizing:border-box;border:1px solid #00000010;transition:transform var(--ui89-animation-speed);position:relative;cursor:var(--ui89-cursor-pointer);}.button:before{position:absolute;inset:0;}.block{display:flex;}.button:hover:not(.disabled):not(.active):before{content:\"\";background-color:#ffffff40;cursor:var(--ui89-cursor-pointer);}.button:active:not(.disabled),.active{transform:translate3d(calc(var(--ui89-safe-space) / 2),calc(var(--ui89-safe-space) / 2),0);}.button:active:not(.disabled):not(.active):before{content:none;background-color:#00000040;cursor:var(--ui89-cursor-pointer);}.disabled{opacity:0.5;cursor:var(--ui89-cursor-default);}.click{position:absolute;inset:0;}.button:active:not(.disabled)>.click,.active>.click{transform:translate3d(calc(var(--ui89-safe-space) / 2 * -1),calc(var(--ui89-safe-space) / 2 * -1),0);}");
|
|
68
72
|
|
|
69
|
-
|
|
73
|
+
const sheet$p = new CSSStyleSheet();sheet$p.replaceSync(".hoverShadow{display:grid;padding-right:var(--ui89-safe-space);padding-bottom:var(--ui89-safe-space);position:relative;}.hoverShadowRight{display:block;position:absolute;right:0;bottom:0;height:calc(100% - var(--ui89-safe-space));width:var(--ui89-safe-space);box-sizing:border-box;background:black;z-index:0;}.hoverShadowBottom{display:block;position:absolute;right:0;bottom:0;width:calc(100% - var(--ui89-safe-space));height:var(--ui89-safe-space);box-sizing:border-box;background:black;z-index:0;}");
|
|
70
74
|
|
|
71
75
|
function HoverShadow({ children, }) {
|
|
72
|
-
return (React__default.createElement("span", { className:
|
|
73
|
-
React__default.createElement("span", { className:
|
|
74
|
-
React__default.createElement("span", { className:
|
|
76
|
+
return (React__default.createElement("span", { className: sheet$p.hoverShadow },
|
|
77
|
+
React__default.createElement("span", { className: sheet$p.hoverShadowBottom }),
|
|
78
|
+
React__default.createElement("span", { className: sheet$p.hoverShadowRight }),
|
|
75
79
|
children));
|
|
76
80
|
}
|
|
77
81
|
|
|
@@ -130,52 +134,56 @@ function Ui89Button({ theme = Ui89Theme.primary, size = Ui89ButtonPropsSize.stan
|
|
|
130
134
|
}
|
|
131
135
|
}
|
|
132
136
|
let containerClass = [
|
|
133
|
-
|
|
134
|
-
|
|
137
|
+
sheet$q.container,
|
|
138
|
+
sheet$q["container--size-" + size],
|
|
135
139
|
].join(" ");
|
|
136
140
|
let buttonClass = [
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
activated ?
|
|
141
|
-
block ?
|
|
142
|
-
disabled ?
|
|
143
|
-
clicking ?
|
|
141
|
+
sheet$q.button,
|
|
142
|
+
sheet$t.special,
|
|
143
|
+
sheet$r[theme],
|
|
144
|
+
activated ? sheet$q.active : undefined,
|
|
145
|
+
block ? sheet$q.block : undefined,
|
|
146
|
+
disabled ? sheet$q.disabled : undefined,
|
|
147
|
+
clicking ? sheet$q.active : undefined,
|
|
144
148
|
].join(" ");
|
|
145
149
|
if (href) {
|
|
146
150
|
return (React__default.createElement("span", { className: containerClass },
|
|
147
151
|
React__default.createElement(HoverShadow, null,
|
|
148
|
-
React__default.createElement("a", { className: `${
|
|
149
|
-
React__default.createElement("span", { className:
|
|
150
|
-
React__default.createElement("span", { className:
|
|
152
|
+
React__default.createElement("a", { className: `${sheet$s.a} ${buttonClass}`, role: "button", href: href, onClick: onAnchorClick },
|
|
153
|
+
React__default.createElement("span", { className: sheet$q.click }),
|
|
154
|
+
React__default.createElement("span", { className: sheet$q.buttonContent }, children)))));
|
|
151
155
|
}
|
|
152
156
|
else {
|
|
153
157
|
return (React__default.createElement("span", { className: containerClass },
|
|
154
158
|
React__default.createElement(HoverShadow, null,
|
|
155
159
|
React__default.createElement("button", { className: buttonClass, type: "button", onClick: onButtonClick, disabled: localDisabled },
|
|
156
|
-
React__default.createElement("span", { className:
|
|
157
|
-
React__default.createElement("span", { className:
|
|
160
|
+
React__default.createElement("span", { className: sheet$q.click }),
|
|
161
|
+
React__default.createElement("span", { className: sheet$q.buttonContent }, children)))));
|
|
158
162
|
}
|
|
159
163
|
}
|
|
160
164
|
|
|
161
|
-
|
|
165
|
+
const sheet$o = new CSSStyleSheet();sheet$o.replaceSync(".container{background:var(--ui89-scene-card-bg-color);color:var(--ui89-scene-card-text-color);border-radius:var(--ui89-box-border-radius);position:relative;box-shadow:rgb(0 0 0 / 5%) 0px 1px 2px 0px;border-top:calc(var(--ui89-safe-space)) solid #ffffff20;border-left:calc(var(--ui89-safe-space)) solid #ffffff20;border-right:calc(var(--ui89-safe-space)) solid #00000040;border-bottom:calc(var(--ui89-safe-space)) solid #00000040;padding:calc(var(--ui89-safe-space) / 4) calc(var(--ui89-safe-space) / 2);border:1px solid var(--ui89-scene-card-text-color);display:flex;flex-direction:column;}.container>*{flex:1;}.containerHasTop{margin-top:var(--ui89-safe-space);}.inside{border:1px solid white;padding:calc(var(--ui89-safe-space));}.topLeftCenter{position:absolute;bottom:100%;left:0;padding-left:var(--ui89-safe-space);transform:translateY(50%);}.topCenter{position:absolute;top:0;transform:translateY(-50%);left:var(--ui89-safe-space);right:var(--ui89-safe-space);display:flex;justify-content:center;}.cardHorizontalConnection{margin:0 calc(var(--ui89-safe-space) * -1);background:var(--ui89-scene-card-bg-color);}.cardHorizontalConnection--overflow{margin:0 calc(var(--ui89-safe-space) * -1 - 1px);}");
|
|
162
166
|
|
|
163
167
|
function Ui89Card({ topLeftCenter, topCenter, children, }) {
|
|
164
168
|
const hasTopContent = topLeftCenter || topCenter;
|
|
165
|
-
return (React__default.createElement("div", { className: `${
|
|
166
|
-
React__default.createElement("div", { className:
|
|
167
|
-
topLeftCenter && (React__default.createElement("div", { className:
|
|
168
|
-
topCenter && React__default.createElement("div", { className:
|
|
169
|
+
return (React__default.createElement("div", { className: `${sheet$o.container} ${hasTopContent ? sheet$o.containerHasTop : ""}` },
|
|
170
|
+
React__default.createElement("div", { className: sheet$o.inside },
|
|
171
|
+
topLeftCenter && (React__default.createElement("div", { className: sheet$o.topLeftCenter }, topLeftCenter)),
|
|
172
|
+
topCenter && React__default.createElement("div", { className: sheet$o.topCenter }, topCenter),
|
|
169
173
|
hasTopContent && React__default.createElement("div", { className: "space-vertical-1" }),
|
|
170
174
|
children,
|
|
171
175
|
hasTopContent && React__default.createElement("div", { className: "space-vertical-1" }))));
|
|
172
176
|
}
|
|
173
177
|
|
|
174
178
|
function Ui89CardHorizontalConnection({ children, overflow, }) {
|
|
175
|
-
return (React__default.createElement("div", { className: `${
|
|
179
|
+
return (React__default.createElement("div", { className: `${sheet$o.cardHorizontalConnection} ${overflow ? sheet$o["cardHorizontalConnection--overflow"] : ""}` }, children));
|
|
176
180
|
}
|
|
177
181
|
|
|
178
|
-
var inputBoxStyles = ".inputBox{box-sizing:border-box;display:block;width:100%;height:var(--ui89-input-height);line-height:var(--ui89-input-height);padding:0 var(--ui89-safe-space);border:0;border-radius:0;outline:none;background:var(--ui89-input-bg-color);color:var(--ui89-input-text-color);}.inputBox--unselectable{user-select:none;}.inputBox--clickable{cursor:var(--ui89-cursor-pointer);}";
|
|
182
|
+
const sheet$n = new CSSStyleSheet();sheet$n.replaceSync("@charset \"UTF-8\";.react-datepicker__navigation-icon::before,.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{border-color:#ccc;border-style:solid;border-width:3px 3px 0 0;content:\"\";display:block;height:9px;position:absolute;top:6px;width:9px;}.react-datepicker-wrapper{display:inline-block;padding:0;border:0;}.react-datepicker{font-family:\"Helvetica Neue\",helvetica,arial,sans-serif;font-size:0.8rem;background-color:#fff;color:#000;border:1px solid #aeaeae;border-radius:0.3rem;display:inline-block;position:relative;line-height:initial;}.react-datepicker--time-only .react-datepicker__time-container{border-left:0;}.react-datepicker--time-only .react-datepicker__time,.react-datepicker--time-only .react-datepicker__time-box{border-bottom-left-radius:0.3rem;border-bottom-right-radius:0.3rem;}.react-datepicker-popper{z-index:1;line-height:0;}.react-datepicker-popper .react-datepicker__triangle{stroke:#aeaeae;}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0;}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle{fill:#fff;color:#fff;}.react-datepicker__header{text-align:center;background-color:#f0f0f0;border-bottom:1px solid #aeaeae;border-top-left-radius:0.3rem;padding:8px 0;position:relative;}.react-datepicker__header--time{padding-bottom:8px;padding-left:5px;padding-right:5px;}.react-datepicker__header--time:not(.react-datepicker__header--time--only){border-top-left-radius:0;}.react-datepicker__header:not(.react-datepicker__header--has-time-select){border-top-right-radius:0.3rem;}.react-datepicker__year-dropdown-container--select,.react-datepicker__month-dropdown-container--select,.react-datepicker__month-year-dropdown-container--select,.react-datepicker__year-dropdown-container--scroll,.react-datepicker__month-dropdown-container--scroll,.react-datepicker__month-year-dropdown-container--scroll{display:inline-block;margin:0 15px;}.react-datepicker__current-month,.react-datepicker-time__header,.react-datepicker-year-header{margin-top:0;color:#000;font-weight:bold;font-size:0.944rem;}h2.react-datepicker__current-month{padding:0;margin:0;}.react-datepicker-time__header{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;}.react-datepicker__navigation{align-items:center;background:none;display:flex;justify-content:center;text-align:center;cursor:pointer;position:absolute;top:2px;padding:0;border:none;z-index:1;height:32px;width:32px;text-indent:-999em;overflow:hidden;}.react-datepicker__navigation--previous{left:2px;}.react-datepicker__navigation--next{right:2px;}.react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:85px;}.react-datepicker__navigation--years{position:relative;top:0;display:block;margin-left:auto;margin-right:auto;}.react-datepicker__navigation--years-previous{top:4px;}.react-datepicker__navigation--years-upcoming{top:-4px;}.react-datepicker__navigation:hover *::before{border-color:rgb(165.75,165.75,165.75);}.react-datepicker__navigation-icon{position:relative;top:-1px;font-size:20px;width:0;}.react-datepicker__navigation-icon--next{left:-2px;}.react-datepicker__navigation-icon--next::before{transform:rotate(45deg);left:-7px;}.react-datepicker__navigation-icon--previous{right:-2px;}.react-datepicker__navigation-icon--previous::before{transform:rotate(225deg);right:-7px;}.react-datepicker__month-container{float:left;}.react-datepicker__year{margin:0.4rem;text-align:center;}.react-datepicker__year-wrapper{display:flex;flex-wrap:wrap;max-width:180px;}.react-datepicker__year .react-datepicker__year-text{display:inline-block;width:4rem;margin:2px;}.react-datepicker__month{margin:0.4rem;text-align:center;}.react-datepicker__month .react-datepicker__month-text,.react-datepicker__month .react-datepicker__quarter-text{display:inline-block;width:4rem;margin:2px;}.react-datepicker__input-time-container{clear:both;width:100%;float:left;margin:5px 0 10px 15px;text-align:left;}.react-datepicker__input-time-container .react-datepicker-time__caption{display:inline-block;}.react-datepicker__input-time-container .react-datepicker-time__input-container{display:inline-block;}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input{display:inline-block;margin-left:10px;}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input{width:auto;}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-inner-spin-button,.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0;}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]{-moz-appearance:textfield;}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__delimiter{margin-left:5px;display:inline-block;}.react-datepicker__time-container{float:right;border-left:1px solid #aeaeae;width:85px;}.react-datepicker__time-container--with-today-button{display:inline;border:1px solid #aeaeae;border-radius:0.3rem;position:absolute;right:-87px;top:0;}.react-datepicker__time-container .react-datepicker__time{position:relative;background:white;border-bottom-right-radius:0.3rem;}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{width:85px;overflow-x:hidden;margin:0 auto;text-align:center;border-bottom-right-radius:0.3rem;}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{list-style:none;margin:0;height:calc(195px + 1.7rem / 2);overflow-y:scroll;padding-right:0;padding-left:0;width:100%;box-sizing:content-box;}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{height:30px;padding:5px 10px;white-space:nowrap;}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover{cursor:pointer;background-color:#f0f0f0;}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected{background-color:#216ba5;color:white;font-weight:bold;}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected:hover{background-color:#216ba5;}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled{color:#ccc;}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled:hover{cursor:default;background-color:transparent;}.react-datepicker__week-number{color:#ccc;display:inline-block;width:1.7rem;line-height:1.7rem;text-align:center;margin:0.166rem;}.react-datepicker__week-number.react-datepicker__week-number--clickable{cursor:pointer;}.react-datepicker__week-number.react-datepicker__week-number--clickable:not(.react-datepicker__week-number--selected):hover{border-radius:0.3rem;background-color:#f0f0f0;}.react-datepicker__week-number--selected{border-radius:0.3rem;background-color:#216ba5;color:#fff;}.react-datepicker__week-number--selected:hover{background-color:rgb(28.75,93.2196969697,143.75);}.react-datepicker__day-names{white-space:nowrap;margin-bottom:-8px;}.react-datepicker__week{white-space:nowrap;}.react-datepicker__day-name,.react-datepicker__day,.react-datepicker__time-name{color:#000;display:inline-block;width:1.7rem;line-height:1.7rem;text-align:center;margin:0.166rem;}.react-datepicker__day,.react-datepicker__month-text,.react-datepicker__quarter-text,.react-datepicker__year-text{cursor:pointer;}.react-datepicker__day:not([aria-disabled=true]):hover,.react-datepicker__month-text:not([aria-disabled=true]):hover,.react-datepicker__quarter-text:not([aria-disabled=true]):hover,.react-datepicker__year-text:not([aria-disabled=true]):hover{border-radius:0.3rem;background-color:#f0f0f0;}.react-datepicker__day--today,.react-datepicker__month-text--today,.react-datepicker__quarter-text--today,.react-datepicker__year-text--today{font-weight:bold;}.react-datepicker__day--highlighted,.react-datepicker__month-text--highlighted,.react-datepicker__quarter-text--highlighted,.react-datepicker__year-text--highlighted{border-radius:0.3rem;background-color:#3dcc4a;color:#fff;}.react-datepicker__day--highlighted:not([aria-disabled=true]):hover,.react-datepicker__month-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__year-text--highlighted:not([aria-disabled=true]):hover{background-color:rgb(49.8551020408,189.6448979592,62.5632653061);}.react-datepicker__day--highlighted-custom-1,.react-datepicker__month-text--highlighted-custom-1,.react-datepicker__quarter-text--highlighted-custom-1,.react-datepicker__year-text--highlighted-custom-1{color:magenta;}.react-datepicker__day--highlighted-custom-2,.react-datepicker__month-text--highlighted-custom-2,.react-datepicker__quarter-text--highlighted-custom-2,.react-datepicker__year-text--highlighted-custom-2{color:green;}.react-datepicker__day--holidays,.react-datepicker__month-text--holidays,.react-datepicker__quarter-text--holidays,.react-datepicker__year-text--holidays{position:relative;border-radius:0.3rem;background-color:#ff6803;color:#fff;}.react-datepicker__day--holidays .overlay,.react-datepicker__month-text--holidays .overlay,.react-datepicker__quarter-text--holidays .overlay,.react-datepicker__year-text--holidays .overlay{position:absolute;bottom:100%;left:50%;transform:translateX(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity 0.3s ease-in-out;}.react-datepicker__day--holidays:not([aria-disabled=true]):hover,.react-datepicker__month-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__year-text--holidays:not([aria-disabled=true]):hover{background-color:rgb(207,82.9642857143,0);}.react-datepicker__day--holidays:hover .overlay,.react-datepicker__month-text--holidays:hover .overlay,.react-datepicker__quarter-text--holidays:hover .overlay,.react-datepicker__year-text--holidays:hover .overlay{visibility:visible;opacity:1;}.react-datepicker__day--selected,.react-datepicker__day--in-selecting-range,.react-datepicker__day--in-range,.react-datepicker__month-text--selected,.react-datepicker__month-text--in-selecting-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--selected,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--selected,.react-datepicker__year-text--in-selecting-range,.react-datepicker__year-text--in-range{border-radius:0.3rem;background-color:#216ba5;color:#fff;}.react-datepicker__day--selected:not([aria-disabled=true]):hover,.react-datepicker__day--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__day--in-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-range:not([aria-disabled=true]):hover{background-color:rgb(28.75,93.2196969697,143.75);}.react-datepicker__day--keyboard-selected,.react-datepicker__month-text--keyboard-selected,.react-datepicker__quarter-text--keyboard-selected,.react-datepicker__year-text--keyboard-selected{border-radius:0.3rem;background-color:rgb(186.25,217.0833333333,241.25);color:rgb(0,0,0);}.react-datepicker__day--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--keyboard-selected:not([aria-disabled=true]):hover{background-color:rgb(28.75,93.2196969697,143.75);}.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__month-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__quarter-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__year-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range){background-color:rgba(33,107,165,0.5);}.react-datepicker__month--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range){background-color:#f0f0f0;color:#000;}.react-datepicker__day--disabled,.react-datepicker__month-text--disabled,.react-datepicker__quarter-text--disabled,.react-datepicker__year-text--disabled{cursor:default;color:#ccc;}.react-datepicker__day--disabled .overlay,.react-datepicker__month-text--disabled .overlay,.react-datepicker__quarter-text--disabled .overlay,.react-datepicker__year-text--disabled .overlay{position:absolute;bottom:70%;left:50%;transform:translateX(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity 0.3s ease-in-out;}.react-datepicker__input-container{position:relative;display:inline-block;width:100%;}.react-datepicker__input-container .react-datepicker__calendar-icon{position:absolute;padding:0.5rem;box-sizing:content-box;}.react-datepicker__view-calendar-icon input{padding:6px 10px 5px 25px;}.react-datepicker__year-read-view,.react-datepicker__month-read-view,.react-datepicker__month-year-read-view{border:1px solid transparent;border-radius:0.3rem;position:relative;}.react-datepicker__year-read-view:hover,.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover{cursor:pointer;}.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__month-read-view--down-arrow{border-top-color:rgb(178.5,178.5,178.5);}.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{transform:rotate(135deg);right:-16px;top:0;}.react-datepicker__year-dropdown,.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown{background-color:#f0f0f0;position:absolute;width:50%;left:25%;top:30px;z-index:1;text-align:center;border-radius:0.3rem;border:1px solid #aeaeae;}.react-datepicker__year-dropdown:hover,.react-datepicker__month-dropdown:hover,.react-datepicker__month-year-dropdown:hover{cursor:pointer;}.react-datepicker__year-dropdown--scrollable,.react-datepicker__month-dropdown--scrollable,.react-datepicker__month-year-dropdown--scrollable{height:150px;overflow-y:scroll;}.react-datepicker__year-option,.react-datepicker__month-option,.react-datepicker__month-year-option{line-height:20px;width:100%;display:block;margin-left:auto;margin-right:auto;}.react-datepicker__year-option:first-of-type,.react-datepicker__month-option:first-of-type,.react-datepicker__month-year-option:first-of-type{border-top-left-radius:0.3rem;border-top-right-radius:0.3rem;}.react-datepicker__year-option:last-of-type,.react-datepicker__month-option:last-of-type,.react-datepicker__month-year-option:last-of-type{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-bottom-left-radius:0.3rem;border-bottom-right-radius:0.3rem;}.react-datepicker__year-option:hover,.react-datepicker__month-option:hover,.react-datepicker__month-year-option:hover{background-color:#ccc;}.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming{border-bottom-color:rgb(178.5,178.5,178.5);}.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous{border-top-color:rgb(178.5,178.5,178.5);}.react-datepicker__year-option--selected,.react-datepicker__month-option--selected,.react-datepicker__month-year-option--selected{position:absolute;left:15px;}.react-datepicker__close-icon{cursor:pointer;background-color:transparent;border:0;outline:0;padding:0 6px 0 0;position:absolute;top:0;right:0;height:100%;display:table-cell;vertical-align:middle;}.react-datepicker__close-icon::after{cursor:pointer;background-color:#216ba5;color:#fff;border-radius:50%;height:16px;width:16px;padding:2px;font-size:12px;line-height:1;text-align:center;display:table-cell;vertical-align:middle;content:\"×\";}.react-datepicker__close-icon--disabled{cursor:default;}.react-datepicker__close-icon--disabled::after{cursor:default;background-color:#ccc;}.react-datepicker__today-button{background:#f0f0f0;border-top:1px solid #aeaeae;cursor:pointer;text-align:center;font-weight:bold;padding:5px 0;clear:left;}.react-datepicker__portal{position:fixed;width:100vw;height:100vh;background-color:rgba(0,0,0,0.8);left:0;top:0;justify-content:center;align-items:center;display:flex;z-index:2147483647;}.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__time-name{width:3rem;line-height:3rem;}@media (max-width:400px),(max-height:550px){.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__time-name{width:2rem;line-height:2rem;}}.react-datepicker__portal .react-datepicker__current-month,.react-datepicker__portal .react-datepicker-time__header{font-size:1.44rem;}.react-datepicker__children-container{width:13.8rem;margin:0.4rem;padding-right:0.2rem;padding-left:0.2rem;height:auto;}.react-datepicker__aria-live{position:absolute;clip-path:circle(0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;width:1px;white-space:nowrap;}.react-datepicker__calendar-icon{width:1em;height:1em;vertical-align:-0.125em;}");
|
|
183
|
+
|
|
184
|
+
const sheet$m = new CSSStyleSheet();sheet$m.replaceSync(".ui89-date-time-picker>.react-datepicker-wrapper{display:block;}.ui89-date-time-picker .react-datepicker__triangle{display:none;}.ui89-date-time-picker .react-datepicker{color:var(--ui89-scene-text-color);background:var(--ui89-scene-bg-color);border:1px solid currentColor;border-radius:0;box-shadow:var(--ui89-box-shadow);}.ui89-date-time-picker .react-datepicker__current-month{margin-top:calc(var(--ui89-safe-space) / 2);margin-bottom:calc(var(--ui89-safe-space) / 2);}.ui89-date-time-picker .react-datepicker__current-month,.ui89-date-time-picker .react-datepicker-time__header,.ui89-date-time-picker .react-datepicker-year-header{color:currentColor;}.ui89-date-time-picker .react-datepicker__day-name,.ui89-date-time-picker .react-datepicker__day,.ui89-date-time-picker .react-datepicker__time-name{color:currentColor;}.ui89-date-time-picker .react-datepicker__day--outside-month{color:var(--ui89-scene-text-subtle-color);}.ui89-date-time-picker .react-datepicker__header{background:transparent;border:0;}.ui89-date-time-picker .react-datepicker__time-container .react-datepicker__time{background:transparent;}.ui89-date-time-picker .react-datepicker__day--keyboard-selected,.ui89-date-time-picker .react-datepicker__month-text--keyboard-selected,.ui89-date-time-picker .react-datepicker__quarter-text--keyboard-selected,.ui89-date-time-picker .react-datepicker__year-text--keyboard-selected{color:var(--ui89-theme-secondary-text-color);background:var(--ui89-theme-secondary-bg-color);}.ui89-date-time-picker .react-datepicker__day--selected,.ui89-date-time-picker .react-datepicker__day--in-selecting-range,.ui89-date-time-picker .react-datepicker__day--in-range,.ui89-date-time-picker .react-datepicker__month-text--selected,.ui89-date-time-picker .react-datepicker__month-text--in-selecting-range,.ui89-date-time-picker .react-datepicker__month-text--in-range,.ui89-date-time-picker .react-datepicker__quarter-text--selected,.ui89-date-time-picker .react-datepicker__quarter-text--in-selecting-range,.ui89-date-time-picker .react-datepicker__quarter-text--in-range,.ui89-date-time-picker .react-datepicker__year-text--selected,.ui89-date-time-picker .react-datepicker__year-text--in-selecting-range,.ui89-date-time-picker .react-datepicker__year-text--in-range{border-radius:0;color:var(--ui89-theme-primary-text-color);background:var(--ui89-theme-primary-bg-color);}.ui89-date-time-picker .react-datepicker__day--selected:not([aria-disabled=\"true\"]):hover,.ui89-date-time-picker .react-datepicker__day--in-selecting-range:not([aria-disabled=\"true\"]):hover,.ui89-date-time-picker .react-datepicker__day--in-range:not([aria-disabled=\"true\"]):hover,.ui89-date-time-picker .react-datepicker__month-text--selected:not([aria-disabled=\"true\"]):hover,.ui89-date-time-picker .react-datepicker__month-text--in-selecting-range:not([aria-disabled=\"true\"]):hover,.ui89-date-time-picker .react-datepicker__month-text--in-range:not([aria-disabled=\"true\"]):hover,.ui89-date-time-picker .react-datepicker__quarter-text--selected:not([aria-disabled=\"true\"]):hover,.ui89-date-time-picker .react-datepicker__quarter-text--in-selecting-range:not([aria-disabled=\"true\"]):hover,.ui89-date-time-picker .react-datepicker__quarter-text--in-range:not([aria-disabled=\"true\"]):hover,.ui89-date-time-picker .react-datepicker__year-text--selected:not([aria-disabled=\"true\"]):hover,.ui89-date-time-picker .react-datepicker__year-text--in-selecting-range:not([aria-disabled=\"true\"]):hover,.ui89-date-time-picker .react-datepicker__year-text--in-range:not([aria-disabled=\"true\"]):hover{color:var(--ui89-theme-primary-text-color);background:var(--ui89-theme-primary-bg-color);}.ui89-date-time-picker .react-datepicker__day:not([aria-disabled=\"true\"]):hover,.ui89-date-time-picker .react-datepicker__month-text:not([aria-disabled=\"true\"]):hover,.ui89-date-time-picker .react-datepicker__quarter-text:not([aria-disabled=\"true\"]):hover,.ui89-date-time-picker .react-datepicker__year-text:not([aria-disabled=\"true\"]):hover{border-radius:0;color:var(--ui89-theme-secondary-text-color);background:var(--ui89-theme-secondary-bg-color);}.ui89-date-time-picker .react-datepicker__month-container{border-right:1px solid currentColor;}.ui89-date-time-picker .react-datepicker__time-container{border-left:0;}.ui89-date-time-picker .react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{height:auto;}.ui89-date-time-picker .react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected{color:var(--ui89-theme-primary-text-color);background:var(--ui89-theme-primary-bg-color);}.ui89-date-time-picker .react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover{color:var(--ui89-theme-secondary-text-color);background:var(--ui89-theme-secondary-bg-color);}");
|
|
185
|
+
|
|
186
|
+
const sheet$l = new CSSStyleSheet();sheet$l.replaceSync(".inputBox{box-sizing:border-box;display:block;width:100%;height:var(--ui89-input-height);line-height:var(--ui89-input-height);padding:0 var(--ui89-safe-space);border:0;border-radius:0;outline:none;background:var(--ui89-input-bg-color);color:var(--ui89-input-text-color);}.inputBox--unselectable{user-select:none;}.inputBox--clickable{cursor:var(--ui89-cursor-pointer);}");
|
|
179
187
|
|
|
180
188
|
function Ui89DateTimePicker(props) {
|
|
181
189
|
function datepickerOnChange(value) {
|
|
@@ -184,7 +192,7 @@ function Ui89DateTimePicker(props) {
|
|
|
184
192
|
}
|
|
185
193
|
}
|
|
186
194
|
return (React__default.createElement("span", { className: "ui89-date-time-picker" },
|
|
187
|
-
React__default.createElement(DatePicker, { className: [
|
|
195
|
+
React__default.createElement(DatePicker, { className: [sheet$l.inputBox, sheet$t.normal].join(" "), calendarClassName: sheet$t.normal, showTimeSelect: true, dateFormat: "MM/dd/yyyy HH:mm:ss", timeFormat: "HH:mm", selected: props.value, onChange: datepickerOnChange, popperPlacement: "bottom-start" })));
|
|
188
196
|
}
|
|
189
197
|
|
|
190
198
|
const TimeAnimation = ({ children }) => {
|
|
@@ -228,17 +236,17 @@ function Ui89DigitalClock({ format = "HH:mm:ss", }) {
|
|
|
228
236
|
function render({ now }) {
|
|
229
237
|
return dateFormat(now, format);
|
|
230
238
|
}
|
|
231
|
-
return (React__default.createElement("span", { className: `${
|
|
239
|
+
return (React__default.createElement("span", { className: `${sheet$t.special}` },
|
|
232
240
|
React__default.createElement(TimeAnimation, null, render)));
|
|
233
241
|
}
|
|
234
242
|
|
|
235
|
-
|
|
243
|
+
const sheet$k = new CSSStyleSheet();sheet$k.replaceSync(".container{color:var(--ui89-chosen-theme-text-color);background-color:var(--ui89-chosen-theme-bg-color);}.container--block{display:block;}");
|
|
236
244
|
|
|
237
245
|
function Ui89HighlightText({ theme, block, children, }) {
|
|
238
|
-
return (React__default.createElement("span", { className: `${
|
|
246
|
+
return (React__default.createElement("span", { className: `${sheet$k.container} ${sheet$r[theme]} ${block ? sheet$k["container--block"] : null}` }, children));
|
|
239
247
|
}
|
|
240
248
|
|
|
241
|
-
|
|
249
|
+
const sheet$j = new CSSStyleSheet();sheet$j.replaceSync(".hr{--ui89-hr-color:var(--ui89-scene-card-text-color);}.hr--straight{border-top:1px solid var(--ui89-hr-color);}.hr--dotted{border-top:1px dotted var(--ui89-hr-color);}.hr--dashed{border-top:1px dashed var(--ui89-hr-color);}.hr--double{border-top:1px solid var(--ui89-hr-color);}.hr--double .hrDouble{margin-top:4px;border-top:1px solid var(--ui89-hr-color);}.hr--use-theme{--ui89-hr-color:var(--ui89-chosen-theme-bg-color);}");
|
|
242
250
|
|
|
243
251
|
var Ui89HrPropsLook;
|
|
244
252
|
(function (Ui89HrPropsLook) {
|
|
@@ -248,13 +256,13 @@ var Ui89HrPropsLook;
|
|
|
248
256
|
Ui89HrPropsLook["double"] = "double";
|
|
249
257
|
})(Ui89HrPropsLook || (Ui89HrPropsLook = {}));
|
|
250
258
|
function Ui89Hr({ look = "straight", theme }) {
|
|
251
|
-
return (React__default.createElement("div", { className: `${
|
|
252
|
-
React__default.createElement("div", { className:
|
|
259
|
+
return (React__default.createElement("div", { className: `${sheet$j.hr} ${sheet$j[`hr--${look}`]} ${theme !== undefined ? sheet$j["hr--use-theme"] : ""} ${theme !== undefined ? sheet$r[theme] : ""}` },
|
|
260
|
+
React__default.createElement("div", { className: sheet$j.hrDouble })));
|
|
253
261
|
}
|
|
254
262
|
|
|
255
|
-
|
|
263
|
+
const sheet$i = new CSSStyleSheet();sheet$i.replaceSync(".inputFileUpload{display:flex;gap:calc(var(--ui89-safe-space) * 1);align-items:center;}.inputFileUpload__info{min-width:0;}");
|
|
256
264
|
|
|
257
|
-
|
|
265
|
+
const sheet$h = new CSSStyleSheet();sheet$h.replaceSync(".unbreakable{white-space:nowrap;}.ellipsis{overflow:hidden;text-overflow:ellipsis;}.singleLine{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.singleLine--ellipsisLeft{direction:rtl;}");
|
|
258
266
|
|
|
259
267
|
function Ui89InputFileUpload({ value, onChange, }) {
|
|
260
268
|
const inputRef = useRef(null);
|
|
@@ -279,13 +287,13 @@ function Ui89InputFileUpload({ value, onChange, }) {
|
|
|
279
287
|
inputRef.current.click();
|
|
280
288
|
}
|
|
281
289
|
return (React__default.createElement("div", null,
|
|
282
|
-
React__default.createElement("input", { ref: inputRef, className:
|
|
283
|
-
value ? (React__default.createElement("div", { className:
|
|
290
|
+
React__default.createElement("input", { ref: inputRef, className: sheet$t.special, type: "file", onChange: implOnChange, hidden: true }),
|
|
291
|
+
value ? (React__default.createElement("div", { className: sheet$i.inputFileUpload },
|
|
284
292
|
React__default.createElement(Ui89Button, { onClick: onClick }, "Change"),
|
|
285
|
-
React__default.createElement("span", { className: `${
|
|
293
|
+
React__default.createElement("span", { className: `${sheet$i.inputFileUpload__info} ${sheet$h.singleLine} ${sheet$h["singleLine--ellipsisLeft"]}`, title: value.name }, value.name))) : (React__default.createElement(Ui89Button, { onClick: onClick }, "Upload"))));
|
|
286
294
|
}
|
|
287
295
|
|
|
288
|
-
|
|
296
|
+
const sheet$g = new CSSStyleSheet();sheet$g.replaceSync(".inputSelect{position:relative;}.menu{position:absolute;top:100%;left:0;width:100%;max-height:300px;overflow:auto;display:none;background:var(--ui89-input-bg-color);color:var(--ui89-input-text-color);z-index:1;}.menuContent{display:inline-flex;flex-direction:column;min-width:100%;}.inputSelect:focus-within .menu{display:block;animation:appear var(--ui89-animation-speed);}@keyframes appear{from{transform:translateY(-5px);}to{transform:translateY(0%);}}.menuItem{display:inline-flex;align-items:center;background:var(--ui89-input-bg-color);color:var(--ui89-input-text-color);height:var(--ui89-input-height);padding:0 var(--ui89-safe-space);white-space:nowrap;user-select:none;}.menuItem:not(.menuItem--disabled){cursor:pointer;}.menuItem:not(.menuItem--disabled):hover,.menuItem.selected{background:var(--ui89-input-text-color);color:var(--ui89-input-bg-color);}.menuItem--disabled{color:var(--ui89-palette-white);}");
|
|
289
297
|
|
|
290
298
|
function Ui89InputSelect({ options, value, onChange, }) {
|
|
291
299
|
const realOptions = useMemo(() => {
|
|
@@ -321,21 +329,21 @@ function Ui89InputSelect({ options, value, onChange, }) {
|
|
|
321
329
|
function optionTitle(option) {
|
|
322
330
|
return typeof option.label === "string" ? option.label : undefined;
|
|
323
331
|
}
|
|
324
|
-
return (React__default.createElement("div", { className: `${
|
|
332
|
+
return (React__default.createElement("div", { className: `${sheet$g.inputSelect}` },
|
|
325
333
|
React__default.createElement("div", { className: [
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
334
|
+
sheet$l.inputBox,
|
|
335
|
+
sheet$l["inputBox--unselectable"],
|
|
336
|
+
sheet$l["inputBox--clickable"],
|
|
337
|
+
sheet$h.singleLine,
|
|
330
338
|
].join(" "), tabIndex: 0, title: selectedOption !== null ? optionTitle(selectedOption) : undefined }, selectedOption !== null ? React__default.createElement(React__default.Fragment, null, selectedOption.label) : React__default.createElement(React__default.Fragment, null, "Select...")),
|
|
331
|
-
React__default.createElement("div", { className: [
|
|
332
|
-
React__default.createElement("div", { className:
|
|
339
|
+
React__default.createElement("div", { className: [sheet$g.menu].join(" "), tabIndex: 0 },
|
|
340
|
+
React__default.createElement("div", { className: sheet$g.menuContent }, realOptions.length > 0 ? (realOptions.map((o) => {
|
|
333
341
|
const isSelected = selectedOption && selectedOption.value === o.value;
|
|
334
342
|
return (React__default.createElement("div", { className: [
|
|
335
|
-
|
|
336
|
-
isSelected ?
|
|
343
|
+
sheet$g.menuItem,
|
|
344
|
+
isSelected ? sheet$g.selected : null,
|
|
337
345
|
].join(" "), title: optionTitle(o), key: o.value, onClick: () => selectOption(o) }, o.label));
|
|
338
|
-
})) : (React__default.createElement("div", { className: [
|
|
346
|
+
})) : (React__default.createElement("div", { className: [sheet$g.menuItem, sheet$g["menuItem--disabled"]].join(" ") }, "<empty>"))))));
|
|
339
347
|
}
|
|
340
348
|
|
|
341
349
|
function Ui89InputPassword({ value, placeholder, onChange, }) {
|
|
@@ -348,7 +356,7 @@ function Ui89InputPassword({ value, placeholder, onChange, }) {
|
|
|
348
356
|
}
|
|
349
357
|
};
|
|
350
358
|
return (React__default.createElement("div", null,
|
|
351
|
-
React__default.createElement("input", { type: "password", className: `${
|
|
359
|
+
React__default.createElement("input", { type: "password", className: `${sheet$l.inputBox} ${sheet$t.special}`, role: "textbox", value: intermediateValue, onChange: implOnChange, placeholder: placeholder })));
|
|
352
360
|
}
|
|
353
361
|
|
|
354
362
|
let uniqueId = 0;
|
|
@@ -443,7 +451,7 @@ function Ui89InputText({ value, placeholder, autoTrim = true, onChange, onTyping
|
|
|
443
451
|
onChangeRef.current(newVal);
|
|
444
452
|
}
|
|
445
453
|
return (React__default.createElement("div", null,
|
|
446
|
-
React__default.createElement("input", { ref: inputRef, value: intermediateValue, className: `${
|
|
454
|
+
React__default.createElement("input", { ref: inputRef, value: intermediateValue, className: `${sheet$l.inputBox} ${sheet$t.special}`, type: "text", onChange: implOnChange, placeholder: placeholder })));
|
|
447
455
|
}
|
|
448
456
|
|
|
449
457
|
function stringRemoveAllWhitespace(str) {
|
|
@@ -510,7 +518,7 @@ emptyValue = null, value, min, max, onChange, precision, }) {
|
|
|
510
518
|
return (React__default.createElement(Ui89InputText, { value: intermediateValue, onChange: implOnChange, onTyping: setIsTyping }));
|
|
511
519
|
}
|
|
512
520
|
|
|
513
|
-
|
|
521
|
+
const sheet$f = new CSSStyleSheet();sheet$f.replaceSync(".link{color:currentColor;text-decoration:underline;}.link:hover{color:currentColor;}");
|
|
514
522
|
|
|
515
523
|
function Ui89LinkUnderline(props) {
|
|
516
524
|
const overrides = useUi89Overrides();
|
|
@@ -545,54 +553,54 @@ function Ui89LinkUnderline(props) {
|
|
|
545
553
|
setClicking(false);
|
|
546
554
|
}
|
|
547
555
|
}
|
|
548
|
-
let containerClass = [
|
|
549
|
-
return (React__default.createElement("a", { className: `${
|
|
556
|
+
let containerClass = [sheet$f.link].join(" ");
|
|
557
|
+
return (React__default.createElement("a", { className: `${sheet$s.a} ${containerClass}`, role: "link", href: props.href, onClick: onClick }, props.children));
|
|
550
558
|
}
|
|
551
559
|
|
|
552
|
-
|
|
560
|
+
const sheet$e = new CSSStyleSheet();sheet$e.replaceSync(".menuBar{display:flex;height:16px;color:var(--ui89-theme-primary-text-color);background:var(--ui89-theme-primary-bg-color);}.menuBarItem{cursor:var(--ui89-cursor-pointer);padding:0 calc(var(--ui89-safe-space) * 2);}.menuBarItem:hover,.menuBarItem:active{color:var(--ui89-theme-primary-bg-color);background:var(--ui89-theme-primary-text-color);}");
|
|
553
561
|
|
|
554
|
-
|
|
562
|
+
const sheet$d = new CSSStyleSheet();sheet$d.replaceSync(".container ::-webkit-scrollbar{background:var(--ui89-scene-bg-color);width:calc(var(--ui89-safe-space) * 2);}.container ::-webkit-scrollbar-track{background:var(--ui89-scene-bg-color);background:var(--ui89-palette-dark-gray);border:1px solid var(--ui89-palette-dark-gray);}.container ::-webkit-scrollbar-thumb{background:var(--ui89-palette-light-gray);border:1px solid transparent;}.container ::-webkit-scrollbar-thumb:vertical{border-top-color:var(--ui89-palette-dark-gray);border-bottom-color:var(--ui89-palette-dark-gray);}.container ::-webkit-scrollbar-thumb:horizontal{border-left-color:var(--ui89-palette-dark-gray);border-right-color:var(--ui89-palette-dark-gray);}.container ::-webkit-scrollbar-button:single-button{background-color:#bbbbbb;display:block;border-style:solid;height:calc(var(--ui89-safe-space) * 2);}.container ::-webkit-scrollbar-button:single-button:vertical:decrement{border-width:0 var(--ui89-safe-space) var(--ui89-safe-space) var(--ui89-safe-space);border-color:transparent transparent var(--ui89-palette-black) transparent;}.container ::-webkit-scrollbar-button:single-button:vertical:decrement:active{background:var(--ui89-palette-dark-gray);}.container ::-webkit-scrollbar-button:single-button:vertical:increment{border-width:var(--ui89-safe-space) var(--ui89-safe-space) 0 var(--ui89-safe-space);border-color:var(--ui89-palette-black) transparent transparent transparent;}.container ::-webkit-scrollbar-button:single-button:vertical:increment:active{background:var(--ui89-palette-dark-gray);}.container ::-webkit-scrollbar-button:single-button:horizontal:decrement{border-width:var(--ui89-safe-space) var(--ui89-safe-space) var(--ui89-safe-space) 0;border-color:transparent var(--ui89-palette-black) transparent transparent;}.container ::-webkit-scrollbar-button:single-button:horizontal:decrement:active{background:var(--ui89-palette-dark-gray);}.container ::-webkit-scrollbar-button:single-button:horizontal:increment{border-width:var(--ui89-safe-space) 0 var(--ui89-safe-space) var(--ui89-safe-space);border-color:transparent transparent transparent var(--ui89-palette-black);}.container ::-webkit-scrollbar-button:single-button:horizontal:increment:active{background:var(--ui89-palette-dark-gray);}");
|
|
555
563
|
|
|
556
564
|
function Ui89MenuBar({ items }) {
|
|
557
|
-
return (React__default.createElement("div", { className: `${
|
|
565
|
+
return (React__default.createElement("div", { className: `${sheet$e.menuBar} ${sheet$t.special} ${sheet$d.container}` }, items.map((item, index) => {
|
|
558
566
|
function onNativeClick() {
|
|
559
567
|
if (item.onClick !== undefined) {
|
|
560
568
|
item.onClick();
|
|
561
569
|
}
|
|
562
570
|
}
|
|
563
|
-
return (React__default.createElement("div", { key: index, className:
|
|
571
|
+
return (React__default.createElement("div", { key: index, className: sheet$e.menuBarItem, onClick: onNativeClick }, item.label));
|
|
564
572
|
})));
|
|
565
573
|
}
|
|
566
574
|
|
|
567
|
-
|
|
575
|
+
const sheet$c = new CSSStyleSheet();sheet$c.replaceSync(".dialog{position:fixed;inset:0px;display:none;animation:appear var(--ui89-animation-speed);}.dialog--open{display:block;}.dialogBackdrop{position:absolute;inset:0px;background-color:rgba(0,0,0,0.4);}.dialogBox{position:absolute;inset:0;border:none;border-radius:0;outline:none;margin:auto;word-break:break-word;max-height:100%;min-height:0;bottom:auto;overflow:auto;display:flex;flex-direction:column;}.spacer{min-height:0;height:100px;}.dialogBox>*:not(.spacer){flex:1 0;min-height:0;}.dialogBox--size-big{max-width:700px;}.dialogBox--size-medium{max-width:500px;}.dialogBox--size-small{max-width:300px;}@keyframes appear{from{opacity:0;}to{opacity:1;}}");
|
|
568
576
|
|
|
569
|
-
|
|
577
|
+
const sheet$b = new CSSStyleSheet();sheet$b.replaceSync(".scene{background-color:var(--ui89-scene-bg-color);color:var(--ui89-scene-text-color);overflow:visible;}");
|
|
570
578
|
|
|
571
|
-
|
|
579
|
+
const sheet$a = new CSSStyleSheet();sheet$a.replaceSync(".main{--ui89-scene-text-color:var(--ui89-palette-white);--ui89-scene-text-subtle-color:var(--ui89-palette-light-gray);--ui89-scene-bg-color:var(--ui89-palette-dark-blue);--ui89-scene-highlight-color:rgba(255,255,255,0.2);--ui89-scene-card-bg-color:var(--ui89-palette-dark-blue);--ui89-scene-card-text-color:var(--ui89-palette-white);--ui89-theme-primary-text-color:var(--ui89-palette-white);--ui89-theme-primary-bg-color:var(--ui89-palette-light-blue);--ui89-theme-secondary-text-color:var(--ui89-palette-black);--ui89-theme-secondary-bg-color:var(--ui89-palette-light-gray);}.side{--ui89-scene-text-color:var(--ui89-palette-white);--ui89-scene-text-subtle-color:var(--ui89-palette-dark-gray);--ui89-scene-bg-color:var(--ui89-palette-light-gray);--ui89-scene-highlight-color:rgba(255,255,255,0.2);--ui89-scene-card-bg-color:var(--ui89-palette-light-gray);--ui89-scene-card-text-color:var(--ui89-palette-white);--ui89-theme-primary-text-color:var(--ui89-palette-white);--ui89-theme-primary-bg-color:var(--ui89-palette-light-blue);--ui89-theme-secondary-text-color:var(--ui89-palette-black);--ui89-theme-secondary-bg-color:var(--ui89-palette-white);}");
|
|
572
580
|
|
|
573
581
|
function Ui89Scene({ look = Ui89Look.main, children }) {
|
|
574
|
-
return (React__default.createElement("div", { className: `${
|
|
582
|
+
return (React__default.createElement("div", { className: `${sheet$b.scene} ${sheet$a[look]} ${sheet$t.normal} ${sheet$d.container}` }, children));
|
|
575
583
|
}
|
|
576
584
|
|
|
577
|
-
|
|
585
|
+
const sheet$9 = new CSSStyleSheet();sheet$9.replaceSync(".gridExpandTrick{display:grid;}.gridExpandTrick>*{min-height:0;min-width:0;}");
|
|
578
586
|
|
|
579
587
|
function GridExpandTrick({ children, }) {
|
|
580
|
-
return React__default.createElement("span", { className:
|
|
588
|
+
return React__default.createElement("span", { className: sheet$9.gridExpandTrick }, children);
|
|
581
589
|
}
|
|
582
590
|
|
|
583
|
-
|
|
591
|
+
const sheet$8 = new CSSStyleSheet();sheet$8.replaceSync(".scrollContainer{overflow:auto;}");
|
|
584
592
|
|
|
585
593
|
function ScrollContainer({ children, }) {
|
|
586
|
-
return React__default.createElement("span", { className:
|
|
594
|
+
return React__default.createElement("span", { className: sheet$8.scrollContainer }, children);
|
|
587
595
|
}
|
|
588
596
|
|
|
589
597
|
const portalRoot = typeof document !== "undefined" ? document.body : null;
|
|
590
598
|
function Ui89ModalDialog({ open, size = "medium", children, topCenter, onRequestClose, }) {
|
|
591
599
|
const dialogClass = useMemo(() => {
|
|
592
|
-
return [
|
|
600
|
+
return [sheet$c.dialog, open ? sheet$c["dialog--open"] : ""].join(" ");
|
|
593
601
|
}, [size, open]);
|
|
594
602
|
const dialogBoxClass = useMemo(() => {
|
|
595
|
-
return [
|
|
603
|
+
return [sheet$c.dialogBox, sheet$c[`dialogBox--size-${size}`]].join(" ");
|
|
596
604
|
}, [size, open]);
|
|
597
605
|
function onClickBackdrop() {
|
|
598
606
|
if (onRequestClose !== undefined) {
|
|
@@ -600,9 +608,9 @@ function Ui89ModalDialog({ open, size = "medium", children, topCenter, onRequest
|
|
|
600
608
|
}
|
|
601
609
|
}
|
|
602
610
|
const vdom = (React__default.createElement("div", { className: dialogClass, role: "dialog" },
|
|
603
|
-
React__default.createElement("div", { className:
|
|
611
|
+
React__default.createElement("div", { className: sheet$c.dialogBackdrop, role: "presentation", onClick: onClickBackdrop }),
|
|
604
612
|
React__default.createElement("div", { className: dialogBoxClass },
|
|
605
|
-
React__default.createElement("div", { className:
|
|
613
|
+
React__default.createElement("div", { className: sheet$c.spacer }),
|
|
606
614
|
React__default.createElement(HoverShadow, null,
|
|
607
615
|
React__default.createElement(GridExpandTrick, null,
|
|
608
616
|
React__default.createElement(Ui89Scene, null,
|
|
@@ -611,19 +619,19 @@ function Ui89ModalDialog({ open, size = "medium", children, topCenter, onRequest
|
|
|
611
619
|
return portalRoot !== null ? createPortal(vdom, portalRoot) : vdom;
|
|
612
620
|
}
|
|
613
621
|
|
|
614
|
-
|
|
622
|
+
const sheet$7 = new CSSStyleSheet();sheet$7.replaceSync(".nameValuePair{display:flex;}.nameValuePair__nameWrapper{display:flex;flex:1;}.nameValuePair__dots{flex:1 1;min-width:calc(var(--ui89-safe-space) * 2);border-bottom:1px dashed currentColor;height:calc(1em * 0.75);margin:0 2px;}");
|
|
615
623
|
|
|
616
624
|
function Ui89NameValuePair({ name, value, leftMaxWidth, }) {
|
|
617
|
-
return (React__default.createElement("div", { className:
|
|
618
|
-
React__default.createElement("div", { className:
|
|
619
|
-
React__default.createElement("div", { className:
|
|
620
|
-
React__default.createElement("div", { className:
|
|
621
|
-
React__default.createElement("div", { className:
|
|
625
|
+
return (React__default.createElement("div", { className: sheet$7.nameValuePair },
|
|
626
|
+
React__default.createElement("div", { className: sheet$7.nameValuePair__nameWrapper, style: { maxWidth: `${leftMaxWidth}px` } },
|
|
627
|
+
React__default.createElement("div", { className: sheet$7.nameValuePair__name }, name),
|
|
628
|
+
React__default.createElement("div", { className: sheet$7.nameValuePair__dots })),
|
|
629
|
+
React__default.createElement("div", { className: sheet$7.nameValuePair__value }, value)));
|
|
622
630
|
}
|
|
623
631
|
|
|
624
632
|
const SvgShortcut = (props) => /* @__PURE__ */ React.createElement("svg", { xmlns: "http://www.w3.org/2000/svg", width: 100, height: 100, viewBox: "0 0 100 100", ...props }, /* @__PURE__ */ React.createElement("rect", { x: 0, y: 0, width: 100, height: 100, fill: "white" }), /* @__PURE__ */ React.createElement("line", { x1: 80, y1: 80, x2: 20, y2: 20, stroke: "black", strokeWidth: 15 }), /* @__PURE__ */ React.createElement("line", { x1: 20, y1: 20, x2: 50, y2: 20, stroke: "black", strokeWidth: 15, strokeLinecap: "round" }), /* @__PURE__ */ React.createElement("line", { x1: 20, y1: 20, x2: 20, y2: 50, stroke: "black", strokeWidth: 15, strokeLinecap: "round" }));
|
|
625
633
|
|
|
626
|
-
|
|
634
|
+
const sheet$6 = new CSSStyleSheet();sheet$6.replaceSync(".container{display:inline-flex;flex-direction:column;position:relative;text-align:center;box-sizing:border-box;user-select:none;cursor:var(--ui89-cursor-pointer);}.label{max-width:140px;}.container:hover{border-color:currentColor;}.container:hover .label{background:var(--ui89-scene-text-color);color:var(--ui89-scene-bg-color);}.imageContainer{display:flex;align-items:flex-end;justify-content:center;position:relative;}.image{display:block;width:140px;height:140px;}.shortcutIconContainer{position:relative;width:0;}.shortcutIcon{position:absolute;bottom:0;right:0;pointer-events:none;}");
|
|
627
635
|
|
|
628
636
|
function Ui89SpaceVertical({ gap = 1 }) {
|
|
629
637
|
const style = {
|
|
@@ -636,13 +644,13 @@ function Ui89Shortcut({ imageUrl, label, onClick = () => { }, }) {
|
|
|
636
644
|
function onNativeClick() {
|
|
637
645
|
onClick();
|
|
638
646
|
}
|
|
639
|
-
return (React__default.createElement("div", { className:
|
|
640
|
-
React__default.createElement("div", { className:
|
|
641
|
-
React__default.createElement("img", { className:
|
|
642
|
-
React__default.createElement("div", { className:
|
|
643
|
-
React__default.createElement(SvgShortcut, { className:
|
|
647
|
+
return (React__default.createElement("div", { className: sheet$6.container, onClick: onNativeClick },
|
|
648
|
+
React__default.createElement("div", { className: sheet$6.imageContainer },
|
|
649
|
+
React__default.createElement("img", { className: sheet$6.image, src: imageUrl }),
|
|
650
|
+
React__default.createElement("div", { className: sheet$6.shortcutIconContainer },
|
|
651
|
+
React__default.createElement(SvgShortcut, { className: sheet$6.shortcutIcon, width: 16, height: 16 }))),
|
|
644
652
|
React__default.createElement(Ui89SpaceVertical, { gap: 1 }),
|
|
645
|
-
React__default.createElement("div", { className: `${
|
|
653
|
+
React__default.createElement("div", { className: `${sheet$6.label} ${sheet$t.smallBold}`, onClick: onNativeClick }, label)));
|
|
646
654
|
}
|
|
647
655
|
|
|
648
656
|
function Ui89SpacePadding(props) {
|
|
@@ -656,19 +664,19 @@ function Ui89SpacePadding(props) {
|
|
|
656
664
|
return React__default.createElement("div", { style: style }, props.children);
|
|
657
665
|
}
|
|
658
666
|
|
|
659
|
-
|
|
667
|
+
const sheet$5 = new CSSStyleSheet();sheet$5.replaceSync(".navigation{display:flex;flex-wrap:wrap;}.navigation--stretch .navigationItem{flex-grow:1;}.navigationItem{color:var(--ui89-scene-text-color);background-color:var(--ui89-scene-bg-color);padding:0 calc(var(--ui89-safe-space) * 3);cursor:var(--ui89-cursor-pointer);text-align:center;}.navigationItem:hover,.navigationItemSelected{background-color:var(--ui89-scene-text-color);color:var(--ui89-scene-bg-color);}");
|
|
660
668
|
|
|
661
669
|
function Ui89Tabs({ selected, onChange = () => { }, options = [], stretch, }) {
|
|
662
670
|
function handleOnChange(value) {
|
|
663
671
|
onChange(value);
|
|
664
672
|
}
|
|
665
673
|
return (React__default.createElement("div", { className: [
|
|
666
|
-
|
|
667
|
-
stretch ?
|
|
674
|
+
sheet$5.navigation,
|
|
675
|
+
stretch ? sheet$5["navigation--stretch"] : "",
|
|
668
676
|
].join(" ") }, options.map((option) => (React__default.createElement("div", { className: [
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
selected === option.value ?
|
|
677
|
+
sheet$5.navigationItem,
|
|
678
|
+
sheet$t.smallBold,
|
|
679
|
+
selected === option.value ? sheet$5.navigationItemSelected : "",
|
|
672
680
|
].join(" "), key: option.value, onClick: () => handleOnChange(option.value) }, option.label)))));
|
|
673
681
|
}
|
|
674
682
|
|
|
@@ -686,38 +694,38 @@ function Ui89TabbedCard({ selected, onChange, options = [], }) {
|
|
|
686
694
|
React__default.createElement(React__default.Fragment, { key: renderKey }, render())));
|
|
687
695
|
}
|
|
688
696
|
|
|
689
|
-
|
|
697
|
+
const sheet$4 = new CSSStyleSheet();sheet$4.replaceSync(".container{color:var(--ui89-chosen-theme-text-color);background-color:var(--ui89-chosen-theme-bg-color);display:inline-block;padding:calc(var(--ui89-safe-space) / 2) calc(var(--ui89-safe-space) * 2);border-radius:var(--box-border-radius);line-height:1;}");
|
|
690
698
|
|
|
691
699
|
function Ui89TagBox({ theme, children }) {
|
|
692
|
-
return (React__default.createElement("div", { className: `${
|
|
700
|
+
return (React__default.createElement("div", { className: `${sheet$4.container} ${sheet$t.special} ${sheet$r[theme]}` }, children));
|
|
693
701
|
}
|
|
694
702
|
|
|
695
|
-
|
|
703
|
+
const sheet$3 = new CSSStyleSheet();sheet$3.replaceSync(".background{color:var(--ui89-chosen-theme-text-color);background-color:var(--ui89-chosen-theme-bg-color);--ui89-scene-card-bg-color:var(--ui89-chosen-theme-bg-color);--ui89-scene-card-text-color:var(--ui89-chosen-theme-text-color);}");
|
|
696
704
|
|
|
697
705
|
function Ui89ThemeBackground({ theme = Ui89Theme.primary, children, }) {
|
|
698
|
-
return (React__default.createElement("div", { className: `${
|
|
706
|
+
return (React__default.createElement("div", { className: `${sheet$3.background} ${sheet$r[theme]}` }, children));
|
|
699
707
|
}
|
|
700
708
|
|
|
701
|
-
|
|
709
|
+
const sheet$2 = new CSSStyleSheet();sheet$2.replaceSync(".container{display:flex;}.inside{min-width:0;color:var(--ui89-scene-bg-color);background-color:var(--ui89-scene-text-color);padding:0px var(--ui89-safe-space);}");
|
|
702
710
|
|
|
703
711
|
function Ui89TitleBox({ children }) {
|
|
704
|
-
return (React__default.createElement("div", { className: `${
|
|
705
|
-
React__default.createElement("div", { className: `${
|
|
712
|
+
return (React__default.createElement("div", { className: `${sheet$2.container} ${sheet$t.special}` },
|
|
713
|
+
React__default.createElement("div", { className: `${sheet$2.inside} ${sheet$h.singleLine}` }, children)));
|
|
706
714
|
}
|
|
707
715
|
|
|
708
|
-
|
|
716
|
+
const sheet$1 = new CSSStyleSheet();sheet$1.replaceSync(".container{display:flex;line-height:1;}.inside{min-width:0;border-bottom:1px solid;position:relative;padding-bottom:calc(var(--ui89-safe-space) / 2);}.inside:after{content:\"\";position:absolute;inset:0;transform:translateY(-2px);border-bottom:1px solid;z-index:0;}");
|
|
709
717
|
|
|
710
718
|
function Ui89TitleUnderline({ children }) {
|
|
711
|
-
return (React__default.createElement("div", { className: `${
|
|
712
|
-
React__default.createElement("div", { className: `${
|
|
719
|
+
return (React__default.createElement("div", { className: `${sheet$1.container} ${sheet$t.special}` },
|
|
720
|
+
React__default.createElement("div", { className: `${sheet$1.inside} ${sheet$h.singleLine}` }, children)));
|
|
713
721
|
}
|
|
714
722
|
|
|
715
723
|
function useUi89Toaster() {
|
|
716
724
|
return {
|
|
717
725
|
toast(content, options = { theme: Ui89Theme.primary }) {
|
|
718
|
-
const classNames = ["ui89-toaster",
|
|
726
|
+
const classNames = ["ui89-toaster", sheet$t.normal];
|
|
719
727
|
if (options.theme !== undefined) {
|
|
720
|
-
classNames.push(
|
|
728
|
+
classNames.push(sheet$r[options.theme]);
|
|
721
729
|
}
|
|
722
730
|
let autoClose = 5000;
|
|
723
731
|
if (options.duration !== undefined) {
|
|
@@ -743,7 +751,7 @@ function Ui89Toaster() {
|
|
|
743
751
|
return React__default.createElement(ToastContainer, null);
|
|
744
752
|
}
|
|
745
753
|
|
|
746
|
-
|
|
754
|
+
const sheet = new CSSStyleSheet();sheet.replaceSync(".table{display:flex;flex-direction:column;overflow:auto;height:100%;box-sizing:border-box;}.table>.tableBody,.table>.empty{flex:1;}.tableHeader{position:absolute;top:0;z-index:2;min-width:100%;display:flex;}.rowBorder{margin-top:-2px;border-bottom:2px solid var(--ui89-scene-text-color);position:absolute;left:0;right:0;pointer-events:none;}.empty{display:flex;align-items:center;justify-content:center;text-align:center;}.cell{display:flex;align-items:center;padding:var(--ui89-safe-space);border-bottom:2px solid var(--ui89-scene-text-color);box-sizing:border-box;overflow:hidden;background:var(--ui89-scene-bg-color);}.cell--column-first{padding-left:var(--ui89-safe-space);}.cell--column-last{padding-right:var(--ui89-safe-space);}.cell--row-first{border-top:none;}.cell--row-last{}");
|
|
747
755
|
|
|
748
756
|
const HEADER_HEIGHT = 30;
|
|
749
757
|
function Ui89VirtualTable(props) {
|
|
@@ -777,30 +785,30 @@ function Ui89VirtualTable(props) {
|
|
|
777
785
|
return columnIndex === columns.length - 1;
|
|
778
786
|
}
|
|
779
787
|
function getColumnClass(columnIndex, rowIndex) {
|
|
780
|
-
const classes = [
|
|
788
|
+
const classes = [sheet.cell];
|
|
781
789
|
if (rowIndex === 0) {
|
|
782
|
-
classes.push(
|
|
790
|
+
classes.push(sheet["cell--row-first"]);
|
|
783
791
|
}
|
|
784
792
|
if (rowIndex === rows.length) {
|
|
785
|
-
classes.push(
|
|
793
|
+
classes.push(sheet["cell--row-last"]);
|
|
786
794
|
}
|
|
787
795
|
if (columnIndex === 0) {
|
|
788
|
-
classes.push(
|
|
796
|
+
classes.push(sheet["cell--column-first"]);
|
|
789
797
|
}
|
|
790
798
|
if (isLastColumn(columnIndex)) {
|
|
791
|
-
classes.push(
|
|
799
|
+
classes.push(sheet["cell--column-last"]);
|
|
792
800
|
}
|
|
793
801
|
return classes.join(" ");
|
|
794
802
|
}
|
|
795
803
|
// This is the secret to having sticky headers.
|
|
796
804
|
const innerElementType = forwardRef(({ children, ...rest }, ref) => (React__default.createElement("div", { ref: ref, ...rest },
|
|
797
|
-
React__default.createElement("div", { className:
|
|
798
|
-
columns.map((column, index) => (React__default.createElement("div", { key: index, className: [getColumnClass(index, 0),
|
|
805
|
+
React__default.createElement("div", { className: sheet.tableHeader },
|
|
806
|
+
columns.map((column, index) => (React__default.createElement("div", { key: index, className: [getColumnClass(index, 0), sheet$t.normalBold].join(" "), style: {
|
|
799
807
|
left: getColumnHorizontalOffset(index),
|
|
800
808
|
width: getColumnWidth(index) + "px",
|
|
801
809
|
height: getRowHeight(0) + "px",
|
|
802
810
|
} }, column.renderHeader !== undefined && (React__default.createElement(column.renderHeader, { index: index, column: column }))))),
|
|
803
|
-
React__default.createElement("div", { className:
|
|
811
|
+
React__default.createElement("div", { className: sheet.rowBorder, style: { top: 0, transform: `translateY(${getRowHeight(0) + "px"})` } })),
|
|
804
812
|
children)));
|
|
805
813
|
function renderRowBorder(columnIndex, style) {
|
|
806
814
|
if (!isLastColumn(columnIndex)) {
|
|
@@ -814,13 +822,13 @@ function Ui89VirtualTable(props) {
|
|
|
814
822
|
right: 0,
|
|
815
823
|
width: undefined,
|
|
816
824
|
};
|
|
817
|
-
return React__default.createElement("div", { className:
|
|
825
|
+
return React__default.createElement("div", { className: sheet.rowBorder, style: rowBorderStyle });
|
|
818
826
|
}
|
|
819
|
-
return (React__default.createElement("div", { className:
|
|
827
|
+
return (React__default.createElement("div", { className: sheet.table }, rows.length > 0 ? (React__default.createElement("div", { className: sheet.tableBody },
|
|
820
828
|
React__default.createElement(AutoSizer, null, ({ height, width }) => (React__default.createElement(VariableSizeGrid, { columnCount: columns.length, columnWidth: getColumnWidth, rowCount: rows.length + 1, rowHeight: getRowHeight, width: width, height: height, innerElementType: innerElementType }, ({ columnIndex, rowIndex, style }) => (React__default.createElement(React__default.Fragment, null,
|
|
821
829
|
React__default.createElement("div", { className: getColumnClass(columnIndex, rowIndex), style: style }, rowIndex !== 0 &&
|
|
822
830
|
[columns[columnIndex].renderBody].map((BodyContent) => (React__default.createElement(BodyContent, { key: rowIndex, index: rowIndex - 1, row: rows[rowIndex - 1] })))),
|
|
823
|
-
renderRowBorder(columnIndex, style)))))))) : (React__default.createElement("div", { className:
|
|
831
|
+
renderRowBorder(columnIndex, style)))))))) : (React__default.createElement("div", { className: sheet.empty },
|
|
824
832
|
React__default.createElement(Ui89TagBox, { theme: "warning" }, "Empty")))));
|
|
825
833
|
}
|
|
826
834
|
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../src/theme.ts","../../src/Ui89Override.tsx","../../src/components/Ui89Breadcrumbs.tsx","../../src/components/HoverShadow.tsx","../../src/components/Ui89Button.tsx","../../src/components/Ui89Card.tsx","../../src/components/Ui89CardHorizontalConnection.tsx","../../src/components/Ui89DateTimePicker.tsx","../../src/components/TimeAnimation.tsx","../../src/date-utils.ts","../../src/components/Ui89DigitalClock.tsx","../../src/components/Ui89HighlightText.tsx","../../src/components/Ui89Hr.tsx","../../src/components/Ui89InputFileUpload.tsx","../../src/components/Ui89InputSelect.tsx","../../src/components/Ui89InputPassword.tsx","../../src/timeout.ts","../../src/components/Ui89InputText.tsx","../../src/text-utils.ts","../../src/components/Ui89InputTextNumber.tsx","../../src/components/Ui89LinkUnderline.tsx","../../src/components/Ui89MenuBar.tsx","../../src/components/Ui89Scene.tsx","../../src/components/GridExpandTrick.tsx","../../src/components/ScrollContainer.tsx","../../src/components/Ui89ModalDialog.tsx","../../src/components/Ui89NameValuePair.tsx","../../src/images/shortcut.svg","../../src/components/Ui89SpaceVertical.tsx","../../src/components/Ui89Shortcut.tsx","../../src/components/Ui89SpacePadding.tsx","../../src/components/Ui89Tabs.tsx","../../src/components/Ui89TabbedCard.tsx","../../src/components/Ui89TagBox.tsx","../../src/components/Ui89ThemeBackground.tsx","../../src/components/Ui89TitleBox.tsx","../../src/components/Ui89TitleUnderline.tsx","../../src/components/Ui89Toaster.tsx","../../src/components/Ui89VirtualTable.tsx"],"sourcesContent":["export enum Ui89Theme {\n primary = \"primary\",\n secondary = \"secondary\",\n info = \"info\",\n success = \"success\",\n warning = \"warning\",\n danger = \"danger\",\n}\n\nexport enum Ui89Look {\n main = \"main\",\n side = \"side\",\n}\n","import React, { createContext, useContext, ReactNode } from \"react\"\n\ntype RouterPush = (url: string) => void | Promise<void>\n\ninterface Ui89OverrideContextType {\n routerPush?: RouterPush\n}\n\nexport interface Ui89OverrideProviderProps {\n children?: ReactNode\n routerPush?: RouterPush\n}\n\nconst Ui89OverrideContext = createContext<Ui89OverrideContextType>({})\n\nexport const Ui89OverrideProvider: React.FC<Ui89OverrideProviderProps> = ({\n routerPush,\n children,\n}) => {\n return (\n <Ui89OverrideContext.Provider value={{ routerPush }}>\n {children}\n </Ui89OverrideContext.Provider>\n )\n}\n\nexport const useUi89Overrides = (): Ui89OverrideContextType => {\n const context = useContext(Ui89OverrideContext)\n\n if (context === undefined) {\n throw new Error(\n \"useUi89Overrides must be used within a Ui89OverrideProvider\",\n )\n }\n\n return context\n}\n","import React, { useState } from \"react\"\n\nimport styles from \"./Ui89Breadcrumbs.module.css\"\nimport typoStyles from \"../style/typo.module.css\"\nimport resetStyles from \"../style/reset.module.css\"\nimport chosenThemeStyles from \"../style/chosen-theme.module.css\"\n\nimport { Ui89Theme } from \"../theme\"\nimport { useUi89Overrides } from \"../Ui89Override\"\n\nexport type Ui89BreadcrumbsPropsOnSelect = (e: {\n item: Ui89BreadcrumbsPropsItem\n}) => void | Promise<void>\n\nexport interface Ui89BreadcrumbsPropsItem {\n label: React.ReactNode\n url?: string\n}\n\nexport interface Ui89BreadcrumbsProps {\n theme?: Ui89Theme | keyof typeof Ui89Theme\n items: Ui89BreadcrumbsPropsItem[]\n onSelect?: Ui89BreadcrumbsPropsOnSelect\n}\n\nexport function Ui89BreadcrumbsItem({\n index,\n item,\n onSelect,\n}: {\n index: number\n item: Ui89BreadcrumbsPropsItem\n onSelect?: Ui89BreadcrumbsPropsOnSelect\n}) {\n const style = { \"--ui89-index\": index } as React.CSSProperties\n const tagname = item.url !== undefined ? \"a\" : \"div\"\n const overrides = useUi89Overrides()\n\n const onClick: React.MouseEventHandler<HTMLAnchorElement> = (e) => {\n if (item.url !== undefined) {\n if (item.url.startsWith(\"/\")) {\n if (overrides.routerPush !== undefined) {\n e.preventDefault()\n overrides.routerPush(item.url)\n }\n }\n }\n }\n\n return (\n <a\n className={`${resetStyles.a} ${styles.breadcrumbsItem}`}\n href={item.url}\n style={style}\n onClick={onClick}\n >\n <div className={styles.breadcrumbsItemBackground}></div>\n {item.label}\n </a>\n )\n}\n\nexport function Ui89Breadcrumbs({\n theme = Ui89Theme.primary,\n items,\n onSelect,\n}: Ui89BreadcrumbsProps) {\n return (\n <div\n className={`${styles.breadcrumbs} ${typoStyles.special} ${chosenThemeStyles[theme]}`}\n >\n {[...items.entries()].reverse().map(([index, item]) => (\n <Ui89BreadcrumbsItem\n key={index}\n index={index}\n item={item}\n onSelect={onSelect}\n />\n ))}\n </div>\n )\n}\n","import React from \"react\"\nimport styles from \"./HoverShadow.module.css\"\n\nexport default function HoverShadow({\n children,\n}: {\n children: React.ReactNode\n}) {\n return (\n <span className={styles.hoverShadow}>\n <span className={styles.hoverShadowBottom}></span>\n <span className={styles.hoverShadowRight}></span>\n {children}\n </span>\n )\n}\n","import React, { useState } from \"react\"\n\nimport styles from \"./Ui89Button.module.css\"\nimport typoStyles from \"../style/typo.module.css\"\nimport chosenThemeStyles from \"../style/chosen-theme.module.css\"\nimport resetStyles from \"../style/reset.module.css\"\n\nimport HoverShadow from \"./HoverShadow\"\n\nimport { Ui89Theme } from \"../theme\"\nimport { useUi89Overrides } from \"../Ui89Override\"\n\nexport enum Ui89ButtonPropsSize {\n standard = \"standard\",\n square = \"square\",\n}\n\nexport interface Ui89ButtonProps {\n theme?: Ui89Theme | keyof typeof Ui89Theme\n size?: Ui89ButtonPropsSize | keyof typeof Ui89ButtonPropsSize\n block?: boolean\n onClick?: () => void | Promise<void>\n href?: string\n children: React.ReactNode\n autoDisableOnClick?: boolean\n disabled?: boolean\n activated?: boolean\n}\n\nexport function Ui89Button({\n theme = Ui89Theme.primary,\n size = Ui89ButtonPropsSize.standard,\n block,\n onClick,\n href,\n children,\n autoDisableOnClick = true,\n disabled,\n activated,\n}: Ui89ButtonProps) {\n const overrides = useUi89Overrides()\n const [clicking, setClicking] = useState(false)\n\n let localDisabled = disabled || (autoDisableOnClick && clicking)\n\n async function onAnchorClick(e: React.MouseEvent<HTMLAnchorElement>) {\n if (localDisabled) {\n // The anchor tag does not support the disabled attribute so we do this.\n return\n }\n\n if (clicking) {\n // No double clicking allowed.\n return\n }\n\n try {\n setClicking(true)\n\n if (href !== undefined) {\n if (href.startsWith(\"/\")) {\n if (overrides.routerPush !== undefined) {\n e.preventDefault()\n overrides.routerPush(href)\n }\n }\n }\n } finally {\n setClicking(false)\n }\n }\n\n async function onButtonClick(e: React.MouseEvent<HTMLButtonElement>) {\n if (localDisabled) {\n // The anchor tag does not support the disabled attribute so we do this.\n return\n }\n\n if (clicking) {\n // No double clicking allowed.\n return\n }\n\n try {\n setClicking(true)\n\n if (onClick === undefined) {\n // No handler.\n return\n }\n\n await onClick()\n } finally {\n setClicking(false)\n }\n }\n\n let containerClass = [\n styles.container,\n styles[\"container--size-\" + size],\n ].join(\" \")\n\n let buttonClass = [\n styles.button,\n typoStyles.special,\n chosenThemeStyles[theme],\n activated ? styles.active : undefined,\n block ? styles.block : undefined,\n disabled ? styles.disabled : undefined,\n clicking ? styles.active : undefined,\n ].join(\" \")\n\n if (href) {\n return (\n <span className={containerClass}>\n <HoverShadow>\n <a\n className={`${resetStyles.a} ${buttonClass}`}\n role=\"button\"\n href={href}\n onClick={onAnchorClick}\n >\n <span className={styles.click}></span>\n <span className={styles.buttonContent}>{children}</span>\n </a>\n </HoverShadow>\n </span>\n )\n } else {\n return (\n <span className={containerClass}>\n <HoverShadow>\n <button\n className={buttonClass}\n type=\"button\"\n onClick={onButtonClick}\n disabled={localDisabled}\n >\n <span className={styles.click}></span>\n <span className={styles.buttonContent}>{children}</span>\n </button>\n </HoverShadow>\n </span>\n )\n }\n}\n","import React from \"react\"\nimport styles from \"./Ui89Card.module.css\"\n\nexport interface Ui89CardProps {\n topLeftCenter?: React.ReactNode\n topCenter?: React.ReactNode\n children: React.ReactNode\n}\n\nexport function Ui89Card({\n topLeftCenter,\n topCenter,\n children,\n}: Ui89CardProps) {\n const hasTopContent = topLeftCenter || topCenter\n\n return (\n <div\n className={`${styles.container} ${hasTopContent ? styles.containerHasTop : \"\"}`}\n >\n <div className={styles.inside}>\n {topLeftCenter && (\n <div className={styles.topLeftCenter}>{topLeftCenter}</div>\n )}\n {topCenter && <div className={styles.topCenter}>{topCenter}</div>}\n\n {hasTopContent && <div className=\"space-vertical-1\"></div>}\n\n {children}\n\n {hasTopContent && <div className=\"space-vertical-1\"></div>}\n </div>\n </div>\n )\n}\n","import React from \"react\"\nimport styles from \"./Ui89Card.module.css\"\n\nexport interface Ui89CardHorizontalConnectionProps {\n children: React.ReactNode\n overflow?: boolean\n}\n\nexport function Ui89CardHorizontalConnection({\n children,\n overflow,\n}: Ui89CardHorizontalConnectionProps) {\n return (\n <div\n className={`${styles.cardHorizontalConnection} ${overflow ? styles[\"cardHorizontalConnection--overflow\"] : \"\"}`}\n >\n {children}\n </div>\n )\n}\n","import React from \"react\"\nimport DatePicker from \"react-datepicker\"\n\nimport \"../../node_modules/react-datepicker/dist/react-datepicker.css\";\nimport \"./Ui89DateTimePicker.css\"\n\nimport inputBoxStyles from \"../style/input-box.module.css\"\nimport typoStyles from \"../style/typo.module.css\"\n\nexport interface Ui89DateTimePickerProps {\n value?: Date | null\n onChange?: (value: Date | null) => void\n}\n\nexport function Ui89DateTimePicker(props: Ui89DateTimePickerProps) {\n function datepickerOnChange(value: Date | null) {\n if (props.onChange) {\n props.onChange(value)\n }\n }\n\n return (\n <span className=\"ui89-date-time-picker\">\n <DatePicker\n className={[inputBoxStyles.inputBox, typoStyles.normal].join(\" \")}\n calendarClassName={typoStyles.normal}\n showTimeSelect\n dateFormat=\"MM/dd/yyyy HH:mm:ss\"\n timeFormat=\"HH:mm\"\n selected={props.value}\n onChange={datepickerOnChange}\n popperPlacement=\"bottom-start\"\n />\n </span>\n )\n}\n","import React, { useState, useEffect } from \"react\"\n\nexport interface TimeAnimationPropsChildrenProps {\n now: Date\n}\n\nexport interface TimeAnimationProps {\n children: (props: TimeAnimationPropsChildrenProps) => React.ReactNode\n}\n\nexport const TimeAnimation: React.FC<TimeAnimationProps> = ({ children }) => {\n const [currentTime, setCurrentTime] = useState(new Date())\n\n useEffect(() => {\n const tick = () => {\n const now = new Date()\n setCurrentTime(now)\n\n // Calculate time until the next exact second\n const msUntilNextSecond = 1000 - now.getMilliseconds()\n setTimeout(tick, msUntilNextSecond)\n }\n\n // Start the first tick\n const msUntilNextSecond = 1000 - currentTime.getMilliseconds()\n const timeoutId = setTimeout(tick, msUntilNextSecond)\n\n return () => clearTimeout(timeoutId)\n }, [])\n\n return <>{children({ now: currentTime })}</>\n}\n","export interface DateComponents {\n hours: number\n minutes: number\n seconds: number\n milliseconds: number\n day: number\n month: number\n year: number\n}\n\nfunction dateComponents(date: Date): DateComponents {\n return {\n hours: date.getHours(),\n minutes: date.getMinutes(),\n seconds: date.getSeconds(),\n milliseconds: date.getMilliseconds(),\n day: date.getDate(),\n month: date.getMonth() + 1,\n year: date.getFullYear(),\n }\n}\n\nexport function dateFormat(date: Date, format: string) {\n const placeholders: Record<string, string> = {\n YYYY: date.getFullYear().toString(),\n MM: (date.getMonth() + 1).toString().padStart(2, \"0\"),\n DD: date.getDate().toString().padStart(2, \"0\"),\n HH: date.getHours().toString().padStart(2, \"0\"),\n mm: date.getMinutes().toString().padStart(2, \"0\"),\n ss: date.getSeconds().toString().padStart(2, \"0\"),\n hh: (date.getHours() % 12 || 12).toString().padStart(2, \"0\"),\n A: date.getHours() >= 12 ? \"PM\" : \"AM\",\n }\n\n // Replace placeholders in the format string\n let formattedDate = format\n for (const [key, value] of Object.entries(placeholders)) {\n formattedDate = formattedDate.replace(key, value)\n }\n\n return formattedDate\n}\n","import React, { useRef } from \"react\"\nimport typoStyles from \"../style/typo.module.css\"\nimport { TimeAnimation, TimeAnimationPropsChildrenProps } from \"./TimeAnimation\"\nimport { dateFormat } from \"../date-utils\"\n\nexport interface Ui89DigitalClockProps {\n format?: string // Custom format string\n}\n\nexport function Ui89DigitalClock({\n format = \"HH:mm:ss\",\n}: Ui89DigitalClockProps) {\n function render({ now }: TimeAnimationPropsChildrenProps) {\n return dateFormat(now, format)\n }\n\n return (\n <span className={`${typoStyles.special}`}>\n <TimeAnimation>{render}</TimeAnimation>\n </span>\n )\n}\n","import React from \"react\"\n\nimport { Ui89Theme } from \"../theme\"\nimport chosenThemeStyles from \"../style/chosen-theme.module.css\"\n\nimport style from \"./Ui89HighlightText.module.css\"\n\nexport interface Ui89HighlightTextProps {\n theme: Ui89Theme | keyof typeof Ui89Theme\n block?: boolean\n children: React.ReactNode\n}\n\nexport function Ui89HighlightText({\n theme,\n block,\n children,\n}: Ui89HighlightTextProps) {\n return (\n <span\n className={`${style.container} ${chosenThemeStyles[theme]} ${block ? style[\"container--block\"] : null}`}\n >\n {children}\n </span>\n )\n}\n","import React from \"react\"\n\nimport style from \"./Ui89Hr.module.css\"\nimport { Ui89Theme } from \"../theme\"\nimport chosenThemeStyles from \"../style/chosen-theme.module.css\"\n\nexport enum Ui89HrPropsLook {\n straight = \"straight\",\n dotted = \"dotted\",\n dashed = \"dashed\",\n double = \"double\",\n}\n\nexport interface Ui89HrProps {\n look?: Ui89HrPropsLook | keyof typeof Ui89HrPropsLook\n theme?: Ui89Theme | keyof typeof Ui89Theme\n}\n\nexport function Ui89Hr({ look = \"straight\", theme }: Ui89HrProps) {\n return (\n <div\n className={`${style.hr} ${style[`hr--${look}`]} ${theme !== undefined ? style[\"hr--use-theme\"] : \"\"} ${theme !== undefined ? chosenThemeStyles[theme] : \"\"}`}\n >\n <div className={style.hrDouble}></div>\n </div>\n )\n}\n","import React, { useRef } from \"react\"\n\nimport styles from \"./Ui89InputFileUpload.module.css\"\nimport typoStyles from \"../style/typo.module.css\"\nimport textStyles from \"../style/text.module.css\"\nimport { Ui89Button } from \"./Ui89Button\"\n\nexport interface Ui89InputFileUploadProps {\n value?: any\n onChange?: (value: File | null) => void\n}\n\nexport function Ui89InputFileUpload({\n value,\n onChange,\n}: Ui89InputFileUploadProps) {\n const inputRef = useRef<HTMLInputElement>(null)\n\n function implOnChange(e: React.ChangeEvent<HTMLInputElement>) {\n if (!onChange) {\n return\n }\n\n if (e.target.files === null) {\n onChange(null)\n return\n }\n\n if (e.target.files.length === 0) {\n onChange(null)\n return\n }\n\n onChange(e.target.files[0])\n }\n\n function onClick() {\n if (inputRef.current === null) {\n return\n }\n\n inputRef.current.click()\n }\n\n return (\n <div>\n <input\n ref={inputRef}\n className={typoStyles.special}\n type=\"file\"\n onChange={implOnChange}\n hidden\n />\n\n {value ? (\n <div className={styles.inputFileUpload}>\n <Ui89Button onClick={onClick}>Change</Ui89Button>\n <span\n className={`${styles.inputFileUpload__info} ${textStyles.singleLine} ${textStyles[\"singleLine--ellipsisLeft\"]}`}\n title={value.name}\n >\n {value.name}\n </span>\n </div>\n ) : (\n <Ui89Button onClick={onClick}>Upload</Ui89Button>\n )}\n </div>\n )\n}\n","import React, { useMemo, useState } from \"react\"\n\nimport styles from \"./Ui89InputSelect.module.css\"\nimport inputBoxStyles from \"../style/input-box.module.css\"\nimport textStyles from \"../style/text.module.css\"\n\nexport interface Ui89InputSelectPropsOption {\n value: string | number\n label: React.ReactNode\n}\n\nexport interface Ui89InputSelectProps {\n options?: (Ui89InputSelectPropsOption | string | number)[]\n value?: string | number\n onChange?: (value: string | number) => void\n}\n\nexport function Ui89InputSelect({\n options,\n value,\n onChange,\n}: Ui89InputSelectProps) {\n const realOptions = useMemo(() => {\n if (options === undefined) {\n return []\n }\n\n return options.map((option) => {\n if (typeof option !== \"object\") {\n return {\n value: option,\n label: String(option),\n }\n } else {\n return option\n }\n })\n }, [options])\n\n const selectedOption = useMemo(() => {\n return (\n realOptions.find((option) => {\n return option.value === value\n }) ?? null\n )\n }, [realOptions, value])\n\n function selectOption(option: Ui89InputSelectPropsOption) {\n if (onChange) {\n onChange(option.value)\n }\n\n if (document.activeElement !== null) {\n // @ts-expect-error\n document.activeElement.blur()\n }\n }\n\n function optionTitle(option: Ui89InputSelectPropsOption) {\n return typeof option.label === \"string\" ? option.label : undefined\n }\n\n return (\n <div className={`${styles.inputSelect}`}>\n <div\n className={[\n inputBoxStyles.inputBox,\n inputBoxStyles[\"inputBox--unselectable\"],\n inputBoxStyles[\"inputBox--clickable\"],\n textStyles.singleLine,\n ].join(\" \")}\n tabIndex={0}\n title={\n selectedOption !== null ? optionTitle(selectedOption) : undefined\n }\n >\n {selectedOption !== null ? <>{selectedOption.label}</> : <>Select...</>}\n </div>\n\n <div className={[styles.menu].join(\" \")} tabIndex={0}>\n <div className={styles.menuContent}>\n {realOptions.length > 0 ? (\n realOptions.map((o) => {\n const isSelected =\n selectedOption && selectedOption.value === o.value\n\n return (\n <div\n className={[\n styles.menuItem,\n isSelected ? styles.selected : null,\n ].join(\" \")}\n title={optionTitle(o)}\n key={o.value}\n onClick={() => selectOption(o)}\n >\n {o.label}\n </div>\n )\n })\n ) : (\n <div\n className={[styles.menuItem, styles[\"menuItem--disabled\"]].join(\n \" \",\n )}\n >\n <empty>\n </div>\n )}\n </div>\n </div>\n </div>\n )\n}\n","import React from \"react\"\nimport { useState } from \"react\"\n\nimport inputBoxStyles from \"../style/input-box.module.css\"\nimport typoStyles from \"../style/typo.module.css\"\n\nexport interface Ui89InputPasswordProps {\n value?: any\n placeholder?: string\n onChange?: (value: any) => void\n}\n\nexport function Ui89InputPassword({\n value,\n placeholder,\n onChange,\n}: Ui89InputPasswordProps) {\n const [intermediateValue, setIntermediateValue] = useState(value ?? \"\")\n\n const implOnChange: React.ChangeEventHandler<HTMLInputElement> = (e) => {\n const newValue = e.target.value\n\n setIntermediateValue(newValue)\n\n if (onChange) {\n onChange(newValue)\n }\n }\n\n return (\n <div>\n <input\n type=\"password\"\n className={`${inputBoxStyles.inputBox} ${typoStyles.special}`}\n role=\"textbox\"\n value={intermediateValue}\n onChange={implOnChange}\n placeholder={placeholder}\n />\n </div>\n )\n}\n","import Timeout from \"smart-timeout\"\n\nlet uniqueId = 0\n\nexport function throttledTimeout() {\n const id = String(uniqueId++)\n let callback: () => void\n\n return {\n call(delay: number, f: () => void) {\n callback = f\n\n if (Timeout.pending(id)) {\n Timeout.restart(id)\n } else {\n Timeout.set(id, () => callback(), delay)\n }\n },\n\n /**\n * If there is a call that has been scheduled, remove it from the queue.\n */\n abort() {\n Timeout.clear(id, true)\n },\n }\n}\n\nexport function spacedTimeout() {\n const id = String(uniqueId++)\n let callback: () => void\n\n return {\n call(delay: number, f: () => void) {\n callback = f\n\n if (!Timeout.pending(id)) {\n Timeout.set(id, () => callback(), delay)\n }\n },\n }\n}\n","import React, { useMemo } from \"react\"\nimport { useState, useEffect, useRef } from \"react\"\nimport { throttledTimeout } from \"../timeout\"\n\nimport inputBoxStyles from \"../style/input-box.module.css\"\nimport typoStyles from \"../style/typo.module.css\"\n\nconst THROTTLE_DELAY = 200\n\nexport interface Ui89InputTextProps {\n value?: any\n placeholder?: string\n autoTrim?: boolean\n onChange?: (value: any) => void\n onTyping?: (value: boolean) => void\n onFocus?: () => void\n onBlur?: () => void\n}\n\nfunction convertAnyToText(value: any) {\n return value ?? \"\"\n}\n\nexport function Ui89InputText({\n value,\n placeholder,\n autoTrim = true,\n onChange,\n onTyping,\n onFocus,\n onBlur,\n}: Ui89InputTextProps) {\n const inputRef = useRef<HTMLInputElement>(null)\n const [intermediateValue, setIntermediateValue] = useState(value)\n const [isTyping, setIsTyping] = useState(false)\n const onChangeRef = useRef(onChange)\n const onChangeThrottled = useMemo(() => throttledTimeout(), [])\n\n useEffect(() => {\n onChangeRef.current = onChange\n }, [onChange])\n\n useEffect(() => {\n if (inputRef.current === null) {\n return\n }\n\n inputRef.current.onfocus = () => {\n setIsTyping(true)\n\n if (onTyping) {\n onTyping(true)\n }\n\n if (onFocus) {\n onFocus()\n }\n }\n\n inputRef.current.onblur = () => {\n onChangeThrottled.abort()\n update()\n\n setIsTyping(false)\n\n if (onTyping) {\n onTyping(false)\n }\n\n if (onBlur) {\n onBlur()\n }\n }\n }, [inputRef.current, onBlur, onFocus])\n\n useEffect(() => {\n if (!isTyping) {\n // Lets show the user what the actual value is.\n onChangeThrottled.call(THROTTLE_DELAY, () => {\n setIntermediateValue(value)\n })\n }\n }, [value])\n\n function implOnChange(e: React.ChangeEvent<HTMLInputElement>) {\n setIntermediateValue(e.target.value)\n onChangeThrottled.call(THROTTLE_DELAY, update)\n }\n\n function update() {\n if (!onChangeRef.current) {\n return\n }\n\n if (inputRef.current === null) {\n return\n }\n\n // We get the current value straight from the element because this function\n // may have been queued.\n let newVal = inputRef.current.value\n\n if (autoTrim) {\n // Must trim after setting intermediate value. Do not want to disturb\n // user.\n newVal = newVal.replace(/\\s+/g, \" \").trim()\n }\n\n if (newVal === value) {\n // Same value.\n return\n }\n\n onChangeRef.current(newVal)\n }\n\n return (\n <div>\n <input\n ref={inputRef}\n value={intermediateValue}\n className={`${inputBoxStyles.inputBox} ${typoStyles.special}`}\n type=\"text\"\n onChange={implOnChange}\n placeholder={placeholder}\n />\n </div>\n )\n}\n","export function stringRemoveAllWhitespace(str: string): string {\n return str.replace(/\\s+/g, \"\")\n}\n","import React from \"react\"\nimport { useState, useEffect } from \"react\"\nimport { Ui89InputText } from \"./Ui89InputText\"\nimport { stringRemoveAllWhitespace } from \"../text-utils\"\n\nexport interface Ui89InputTextNumberProps {\n emptyValue?: any\n value?: any\n min?: number\n max?: number\n onChange?: (value: any) => void\n precision?: number\n}\n\nexport function isTextNumber(text: string): boolean {\n return /\\b\\d+(\\.\\d+)?\\b/.test(text)\n}\n\nfunction displayText(value: any, emptyValue: any) {\n if (value === undefined) {\n // No idea how to display this.\n return \"\"\n } else if (value === emptyValue) {\n // Display emptiness.\n return \"\"\n } else if (isNaN(value)) {\n // No idea what to display.\n return \"\"\n }\n\n return value.toString()\n}\n\nexport function Ui89InputTextNumber({\n /**\n * The value that is emitted when the input is emptied.\n */\n emptyValue = null,\n value,\n min,\n max,\n onChange,\n precision,\n}: Ui89InputTextNumberProps) {\n const [isTyping, setIsTyping] = useState(false)\n const [intermediateValue, setIntermediateValue] = useState(\n displayText(value, emptyValue),\n )\n\n function implOnChange(value: string) {\n if (onChange === undefined) {\n return\n }\n\n if (value === \"\") {\n // Use empty value.\n onChange(emptyValue)\n return\n }\n\n value = stringRemoveAllWhitespace(value)\n\n if (!isTextNumber(value)) {\n // We end here.\n return\n }\n\n const numberValue = Number(value)\n\n if (min !== undefined) {\n if (numberValue <= min) {\n value = String(min)\n }\n }\n\n if (max !== undefined) {\n if (numberValue >= max) {\n value = String(max)\n }\n }\n\n onChange(value)\n }\n\n useEffect(() => {\n if (!isTyping) {\n setIntermediateValue(displayText(value, emptyValue))\n }\n }, [isTyping, value])\n\n return (\n <Ui89InputText\n value={intermediateValue}\n onChange={implOnChange}\n onTyping={setIsTyping}\n />\n )\n}\n","import React, { useState } from \"react\"\n\nimport resetStyles from \"../style/reset.module.css\"\nimport styles from \"./Ui89LinkUnderline.module.css\"\n\nimport { useUi89Overrides } from \"../Ui89Override\"\n\nexport interface Ui89LinkUnderlineProps {\n onClick?: () => void | Promise<void>\n href?: string\n children: React.ReactNode\n autoDisableOnClick?: boolean\n disabled?: boolean\n}\n\nexport function Ui89LinkUnderline(props: Ui89LinkUnderlineProps) {\n const overrides = useUi89Overrides()\n const [clicking, setClicking] = useState(false)\n\n let localDisabled =\n props.disabled || ((props.autoDisableOnClick ?? true) && clicking)\n\n async function onClick(e: React.MouseEvent<HTMLAnchorElement>) {\n if (localDisabled) {\n // The anchor tag does not support the disabled attribute so we do this.\n return\n }\n\n try {\n setClicking(true)\n\n if (props.onClick !== undefined) {\n // A function takes over control.\n e.preventDefault()\n await props.onClick()\n } else if (props.href !== undefined) {\n if (props.href.startsWith(\"/\")) {\n if (overrides.routerPush !== undefined) {\n e.preventDefault()\n overrides.routerPush(props.href)\n }\n }\n } else {\n // Do nothing.\n e.preventDefault()\n }\n } finally {\n setClicking(false)\n }\n }\n\n let containerClass = [styles.link].join(\" \")\n\n return (\n <a\n className={`${resetStyles.a} ${containerClass}`}\n role=\"link\"\n href={props.href}\n onClick={onClick}\n >\n {props.children}\n </a>\n )\n}\n","import React from \"react\"\n\nimport styles from \"./Ui89MenuBar.module.css\"\nimport typoStyles from \"../style/typo.module.css\"\nimport scrollbarStyles from \"../style/scrollbar.module.css\"\n\nexport interface Ui89MenuBarPropsItem {\n label: React.ReactNode\n onClick?: () => void\n children?: Ui89MenuBarPropsItem[]\n}\n\nexport interface Ui89MenuBarProps {\n items: Ui89MenuBarPropsItem[]\n}\n\nexport function Ui89MenuBar({ items }: Ui89MenuBarProps) {\n return (\n <div\n className={`${styles.menuBar} ${typoStyles.special} ${scrollbarStyles.container}`}\n >\n {items.map((item, index) => {\n function onNativeClick() {\n if (item.onClick !== undefined) {\n item.onClick()\n }\n }\n\n return (\n <div\n key={index}\n className={styles.menuBarItem}\n onClick={onNativeClick}\n >\n {item.label}\n </div>\n )\n })}\n </div>\n )\n}\n","import React from \"react\"\n\nimport { Ui89Look } from \"../theme\"\n\nimport styles from \"./Ui89Scene.module.css\"\nimport lookStyles from \"../style/look.module.css\"\nimport typoStyles from \"../style/typo.module.css\"\nimport scrollbarStyles from \"../style/scrollbar.module.css\"\n\nexport interface Ui89SceneProps {\n look?: Ui89Look | string\n children: React.ReactNode\n}\n\nexport function Ui89Scene({ look = Ui89Look.main, children }: Ui89SceneProps) {\n return (\n <div\n className={`${styles.scene} ${lookStyles[look]} ${typoStyles.normal} ${scrollbarStyles.container}`}\n >\n {children}\n </div>\n )\n}\n","import React from \"react\"\nimport styles from \"./GridExpandTrick.module.css\"\n\nexport default function GridExpandTrick({\n children,\n}: {\n children: React.ReactNode\n}) {\n return <span className={styles.gridExpandTrick}>{children}</span>\n}\n","import React from \"react\"\nimport styles from \"./ScrollContainer.module.css\"\n\nexport default function ScrollContainer({\n children,\n}: {\n children: React.ReactNode\n}) {\n return <span className={styles.scrollContainer}>{children}</span>\n}\n","import styles from \"./Ui89ModalDialog.module.css\"\nimport React, { useMemo } from \"react\"\nimport { createPortal } from \"react-dom\"\nimport { Ui89Card } from \"./Ui89Card\"\nimport HoverShadow from \"./HoverShadow\"\nimport { Ui89Scene } from \"./Ui89Scene\"\nimport GridExpandTrick from \"./GridExpandTrick\"\nimport ScrollContainer from \"./ScrollContainer\"\n\nexport interface Ui89ModalDialogProps {\n open: boolean\n size?: string\n children?: React.ReactNode\n topCenter?: React.ReactNode\n onRequestClose?: () => void\n}\n\nconst portalRoot: HTMLElement | null =\n typeof document !== \"undefined\" ? document.body : null\n\nexport function Ui89ModalDialog({\n open,\n size = \"medium\",\n children,\n topCenter,\n onRequestClose,\n}: Ui89ModalDialogProps) {\n const dialogClass = useMemo(() => {\n return [styles.dialog, open ? styles[\"dialog--open\"] : \"\"].join(\" \")\n }, [size, open])\n\n const dialogBoxClass = useMemo(() => {\n return [styles.dialogBox, styles[`dialogBox--size-${size}`]].join(\" \")\n }, [size, open])\n\n function onClickBackdrop() {\n if (onRequestClose !== undefined) {\n onRequestClose()\n }\n }\n\n const vdom = (\n <div className={dialogClass} role=\"dialog\">\n <div\n className={styles.dialogBackdrop}\n role=\"presentation\"\n onClick={onClickBackdrop}\n ></div>\n\n <div className={dialogBoxClass}>\n <div className={styles.spacer}></div>\n\n <HoverShadow>\n <GridExpandTrick>\n <Ui89Scene>\n <Ui89Card topCenter={topCenter}>\n <ScrollContainer>{children}</ScrollContainer>\n </Ui89Card>\n </Ui89Scene>\n </GridExpandTrick>\n </HoverShadow>\n </div>\n </div>\n )\n\n return portalRoot !== null ? createPortal(vdom, portalRoot) : vdom\n}\n","import React from \"react\"\n\nimport style from \"./Ui89NameValuePair.module.css\"\n\nexport interface Ui89NameValuePairProps {\n name: React.ReactNode\n value: React.ReactNode\n leftMaxWidth?: number\n}\n\nexport function Ui89NameValuePair({\n name,\n value,\n leftMaxWidth,\n}: Ui89NameValuePairProps) {\n return (\n <div className={style.nameValuePair}>\n <div\n className={style.nameValuePair__nameWrapper}\n style={{ maxWidth: `${leftMaxWidth}px` }}\n >\n <div className={style.nameValuePair__name}>{name}</div>\n <div className={style.nameValuePair__dots}></div>\n </div>\n <div className={style.nameValuePair__value}>{value}</div>\n </div>\n )\n}\n","import * as React from \"react\";\nconst SvgShortcut = (props) => /* @__PURE__ */ React.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: 100, height: 100, viewBox: \"0 0 100 100\", ...props }, /* @__PURE__ */ React.createElement(\"rect\", { x: 0, y: 0, width: 100, height: 100, fill: \"white\" }), /* @__PURE__ */ React.createElement(\"line\", { x1: 80, y1: 80, x2: 20, y2: 20, stroke: \"black\", strokeWidth: 15 }), /* @__PURE__ */ React.createElement(\"line\", { x1: 20, y1: 20, x2: 50, y2: 20, stroke: \"black\", strokeWidth: 15, strokeLinecap: \"round\" }), /* @__PURE__ */ React.createElement(\"line\", { x1: 20, y1: 20, x2: 20, y2: 50, stroke: \"black\", strokeWidth: 15, strokeLinecap: \"round\" }));\nexport default SvgShortcut;\n","import React from \"react\"\n\nexport interface Ui89SpaceVerticalProps {\n gap?: number\n}\n\nexport function Ui89SpaceVertical({ gap = 1 }: Ui89SpaceVerticalProps) {\n const style = {\n paddingTop: `calc(var(--ui89-safe-space) * ${gap})`,\n }\n\n return <div style={style}></div>\n}\n","import React from \"react\"\n\nimport ShortcutSvg from \"../images/shortcut.svg\"\n\nimport styles from \"./Ui89Shortcut.module.css\"\nimport typoStyles from \"../style/typo.module.css\"\n\nimport { Ui89SpaceVertical } from \"./Ui89SpaceVertical\"\n\nexport interface Ui89ShortcutProps {\n imageUrl: string\n label: React.ReactNode\n onClick?: () => void\n}\n\nexport function Ui89Shortcut({\n imageUrl,\n label,\n onClick = () => {},\n}: Ui89ShortcutProps) {\n function onNativeClick() {\n onClick()\n }\n\n return (\n <div className={styles.container} onClick={onNativeClick}>\n <div className={styles.imageContainer}>\n <img className={styles.image} src={imageUrl} />\n\n <div className={styles.shortcutIconContainer}>\n <ShortcutSvg className={styles.shortcutIcon} width={16} height={16} />\n </div>\n </div>\n\n <Ui89SpaceVertical gap={1} />\n\n <div\n className={`${styles.label} ${typoStyles.smallBold}`}\n onClick={onNativeClick}\n >\n {label}\n </div>\n </div>\n )\n}\n","import React from \"react\"\n\nexport interface Ui89SpacePaddingProps {\n gap?: number\n gapVertical?: number\n gapHorizontal?: number\n gapTop?: number\n gapRight?: number\n gapBottom?: number\n gapLeft?: number\n children?: React.ReactNode\n}\n\nexport function Ui89SpacePadding(props: Ui89SpacePaddingProps) {\n const gap = props.gap ?? 1\n\n const style = {\n paddingTop: `calc(var(--ui89-safe-space) * ${props.gapTop ?? props.gapVertical ?? gap})`,\n paddingRight: `calc(var(--ui89-safe-space) * ${props.gapRight ?? props.gapHorizontal ?? gap})`,\n paddingBottom: `calc(var(--ui89-safe-space) * ${props.gapBottom ?? props.gapVertical ?? gap})`,\n paddingLeft: `calc(var(--ui89-safe-space) * ${props.gapLeft ?? props.gapHorizontal ?? gap})`,\n }\n\n return <div style={style}>{props.children}</div>\n}\n","import React from \"react\"\n\nimport styles from \"./Ui89Tabs.module.css\"\nimport typoStyles from \"../style/typo.module.css\"\nimport chosenThemeStyles from \"../style/chosen-theme.module.css\"\n\nexport interface Ui89TabsPropsOption {\n value: string | number\n label: React.ReactNode\n}\n\nexport interface Ui89TabsProps {\n selected?: any\n onChange?: (value: string | number) => void\n options?: Ui89TabsPropsOption[]\n\n /**\n * Stretch options such that they evenly take up the entire width.\n */\n stretch?: boolean\n}\n\nexport function Ui89Tabs({\n selected,\n onChange = () => {},\n options = [],\n stretch,\n}: Ui89TabsProps) {\n function handleOnChange(value: string | number) {\n onChange(value)\n }\n\n return (\n <div\n className={[\n styles.navigation,\n stretch ? styles[\"navigation--stretch\"] : \"\",\n ].join(\" \")}\n >\n {options.map((option) => (\n <div\n className={[\n styles.navigationItem,\n typoStyles.smallBold,\n selected === option.value ? styles.navigationItemSelected : \"\",\n ].join(\" \")}\n key={option.value}\n onClick={() => handleOnChange(option.value)}\n >\n {option.label}\n </div>\n ))}\n </div>\n )\n}\n","import { Ui89Card } from \"./Ui89Card\"\nimport { Ui89Tabs } from \"./Ui89Tabs\"\nimport React, { useCallback, useMemo } from \"react\"\n\nexport interface Ui89TabbedCardProps {\n selected?: any\n onChange?: (value: string | number) => void\n options?: Ui89TabbedCardPropsOption[]\n}\n\nexport interface Ui89TabbedCardPropsOption {\n value: string | number\n label: React.ReactNode\n render: () => React.JSX.Element\n}\n\nexport function Ui89TabbedCard({\n selected,\n onChange,\n options = [],\n}: Ui89TabbedCardProps) {\n const selectedItem = useMemo<Ui89TabbedCardPropsOption | null>(() => {\n return options.find((item) => item.value === selected) ?? null\n }, [selected, options])\n\n const render = useMemo(() => {\n return selectedItem !== null ? selectedItem.render : () => <></>\n }, [selectedItem])\n\n const renderKey = useMemo(() => {\n return selectedItem !== null ? selectedItem.value : undefined\n }, [selectedItem])\n\n return (\n <Ui89Card\n topCenter={\n <Ui89Tabs selected={selected} options={options} onChange={onChange} />\n }\n >\n <React.Fragment key={renderKey}>{render()}</React.Fragment>\n </Ui89Card>\n )\n}\n","import React from \"react\"\n\nimport { Ui89Theme } from \"../theme\"\nimport typoStyles from \"../style/typo.module.css\"\nimport chosenThemeStyles from \"../style/chosen-theme.module.css\"\n\nimport style from \"./Ui89TagBox.module.css\"\n\nexport interface Ui89TagBoxProps {\n theme: Ui89Theme | keyof typeof Ui89Theme\n children: React.ReactNode\n}\n\nexport function Ui89TagBox({ theme, children }: Ui89TagBoxProps) {\n return (\n <div\n className={`${style.container} ${typoStyles.special} ${chosenThemeStyles[theme]}`}\n >\n {children}\n </div>\n )\n}\n","import React, { useState } from \"react\"\n\nimport styles from \"./Ui89ThemeBackground.module.css\"\nimport chosenThemeStyles from \"../style/chosen-theme.module.css\"\n\nimport { Ui89Theme } from \"../theme\"\n\nexport interface Ui89ThemeBackgroundProps {\n theme?: Ui89Theme | keyof typeof Ui89Theme\n children: React.ReactNode\n}\n\nexport function Ui89ThemeBackground({\n theme = Ui89Theme.primary,\n children,\n}: Ui89ThemeBackgroundProps) {\n return (\n <div className={`${styles.background} ${chosenThemeStyles[theme]}`}>\n {children}\n </div>\n )\n}\n","import React from \"react\"\n\nimport styles from \"./Ui89TitleBox.module.css\"\nimport typoStyles from \"../style/typo.module.css\"\nimport textStyles from \"../style/text.module.css\"\n\nexport interface Ui89TitleBoxProps {\n children: React.ReactNode\n}\n\nexport function Ui89TitleBox({ children }: Ui89TitleBoxProps) {\n return (\n <div className={`${styles.container} ${typoStyles.special}`}>\n <div className={`${styles.inside} ${textStyles.singleLine}`}>\n {children}\n </div>\n </div>\n )\n}\n","import React from \"react\"\n\nimport styles from \"./Ui89TitleUnderline.module.css\"\nimport typoStyles from \"../style/typo.module.css\"\nimport textStyles from \"../style/text.module.css\"\n\nexport interface Ui89TitleUnderlineProps {\n children: React.ReactNode\n}\n\nexport function Ui89TitleUnderline({ children }: Ui89TitleUnderlineProps) {\n return (\n <div className={`${styles.container} ${typoStyles.special}`}>\n <div className={`${styles.inside} ${textStyles.singleLine}`}>\n {children}\n </div>\n </div>\n )\n}\n","import React from \"react\"\nimport { ToastContainer, toast } from \"react-toastify\"\n\nimport typoStyles from \"../style/typo.module.css\"\nimport chosenThemeStyles from \"../style/chosen-theme.module.css\"\nimport { Ui89Theme } from \"../theme\"\n\nexport interface Ui89ToasterOptions {\n theme?: Ui89Theme | keyof typeof Ui89Theme\n autoClose?: boolean\n duration?: number\n}\n\nexport function useUi89Toaster() {\n return {\n toast(\n content: React.ReactNode,\n options: Ui89ToasterOptions = { theme: Ui89Theme.primary },\n ) {\n const classNames = [\"ui89-toaster\", typoStyles.normal]\n\n if (options.theme !== undefined) {\n classNames.push(chosenThemeStyles[options.theme])\n }\n\n let autoClose: boolean | number = 5000\n\n if (options.duration !== undefined) {\n autoClose = options.duration\n }\n\n if (options.autoClose !== undefined) {\n if (!options.autoClose) {\n autoClose = false\n }\n }\n\n return toast(() => content, {\n className: classNames.join(\" \"),\n type: \"default\",\n autoClose,\n closeButton: false,\n hideProgressBar: true,\n closeOnClick: true,\n })\n },\n }\n}\n\nexport function Ui89Toaster() {\n return <ToastContainer />\n}\n","import React, { forwardRef, useMemo } from \"react\"\n// @ts-ignore\nimport { VariableSizeGrid } from \"react-window\"\nimport AutoSizer from \"react-virtualized-auto-sizer\"\nimport styles from \"./Ui89VirtualTable.module.css\"\nimport typoStyles from \"../style/typo.module.css\"\nimport { Ui89TagBox } from \"./Ui89TagBox\"\n\nconst HEADER_HEIGHT = 30\n\ninterface VariableSizeGridProps {\n columnIndex: number\n rowIndex: number\n style: React.CSSProperties\n}\n\nexport interface Ui89VirtualTablePropsColumnRenderHeaderParams<T> {\n index: number\n column: Ui89VirtualTablePropsColumn<T>\n}\n\nexport interface Ui89VirtualTablePropsColumnRenderBodyParams<T> {\n index: number\n row: T\n}\n\nexport interface Ui89VirtualTablePropsColumn<T> {\n width?: number\n renderHeader?: React.FC<Ui89VirtualTablePropsColumnRenderHeaderParams<T>>\n renderBody: React.FC<Ui89VirtualTablePropsColumnRenderBodyParams<T>>\n}\n\nexport interface Ui89VirtualTableProps<T> {\n rows?: T[]\n columns?: Ui89VirtualTablePropsColumn<T>[]\n rowHeight?: number\n}\n\nexport function Ui89VirtualTable<T>(props: Ui89VirtualTableProps<T>) {\n const rows = useMemo(() => {\n return props.rows !== undefined ? props.rows : []\n }, [props.rows])\n\n const columns = useMemo(() => {\n return props.columns !== undefined ? props.columns : []\n }, [props.columns])\n\n function getRowHeight(index: number): number {\n if (index === 0) {\n // Header.\n return HEADER_HEIGHT\n } else {\n // Body\n return props.rowHeight ?? 50\n }\n }\n\n function getColumnWidth(index: number): number {\n return columns[index].width ?? 100\n }\n\n function getColumnHorizontalOffset(columnIndex: number) {\n let offset = 0\n\n for (let i = 0; i < columnIndex; i++) {\n offset += getColumnWidth(i)\n }\n\n return offset\n }\n\n function isLastColumn(columnIndex: number): boolean {\n return columnIndex === columns.length - 1\n }\n\n function getColumnClass(columnIndex: number, rowIndex: number): string {\n const classes = [styles.cell]\n\n if (rowIndex === 0) {\n classes.push(styles[\"cell--row-first\"])\n }\n\n if (rowIndex === rows.length) {\n classes.push(styles[\"cell--row-last\"])\n }\n\n if (columnIndex === 0) {\n classes.push(styles[\"cell--column-first\"])\n }\n\n if (isLastColumn(columnIndex)) {\n classes.push(styles[\"cell--column-last\"])\n }\n\n return classes.join(\" \")\n }\n\n /**\n * The width of an entire row.\n */\n function rowWidth() {\n return getColumnHorizontalOffset(columns.length)\n }\n\n // This is the secret to having sticky headers.\n const innerElementType = forwardRef(({ children, ...rest }: any, ref) => (\n <div ref={ref} {...rest}>\n <div className={styles.tableHeader}>\n {columns.map((column, index) => (\n <div\n key={index}\n className={[getColumnClass(index, 0), typoStyles.normalBold].join(\n \" \",\n )}\n style={{\n left: getColumnHorizontalOffset(index),\n width: getColumnWidth(index) + \"px\",\n height: getRowHeight(0) + \"px\",\n }}\n >\n {column.renderHeader !== undefined && (\n <column.renderHeader index={index} column={column} />\n )}\n </div>\n ))}\n\n <div\n className={styles.rowBorder}\n style={{ top: 0, transform: `translateY(${getRowHeight(0) + \"px\"})` }}\n ></div>\n </div>\n\n {children}\n </div>\n ))\n\n function renderRowBorder(columnIndex: number, style: React.CSSProperties) {\n if (!isLastColumn(columnIndex)) {\n // Do nothing.\n return\n }\n\n let rowBorderStyle = {\n ...style,\n\n // Will want to stretch width.\n left: 0,\n right: 0,\n width: undefined,\n }\n\n return <div className={styles.rowBorder} style={rowBorderStyle}></div>\n }\n\n return (\n <div className={styles.table}>\n {rows.length > 0 ? (\n <div className={styles.tableBody}>\n <AutoSizer>\n {({ height, width }) => (\n <VariableSizeGrid\n columnCount={columns.length}\n columnWidth={getColumnWidth}\n rowCount={rows.length + 1}\n rowHeight={getRowHeight}\n width={width}\n height={height}\n innerElementType={innerElementType}\n >\n {({ columnIndex, rowIndex, style }: VariableSizeGridProps) => (\n <>\n <div\n className={getColumnClass(columnIndex, rowIndex)}\n style={style}\n >\n {/* We do not render the first column. That space is reserved for the header */}\n {rowIndex !== 0 &&\n [columns[columnIndex].renderBody].map((BodyContent) => (\n <BodyContent\n key={rowIndex}\n index={rowIndex - 1}\n row={rows[rowIndex - 1]}\n />\n ))}\n </div>\n\n {renderRowBorder(columnIndex, style)}\n </>\n )}\n </VariableSizeGrid>\n )}\n </AutoSizer>\n </div>\n ) : (\n <div className={styles.empty}>\n <Ui89TagBox theme=\"warning\">Empty</Ui89TagBox>\n </div>\n )}\n </div>\n )\n}\n"],"names":["React","styles","style","ShortcutSvg"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../src/theme.ts","../../src/Ui89Override.tsx","../../src/components/Ui89Breadcrumbs.tsx","../../src/components/HoverShadow.tsx","../../src/components/Ui89Button.tsx","../../src/components/Ui89Card.tsx","../../src/components/Ui89CardHorizontalConnection.tsx","../../src/components/Ui89DateTimePicker.tsx","../../src/components/TimeAnimation.tsx","../../src/date-utils.ts","../../src/components/Ui89DigitalClock.tsx","../../src/components/Ui89HighlightText.tsx","../../src/components/Ui89Hr.tsx","../../src/components/Ui89InputFileUpload.tsx","../../src/components/Ui89InputSelect.tsx","../../src/components/Ui89InputPassword.tsx","../../src/timeout.ts","../../src/components/Ui89InputText.tsx","../../src/text-utils.ts","../../src/components/Ui89InputTextNumber.tsx","../../src/components/Ui89LinkUnderline.tsx","../../src/components/Ui89MenuBar.tsx","../../src/components/Ui89Scene.tsx","../../src/components/GridExpandTrick.tsx","../../src/components/ScrollContainer.tsx","../../src/components/Ui89ModalDialog.tsx","../../src/components/Ui89NameValuePair.tsx","../../src/images/shortcut.svg","../../src/components/Ui89SpaceVertical.tsx","../../src/components/Ui89Shortcut.tsx","../../src/components/Ui89SpacePadding.tsx","../../src/components/Ui89Tabs.tsx","../../src/components/Ui89TabbedCard.tsx","../../src/components/Ui89TagBox.tsx","../../src/components/Ui89ThemeBackground.tsx","../../src/components/Ui89TitleBox.tsx","../../src/components/Ui89TitleUnderline.tsx","../../src/components/Ui89Toaster.tsx","../../src/components/Ui89VirtualTable.tsx"],"sourcesContent":["export enum Ui89Theme {\n primary = \"primary\",\n secondary = \"secondary\",\n info = \"info\",\n success = \"success\",\n warning = \"warning\",\n danger = \"danger\",\n}\n\nexport enum Ui89Look {\n main = \"main\",\n side = \"side\",\n}\n","import React, { createContext, useContext, ReactNode } from \"react\"\n\ntype RouterPush = (url: string) => void | Promise<void>\n\ninterface Ui89OverrideContextType {\n routerPush?: RouterPush\n}\n\nexport interface Ui89OverrideProviderProps {\n children?: ReactNode\n routerPush?: RouterPush\n}\n\nconst Ui89OverrideContext = createContext<Ui89OverrideContextType>({})\n\nexport const Ui89OverrideProvider: React.FC<Ui89OverrideProviderProps> = ({\n routerPush,\n children,\n}) => {\n return (\n <Ui89OverrideContext.Provider value={{ routerPush }}>\n {children}\n </Ui89OverrideContext.Provider>\n )\n}\n\nexport const useUi89Overrides = (): Ui89OverrideContextType => {\n const context = useContext(Ui89OverrideContext)\n\n if (context === undefined) {\n throw new Error(\n \"useUi89Overrides must be used within a Ui89OverrideProvider\",\n )\n }\n\n return context\n}\n","import React, { useState } from \"react\"\n\nimport styles from \"./Ui89Breadcrumbs.module.css\"\nimport typoStyles from \"../style/typo.module.css\"\nimport resetStyles from \"../style/reset.module.css\"\nimport chosenThemeStyles from \"../style/chosen-theme.module.css\"\n\nimport { Ui89Theme } from \"../theme\"\nimport { useUi89Overrides } from \"../Ui89Override\"\n\nexport type Ui89BreadcrumbsPropsOnSelect = (e: {\n item: Ui89BreadcrumbsPropsItem\n}) => void | Promise<void>\n\nexport interface Ui89BreadcrumbsPropsItem {\n label: React.ReactNode\n url?: string\n}\n\nexport interface Ui89BreadcrumbsProps {\n theme?: Ui89Theme | keyof typeof Ui89Theme\n items: Ui89BreadcrumbsPropsItem[]\n onSelect?: Ui89BreadcrumbsPropsOnSelect\n}\n\nexport function Ui89BreadcrumbsItem({\n index,\n item,\n onSelect,\n}: {\n index: number\n item: Ui89BreadcrumbsPropsItem\n onSelect?: Ui89BreadcrumbsPropsOnSelect\n}) {\n const style = { \"--ui89-index\": index } as React.CSSProperties\n const tagname = item.url !== undefined ? \"a\" : \"div\"\n const overrides = useUi89Overrides()\n\n const onClick: React.MouseEventHandler<HTMLAnchorElement> = (e) => {\n if (item.url !== undefined) {\n if (item.url.startsWith(\"/\")) {\n if (overrides.routerPush !== undefined) {\n e.preventDefault()\n overrides.routerPush(item.url)\n }\n }\n }\n }\n\n return (\n <a\n className={`${resetStyles.a} ${styles.breadcrumbsItem}`}\n href={item.url}\n style={style}\n onClick={onClick}\n >\n <div className={styles.breadcrumbsItemBackground}></div>\n {item.label}\n </a>\n )\n}\n\nexport function Ui89Breadcrumbs({\n theme = Ui89Theme.primary,\n items,\n onSelect,\n}: Ui89BreadcrumbsProps) {\n return (\n <div\n className={`${styles.breadcrumbs} ${typoStyles.special} ${chosenThemeStyles[theme]}`}\n >\n {[...items.entries()].reverse().map(([index, item]) => (\n <Ui89BreadcrumbsItem\n key={index}\n index={index}\n item={item}\n onSelect={onSelect}\n />\n ))}\n </div>\n )\n}\n","import React from \"react\"\nimport styles from \"./HoverShadow.module.css\"\n\nexport default function HoverShadow({\n children,\n}: {\n children: React.ReactNode\n}) {\n return (\n <span className={styles.hoverShadow}>\n <span className={styles.hoverShadowBottom}></span>\n <span className={styles.hoverShadowRight}></span>\n {children}\n </span>\n )\n}\n","import React, { useState } from \"react\"\n\nimport styles from \"./Ui89Button.module.css\"\nimport typoStyles from \"../style/typo.module.css\"\nimport chosenThemeStyles from \"../style/chosen-theme.module.css\"\nimport resetStyles from \"../style/reset.module.css\"\n\nimport HoverShadow from \"./HoverShadow\"\n\nimport { Ui89Theme } from \"../theme\"\nimport { useUi89Overrides } from \"../Ui89Override\"\n\nexport enum Ui89ButtonPropsSize {\n standard = \"standard\",\n square = \"square\",\n}\n\nexport interface Ui89ButtonProps {\n theme?: Ui89Theme | keyof typeof Ui89Theme\n size?: Ui89ButtonPropsSize | keyof typeof Ui89ButtonPropsSize\n block?: boolean\n onClick?: () => void | Promise<void>\n href?: string\n children: React.ReactNode\n autoDisableOnClick?: boolean\n disabled?: boolean\n activated?: boolean\n}\n\nexport function Ui89Button({\n theme = Ui89Theme.primary,\n size = Ui89ButtonPropsSize.standard,\n block,\n onClick,\n href,\n children,\n autoDisableOnClick = true,\n disabled,\n activated,\n}: Ui89ButtonProps) {\n const overrides = useUi89Overrides()\n const [clicking, setClicking] = useState(false)\n\n let localDisabled = disabled || (autoDisableOnClick && clicking)\n\n async function onAnchorClick(e: React.MouseEvent<HTMLAnchorElement>) {\n if (localDisabled) {\n // The anchor tag does not support the disabled attribute so we do this.\n return\n }\n\n if (clicking) {\n // No double clicking allowed.\n return\n }\n\n try {\n setClicking(true)\n\n if (href !== undefined) {\n if (href.startsWith(\"/\")) {\n if (overrides.routerPush !== undefined) {\n e.preventDefault()\n overrides.routerPush(href)\n }\n }\n }\n } finally {\n setClicking(false)\n }\n }\n\n async function onButtonClick(e: React.MouseEvent<HTMLButtonElement>) {\n if (localDisabled) {\n // The anchor tag does not support the disabled attribute so we do this.\n return\n }\n\n if (clicking) {\n // No double clicking allowed.\n return\n }\n\n try {\n setClicking(true)\n\n if (onClick === undefined) {\n // No handler.\n return\n }\n\n await onClick()\n } finally {\n setClicking(false)\n }\n }\n\n let containerClass = [\n styles.container,\n styles[\"container--size-\" + size],\n ].join(\" \")\n\n let buttonClass = [\n styles.button,\n typoStyles.special,\n chosenThemeStyles[theme],\n activated ? styles.active : undefined,\n block ? styles.block : undefined,\n disabled ? styles.disabled : undefined,\n clicking ? styles.active : undefined,\n ].join(\" \")\n\n if (href) {\n return (\n <span className={containerClass}>\n <HoverShadow>\n <a\n className={`${resetStyles.a} ${buttonClass}`}\n role=\"button\"\n href={href}\n onClick={onAnchorClick}\n >\n <span className={styles.click}></span>\n <span className={styles.buttonContent}>{children}</span>\n </a>\n </HoverShadow>\n </span>\n )\n } else {\n return (\n <span className={containerClass}>\n <HoverShadow>\n <button\n className={buttonClass}\n type=\"button\"\n onClick={onButtonClick}\n disabled={localDisabled}\n >\n <span className={styles.click}></span>\n <span className={styles.buttonContent}>{children}</span>\n </button>\n </HoverShadow>\n </span>\n )\n }\n}\n","import React from \"react\"\nimport styles from \"./Ui89Card.module.css\"\n\nexport interface Ui89CardProps {\n topLeftCenter?: React.ReactNode\n topCenter?: React.ReactNode\n children: React.ReactNode\n}\n\nexport function Ui89Card({\n topLeftCenter,\n topCenter,\n children,\n}: Ui89CardProps) {\n const hasTopContent = topLeftCenter || topCenter\n\n return (\n <div\n className={`${styles.container} ${hasTopContent ? styles.containerHasTop : \"\"}`}\n >\n <div className={styles.inside}>\n {topLeftCenter && (\n <div className={styles.topLeftCenter}>{topLeftCenter}</div>\n )}\n {topCenter && <div className={styles.topCenter}>{topCenter}</div>}\n\n {hasTopContent && <div className=\"space-vertical-1\"></div>}\n\n {children}\n\n {hasTopContent && <div className=\"space-vertical-1\"></div>}\n </div>\n </div>\n )\n}\n","import React from \"react\"\nimport styles from \"./Ui89Card.module.css\"\n\nexport interface Ui89CardHorizontalConnectionProps {\n children: React.ReactNode\n overflow?: boolean\n}\n\nexport function Ui89CardHorizontalConnection({\n children,\n overflow,\n}: Ui89CardHorizontalConnectionProps) {\n return (\n <div\n className={`${styles.cardHorizontalConnection} ${overflow ? styles[\"cardHorizontalConnection--overflow\"] : \"\"}`}\n >\n {children}\n </div>\n )\n}\n","import React from \"react\"\nimport DatePicker from \"react-datepicker\"\n\nimport \"../../node_modules/react-datepicker/dist/react-datepicker.css\"\nimport \"./Ui89DateTimePicker.css\"\n\nimport inputBoxStyles from \"../style/input-box.module.css\"\nimport typoStyles from \"../style/typo.module.css\"\n\nexport interface Ui89DateTimePickerProps {\n value?: Date | null\n onChange?: (value: Date | null) => void\n}\n\nexport function Ui89DateTimePicker(props: Ui89DateTimePickerProps) {\n function datepickerOnChange(value: Date | null) {\n if (props.onChange) {\n props.onChange(value)\n }\n }\n\n return (\n <span className=\"ui89-date-time-picker\">\n <DatePicker\n className={[inputBoxStyles.inputBox, typoStyles.normal].join(\" \")}\n calendarClassName={typoStyles.normal}\n showTimeSelect\n dateFormat=\"MM/dd/yyyy HH:mm:ss\"\n timeFormat=\"HH:mm\"\n selected={props.value}\n onChange={datepickerOnChange}\n popperPlacement=\"bottom-start\"\n />\n </span>\n )\n}\n","import React, { useState, useEffect } from \"react\"\n\nexport interface TimeAnimationPropsChildrenProps {\n now: Date\n}\n\nexport interface TimeAnimationProps {\n children: (props: TimeAnimationPropsChildrenProps) => React.ReactNode\n}\n\nexport const TimeAnimation: React.FC<TimeAnimationProps> = ({ children }) => {\n const [currentTime, setCurrentTime] = useState(new Date())\n\n useEffect(() => {\n const tick = () => {\n const now = new Date()\n setCurrentTime(now)\n\n // Calculate time until the next exact second\n const msUntilNextSecond = 1000 - now.getMilliseconds()\n setTimeout(tick, msUntilNextSecond)\n }\n\n // Start the first tick\n const msUntilNextSecond = 1000 - currentTime.getMilliseconds()\n const timeoutId = setTimeout(tick, msUntilNextSecond)\n\n return () => clearTimeout(timeoutId)\n }, [])\n\n return <>{children({ now: currentTime })}</>\n}\n","export interface DateComponents {\n hours: number\n minutes: number\n seconds: number\n milliseconds: number\n day: number\n month: number\n year: number\n}\n\nfunction dateComponents(date: Date): DateComponents {\n return {\n hours: date.getHours(),\n minutes: date.getMinutes(),\n seconds: date.getSeconds(),\n milliseconds: date.getMilliseconds(),\n day: date.getDate(),\n month: date.getMonth() + 1,\n year: date.getFullYear(),\n }\n}\n\nexport function dateFormat(date: Date, format: string) {\n const placeholders: Record<string, string> = {\n YYYY: date.getFullYear().toString(),\n MM: (date.getMonth() + 1).toString().padStart(2, \"0\"),\n DD: date.getDate().toString().padStart(2, \"0\"),\n HH: date.getHours().toString().padStart(2, \"0\"),\n mm: date.getMinutes().toString().padStart(2, \"0\"),\n ss: date.getSeconds().toString().padStart(2, \"0\"),\n hh: (date.getHours() % 12 || 12).toString().padStart(2, \"0\"),\n A: date.getHours() >= 12 ? \"PM\" : \"AM\",\n }\n\n // Replace placeholders in the format string\n let formattedDate = format\n for (const [key, value] of Object.entries(placeholders)) {\n formattedDate = formattedDate.replace(key, value)\n }\n\n return formattedDate\n}\n","import React, { useRef } from \"react\"\nimport typoStyles from \"../style/typo.module.css\"\nimport { TimeAnimation, TimeAnimationPropsChildrenProps } from \"./TimeAnimation\"\nimport { dateFormat } from \"../date-utils\"\n\nexport interface Ui89DigitalClockProps {\n format?: string // Custom format string\n}\n\nexport function Ui89DigitalClock({\n format = \"HH:mm:ss\",\n}: Ui89DigitalClockProps) {\n function render({ now }: TimeAnimationPropsChildrenProps) {\n return dateFormat(now, format)\n }\n\n return (\n <span className={`${typoStyles.special}`}>\n <TimeAnimation>{render}</TimeAnimation>\n </span>\n )\n}\n","import React from \"react\"\n\nimport { Ui89Theme } from \"../theme\"\nimport chosenThemeStyles from \"../style/chosen-theme.module.css\"\n\nimport style from \"./Ui89HighlightText.module.css\"\n\nexport interface Ui89HighlightTextProps {\n theme: Ui89Theme | keyof typeof Ui89Theme\n block?: boolean\n children: React.ReactNode\n}\n\nexport function Ui89HighlightText({\n theme,\n block,\n children,\n}: Ui89HighlightTextProps) {\n return (\n <span\n className={`${style.container} ${chosenThemeStyles[theme]} ${block ? style[\"container--block\"] : null}`}\n >\n {children}\n </span>\n )\n}\n","import React from \"react\"\n\nimport style from \"./Ui89Hr.module.css\"\nimport { Ui89Theme } from \"../theme\"\nimport chosenThemeStyles from \"../style/chosen-theme.module.css\"\n\nexport enum Ui89HrPropsLook {\n straight = \"straight\",\n dotted = \"dotted\",\n dashed = \"dashed\",\n double = \"double\",\n}\n\nexport interface Ui89HrProps {\n look?: Ui89HrPropsLook | keyof typeof Ui89HrPropsLook\n theme?: Ui89Theme | keyof typeof Ui89Theme\n}\n\nexport function Ui89Hr({ look = \"straight\", theme }: Ui89HrProps) {\n return (\n <div\n className={`${style.hr} ${style[`hr--${look}`]} ${theme !== undefined ? style[\"hr--use-theme\"] : \"\"} ${theme !== undefined ? chosenThemeStyles[theme] : \"\"}`}\n >\n <div className={style.hrDouble}></div>\n </div>\n )\n}\n","import React, { useRef } from \"react\"\n\nimport styles from \"./Ui89InputFileUpload.module.css\"\nimport typoStyles from \"../style/typo.module.css\"\nimport textStyles from \"../style/text.module.css\"\nimport { Ui89Button } from \"./Ui89Button\"\n\nexport interface Ui89InputFileUploadProps {\n value?: any\n onChange?: (value: File | null) => void\n}\n\nexport function Ui89InputFileUpload({\n value,\n onChange,\n}: Ui89InputFileUploadProps) {\n const inputRef = useRef<HTMLInputElement>(null)\n\n function implOnChange(e: React.ChangeEvent<HTMLInputElement>) {\n if (!onChange) {\n return\n }\n\n if (e.target.files === null) {\n onChange(null)\n return\n }\n\n if (e.target.files.length === 0) {\n onChange(null)\n return\n }\n\n onChange(e.target.files[0])\n }\n\n function onClick() {\n if (inputRef.current === null) {\n return\n }\n\n inputRef.current.click()\n }\n\n return (\n <div>\n <input\n ref={inputRef}\n className={typoStyles.special}\n type=\"file\"\n onChange={implOnChange}\n hidden\n />\n\n {value ? (\n <div className={styles.inputFileUpload}>\n <Ui89Button onClick={onClick}>Change</Ui89Button>\n <span\n className={`${styles.inputFileUpload__info} ${textStyles.singleLine} ${textStyles[\"singleLine--ellipsisLeft\"]}`}\n title={value.name}\n >\n {value.name}\n </span>\n </div>\n ) : (\n <Ui89Button onClick={onClick}>Upload</Ui89Button>\n )}\n </div>\n )\n}\n","import React, { useMemo, useState } from \"react\"\n\nimport styles from \"./Ui89InputSelect.module.css\"\nimport inputBoxStyles from \"../style/input-box.module.css\"\nimport textStyles from \"../style/text.module.css\"\n\nexport interface Ui89InputSelectPropsOption {\n value: string | number\n label: React.ReactNode\n}\n\nexport interface Ui89InputSelectProps {\n options?: (Ui89InputSelectPropsOption | string | number)[]\n value?: string | number\n onChange?: (value: string | number) => void\n}\n\nexport function Ui89InputSelect({\n options,\n value,\n onChange,\n}: Ui89InputSelectProps) {\n const realOptions = useMemo(() => {\n if (options === undefined) {\n return []\n }\n\n return options.map((option) => {\n if (typeof option !== \"object\") {\n return {\n value: option,\n label: String(option),\n }\n } else {\n return option\n }\n })\n }, [options])\n\n const selectedOption = useMemo(() => {\n return (\n realOptions.find((option) => {\n return option.value === value\n }) ?? null\n )\n }, [realOptions, value])\n\n function selectOption(option: Ui89InputSelectPropsOption) {\n if (onChange) {\n onChange(option.value)\n }\n\n if (document.activeElement !== null) {\n // @ts-expect-error\n document.activeElement.blur()\n }\n }\n\n function optionTitle(option: Ui89InputSelectPropsOption) {\n return typeof option.label === \"string\" ? option.label : undefined\n }\n\n return (\n <div className={`${styles.inputSelect}`}>\n <div\n className={[\n inputBoxStyles.inputBox,\n inputBoxStyles[\"inputBox--unselectable\"],\n inputBoxStyles[\"inputBox--clickable\"],\n textStyles.singleLine,\n ].join(\" \")}\n tabIndex={0}\n title={\n selectedOption !== null ? optionTitle(selectedOption) : undefined\n }\n >\n {selectedOption !== null ? <>{selectedOption.label}</> : <>Select...</>}\n </div>\n\n <div className={[styles.menu].join(\" \")} tabIndex={0}>\n <div className={styles.menuContent}>\n {realOptions.length > 0 ? (\n realOptions.map((o) => {\n const isSelected =\n selectedOption && selectedOption.value === o.value\n\n return (\n <div\n className={[\n styles.menuItem,\n isSelected ? styles.selected : null,\n ].join(\" \")}\n title={optionTitle(o)}\n key={o.value}\n onClick={() => selectOption(o)}\n >\n {o.label}\n </div>\n )\n })\n ) : (\n <div\n className={[styles.menuItem, styles[\"menuItem--disabled\"]].join(\n \" \",\n )}\n >\n <empty>\n </div>\n )}\n </div>\n </div>\n </div>\n )\n}\n","import React from \"react\"\nimport { useState } from \"react\"\n\nimport inputBoxStyles from \"../style/input-box.module.css\"\nimport typoStyles from \"../style/typo.module.css\"\n\nexport interface Ui89InputPasswordProps {\n value?: any\n placeholder?: string\n onChange?: (value: any) => void\n}\n\nexport function Ui89InputPassword({\n value,\n placeholder,\n onChange,\n}: Ui89InputPasswordProps) {\n const [intermediateValue, setIntermediateValue] = useState(value ?? \"\")\n\n const implOnChange: React.ChangeEventHandler<HTMLInputElement> = (e) => {\n const newValue = e.target.value\n\n setIntermediateValue(newValue)\n\n if (onChange) {\n onChange(newValue)\n }\n }\n\n return (\n <div>\n <input\n type=\"password\"\n className={`${inputBoxStyles.inputBox} ${typoStyles.special}`}\n role=\"textbox\"\n value={intermediateValue}\n onChange={implOnChange}\n placeholder={placeholder}\n />\n </div>\n )\n}\n","import Timeout from \"smart-timeout\"\n\nlet uniqueId = 0\n\nexport function throttledTimeout() {\n const id = String(uniqueId++)\n let callback: () => void\n\n return {\n call(delay: number, f: () => void) {\n callback = f\n\n if (Timeout.pending(id)) {\n Timeout.restart(id)\n } else {\n Timeout.set(id, () => callback(), delay)\n }\n },\n\n /**\n * If there is a call that has been scheduled, remove it from the queue.\n */\n abort() {\n Timeout.clear(id, true)\n },\n }\n}\n\nexport function spacedTimeout() {\n const id = String(uniqueId++)\n let callback: () => void\n\n return {\n call(delay: number, f: () => void) {\n callback = f\n\n if (!Timeout.pending(id)) {\n Timeout.set(id, () => callback(), delay)\n }\n },\n }\n}\n","import React, { useMemo } from \"react\"\nimport { useState, useEffect, useRef } from \"react\"\nimport { throttledTimeout } from \"../timeout\"\n\nimport inputBoxStyles from \"../style/input-box.module.css\"\nimport typoStyles from \"../style/typo.module.css\"\n\nconst THROTTLE_DELAY = 200\n\nexport interface Ui89InputTextProps {\n value?: any\n placeholder?: string\n autoTrim?: boolean\n onChange?: (value: any) => void\n onTyping?: (value: boolean) => void\n onFocus?: () => void\n onBlur?: () => void\n}\n\nfunction convertAnyToText(value: any) {\n return value ?? \"\"\n}\n\nexport function Ui89InputText({\n value,\n placeholder,\n autoTrim = true,\n onChange,\n onTyping,\n onFocus,\n onBlur,\n}: Ui89InputTextProps) {\n const inputRef = useRef<HTMLInputElement>(null)\n const [intermediateValue, setIntermediateValue] = useState(value)\n const [isTyping, setIsTyping] = useState(false)\n const onChangeRef = useRef(onChange)\n const onChangeThrottled = useMemo(() => throttledTimeout(), [])\n\n useEffect(() => {\n onChangeRef.current = onChange\n }, [onChange])\n\n useEffect(() => {\n if (inputRef.current === null) {\n return\n }\n\n inputRef.current.onfocus = () => {\n setIsTyping(true)\n\n if (onTyping) {\n onTyping(true)\n }\n\n if (onFocus) {\n onFocus()\n }\n }\n\n inputRef.current.onblur = () => {\n onChangeThrottled.abort()\n update()\n\n setIsTyping(false)\n\n if (onTyping) {\n onTyping(false)\n }\n\n if (onBlur) {\n onBlur()\n }\n }\n }, [inputRef.current, onBlur, onFocus])\n\n useEffect(() => {\n if (!isTyping) {\n // Lets show the user what the actual value is.\n onChangeThrottled.call(THROTTLE_DELAY, () => {\n setIntermediateValue(value)\n })\n }\n }, [value])\n\n function implOnChange(e: React.ChangeEvent<HTMLInputElement>) {\n setIntermediateValue(e.target.value)\n onChangeThrottled.call(THROTTLE_DELAY, update)\n }\n\n function update() {\n if (!onChangeRef.current) {\n return\n }\n\n if (inputRef.current === null) {\n return\n }\n\n // We get the current value straight from the element because this function\n // may have been queued.\n let newVal = inputRef.current.value\n\n if (autoTrim) {\n // Must trim after setting intermediate value. Do not want to disturb\n // user.\n newVal = newVal.replace(/\\s+/g, \" \").trim()\n }\n\n if (newVal === value) {\n // Same value.\n return\n }\n\n onChangeRef.current(newVal)\n }\n\n return (\n <div>\n <input\n ref={inputRef}\n value={intermediateValue}\n className={`${inputBoxStyles.inputBox} ${typoStyles.special}`}\n type=\"text\"\n onChange={implOnChange}\n placeholder={placeholder}\n />\n </div>\n )\n}\n","export function stringRemoveAllWhitespace(str: string): string {\n return str.replace(/\\s+/g, \"\")\n}\n","import React from \"react\"\nimport { useState, useEffect } from \"react\"\nimport { Ui89InputText } from \"./Ui89InputText\"\nimport { stringRemoveAllWhitespace } from \"../text-utils\"\n\nexport interface Ui89InputTextNumberProps {\n emptyValue?: any\n value?: any\n min?: number\n max?: number\n onChange?: (value: any) => void\n precision?: number\n}\n\nexport function isTextNumber(text: string): boolean {\n return /\\b\\d+(\\.\\d+)?\\b/.test(text)\n}\n\nfunction displayText(value: any, emptyValue: any) {\n if (value === undefined) {\n // No idea how to display this.\n return \"\"\n } else if (value === emptyValue) {\n // Display emptiness.\n return \"\"\n } else if (isNaN(value)) {\n // No idea what to display.\n return \"\"\n }\n\n return value.toString()\n}\n\nexport function Ui89InputTextNumber({\n /**\n * The value that is emitted when the input is emptied.\n */\n emptyValue = null,\n value,\n min,\n max,\n onChange,\n precision,\n}: Ui89InputTextNumberProps) {\n const [isTyping, setIsTyping] = useState(false)\n const [intermediateValue, setIntermediateValue] = useState(\n displayText(value, emptyValue),\n )\n\n function implOnChange(value: string) {\n if (onChange === undefined) {\n return\n }\n\n if (value === \"\") {\n // Use empty value.\n onChange(emptyValue)\n return\n }\n\n value = stringRemoveAllWhitespace(value)\n\n if (!isTextNumber(value)) {\n // We end here.\n return\n }\n\n const numberValue = Number(value)\n\n if (min !== undefined) {\n if (numberValue <= min) {\n value = String(min)\n }\n }\n\n if (max !== undefined) {\n if (numberValue >= max) {\n value = String(max)\n }\n }\n\n onChange(value)\n }\n\n useEffect(() => {\n if (!isTyping) {\n setIntermediateValue(displayText(value, emptyValue))\n }\n }, [isTyping, value])\n\n return (\n <Ui89InputText\n value={intermediateValue}\n onChange={implOnChange}\n onTyping={setIsTyping}\n />\n )\n}\n","import React, { useState } from \"react\"\n\nimport resetStyles from \"../style/reset.module.css\"\nimport styles from \"./Ui89LinkUnderline.module.css\"\n\nimport { useUi89Overrides } from \"../Ui89Override\"\n\nexport interface Ui89LinkUnderlineProps {\n onClick?: () => void | Promise<void>\n href?: string\n children: React.ReactNode\n autoDisableOnClick?: boolean\n disabled?: boolean\n}\n\nexport function Ui89LinkUnderline(props: Ui89LinkUnderlineProps) {\n const overrides = useUi89Overrides()\n const [clicking, setClicking] = useState(false)\n\n let localDisabled =\n props.disabled || ((props.autoDisableOnClick ?? true) && clicking)\n\n async function onClick(e: React.MouseEvent<HTMLAnchorElement>) {\n if (localDisabled) {\n // The anchor tag does not support the disabled attribute so we do this.\n return\n }\n\n try {\n setClicking(true)\n\n if (props.onClick !== undefined) {\n // A function takes over control.\n e.preventDefault()\n await props.onClick()\n } else if (props.href !== undefined) {\n if (props.href.startsWith(\"/\")) {\n if (overrides.routerPush !== undefined) {\n e.preventDefault()\n overrides.routerPush(props.href)\n }\n }\n } else {\n // Do nothing.\n e.preventDefault()\n }\n } finally {\n setClicking(false)\n }\n }\n\n let containerClass = [styles.link].join(\" \")\n\n return (\n <a\n className={`${resetStyles.a} ${containerClass}`}\n role=\"link\"\n href={props.href}\n onClick={onClick}\n >\n {props.children}\n </a>\n )\n}\n","import React from \"react\"\n\nimport styles from \"./Ui89MenuBar.module.css\"\nimport typoStyles from \"../style/typo.module.css\"\nimport scrollbarStyles from \"../style/scrollbar.module.css\"\n\nexport interface Ui89MenuBarPropsItem {\n label: React.ReactNode\n onClick?: () => void\n children?: Ui89MenuBarPropsItem[]\n}\n\nexport interface Ui89MenuBarProps {\n items: Ui89MenuBarPropsItem[]\n}\n\nexport function Ui89MenuBar({ items }: Ui89MenuBarProps) {\n return (\n <div\n className={`${styles.menuBar} ${typoStyles.special} ${scrollbarStyles.container}`}\n >\n {items.map((item, index) => {\n function onNativeClick() {\n if (item.onClick !== undefined) {\n item.onClick()\n }\n }\n\n return (\n <div\n key={index}\n className={styles.menuBarItem}\n onClick={onNativeClick}\n >\n {item.label}\n </div>\n )\n })}\n </div>\n )\n}\n","import React from \"react\"\n\nimport { Ui89Look } from \"../theme\"\n\nimport styles from \"./Ui89Scene.module.css\"\nimport lookStyles from \"../style/look.module.css\"\nimport typoStyles from \"../style/typo.module.css\"\nimport scrollbarStyles from \"../style/scrollbar.module.css\"\n\nexport interface Ui89SceneProps {\n look?: Ui89Look | string\n children: React.ReactNode\n}\n\nexport function Ui89Scene({ look = Ui89Look.main, children }: Ui89SceneProps) {\n return (\n <div\n className={`${styles.scene} ${lookStyles[look]} ${typoStyles.normal} ${scrollbarStyles.container}`}\n >\n {children}\n </div>\n )\n}\n","import React from \"react\"\nimport styles from \"./GridExpandTrick.module.css\"\n\nexport default function GridExpandTrick({\n children,\n}: {\n children: React.ReactNode\n}) {\n return <span className={styles.gridExpandTrick}>{children}</span>\n}\n","import React from \"react\"\nimport styles from \"./ScrollContainer.module.css\"\n\nexport default function ScrollContainer({\n children,\n}: {\n children: React.ReactNode\n}) {\n return <span className={styles.scrollContainer}>{children}</span>\n}\n","import styles from \"./Ui89ModalDialog.module.css\"\nimport React, { useMemo } from \"react\"\nimport { createPortal } from \"react-dom\"\nimport { Ui89Card } from \"./Ui89Card\"\nimport HoverShadow from \"./HoverShadow\"\nimport { Ui89Scene } from \"./Ui89Scene\"\nimport GridExpandTrick from \"./GridExpandTrick\"\nimport ScrollContainer from \"./ScrollContainer\"\n\nexport interface Ui89ModalDialogProps {\n open: boolean\n size?: string\n children?: React.ReactNode\n topCenter?: React.ReactNode\n onRequestClose?: () => void\n}\n\nconst portalRoot: HTMLElement | null =\n typeof document !== \"undefined\" ? document.body : null\n\nexport function Ui89ModalDialog({\n open,\n size = \"medium\",\n children,\n topCenter,\n onRequestClose,\n}: Ui89ModalDialogProps) {\n const dialogClass = useMemo(() => {\n return [styles.dialog, open ? styles[\"dialog--open\"] : \"\"].join(\" \")\n }, [size, open])\n\n const dialogBoxClass = useMemo(() => {\n return [styles.dialogBox, styles[`dialogBox--size-${size}`]].join(\" \")\n }, [size, open])\n\n function onClickBackdrop() {\n if (onRequestClose !== undefined) {\n onRequestClose()\n }\n }\n\n const vdom = (\n <div className={dialogClass} role=\"dialog\">\n <div\n className={styles.dialogBackdrop}\n role=\"presentation\"\n onClick={onClickBackdrop}\n ></div>\n\n <div className={dialogBoxClass}>\n <div className={styles.spacer}></div>\n\n <HoverShadow>\n <GridExpandTrick>\n <Ui89Scene>\n <Ui89Card topCenter={topCenter}>\n <ScrollContainer>{children}</ScrollContainer>\n </Ui89Card>\n </Ui89Scene>\n </GridExpandTrick>\n </HoverShadow>\n </div>\n </div>\n )\n\n return portalRoot !== null ? createPortal(vdom, portalRoot) : vdom\n}\n","import React from \"react\"\n\nimport style from \"./Ui89NameValuePair.module.css\"\n\nexport interface Ui89NameValuePairProps {\n name: React.ReactNode\n value: React.ReactNode\n leftMaxWidth?: number\n}\n\nexport function Ui89NameValuePair({\n name,\n value,\n leftMaxWidth,\n}: Ui89NameValuePairProps) {\n return (\n <div className={style.nameValuePair}>\n <div\n className={style.nameValuePair__nameWrapper}\n style={{ maxWidth: `${leftMaxWidth}px` }}\n >\n <div className={style.nameValuePair__name}>{name}</div>\n <div className={style.nameValuePair__dots}></div>\n </div>\n <div className={style.nameValuePair__value}>{value}</div>\n </div>\n )\n}\n","import * as React from \"react\";\nconst SvgShortcut = (props) => /* @__PURE__ */ React.createElement(\"svg\", { xmlns: \"http://www.w3.org/2000/svg\", width: 100, height: 100, viewBox: \"0 0 100 100\", ...props }, /* @__PURE__ */ React.createElement(\"rect\", { x: 0, y: 0, width: 100, height: 100, fill: \"white\" }), /* @__PURE__ */ React.createElement(\"line\", { x1: 80, y1: 80, x2: 20, y2: 20, stroke: \"black\", strokeWidth: 15 }), /* @__PURE__ */ React.createElement(\"line\", { x1: 20, y1: 20, x2: 50, y2: 20, stroke: \"black\", strokeWidth: 15, strokeLinecap: \"round\" }), /* @__PURE__ */ React.createElement(\"line\", { x1: 20, y1: 20, x2: 20, y2: 50, stroke: \"black\", strokeWidth: 15, strokeLinecap: \"round\" }));\nexport default SvgShortcut;\n","import React from \"react\"\n\nexport interface Ui89SpaceVerticalProps {\n gap?: number\n}\n\nexport function Ui89SpaceVertical({ gap = 1 }: Ui89SpaceVerticalProps) {\n const style = {\n paddingTop: `calc(var(--ui89-safe-space) * ${gap})`,\n }\n\n return <div style={style}></div>\n}\n","import React from \"react\"\n\nimport ShortcutSvg from \"../images/shortcut.svg\"\n\nimport styles from \"./Ui89Shortcut.module.css\"\nimport typoStyles from \"../style/typo.module.css\"\n\nimport { Ui89SpaceVertical } from \"./Ui89SpaceVertical\"\n\nexport interface Ui89ShortcutProps {\n imageUrl: string\n label: React.ReactNode\n onClick?: () => void\n}\n\nexport function Ui89Shortcut({\n imageUrl,\n label,\n onClick = () => {},\n}: Ui89ShortcutProps) {\n function onNativeClick() {\n onClick()\n }\n\n return (\n <div className={styles.container} onClick={onNativeClick}>\n <div className={styles.imageContainer}>\n <img className={styles.image} src={imageUrl} />\n\n <div className={styles.shortcutIconContainer}>\n <ShortcutSvg className={styles.shortcutIcon} width={16} height={16} />\n </div>\n </div>\n\n <Ui89SpaceVertical gap={1} />\n\n <div\n className={`${styles.label} ${typoStyles.smallBold}`}\n onClick={onNativeClick}\n >\n {label}\n </div>\n </div>\n )\n}\n","import React from \"react\"\n\nexport interface Ui89SpacePaddingProps {\n gap?: number\n gapVertical?: number\n gapHorizontal?: number\n gapTop?: number\n gapRight?: number\n gapBottom?: number\n gapLeft?: number\n children?: React.ReactNode\n}\n\nexport function Ui89SpacePadding(props: Ui89SpacePaddingProps) {\n const gap = props.gap ?? 1\n\n const style = {\n paddingTop: `calc(var(--ui89-safe-space) * ${props.gapTop ?? props.gapVertical ?? gap})`,\n paddingRight: `calc(var(--ui89-safe-space) * ${props.gapRight ?? props.gapHorizontal ?? gap})`,\n paddingBottom: `calc(var(--ui89-safe-space) * ${props.gapBottom ?? props.gapVertical ?? gap})`,\n paddingLeft: `calc(var(--ui89-safe-space) * ${props.gapLeft ?? props.gapHorizontal ?? gap})`,\n }\n\n return <div style={style}>{props.children}</div>\n}\n","import React from \"react\"\n\nimport styles from \"./Ui89Tabs.module.css\"\nimport typoStyles from \"../style/typo.module.css\"\nimport chosenThemeStyles from \"../style/chosen-theme.module.css\"\n\nexport interface Ui89TabsPropsOption {\n value: string | number\n label: React.ReactNode\n}\n\nexport interface Ui89TabsProps {\n selected?: any\n onChange?: (value: string | number) => void\n options?: Ui89TabsPropsOption[]\n\n /**\n * Stretch options such that they evenly take up the entire width.\n */\n stretch?: boolean\n}\n\nexport function Ui89Tabs({\n selected,\n onChange = () => {},\n options = [],\n stretch,\n}: Ui89TabsProps) {\n function handleOnChange(value: string | number) {\n onChange(value)\n }\n\n return (\n <div\n className={[\n styles.navigation,\n stretch ? styles[\"navigation--stretch\"] : \"\",\n ].join(\" \")}\n >\n {options.map((option) => (\n <div\n className={[\n styles.navigationItem,\n typoStyles.smallBold,\n selected === option.value ? styles.navigationItemSelected : \"\",\n ].join(\" \")}\n key={option.value}\n onClick={() => handleOnChange(option.value)}\n >\n {option.label}\n </div>\n ))}\n </div>\n )\n}\n","import { Ui89Card } from \"./Ui89Card\"\nimport { Ui89Tabs } from \"./Ui89Tabs\"\nimport React, { useCallback, useMemo } from \"react\"\n\nexport interface Ui89TabbedCardProps {\n selected?: any\n onChange?: (value: string | number) => void\n options?: Ui89TabbedCardPropsOption[]\n}\n\nexport interface Ui89TabbedCardPropsOption {\n value: string | number\n label: React.ReactNode\n render: () => React.JSX.Element\n}\n\nexport function Ui89TabbedCard({\n selected,\n onChange,\n options = [],\n}: Ui89TabbedCardProps) {\n const selectedItem = useMemo<Ui89TabbedCardPropsOption | null>(() => {\n return options.find((item) => item.value === selected) ?? null\n }, [selected, options])\n\n const render = useMemo(() => {\n return selectedItem !== null ? selectedItem.render : () => <></>\n }, [selectedItem])\n\n const renderKey = useMemo(() => {\n return selectedItem !== null ? selectedItem.value : undefined\n }, [selectedItem])\n\n return (\n <Ui89Card\n topCenter={\n <Ui89Tabs selected={selected} options={options} onChange={onChange} />\n }\n >\n <React.Fragment key={renderKey}>{render()}</React.Fragment>\n </Ui89Card>\n )\n}\n","import React from \"react\"\n\nimport { Ui89Theme } from \"../theme\"\nimport typoStyles from \"../style/typo.module.css\"\nimport chosenThemeStyles from \"../style/chosen-theme.module.css\"\n\nimport style from \"./Ui89TagBox.module.css\"\n\nexport interface Ui89TagBoxProps {\n theme: Ui89Theme | keyof typeof Ui89Theme\n children: React.ReactNode\n}\n\nexport function Ui89TagBox({ theme, children }: Ui89TagBoxProps) {\n return (\n <div\n className={`${style.container} ${typoStyles.special} ${chosenThemeStyles[theme]}`}\n >\n {children}\n </div>\n )\n}\n","import React, { useState } from \"react\"\n\nimport styles from \"./Ui89ThemeBackground.module.css\"\nimport chosenThemeStyles from \"../style/chosen-theme.module.css\"\n\nimport { Ui89Theme } from \"../theme\"\n\nexport interface Ui89ThemeBackgroundProps {\n theme?: Ui89Theme | keyof typeof Ui89Theme\n children: React.ReactNode\n}\n\nexport function Ui89ThemeBackground({\n theme = Ui89Theme.primary,\n children,\n}: Ui89ThemeBackgroundProps) {\n return (\n <div className={`${styles.background} ${chosenThemeStyles[theme]}`}>\n {children}\n </div>\n )\n}\n","import React from \"react\"\n\nimport styles from \"./Ui89TitleBox.module.css\"\nimport typoStyles from \"../style/typo.module.css\"\nimport textStyles from \"../style/text.module.css\"\n\nexport interface Ui89TitleBoxProps {\n children: React.ReactNode\n}\n\nexport function Ui89TitleBox({ children }: Ui89TitleBoxProps) {\n return (\n <div className={`${styles.container} ${typoStyles.special}`}>\n <div className={`${styles.inside} ${textStyles.singleLine}`}>\n {children}\n </div>\n </div>\n )\n}\n","import React from \"react\"\n\nimport styles from \"./Ui89TitleUnderline.module.css\"\nimport typoStyles from \"../style/typo.module.css\"\nimport textStyles from \"../style/text.module.css\"\n\nexport interface Ui89TitleUnderlineProps {\n children: React.ReactNode\n}\n\nexport function Ui89TitleUnderline({ children }: Ui89TitleUnderlineProps) {\n return (\n <div className={`${styles.container} ${typoStyles.special}`}>\n <div className={`${styles.inside} ${textStyles.singleLine}`}>\n {children}\n </div>\n </div>\n )\n}\n","import React from \"react\"\nimport { ToastContainer, toast } from \"react-toastify\"\n\nimport typoStyles from \"../style/typo.module.css\"\nimport chosenThemeStyles from \"../style/chosen-theme.module.css\"\nimport { Ui89Theme } from \"../theme\"\n\nexport interface Ui89ToasterOptions {\n theme?: Ui89Theme | keyof typeof Ui89Theme\n autoClose?: boolean\n duration?: number\n}\n\nexport function useUi89Toaster() {\n return {\n toast(\n content: React.ReactNode,\n options: Ui89ToasterOptions = { theme: Ui89Theme.primary },\n ) {\n const classNames = [\"ui89-toaster\", typoStyles.normal]\n\n if (options.theme !== undefined) {\n classNames.push(chosenThemeStyles[options.theme])\n }\n\n let autoClose: boolean | number = 5000\n\n if (options.duration !== undefined) {\n autoClose = options.duration\n }\n\n if (options.autoClose !== undefined) {\n if (!options.autoClose) {\n autoClose = false\n }\n }\n\n return toast(() => content, {\n className: classNames.join(\" \"),\n type: \"default\",\n autoClose,\n closeButton: false,\n hideProgressBar: true,\n closeOnClick: true,\n })\n },\n }\n}\n\nexport function Ui89Toaster() {\n return <ToastContainer />\n}\n","import React, { forwardRef, useMemo } from \"react\"\n// @ts-ignore\nimport { VariableSizeGrid } from \"react-window\"\nimport AutoSizer from \"react-virtualized-auto-sizer\"\nimport styles from \"./Ui89VirtualTable.module.css\"\nimport typoStyles from \"../style/typo.module.css\"\nimport { Ui89TagBox } from \"./Ui89TagBox\"\n\nconst HEADER_HEIGHT = 30\n\ninterface VariableSizeGridProps {\n columnIndex: number\n rowIndex: number\n style: React.CSSProperties\n}\n\nexport interface Ui89VirtualTablePropsColumnRenderHeaderParams<T> {\n index: number\n column: Ui89VirtualTablePropsColumn<T>\n}\n\nexport interface Ui89VirtualTablePropsColumnRenderBodyParams<T> {\n index: number\n row: T\n}\n\nexport interface Ui89VirtualTablePropsColumn<T> {\n width?: number\n renderHeader?: React.FC<Ui89VirtualTablePropsColumnRenderHeaderParams<T>>\n renderBody: React.FC<Ui89VirtualTablePropsColumnRenderBodyParams<T>>\n}\n\nexport interface Ui89VirtualTableProps<T> {\n rows?: T[]\n columns?: Ui89VirtualTablePropsColumn<T>[]\n rowHeight?: number\n}\n\nexport function Ui89VirtualTable<T>(props: Ui89VirtualTableProps<T>) {\n const rows = useMemo(() => {\n return props.rows !== undefined ? props.rows : []\n }, [props.rows])\n\n const columns = useMemo(() => {\n return props.columns !== undefined ? props.columns : []\n }, [props.columns])\n\n function getRowHeight(index: number): number {\n if (index === 0) {\n // Header.\n return HEADER_HEIGHT\n } else {\n // Body\n return props.rowHeight ?? 50\n }\n }\n\n function getColumnWidth(index: number): number {\n return columns[index].width ?? 100\n }\n\n function getColumnHorizontalOffset(columnIndex: number) {\n let offset = 0\n\n for (let i = 0; i < columnIndex; i++) {\n offset += getColumnWidth(i)\n }\n\n return offset\n }\n\n function isLastColumn(columnIndex: number): boolean {\n return columnIndex === columns.length - 1\n }\n\n function getColumnClass(columnIndex: number, rowIndex: number): string {\n const classes = [styles.cell]\n\n if (rowIndex === 0) {\n classes.push(styles[\"cell--row-first\"])\n }\n\n if (rowIndex === rows.length) {\n classes.push(styles[\"cell--row-last\"])\n }\n\n if (columnIndex === 0) {\n classes.push(styles[\"cell--column-first\"])\n }\n\n if (isLastColumn(columnIndex)) {\n classes.push(styles[\"cell--column-last\"])\n }\n\n return classes.join(\" \")\n }\n\n /**\n * The width of an entire row.\n */\n function rowWidth() {\n return getColumnHorizontalOffset(columns.length)\n }\n\n // This is the secret to having sticky headers.\n const innerElementType = forwardRef(({ children, ...rest }: any, ref) => (\n <div ref={ref} {...rest}>\n <div className={styles.tableHeader}>\n {columns.map((column, index) => (\n <div\n key={index}\n className={[getColumnClass(index, 0), typoStyles.normalBold].join(\n \" \",\n )}\n style={{\n left: getColumnHorizontalOffset(index),\n width: getColumnWidth(index) + \"px\",\n height: getRowHeight(0) + \"px\",\n }}\n >\n {column.renderHeader !== undefined && (\n <column.renderHeader index={index} column={column} />\n )}\n </div>\n ))}\n\n <div\n className={styles.rowBorder}\n style={{ top: 0, transform: `translateY(${getRowHeight(0) + \"px\"})` }}\n ></div>\n </div>\n\n {children}\n </div>\n ))\n\n function renderRowBorder(columnIndex: number, style: React.CSSProperties) {\n if (!isLastColumn(columnIndex)) {\n // Do nothing.\n return\n }\n\n let rowBorderStyle = {\n ...style,\n\n // Will want to stretch width.\n left: 0,\n right: 0,\n width: undefined,\n }\n\n return <div className={styles.rowBorder} style={rowBorderStyle}></div>\n }\n\n return (\n <div className={styles.table}>\n {rows.length > 0 ? (\n <div className={styles.tableBody}>\n <AutoSizer>\n {({ height, width }) => (\n <VariableSizeGrid\n columnCount={columns.length}\n columnWidth={getColumnWidth}\n rowCount={rows.length + 1}\n rowHeight={getRowHeight}\n width={width}\n height={height}\n innerElementType={innerElementType}\n >\n {({ columnIndex, rowIndex, style }: VariableSizeGridProps) => (\n <>\n <div\n className={getColumnClass(columnIndex, rowIndex)}\n style={style}\n >\n {/* We do not render the first column. That space is reserved for the header */}\n {rowIndex !== 0 &&\n [columns[columnIndex].renderBody].map((BodyContent) => (\n <BodyContent\n key={rowIndex}\n index={rowIndex - 1}\n row={rows[rowIndex - 1]}\n />\n ))}\n </div>\n\n {renderRowBorder(columnIndex, style)}\n </>\n )}\n </VariableSizeGrid>\n )}\n </AutoSizer>\n </div>\n ) : (\n <div className={styles.empty}>\n <Ui89TagBox theme=\"warning\">Empty</Ui89TagBox>\n </div>\n )}\n </div>\n )\n}\n"],"names":["React","resetStyles","styles","typoStyles","chosenThemeStyles","inputBoxStyles","style","textStyles","scrollbarStyles","lookStyles","ShortcutSvg"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-ui89",
|
|
3
3
|
"description": "A collection of React components that mimic a common style of user interfaces from the late 80s and early 90s.",
|
|
4
|
-
"version": "0.29.
|
|
4
|
+
"version": "0.29.3",
|
|
5
5
|
"author": "Daniel Araujo",
|
|
6
6
|
"module": "dist/esm/index.js",
|
|
7
7
|
"files": [
|