LucaVivona commited on
Commit
cbe21a9
β€’
1 Parent(s): 5a80237

updates 🌊

Browse files
backend/src/resources/__pycache__/module.cpython-39.pyc CHANGED
Binary files a/backend/src/resources/__pycache__/module.cpython-39.pyc and b/backend/src/resources/__pycache__/module.cpython-39.pyc differ
 
frontend/package-lock.json CHANGED
@@ -11,6 +11,7 @@
11
  "@testing-library/jest-dom": "^5.16.4",
12
  "@testing-library/react": "^13.3.0",
13
  "@testing-library/user-event": "^13.5.0",
 
14
  "react": "^18.2.0",
15
  "react-dom": "^18.2.0",
16
  "react-flow-renderer": "^10.3.8",
@@ -4826,6 +4827,28 @@
4826
  "node": ">=12"
4827
  }
4828
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4829
  "node_modules/axobject-query": {
4830
  "version": "2.2.0",
4831
  "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz",
@@ -20328,6 +20351,27 @@
20328
  "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.4.2.tgz",
20329
  "integrity": "sha512-LVAaGp/wkkgYJcjmHsoKx4juT1aQvJyPcW09MLCjVTh3V2cc6PnyempiLMNH5iMdfIX/zdbjUx2KDjMLCTdPeA=="
20330
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
20331
  "axobject-query": {
20332
  "version": "2.2.0",
20333
  "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz",
 
11
  "@testing-library/jest-dom": "^5.16.4",
12
  "@testing-library/react": "^13.3.0",
13
  "@testing-library/user-event": "^13.5.0",
14
+ "axios": "^0.27.2",
15
  "react": "^18.2.0",
16
  "react-dom": "^18.2.0",
17
  "react-flow-renderer": "^10.3.8",
 
4827
  "node": ">=12"
4828
  }
4829
  },
4830
+ "node_modules/axios": {
4831
+ "version": "0.27.2",
4832
+ "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz",
4833
+ "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==",
4834
+ "dependencies": {
4835
+ "follow-redirects": "^1.14.9",
4836
+ "form-data": "^4.0.0"
4837
+ }
4838
+ },
4839
+ "node_modules/axios/node_modules/form-data": {
4840
+ "version": "4.0.0",
4841
+ "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz",
4842
+ "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==",
4843
+ "dependencies": {
4844
+ "asynckit": "^0.4.0",
4845
+ "combined-stream": "^1.0.8",
4846
+ "mime-types": "^2.1.12"
4847
+ },
4848
+ "engines": {
4849
+ "node": ">= 6"
4850
+ }
4851
+ },
4852
  "node_modules/axobject-query": {
4853
  "version": "2.2.0",
4854
  "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz",
 
20351
  "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.4.2.tgz",
20352
  "integrity": "sha512-LVAaGp/wkkgYJcjmHsoKx4juT1aQvJyPcW09MLCjVTh3V2cc6PnyempiLMNH5iMdfIX/zdbjUx2KDjMLCTdPeA=="
20353
  },
20354
+ "axios": {
20355
+ "version": "0.27.2",
20356
+ "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz",
20357
+ "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==",
20358
+ "requires": {
20359
+ "follow-redirects": "^1.14.9",
20360
+ "form-data": "^4.0.0"
20361
+ },
20362
+ "dependencies": {
20363
+ "form-data": {
20364
+ "version": "4.0.0",
20365
+ "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz",
20366
+ "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==",
20367
+ "requires": {
20368
+ "asynckit": "^0.4.0",
20369
+ "combined-stream": "^1.0.8",
20370
+ "mime-types": "^2.1.12"
20371
+ }
20372
+ }
20373
+ }
20374
+ },
20375
  "axobject-query": {
20376
  "version": "2.2.0",
20377
  "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz",
frontend/package.json CHANGED
@@ -6,6 +6,7 @@
6
  "@testing-library/jest-dom": "^5.16.4",
7
  "@testing-library/react": "^13.3.0",
8
  "@testing-library/user-event": "^13.5.0",
 
9
  "react": "^18.2.0",
10
  "react-dom": "^18.2.0",
11
  "react-flow-renderer": "^10.3.8",
 
6
  "@testing-library/jest-dom": "^5.16.4",
7
  "@testing-library/react": "^13.3.0",
8
  "@testing-library/user-event": "^13.5.0",
9
+ "axios": "^0.27.2",
10
  "react": "^18.2.0",
11
  "react-dom": "^18.2.0",
12
  "react-flow-renderer": "^10.3.8",
frontend/public/index.html CHANGED
@@ -36,26 +36,6 @@
36
  <body>
37
  <noscript>You need to enable JavaScript to run this app.</noscript>
38
  <div id="Gradio-Flow"></div>
39
- <script>
40
- var frame = document.getElementById("Iframe");
41
-
42
- frame.onload = function()
43
- // function execute while load the iframe
44
-
45
- {
46
- // set the height of the iframe as
47
- // the height of the iframe content
48
- frame.style.height =
49
- frame.contentWindow.document.body.scrollHeight + 'px';
50
- console.log(frame.contentWindow.document.body.scrollHeight)
51
-
52
- // set the width of the iframe as the
53
- // width of the iframe content
54
- frame.style.width =
55
- frame.contentWindow.document.body.scrollWidth+'px';
56
-
57
- }
58
- </script>
59
  <!--
60
  This HTML file is a template.
61
  If you open it directly in the browser, you will see an empty page.
 
36
  <body>
37
  <noscript>You need to enable JavaScript to run this app.</noscript>
38
  <div id="Gradio-Flow"></div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
39
  <!--
40
  This HTML file is a template.
41
  If you open it directly in the browser, you will see an empty page.
frontend/src/Components/Navagation/navbar.js CHANGED
@@ -173,8 +173,8 @@ export default class Navbar extends Component{
173
  }
174
  return(<>
175
  <li key={`${item.name}-${item.port}`} onDragStart={(event) => this.onDragStart(event, 'custom', item, index)}
176
- className={` text-white text-sm flex text-center items-center cursor-pointer
177
- p-4 px-2 mt-4 ${ this.state.open ? `hover:animate-pulse ${this.state.colour[index] === null ? "" : this.state.colour[index]} ` : `hidden`} rounded-md mt-2`} draggable>
178
  <span className="text-2xl font-medium "> </span>
179
  <span className={`text-base font-medium flex-1 text-left" ${this.state.open ? "" : "hidden"}`}>{`${this.state.emoji[index] === null ? "" : this.state.emoji[index]} ${item.name}`}</span>
180
  </li >
@@ -210,7 +210,7 @@ export default class Navbar extends Component{
210
  Append Shared Gradio Hosts
211
  </Header>
212
  <Modal.Content>
213
- <div className=" text-center">This feature just allows you to append other hosted applications like gradio/streamlit to have it within the Gradio Flow interface, that may not be sending its hosting location to the api or have shared links to other people's gradio application.</div>
214
  <div className={`flex items-center rounded-md bg-light-white mt-6 border-dashed`}>
215
  <label className="relative block w-full">
216
  <span className={`absolute inset-y-0 left-0 flex items-center pl-3`}>
 
173
  }
174
  return(<>
175
  <li key={`${item.name}-${item.port}`} onDragStart={(event) => this.onDragStart(event, 'custom', item, index)}
176
+ className={` text-white text-md flex text-center items-center cursor-pointer shadow-lg
177
+ p-7 px-2 mt-4 ${ this.state.open ? `hover:animate-pulse ${this.state.colour[index] === null ? "" : this.state.colour[index]} ` : `hidden`} rounded-md mt-2`} draggable>
178
  <span className="text-2xl font-medium "> </span>
179
  <span className={`text-base font-medium flex-1 text-left" ${this.state.open ? "" : "hidden"}`}>{`${this.state.emoji[index] === null ? "" : this.state.emoji[index]} ${item.name}`}</span>
180
  </li >
 
210
  Append Shared Gradio Hosts
211
  </Header>
212
  <Modal.Content>
213
+ <div className=" text-center">Host other HugginFace Models or Gradio application via shared lin</div>
214
  <div className={`flex items-center rounded-md bg-light-white mt-6 border-dashed`}>
215
  <label className="relative block w-full">
216
  <span className={`absolute inset-y-0 left-0 flex items-center pl-3`}>
frontend/src/Components/Nodes/custom.js CHANGED
@@ -3,6 +3,7 @@ import React from "react"
3
  export default class CustomNodeIframe extends React.Component {
4
  constructor({data}){
5
  super()
 
6
  this.state = {
7
  reachable : true,
8
  selected : true,
@@ -22,14 +23,19 @@ import React from "react"
22
  render(){
23
 
24
  console.log(this.state.reachable)
25
- var frame = document.getElementById("Iframe");
26
-
27
  return (
28
  <>
29
  { this.state.selected && this.state.reachable ?
30
  <div className='relative h-[540px] w-[600px] overflow-hidden m-0 p-0' onClick={()=>this.handelSelected()}>
31
  <div className={`absolute h-full w-full ${this.state.data.colour} border-1shadow-2xl shadow-black rounded-xl -z-10`}></div>
32
- <iframe src={this.state.data.host} title={this.state.data.label} frameBorder={0} allowFullScreen className=" h-full w-full p-2 overflow-y-scroll"></iframe>
 
 
 
 
 
 
 
33
  </div>:
34
  <>
35
  <div className='break-words'>
 
3
  export default class CustomNodeIframe extends React.Component {
4
  constructor({data}){
5
  super()
6
+ this.myRef = React.createRef()
7
  this.state = {
8
  reachable : true,
9
  selected : true,
 
23
  render(){
24
 
25
  console.log(this.state.reachable)
 
 
26
  return (
27
  <>
28
  { this.state.selected && this.state.reachable ?
29
  <div className='relative h-[540px] w-[600px] overflow-hidden m-0 p-0' onClick={()=>this.handelSelected()}>
30
  <div className={`absolute h-full w-full ${this.state.data.colour} border-1shadow-2xl shadow-black rounded-xl -z-10`}></div>
31
+ <iframe
32
+ id="iframe"
33
+ ref={this.myRef}
34
+ src={this.state.data.host}
35
+ title={this.state.data.label}
36
+ frameBorder="0" class="container h-full p-2 flex-grow space-iframe overflow-scroll " allow="accelerometer; ambient-light-sensor; autoplay; battery; camera; document-domain; encrypted-media; fullscreen; geolocation; gyroscope; layout-animations; legacy-image-formats; magnetometer; microphone; midi; oversized-images; payment; picture-in-picture; publickey-credentials-get; sync-xhr; usb; vr ; wake-lock; xr-spatial-tracking" sandbox="allow-forms allow-modals allow-popups allow-popups-to-escape-sandbox allow-same-origin allow-scripts allow-downloads"></iframe>
37
+ {/* {console.log(this.myRef.current.contentWindow)} */}
38
+ {/* <gradio-app space={`${this.state.data.host}/api/predict`} className="w-full h-full"></gradio-app> */}
39
  </div>:
40
  <>
41
  <div className='break-words'>
frontend/src/css/dist/output.css CHANGED
@@ -549,6 +549,40 @@ video {
549
  --tw-backdrop-sepia: ;
550
  }
551
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
552
  .pointer-events-none {
553
  pointer-events: none;
554
  }
@@ -658,8 +692,8 @@ video {
658
  height: 100vh;
659
  }
660
 
661
- .h-6 {
662
- height: 1.5rem;
663
  }
664
 
665
  .h-10 {
@@ -678,14 +712,6 @@ video {
678
  height: 100%;
679
  }
680
 
681
- .h-8 {
682
- height: 2rem;
683
- }
684
-
685
- .h-9 {
686
- height: 2.25rem;
687
- }
688
-
689
  .w-10 {
690
  width: 2.5rem;
691
  }
@@ -694,8 +720,8 @@ video {
694
  width: 100%;
695
  }
696
 
697
- .w-8 {
698
- width: 2rem;
699
  }
700
 
701
  .w-\[600px\] {
@@ -706,22 +732,14 @@ video {
706
  width: 100vw;
707
  }
708
 
709
- .w-4 {
710
- width: 1rem;
711
- }
712
-
713
- .w-6 {
714
- width: 1.5rem;
715
- }
716
-
717
- .w-9 {
718
- width: 2.25rem;
719
- }
720
-
721
  .flex-1 {
722
  flex: 1 1 0%;
723
  }
724
 
 
 
 
 
725
  .rotate-180 {
726
  --tw-rotate: 180deg;
727
  -webkit-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));
@@ -736,10 +754,6 @@ video {
736
  align-items: center;
737
  }
738
 
739
- .self-center {
740
- align-self: center;
741
- }
742
-
743
  .overflow-auto {
744
  overflow: auto;
745
  }
@@ -748,8 +762,8 @@ video {
748
  overflow: hidden;
749
  }
750
 
751
- .overflow-y-scroll {
752
- overflow-y: scroll;
753
  }
754
 
755
  .break-words {
@@ -836,9 +850,9 @@ video {
836
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
837
  }
838
 
839
- .from-Vapor-Orange {
840
- --tw-gradient-from: #f9ac53;
841
- --tw-gradient-to: rgb(249 172 83 / 0);
842
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
843
  }
844
 
@@ -848,6 +862,75 @@ video {
848
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
849
  }
850
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
851
  .to-Retro-light-pink {
852
  --tw-gradient-to: #f6019d;
853
  }
@@ -864,18 +947,38 @@ video {
864
  --tw-gradient-to: #153cb4;
865
  }
866
 
867
- .to-Vapor-Violet {
868
- --tw-gradient-to: #300350;
869
  }
870
 
871
- .p-4 {
872
- padding: 1rem;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
873
  }
874
 
875
  .p-5 {
876
  padding: 1.25rem;
877
  }
878
 
 
 
 
 
879
  .p-0 {
880
  padding: 0px;
881
  }
@@ -944,11 +1047,6 @@ video {
944
  font-family: ui-sans-serif, system-ui, -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";
945
  }
946
 
947
- .text-sm {
948
- font-size: 0.875rem;
949
- line-height: 1.25rem;
950
- }
951
-
952
  .text-2xl {
953
  font-size: 1.5rem;
954
  line-height: 2rem;
@@ -987,6 +1085,12 @@ video {
987
  color: rgb(255 255 255 / var(--tw-text-opacity));
988
  }
989
 
 
 
 
 
 
 
990
  .shadow-2xl {
991
  --tw-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);
992
  --tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);
 
549
  --tw-backdrop-sepia: ;
550
  }
551
 
552
+ .container {
553
+ width: 100%;
554
+ }
555
+
556
+ @media (min-width: 640px) {
557
+ .container {
558
+ max-width: 640px;
559
+ }
560
+ }
561
+
562
+ @media (min-width: 768px) {
563
+ .container {
564
+ max-width: 768px;
565
+ }
566
+ }
567
+
568
+ @media (min-width: 1024px) {
569
+ .container {
570
+ max-width: 1024px;
571
+ }
572
+ }
573
+
574
+ @media (min-width: 1280px) {
575
+ .container {
576
+ max-width: 1280px;
577
+ }
578
+ }
579
+
580
+ @media (min-width: 1536px) {
581
+ .container {
582
+ max-width: 1536px;
583
+ }
584
+ }
585
+
586
  .pointer-events-none {
587
  pointer-events: none;
588
  }
 
692
  height: 100vh;
693
  }
694
 
695
+ .h-9 {
696
+ height: 2.25rem;
697
  }
698
 
699
  .h-10 {
 
712
  height: 100%;
713
  }
714
 
 
 
 
 
 
 
 
 
715
  .w-10 {
716
  width: 2.5rem;
717
  }
 
720
  width: 100%;
721
  }
722
 
723
+ .w-9 {
724
+ width: 2.25rem;
725
  }
726
 
727
  .w-\[600px\] {
 
732
  width: 100vw;
733
  }
734
 
 
 
 
 
 
 
 
 
 
 
 
 
735
  .flex-1 {
736
  flex: 1 1 0%;
737
  }
738
 
739
+ .flex-grow {
740
+ flex-grow: 1;
741
+ }
742
+
743
  .rotate-180 {
744
  --tw-rotate: 180deg;
745
  -webkit-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));
 
754
  align-items: center;
755
  }
756
 
 
 
 
 
757
  .overflow-auto {
758
  overflow: auto;
759
  }
 
762
  overflow: hidden;
763
  }
764
 
765
+ .overflow-scroll {
766
+ overflow: scroll;
767
  }
768
 
769
  .break-words {
 
850
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
851
  }
852
 
853
+ .from-indigo-500 {
854
+ --tw-gradient-from: #6366f1;
855
+ --tw-gradient-to: rgb(99 102 241 / 0);
856
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
857
  }
858
 
 
862
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
863
  }
864
 
865
+ .from-Warm-Blue {
866
+ --tw-gradient-from: #283AB8;
867
+ --tw-gradient-to: rgb(40 58 184 / 0);
868
+ --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
869
+ }
870
+
871
+ .from-Happy-Yellow {
872
+ --tw-gradient-from: #FCB866;
873
+ --tw-gradient-to: rgb(252 184 102 / 0);
874
+ --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
875
+ }
876
+
877
+ .from-Blue-Turquoise {
878
+ --tw-gradient-from: #00FEEF;
879
+ --tw-gradient-to: rgb(0 254 239 / 0);
880
+ --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
881
+ }
882
+
883
+ .from-Green-Black {
884
+ --tw-gradient-from: #051912;
885
+ --tw-gradient-to: rgb(5 25 18 / 0);
886
+ --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
887
+ }
888
+
889
+ .via-purple-500 {
890
+ --tw-gradient-to: rgb(168 85 247 / 0);
891
+ --tw-gradient-stops: var(--tw-gradient-from), #a855f7, var(--tw-gradient-to);
892
+ }
893
+
894
+ .via-Warm-Pink {
895
+ --tw-gradient-to: rgb(241 52 132 / 0);
896
+ --tw-gradient-stops: var(--tw-gradient-from), #F13484, var(--tw-gradient-to);
897
+ }
898
+
899
+ .via-Warm-Red {
900
+ --tw-gradient-to: rgb(255 96 93 / 0);
901
+ --tw-gradient-stops: var(--tw-gradient-from), #FF605D, var(--tw-gradient-to);
902
+ }
903
+
904
+ .via-Warm-Orange {
905
+ --tw-gradient-to: rgb(254 169 89 / 0);
906
+ --tw-gradient-stops: var(--tw-gradient-from), #FEA959, var(--tw-gradient-to);
907
+ }
908
+
909
+ .via-Happy-Tangerine {
910
+ --tw-gradient-to: rgb(241 160 137 / 0);
911
+ --tw-gradient-stops: var(--tw-gradient-from), #F1A089, var(--tw-gradient-to);
912
+ }
913
+
914
+ .via-Happy-Light-Magenta {
915
+ --tw-gradient-to: rgb(207 123 198 / 0);
916
+ --tw-gradient-stops: var(--tw-gradient-from), #CF7BC6, var(--tw-gradient-to);
917
+ }
918
+
919
+ .via-Happy-Indego-Purple {
920
+ --tw-gradient-to: rgb(148 98 233 / 0);
921
+ --tw-gradient-stops: var(--tw-gradient-from), #9462E9, var(--tw-gradient-to);
922
+ }
923
+
924
+ .via-Blue-Midtone {
925
+ --tw-gradient-to: rgb(40 172 234 / 0);
926
+ --tw-gradient-stops: var(--tw-gradient-from), #28ACEA, var(--tw-gradient-to);
927
+ }
928
+
929
+ .via-Green-Forest {
930
+ --tw-gradient-to: rgb(26 76 57 / 0);
931
+ --tw-gradient-stops: var(--tw-gradient-from), #1A4C39, var(--tw-gradient-to);
932
+ }
933
+
934
  .to-Retro-light-pink {
935
  --tw-gradient-to: #f6019d;
936
  }
 
947
  --tw-gradient-to: #153cb4;
948
  }
949
 
950
+ .to-pink-500 {
951
+ --tw-gradient-to: #ec4899;
952
  }
953
 
954
+ .to-Warm-Yellow {
955
+ --tw-gradient-to: #FEE27A;
956
+ }
957
+
958
+ .to-Happy-Sea-Blue {
959
+ --tw-gradient-to: #5EC5D9;
960
+ }
961
+
962
+ .to-Blue-Royal {
963
+ --tw-gradient-to: #3D76E0;
964
+ }
965
+
966
+ .to-Green-Emerald {
967
+ --tw-gradient-to: #319B72;
968
+ }
969
+
970
+ .p-7 {
971
+ padding: 1.75rem;
972
  }
973
 
974
  .p-5 {
975
  padding: 1.25rem;
976
  }
977
 
978
+ .p-4 {
979
+ padding: 1rem;
980
+ }
981
+
982
  .p-0 {
983
  padding: 0px;
984
  }
 
1047
  font-family: ui-sans-serif, system-ui, -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";
1048
  }
1049
 
 
 
 
 
 
1050
  .text-2xl {
1051
  font-size: 1.5rem;
1052
  line-height: 2rem;
 
1085
  color: rgb(255 255 255 / var(--tw-text-opacity));
1086
  }
1087
 
1088
+ .shadow-lg {
1089
+ --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
1090
+ --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
1091
+ box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
1092
+ }
1093
+
1094
  .shadow-2xl {
1095
  --tw-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);
1096
  --tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);
frontend/src/helper/visual.js CHANGED
@@ -1,5 +1,5 @@
1
  import '../css/dist/output.css'
2
- const emote = ['πŸ‘Ί', 'πŸ‘Ύ', 'πŸ€–', '🧠', '🦾', '🐲', '🦊', '🐡', 'πŸ¦„', 'πŸ€„' ,'🌟', 'πŸ–₯', 'πŸ“Ÿ', '🧬', 'πŸš€', '🌈', '🌱', '🌎']
3
 
4
  const colour_map = {
5
  0 : 'bg-gradient-to-bl from-Retro-light-blue to-Retro-light-pink',
@@ -7,10 +7,24 @@ const colour_map = {
7
  2 : 'bg-gradient-to-bl from-Retro-purple to-Vapor-Pink',
8
  3 : 'bg-gradient-to-bl from-Retro-purple to-Vapor-Blue',
9
  4 : 'bg-gradient-to-bl from-Retro-light-pink to-Vapor-Blue',
10
- 5 : 'bg-gradient-to-bl from-Vapor-Orange to-Vapor-Violet',
11
- 6 : 'bg-gradient-to-bl from-Vapor-Rose to-Vapor-Blue'
 
 
 
 
12
  }
13
 
 
 
 
 
 
 
 
 
 
 
14
  export const random_emoji = () =>{
15
  return emote[Math.floor(Math.random() * emote.length)]
16
  }
 
1
  import '../css/dist/output.css'
2
+ const emote = ['πŸ‘Ί', 'πŸ‘Ύ', 'πŸ€–', '🧠', '🦾', '🦊', '🐡', 'πŸ¦„', 'πŸ€„' ,'🌟', 'πŸ–₯', 'πŸ“Ÿ', '🧬', 'πŸš€', '🌈', '🌱', '🌎']
3
 
4
  const colour_map = {
5
  0 : 'bg-gradient-to-bl from-Retro-light-blue to-Retro-light-pink',
 
7
  2 : 'bg-gradient-to-bl from-Retro-purple to-Vapor-Pink',
8
  3 : 'bg-gradient-to-bl from-Retro-purple to-Vapor-Blue',
9
  4 : 'bg-gradient-to-bl from-Retro-light-pink to-Vapor-Blue',
10
+ 5 : 'bg-gradient-to-bl from-indigo-500 via-purple-500 to-pink-500',
11
+ 6 : 'bg-gradient-to-bl from-Vapor-Rose to-Vapor-Blue',
12
+ 7 : 'bg-gradient-to-bl from-Warm-Blue via-Warm-Pink via-Warm-Red via-Warm-Orange to-Warm-Yellow',
13
+ 8 : 'bg-gradient-to-bl from-Happy-Yellow via-Happy-Tangerine via-Happy-Light-Magenta via-Happy-Indego-Purple via-Cool-Blue to-Happy-Sea-Blue',
14
+ 9 : 'bg-gradient-to-bl from-Blue-Turquoise via-Blue-Midtone to-Blue-Royal',
15
+ 10 : 'bg-gradient-to-bl from-Green-Black via-Green-Forest to-Green-Emerald'
16
  }
17
 
18
+ /**
19
+ *
20
+ * "Warm-Blue": "#283AB8",
21
+ "Warm-Violet" : "#8D379E",
22
+ "Warm-Pink" : "#F13484",
23
+ "Warm-Red" : "#FF605D",
24
+ "Warm-Orange" : "#FEA959",
25
+ "Warm-Yellow" : "#FEE27A",
26
+ */
27
+
28
  export const random_emoji = () =>{
29
  return emote[Math.floor(Math.random() * emote.length)]
30
  }
frontend/tailwind.config.js CHANGED
@@ -18,6 +18,24 @@ module.exports = {
18
  "Vapor-Orange" : "#f9ac53",
19
  "Vapor-Rose" : "#f62e97",
20
  "Vapor-Blue" : "#153cb4",
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
21
  'body' : "#17171F",
22
  'cream' : "#FAF9F6",
23
  "selected-text" : "#0053d7",
 
18
  "Vapor-Orange" : "#f9ac53",
19
  "Vapor-Rose" : "#f62e97",
20
  "Vapor-Blue" : "#153cb4",
21
+ "Happy-Yellow": "#FCB866",
22
+ "Happy-Tangerine": "#F1A089",
23
+ "Happy-Light-Magenta" : "#CF7BC6",
24
+ "Happy-Indego-Purple" : "#9462E9",
25
+ "Happy-Cool-Blue" : "#508EE7",
26
+ "Happy-Sea-Blue" : "#5EC5D9",
27
+ "Blue-Turquoise" : "#00FEEF",
28
+ "Blue-Midtone" : "#28ACEA",
29
+ "Blue-Royal" : "#3D76E0",
30
+ "Green-Black" : "#051912",
31
+ "Green-Forest" : "#1A4C39",
32
+ "Green-Emerald" : "#319B72",
33
+ "Warm-Blue": "#283AB8",
34
+ "Warm-Violet" : "#8D379E",
35
+ "Warm-Pink" : "#F13484",
36
+ "Warm-Red" : "#FF605D",
37
+ "Warm-Orange" : "#FEA959",
38
+ "Warm-Yellow" : "#FEE27A",
39
  'body' : "#17171F",
40
  'cream' : "#FAF9F6",
41
  "selected-text" : "#0053d7",