Skip to content

Commit b64d453

Browse files
committed
feat: add onboarding functionality and theme switch button
1 parent b5d4922 commit b64d453

11 files changed

+340
-32
lines changed

assets/api_server.json

Lines changed: 1 addition & 0 deletions
Large diffs are not rendered by default.

assets/files.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
{"nm":"Files","ddd":0,"h":300,"w":300,"meta":{"g":"LottieFiles AE 0.1.21"},"layers":[{"ty":4,"nm":"Folder Front","sr":1,"st":0,"op":780,"ip":0,"hd":false,"ddd":0,"bm":0,"hasMask":false,"ao":0,"ks":{"a":{"a":0,"k":[56.869,428.603,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6},"sk":{"a":0,"k":0},"p":{"a":0,"k":[106.869,478.603,0],"ix":2},"r":{"a":0,"k":0,"ix":10},"sa":{"a":0,"k":0},"o":{"a":0,"k":100,"ix":11}},"ef":[],"shapes":[{"ty":"gr","bm":0,"hd":false,"mn":"ADBE Vector Group","nm":"Group 1","ix":1,"cix":2,"np":2,"it":[{"ty":"sh","bm":0,"hd":false,"mn":"ADBE Vector Shape - Group","nm":"Path 1","ix":1,"d":1,"ks":{"a":0,"k":{"c":true,"i":[[-9.3,23],[0,0],[-14.2,0],[0,0],[9.4,-23],[0,0],[14.2,0],[0,0]],"o":[[0,0],[5.4,-13.2],[0,0],[24.8,0],[0,0],[-5.4,13.2],[0,0],[-24.8,0]],"v":[[-333.7,380.503],[-195.5,39.703],[-163.1,17.803],[415,17.803],[447.4,65.903],[309.2,406.703],[276.8,428.603],[-301.3,428.603]]},"ix":2}},{"ty":"fl","bm":0,"hd":false,"mn":"ADBE Vector Graphic - Fill","nm":"Fill 1","c":{"a":0,"k":[0.1216,0.2353,0.5333],"ix":4},"r":1,"o":{"a":0,"k":100,"ix":5}},{"ty":"tr","a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"sk":{"a":0,"k":0,"ix":4},"p":{"a":0,"k":[0,0],"ix":2},"r":{"a":0,"k":0,"ix":6},"sa":{"a":0,"k":0,"ix":5},"o":{"a":0,"k":100,"ix":7}}]}],"ind":1,"parent":8},{"ty":4,"nm":"File Front","sr":1,"st":0,"op":780,"ip":0,"hd":false,"ddd":0,"bm":0,"hasMask":false,"ao":0,"ks":{"a":{"a":0,"k":[36.35,-67.247,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6},"sk":{"a":0,"k":0},"p":{"a":1,"k":[{"o":{"x":0.71,"y":0},"i":{"x":0.29,"y":1},"s":[86.35,-17.247,0],"t":0,"ti":[0,0,0],"to":[0,0,0]},{"o":{"x":0.167,"y":0.167},"i":{"x":0.833,"y":0.833},"s":[86.35,-141.413,0],"t":60,"ti":[0,0,0],"to":[0,0,0]},{"o":{"x":0.71,"y":0},"i":{"x":0.29,"y":1},"s":[86.35,-141.413,0],"t":76,"ti":[0,0,0],"to":[0,0,0]},{"s":[86.35,-17.247,0],"t":138}],"ix":2},"r":{"a":0,"k":0,"ix":10},"sa":{"a":0,"k":0},"o":{"a":0,"k":100,"ix":11}},"ef":[],"shapes":[{"ty":"gr","bm":0,"hd":false,"mn":"ADBE Vector Group","nm":"Group 1","ix":1,"cix":2,"np":2,"it":[{"ty":"sh","bm":0,"hd":false,"mn":"ADBE Vector Shape - Group","nm":"Path 1","ix":1,"d":1,"ks":{"a":0,"k":{"c":true,"i":[[0,-9.4],[-9.4,0],[0,0],[0,9.4],[9.4,0],[0,0]],"o":[[0,9.5],[0,0],[9.5,0],[0,-9.5],[0,0],[-9.4,0]],"v":[[-176.5,-266.897],[-159.4,-249.797],[-36.5,-249.797],[-19.4,-266.897],[-36.5,-283.997],[-159.4,-283.997]]},"ix":2}},{"ty":"fl","bm":0,"hd":false,"mn":"ADBE Vector Graphic - Fill","nm":"Fill 1","c":{"a":0,"k":[0.3451,0.6157,0.9294],"ix":4},"r":1,"o":{"a":0,"k":100,"ix":5}},{"ty":"tr","a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"sk":{"a":0,"k":0,"ix":4},"p":{"a":0,"k":[0,0],"ix":2},"r":{"a":0,"k":0,"ix":6},"sa":{"a":0,"k":0,"ix":5},"o":{"a":0,"k":100,"ix":7}}]},{"ty":"gr","bm":0,"hd":false,"mn":"ADBE Vector Group","nm":"Group 2","ix":2,"cix":2,"np":3,"it":[{"ty":"sh","bm":0,"hd":false,"mn":"ADBE Vector Shape - Group","nm":"Path 1","ix":1,"d":1,"ks":{"a":0,"k":{"c":true,"i":[[0,-9.5],[-9.4,0],[0,0],[0,9.4],[9.4,0],[0,0]],"o":[[0,9.5],[0,0],[9.5,0],[0,-9.5],[0,0],[-9.4,-0.1]],"v":[[-176.5,-61.097],[-159.4,-43.997],[234.9,-43.997],[252,-61.097],[234.9,-78.197],[-159.4,-78.197]]},"ix":2}},{"ty":"fl","bm":0,"hd":false,"mn":"ADBE Vector Graphic - Fill","nm":"Fill 1","c":{"a":0,"k":[0.3451,0.6157,0.9294],"ix":4},"r":1,"o":{"a":0,"k":100,"ix":5}},{"ty":"gr","bm":0,"hd":false,"mn":"ADBE Vector Group","nm":"Group 2","ix":3,"cix":2,"np":2,"it":[{"ty":"sh","bm":0,"hd":false,"mn":"ADBE Vector Shape - Group","nm":"Path 1","ix":1,"d":1,"ks":{"a":0,"k":{"c":true,"i":[[0,-9.5],[-9.4,0],[0,0],[0,9.4],[9.4,0],[0,0]],"o":[[0,9.5],[0,0],[9.5,0],[0,-9.5],[0,0],[-9.4,-0.1]],"v":[[-176.5,-61.097],[-159.4,-43.997],[234.9,-43.997],[252,-61.097],[234.9,-78.197],[-159.4,-78.197]]},"ix":2}},{"ty":"fl","bm":0,"hd":false,"mn":"ADBE Vector Graphic - Fill","nm":"Fill 1","c":{"a":0,"k":[0.3451,0.6157,0.9294],"ix":4},"r":1,"o":{"a":0,"k":100,"ix":5}},{"ty":"tr","a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"sk":{"a":0,"k":0,"ix":4},"p":{"a":0,"k":[0,95.32],"ix":2},"r":{"a":0,"k":0,"ix":6},"sa":{"a":0,"k":0,"ix":5},"o":{"a":0,"k":40,"ix":7}}]},{"ty":"tr","a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"sk":{"a":0,"k":0,"ix":4},"p":{"a":0,"k":[0,0],"ix":2},"r":{"a":0,"k":0,"ix":6},"sa":{"a":0,"k":0,"ix":5},"o":{"a":0,"k":40,"ix":7}}]},{"ty":"gr","bm":0,"hd":false,"mn":"ADBE Vector Group","nm":"Group 3","ix":3,"cix":2,"np":2,"it":[{"ty":"sh","bm":0,"hd":false,"mn":"ADBE Vector Shape - Group","nm":"Path 1","ix":1,"d":1,"ks":{"a":0,"k":{"c":true,"i":[[0,-9.5],[-9.4,0],[0,0],[0,9.4],[9.4,0],[0,0]],"o":[[0,9.5],[0,0],[9.5,0],[0,-9.5],[0,0],[-9.4,0]],"v":[[-176.5,-163.997],[-159.4,-146.897],[234.9,-146.897],[252,-163.997],[234.9,-181.097],[-159.4,-181.097]]},"ix":2}},{"ty":"fl","bm":0,"hd":false,"mn":"ADBE Vector Graphic - Fill","nm":"Fill 1","c":{"a":0,"k":[0.3451,0.6157,0.9294],"ix":4},"r":1,"o":{"a":0,"k":100,"ix":5}},{"ty":"tr","a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"sk":{"a":0,"k":0,"ix":4},"p":{"a":0,"k":[0,0],"ix":2},"r":{"a":0,"k":0,"ix":6},"sa":{"a":0,"k":0,"ix":5},"o":{"a":0,"k":40,"ix":7}}]},{"ty":"gr","bm":0,"hd":false,"mn":"ADBE Vector Group","nm":"Group 4","ix":4,"cix":2,"np":2,"it":[{"ty":"sh","bm":0,"hd":false,"mn":"ADBE Vector Shape - Group","nm":"Path 1","ix":1,"d":1,"ks":{"a":0,"k":{"c":true,"i":[[-19.3,0],[0,0],[0,-19.3],[0,0],[19.3,0],[0,0],[0,19.3],[0,0]],"o":[[0,0],[19.3,0],[0,0],[0,19.3],[0,0],[-19.3,0],[0,0],[0,-19.4]],"v":[[-208.4,-379.497],[281.1,-379.497],[316.1,-344.497],[316.1,210.003],[281.1,245.003],[-208.4,245.003],[-243.4,210.003],[-243.4,-344.497]]},"ix":2}},{"ty":"fl","bm":0,"hd":false,"mn":"ADBE Vector Graphic - Fill","nm":"Fill 1","c":{"a":0,"k":[1,1,1],"ix":4},"r":1,"o":{"a":0,"k":100,"ix":5}},{"ty":"tr","a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"sk":{"a":0,"k":0,"ix":4},"p":{"a":0,"k":[0,0],"ix":2},"r":{"a":0,"k":0,"ix":6},"sa":{"a":0,"k":0,"ix":5},"o":{"a":0,"k":100,"ix":7}}]}],"ind":2,"parent":8},{"ty":4,"nm":"Sparkle 1","sr":1,"st":0,"op":780,"ip":0,"hd":false,"ddd":0,"bm":0,"hasMask":false,"ao":0,"ks":{"a":{"a":0,"k":[-514.5,-139.113,0],"ix":1},"s":{"a":1,"k":[{"o":{"x":0.71,"y":0},"i":{"x":0.29,"y":1},"s":[28,28,100],"t":0},{"o":{"x":0.71,"y":0},"i":{"x":0.29,"y":1},"s":[39.76,39.76,100],"t":97},{"s":[28,28,100],"t":196}],"ix":6},"sk":{"a":0,"k":0},"p":{"a":0,"k":[22.94,83.048,0],"ix":2},"r":{"a":0,"k":0,"ix":10},"sa":{"a":0,"k":0},"o":{"a":0,"k":100,"ix":11}},"ef":[],"shapes":[{"ty":"gr","bm":0,"hd":false,"mn":"ADBE Vector Group","nm":"Group 1","ix":1,"cix":2,"np":3,"it":[{"ty":"sh","bm":0,"hd":false,"mn":"ADBE Vector Shape - Group","nm":"Path 1","ix":1,"d":1,"ks":{"a":0,"k":{"c":true,"i":[[8.3,0],[0,-8.3],[-8.3,0],[0,8.3]],"o":[[-8.3,0],[0,8.3],[8.3,0],[0,-8.3]],"v":[[-514.5,-154.113],[-529.5,-139.113],[-514.5,-124.113],[-499.5,-139.113]]},"ix":2}},{"ty":"sh","bm":0,"hd":false,"mn":"ADBE Vector Shape - Group","nm":"Path 2","ix":2,"d":1,"ks":{"a":0,"k":{"c":true,"i":[[14.9,0],[0,14.9],[-14.9,0],[0,-14.9]],"o":[[-14.9,0],[0,-14.9],[14.9,0],[0,14.9]],"v":[[-514.5,-112.113],[-541.5,-139.113],[-514.5,-166.113],[-487.5,-139.113]]},"ix":2}},{"ty":"fl","bm":0,"hd":false,"mn":"ADBE Vector Graphic - Fill","nm":"Fill 1","c":{"a":0,"k":[0.7216,0.7961,1],"ix":4},"r":1,"o":{"a":0,"k":100,"ix":5}},{"ty":"tr","a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"sk":{"a":0,"k":0,"ix":4},"p":{"a":0,"k":[0,0],"ix":2},"r":{"a":0,"k":0,"ix":6},"sa":{"a":0,"k":0,"ix":5},"o":{"a":0,"k":100,"ix":7}}]}],"ind":3},{"ty":4,"nm":"Sparkle 2","sr":1,"st":0,"op":780,"ip":0,"hd":false,"ddd":0,"bm":0,"hasMask":false,"ao":0,"ks":{"a":{"a":0,"k":[-99.896,-407,0],"ix":1},"s":{"a":1,"k":[{"o":{"x":0.71,"y":0},"i":{"x":0.29,"y":1},"s":[27,27,100],"t":-3},{"o":{"x":0.71,"y":0},"i":{"x":0.29,"y":1},"s":[35.64,35.64,100],"t":79.5},{"s":[27,27,100],"t":172}],"ix":6},"sk":{"a":0,"k":0},"p":{"a":0,"k":[271.528,31.61,0],"ix":2},"r":{"a":1,"k":[{"o":{"x":0.71,"y":0},"i":{"x":0.29,"y":1},"s":[0],"t":-3},{"o":{"x":0.71,"y":0},"i":{"x":0.29,"y":1},"s":[180],"t":79.5},{"s":[360],"t":172}],"ix":10},"sa":{"a":0,"k":0},"o":{"a":0,"k":100,"ix":11}},"ef":[],"shapes":[{"ty":"gr","bm":0,"hd":false,"mn":"ADBE Vector Group","nm":"Group 1","ix":1,"cix":2,"np":2,"it":[{"ty":"sh","bm":0,"hd":false,"mn":"ADBE Vector Shape - Group","nm":"Path 1","ix":1,"d":1,"ks":{"a":0,"k":{"c":true,"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-64.896,-413],[-93.896,-413],[-93.896,-440],[-105.896,-440],[-105.896,-413],[-134.896,-413],[-134.896,-401],[-105.896,-401],[-105.896,-374],[-93.896,-374],[-93.896,-401],[-64.896,-401]]},"ix":2}},{"ty":"fl","bm":0,"hd":false,"mn":"ADBE Vector Graphic - Fill","nm":"Fill 1","c":{"a":0,"k":[0.7216,0.7961,1],"ix":4},"r":1,"o":{"a":0,"k":100,"ix":5}},{"ty":"tr","a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"sk":{"a":0,"k":0,"ix":4},"p":{"a":0,"k":[0,0],"ix":2},"r":{"a":0,"k":0,"ix":6},"sa":{"a":0,"k":0,"ix":5},"o":{"a":0,"k":100,"ix":7}}]}],"ind":4},{"ty":4,"nm":"Sparkle","sr":1,"st":0,"op":780,"ip":0,"hd":false,"ddd":0,"bm":0,"hasMask":false,"ao":0,"ks":{"a":{"a":0,"k":[-99.896,-407,0],"ix":1},"s":{"a":1,"k":[{"o":{"x":0.71,"y":0},"i":{"x":0.29,"y":1},"s":[27,27,100],"t":27.5},{"o":{"x":0.71,"y":0},"i":{"x":0.29,"y":1},"s":[35.64,35.64,100],"t":110},{"s":[27,27,100],"t":202.5}],"ix":6},"sk":{"a":0,"k":0},"p":{"a":0,"k":[271.528,258.61,0],"ix":2},"r":{"a":1,"k":[{"o":{"x":0.71,"y":0},"i":{"x":0.29,"y":1},"s":[0],"t":27.5},{"o":{"x":0.71,"y":0},"i":{"x":0.29,"y":1},"s":[180],"t":110},{"s":[360],"t":202.5}],"ix":10},"sa":{"a":0,"k":0},"o":{"a":0,"k":100,"ix":11}},"ef":[],"shapes":[{"ty":"gr","bm":0,"hd":false,"mn":"ADBE Vector Group","nm":"Group 1","ix":1,"cix":2,"np":2,"it":[{"ty":"sh","bm":0,"hd":false,"mn":"ADBE Vector Shape - Group","nm":"Path 1","ix":1,"d":1,"ks":{"a":0,"k":{"c":true,"i":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],"v":[[-64.896,-413],[-93.896,-413],[-93.896,-440],[-105.896,-440],[-105.896,-413],[-134.896,-413],[-134.896,-401],[-105.896,-401],[-105.896,-374],[-93.896,-374],[-93.896,-401],[-64.896,-401]]},"ix":2}},{"ty":"fl","bm":0,"hd":false,"mn":"ADBE Vector Graphic - Fill","nm":"Fill 1","c":{"a":0,"k":[0.7216,0.7961,1],"ix":4},"r":1,"o":{"a":0,"k":100,"ix":5}},{"ty":"tr","a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"sk":{"a":0,"k":0,"ix":4},"p":{"a":0,"k":[0,0],"ix":2},"r":{"a":0,"k":0,"ix":6},"sa":{"a":0,"k":0,"ix":5},"o":{"a":0,"k":100,"ix":7}}]}],"ind":5},{"ty":4,"nm":"Frile Back","sr":1,"st":0,"op":780,"ip":0,"hd":false,"ddd":0,"bm":0,"hasMask":false,"ao":0,"ks":{"a":{"a":0,"k":[-31.65,71.753,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6},"sk":{"a":0,"k":0},"p":{"a":1,"k":[{"o":{"x":0.71,"y":0},"i":{"x":0.29,"y":1},"s":[18.35,121.753,0],"t":24,"ti":[0,0,0],"to":[0,0,0]},{"o":{"x":0.167,"y":0.167},"i":{"x":0.833,"y":0.833},"s":[18.35,-1.657,0],"t":85,"ti":[0,0,0],"to":[0,0,0]},{"o":{"x":0.71,"y":0},"i":{"x":0.29,"y":1},"s":[18.35,-1.657,0],"t":102,"ti":[0,0,0],"to":[0,0,0]},{"s":[18.35,121.753,0],"t":158}],"ix":2},"r":{"a":0,"k":0,"ix":10},"sa":{"a":0,"k":0},"o":{"a":0,"k":100,"ix":11}},"ef":[],"shapes":[{"ty":"gr","bm":0,"hd":false,"mn":"ADBE Vector Group","nm":"Group 1","ix":1,"cix":2,"np":2,"it":[{"ty":"sh","bm":0,"hd":false,"mn":"ADBE Vector Shape - Group","nm":"Path 1","ix":1,"d":1,"ks":{"a":0,"k":{"c":true,"i":[[-19.3,0],[0,0],[0,-19.3],[0,0],[19.3,0],[0,0],[0,19.3],[0,0]],"o":[[0,0],[19.3,0],[0,0],[0,19.3],[0,0],[-19.3,0],[0,0],[0,-19.4]],"v":[[-276.4,-240.497],[213.1,-240.497],[248.1,-205.497],[248.1,349.003],[213.1,384.003],[-276.4,384.003],[-311.4,349.003],[-311.4,-205.497]]},"ix":2}},{"ty":"fl","bm":0,"hd":false,"mn":"ADBE Vector Graphic - Fill","nm":"Fill 1","c":{"a":0,"k":[0.7373,0.8039,0.9686],"ix":4},"r":1,"o":{"a":0,"k":100,"ix":5}},{"ty":"tr","a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"sk":{"a":0,"k":0,"ix":4},"p":{"a":0,"k":[0,0],"ix":2},"r":{"a":0,"k":0,"ix":6},"sa":{"a":0,"k":0,"ix":5},"o":{"a":0,"k":100,"ix":7}}]}],"ind":6,"parent":8},{"ty":4,"nm":"Folder Back","sr":1,"st":0,"op":780,"ip":0,"hd":false,"ddd":0,"bm":0,"hasMask":false,"ao":0,"ks":{"a":{"a":0,"k":[-67,429.003,0],"ix":1},"s":{"a":0,"k":[100,100,100],"ix":6},"sk":{"a":0,"k":0},"p":{"a":0,"k":[-17,479.003,0],"ix":2},"r":{"a":0,"k":0,"ix":10},"sa":{"a":0,"k":0},"o":{"a":0,"k":100,"ix":11}},"ef":[],"shapes":[{"ty":"gr","bm":0,"hd":false,"mn":"ADBE Vector Group","nm":"Group 1","ix":1,"cix":2,"np":2,"it":[{"ty":"sh","bm":0,"hd":false,"mn":"ADBE Vector Shape - Group","nm":"Path 1","ix":1,"d":1,"ks":{"a":0,"k":{"c":true,"i":[[3.2,16.4],[0,0],[-22,0],[0,0],[-3.2,-16.4],[0,0],[22,0],[0,0]],"o":[[0,0],[-4.3,-21.6],[0,0],[16.7,0],[0,0],[4.3,21.6],[0,0],[-16.7,0]],"v":[[-350.1,400.803],[-434.8,-27.297],[-400.5,-69.097],[181.8,-69.097],[216.1,-40.897],[300.8,387.203],[266.5,429.003],[-315.8,429.003]]},"ix":2}},{"ty":"fl","bm":0,"hd":false,"mn":"ADBE Vector Graphic - Fill","nm":"Fill 1","c":{"a":0,"k":[0.3059,0.4314,0.7569],"ix":4},"r":1,"o":{"a":0,"k":100,"ix":5}},{"ty":"tr","a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"sk":{"a":0,"k":0,"ix":4},"p":{"a":0,"k":[0,0],"ix":2},"r":{"a":0,"k":0,"ix":6},"sa":{"a":0,"k":0,"ix":5},"o":{"a":0,"k":100,"ix":7}}]}],"ind":7,"parent":8},{"ty":3,"nm":"Null 4","sr":1,"st":0,"op":780,"ip":0,"hd":false,"ddd":0,"bm":0,"hasMask":false,"ao":0,"ks":{"a":{"a":0,"k":[50,50,0],"ix":1},"s":{"a":1,"k":[{"o":{"x":0.71,"y":0},"i":{"x":0.29,"y":1},"s":[28,28,100],"t":0},{"o":{"x":0.71,"y":0},"i":{"x":0.29,"y":1},"s":[26,26,100],"t":60},{"o":{"x":0.71,"y":0},"i":{"x":0.29,"y":1},"s":[26,26,100],"t":102},{"s":[28,28,100],"t":158}],"ix":6},"sk":{"a":0,"k":0},"p":{"a":0,"k":[150,150,0],"ix":2},"r":{"a":0,"k":0,"ix":10},"sa":{"a":0,"k":0},"o":{"a":0,"k":0,"ix":11}},"ef":[],"ind":8},{"ty":4,"nm":"Bg","sr":1,"st":0,"op":780,"ip":0,"hd":false,"ddd":0,"bm":0,"hasMask":false,"ao":0,"ks":{"a":{"a":0,"k":[1.572,-0.376,0],"ix":1},"s":{"a":0,"k":[28,28,100],"ix":6},"sk":{"a":0,"k":0},"p":{"a":0,"k":[150.44,149.895,0],"ix":2},"r":{"a":0,"k":0,"ix":10},"sa":{"a":0,"k":0},"o":{"a":0,"k":100,"ix":11}},"ef":[],"shapes":[{"ty":"gr","bm":0,"hd":false,"mn":"ADBE Vector Group","nm":"Group 1","ix":1,"cix":2,"np":2,"it":[{"ty":"sh","bm":0,"hd":false,"mn":"ADBE Vector Shape - Group","nm":"Path 1","ix":1,"d":1,"ks":{"a":0,"k":{"c":true,"i":[[32.3,330],[372.3,-267],[23.5,-253.4],[42.8,-123.5],[-134.5,-40.897],[-107.1,52.597]],"o":[[-16.6,-169.4],[-84.4,60.5],[-6.5,70.3],[-24.1,69.4],[177.7,54.1],[136.3,-66.9]],"v":[[466.7,-157.097],[-209.1,-431.397],[-368.7,-38.197],[-453.9,219.603],[-347.5,495.9],[160.1,466.503]]},"ix":2}},{"ty":"fl","bm":0,"hd":false,"mn":"ADBE Vector Graphic - Fill","nm":"Fill 1","c":{"a":0,"k":[0.9647,0.9608,0.9608],"ix":4},"r":1,"o":{"a":0,"k":100,"ix":5}},{"ty":"tr","a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"sk":{"a":0,"k":0,"ix":4},"p":{"a":0,"k":[0,0],"ix":2},"r":{"a":0,"k":0,"ix":6},"sa":{"a":0,"k":0,"ix":5},"o":{"a":0,"k":100,"ix":7}}]}],"ind":9}],"v":"5.5.7","fr":60,"op":202,"ip":0,"assets":[]}

assets/generate.json

Lines changed: 1 addition & 0 deletions
Large diffs are not rendered by default.

lib/consts.dart

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,9 @@ const kAssetIntroMd = "assets/intro.md";
1313
const kAssetSendingLottie = "assets/sending.json";
1414
const kAssetSavingLottie = "assets/saving.json";
1515
const kAssetSavedLottie = "assets/completed.json";
16+
const kAssetGenerateCodeLottie = "assets/generate.json";
17+
const kAssetApiServerLottie = "assets/api_server.json";
18+
const kAssetFolderLottie = "assets/files.json";
1619

1720
final kIsMacOS = !kIsWeb && Platform.isMacOS;
1821
final kIsWindows = !kIsWeb && Platform.isWindows;
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
import 'package:apidash/providers/settings_providers.dart';
2+
import 'package:flutter/material.dart';
3+
import 'package:flutter_riverpod/flutter_riverpod.dart';
4+
5+
class ThemeSwitchButton extends StatelessWidget {
6+
const ThemeSwitchButton({super.key});
7+
8+
@override
9+
Widget build(BuildContext context) {
10+
return Consumer(builder: (context, ref, child) {
11+
final settings = ref.watch(settingsProvider);
12+
13+
return IconButton(
14+
icon: settings.isDark
15+
? const Icon(
16+
Icons.dark_mode_rounded,
17+
color: Colors.indigo,
18+
)
19+
: const Icon(
20+
Icons.light_mode_rounded,
21+
color: Colors.yellow,
22+
),
23+
onPressed: () {
24+
ref.read(settingsProvider.notifier).update(isDark: !settings.isDark);
25+
},
26+
);
27+
});
28+
}
29+
}

lib/screens/mobile/dashboard.dart

Lines changed: 43 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
import 'package:apidash/screens/mobile/onboarding_screen.dart';
2+
import 'package:apidash/services/shared_preferences_services.dart';
13
import 'package:apidash_design_system/apidash_design_system.dart';
24
import 'package:flutter/material.dart';
35
import 'package:flutter/services.dart';
@@ -19,41 +21,50 @@ class MobileDashboard extends ConsumerStatefulWidget {
1921
}
2022

2123
class _MobileDashboardState extends ConsumerState<MobileDashboard> {
22-
@override
23-
Widget build(
24-
BuildContext context,
25-
) {
26-
final railIdx = ref.watch(navRailIndexStateProvider);
27-
final isLeftDrawerOpen = ref.watch(leftDrawerStateProvider);
24+
Future<bool> _checkOnboardingStatus() async {
25+
return await getOnboardingStatusFromSharedPrefs();
26+
}
2827

29-
return AnnotatedRegion<SystemUiOverlayStyle>(
30-
value: FlexColorScheme.themedSystemNavigationBar(
31-
context,
32-
opacity: 0,
33-
noAppBar: true,
34-
),
35-
child: Stack(
36-
alignment: AlignmentDirectional.bottomCenter,
37-
children: [
38-
PageBranch(
39-
pageIndex: railIdx,
28+
@override
29+
Widget build(BuildContext context) {
30+
return FutureBuilder<bool>(
31+
future: _checkOnboardingStatus(),
32+
builder: (context, snapshot) {
33+
final railIdx = ref.watch(navRailIndexStateProvider);
34+
final isLeftDrawerOpen = ref.watch(leftDrawerStateProvider);
35+
if (snapshot.connectionState == ConnectionState.waiting) {
36+
return const Center(child: CircularProgressIndicator());
37+
} else if (snapshot.data == false) {
38+
return const OnboardingScreen();
39+
}
40+
return AnnotatedRegion<SystemUiOverlayStyle>(
41+
value: FlexColorScheme.themedSystemNavigationBar(
42+
context,
43+
opacity: 0,
44+
noAppBar: true,
4045
),
41-
if (context.isMediumWindow)
42-
AnimatedPositioned(
43-
bottom: railIdx > 2
44-
? 0
45-
: isLeftDrawerOpen
46+
child: Stack(
47+
alignment: AlignmentDirectional.bottomCenter,
48+
children: [
49+
PageBranch(pageIndex: railIdx),
50+
if (context.isMediumWindow)
51+
AnimatedPositioned(
52+
bottom: railIdx > 2
4653
? 0
47-
: -(72 + MediaQuery.paddingOf(context).bottom),
48-
left: 0,
49-
right: 0,
50-
height: 70 + MediaQuery.paddingOf(context).bottom,
51-
duration: const Duration(milliseconds: 200),
52-
curve: Curves.easeOut,
53-
child: const BottomNavBar(),
54-
),
55-
],
56-
),
54+
: isLeftDrawerOpen
55+
? 0
56+
: -(72 + MediaQuery.paddingOf(context).bottom),
57+
left: 0,
58+
right: 0,
59+
height: 70 + MediaQuery.paddingOf(context).bottom,
60+
duration: const Duration(milliseconds: 200),
61+
curve: Curves.easeOut,
62+
child: const BottomNavBar(),
63+
),
64+
],
65+
),
66+
);
67+
},
5768
);
5869
}
5970
}

0 commit comments

Comments
 (0)