@gyramais/gyra-design 0.1.19 → 0.1.21

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.
@@ -0,0 +1,10 @@
1
+ import React from "react";
2
+ import "./index.css";
3
+ type StatusTagProps = {
4
+ id?: string;
5
+ className?: string;
6
+ color?: string;
7
+ title?: string;
8
+ };
9
+ declare const StatusTag: ({ id, className, color, title, }: StatusTagProps) => React.JSX.Element;
10
+ export { StatusTag };
@@ -0,0 +1 @@
1
+ export * from "./StatusTag";
@@ -0,0 +1,7 @@
1
+ "use client";import r,{useMemo as t}from"react";function e(r){return r&&r.__esModule&&Object.prototype.hasOwnProperty.call(r,"default")?r.default:r}var n,o={exports:{}};
2
+ /*!
3
+ Copyright (c) 2018 Jed Watson.
4
+ Licensed under the MIT License (MIT), see
5
+ http://jedwatson.github.io/classnames
6
+ */n=o,function(){var r={}.hasOwnProperty;function t(){for(var r="",t=0;t<arguments.length;t++){var n=arguments[t];n&&(r=o(r,e(n)))}return r}function e(e){if("string"==typeof e||"number"==typeof e)return e;if("object"!=typeof e)return"";if(Array.isArray(e))return t.apply(null,e);if(e.toString!==Object.prototype.toString&&!e.toString.toString().includes("[native code]"))return e.toString();var n="";for(var a in e)r.call(e,a)&&e[a]&&(n=o(n,a));return n}function o(r,t){return t?r?r+" "+t:r+t:r}n.exports?(t.default=t,n.exports=t):window.classNames=t}();var a=e(o.exports),s=function(e){var n=e.id,o=e.className,s=e.color,u=e.title,i=t((function(){return!!s&&(!!["#FBBB3B","#FF6B6C","#74DA42"].includes(s.toUpperCase())||function(r){var t=r.replace("#","");return(299*parseInt(t.substr(0,2),16)+587*parseInt(t.substr(2,2),16)+114*parseInt(t.substr(4,2),16))/1e3<=128}(s))}),[s]);return r.createElement("div",{id:n,className:a("gyramais-status-tag",o),style:{color:i?"white":"black",backgroundColor:s}},null==u?void 0:u.toUpperCase())};export{s as StatusTag};
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../node_modules/classnames/index.js","../../../src/components/StatusTag/StatusTag.tsx","../../../src/theme.ts"],"sourcesContent":["/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue(arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(null, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import React, { useMemo } from \"react\";\r\nimport classNames from \"classnames\";\r\nimport \"./index.css\";\r\n\r\nimport { isColorDark } from '../../theme'; \r\n\r\ntype StatusTagProps = {\r\n id?: string;\r\n className?: string;\r\n color?: string;\r\n title?: string;\r\n}\r\n\r\nconst StatusTag = ({\r\n id,\r\n className,\r\n color,\r\n title,\r\n}: StatusTagProps) => {\r\n const colorIsDark = useMemo(() => {\r\n if (!color) {\r\n return false;\r\n }\r\n\r\n if (['#FBBB3B', '#FF6B6C', '#74DA42'].includes(color.toUpperCase())) {\r\n return true;\r\n }\r\n\r\n return isColorDark(color);\r\n }, [color]); \r\n\r\n return (\r\n <div\r\n id={id}\r\n className={classNames(\r\n \"gyramais-status-tag\",\r\n className,\r\n )}\r\n style={{\r\n color: colorIsDark ? 'white' : 'black',\r\n backgroundColor: color,\r\n }}\r\n >\r\n {title?.toUpperCase()}\r\n </div>\r\n );\r\n};\r\n\r\nexport { StatusTag };","interface Colors {\r\n backgroundColor: string;\r\n primaryButton: string;\r\n secondaryButton: string;\r\n linkButton: string;\r\n}\r\n\r\ninterface Images {\r\n whiteLogoUrl: string;\r\n darkLogoUrl: string;\r\n iconUrl: string;\r\n}\r\n\r\nconst isColorDark = (hexColor: string) => {\r\n const color = hexColor.replace('#', '');\r\n\r\n const r = parseInt(color.substr(0, 2), 16);\r\n const g = parseInt(color.substr(2, 2), 16);\r\n const b = parseInt(color.substr(4, 2), 16);\r\n \r\n const yiq = ((r * 299) + (g * 587) + (b * 114)) / 1000;\r\n return (yiq <= 128);\r\n};\r\n\r\nconst getContrastYIQ = (hexColor: string) => (isColorDark(hexColor) ? '#ffffff' : '#2b2b2b');\r\n\r\nconst getTintedColor: (hexColor: string, v: number) => string = (hexColor, v) => {\r\n if (hexColor.length > 6) {\r\n hexColor= hexColor.substring(1, hexColor.length)\r\n }\r\n\r\n const rgb = parseInt(hexColor, 16); \r\n \r\n let r = Math.abs(((rgb >> 16) & 0xFF) + v);\r\n if (r > 255) {\r\n r = r - (r - 255);\r\n }\r\n \r\n let g = Math.abs(((rgb >> 8) & 0xFF) + v);\r\n if (g > 255) {\r\n g = g - (g - 255);\r\n }\r\n \r\n let b = Math.abs((rgb & 0xFF) + v);\r\n if (b > 255) {\r\n b = b - (b - 255);\r\n }\r\n\r\n const rString = (`${Number(r < 0 || isNaN(r)) ? 0 : ((r > 255) ? 255 : r).toString(16)}`).padStart(2, '0');\r\n const gString = (`${Number(g < 0 || isNaN(g)) ? 0 : ((g > 255) ? 255 : g).toString(16)}`).padStart(2, '0'); \r\n const bString = (`${Number(b < 0 || isNaN(b)) ? 0 : ((b > 255) ? 255 : b).toString(16)}`).padStart(2 ,'0'); \r\n \r\n return \"#\" + rString + gString + bString;\r\n} \r\n\r\nconst setTheme = ({ colors, images }: {\r\n colors: Colors;\r\n images: Images;\r\n}) => {\r\n const {\r\n backgroundColor,\r\n primaryButton,\r\n secondaryButton,\r\n linkButton,\r\n } = colors;\r\n\r\n if (backgroundColor) {\r\n document.documentElement.style.setProperty('--background-color', backgroundColor);\r\n document.documentElement.style.setProperty('--background-text-color', getContrastYIQ(backgroundColor));\r\n }\r\n\r\n if (primaryButton) {\r\n document.documentElement.style.setProperty('--primary-button-color', primaryButton);\r\n document.documentElement.style.setProperty('--primary-button-text-color', getContrastYIQ(primaryButton));\r\n\r\n document.documentElement.style.setProperty('--dark-button-color', `${primaryButton}66`);\r\n document.documentElement.style.setProperty('--dark-button-text-color', getContrastYIQ(primaryButton));\r\n\r\n const primaryButtonIsDark = isColorDark(primaryButton);\r\n for (let x = 0; x < 5; x += 1) {\r\n const variant = getTintedColor(primaryButton, ((x * 35) * (primaryButtonIsDark ? 1 : -1)));\r\n \r\n document.documentElement.style.setProperty(`--primary-button-color-${x}00`, variant);\r\n }\r\n }\r\n\r\n if (secondaryButton) {\r\n document.documentElement.style.setProperty('--secondary-button-color', secondaryButton);\r\n document.documentElement.style.setProperty('--secondary-button-text-color', getContrastYIQ(secondaryButton));\r\n }\r\n\r\n if (linkButton) {\r\n document.documentElement.style.setProperty('--link-button-color', linkButton);\r\n }\r\n\r\n const {\r\n darkLogoUrl,\r\n whiteLogoUrl,\r\n iconUrl,\r\n } = images;\r\n\r\n if (darkLogoUrl) {\r\n document.documentElement.style.setProperty('--dark-logo-url', `url(${darkLogoUrl})`);\r\n }\r\n\r\n if (whiteLogoUrl) {\r\n document.documentElement.style.setProperty('--white-logo-url', `url(${whiteLogoUrl})`);\r\n }\r\n\r\n if (iconUrl) {\r\n document.documentElement.style.setProperty('--icon-url', `url(${iconUrl})`);\r\n }\r\n\r\n if (backgroundColor && darkLogoUrl && whiteLogoUrl) {\r\n const backgroundColorIsDark = isColorDark(backgroundColor);\r\n\r\n document.documentElement.style.setProperty('--background-logo-url', `${backgroundColorIsDark ? `url(${whiteLogoUrl})` : `url(${darkLogoUrl})`}`)\r\n }\r\n};\r\n\r\nexport {\r\n isColorDark,\r\n}\r\n\r\nexport default {\r\n setTheme,\r\n};"],"names":["hasOwn","hasOwnProperty","classNames","classes","i","arguments","length","arg","appendClass","parseValue","Array","isArray","apply","toString","Object","prototype","includes","key","call","value","newClass","module","exports","default","window","StatusTag","_a","id","className","color","title","colorIsDark","useMemo","toUpperCase","hexColor","replace","parseInt","substr","isColorDark","React","createElement","style","backgroundColor"],"mappings":";;;;;MAOC,WAGA,IAAIA,EAAS,CAAE,EAACC,eAEhB,SAASC,IAGR,IAFA,IAAIC,EAAU,GAELC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAC1C,IAAIG,EAAMF,UAAUD,GAChBG,IACHJ,EAAUK,EAAYL,EAASM,EAAWF,IAE3C,CAED,OAAOJ,CACP,CAED,SAASM,EAAYF,GACpB,GAAmB,iBAARA,GAAmC,iBAARA,EACrC,OAAOA,EAGR,GAAmB,iBAARA,EACV,MAAO,GAGR,GAAIG,MAAMC,QAAQJ,GACjB,OAAOL,EAAWU,MAAM,KAAML,GAG/B,GAAIA,EAAIM,WAAaC,OAAOC,UAAUF,WAAaN,EAAIM,SAASA,WAAWG,SAAS,iBACnF,OAAOT,EAAIM,WAGZ,IAAIV,EAAU,GAEd,IAAK,IAAIc,KAAOV,EACXP,EAAOkB,KAAKX,EAAKU,IAAQV,EAAIU,KAChCd,EAAUK,EAAYL,EAASc,IAIjC,OAAOd,CACP,CAED,SAASK,EAAaW,EAAOC,GAC5B,OAAKA,EAIDD,EACIA,EAAQ,IAAMC,EAGfD,EAAQC,EAPPD,CAQR,CAEoCE,EAAOC,SAC3CpB,EAAWqB,QAAUrB,EACrBmB,EAAAC,QAAiBpB,GAOjBsB,OAAOtB,WAAaA,CAEtB,CArEA,sBCMMuB,EAAY,SAACC,OACjBC,EAAED,EAAAC,GACFC,EAASF,EAAAE,UACTC,EAAKH,EAAAG,MACLC,EAAKJ,EAAAI,MAECC,EAAcC,GAAQ,WAC1B,QAAKH,MAID,CAAC,UAAW,UAAW,WAAWb,SAASa,EAAMI,gBCXrC,SAACC,GACnB,IAAML,EAAQK,EAASC,QAAQ,IAAK,IAOpC,OADkB,IAJRC,SAASP,EAAMQ,OAAO,EAAG,GAAI,IAIT,IAHpBD,SAASP,EAAMQ,OAAO,EAAG,GAAI,IAGG,IAFhCD,SAASP,EAAMQ,OAAO,EAAG,GAAI,KAEW,KACnC,GACjB,CDMWC,CAAYT,GACrB,GAAG,CAACA,IAEJ,OACEU,EACEC,cAAA,MAAA,CAAAb,GAAIA,EACJC,UAAW1B,EACT,sBACA0B,GAEFa,MAAO,CACLZ,MAAOE,EAAc,QAAU,QAC/BW,gBAAiBb,IAGlBC,aAAA,EAAAA,EAAOG,cAGd","x_google_ignoreList":[0]}
package/dist/index.css CHANGED
@@ -551,9 +551,6 @@ video {
551
551
  .ml-auto {
552
552
  margin-left: auto;
553
553
  }
554
- .mr-4 {
555
- margin-right: 1rem;
556
- }
557
554
  .mt-2 {
558
555
  margin-top: 0.5rem;
559
556
  }
@@ -614,12 +611,18 @@ video {
614
611
  .h-\[800px\] {
615
612
  height: 800px;
616
613
  }
614
+ .h-\[var\(--radix-select-trigger-height\)\] {
615
+ height: var(--radix-select-trigger-height);
616
+ }
617
617
  .h-full {
618
618
  height: 100%;
619
619
  }
620
620
  .h-px {
621
621
  height: 1px;
622
622
  }
623
+ .max-h-96 {
624
+ max-height: 24rem;
625
+ }
623
626
  .max-h-\[300px\] {
624
627
  max-height: 300px;
625
628
  }
@@ -665,12 +668,18 @@ video {
665
668
  .min-w-\[8rem\] {
666
669
  min-width: 8rem;
667
670
  }
671
+ .min-w-\[var\(--radix-select-trigger-width\)\] {
672
+ min-width: var(--radix-select-trigger-width);
673
+ }
668
674
  .shrink-0 {
669
675
  flex-shrink: 0;
670
676
  }
671
677
  .cursor-default {
672
678
  cursor: default;
673
679
  }
680
+ .cursor-pointer {
681
+ cursor: pointer;
682
+ }
674
683
  .select-none {
675
684
  -webkit-user-select: none;
676
685
  -moz-user-select: none;
@@ -679,9 +688,15 @@ video {
679
688
  .items-center {
680
689
  align-items: center;
681
690
  }
691
+ .justify-end {
692
+ justify-content: flex-end;
693
+ }
682
694
  .justify-center {
683
695
  justify-content: center;
684
696
  }
697
+ .justify-between {
698
+ justify-content: space-between;
699
+ }
685
700
  .space-x-1 > :not([hidden]) ~ :not([hidden]) {
686
701
  --tw-space-x-reverse: 0;
687
702
  margin-right: calc(0.25rem * var(--tw-space-x-reverse));
@@ -755,6 +770,10 @@ video {
755
770
  padding-top: 0.375rem;
756
771
  padding-bottom: 0.375rem;
757
772
  }
773
+ .py-2 {
774
+ padding-top: 0.5rem;
775
+ padding-bottom: 0.5rem;
776
+ }
758
777
  .pl-8 {
759
778
  padding-left: 2rem;
760
779
  }
@@ -777,6 +796,10 @@ video {
777
796
  .text-\[24px\] {
778
797
  font-size: 24px;
779
798
  }
799
+ .text-lg {
800
+ font-size: 1.125rem;
801
+ line-height: 1.75rem;
802
+ }
780
803
  .text-sm {
781
804
  font-size: 0.875rem;
782
805
  line-height: 1.25rem;
@@ -797,6 +820,10 @@ video {
797
820
  .tracking-widest {
798
821
  letter-spacing: 0.1em;
799
822
  }
823
+ .text-\[\#3B3940\] {
824
+ --tw-text-opacity: 1;
825
+ color: rgb(59 57 64 / var(--tw-text-opacity));
826
+ }
800
827
  .text-\[var\(--primary-button-color\)\] {
801
828
  color: var(--primary-button-color);
802
829
  }
@@ -806,6 +833,9 @@ video {
806
833
  .opacity-20 {
807
834
  opacity: 0.2;
808
835
  }
836
+ .opacity-50 {
837
+ opacity: 0.5;
838
+ }
809
839
  .opacity-60 {
810
840
  opacity: 0.6;
811
841
  }
@@ -912,6 +942,9 @@ video {
912
942
  font-family: -apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,'Noto Sans',sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol','Noto Color Emoji';
913
943
  outline: none !important;
914
944
  }
945
+ *:focus {
946
+ box-shadow: none !important;
947
+ }
915
948
 
916
949
  ::-webkit-scrollbar {
917
950
  height: 0.5rem;
@@ -1051,6 +1084,21 @@ h6 {
1051
1084
  }
1052
1085
  }
1053
1086
 
1087
+ .focus\:outline-none:focus {
1088
+ outline: 2px solid transparent;
1089
+ outline-offset: 2px;
1090
+ }
1091
+
1092
+ .focus\:ring-2:focus {
1093
+ --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
1094
+ --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
1095
+ box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
1096
+ }
1097
+
1098
+ .focus\:ring-offset-2:focus {
1099
+ --tw-ring-offset-width: 2px;
1100
+ }
1101
+
1054
1102
  .focus-visible\:outline-none:focus-visible {
1055
1103
  outline: 2px solid transparent;
1056
1104
  outline-offset: 2px;
@@ -1090,6 +1138,26 @@ h6 {
1090
1138
  pointer-events: none;
1091
1139
  }
1092
1140
 
1141
+ .data-\[side\=bottom\]\:translate-y-1[data-side=bottom] {
1142
+ --tw-translate-y: 0.25rem;
1143
+ transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
1144
+ }
1145
+
1146
+ .data-\[side\=left\]\:-translate-x-1[data-side=left] {
1147
+ --tw-translate-x: -0.25rem;
1148
+ transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
1149
+ }
1150
+
1151
+ .data-\[side\=right\]\:translate-x-1[data-side=right] {
1152
+ --tw-translate-x: 0.25rem;
1153
+ transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
1154
+ }
1155
+
1156
+ .data-\[side\=top\]\:-translate-y-1[data-side=top] {
1157
+ --tw-translate-y: -0.25rem;
1158
+ transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
1159
+ }
1160
+
1093
1161
  .data-\[disabled\]\:opacity-50[data-disabled] {
1094
1162
  opacity: 0.5;
1095
1163
  }
@@ -1150,6 +1218,13 @@ h6 {
1150
1218
 
1151
1219
  .data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top] {
1152
1220
  --tw-enter-translate-y: 0.5rem;
1221
+ }
1222
+
1223
+ .\[\&\>span\]\:line-clamp-1>span {
1224
+ overflow: hidden;
1225
+ display: -webkit-box;
1226
+ -webkit-box-orient: vertical;
1227
+ -webkit-line-clamp: 1;
1153
1228
  }
1154
1229
  :root {
1155
1230
  --toastify-color-light: #fff;
@@ -2552,128 +2627,157 @@ h6 {
2552
2627
 
2553
2628
  cursor: pointer
2554
2629
  }
2555
- .gyramais-filter .gyramais-filter-filters-container {
2556
-
2557
- width: 360px
2558
- }
2559
-
2560
2630
  .gyramais-filter .gyramais-filter-button-container {
2561
-
2562
- position: relative;
2563
-
2564
- width: -moz-fit-content;
2565
-
2566
- width: fit-content
2631
+ position: relative;
2632
+ width: -moz-fit-content;
2633
+ width: fit-content;
2567
2634
  }
2568
2635
 
2569
2636
  .gyramais-filter .gyramais-filter-button {
2570
-
2571
- border-radius: 24px !important;
2572
-
2573
- border-color: var(--primary-button-color) !important;
2574
-
2575
- padding-left: 0.5rem !important;
2576
-
2577
- padding-right: 0.5rem !important;
2578
-
2579
- padding-top: 0.25rem !important;
2580
-
2581
- padding-bottom: 0.25rem !important;
2582
-
2583
- font-size: 0.75rem !important;
2584
-
2585
- line-height: 1rem !important;
2586
-
2587
- font-weight: 500 !important
2637
+ border-radius: 24px !important;
2638
+ border-color: var(--primary-button-color) !important;
2639
+ padding-left: 0.5rem !important;
2640
+ padding-right: 0.5rem !important;
2641
+ padding-top: 0.25rem !important;
2642
+ padding-bottom: 0.25rem !important;
2643
+ font-size: 0.75rem !important;
2644
+ line-height: 1rem !important;
2645
+ font-weight: 500 !important;
2588
2646
  }
2589
2647
  .gyramais-filter .gyramais-filter-button.gyramais-button-white {
2590
-
2591
- color: var(--primary-button-color)
2648
+ color: var(--primary-button-color);
2592
2649
  }
2593
2650
 
2594
2651
  .gyramais-filter .gyramais-button-icon-container {
2595
-
2596
- margin-right: 0.25rem !important
2652
+ margin-right: 0.25rem !important;
2597
2653
  }
2598
2654
 
2599
2655
  .gyramais-filter .gyramais-filter-button-icon {
2600
-
2601
- font-size: 1rem !important;
2602
-
2603
- line-height: 1.5rem !important
2656
+ font-size: 1rem !important;
2657
+ line-height: 1.5rem !important;
2604
2658
  }
2605
2659
 
2606
2660
  .gyramais-filter .gyramais-filter-filters-count {
2607
-
2608
- position: absolute;
2609
-
2610
- right: -4px;
2611
-
2612
- top: -4px;
2613
-
2614
- z-index: 10;
2615
-
2616
- display: flex;
2617
-
2618
- height: 1rem;
2619
-
2620
- min-height: 16px;
2621
-
2622
- width: 1rem;
2623
-
2624
- min-width: 16px;
2625
-
2626
- cursor: default;
2627
-
2628
- align-items: center;
2629
-
2630
- justify-content: center;
2631
-
2632
- border-radius: 9999px;
2633
-
2634
- background-color: var(--primary-button-color);
2635
-
2636
- font-size: 10px;
2637
-
2638
- color: var(--primary-button-text-color)
2661
+ position: absolute;
2662
+ right: -4px;
2663
+ top: -4px;
2664
+ z-index: 10;
2665
+ display: flex;
2666
+ height: 1rem;
2667
+ min-height: 16px;
2668
+ width: 1rem;
2669
+ min-width: 16px;
2670
+ cursor: default;
2671
+ align-items: center;
2672
+ justify-content: center;
2673
+ border-radius: 9999px;
2674
+ background-color: var(--primary-button-color);
2675
+ font-size: 10px;
2676
+ color: var(--primary-button-text-color);
2639
2677
  }
2640
2678
 
2641
- .gyramais-filter .gyramais-filter-label {
2642
-
2643
- font-weight: 600;
2644
-
2645
- line-height: 1.25rem;
2646
-
2647
- color: var(--primary-button-color)
2679
+ .gyramais-filter .gyramais-filter-filters-container {
2680
+ margin-bottom: 1rem;
2681
+ max-height: 300px;
2682
+ width: 790px;
2683
+ max-width: calc(100vw - 4rem);
2684
+ overflow-y: auto;
2648
2685
  }
2649
2686
 
2650
- .gyramais-filter .gyramais-filter-switch-area {
2651
-
2652
- display: flex;
2653
2687
 
2654
- justify-content: flex-end
2688
+ .gyramais-filter .gyramais-filter-container {
2689
+ position: relative;
2655
2690
  }
2656
2691
 
2657
- .gyramais-filter .gyramais-input {
2658
-
2659
- min-height: -moz-fit-content !important;
2660
-
2661
- min-height: fit-content !important;
2662
-
2663
- border-radius: 16px !important;
2664
-
2665
- padding-top: 0.75rem !important;
2692
+ .gyramais-filter .gyramais-filter-item-label {
2693
+ position: absolute;
2694
+ top: -10px;
2695
+ left: 1.5rem;
2696
+ z-index: 2;
2697
+ font-size: 0.875rem;
2698
+ line-height: 1.25rem;
2699
+ font-weight: 600;
2700
+ color: var(--primary-button-color);
2701
+ }
2702
+ .gyramais-filter .gyramais-filter-item-label::before {
2703
+ position: absolute;
2704
+ top: 50%;
2705
+ left: 0px;
2706
+ z-index: -1;
2707
+ height: 2px;
2708
+ width: 100%;
2709
+ --tw-scale-x: 115%;
2710
+ transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
2711
+ --tw-bg-opacity: 1;
2712
+ background-color: rgb(255 255 255 / var(--tw-bg-opacity));
2713
+ --tw-content: '';
2714
+ content: var(--tw-content);
2715
+ }
2666
2716
 
2667
- padding-bottom: 0.75rem !important
2717
+ .gyramais-filter .gyramais-filter-item {
2718
+ border-radius: 20px;
2719
+ border-width: 1px;
2720
+ border-color: var(--border-color);
2721
+ padding-top: 0.75rem;
2722
+ padding-bottom: 0.75rem;
2723
+ padding-left: 1rem;
2724
+ padding-right: 1rem;
2725
+ }
2726
+ .gyramais-filter .gyramais-filter-item + .gyramais-filter-item {
2727
+ margin-top: 0.5rem;
2668
2728
  }
2669
2729
 
2670
- .gyramais-filter .gyramais-filter-filters-footer {
2730
+ .gyramais-filter .gyramais-filter-item .gyramais-filter-item-condition,
2731
+ .gyramais-filter .gyramais-filter-item .gyramais-filter-item-value {
2732
+ animation: filter-entry .5s 1;
2733
+ }
2671
2734
 
2672
- display: flex;
2735
+ .gyramais-filter .gyramais-filter-item .gyramais-select {
2736
+ min-height: 34px;
2737
+ min-width: 0px;
2738
+ border-radius: 10px;
2739
+ --tw-border-opacity: 1;
2740
+ border-color: rgb(237 240 238 / var(--tw-border-opacity));
2741
+ --tw-bg-opacity: 1;
2742
+ background-color: rgb(237 240 238 / var(--tw-bg-opacity));
2743
+ padding-top: 0.25rem;
2744
+ padding-bottom: 0.25rem;
2745
+ padding-left: 0.5rem;
2746
+ padding-right: 0.5rem;
2747
+ font-size: 0.875rem;
2748
+ line-height: 1.25rem;
2749
+ }
2673
2750
 
2674
- align-items: center;
2751
+ .gyramais-filter .gyramais-filter-item .gyramais-input {
2752
+ min-height: 40px;
2753
+ min-width: 0px;
2754
+ border-radius: 10px;
2755
+ --tw-border-opacity: 1;
2756
+ border-color: rgb(237 240 238 / var(--tw-border-opacity));
2757
+ --tw-bg-opacity: 1;
2758
+ background-color: rgb(237 240 238 / var(--tw-bg-opacity));
2759
+ padding-top: 0.25rem;
2760
+ padding-bottom: 0.25rem;
2761
+ padding-left: 0.5rem;
2762
+ padding-right: 0.5rem;
2763
+ font-size: 0.875rem;
2764
+ line-height: 1.25rem;
2765
+ }
2766
+ .gyramais-filter .gyramais-filter-item .gyramais-input-placeholder {
2767
+ left: 0.5rem;
2768
+ font-size: 0.875rem;
2769
+ line-height: 1.25rem;
2770
+ }
2675
2771
 
2676
- justify-content: flex-end
2772
+ @keyframes filter-entry {
2773
+ 0% {
2774
+ opacity: 0;
2775
+ transform: translateX(-50px);
2776
+ }
2777
+ 100% {
2778
+ opacity: 1;
2779
+ transform: translateX(0);
2780
+ }
2677
2781
  }
2678
2782
  #gyramais-form-message {
2679
2783
  color: var(--danger-color)
@@ -3594,6 +3698,78 @@ h6 {
3594
3698
 
3595
3699
  align-items: flex-end
3596
3700
  }
3701
+ .gyramais-select {
3702
+ min-height: 40px;
3703
+ width: 100%;
3704
+ min-width: 230px;
3705
+ border-radius: 16px;
3706
+ border-width: 1px;
3707
+ border-color: var(--border-color);
3708
+ --tw-bg-opacity: 1;
3709
+ background-color: rgb(255 255 255 / var(--tw-bg-opacity));
3710
+ padding-top: 0.75rem;
3711
+ padding-bottom: 0.75rem;
3712
+ padding-left: 1.5rem;
3713
+ padding-right: 1.5rem;
3714
+ font-size: 0.875rem;
3715
+ line-height: 1.25rem;
3716
+ font-weight: 400;
3717
+ transition-duration: 300ms;
3718
+ animation-duration: 300ms
3719
+ }
3720
+ @media (min-width: 768px) {
3721
+ .gyramais-select {
3722
+ min-height: 58px;
3723
+ border-radius: 20px;
3724
+ padding-top: 1rem;
3725
+ padding-bottom: 1rem;
3726
+ font-size: 1rem;
3727
+ line-height: 1.5rem
3728
+ }
3729
+ }
3730
+ .gyramais-select:hover:not(:disabled) {
3731
+ border-color: var(--primary-button-color);
3732
+ --tw-shadow: inset 0 0 0 1px var(--primary-button-color);
3733
+ --tw-shadow-colored: inset 0 0 0 1px var(--tw-shadow-color);
3734
+ box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
3735
+ }
3736
+
3737
+ .gyramais-select span {
3738
+ text-align: left
3739
+ }
3740
+
3741
+ .gyramais-select svg {
3742
+ color: var(--primary-button-color);
3743
+ opacity: 1
3744
+ }
3745
+
3746
+ .gyramais-select-content {
3747
+ margin-left: 0.5rem;
3748
+ border-radius: 16px;
3749
+ --tw-bg-opacity: 1;
3750
+ background-color: rgb(255 255 255 / var(--tw-bg-opacity));
3751
+ transition-duration: 300ms;
3752
+ animation-duration: 300ms
3753
+ }
3754
+
3755
+ .gyramais-select-content .gyramais-select-item {
3756
+ padding-top: 0.5rem;
3757
+ padding-bottom: 0.5rem;
3758
+ transition-duration: 300ms;
3759
+ animation-duration: 300ms
3760
+ }
3761
+
3762
+ .gyramais-select-content .gyramais-select-item:hover {
3763
+ background-color: var(--dark-button-color)
3764
+ }
3765
+ .gyramais-select-content .gyramais-select-item:first-child {
3766
+ border-top-left-radius: 16px;
3767
+ border-top-right-radius: 16px
3768
+ }
3769
+ .gyramais-select-content .gyramais-select-item:last-child {
3770
+ border-bottom-right-radius: 16px;
3771
+ border-bottom-left-radius: 16px
3772
+ }
3597
3773
  .gyramais-switch {
3598
3774
  position: relative;
3599
3775
  height: 25px;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gyramais/gyra-design",
3
- "version": "0.1.19",
3
+ "version": "0.1.21",
4
4
  "description": "Gyramais Design System",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.esm.js",
@@ -35,6 +35,7 @@
35
35
  "@radix-ui/react-hover-card": "^1.0.7",
36
36
  "@radix-ui/react-label": "^2.0.2",
37
37
  "@radix-ui/react-menubar": "^1.0.4",
38
+ "@radix-ui/react-select": "^2.0.0",
38
39
  "@radix-ui/react-switch": "^1.0.3",
39
40
  "@radix-ui/react-tabs": "^1.0.4",
40
41
  "@radix-ui/react-tooltip": "^1.0.7",