@platformatic/ui-components 0.1.67 → 0.1.69
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/assets/{index.b6eabf18.css → index.611cc270.css} +1 -1
- package/dist/index.html +1 -1
- package/dist/main.css +6 -2
- package/package.json +1 -1
- package/src/components/ButtonFullRounded.jsx +1 -1
- package/src/components/ButtonFullRounded.module.css +1 -1
- package/src/components/Checkbox.module.css +2 -2
- package/src/components/FollowUs.jsx +6 -5
- package/src/components/FollowUs.module.css +1 -1
- package/src/components/Modal.jsx +80 -56
- package/src/components/Modal.module.css +20 -17
- package/src/components/Sidebar.jsx +6 -3
- package/src/components/Status.jsx +2 -2
- package/src/components/constants.js +6 -0
- package/src/stories/Modal.stories.jsx +13 -23
|
@@ -1 +1 @@
|
|
|
1
|
-
._input_1k1s3_1{box-sizing:border-box;display:flex;height:2.5rem;width:100%;justify-content:space-between;border-radius:.375rem;border-width:1px;border-style:solid;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}._onFocus_1k1s3_4{--tw-border-opacity: 1;border-color:rgb(33 250 144 / var(--tw-border-opacity))}._onBlur_1k1s3_7{--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity))}._fillGreen_1k1s3_10{fill:#21fa90}._fillWhite_1k1s3_13{fill:#fff}._input_1k1s3_1>input:focus{outline:2px solid transparent;outline-offset:2px}._title_1k1s3_19{padding-bottom:1rem;font-size:1.875rem;line-height:2.25rem;font-weight:600;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}._bordered_1c6m4_1{box-sizing:border-box;border-radius:.375rem;border-width:1px;border-style:solid}._bordered--main-green_1c6m4_4{--tw-border-opacity: 1;border-color:rgb(33 250 144 / var(--tw-border-opacity))}._bordered--main-dark-blue_1c6m4_7{--tw-border-opacity: 1;border-color:rgb(0 40 61 / var(--tw-border-opacity))}._bordered--error-red_1c6m4_10{--tw-border-opacity: 1;border-color:rgb(250 33 33 / var(--tw-border-opacity))}._bordered--warning-yellow_1c6m4_13{--tw-border-opacity: 1;border-color:rgb(254 185 40 / var(--tw-border-opacity))}._bordered--dark-blue_1c6m4_16{--tw-border-opacity: 1;border-color:rgb(0 52 79 / var(--tw-border-opacity))}._bordered--white_1c6m4_19{--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity))}._error-message_1c6m4_23{position:absolute;bottom:-1.25rem;padding-left:.5rem;padding-right:.5rem;font-size:.75rem;line-height:1rem;--tw-text-opacity: 1;color:rgb(250 33 33 / var(--tw-text-opacity))}._padded_1c6m4_27{padding:.625rem .5rem}._text--error-red_1c6m4_31{--tw-text-opacity: 1;color:rgb(250 33 33 / var(--tw-text-opacity))}._text--white_1c6m4_34{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}._text--main-green_1c6m4_37{--tw-text-opacity: 1;color:rgb(33 250 144 / var(--tw-text-opacity))}._text--main-dark-blue_1c6m4_40{--tw-text-opacity: 1;color:rgb(0 40 61 / var(--tw-text-opacity))}._background-color-main-green_1c6m4_44{--tw-bg-opacity: 1 !important;background-color:rgb(33 250 144 / var(--tw-bg-opacity))!important}._background-color-light-green_1c6m4_47{--tw-bg-opacity: 1 !important;background-color:rgb(33 241 144 / var(--tw-bg-opacity))!important}._background-color-dark-green_1c6m4_50{--tw-bg-opacity: 1 !important;background-color:rgb(2 120 63 / var(--tw-bg-opacity))!important}._background-color-main-dark-blue_1c6m4_53{--tw-bg-opacity: 1 !important;background-color:rgb(0 40 61 / var(--tw-bg-opacity))!important}._background-color-dark-blue_1c6m4_56{--tw-bg-opacity: 1 !important;background-color:rgb(0 52 79 / var(--tw-bg-opacity))!important}._background-color-light-blue_1c6m4_59{--tw-bg-opacity: 1 !important;background-color:rgb(233 247 255 / var(--tw-bg-opacity))!important}._background-color-white_1c6m4_62{--tw-bg-opacity: 1 !important;background-color:rgb(255 255 255 / var(--tw-bg-opacity))!important}._background-color-error-red_1c6m4_65{--tw-bg-opacity: 1 !important;background-color:rgb(250 33 33 / var(--tw-bg-opacity))!important}._background-color-tertiary-blue_1c6m4_68{--tw-bg-opacity: 1 !important;background-color:rgb(37 136 228 / var(--tw-bg-opacity))!important}._background-color-warning-yellow_1c6m4_71{--tw-bg-opacity: 1 !important;background-color:rgb(254 185 40 / var(--tw-bg-opacity))!important}._background-color-transparent_1c6m4_74{background-color:transparent}._background-color-opaque-100_1c6m4_77{--tw-bg-opacity: 1 !important}._background-color-opaque-60_1c6m4_80{--tw-bg-opacity: .6 !important}._background-color-opaque-30_1c6m4_83{--tw-bg-opacity: .3 !important}._background-color-opaque-20_1c6m4_86{--tw-bg-opacity: .2 !important}._apply-opacity-30_1c6m4_89{opacity:.3}._padding--none_1c6m4_92{padding:0}._padding--small_1c6m4_95{padding:.25rem}._padding--medium_1c6m4_98{padding:.5rem}._padding--large_1c6m4_101{padding:1rem}._padding--extra-large_1c6m4_104{padding:1.5rem}._hover-background-color-opaque-main-green_1c6m4_107:hover{background-color:rgb(33 250 144 / var(--tw-bg-opacity));--tw-bg-opacity: .2 }._hover-background-color-opaque-light-green_1c6m4_110:hover{background-color:rgb(33 241 144 / var(--tw-bg-opacity));--tw-bg-opacity: .2 }._hover-background-color-opaque-dark-green_1c6m4_113:hover{background-color:rgb(2 120 63 / var(--tw-bg-opacity));--tw-bg-opacity: .2 }._hover-background-color-opaque-main-dark-blue_1c6m4_116:hover{background-color:rgb(0 40 61 / var(--tw-bg-opacity));--tw-bg-opacity: .2 }._hover-background-color-opaque-dark-blue_1c6m4_119:hover{background-color:rgb(0 52 79 / var(--tw-bg-opacity));--tw-bg-opacity: .2 }._hover-background-color-opaque-light-blue_1c6m4_122:hover{background-color:rgb(233 247 255 / var(--tw-bg-opacity));--tw-bg-opacity: .2 }._hover-background-color-opaque-white_1c6m4_125:hover{background-color:rgb(255 255 255 / var(--tw-bg-opacity));--tw-bg-opacity: .2 }._hover-background-color-opaque-error-red_1c6m4_128:hover{background-color:rgb(250 33 33 / var(--tw-bg-opacity));--tw-bg-opacity: .2 }._hover-background-color-opaque-tertiary-blue_1c6m4_131:hover{background-color:rgb(37 136 228 / var(--tw-bg-opacity));--tw-bg-opacity: .2 }._main-green_s6yir_1>circle,._main-green_s6yir_1>ellipse,._main-green_s6yir_1>rect,._main-green_s6yir_1>line,._main-green_s6yir_1>path{stroke:#21fa90}._error-red_s6yir_10>circle,._error-red_s6yir_10>ellipse,._error-red_s6yir_10>rect,._error-red_s6yir_10>line,._error-red_s6yir_10>path{stroke:#fa2121}._white_s6yir_18>circle,._white_s6yir_18>ellipse,._white_s6yir_18>rect,._white_s6yir_18>line,._white_s6yir_18>path{stroke:#fff}._main-dark-blue_s6yir_25>circle,._main-dark-blue_s6yir_25>ellipse,._main-dark-blue_s6yir_25>rect,._main-dark-blue_s6yir_25>line,._main-dark-blue_s6yir_25>path{stroke:#00283d}._warning-yellow_s6yir_32>circle,._warning-yellow_s6yir_32>ellipse,._warning-yellow_s6yir_32>rect,._warning-yellow_s6yir_32>line,._warning-yellow_s6yir_32>path{stroke:#feb928}._filled-white_s6yir_40{fill:#fff}._filled-error-red_s6yir_43{fill:#fa2121}._filled-main-dark-blue_s6yir_46{fill:#00283d}._filled-main-green_s6yir_49{fill:#21fa90}._filled-warning-yellow_s6yir_52{fill:#feb928}._fill-circle-green_s6yir_56>circle{fill:#fff}._fill-circle-main-dark-blue_s6yir_59>circle{fill:#00283d}._noShrinkForFlex_s6yir_63{flex-shrink:0}._cursorPointer_ydxr1_1{cursor:pointer}._tabbed-container_16gar_1{--tw-bg-opacity: 1;background-color:rgb(0 40 61 / var(--tw-bg-opacity))}._tabs-header_16gar_5{margin-bottom:1rem;display:flex;height:2rem;justify-content:flex-start;text-transform:uppercase;letter-spacing:.25em;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}._tabs-header_16gar_5:hover{cursor:pointer}._tab_16gar_1{margin-left:2rem;margin-right:2rem;min-width:105px;text-align:center;font-size:.875rem;line-height:1.25rem}._tab_16gar_1:first-child{margin-left:0}._tab_16gar_1:last-child{margin-right:0}._selected-tab_16gar_11{font-weight:700;--tw-text-opacity: 1;color:rgb(33 250 144 / var(--tw-text-opacity));text-decoration-line:underline;text-underline-offset:8px}._tabs-content_16gar_15{height:100vh}._borderedBox_170cy_1{flex:1 1 0%;row-gap:1rem;border-radius:.375rem;padding:1.25rem;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:currentColor}:before,:after{--tw-content: ""}html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Montserrat}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.container{width:100%;margin-right:auto;margin-left:auto}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1440px){.container{max-width:1440px}}@media (min-width: 1536px){.container{max-width:1536px}}.relative{position:relative}.m-3{margin:.75rem}.mx-auto{margin-left:auto;margin-right:auto}.my-5{margin-top:1.25rem;margin-bottom:1.25rem}.ml-0{margin-left:0}.ml-4{margin-left:1rem}.mt-4{margin-top:1rem}.flex{display:flex}.inline-flex{display:inline-flex}.h-screen{height:100vh}.grow{flex-grow:1}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.flex-col{flex-direction:column}.gap-10{gap:2.5rem}.gap-y-6{row-gap:1.5rem}.border{border-width:1px}.px-5{padding-left:1.25rem;padding-right:1.25rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-6xl{font-size:3.75rem;line-height:1}.text-2xl{font-size:1.5rem;line-height:2rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.font-bold{font-weight:700}.text-error-red{--tw-text-opacity: 1;color:rgb(250 33 33 / var(--tw-text-opacity))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.text-main-green{--tw-text-opacity: 1;color:rgb(33 250 144 / var(--tw-text-opacity))}.text-dark-green{--tw-text-opacity: 1;color:rgb(2 120 63 / var(--tw-text-opacity))}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}@font-face{font-family:Montserrat;src:url(/assets/Montserrat-Regular.dcfe8df2.ttf) format("truetype");font-weight:400;font-style:normal}:root{--tw-bg-opacity: 1;background-color:rgb(0 40 61 / var(--tw-bg-opacity));font-family:Montserrat}a{--tw-text-opacity: 1;color:rgb(37 136 228 / var(--tw-text-opacity))}input{background-color:transparent}.hover\:cursor-pointer:hover{cursor:pointer}
|
|
1
|
+
._input_1k1s3_1{box-sizing:border-box;display:flex;height:2.5rem;width:100%;justify-content:space-between;border-radius:.375rem;border-width:1px;border-style:solid;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}._onFocus_1k1s3_4{--tw-border-opacity: 1;border-color:rgb(33 250 144 / var(--tw-border-opacity))}._onBlur_1k1s3_7{--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity))}._fillGreen_1k1s3_10{fill:#21fa90}._fillWhite_1k1s3_13{fill:#fff}._input_1k1s3_1>input:focus{outline:2px solid transparent;outline-offset:2px}._title_1k1s3_19{padding-bottom:1rem;font-size:1.875rem;line-height:2.25rem;font-weight:600;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}._bordered_1c6m4_1{box-sizing:border-box;border-radius:.375rem;border-width:1px;border-style:solid}._bordered--main-green_1c6m4_4{--tw-border-opacity: 1;border-color:rgb(33 250 144 / var(--tw-border-opacity))}._bordered--main-dark-blue_1c6m4_7{--tw-border-opacity: 1;border-color:rgb(0 40 61 / var(--tw-border-opacity))}._bordered--error-red_1c6m4_10{--tw-border-opacity: 1;border-color:rgb(250 33 33 / var(--tw-border-opacity))}._bordered--warning-yellow_1c6m4_13{--tw-border-opacity: 1;border-color:rgb(254 185 40 / var(--tw-border-opacity))}._bordered--dark-blue_1c6m4_16{--tw-border-opacity: 1;border-color:rgb(0 52 79 / var(--tw-border-opacity))}._bordered--white_1c6m4_19{--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity))}._error-message_1c6m4_23{position:absolute;bottom:-1.25rem;padding-left:.5rem;padding-right:.5rem;font-size:.75rem;line-height:1rem;--tw-text-opacity: 1;color:rgb(250 33 33 / var(--tw-text-opacity))}._padded_1c6m4_27{padding:.625rem .5rem}._text--error-red_1c6m4_31{--tw-text-opacity: 1;color:rgb(250 33 33 / var(--tw-text-opacity))}._text--white_1c6m4_34{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}._text--main-green_1c6m4_37{--tw-text-opacity: 1;color:rgb(33 250 144 / var(--tw-text-opacity))}._text--main-dark-blue_1c6m4_40{--tw-text-opacity: 1;color:rgb(0 40 61 / var(--tw-text-opacity))}._background-color-main-green_1c6m4_44{--tw-bg-opacity: 1 !important;background-color:rgb(33 250 144 / var(--tw-bg-opacity))!important}._background-color-light-green_1c6m4_47{--tw-bg-opacity: 1 !important;background-color:rgb(33 241 144 / var(--tw-bg-opacity))!important}._background-color-dark-green_1c6m4_50{--tw-bg-opacity: 1 !important;background-color:rgb(2 120 63 / var(--tw-bg-opacity))!important}._background-color-main-dark-blue_1c6m4_53{--tw-bg-opacity: 1 !important;background-color:rgb(0 40 61 / var(--tw-bg-opacity))!important}._background-color-dark-blue_1c6m4_56{--tw-bg-opacity: 1 !important;background-color:rgb(0 52 79 / var(--tw-bg-opacity))!important}._background-color-light-blue_1c6m4_59{--tw-bg-opacity: 1 !important;background-color:rgb(233 247 255 / var(--tw-bg-opacity))!important}._background-color-white_1c6m4_62{--tw-bg-opacity: 1 !important;background-color:rgb(255 255 255 / var(--tw-bg-opacity))!important}._background-color-error-red_1c6m4_65{--tw-bg-opacity: 1 !important;background-color:rgb(250 33 33 / var(--tw-bg-opacity))!important}._background-color-tertiary-blue_1c6m4_68{--tw-bg-opacity: 1 !important;background-color:rgb(37 136 228 / var(--tw-bg-opacity))!important}._background-color-warning-yellow_1c6m4_71{--tw-bg-opacity: 1 !important;background-color:rgb(254 185 40 / var(--tw-bg-opacity))!important}._background-color-transparent_1c6m4_74{background-color:transparent}._background-color-opaque-100_1c6m4_77{--tw-bg-opacity: 1 !important}._background-color-opaque-60_1c6m4_80{--tw-bg-opacity: .6 !important}._background-color-opaque-30_1c6m4_83{--tw-bg-opacity: .3 !important}._background-color-opaque-20_1c6m4_86{--tw-bg-opacity: .2 !important}._apply-opacity-30_1c6m4_89{opacity:.3}._padding--none_1c6m4_92{padding:0}._padding--small_1c6m4_95{padding:.25rem}._padding--medium_1c6m4_98{padding:.5rem}._padding--large_1c6m4_101{padding:1rem}._padding--extra-large_1c6m4_104{padding:1.5rem}._hover-background-color-opaque-main-green_1c6m4_107:hover{background-color:rgb(33 250 144 / var(--tw-bg-opacity));--tw-bg-opacity: .2 }._hover-background-color-opaque-light-green_1c6m4_110:hover{background-color:rgb(33 241 144 / var(--tw-bg-opacity));--tw-bg-opacity: .2 }._hover-background-color-opaque-dark-green_1c6m4_113:hover{background-color:rgb(2 120 63 / var(--tw-bg-opacity));--tw-bg-opacity: .2 }._hover-background-color-opaque-main-dark-blue_1c6m4_116:hover{background-color:rgb(0 40 61 / var(--tw-bg-opacity));--tw-bg-opacity: .2 }._hover-background-color-opaque-dark-blue_1c6m4_119:hover{background-color:rgb(0 52 79 / var(--tw-bg-opacity));--tw-bg-opacity: .2 }._hover-background-color-opaque-light-blue_1c6m4_122:hover{background-color:rgb(233 247 255 / var(--tw-bg-opacity));--tw-bg-opacity: .2 }._hover-background-color-opaque-white_1c6m4_125:hover{background-color:rgb(255 255 255 / var(--tw-bg-opacity));--tw-bg-opacity: .2 }._hover-background-color-opaque-error-red_1c6m4_128:hover{background-color:rgb(250 33 33 / var(--tw-bg-opacity));--tw-bg-opacity: .2 }._hover-background-color-opaque-tertiary-blue_1c6m4_131:hover{background-color:rgb(37 136 228 / var(--tw-bg-opacity));--tw-bg-opacity: .2 }._main-green_s6yir_1>circle,._main-green_s6yir_1>ellipse,._main-green_s6yir_1>rect,._main-green_s6yir_1>line,._main-green_s6yir_1>path{stroke:#21fa90}._error-red_s6yir_10>circle,._error-red_s6yir_10>ellipse,._error-red_s6yir_10>rect,._error-red_s6yir_10>line,._error-red_s6yir_10>path{stroke:#fa2121}._white_s6yir_18>circle,._white_s6yir_18>ellipse,._white_s6yir_18>rect,._white_s6yir_18>line,._white_s6yir_18>path{stroke:#fff}._main-dark-blue_s6yir_25>circle,._main-dark-blue_s6yir_25>ellipse,._main-dark-blue_s6yir_25>rect,._main-dark-blue_s6yir_25>line,._main-dark-blue_s6yir_25>path{stroke:#00283d}._warning-yellow_s6yir_32>circle,._warning-yellow_s6yir_32>ellipse,._warning-yellow_s6yir_32>rect,._warning-yellow_s6yir_32>line,._warning-yellow_s6yir_32>path{stroke:#feb928}._filled-white_s6yir_40{fill:#fff}._filled-error-red_s6yir_43{fill:#fa2121}._filled-main-dark-blue_s6yir_46{fill:#00283d}._filled-main-green_s6yir_49{fill:#21fa90}._filled-warning-yellow_s6yir_52{fill:#feb928}._fill-circle-green_s6yir_56>circle{fill:#fff}._fill-circle-main-dark-blue_s6yir_59>circle{fill:#00283d}._noShrinkForFlex_s6yir_63{flex-shrink:0}._cursorPointer_ydxr1_1{cursor:pointer}._tabbed-container_16gar_1{--tw-bg-opacity: 1;background-color:rgb(0 40 61 / var(--tw-bg-opacity))}._tabs-header_16gar_5{margin-bottom:1rem;display:flex;height:2rem;justify-content:flex-start;text-transform:uppercase;letter-spacing:.25em;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}._tabs-header_16gar_5:hover{cursor:pointer}._tab_16gar_1{margin-left:2rem;margin-right:2rem;min-width:105px;text-align:center;font-size:.875rem;line-height:1.25rem}._tab_16gar_1:first-child{margin-left:0}._tab_16gar_1:last-child{margin-right:0}._selected-tab_16gar_11{font-weight:700;--tw-text-opacity: 1;color:rgb(33 250 144 / var(--tw-text-opacity));text-decoration-line:underline;text-underline-offset:8px}._tabs-content_16gar_15{height:100vh}._borderedBox_170cy_1{flex:1 1 0%;row-gap:1rem;border-radius:.375rem;padding:1.25rem;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:currentColor}:before,:after{--tw-content: ""}html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Montserrat}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.container{width:100%;margin-right:auto;margin-left:auto}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1440px){.container{max-width:1440px}}@media (min-width: 1536px){.container{max-width:1536px}}.relative{position:relative}.m-3{margin:.75rem}.mx-auto{margin-left:auto;margin-right:auto}.my-5{margin-top:1.25rem;margin-bottom:1.25rem}.ml-2{margin-left:.5rem}.ml-4{margin-left:1rem}.mt-4{margin-top:1rem}.flex{display:flex}.inline-flex{display:inline-flex}.h-screen{height:100vh}.grow{flex-grow:1}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.flex-col{flex-direction:column}.items-center{align-items:center}.gap-10{gap:2.5rem}.gap-y-6{row-gap:1.5rem}.border{border-width:1px}.px-5{padding-left:1.25rem;padding-right:1.25rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-6xl{font-size:3.75rem;line-height:1}.text-2xl{font-size:1.5rem;line-height:2rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.font-bold{font-weight:700}.text-error-red{--tw-text-opacity: 1;color:rgb(250 33 33 / var(--tw-text-opacity))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.text-main-green{--tw-text-opacity: 1;color:rgb(33 250 144 / var(--tw-text-opacity))}.text-dark-green{--tw-text-opacity: 1;color:rgb(2 120 63 / var(--tw-text-opacity))}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}@font-face{font-family:Montserrat;src:url(/assets/Montserrat-Regular.dcfe8df2.ttf) format("truetype");font-weight:400;font-style:normal}:root{--tw-bg-opacity: 1;background-color:rgb(0 40 61 / var(--tw-bg-opacity));font-family:Montserrat}a{--tw-text-opacity: 1;color:rgb(37 136 228 / var(--tw-text-opacity))}input{background-color:transparent}.hover\:cursor-pointer:hover{cursor:pointer}
|
package/dist/index.html
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
6
|
<title>Platformatic UI Components</title>
|
|
7
7
|
<script type="module" crossorigin src="/assets/index.de7e435d.js"></script>
|
|
8
|
-
<link rel="stylesheet" href="/assets/index.
|
|
8
|
+
<link rel="stylesheet" href="/assets/index.611cc270.css">
|
|
9
9
|
</head>
|
|
10
10
|
<body>
|
|
11
11
|
<div id="root"></div>
|
package/dist/main.css
CHANGED
|
@@ -558,8 +558,8 @@ video {
|
|
|
558
558
|
margin-bottom: 1.25rem;
|
|
559
559
|
}
|
|
560
560
|
|
|
561
|
-
.ml-
|
|
562
|
-
margin-left:
|
|
561
|
+
.ml-2 {
|
|
562
|
+
margin-left: 0.5rem;
|
|
563
563
|
}
|
|
564
564
|
|
|
565
565
|
.ml-4 {
|
|
@@ -594,6 +594,10 @@ video {
|
|
|
594
594
|
flex-direction: column;
|
|
595
595
|
}
|
|
596
596
|
|
|
597
|
+
.items-center {
|
|
598
|
+
align-items: center;
|
|
599
|
+
}
|
|
600
|
+
|
|
597
601
|
.gap-10 {
|
|
598
602
|
gap: 2.5rem;
|
|
599
603
|
}
|
package/package.json
CHANGED
|
@@ -7,7 +7,7 @@ import PlatformaticIcon from './PlatformaticIcon'
|
|
|
7
7
|
import { COLORS_ICON, SIZES, BACKGROUND_COLOR_OPAQUE, PADDING_SIZES, SMALL, WHITE, NONE } from './constants'
|
|
8
8
|
function ButtonFullRounded ({ className, iconName, iconSize, iconColor, disabled, paddingSize, alt, onClick, hoverEffect, bordered }) {
|
|
9
9
|
const padding = commonStyles[`padding--${paddingSize}`]
|
|
10
|
-
const containerClassName = `${className} ${styles.roundedFull}
|
|
10
|
+
const containerClassName = `${className} ${styles.roundedFull}`
|
|
11
11
|
let buttonClassName = `${styles.roundedFull} ${styles.buttonRoundedFull} ${padding}`
|
|
12
12
|
if (bordered) buttonClassName += ' ' + commonStyles[`bordered--${iconColor}`]
|
|
13
13
|
if (disabled) {
|
|
@@ -8,8 +8,8 @@
|
|
|
8
8
|
}
|
|
9
9
|
|
|
10
10
|
.checkbox:checked:after {
|
|
11
|
-
@apply absolute top-[-
|
|
12
|
-
content: '
|
|
11
|
+
@apply absolute top-[-4px] left-[1px] h-full w-full;
|
|
12
|
+
content: url('data:image/svg+xml,%3Csvg%20width=%2213%22%20height=%229%22%20viewBox=%220%200%2013%209%22%20fill=%22none%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cpath%20d=%22M1%204L5%208L12%201%22%20stroke=%22white%22%20stroke-width=%222%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22/%3E%3C/svg%3E');
|
|
13
13
|
}
|
|
14
14
|
|
|
15
15
|
.disabled {
|
|
@@ -2,11 +2,12 @@ import React from 'react'
|
|
|
2
2
|
import PropTypes from 'prop-types'
|
|
3
3
|
import styles from './FollowUs.module.css'
|
|
4
4
|
import Icons from './icons'
|
|
5
|
-
import { MAIN_GREEN, WHITE, MEDIUM } from './constants'
|
|
5
|
+
import { MAIN_GREEN, WHITE, MEDIUM, SMALL } from './constants'
|
|
6
6
|
|
|
7
7
|
function FollowUs ({ label, useOnFrontpage }) {
|
|
8
8
|
const suffix = useOnFrontpage ? 'Frontpage' : 'Dashboard'
|
|
9
9
|
const iconColor = useOnFrontpage ? WHITE : MAIN_GREEN
|
|
10
|
+
const iconSize = useOnFrontpage ? MEDIUM : SMALL
|
|
10
11
|
const className = styles[`container${suffix}`]
|
|
11
12
|
const iconClassName = styles[`icon${suffix}`]
|
|
12
13
|
const labelClassName = styles[`label${suffix}`]
|
|
@@ -18,22 +19,22 @@ function FollowUs ({ label, useOnFrontpage }) {
|
|
|
18
19
|
</div>
|
|
19
20
|
<div className={iconClassName}>
|
|
20
21
|
<a href='https://twitter.com/platformatic' target='_blank' rel='noopener noreferrer'>
|
|
21
|
-
<Icons.SocialTwitterIcon color={iconColor} size={
|
|
22
|
+
<Icons.SocialTwitterIcon color={iconColor} size={iconSize} />
|
|
22
23
|
</a>
|
|
23
24
|
</div>
|
|
24
25
|
<div className={iconClassName}>
|
|
25
26
|
<a href='https://www.linkedin.com/company/platformatic/' target='_blank' rel='noopener noreferrer'>
|
|
26
|
-
<Icons.SocialLinkedInIcon color={iconColor} size={
|
|
27
|
+
<Icons.SocialLinkedInIcon color={iconColor} size={iconSize} />
|
|
27
28
|
</a>
|
|
28
29
|
</div>
|
|
29
30
|
<div className={iconClassName}>
|
|
30
31
|
<a href='https://github.com/platformatic' target='_blank' rel='noopener noreferrer'>
|
|
31
|
-
<Icons.SocialGitHubIcon color={iconColor} size={
|
|
32
|
+
<Icons.SocialGitHubIcon color={iconColor} size={iconSize} />
|
|
32
33
|
</a>
|
|
33
34
|
</div>
|
|
34
35
|
<div className={iconClassName}>
|
|
35
36
|
<a href='https://discord.gg/platformatic' target='_blank' rel='noopener noreferrer'>
|
|
36
|
-
<Icons.SocialDiscordIcon color={iconColor} size={
|
|
37
|
+
<Icons.SocialDiscordIcon color={iconColor} size={iconSize} />
|
|
37
38
|
</a>
|
|
38
39
|
</div>
|
|
39
40
|
</div>
|
package/src/components/Modal.jsx
CHANGED
|
@@ -1,32 +1,49 @@
|
|
|
1
|
-
|
|
1
|
+
'use strict'
|
|
2
|
+
import React from 'react'
|
|
3
|
+
import PropTypes from 'prop-types'
|
|
4
|
+
import ButtonFullRounded from './ButtonFullRounded'
|
|
2
5
|
import useEscapeKey from '../hooks/useEscapeKey'
|
|
3
6
|
import CloseIcon from './icons/CloseIcon'
|
|
4
|
-
import CircleCloseIcon from './icons/CircleCloseIcon'
|
|
5
|
-
import CircleCloseHoverIcon from './icons/CircleCloseHoverIcon'
|
|
6
7
|
import Logo from './Logo'
|
|
7
8
|
import styles from './Modal.module.css'
|
|
9
|
+
import commonStyles from './Common.module.css'
|
|
10
|
+
import { MODAL_SIZES, SMALL, MODAL_LAYOUTS, MODAL_COVER, MODAL_POPUP, MAIN_DARK_BLUE, BACKGROUND_COLOR_OPAQUE, MEDIUM } from './constants'
|
|
11
|
+
|
|
12
|
+
function Modal ({ setIsOpen, title, layout, children, size }) {
|
|
13
|
+
let contentFullscreen
|
|
14
|
+
let titleFullscreen
|
|
15
|
+
let modalClassName = `${styles.modal}`
|
|
16
|
+
modalClassName += ' ' + styles[`modal--${layout}`]
|
|
17
|
+
modalClassName += ' ' + styles[`modal--${size}`]
|
|
18
|
+
|
|
19
|
+
let buttonFullRoundedClassName
|
|
20
|
+
|
|
21
|
+
const headerClassName = styles[`header--${layout}`]
|
|
22
|
+
if (MODAL_COVER === layout) {
|
|
23
|
+
contentFullscreen = styles[`content--${layout}`]
|
|
24
|
+
titleFullscreen = styles[`title--${layout}`]
|
|
25
|
+
buttonFullRoundedClassName = `${styles['close--cover']} `
|
|
26
|
+
buttonFullRoundedClassName += commonStyles['background-color-light-blue']
|
|
27
|
+
}
|
|
8
28
|
|
|
9
|
-
export default function Modal (props) {
|
|
10
|
-
const { setIsOpen, title, layout = 'info' } = props
|
|
11
|
-
const [isHoverCloseModal, setIsHoverCloseModal] = useState(false)
|
|
12
29
|
useEscapeKey(() => setIsOpen(false))
|
|
13
30
|
let whichModal = <></>
|
|
14
31
|
|
|
15
32
|
switch (layout) {
|
|
16
|
-
case
|
|
33
|
+
case MODAL_POPUP:
|
|
17
34
|
whichModal = (
|
|
18
35
|
<>
|
|
19
36
|
<div className={styles.blur} onClick={() => setIsOpen(false)} />
|
|
20
37
|
<div className={`${styles.container} ${styles.centered}`}>
|
|
21
|
-
<div className={
|
|
22
|
-
<div className={
|
|
38
|
+
<div className={modalClassName}>
|
|
39
|
+
<div className={headerClassName}>
|
|
23
40
|
<div className={styles.title}>{title}</div>
|
|
24
41
|
<div className={styles.close} onClick={() => setIsOpen(false)}>
|
|
25
|
-
<CloseIcon size=
|
|
42
|
+
<CloseIcon size={SMALL} />
|
|
26
43
|
</div>
|
|
27
44
|
</div>
|
|
28
45
|
<div>
|
|
29
|
-
{
|
|
46
|
+
{children}
|
|
30
47
|
</div>
|
|
31
48
|
</div>
|
|
32
49
|
</div>
|
|
@@ -34,55 +51,29 @@ export default function Modal (props) {
|
|
|
34
51
|
)
|
|
35
52
|
break
|
|
36
53
|
|
|
37
|
-
case
|
|
54
|
+
case MODAL_COVER:
|
|
38
55
|
whichModal = (
|
|
39
|
-
|
|
40
|
-
<div className={
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
</div>
|
|
52
|
-
</div>
|
|
53
|
-
<p className={styles.titleInvite}>{title}</p>
|
|
54
|
-
<div>{props.children}</div>
|
|
55
|
-
</div>
|
|
56
|
+
<div className={`${styles.container} ${styles.fullscreen}`}>
|
|
57
|
+
<div className={headerClassName}>
|
|
58
|
+
<ButtonFullRounded
|
|
59
|
+
className={buttonFullRoundedClassName}
|
|
60
|
+
iconName='CircleCloseIcon'
|
|
61
|
+
iconSize={MEDIUM}
|
|
62
|
+
iconColor={MAIN_DARK_BLUE}
|
|
63
|
+
hoverEffect={BACKGROUND_COLOR_OPAQUE}
|
|
64
|
+
onClick={() => { setIsOpen(false) }}
|
|
65
|
+
bordered={false}
|
|
66
|
+
alt='Close'
|
|
67
|
+
/>
|
|
56
68
|
</div>
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
case 'fullscreen':
|
|
62
|
-
whichModal = (
|
|
63
|
-
<>
|
|
64
|
-
<div className={`${styles.container} ${styles.fullscreen}`}>
|
|
65
|
-
<div className={styles.modalFullscreen}>
|
|
66
|
-
<div className={styles.headerInvite}>
|
|
67
|
-
<div
|
|
68
|
-
className={styles.close}
|
|
69
|
-
onClick={() => setIsOpen(false)}
|
|
70
|
-
onMouseEnter={() => setIsHoverCloseModal(true)}
|
|
71
|
-
onMouseLeave={() => setIsHoverCloseModal(false)}
|
|
72
|
-
>
|
|
73
|
-
{isHoverCloseModal ? <CircleCloseHoverIcon color='main-dark-blue' /> : <CircleCloseIcon color='main-dark-blue' />}
|
|
74
|
-
</div>
|
|
75
|
-
</div>
|
|
76
|
-
<div className={styles.contentFullscreen}>
|
|
77
|
-
<div className={styles.titleFullscreen}>
|
|
78
|
-
<Logo width={100} heigth={80} color='main-dark-blue' />
|
|
79
|
-
<h3>PLATFORMATIC</h3>
|
|
80
|
-
</div>
|
|
81
|
-
<div>{props.children}</div>
|
|
82
|
-
</div>
|
|
69
|
+
<div className={contentFullscreen}>
|
|
70
|
+
<div className={titleFullscreen}>
|
|
71
|
+
<Logo width={100} heigth={80} color={MAIN_DARK_BLUE} />
|
|
72
|
+
<h3>PLATFORMATIC</h3>
|
|
83
73
|
</div>
|
|
74
|
+
<div>{children}</div>
|
|
84
75
|
</div>
|
|
85
|
-
|
|
76
|
+
</div>
|
|
86
77
|
)
|
|
87
78
|
break
|
|
88
79
|
|
|
@@ -91,3 +82,36 @@ export default function Modal (props) {
|
|
|
91
82
|
}
|
|
92
83
|
return whichModal
|
|
93
84
|
}
|
|
85
|
+
|
|
86
|
+
Modal.propTypes = {
|
|
87
|
+
/**
|
|
88
|
+
* children
|
|
89
|
+
*/
|
|
90
|
+
children: PropTypes.node,
|
|
91
|
+
/**
|
|
92
|
+
* setIsOpen
|
|
93
|
+
*/
|
|
94
|
+
setIsOpen: PropTypes.func,
|
|
95
|
+
/**
|
|
96
|
+
* title
|
|
97
|
+
*/
|
|
98
|
+
title: PropTypes.string,
|
|
99
|
+
/**
|
|
100
|
+
* layout
|
|
101
|
+
*/
|
|
102
|
+
layout: PropTypes.oneOf(MODAL_LAYOUTS),
|
|
103
|
+
/**
|
|
104
|
+
* Size
|
|
105
|
+
*/
|
|
106
|
+
size: PropTypes.oneOf(MODAL_SIZES)
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
Modal.defaultProps = {
|
|
110
|
+
children: null,
|
|
111
|
+
setIsOpen: () => {},
|
|
112
|
+
title: '',
|
|
113
|
+
layout: MODAL_POPUP,
|
|
114
|
+
size: SMALL
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
export default Modal
|
|
@@ -9,42 +9,45 @@
|
|
|
9
9
|
@apply fixed top-[50%] left-[50%] translate-x-[-50%] translate-y-[-50%]
|
|
10
10
|
}
|
|
11
11
|
.modal {
|
|
12
|
-
@apply p-4 rounded-md mx-auto my-auto
|
|
12
|
+
@apply p-4 rounded-md mx-auto my-auto max-h-[85vh] overflow-y-auto;
|
|
13
13
|
}
|
|
14
|
-
.
|
|
15
|
-
@apply bg-light-blue
|
|
16
|
-
}
|
|
17
|
-
.modalInvite {
|
|
18
|
-
@apply bg-main-dark-blue border-light-green border shadow-wrap shadow-main-green max-w-[480px] max-h-[300px];
|
|
14
|
+
.modal--popup {
|
|
15
|
+
@apply bg-light-blue;
|
|
19
16
|
}
|
|
20
17
|
.fullscreen {
|
|
21
18
|
@apply fixed top-0 left-0 bg-light-blue h-screen w-full min-h-screen min-w-full py-4 pl-20 pr-4 overflow-y-auto;
|
|
22
19
|
}
|
|
23
|
-
.header {
|
|
20
|
+
.header--popup {
|
|
24
21
|
@apply flex justify-between items-center;
|
|
25
22
|
}
|
|
26
|
-
.
|
|
23
|
+
.header--cover {
|
|
27
24
|
@apply flex justify-end;
|
|
28
25
|
}
|
|
29
|
-
.close {
|
|
30
|
-
@apply hover:cursor-pointer;
|
|
31
|
-
}
|
|
32
26
|
.hr {
|
|
33
27
|
@apply text-[#00283D] my-2 opacity-20;
|
|
34
28
|
}
|
|
35
29
|
.title {
|
|
36
30
|
@apply font-bold text-lg;
|
|
37
31
|
}
|
|
38
|
-
.
|
|
39
|
-
@apply font-bold text-lg text-main-green text-center;
|
|
40
|
-
}
|
|
41
|
-
.contentFullscreen {
|
|
32
|
+
.content--cover {
|
|
42
33
|
@apply h-auto w-full pt-4;
|
|
43
34
|
}
|
|
44
|
-
.
|
|
35
|
+
.title--cover {
|
|
45
36
|
@apply inline-flex items-center;
|
|
46
37
|
}
|
|
47
|
-
.
|
|
38
|
+
.title--cover h3 {
|
|
48
39
|
@apply text-[22px] text-dark-blue font-bold tracking-widest mx-3;
|
|
49
40
|
}
|
|
41
|
+
.modal--small {
|
|
42
|
+
@apply min-w-[480px] max-w-[480px];
|
|
43
|
+
}
|
|
44
|
+
.modal--medium {
|
|
45
|
+
@apply min-w-[880px] max-w-[880px];
|
|
46
|
+
}
|
|
47
|
+
.modal--full-width {
|
|
48
|
+
@apply w-screen min-w-full;
|
|
49
|
+
}
|
|
50
|
+
.close--cover {
|
|
51
|
+
@apply h-6 w-6;
|
|
52
|
+
}
|
|
50
53
|
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import React, { useEffect, useState } from 'react'
|
|
2
2
|
import Icons from './icons'
|
|
3
3
|
import Button from './Button'
|
|
4
|
+
import ButtonFullRounded from './ButtonFullRounded'
|
|
5
|
+
import commonStyles from './Common.module.css'
|
|
4
6
|
import styles from './Sidebar.module.css'
|
|
5
7
|
import ReactTooltip from 'react-tooltip'
|
|
6
8
|
import HorizontalSeparator from './HorizontalSeparator'
|
|
7
9
|
import PlatformaticIcon from './PlatformaticIcon'
|
|
8
10
|
import PropTypes from 'prop-types'
|
|
9
11
|
import { BACKGROUND_COLOR_OPAQUE, MEDIUM, WHITE } from './constants'
|
|
10
|
-
import ButtonFullRounded from './ButtonFullRounded'
|
|
11
12
|
|
|
12
13
|
function Sidebar (props) {
|
|
13
14
|
const {
|
|
@@ -24,6 +25,8 @@ function Sidebar (props) {
|
|
|
24
25
|
const [collapsed, setCollapsed] = useState(false)
|
|
25
26
|
const [selectedItem, setSelectedItem] = useState(null)
|
|
26
27
|
const disabledCreateButton = disableClickAdd ? styles.disabled : ''
|
|
28
|
+
let buttonFullRoundedClassName = `${styles.buttonCollapse} `
|
|
29
|
+
buttonFullRoundedClassName += commonStyles['background-color-main-dark-blue']
|
|
27
30
|
|
|
28
31
|
function onClickItemSelected (item) {
|
|
29
32
|
setSelectedItem(item.id)
|
|
@@ -40,7 +43,7 @@ function Sidebar (props) {
|
|
|
40
43
|
? (
|
|
41
44
|
<>
|
|
42
45
|
<ButtonFullRounded
|
|
43
|
-
className={
|
|
46
|
+
className={buttonFullRoundedClassName}
|
|
44
47
|
iconName='CircleArrowRightIcon'
|
|
45
48
|
iconSize={MEDIUM}
|
|
46
49
|
iconColor={WHITE}
|
|
@@ -65,7 +68,7 @@ function Sidebar (props) {
|
|
|
65
68
|
: (
|
|
66
69
|
<>
|
|
67
70
|
<ButtonFullRounded
|
|
68
|
-
className={
|
|
71
|
+
className={buttonFullRoundedClassName}
|
|
69
72
|
iconName='CircleArrowLeftIcon'
|
|
70
73
|
iconSize={MEDIUM}
|
|
71
74
|
iconColor={WHITE}
|
|
@@ -5,11 +5,11 @@ import PlatformaticIcon from './PlatformaticIcon'
|
|
|
5
5
|
import { COLORS_ICON } from './constants'
|
|
6
6
|
|
|
7
7
|
function Status ({ color, status }) {
|
|
8
|
-
const className = `inline-flex text-${color}`
|
|
8
|
+
const className = `inline-flex items-center text-${color}`
|
|
9
9
|
return (
|
|
10
10
|
<div className={className}>
|
|
11
11
|
<PlatformaticIcon iconName='CircleFullIcon' size='small' color={color} />
|
|
12
|
-
<span className='ml-
|
|
12
|
+
<span className='ml-2'>{status}</span>
|
|
13
13
|
</div>
|
|
14
14
|
)
|
|
15
15
|
}
|
|
@@ -14,4 +14,10 @@ export const PADDING_SIZES = [NONE, ...SIZES]
|
|
|
14
14
|
export const BOX_SHADOW = 'box-shadow'
|
|
15
15
|
export const BACKGROUND_COLOR_OPAQUE = 'background-color-opaque'
|
|
16
16
|
export const UNDERLINE = 'underline'
|
|
17
|
+
export const FULL_WIDTH = 'full-width'
|
|
17
18
|
export const HOVER_EFFECTS_BUTTONS = [BOX_SHADOW, BACKGROUND_COLOR_OPAQUE, UNDERLINE]
|
|
19
|
+
export const MODAL_SIZES = [SMALL, MEDIUM, FULL_WIDTH]
|
|
20
|
+
|
|
21
|
+
export const MODAL_POPUP = 'popup'
|
|
22
|
+
export const MODAL_COVER = 'cover'
|
|
23
|
+
export const MODAL_LAYOUTS = [MODAL_POPUP, MODAL_COVER]
|
|
@@ -4,6 +4,7 @@ import Button from '../components/Button'
|
|
|
4
4
|
import BorderedBox from '../components/BorderedBox'
|
|
5
5
|
import DropDown from '../components/DropDown'
|
|
6
6
|
import HorizontalSeparator from '../components/HorizontalSeparator'
|
|
7
|
+
import { FULL_WIDTH, MAIN_DARK_BLUE, MAIN_GREEN, MODAL_COVER, MODAL_LAYOUTS, MODAL_SIZES } from '../components/constants'
|
|
7
8
|
export default {
|
|
8
9
|
title: 'Platformatic/Modal',
|
|
9
10
|
component: Modal,
|
|
@@ -12,7 +13,14 @@ export default {
|
|
|
12
13
|
type: 'string',
|
|
13
14
|
control: {
|
|
14
15
|
type: 'radio',
|
|
15
|
-
options:
|
|
16
|
+
options: MODAL_LAYOUTS
|
|
17
|
+
}
|
|
18
|
+
},
|
|
19
|
+
size: {
|
|
20
|
+
type: 'string',
|
|
21
|
+
control: {
|
|
22
|
+
type: 'radio',
|
|
23
|
+
options: MODAL_SIZES
|
|
16
24
|
}
|
|
17
25
|
}
|
|
18
26
|
}
|
|
@@ -25,24 +33,12 @@ const Template = (args) => {
|
|
|
25
33
|
<main>
|
|
26
34
|
<BorderedBox>This Is another Content</BorderedBox>
|
|
27
35
|
<ContentThatLoads />
|
|
28
|
-
<Button color=
|
|
36
|
+
<Button color={MAIN_GREEN} backgroundColor={MAIN_DARK_BLUE} onClick={() => setIsOpen(true)} label='Open Modal' />
|
|
29
37
|
{isOpen && <Modal setIsOpen={setIsOpen} {...rest}>{text}</Modal>}
|
|
30
38
|
</main>
|
|
31
39
|
)
|
|
32
40
|
}
|
|
33
41
|
|
|
34
|
-
const TemplateInvite = (args) => {
|
|
35
|
-
const [isOpen, setIsOpen] = useState(false)
|
|
36
|
-
return (
|
|
37
|
-
<main>
|
|
38
|
-
<BorderedBox>This Is another Content</BorderedBox>
|
|
39
|
-
<ContentThatLoads />
|
|
40
|
-
<Button color='main-green' buttonClass='primary' onClick={() => setIsOpen(true)} label='Open Modal' />
|
|
41
|
-
{isOpen && <Modal setIsOpen={setIsOpen} {...args}><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed</p><Button buttonClass='primary' onClick={() => setIsOpen(false)} label='Discard invite' /></Modal>}
|
|
42
|
-
</main>
|
|
43
|
-
)
|
|
44
|
-
}
|
|
45
|
-
|
|
46
42
|
const ContentThatLoads = () => {
|
|
47
43
|
const [content, setContent] = useState(null)
|
|
48
44
|
setTimeout(() => {
|
|
@@ -55,8 +51,7 @@ const ContentThatLoads = () => {
|
|
|
55
51
|
export const Default = Template.bind({})
|
|
56
52
|
Default.args = {
|
|
57
53
|
title: 'List Title',
|
|
58
|
-
text: 'Hello World'
|
|
59
|
-
layout: 'info'
|
|
54
|
+
text: 'Hello World'
|
|
60
55
|
}
|
|
61
56
|
|
|
62
57
|
export const WithLongText = Template.bind({})
|
|
@@ -87,14 +82,9 @@ const MenuTemplate = () => {
|
|
|
87
82
|
}
|
|
88
83
|
export const WithDropDown = MenuTemplate.bind({})
|
|
89
84
|
|
|
90
|
-
export const InviteLayout = TemplateInvite.bind({})
|
|
91
|
-
InviteLayout.args = {
|
|
92
|
-
title: 'Give me an invite',
|
|
93
|
-
layout: 'invite'
|
|
94
|
-
}
|
|
95
|
-
|
|
96
85
|
export const FullscreenLayout = Template.bind({})
|
|
97
86
|
FullscreenLayout.args = {
|
|
98
87
|
title: 'Give me an invite',
|
|
99
|
-
|
|
88
|
+
size: FULL_WIDTH,
|
|
89
|
+
layout: MODAL_COVER
|
|
100
90
|
}
|