From ef5aec3cdb529ba79698e6c034da9e92194b1a9c Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Mon, 28 Feb 2022 14:50:35 -0500 Subject: [PATCH 01/51] enter vitebook --- .gitignore | 6 +++++ .storybook/main.js | 12 --------- .vitebook/App.svelte | 5 ++++ .vitebook/config.js | 31 ++++++++++++++++++++++ .vitebook/index.html | 18 +++++++++++++ .vitebook/public/404.svg | 5 ++++ .vitebook/public/apple-touch-icon.png | Bin 0 -> 1574 bytes .vitebook/public/favicon-16x16.png | Bin 0 -> 338 bytes .vitebook/public/favicon-32x32.png | Bin 0 -> 492 bytes .vitebook/public/favicon.ico | Bin 0 -> 21238 bytes .vitebook/public/logo-192x192.png | Bin 0 -> 1700 bytes .vitebook/public/logo-512x512.png | Bin 0 -> 4209 bytes .vitebook/public/logo.svg | 4 +++ .vitebook/public/manifest.json | 20 ++++++++++++++ .vitebook/public/robots.txt | 3 +++ .vitebook/theme/index.js | 3 +++ package.json | 36 ++++++++++++++------------ src/components/Cost.story.svelte | 5 ++++ 18 files changed, 120 insertions(+), 28 deletions(-) delete mode 100644 .storybook/main.js create mode 100644 .vitebook/App.svelte create mode 100644 .vitebook/config.js create mode 100644 .vitebook/index.html create mode 100644 .vitebook/public/404.svg create mode 100644 .vitebook/public/apple-touch-icon.png create mode 100644 .vitebook/public/favicon-16x16.png create mode 100644 .vitebook/public/favicon-32x32.png create mode 100644 .vitebook/public/favicon.ico create mode 100644 .vitebook/public/logo-192x192.png create mode 100644 .vitebook/public/logo-512x512.png create mode 100644 .vitebook/public/logo.svg create mode 100644 .vitebook/public/manifest.json create mode 100644 .vitebook/public/robots.txt create mode 100644 .vitebook/theme/index.js create mode 100644 src/components/Cost.story.svelte diff --git a/.gitignore b/.gitignore index 7e3be73..7d5a785 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,9 @@ node_modules .vercel_build_output/ package-lock.json .svench + +.DS_STORE +.cache +.temp +node_modules/ +dist/yarn-error.log diff --git a/.storybook/main.js b/.storybook/main.js deleted file mode 100644 index 444611d..0000000 --- a/.storybook/main.js +++ /dev/null @@ -1,12 +0,0 @@ -const path = require('path'); - -module.exports = { - addons: ['@storybook/addon-actions/register'], - stories: [ '../src/**/*stories.js' ], - webpackFinal: (config) => { - config.resolve.alias['~'] = path.resolve(__dirname, '../src/'); - config.resolve.alias['~C'] = path.resolve(__dirname, '../src/components/'); - - return config; - } -}; diff --git a/.vitebook/App.svelte b/.vitebook/App.svelte new file mode 100644 index 0000000..55e6f11 --- /dev/null +++ b/.vitebook/App.svelte @@ -0,0 +1,5 @@ + + + diff --git a/.vitebook/config.js b/.vitebook/config.js new file mode 100644 index 0000000..a84394a --- /dev/null +++ b/.vitebook/config.js @@ -0,0 +1,31 @@ +import { svelte } from '@sveltejs/vite-plugin-svelte'; +import { clientPlugin, defineConfig } from '@vitebook/client/node'; +import { defaultThemePlugin } from '@vitebook/theme-default/node'; +import preprocess from 'svelte-preprocess'; + +export default defineConfig({ + include: ['src/**/*.story.svelte'], + alias: { + $app: '/node_modules/@sveltejs/kit/assets/app', + $lib: '/src/lib', + }, + plugins: [ + clientPlugin({ appFile: 'App.svelte' }), + defaultThemePlugin(), + svelte({ + compilerOptions: { + hydratable: true + }, + extensions: ['.svelte'], + // Consult https://github.com/sveltejs/svelte-preprocess for more information + // about preprocessors. + preprocess: preprocess(), + }), + ], + site: { + title: '', + description: '', + /** @type {(import('@vitebook/theme-default/node').DefaultThemeConfig} */ + theme: {}, + }, +}); diff --git a/.vitebook/index.html b/.vitebook/index.html new file mode 100644 index 0000000..a027c25 --- /dev/null +++ b/.vitebook/index.html @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + +
+ + + diff --git a/.vitebook/public/404.svg b/.vitebook/public/404.svg new file mode 100644 index 0000000..7f86508 --- /dev/null +++ b/.vitebook/public/404.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/.vitebook/public/apple-touch-icon.png b/.vitebook/public/apple-touch-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..60128d815e642baa1ee375af2618e2ebb3cdeadd GIT binary patch literal 1574 zcmb7^`B#!@6vuHvb0KjV&5c0KAPG(1HcLT;6jOWMavA5C=0eM)md%8x0IkeWFcp_L zrl6QL8dhT-(vm3(Ytr#GXQr||q@2<+#N1L+82l6Fo^$VW@44sue7?^w&t)(w6k+aU z4uioE)G%_4{_I@Kbw>JXZo8iVW?0j)DJyeOAT7NWWr zT$@q;$98pwd{0sfUAhmiKCem>mbKS%BM(k*De7H4tHk1;xa@26zD8I_3mkav_z&00S;3h47mxoX)Y+4?BFQilEWQEWyTRw&s?55btFlM7(9h2MFd|(UWOXx*%#_~kPf%JM?NI=WlwRBFsAIIOgf+JaA`5C?Ek8Ww6 z9AEv1;TcZ)mRal`)%Dw@1S9A|QyWzh!JR8LpqWu>HS~UMMSt7lA~i}6U;{U=$adNfo>e{)vyzg)))HGEMORVy5NhcyC@hUw7m@Vz|ru9 z(a+sqmSO~NtP0{zwBRib1_IxemsGnMa|TYw9&Pzjwl}{=pkDtbRMg!&AAsS81w)A` zA;EfwA9}Xuk=+El6|N=jHU=#l5)3)8#l}tnCP(LJARBBGe`s0C@f7 zzbt-BxxQ||;mGlo_@~lm>2%_0^4(?w|0GfLAQAz+?|Go;0AYwyI5(_%ljJ_RLS9`o z^vCh#6R4sFjDMZ#>A3mttGas^p(Xv4cPC?~_QcfVPjR3q`^ZilTeT;lF6~an#tQM? z_(yJ>P?6xnP48ZddVo$3vR!^j6;O3XU|+SDv+=7e-e%9~86*UY~lIcoQMUc2!%;Tx+6LHV2MyvyL zR7KE7Y454bme;+f1Yh4C>1mlL?{vw~CgP(2ElEdhgO#Pz6Grn5eXa0BRXZcXMt4hSm^iHfZ xM_ky7m*%??x^EcW^b~ZN*~+y#^6KN1KTJJw>`RzF@G^ly#?#f$Wt~$(695@Sbix1t literal 0 HcmV?d00001 diff --git a/.vitebook/public/favicon-32x32.png b/.vitebook/public/favicon-32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..852b0ad21440e0c80ef44a3e4e11c02f8e93125e GIT binary patch literal 492 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE3?yBabR7dyT>(BJu0Wc2@c)#?|NsBz&!6AW z&~SgFvH}oDvM#8T6yRlgzgMjxRm8!FYyWh)1RwtU_wO61vcG@-K0ZGF!cv6^MPdaJ zf&u~p7cN}bzkh#!e}8^{en3Egfq}vLZkhZDp#XcHbu&V&fKK5n3GxeOnBQ8^khgBKlV}WUF?%w|Ye{WDvYMxBo zqB++sozBEqR;YM#F+DbUzT;UZ7mxj+3yY=%?Tg{$ymIY{=!Kt5=_`Epg`QZdZ?jmm z&DiTDw_!-)C$<+gipdt7&iqr9r|;a*BqVIQ@}-(a%hDgqFS;bGU|krX@!7LL*rHD= zzWV#*NUp8YKekmaExd6)dX3?t<$qXeF3hr#ibzb)zM!gG_R9FfyEdiZzV;tSpZeYt zy7rj8OYZ6FJ*poTu3UNFQ)xo7oM^!b-T9LrY|AszIQb`H?TQ9p3w1Tw*-{+Ms!3n! x{M;`&?3v@va7iN~%{gu&|NKv>PSaSwe`Yt~kXMQ2&ix6BGf!7Pmvv4FO#spMxS{|6 literal 0 HcmV?d00001 diff --git a/.vitebook/public/favicon.ico b/.vitebook/public/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..63f6e3fcc983a7010fbba33addef151a75593422 GIT binary patch literal 21238 zcmeHPeQZ@{89)7^SPG?-mbR4MTM8{9tiTASR!k3LA*3TqiQR`lLX*v5njs&Ng#gmK zG0{|6MayQ`3=PZ$>YPLCaDO>ZIzYS7p&eeZ{|%9Se;N!r`n6R{7|#zxww4>W(RE029BQx~t4jEoFfwrrUU z3=FttVGQ<}2h}I=+iTleFZ^II*hZj!R#a5T>C>mf<{=LI^f~Ll9k1eC^34rGd)l_v z^MCez0h8#S2 zQ10HnYvm(G`>gYQw9Ps;rE2jA6t^8x?SSU()C+%eM~a^LrpkL>UY;C2eAvoEjP_yL zXr}$lX)|QOdpE*zb=q~Fv#n(Qb8~ZL>(;F@I5;SA*ylG;K45#tcF&o9v~#xC<=^fR z18pbUh_<#i1@Z!XKs2ex0|9a_S{PGC!d(n?b%MM>OgWa!g{Fc{p_tTskYxO4=ks6R+W492P;>u z90k@(J_GoGSmjAPcq^yO1HWE!{SI?>cPXC5#l@=qxpwWEII(l*&P426?E&K;x3b9V zGh5nJ`fJv#vFe;v`Ed|O`FHw;@$VqxpSj;VUa$HnIHB+ zLsKeiRrz)+2dpbB@72}S(%08FA`fG~4(FX+^o^$m9>*4e@PpCS-Wy_Xi+NTfL zAKe0UIZ9MBu1r++;>AHAQQH^sZe60r)Ac=FQ2vI4zXF3qyU4vpz#}r83mAq6D7YU2 zK0tv+0LKJAjKV!=V$}0KyhHd6j|6~_EP`WAzz1+XV^StP5T^&S@q9k87N`N(cRxr% z?p}cL$_{{S^@AeoL9`pN_X(GA-U>Vj@+e3i1MK|&fphwx1z`M?&cd?3AK-kD-3L7G z0T@H4yAPVck#mDi{@MpD2k9(}LGAz$jz6yjfD=HvN(qRWfE$0-jR4>SI0wsdT{;Q* z&<6n^TsxrsGJyL&U=_eVGu?z`JOF6E;q)!s?*_a;x``KrdI5`f-ovI4_G>t18DV?r z1=6V;kjoE%>ww}+?gfuOW6jTmt`9@g2i?GWfORKbqzy#;fa1^j!@{rZl*-r6p&T?y zR#B;5OXGdkg&zTo5xhV;hzSy}0*XK9a5*=}IV<{L+83Mj8k)L~=U5K>Kr4_g(gY$_ zJj6AkvIE`92lLNdlQ}OORrADnM*Bc(j-5Du{HzP-xH^Df89R~^VkdCzbOTeZBgq> zp*3Y)1_tpC+l5qsWt2YP7%rLp&=jOcpE7;=KyjP<-FKA_^!#-->cY$~w@G%XS96~T zO+R-7ULe^rA|7I2$Tm>(r)GVqc%?U7jF3uS_(9xEHhHASzWoBAxUdeCy?A288Z!4a zaGf*QKboqZ=;x`qmb+@zD(UFxkgl$-q=0Ktix&si%tE&O&?b;F24rmhSa>6@TtC8LON-cP^FumwI3USBIRHL_=C2R5%Cbm1l8}lw*%T2j1kyg&}WWV zQCeDBT=#sr)sG3}&sg&+puXkwN1hPR8+}pB0b>OEpbTRM?gO#!>EXVXczrMq{IkJ{ z@iY7TNNC0V%Yfp~xR-nS!tJTk-`=h{W+>TpM5cXVon+>JS|79zE?v4Lw{PEe`|Q^B zao|txUciikR@}Gv<5*@t+pgMrJI_eREC+KtelEES(I$rcs5SST&AtM?WOI&9r^k4C#flZOefxG5C)xLaYKJ75Ki4z9qwOn=zMA!u z~10MfpWm)SpFy?S-jez+v_H(}G7@1uQkXZ>WX z9|??c8Rx~y)$O@>aC8+yhGPJv}|+ zHU2#S?(~7;&zPNgVcZfe-^sksefZv=^asZbp>dPW6ZfLi51doc*P#7?2_!?hkcib6 zMw{ z)qXFxX8DNuM4cyx_T$_Hk|kmLL&mI(+nl^&J?D6tYiY=2vf)RXCXg)A-a;w=)~T4syUub^@Yv|_PJMm7Y}&NR z`i+tPtx+VsVZ#PBmx{b;-}!ND0?8H=3BC9w5^W1PH_kl-_BGSS#zw1OXWt$R zjvP6n<`9vu@#YT`#`C~=ZHxUuEOVdEZ?Dh!uDw5Fe9LbgkI+Zs*#DEWUDzMA0ovCp zMrW+9ImM$HOU-$q%SwysE?v4*Iy*aKc0r2yGd4DX9_E$EEGUwxbqy*mbo))0n@{*W z>yLensHmt&8X6j0$NNslq?kV_tNp(%&_lrRSjR`4FJN1s#yA*j>G+;;{q^hDopeW? zPXK@VfHI;#Td)nfJr@6RHOs4{>av=Q}w6$^QotsSHdoe?2~8TcExh<3h&9(dxU~ea$mefmDeeA2BYpVq+Xz-!O&8_h9Q6z!D(UvIhn) z0M?u#j#KG_f5YBIU_ZcmnQHOEU{I`#owvz0KCAYOnP9_1Ct(b^?*Hw7;)Sl zJRA0ebU{$x$Nw#$+|LSXF|=+E9vF=w?FnjM=tW=XMSti;e@5_rAe2CWS;RB!H4HqX zG@j9#J(_`Yt%pPBTHg&yUi+(Dk5JkK;M5RdP7jT3=VmFg?7j(&g(s*V-RC p4>+{Wzt+zD>-=gRCBK4y^bq7lL*&PV?V1MYW9pF4gPsoi_kV82xc~qF literal 0 HcmV?d00001 diff --git a/.vitebook/public/logo-192x192.png b/.vitebook/public/logo-192x192.png new file mode 100644 index 0000000000000000000000000000000000000000..eec91f20c299e492e07e6ea8201913a9c9b11702 GIT binary patch literal 1700 zcmbVN|5H=gvXbJ7r}yn;SnJsb(bh#RP2_Q5ULQ!Mg(zLg$Tt}yBO<0%|=Wf zicrul*u@Z(HKDBtSPY6_r9!BN*czu~g$ju7W3|wb76a6{AvDc~>3^_y=H7GfoilUJ z++S|BNVtvW9qbJNprvl-XS#7P!z?B0<3*(gho;*6xc>@P9&^rU>@1cKoG=q8MRuiYPC8)KcB0?Ge6=;9L!Y7AGod1ph{N{u>Y+b(8(mS7DclKk1ga6^ zR-_g)9pR`&omzq6V<7+@jj4QYmh{PN)2!?X$M>{9Z_(Ua8e5K0&vKierA>4!^}4oB z)c&d}9*^S%r4AjvhFJ^W7k;LHw^t4xk-#@%v|CiK&Vl)!uu-U6Y%2RGBD9Ol*22HRkqfQp5JpA%X z_%jmzE<=>@&i0PK;#C`4-_OLGuiw1?Shq>p-w+36l&mqwTEUm)Eqr&c2|2KT{fX#< z;1z7I>Ch!8-&Xp96!i#pp2mqJnbv672?zscLV9Weh{7mH@P}lv>P|U|H^G25;)|tI zq%=KbO5O(g-OG9yi>vcNBS?3sJOEb%Z8-uqvc$6q2o>W~);Cdu{UI}B?r#+%hTV=` zpMVHHK7nlw#Vg<=!R9tS1WPMbA%bI(%Zf>zjLA4tfX_e}BqTpm?gp>jiWL;Gq7u;f zkj8Z~XW0{AU<=cZ@fsJ6wvIIYi&pjT z;516vw5O)e$3930EYP-cEjSDAFdLzxg)={x;f^3kOqmPiev3fL{l1_A#xKl4dx8Z+ zpB8p&FVv8*TF^U90X#~CmiXS6fw`^^LknFArn^IDVgUXIR2@IBcD!9)UKvh8Y&mkL zn6>5|EVtO{kbJXd%C;rMeE-qr-c`qAug}3_Avs}IXLH^Ml!s2o74e(liKK-76GB1a zz{Re3)7@IF^~)8cI+i##t@X6Tb?mD_R_>Jau?azmrh%K@eoDpk*!D zh=vW|90TceMd5lF9trbA?7qSs&wH;HAK*NR z=v1%v#gM0UcHhWzo&l# zz<-$a+P7%%II_?0q26AgOO6d+PXvL17Z%IcQxn#`)fBPKlp>bxgK%crO~q>gX4_#) zs&4`*VK48@88^KJE>=CJt|vA_nyTlsYJb24{qp^IXgvIIa^WL?Ad8YO8oa zg$ye0Ul6nuNSX{CAnnivfcwb|Vxo{w@N~;=6i!V5vPwI;W0S}jj*G`!RtSd zW`F(b@YQ3z$j;rm7tJbxjA!v=dMhQ2)HY%Z;Fq~!Q8F_AAG_=yYfahhTwoYYVedfo z1^@lP(a^YkJZFoXsme=~#Gb1u?wXc6Q`kEhe$VVl`E53`A1#Jh;IgwO!Aaw-!|d!+ zbydRXy10TVY3p4_a(ItzHh+KFS7a$YhH&s^lQ^*XhQi$J{bLm~@#hzU&z<+ka7N7D zaocg?*4>#Rl~==y=H8#eDubHxu5Fw-N*B*gxJuc3zePoFHs%#Db7yWSq^ktRS1Y!H z_+i2KOS{}vpWHp}I+OU|N7peBt(16Dq1DD)=CHHTXJhUsuQZIF@$Q>1oy>K5(&mef zxAx2oK02MZKr~rC+Upbs;=A1za}+B$iK!DpZp&&vBK#9 literal 0 HcmV?d00001 diff --git a/.vitebook/public/logo-512x512.png b/.vitebook/public/logo-512x512.png new file mode 100644 index 0000000000000000000000000000000000000000..50ef1ddd03fa2e406461a8180ea9817744c0d4ba GIT binary patch literal 4209 zcmbVPdt6NW*Is+iOfwDBOu7oqIHl5cB7{zR*VHNLXd;Bvq#_DQhY+(1mCMm|PDeQ| zGm^`DT#DQd(I|&roEo`xL6JnHRMOPU-tV5?-(T;a@BH(u^?mlUzRy~pHTyHOM>;Qv z$F<=C0B=rkz-(GO5H+yA^N9LZ|2cHWujjBW~~JuDo7? z{GXO}4Qm!3xBT_Fn{y$0HRtC^b3IxM^n*`EMY`>KiKce%;HH17ARAfsF{Fj2=|-@- z>=V?uw@U4;G!~Cp-r)OrnPNe{&RC4>V$0AP6E#yYfiM>N5OMkA4G3&}6F3l`;l`j` zUBwV1@gtAPwla1M^ogGq+}FAket-khVk^Fvr%Xty>T)HppFx80JvP<4Ps+09?DX*E z45{oh$8NqKp0+SWUrD|4Av8ysJAYJuJ9=E@@A+gnel3geGnOgi9+?5`*N#p;mYTZ- z1^TSj<$jSHVFlI&@P2&URfrx1qeGxspf)q$+ykCr0IH*qj6_+0W*!`XMIZ=+tMHl& ziH=|(-H35P0HR}HJ01aI6YA|vFH;w@)fhkkz^Mes|D_FVIvPm>y=lblH5Ar#A zq;~oM6QJH$cHM{k=qtiuR&C;oygeoang=%!s4$$Riv6-@W1BiGULk+i?Q?QCtdkjx50#AkdTr zU}_-V94|yU9QFIFa+Y}00zeFBnMyR54LFkSOr(Io9KQkXzV>!d-#FJ2Z}tvubhSqC z#jv|v#)RdFd2N;{q_D&vwhPl`P|t0>y+QFd98lss>|J$-1DDa1#gGq>%;+0ICy=uQ z9NIzAkPCss;9@vmjpi~yHm>1OEV2s$6+~I$)&N{}0uo?Iw<=j?V<8JIi>S@p`fx21 zrt4e?$q5#dwwU1+HBv*;wwpnxJzQWCT$x`n1EheqQs)k%iA}ZXnLwwS#b8kAf=B7N z@z8Vc*n!_Y)G=eN-A4mmFK7RLOL}uyJ&ON&>`#9e;Cd;&+}&>Z<@Xk*l+y1JCQH4Y zHOMB8Lm9S9$52Z_K6PruONL?*Z2tA8dRN&t5OcwK*DZ!RoW6_L2*F%J%S|y+C(Vt2 z>dpJ8RIGaF2Tkv6NVlKEwv%o@K z{x+`tqZO2(>GLvl@}5z!0O`-)l)Ul{5YB|{6rXaXu@NjnD$=u;y#D&zNSNlZq>lP? z`owofPfl4~kP|w4*^$1|>!zOb!GfAKKBjdga}E*_MGBRz*#UHvK^8hzOpaaemS6X4 z@9emTHC;z$ILzaU9J^|!q%x0~IkBW+)R8glzz`(j33mGKoa4^KnxPJu>AZ+5+wkR5 ze;qG%QJJ~=ZB+Y5;k&ZL$uyfY(=CcsCNB5USC6+U^-#~ciQWG9(05ia;u>=JijE4n zCHCj4YI~Ji<8ryG2Yr>NqQ{p1?n*2vA2<~6M)Auw8_~|ZbsKkN-tr3JsV~% znGYv(&}wi(5;FQda$G!gKQqX`jb*y&TUBLQ)P$(4gO5l%+ggG z;apXUmd~c4NBab6Fl_$0B!}g%-w0>Hd`P&7^*}IU-bJbzWiBjfvHU-2D?`Lm`09Rt zt-oW?zU$!&VJ*WYk_-ZzE7MkErl3G0$(}F{l)#vqSpASA6Pk>!_V;2;y6#+zvZm|$ z)Os(V?iv)0k4rrv*o9aZfz{@OcG!}8P<8fs`^bw0XXV9Ew)(8`w^N5+J}!-g^aPjD z-IwmXtj1!Y;YxJx$*+e-;>ZL9W)!`1r`n(_VbY#OXiMYln@4_HA>xFg6PF;vb~%%l zW_g8Qst8zm{9G#;)b~UxH5*|K#Mq*`ck$XEf9j3h!y{p~xt#k2KSaZWqogcSssIAKnh++%PC$#JoW)9Y0 zBq#6udt_OAr4dvwKQp!Lyd-Hz!Xh$eoT+2UewNpOIO@eAi+6RRZQ397k2-(|$? z0cL_Xx(cSr_UhZ9;9m=sQK&QJ4QZoV3nIu3uy^I|(@5UxfjowE%C&SG@iY1?WTnwH zh@RgiWUFNF6L}k!X*=}gwA%d9=ts;4lWDb&jd(6O8@z19-JOfsL;@0jP(Ggc{C9Re z@prqBO;j`2xKrPt$j%Lp^u0i2MiCrmCt7!C>iv(5U&C1RGpcR8>y36b@|hs>5@qY{ z*zgGTmNj6h@G{d!5}onwEJJg}I3k+%v(*HJ|CYM}9;)hi|B=5C#96S)U}J1~fQD!z zT@B?H@NylflK_!W)=>)Tx`8@{?WPVxt3MhcvU=ffaQOuhglj#R_(n6%W6~5=Z4tm^ z{c(`SS()LDg-W2%g2UP}io7Nhqz9Nr+ z;Axp@?nlLAfY*OyJQi-T+T4qVTFa)fvh`)5F z*|I5|){Z)!+GC$l!Cd(VkWI}Dc!2GN$Sj!BF7$)_-IC5G>@$QW;U|0ZL}2xdXmd%| z2Jwk~?!?b|1N@oryB`!%Pa(9DKgTd)u>~_xL8fn0Pwab@e!vzV1e$;>DVnDX{*f-(8#QCzGIn$WJ|E9qzW&DKy|1a{SC(h~ajJLqdbe${N({#HD~tK~ zZoENG@l`rT%548YA^!0PwPHLKF^B~7gLP96OBNVAGpoqDQ|q1mED=phw0w*3x54`{ z)Fs=Vv|SJS7uyPkyGtuGK+_T^fYFx`fZ!C>z?vKf1zzz+VF|y8D&$RGNeu9=CzC@i3P&_MC~F!NwV>TX5q~+ z-Z_(nOs8gYut`0n_†II7MC%9rX`7f%_=y`50!D<#ZH&txlKK!wD^>1VY^~a?_ zWN?qZ^icJNf@@R1=3&lE=jr5@DzfyC-GRiL7bR;)50xHFn5a24cse!Slo-6P46NK; zF@}oB>m?GJgwI0l?3Ro{k0#2W=3VD&Ck%JzxuP1fXVq`muuZw@ ztl-^b!qn z`BR2^&=JC!*FDLv9Y+Np((K8vKUpAU6j?K@_|TmfwUZuTgPl*SaEHD#%%dbhXNEgo z4wTDH{FgNekz7IU*Dz?K+YDo#pjSqC=Yyf(&Wpo}{c?Znuf%1{|HDP9@ueIRFxzj0ri#`WZ>%s%kHn#f+QYu61lKCRZhC zgPMJ)_@qyHi3{}n8OzAVH5W + + + diff --git a/.vitebook/public/manifest.json b/.vitebook/public/manifest.json new file mode 100644 index 0000000..457791e --- /dev/null +++ b/.vitebook/public/manifest.json @@ -0,0 +1,20 @@ +{ + "short_name": "", + "name": " Site", + "icons": [ + { + "src": "logo-192x192.png", + "type": "image/png", + "sizes": "192x192" + }, + { + "src": "logo-512x512.png", + "type": "image/png", + "sizes": "512x512" + } + ], + "start_url": ".", + "display": "standalone", + "theme_color": "#ffc107", + "background_color": "#212121" +} diff --git a/.vitebook/public/robots.txt b/.vitebook/public/robots.txt new file mode 100644 index 0000000..e9e57dc --- /dev/null +++ b/.vitebook/public/robots.txt @@ -0,0 +1,3 @@ +# https://www.robotstxt.org/robotstxt.html +User-agent: * +Disallow: diff --git a/.vitebook/theme/index.js b/.vitebook/theme/index.js new file mode 100644 index 0000000..170580c --- /dev/null +++ b/.vitebook/theme/index.js @@ -0,0 +1,3 @@ +import Theme from '@vitebook/theme-default'; + +export default Theme; diff --git a/package.json b/package.json index 2f4b0e3..4517ab0 100644 --- a/package.json +++ b/package.json @@ -6,29 +6,33 @@ "build": "svelte-kit build", "preview": "svelte-kit preview", "lint": "prettier --check . && eslint --ignore-path .gitignore .", - "format": "prettier --write ." + "format": "prettier --write .", + "vitebook:dev": "vitebook dev", + "vitebook:build": "vitebook build", + "vitebook:preview": "vitebook preview" }, "devDependencies": { - "@sveltejs/kit": "^1.0.0-next.115", - "@sveltejs/vite-plugin-svelte": "^1.0.0-next.10", - "eslint": "^7.22.0", - "eslint-config-prettier": "^8.1.0", - "eslint-plugin-svelte3": "^3.2.0", - "prettier": "~2.2.1", - "prettier-plugin-svelte": "^2.2.0", - "svelte": "^3.34.0", - "svench": "^0.2.0-14", - "vite": "^2.3.2" + "@sveltejs/adapter-static": "^1.0.0-next.28", + "@sveltejs/kit": "^1.0.0-next.288", + "@sveltejs/vite-plugin-svelte": "^1.0.0-next.38", + "@vitebook/client": "^0.23.2", + "@vitebook/core": "^0.23.2", + "@vitebook/theme-default": "^0.23.2", + "eslint": "^8.10.0", + "eslint-config-prettier": "^8.4.0", + "eslint-plugin-svelte3": "^3.4.1", + "prettier": "~2.5.1", + "prettier-plugin-svelte": "^2.6.0", + "svelte": "^3.46.4", + "vite": "^2.7.0" }, "type": "module", "dependencies": { - "@sveltejs/adapter-node": "^1.0.0-next.18", - "@sveltejs/adapter-static": "^1.0.0-next.13", + "@sveltejs/adapter-node": "^1.0.0-next.0", "@yanick/updeep": "link:/home/yanick/work/javascript/updeep", - "bulma": "^0.9.2", "lodash": "^4.17.21", - "redux": "^4.1.0", - "reselect": "^4.0.0", + "redux": "^4.1.2", + "reselect": "^4.1.5", "rollup-plugin-analyzer": "^4.0.0", "ts-action": "^11.0.0", "updux": "link:/home/yanick/work/javascript/updux/" diff --git a/src/components/Cost.story.svelte b/src/components/Cost.story.svelte new file mode 100644 index 0000000..bdbd384 --- /dev/null +++ b/src/components/Cost.story.svelte @@ -0,0 +1,5 @@ + + + From 090e5fac94236baa27b35be5e85bdc3da797119d Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Mon, 28 Feb 2022 15:11:21 -0500 Subject: [PATCH 02/51] making sveltekit run --- src/global.d.ts | 3 --- src/{ => lib}/components/App.svelte | 0 .../components/Carrier/Squadron/index.svelte | 0 src/{ => lib}/components/Carrier/index.svelte | 0 src/{ => lib}/components/Carrier/stories.js | 0 src/{ => lib}/components/Cost.story.svelte | 0 src/{ => lib}/components/Cost.svelte | 0 src/{ => lib}/components/CostMass.svelte | 0 src/{ => lib}/components/Engine/index.svelte | 0 src/{ => lib}/components/Field/BasicStory.svelte | 0 src/{ => lib}/components/Field/index.svelte | 0 src/{ => lib}/components/Field/stories.js | 0 src/{ => lib}/components/Firecons.svelte | 0 src/{ => lib}/components/Ftl/index.svelte | 0 src/{ => lib}/components/Ftl/stories.js | 0 src/{ => lib}/components/Header.svelte | 0 .../components/Hull/Armour/Layer/index.svelte | 0 src/{ => lib}/components/Hull/Armour/index.svelte | 0 src/{ => lib}/components/Hull/Armour/stories.js | 0 src/{ => lib}/components/Hull/Cargo/index.svelte | 0 src/{ => lib}/components/Hull/Screens/index.svelte | 0 .../components/Hull/Streamlining/index.svelte | 0 src/{ => lib}/components/Hull/index.svelte | 0 src/{ => lib}/components/Mass.svelte | 0 src/{ => lib}/components/Notes.svelte | 0 src/{ => lib}/components/Output/Json.svelte | 0 src/{ => lib}/components/Output/Json.svench | 0 .../Output/Print/Hull/Armour/index.svelte | 0 .../Output/Print/Hull/Integrity/index.svelte | 0 .../Output/Print/Hull/Integrity/stories.js | 0 .../components/Output/Print/Hull/index.svelte | 0 .../Output/Print/Identification/index.svelte | 0 .../Output/Print/MainSystems/index.svelte | 0 .../components/Output/Print/MainSystems/stories.js | 0 .../Output/Print/Systems/Firecons/index.svelte | 0 .../Output/Print/Systems/Screens/index.svelte | 0 .../components/Output/Print/Systems/index.svelte | 0 .../Output/Print/Weapons/Beam/index.svelte | 0 .../components/Output/Print/Weapons/index.svelte | 0 .../components/Output/Print/Weapons/stories.js | 0 src/{ => lib}/components/Output/Print/index.svelte | 0 src/{ => lib}/components/Output/Print/sample.js | 0 src/{ => lib}/components/Output/Print/stories.js | 0 src/{ => lib}/components/Propulsion/index.svelte | 0 src/{ => lib}/components/Ribbon.svelte | 0 src/{ => lib}/components/Section/index.svelte | 0 src/{ => lib}/components/ShipItem/index.svelte | 0 .../components/ShipSpecs/Identification.svelte | 0 src/{ => lib}/components/ShipSpecs/ShipCost.svelte | 0 src/{ => lib}/components/ShipSpecs/index.svelte | 0 src/{ => lib}/components/Weapon/Arcs/index.svelte | 0 src/{ => lib}/components/Weapon/Beam/index.svelte | 0 src/{ => lib}/components/Weapon/Needle/index.svelte | 0 .../Weapon/PointDefenceSystem/index.svelte | 0 .../components/Weapon/Scattergun/index.svelte | 0 .../components/Weapon/Submunition/index.svelte | 0 src/{ => lib}/components/Weapon/index.svelte | 0 src/{ => lib}/components/Weaponry/ADFC/index.svelte | 0 .../components/Weaponry/AddWeapon/index.svelte | 0 src/{ => lib}/components/Weapons/Add.svelte | 0 src/{ => lib}/components/Weapons/Arc.svelte | 0 src/{ => lib}/components/Weapons/stories.js | 0 src/routes/index.svelte | 12 ++++-------- {public => static}/bulma/bulma-rtl.css | 0 {public => static}/bulma/bulma-rtl.css.map | 0 {public => static}/bulma/bulma-rtl.min.css | 0 {public => static}/bulma/bulma.css | 0 {public => static}/bulma/bulma.css.map | 0 {public => static}/bulma/bulma.min.css | 0 {public => static}/css/buttons.css | 0 {public => static}/favicon.ico | Bin {public => static}/favicon.png | Bin {public => static}/fonts/Faktos.ttf | Bin {public => static}/fonts/FaktosContour.ttf | Bin {public => static}/fonts/FaktosOutline.ttf | Bin {public => static}/fonts/FaktosShadow.ttf | Bin .../fonts/dosis/Dosis-VariableFont_wght.ttf | Bin {public => static}/fonts/dosis/OFL.txt | 0 {public => static}/fonts/dosis/README.txt | 0 {public => static}/fonts/dosis/dosis.css | 0 .../fonts/dosis/static/Dosis-Bold.ttf | Bin .../fonts/dosis/static/Dosis-ExtraBold.ttf | Bin .../fonts/dosis/static/Dosis-ExtraLight.ttf | Bin .../fonts/dosis/static/Dosis-Light.ttf | Bin .../fonts/dosis/static/Dosis-Medium.ttf | Bin .../fonts/dosis/static/Dosis-Regular.ttf | Bin .../fonts/dosis/static/Dosis-SemiBold.ttf | Bin {public => static}/fonts/fakto10.ttf | Bin {public => static}/fonts/fakto9.ttf | Bin {public => static}/fonts/faktos.css | 0 {public => static}/fonts/faktos.ttf | Bin {public => static}/global.css | 0 {public => static}/icons/crew-star.svg | 0 {public => static}/icons/firecon.svg | 0 {public => static}/icons/ftl-drive.svg | 0 {public => static}/icons/internal-systems.svg | 0 {public => static}/icons/screen-advanced.svg | 0 {public => static}/icons/screen.svg | 0 {public => static}/icons/standard-drive.svg | 0 {public => static}/mass.svg | 0 {public => static}/print.css | 0 {public => static}/ssd-icons/AADFC.svg | 0 {public => static}/ssd-icons/ADS.svg | 0 {public => static}/ssd-icons/AMSuicide.svg | 0 {public => static}/ssd-icons/AMT.svg | 0 {public => static}/ssd-icons/AdvFireCont2.svg | 0 {public => static}/ssd-icons/Advanced FTL Drive.svg | 0 {public => static}/ssd-icons/AlternativeIcon.svg | 0 .../ssd-icons/AndvancedDrives (2).svg | 0 .../ssd-icons/AndvancedDrives (3).svg | 0 .../ssd-icons/AndvancedDrives (4).svg | 0 .../ssd-icons/AndvancedDrives (5).svg | 0 .../ssd-icons/AndvancedDrives (6).svg | 0 .../ssd-icons/AndvancedDrives (7).svg | 0 .../ssd-icons/AndvancedDrives (8).svg | 0 {public => static}/ssd-icons/AndvancedDrives.svg | 0 {public => static}/ssd-icons/AreaECM.svg | 0 {public => static}/ssd-icons/AreaScreens1.svg | 0 {public => static}/ssd-icons/AreaScreens2.svg | 0 {public => static}/ssd-icons/Beam1 (2).svg | 0 {public => static}/ssd-icons/Beam1.svg | 0 {public => static}/ssd-icons/Beam2 (2).svg | 0 {public => static}/ssd-icons/Beam2.svg | 0 {public => static}/ssd-icons/Beam3 (2).svg | 0 {public => static}/ssd-icons/Beam3.svg | 0 {public => static}/ssd-icons/Beam4.svg | 0 {public => static}/ssd-icons/Boarding Torps.svg | 0 {public => static}/ssd-icons/Capital Decoy.svg | 0 {public => static}/ssd-icons/Cargo Hold.svg | 0 {public => static}/ssd-icons/Cruiser Decoy.svg | 0 {public => static}/ssd-icons/DamageControl.svg | 0 {public => static}/ssd-icons/Defenses1.svg | 0 {public => static}/ssd-icons/Defenses2.svg | 0 {public => static}/ssd-icons/Defenses3.svg | 0 {public => static}/ssd-icons/Defenses4.svg | 0 {public => static}/ssd-icons/ECM.svg | 0 {public => static}/ssd-icons/EMP1.svg | 0 {public => static}/ssd-icons/EMP2.svg | 0 {public => static}/ssd-icons/EMP3.svg | 0 {public => static}/ssd-icons/EMP4.svg | 0 {public => static}/ssd-icons/Energy1.svg | 0 {public => static}/ssd-icons/FTL Tug.svg | 0 {public => static}/ssd-icons/FusionArray.svg | 0 {public => static}/ssd-icons/Gattling battery.svg | 0 {public => static}/ssd-icons/GrapeShot.svg | 0 {public => static}/ssd-icons/Gravity1.svg | 0 {public => static}/ssd-icons/Gravity2.svg | 0 {public => static}/ssd-icons/Gravity3.svg | 0 {public => static}/ssd-icons/Gravity4.svg | 0 {public => static}/ssd-icons/Hangar Rack 1.svg | 0 {public => static}/ssd-icons/Hangar Rack 2.svg | 0 {public => static}/ssd-icons/HeavyGraser1.svg | 0 {public => static}/ssd-icons/HeavyGraser2.svg | 0 {public => static}/ssd-icons/HeavyGraser3.svg | 0 {public => static}/ssd-icons/HeavyGraser4.svg | 0 {public => static}/ssd-icons/Holofield.svg | 0 {public => static}/ssd-icons/Hull.svg | 0 {public => static}/ssd-icons/LRK1.svg | 0 {public => static}/ssd-icons/LRK2.svg | 0 {public => static}/ssd-icons/LRK3.svg | 0 {public => static}/ssd-icons/LRK4.svg | 0 {public => static}/ssd-icons/LRK5.svg | 0 .../ssd-icons/Launch Tube Catapult 2.svg | 0 .../ssd-icons/Launch Tube Catapult.svg | 0 {public => static}/ssd-icons/Launch Tube.svg | 0 {public => static}/ssd-icons/Marines1.svg | 0 {public => static}/ssd-icons/Marines2.svg | 0 {public => static}/ssd-icons/Marines3.svg | 0 {public => static}/ssd-icons/MesonProjector.svg | 0 {public => static}/ssd-icons/Mine Rack.svg | 0 {public => static}/ssd-icons/Minesweep.svg | 0 {public => static}/ssd-icons/Needle1.svg | 0 {public => static}/ssd-icons/Needle2.svg | 0 {public => static}/ssd-icons/Needle3.svg | 0 {public => static}/ssd-icons/Needle4.svg | 0 {public => static}/ssd-icons/Nova Cannon.svg | 0 {public => static}/ssd-icons/Ortillery.svg | 0 {public => static}/ssd-icons/Passenger Berth.svg | 0 {public => static}/ssd-icons/Phasers1.svg | 0 {public => static}/ssd-icons/Phasers2.svg | 0 {public => static}/ssd-icons/Phasers3.svg | 0 {public => static}/ssd-icons/Phasers4.svg | 0 .../ssd-icons/Plasma Bolt Launcher 1 v1.svg | 0 .../ssd-icons/Plasma Bolt Launcher 1 v2.svg | 0 .../ssd-icons/Plasma Bolt Launcher 1.svg | 0 .../ssd-icons/Plasma Bolt Launcher 2 v1.svg | 0 .../ssd-icons/Plasma Bolt Launcher 2 v2.svg | 0 .../ssd-icons/Plasma Bolt Launcher 2.svg | 0 .../ssd-icons/Plasma Bolt Launcher 3 v1.svg | 0 .../ssd-icons/Plasma Bolt Launcher 3 v2.svg | 0 .../ssd-icons/Plasma Bolt Launcher 3.svg | 0 .../ssd-icons/Plasma Bolt Launcher 4 v1.svg | 0 .../ssd-icons/Plasma Bolt Launcher 4 v2.svg | 0 .../ssd-icons/Plasma Bolt Launcher 4.svg | 0 .../ssd-icons/Plasma Bolt Launcher 5 v1.svg | 0 .../ssd-icons/Plasma Bolt Launcher 5 v2.svg | 0 .../ssd-icons/Plasma Bolt Launcher 5.svg | 0 .../ssd-icons/Plasma Bolt Launcher 6 v1.svg | 0 .../ssd-icons/Plasma Bolt Launcher 6 v2.svg | 0 .../ssd-icons/Plasma Bolt Launcher 6.svg | 0 {public => static}/ssd-icons/Plasma1.svg | 0 {public => static}/ssd-icons/Plasma2.svg | 0 {public => static}/ssd-icons/Plasma3.svg | 0 {public => static}/ssd-icons/PlasmaCannon1.svg | 0 {public => static}/ssd-icons/PlasmaCannon2.svg | 0 {public => static}/ssd-icons/PlasmaCannon3.svg | 0 {public => static}/ssd-icons/PlasmaCannon4.svg | 0 {public => static}/ssd-icons/Psp1.svg | 0 {public => static}/ssd-icons/Psp2.svg | 0 {public => static}/ssd-icons/Psp3.svg | 0 {public => static}/ssd-icons/Pulser1.svg | 0 {public => static}/ssd-icons/Pulser2.svg | 0 {public => static}/ssd-icons/Pulser3.svg | 0 {public => static}/ssd-icons/Pulser4.svg | 0 {public => static}/ssd-icons/Pulser5.svg | 0 {public => static}/ssd-icons/Pulser6.svg | 0 {public => static}/ssd-icons/Pulser7.svg | 0 {public => static}/ssd-icons/Pulser8.svg | 0 {public => static}/ssd-icons/Reflex Field.svg | 0 {public => static}/ssd-icons/Rocket Pod 2.svg | 0 {public => static}/ssd-icons/Rocket Pod.svg | 0 {public => static}/ssd-icons/SRK1(v1).svg | 0 {public => static}/ssd-icons/SRK1(v2).svg | 0 {public => static}/ssd-icons/SRK2(v1).svg | 0 {public => static}/ssd-icons/SRK2(v2).svg | 0 {public => static}/ssd-icons/SRK3(v1).svg | 0 {public => static}/ssd-icons/SRK3(v2).svg | 0 {public => static}/ssd-icons/SRK4(v1).svg | 0 {public => static}/ssd-icons/SRK4(v2).svg | 0 {public => static}/ssd-icons/SRK5(v1).svg | 0 {public => static}/ssd-icons/SRK5(v2).svg | 0 .../ssd-icons/Salvo Missiles Magazines (2).svg | 0 .../ssd-icons/Salvo Missiles Magazines (3).svg | 0 .../ssd-icons/Salvo Missiles Magazines (4).svg | 0 .../ssd-icons/Salvo Missiles Magazines (5).svg | 0 .../ssd-icons/Salvo Missiles Magazines (6).svg | 0 .../ssd-icons/Salvo Missiles Magazines.svg | 0 {public => static}/ssd-icons/Salvo Missiles.svg | 0 {public => static}/ssd-icons/SensorsLVL1.svg | 0 {public => static}/ssd-icons/SensorsLVL2.svg | 0 {public => static}/ssd-icons/Shroud.svg | 0 {public => static}/ssd-icons/StandardDrives (2).svg | 0 {public => static}/ssd-icons/StandardDrives (3).svg | 0 {public => static}/ssd-icons/StandardDrives (4).svg | 0 {public => static}/ssd-icons/StandardDrives (5).svg | 0 {public => static}/ssd-icons/StandardDrives (6).svg | 0 {public => static}/ssd-icons/StandardDrives (7).svg | 0 {public => static}/ssd-icons/StandardDrives (8).svg | 0 {public => static}/ssd-icons/StandardDrives.svg | 0 {public => static}/ssd-icons/StandardGraser1.svg | 0 {public => static}/ssd-icons/StandardGraser2.svg | 0 {public => static}/ssd-icons/StandardGraser3.svg | 0 {public => static}/ssd-icons/Stealth Hull.svg | 0 {public => static}/ssd-icons/StealthField.svg | 0 {public => static}/ssd-icons/Transport Craft.svg | 0 {public => static}/ssd-icons/Transporter1.svg | 0 {public => static}/ssd-icons/Transporter2.svg | 0 {public => static}/ssd-icons/Transporter3.svg | 0 {public => static}/ssd-icons/Transporter4.svg | 0 {public => static}/ssd-icons/Troop Berth.svg | 0 {public => static}/ssd-icons/Turret1.svg | 0 {public => static}/ssd-icons/Turret2.svg | 0 {public => static}/ssd-icons/TwinParticleArray.svg | 0 {public => static}/ssd-icons/Type I Cloak.svg | 0 {public => static}/ssd-icons/Type II Cloak.svg | 0 {public => static}/ssd-icons/Type III Cloak.svg | 0 {public => static}/ssd-icons/Wave Gun.svg | 0 {public => static}/ssd-icons/armor.svg | 0 {public => static}/ssd-icons/fighter 1.svg | 0 {public => static}/ssd-icons/fighter 2.svg | 0 {public => static}/ssd-icons/fighter 3.svg | 0 {public => static}/ssd-icons/fighter 4.svg | 0 {public => static}/ssd-icons/fighter 5.svg | 0 {public => static}/ssd-icons/fighter 6.svg | 0 {public => static}/ssd-icons/fighter 7.svg | 0 {public => static}/ssd-icons/fighter 8.svg | 0 {public => static}/ssd-icons/fighter 9.svg | 0 {public => static}/ssd-icons/fighter bays (1).svg | 0 {public => static}/ssd-icons/fighter bays (10).svg | 0 {public => static}/ssd-icons/fighter bays (11).svg | 0 {public => static}/ssd-icons/fighter bays (12).svg | 0 {public => static}/ssd-icons/fighter bays (13).svg | 0 {public => static}/ssd-icons/fighter bays (14).svg | 0 {public => static}/ssd-icons/fighter bays (15).svg | 0 {public => static}/ssd-icons/fighter bays (16).svg | 0 {public => static}/ssd-icons/fighter bays (2).svg | 0 {public => static}/ssd-icons/fighter bays (3).svg | 0 {public => static}/ssd-icons/fighter bays (4).svg | 0 {public => static}/ssd-icons/fighter bays (5).svg | 0 {public => static}/ssd-icons/fighter bays (6).svg | 0 {public => static}/ssd-icons/fighter bays (7).svg | 0 {public => static}/ssd-icons/fighter bays (8).svg | 0 {public => static}/ssd-icons/fighter bays (9).svg | 0 {public => static}/ssd-icons/new1.svg | 0 {public => static}/ssd-icons/new2.svg | 0 {public => static}/ssd-icons/new3.svg | 0 {public => static}/ssd-icons/new4.svg | 0 {public => static}/ssd-icons/new5.svg | 0 {public => static}/ssd-icons/new6.svg | 0 {public => static}/ssd-icons/notes | 0 {public => static}/ssd-icons/numbers/0.svg | 0 {public => static}/ssd-icons/numbers/1.svg | 0 {public => static}/ssd-icons/numbers/2.svg | 0 {public => static}/ssd-icons/numbers/3.svg | 0 {public => static}/ssd-icons/numbers/4.svg | 0 {public => static}/ssd-icons/numbers/5.svg | 0 {public => static}/ssd-icons/numbers/6.svg | 0 {public => static}/ssd-icons/numbers/7.svg | 0 {public => static}/ssd-icons/numbers/8.svg | 0 {public => static}/ssd-icons/numbers/9.svg | 0 {public => static}/ssd-icons/old1.svg | 0 {public => static}/ssd-icons/old2.svg | 0 {public => static}/ssd-icons/old3.svg | 0 {public => static}/ssd-icons/old4.svg | 0 {public => static}/ssd-icons/old5.svg | 0 {public => static}/ssd-icons/old6.svg | 0 {public => static}/ssd-icons/unlabeled (1).svg | 0 {public => static}/ssd-icons/unlabeled (3).svg | 0 {public => static}/ssd-icons/unlabeled (4).svg | 0 {public => static}/standard-drive.svg | 0 svelte.config.js | 5 ----- 321 files changed, 4 insertions(+), 16 deletions(-) delete mode 100644 src/global.d.ts rename src/{ => lib}/components/App.svelte (100%) rename src/{ => lib}/components/Carrier/Squadron/index.svelte (100%) rename src/{ => lib}/components/Carrier/index.svelte (100%) rename src/{ => lib}/components/Carrier/stories.js (100%) rename src/{ => lib}/components/Cost.story.svelte (100%) rename src/{ => lib}/components/Cost.svelte (100%) rename src/{ => lib}/components/CostMass.svelte (100%) rename src/{ => lib}/components/Engine/index.svelte (100%) rename src/{ => lib}/components/Field/BasicStory.svelte (100%) rename src/{ => lib}/components/Field/index.svelte (100%) rename src/{ => lib}/components/Field/stories.js (100%) rename src/{ => lib}/components/Firecons.svelte (100%) rename src/{ => lib}/components/Ftl/index.svelte (100%) rename src/{ => lib}/components/Ftl/stories.js (100%) rename src/{ => lib}/components/Header.svelte (100%) rename src/{ => lib}/components/Hull/Armour/Layer/index.svelte (100%) rename src/{ => lib}/components/Hull/Armour/index.svelte (100%) rename src/{ => lib}/components/Hull/Armour/stories.js (100%) rename src/{ => lib}/components/Hull/Cargo/index.svelte (100%) rename src/{ => lib}/components/Hull/Screens/index.svelte (100%) rename src/{ => lib}/components/Hull/Streamlining/index.svelte (100%) rename src/{ => lib}/components/Hull/index.svelte (100%) rename src/{ => lib}/components/Mass.svelte (100%) rename src/{ => lib}/components/Notes.svelte (100%) rename src/{ => lib}/components/Output/Json.svelte (100%) rename src/{ => lib}/components/Output/Json.svench (100%) rename src/{ => lib}/components/Output/Print/Hull/Armour/index.svelte (100%) rename src/{ => lib}/components/Output/Print/Hull/Integrity/index.svelte (100%) rename src/{ => lib}/components/Output/Print/Hull/Integrity/stories.js (100%) rename src/{ => lib}/components/Output/Print/Hull/index.svelte (100%) rename src/{ => lib}/components/Output/Print/Identification/index.svelte (100%) rename src/{ => lib}/components/Output/Print/MainSystems/index.svelte (100%) rename src/{ => lib}/components/Output/Print/MainSystems/stories.js (100%) rename src/{ => lib}/components/Output/Print/Systems/Firecons/index.svelte (100%) rename src/{ => lib}/components/Output/Print/Systems/Screens/index.svelte (100%) rename src/{ => lib}/components/Output/Print/Systems/index.svelte (100%) rename src/{ => lib}/components/Output/Print/Weapons/Beam/index.svelte (100%) rename src/{ => lib}/components/Output/Print/Weapons/index.svelte (100%) rename src/{ => lib}/components/Output/Print/Weapons/stories.js (100%) rename src/{ => lib}/components/Output/Print/index.svelte (100%) rename src/{ => lib}/components/Output/Print/sample.js (100%) rename src/{ => lib}/components/Output/Print/stories.js (100%) rename src/{ => lib}/components/Propulsion/index.svelte (100%) rename src/{ => lib}/components/Ribbon.svelte (100%) rename src/{ => lib}/components/Section/index.svelte (100%) rename src/{ => lib}/components/ShipItem/index.svelte (100%) rename src/{ => lib}/components/ShipSpecs/Identification.svelte (100%) rename src/{ => lib}/components/ShipSpecs/ShipCost.svelte (100%) rename src/{ => lib}/components/ShipSpecs/index.svelte (100%) rename src/{ => lib}/components/Weapon/Arcs/index.svelte (100%) rename src/{ => lib}/components/Weapon/Beam/index.svelte (100%) rename src/{ => lib}/components/Weapon/Needle/index.svelte (100%) rename src/{ => lib}/components/Weapon/PointDefenceSystem/index.svelte (100%) rename src/{ => lib}/components/Weapon/Scattergun/index.svelte (100%) rename src/{ => lib}/components/Weapon/Submunition/index.svelte (100%) rename src/{ => lib}/components/Weapon/index.svelte (100%) rename src/{ => lib}/components/Weaponry/ADFC/index.svelte (100%) rename src/{ => lib}/components/Weaponry/AddWeapon/index.svelte (100%) rename src/{ => lib}/components/Weapons/Add.svelte (100%) rename src/{ => lib}/components/Weapons/Arc.svelte (100%) rename src/{ => lib}/components/Weapons/stories.js (100%) rename {public => static}/bulma/bulma-rtl.css (100%) rename {public => static}/bulma/bulma-rtl.css.map (100%) rename {public => static}/bulma/bulma-rtl.min.css (100%) rename {public => static}/bulma/bulma.css (100%) rename {public => static}/bulma/bulma.css.map (100%) rename {public => static}/bulma/bulma.min.css (100%) rename {public => static}/css/buttons.css (100%) rename {public => static}/favicon.ico (100%) rename {public => static}/favicon.png (100%) rename {public => static}/fonts/Faktos.ttf (100%) rename {public => static}/fonts/FaktosContour.ttf (100%) rename {public => static}/fonts/FaktosOutline.ttf (100%) rename {public => static}/fonts/FaktosShadow.ttf (100%) rename {public => static}/fonts/dosis/Dosis-VariableFont_wght.ttf (100%) rename {public => static}/fonts/dosis/OFL.txt (100%) rename {public => static}/fonts/dosis/README.txt (100%) rename {public => static}/fonts/dosis/dosis.css (100%) rename {public => static}/fonts/dosis/static/Dosis-Bold.ttf (100%) rename {public => static}/fonts/dosis/static/Dosis-ExtraBold.ttf (100%) rename {public => static}/fonts/dosis/static/Dosis-ExtraLight.ttf (100%) rename {public => static}/fonts/dosis/static/Dosis-Light.ttf (100%) rename {public => static}/fonts/dosis/static/Dosis-Medium.ttf (100%) rename {public => static}/fonts/dosis/static/Dosis-Regular.ttf (100%) rename {public => static}/fonts/dosis/static/Dosis-SemiBold.ttf (100%) rename {public => static}/fonts/fakto10.ttf (100%) rename {public => static}/fonts/fakto9.ttf (100%) rename {public => static}/fonts/faktos.css (100%) rename {public => static}/fonts/faktos.ttf (100%) rename {public => static}/global.css (100%) rename {public => static}/icons/crew-star.svg (100%) rename {public => static}/icons/firecon.svg (100%) rename {public => static}/icons/ftl-drive.svg (100%) rename {public => static}/icons/internal-systems.svg (100%) rename {public => static}/icons/screen-advanced.svg (100%) rename {public => static}/icons/screen.svg (100%) rename {public => static}/icons/standard-drive.svg (100%) rename {public => static}/mass.svg (100%) rename {public => static}/print.css (100%) rename {public => static}/ssd-icons/AADFC.svg (100%) rename {public => static}/ssd-icons/ADS.svg (100%) rename {public => static}/ssd-icons/AMSuicide.svg (100%) rename {public => static}/ssd-icons/AMT.svg (100%) rename {public => static}/ssd-icons/AdvFireCont2.svg (100%) rename {public => static}/ssd-icons/Advanced FTL Drive.svg (100%) rename {public => static}/ssd-icons/AlternativeIcon.svg (100%) rename {public => static}/ssd-icons/AndvancedDrives (2).svg (100%) rename {public => static}/ssd-icons/AndvancedDrives (3).svg (100%) rename {public => static}/ssd-icons/AndvancedDrives (4).svg (100%) rename {public => static}/ssd-icons/AndvancedDrives (5).svg (100%) rename {public => static}/ssd-icons/AndvancedDrives (6).svg (100%) rename {public => static}/ssd-icons/AndvancedDrives (7).svg (100%) rename {public => static}/ssd-icons/AndvancedDrives (8).svg (100%) rename {public => static}/ssd-icons/AndvancedDrives.svg (100%) rename {public => static}/ssd-icons/AreaECM.svg (100%) rename {public => static}/ssd-icons/AreaScreens1.svg (100%) rename {public => static}/ssd-icons/AreaScreens2.svg (100%) rename {public => static}/ssd-icons/Beam1 (2).svg (100%) rename {public => static}/ssd-icons/Beam1.svg (100%) rename {public => static}/ssd-icons/Beam2 (2).svg (100%) rename {public => static}/ssd-icons/Beam2.svg (100%) rename {public => static}/ssd-icons/Beam3 (2).svg (100%) rename {public => static}/ssd-icons/Beam3.svg (100%) rename {public => static}/ssd-icons/Beam4.svg (100%) rename {public => static}/ssd-icons/Boarding Torps.svg (100%) rename {public => static}/ssd-icons/Capital Decoy.svg (100%) rename {public => static}/ssd-icons/Cargo Hold.svg (100%) rename {public => static}/ssd-icons/Cruiser Decoy.svg (100%) rename {public => static}/ssd-icons/DamageControl.svg (100%) rename {public => static}/ssd-icons/Defenses1.svg (100%) rename {public => static}/ssd-icons/Defenses2.svg (100%) rename {public => static}/ssd-icons/Defenses3.svg (100%) rename {public => static}/ssd-icons/Defenses4.svg (100%) rename {public => static}/ssd-icons/ECM.svg (100%) rename {public => static}/ssd-icons/EMP1.svg (100%) rename {public => static}/ssd-icons/EMP2.svg (100%) rename {public => static}/ssd-icons/EMP3.svg (100%) rename {public => static}/ssd-icons/EMP4.svg (100%) rename {public => static}/ssd-icons/Energy1.svg (100%) rename {public => static}/ssd-icons/FTL Tug.svg (100%) rename {public => static}/ssd-icons/FusionArray.svg (100%) rename {public => static}/ssd-icons/Gattling battery.svg (100%) rename {public => static}/ssd-icons/GrapeShot.svg (100%) rename {public => static}/ssd-icons/Gravity1.svg (100%) rename {public => static}/ssd-icons/Gravity2.svg (100%) rename {public => static}/ssd-icons/Gravity3.svg (100%) rename {public => static}/ssd-icons/Gravity4.svg (100%) rename {public => static}/ssd-icons/Hangar Rack 1.svg (100%) rename {public => static}/ssd-icons/Hangar Rack 2.svg (100%) rename {public => static}/ssd-icons/HeavyGraser1.svg (100%) rename {public => static}/ssd-icons/HeavyGraser2.svg (100%) rename {public => static}/ssd-icons/HeavyGraser3.svg (100%) rename {public => static}/ssd-icons/HeavyGraser4.svg (100%) rename {public => static}/ssd-icons/Holofield.svg (100%) rename {public => static}/ssd-icons/Hull.svg (100%) rename {public => static}/ssd-icons/LRK1.svg (100%) rename {public => static}/ssd-icons/LRK2.svg (100%) rename {public => static}/ssd-icons/LRK3.svg (100%) rename {public => static}/ssd-icons/LRK4.svg (100%) rename {public => static}/ssd-icons/LRK5.svg (100%) rename {public => static}/ssd-icons/Launch Tube Catapult 2.svg (100%) rename {public => static}/ssd-icons/Launch Tube Catapult.svg (100%) rename {public => static}/ssd-icons/Launch Tube.svg (100%) rename {public => static}/ssd-icons/Marines1.svg (100%) rename {public => static}/ssd-icons/Marines2.svg (100%) rename {public => static}/ssd-icons/Marines3.svg (100%) rename {public => static}/ssd-icons/MesonProjector.svg (100%) rename {public => static}/ssd-icons/Mine Rack.svg (100%) rename {public => static}/ssd-icons/Minesweep.svg (100%) rename {public => static}/ssd-icons/Needle1.svg (100%) rename {public => static}/ssd-icons/Needle2.svg (100%) rename {public => static}/ssd-icons/Needle3.svg (100%) rename {public => static}/ssd-icons/Needle4.svg (100%) rename {public => static}/ssd-icons/Nova Cannon.svg (100%) rename {public => static}/ssd-icons/Ortillery.svg (100%) rename {public => static}/ssd-icons/Passenger Berth.svg (100%) rename {public => static}/ssd-icons/Phasers1.svg (100%) rename {public => static}/ssd-icons/Phasers2.svg (100%) rename {public => static}/ssd-icons/Phasers3.svg (100%) rename {public => static}/ssd-icons/Phasers4.svg (100%) rename {public => static}/ssd-icons/Plasma Bolt Launcher 1 v1.svg (100%) rename {public => static}/ssd-icons/Plasma Bolt Launcher 1 v2.svg (100%) rename {public => static}/ssd-icons/Plasma Bolt Launcher 1.svg (100%) rename {public => static}/ssd-icons/Plasma Bolt Launcher 2 v1.svg (100%) rename {public => static}/ssd-icons/Plasma Bolt Launcher 2 v2.svg (100%) rename {public => static}/ssd-icons/Plasma Bolt Launcher 2.svg (100%) rename {public => static}/ssd-icons/Plasma Bolt Launcher 3 v1.svg (100%) rename {public => static}/ssd-icons/Plasma Bolt Launcher 3 v2.svg (100%) rename {public => static}/ssd-icons/Plasma Bolt Launcher 3.svg (100%) rename {public => static}/ssd-icons/Plasma Bolt Launcher 4 v1.svg (100%) rename {public => static}/ssd-icons/Plasma Bolt Launcher 4 v2.svg (100%) rename {public => static}/ssd-icons/Plasma Bolt Launcher 4.svg (100%) rename {public => static}/ssd-icons/Plasma Bolt Launcher 5 v1.svg (100%) rename {public => static}/ssd-icons/Plasma Bolt Launcher 5 v2.svg (100%) rename {public => static}/ssd-icons/Plasma Bolt Launcher 5.svg (100%) rename {public => static}/ssd-icons/Plasma Bolt Launcher 6 v1.svg (100%) rename {public => static}/ssd-icons/Plasma Bolt Launcher 6 v2.svg (100%) rename {public => static}/ssd-icons/Plasma Bolt Launcher 6.svg (100%) rename {public => static}/ssd-icons/Plasma1.svg (100%) rename {public => static}/ssd-icons/Plasma2.svg (100%) rename {public => static}/ssd-icons/Plasma3.svg (100%) rename {public => static}/ssd-icons/PlasmaCannon1.svg (100%) rename {public => static}/ssd-icons/PlasmaCannon2.svg (100%) rename {public => static}/ssd-icons/PlasmaCannon3.svg (100%) rename {public => static}/ssd-icons/PlasmaCannon4.svg (100%) rename {public => static}/ssd-icons/Psp1.svg (100%) rename {public => static}/ssd-icons/Psp2.svg (100%) rename {public => static}/ssd-icons/Psp3.svg (100%) rename {public => static}/ssd-icons/Pulser1.svg (100%) rename {public => static}/ssd-icons/Pulser2.svg (100%) rename {public => static}/ssd-icons/Pulser3.svg (100%) rename {public => static}/ssd-icons/Pulser4.svg (100%) rename {public => static}/ssd-icons/Pulser5.svg (100%) rename {public => static}/ssd-icons/Pulser6.svg (100%) rename {public => static}/ssd-icons/Pulser7.svg (100%) rename {public => static}/ssd-icons/Pulser8.svg (100%) rename {public => static}/ssd-icons/Reflex Field.svg (100%) rename {public => static}/ssd-icons/Rocket Pod 2.svg (100%) rename {public => static}/ssd-icons/Rocket Pod.svg (100%) rename {public => static}/ssd-icons/SRK1(v1).svg (100%) rename {public => static}/ssd-icons/SRK1(v2).svg (100%) rename {public => static}/ssd-icons/SRK2(v1).svg (100%) rename {public => static}/ssd-icons/SRK2(v2).svg (100%) rename {public => static}/ssd-icons/SRK3(v1).svg (100%) rename {public => static}/ssd-icons/SRK3(v2).svg (100%) rename {public => static}/ssd-icons/SRK4(v1).svg (100%) rename {public => static}/ssd-icons/SRK4(v2).svg (100%) rename {public => static}/ssd-icons/SRK5(v1).svg (100%) rename {public => static}/ssd-icons/SRK5(v2).svg (100%) rename {public => static}/ssd-icons/Salvo Missiles Magazines (2).svg (100%) rename {public => static}/ssd-icons/Salvo Missiles Magazines (3).svg (100%) rename {public => static}/ssd-icons/Salvo Missiles Magazines (4).svg (100%) rename {public => static}/ssd-icons/Salvo Missiles Magazines (5).svg (100%) rename {public => static}/ssd-icons/Salvo Missiles Magazines (6).svg (100%) rename {public => static}/ssd-icons/Salvo Missiles Magazines.svg (100%) rename {public => static}/ssd-icons/Salvo Missiles.svg (100%) rename {public => static}/ssd-icons/SensorsLVL1.svg (100%) rename {public => static}/ssd-icons/SensorsLVL2.svg (100%) rename {public => static}/ssd-icons/Shroud.svg (100%) rename {public => static}/ssd-icons/StandardDrives (2).svg (100%) rename {public => static}/ssd-icons/StandardDrives (3).svg (100%) rename {public => static}/ssd-icons/StandardDrives (4).svg (100%) rename {public => static}/ssd-icons/StandardDrives (5).svg (100%) rename {public => static}/ssd-icons/StandardDrives (6).svg (100%) rename {public => static}/ssd-icons/StandardDrives (7).svg (100%) rename {public => static}/ssd-icons/StandardDrives (8).svg (100%) rename {public => static}/ssd-icons/StandardDrives.svg (100%) rename {public => static}/ssd-icons/StandardGraser1.svg (100%) rename {public => static}/ssd-icons/StandardGraser2.svg (100%) rename {public => static}/ssd-icons/StandardGraser3.svg (100%) rename {public => static}/ssd-icons/Stealth Hull.svg (100%) rename {public => static}/ssd-icons/StealthField.svg (100%) rename {public => static}/ssd-icons/Transport Craft.svg (100%) rename {public => static}/ssd-icons/Transporter1.svg (100%) rename {public => static}/ssd-icons/Transporter2.svg (100%) rename {public => static}/ssd-icons/Transporter3.svg (100%) rename {public => static}/ssd-icons/Transporter4.svg (100%) rename {public => static}/ssd-icons/Troop Berth.svg (100%) rename {public => static}/ssd-icons/Turret1.svg (100%) rename {public => static}/ssd-icons/Turret2.svg (100%) rename {public => static}/ssd-icons/TwinParticleArray.svg (100%) rename {public => static}/ssd-icons/Type I Cloak.svg (100%) rename {public => static}/ssd-icons/Type II Cloak.svg (100%) rename {public => static}/ssd-icons/Type III Cloak.svg (100%) rename {public => static}/ssd-icons/Wave Gun.svg (100%) rename {public => static}/ssd-icons/armor.svg (100%) rename {public => static}/ssd-icons/fighter 1.svg (100%) rename {public => static}/ssd-icons/fighter 2.svg (100%) rename {public => static}/ssd-icons/fighter 3.svg (100%) rename {public => static}/ssd-icons/fighter 4.svg (100%) rename {public => static}/ssd-icons/fighter 5.svg (100%) rename {public => static}/ssd-icons/fighter 6.svg (100%) rename {public => static}/ssd-icons/fighter 7.svg (100%) rename {public => static}/ssd-icons/fighter 8.svg (100%) rename {public => static}/ssd-icons/fighter 9.svg (100%) rename {public => static}/ssd-icons/fighter bays (1).svg (100%) rename {public => static}/ssd-icons/fighter bays (10).svg (100%) rename {public => static}/ssd-icons/fighter bays (11).svg (100%) rename {public => static}/ssd-icons/fighter bays (12).svg (100%) rename {public => static}/ssd-icons/fighter bays (13).svg (100%) rename {public => static}/ssd-icons/fighter bays (14).svg (100%) rename {public => static}/ssd-icons/fighter bays (15).svg (100%) rename {public => static}/ssd-icons/fighter bays (16).svg (100%) rename {public => static}/ssd-icons/fighter bays (2).svg (100%) rename {public => static}/ssd-icons/fighter bays (3).svg (100%) rename {public => static}/ssd-icons/fighter bays (4).svg (100%) rename {public => static}/ssd-icons/fighter bays (5).svg (100%) rename {public => static}/ssd-icons/fighter bays (6).svg (100%) rename {public => static}/ssd-icons/fighter bays (7).svg (100%) rename {public => static}/ssd-icons/fighter bays (8).svg (100%) rename {public => static}/ssd-icons/fighter bays (9).svg (100%) rename {public => static}/ssd-icons/new1.svg (100%) rename {public => static}/ssd-icons/new2.svg (100%) rename {public => static}/ssd-icons/new3.svg (100%) rename {public => static}/ssd-icons/new4.svg (100%) rename {public => static}/ssd-icons/new5.svg (100%) rename {public => static}/ssd-icons/new6.svg (100%) rename {public => static}/ssd-icons/notes (100%) rename {public => static}/ssd-icons/numbers/0.svg (100%) rename {public => static}/ssd-icons/numbers/1.svg (100%) rename {public => static}/ssd-icons/numbers/2.svg (100%) rename {public => static}/ssd-icons/numbers/3.svg (100%) rename {public => static}/ssd-icons/numbers/4.svg (100%) rename {public => static}/ssd-icons/numbers/5.svg (100%) rename {public => static}/ssd-icons/numbers/6.svg (100%) rename {public => static}/ssd-icons/numbers/7.svg (100%) rename {public => static}/ssd-icons/numbers/8.svg (100%) rename {public => static}/ssd-icons/numbers/9.svg (100%) rename {public => static}/ssd-icons/old1.svg (100%) rename {public => static}/ssd-icons/old2.svg (100%) rename {public => static}/ssd-icons/old3.svg (100%) rename {public => static}/ssd-icons/old4.svg (100%) rename {public => static}/ssd-icons/old5.svg (100%) rename {public => static}/ssd-icons/old6.svg (100%) rename {public => static}/ssd-icons/unlabeled (1).svg (100%) rename {public => static}/ssd-icons/unlabeled (3).svg (100%) rename {public => static}/ssd-icons/unlabeled (4).svg (100%) rename {public => static}/standard-drive.svg (100%) diff --git a/src/global.d.ts b/src/global.d.ts deleted file mode 100644 index 79d7d7f..0000000 --- a/src/global.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -/// -/// -/// diff --git a/src/components/App.svelte b/src/lib/components/App.svelte similarity index 100% rename from src/components/App.svelte rename to src/lib/components/App.svelte diff --git a/src/components/Carrier/Squadron/index.svelte b/src/lib/components/Carrier/Squadron/index.svelte similarity index 100% rename from src/components/Carrier/Squadron/index.svelte rename to src/lib/components/Carrier/Squadron/index.svelte diff --git a/src/components/Carrier/index.svelte b/src/lib/components/Carrier/index.svelte similarity index 100% rename from src/components/Carrier/index.svelte rename to src/lib/components/Carrier/index.svelte diff --git a/src/components/Carrier/stories.js b/src/lib/components/Carrier/stories.js similarity index 100% rename from src/components/Carrier/stories.js rename to src/lib/components/Carrier/stories.js diff --git a/src/components/Cost.story.svelte b/src/lib/components/Cost.story.svelte similarity index 100% rename from src/components/Cost.story.svelte rename to src/lib/components/Cost.story.svelte diff --git a/src/components/Cost.svelte b/src/lib/components/Cost.svelte similarity index 100% rename from src/components/Cost.svelte rename to src/lib/components/Cost.svelte diff --git a/src/components/CostMass.svelte b/src/lib/components/CostMass.svelte similarity index 100% rename from src/components/CostMass.svelte rename to src/lib/components/CostMass.svelte diff --git a/src/components/Engine/index.svelte b/src/lib/components/Engine/index.svelte similarity index 100% rename from src/components/Engine/index.svelte rename to src/lib/components/Engine/index.svelte diff --git a/src/components/Field/BasicStory.svelte b/src/lib/components/Field/BasicStory.svelte similarity index 100% rename from src/components/Field/BasicStory.svelte rename to src/lib/components/Field/BasicStory.svelte diff --git a/src/components/Field/index.svelte b/src/lib/components/Field/index.svelte similarity index 100% rename from src/components/Field/index.svelte rename to src/lib/components/Field/index.svelte diff --git a/src/components/Field/stories.js b/src/lib/components/Field/stories.js similarity index 100% rename from src/components/Field/stories.js rename to src/lib/components/Field/stories.js diff --git a/src/components/Firecons.svelte b/src/lib/components/Firecons.svelte similarity index 100% rename from src/components/Firecons.svelte rename to src/lib/components/Firecons.svelte diff --git a/src/components/Ftl/index.svelte b/src/lib/components/Ftl/index.svelte similarity index 100% rename from src/components/Ftl/index.svelte rename to src/lib/components/Ftl/index.svelte diff --git a/src/components/Ftl/stories.js b/src/lib/components/Ftl/stories.js similarity index 100% rename from src/components/Ftl/stories.js rename to src/lib/components/Ftl/stories.js diff --git a/src/components/Header.svelte b/src/lib/components/Header.svelte similarity index 100% rename from src/components/Header.svelte rename to src/lib/components/Header.svelte diff --git a/src/components/Hull/Armour/Layer/index.svelte b/src/lib/components/Hull/Armour/Layer/index.svelte similarity index 100% rename from src/components/Hull/Armour/Layer/index.svelte rename to src/lib/components/Hull/Armour/Layer/index.svelte diff --git a/src/components/Hull/Armour/index.svelte b/src/lib/components/Hull/Armour/index.svelte similarity index 100% rename from src/components/Hull/Armour/index.svelte rename to src/lib/components/Hull/Armour/index.svelte diff --git a/src/components/Hull/Armour/stories.js b/src/lib/components/Hull/Armour/stories.js similarity index 100% rename from src/components/Hull/Armour/stories.js rename to src/lib/components/Hull/Armour/stories.js diff --git a/src/components/Hull/Cargo/index.svelte b/src/lib/components/Hull/Cargo/index.svelte similarity index 100% rename from src/components/Hull/Cargo/index.svelte rename to src/lib/components/Hull/Cargo/index.svelte diff --git a/src/components/Hull/Screens/index.svelte b/src/lib/components/Hull/Screens/index.svelte similarity index 100% rename from src/components/Hull/Screens/index.svelte rename to src/lib/components/Hull/Screens/index.svelte diff --git a/src/components/Hull/Streamlining/index.svelte b/src/lib/components/Hull/Streamlining/index.svelte similarity index 100% rename from src/components/Hull/Streamlining/index.svelte rename to src/lib/components/Hull/Streamlining/index.svelte diff --git a/src/components/Hull/index.svelte b/src/lib/components/Hull/index.svelte similarity index 100% rename from src/components/Hull/index.svelte rename to src/lib/components/Hull/index.svelte diff --git a/src/components/Mass.svelte b/src/lib/components/Mass.svelte similarity index 100% rename from src/components/Mass.svelte rename to src/lib/components/Mass.svelte diff --git a/src/components/Notes.svelte b/src/lib/components/Notes.svelte similarity index 100% rename from src/components/Notes.svelte rename to src/lib/components/Notes.svelte diff --git a/src/components/Output/Json.svelte b/src/lib/components/Output/Json.svelte similarity index 100% rename from src/components/Output/Json.svelte rename to src/lib/components/Output/Json.svelte diff --git a/src/components/Output/Json.svench b/src/lib/components/Output/Json.svench similarity index 100% rename from src/components/Output/Json.svench rename to src/lib/components/Output/Json.svench diff --git a/src/components/Output/Print/Hull/Armour/index.svelte b/src/lib/components/Output/Print/Hull/Armour/index.svelte similarity index 100% rename from src/components/Output/Print/Hull/Armour/index.svelte rename to src/lib/components/Output/Print/Hull/Armour/index.svelte diff --git a/src/components/Output/Print/Hull/Integrity/index.svelte b/src/lib/components/Output/Print/Hull/Integrity/index.svelte similarity index 100% rename from src/components/Output/Print/Hull/Integrity/index.svelte rename to src/lib/components/Output/Print/Hull/Integrity/index.svelte diff --git a/src/components/Output/Print/Hull/Integrity/stories.js b/src/lib/components/Output/Print/Hull/Integrity/stories.js similarity index 100% rename from src/components/Output/Print/Hull/Integrity/stories.js rename to src/lib/components/Output/Print/Hull/Integrity/stories.js diff --git a/src/components/Output/Print/Hull/index.svelte b/src/lib/components/Output/Print/Hull/index.svelte similarity index 100% rename from src/components/Output/Print/Hull/index.svelte rename to src/lib/components/Output/Print/Hull/index.svelte diff --git a/src/components/Output/Print/Identification/index.svelte b/src/lib/components/Output/Print/Identification/index.svelte similarity index 100% rename from src/components/Output/Print/Identification/index.svelte rename to src/lib/components/Output/Print/Identification/index.svelte diff --git a/src/components/Output/Print/MainSystems/index.svelte b/src/lib/components/Output/Print/MainSystems/index.svelte similarity index 100% rename from src/components/Output/Print/MainSystems/index.svelte rename to src/lib/components/Output/Print/MainSystems/index.svelte diff --git a/src/components/Output/Print/MainSystems/stories.js b/src/lib/components/Output/Print/MainSystems/stories.js similarity index 100% rename from src/components/Output/Print/MainSystems/stories.js rename to src/lib/components/Output/Print/MainSystems/stories.js diff --git a/src/components/Output/Print/Systems/Firecons/index.svelte b/src/lib/components/Output/Print/Systems/Firecons/index.svelte similarity index 100% rename from src/components/Output/Print/Systems/Firecons/index.svelte rename to src/lib/components/Output/Print/Systems/Firecons/index.svelte diff --git a/src/components/Output/Print/Systems/Screens/index.svelte b/src/lib/components/Output/Print/Systems/Screens/index.svelte similarity index 100% rename from src/components/Output/Print/Systems/Screens/index.svelte rename to src/lib/components/Output/Print/Systems/Screens/index.svelte diff --git a/src/components/Output/Print/Systems/index.svelte b/src/lib/components/Output/Print/Systems/index.svelte similarity index 100% rename from src/components/Output/Print/Systems/index.svelte rename to src/lib/components/Output/Print/Systems/index.svelte diff --git a/src/components/Output/Print/Weapons/Beam/index.svelte b/src/lib/components/Output/Print/Weapons/Beam/index.svelte similarity index 100% rename from src/components/Output/Print/Weapons/Beam/index.svelte rename to src/lib/components/Output/Print/Weapons/Beam/index.svelte diff --git a/src/components/Output/Print/Weapons/index.svelte b/src/lib/components/Output/Print/Weapons/index.svelte similarity index 100% rename from src/components/Output/Print/Weapons/index.svelte rename to src/lib/components/Output/Print/Weapons/index.svelte diff --git a/src/components/Output/Print/Weapons/stories.js b/src/lib/components/Output/Print/Weapons/stories.js similarity index 100% rename from src/components/Output/Print/Weapons/stories.js rename to src/lib/components/Output/Print/Weapons/stories.js diff --git a/src/components/Output/Print/index.svelte b/src/lib/components/Output/Print/index.svelte similarity index 100% rename from src/components/Output/Print/index.svelte rename to src/lib/components/Output/Print/index.svelte diff --git a/src/components/Output/Print/sample.js b/src/lib/components/Output/Print/sample.js similarity index 100% rename from src/components/Output/Print/sample.js rename to src/lib/components/Output/Print/sample.js diff --git a/src/components/Output/Print/stories.js b/src/lib/components/Output/Print/stories.js similarity index 100% rename from src/components/Output/Print/stories.js rename to src/lib/components/Output/Print/stories.js diff --git a/src/components/Propulsion/index.svelte b/src/lib/components/Propulsion/index.svelte similarity index 100% rename from src/components/Propulsion/index.svelte rename to src/lib/components/Propulsion/index.svelte diff --git a/src/components/Ribbon.svelte b/src/lib/components/Ribbon.svelte similarity index 100% rename from src/components/Ribbon.svelte rename to src/lib/components/Ribbon.svelte diff --git a/src/components/Section/index.svelte b/src/lib/components/Section/index.svelte similarity index 100% rename from src/components/Section/index.svelte rename to src/lib/components/Section/index.svelte diff --git a/src/components/ShipItem/index.svelte b/src/lib/components/ShipItem/index.svelte similarity index 100% rename from src/components/ShipItem/index.svelte rename to src/lib/components/ShipItem/index.svelte diff --git a/src/components/ShipSpecs/Identification.svelte b/src/lib/components/ShipSpecs/Identification.svelte similarity index 100% rename from src/components/ShipSpecs/Identification.svelte rename to src/lib/components/ShipSpecs/Identification.svelte diff --git a/src/components/ShipSpecs/ShipCost.svelte b/src/lib/components/ShipSpecs/ShipCost.svelte similarity index 100% rename from src/components/ShipSpecs/ShipCost.svelte rename to src/lib/components/ShipSpecs/ShipCost.svelte diff --git a/src/components/ShipSpecs/index.svelte b/src/lib/components/ShipSpecs/index.svelte similarity index 100% rename from src/components/ShipSpecs/index.svelte rename to src/lib/components/ShipSpecs/index.svelte diff --git a/src/components/Weapon/Arcs/index.svelte b/src/lib/components/Weapon/Arcs/index.svelte similarity index 100% rename from src/components/Weapon/Arcs/index.svelte rename to src/lib/components/Weapon/Arcs/index.svelte diff --git a/src/components/Weapon/Beam/index.svelte b/src/lib/components/Weapon/Beam/index.svelte similarity index 100% rename from src/components/Weapon/Beam/index.svelte rename to src/lib/components/Weapon/Beam/index.svelte diff --git a/src/components/Weapon/Needle/index.svelte b/src/lib/components/Weapon/Needle/index.svelte similarity index 100% rename from src/components/Weapon/Needle/index.svelte rename to src/lib/components/Weapon/Needle/index.svelte diff --git a/src/components/Weapon/PointDefenceSystem/index.svelte b/src/lib/components/Weapon/PointDefenceSystem/index.svelte similarity index 100% rename from src/components/Weapon/PointDefenceSystem/index.svelte rename to src/lib/components/Weapon/PointDefenceSystem/index.svelte diff --git a/src/components/Weapon/Scattergun/index.svelte b/src/lib/components/Weapon/Scattergun/index.svelte similarity index 100% rename from src/components/Weapon/Scattergun/index.svelte rename to src/lib/components/Weapon/Scattergun/index.svelte diff --git a/src/components/Weapon/Submunition/index.svelte b/src/lib/components/Weapon/Submunition/index.svelte similarity index 100% rename from src/components/Weapon/Submunition/index.svelte rename to src/lib/components/Weapon/Submunition/index.svelte diff --git a/src/components/Weapon/index.svelte b/src/lib/components/Weapon/index.svelte similarity index 100% rename from src/components/Weapon/index.svelte rename to src/lib/components/Weapon/index.svelte diff --git a/src/components/Weaponry/ADFC/index.svelte b/src/lib/components/Weaponry/ADFC/index.svelte similarity index 100% rename from src/components/Weaponry/ADFC/index.svelte rename to src/lib/components/Weaponry/ADFC/index.svelte diff --git a/src/components/Weaponry/AddWeapon/index.svelte b/src/lib/components/Weaponry/AddWeapon/index.svelte similarity index 100% rename from src/components/Weaponry/AddWeapon/index.svelte rename to src/lib/components/Weaponry/AddWeapon/index.svelte diff --git a/src/components/Weapons/Add.svelte b/src/lib/components/Weapons/Add.svelte similarity index 100% rename from src/components/Weapons/Add.svelte rename to src/lib/components/Weapons/Add.svelte diff --git a/src/components/Weapons/Arc.svelte b/src/lib/components/Weapons/Arc.svelte similarity index 100% rename from src/components/Weapons/Arc.svelte rename to src/lib/components/Weapons/Arc.svelte diff --git a/src/components/Weapons/stories.js b/src/lib/components/Weapons/stories.js similarity index 100% rename from src/components/Weapons/stories.js rename to src/lib/components/Weapons/stories.js diff --git a/src/routes/index.svelte b/src/routes/index.svelte index c7121fd..6bc1d4b 100644 --- a/src/routes/index.svelte +++ b/src/routes/index.svelte @@ -7,14 +7,10 @@ diff --git a/public/bulma/bulma-rtl.css b/static/bulma/bulma-rtl.css similarity index 100% rename from public/bulma/bulma-rtl.css rename to static/bulma/bulma-rtl.css diff --git a/public/bulma/bulma-rtl.css.map b/static/bulma/bulma-rtl.css.map similarity index 100% rename from public/bulma/bulma-rtl.css.map rename to static/bulma/bulma-rtl.css.map diff --git a/public/bulma/bulma-rtl.min.css b/static/bulma/bulma-rtl.min.css similarity index 100% rename from public/bulma/bulma-rtl.min.css rename to static/bulma/bulma-rtl.min.css diff --git a/public/bulma/bulma.css b/static/bulma/bulma.css similarity index 100% rename from public/bulma/bulma.css rename to static/bulma/bulma.css diff --git a/public/bulma/bulma.css.map b/static/bulma/bulma.css.map similarity index 100% rename from public/bulma/bulma.css.map rename to static/bulma/bulma.css.map diff --git a/public/bulma/bulma.min.css b/static/bulma/bulma.min.css similarity index 100% rename from public/bulma/bulma.min.css rename to static/bulma/bulma.min.css diff --git a/public/css/buttons.css b/static/css/buttons.css similarity index 100% rename from public/css/buttons.css rename to static/css/buttons.css diff --git a/public/favicon.ico b/static/favicon.ico similarity index 100% rename from public/favicon.ico rename to static/favicon.ico diff --git a/public/favicon.png b/static/favicon.png similarity index 100% rename from public/favicon.png rename to static/favicon.png diff --git a/public/fonts/Faktos.ttf b/static/fonts/Faktos.ttf similarity index 100% rename from public/fonts/Faktos.ttf rename to static/fonts/Faktos.ttf diff --git a/public/fonts/FaktosContour.ttf b/static/fonts/FaktosContour.ttf similarity index 100% rename from public/fonts/FaktosContour.ttf rename to static/fonts/FaktosContour.ttf diff --git a/public/fonts/FaktosOutline.ttf b/static/fonts/FaktosOutline.ttf similarity index 100% rename from public/fonts/FaktosOutline.ttf rename to static/fonts/FaktosOutline.ttf diff --git a/public/fonts/FaktosShadow.ttf b/static/fonts/FaktosShadow.ttf similarity index 100% rename from public/fonts/FaktosShadow.ttf rename to static/fonts/FaktosShadow.ttf diff --git a/public/fonts/dosis/Dosis-VariableFont_wght.ttf b/static/fonts/dosis/Dosis-VariableFont_wght.ttf similarity index 100% rename from public/fonts/dosis/Dosis-VariableFont_wght.ttf rename to static/fonts/dosis/Dosis-VariableFont_wght.ttf diff --git a/public/fonts/dosis/OFL.txt b/static/fonts/dosis/OFL.txt similarity index 100% rename from public/fonts/dosis/OFL.txt rename to static/fonts/dosis/OFL.txt diff --git a/public/fonts/dosis/README.txt b/static/fonts/dosis/README.txt similarity index 100% rename from public/fonts/dosis/README.txt rename to static/fonts/dosis/README.txt diff --git a/public/fonts/dosis/dosis.css b/static/fonts/dosis/dosis.css similarity index 100% rename from public/fonts/dosis/dosis.css rename to static/fonts/dosis/dosis.css diff --git a/public/fonts/dosis/static/Dosis-Bold.ttf b/static/fonts/dosis/static/Dosis-Bold.ttf similarity index 100% rename from public/fonts/dosis/static/Dosis-Bold.ttf rename to static/fonts/dosis/static/Dosis-Bold.ttf diff --git a/public/fonts/dosis/static/Dosis-ExtraBold.ttf b/static/fonts/dosis/static/Dosis-ExtraBold.ttf similarity index 100% rename from public/fonts/dosis/static/Dosis-ExtraBold.ttf rename to static/fonts/dosis/static/Dosis-ExtraBold.ttf diff --git a/public/fonts/dosis/static/Dosis-ExtraLight.ttf b/static/fonts/dosis/static/Dosis-ExtraLight.ttf similarity index 100% rename from public/fonts/dosis/static/Dosis-ExtraLight.ttf rename to static/fonts/dosis/static/Dosis-ExtraLight.ttf diff --git a/public/fonts/dosis/static/Dosis-Light.ttf b/static/fonts/dosis/static/Dosis-Light.ttf similarity index 100% rename from public/fonts/dosis/static/Dosis-Light.ttf rename to static/fonts/dosis/static/Dosis-Light.ttf diff --git a/public/fonts/dosis/static/Dosis-Medium.ttf b/static/fonts/dosis/static/Dosis-Medium.ttf similarity index 100% rename from public/fonts/dosis/static/Dosis-Medium.ttf rename to static/fonts/dosis/static/Dosis-Medium.ttf diff --git a/public/fonts/dosis/static/Dosis-Regular.ttf b/static/fonts/dosis/static/Dosis-Regular.ttf similarity index 100% rename from public/fonts/dosis/static/Dosis-Regular.ttf rename to static/fonts/dosis/static/Dosis-Regular.ttf diff --git a/public/fonts/dosis/static/Dosis-SemiBold.ttf b/static/fonts/dosis/static/Dosis-SemiBold.ttf similarity index 100% rename from public/fonts/dosis/static/Dosis-SemiBold.ttf rename to static/fonts/dosis/static/Dosis-SemiBold.ttf diff --git a/public/fonts/fakto10.ttf b/static/fonts/fakto10.ttf similarity index 100% rename from public/fonts/fakto10.ttf rename to static/fonts/fakto10.ttf diff --git a/public/fonts/fakto9.ttf b/static/fonts/fakto9.ttf similarity index 100% rename from public/fonts/fakto9.ttf rename to static/fonts/fakto9.ttf diff --git a/public/fonts/faktos.css b/static/fonts/faktos.css similarity index 100% rename from public/fonts/faktos.css rename to static/fonts/faktos.css diff --git a/public/fonts/faktos.ttf b/static/fonts/faktos.ttf similarity index 100% rename from public/fonts/faktos.ttf rename to static/fonts/faktos.ttf diff --git a/public/global.css b/static/global.css similarity index 100% rename from public/global.css rename to static/global.css diff --git a/public/icons/crew-star.svg b/static/icons/crew-star.svg similarity index 100% rename from public/icons/crew-star.svg rename to static/icons/crew-star.svg diff --git a/public/icons/firecon.svg b/static/icons/firecon.svg similarity index 100% rename from public/icons/firecon.svg rename to static/icons/firecon.svg diff --git a/public/icons/ftl-drive.svg b/static/icons/ftl-drive.svg similarity index 100% rename from public/icons/ftl-drive.svg rename to static/icons/ftl-drive.svg diff --git a/public/icons/internal-systems.svg b/static/icons/internal-systems.svg similarity index 100% rename from public/icons/internal-systems.svg rename to static/icons/internal-systems.svg diff --git a/public/icons/screen-advanced.svg b/static/icons/screen-advanced.svg similarity index 100% rename from public/icons/screen-advanced.svg rename to static/icons/screen-advanced.svg diff --git a/public/icons/screen.svg b/static/icons/screen.svg similarity index 100% rename from public/icons/screen.svg rename to static/icons/screen.svg diff --git a/public/icons/standard-drive.svg b/static/icons/standard-drive.svg similarity index 100% rename from public/icons/standard-drive.svg rename to static/icons/standard-drive.svg diff --git a/public/mass.svg b/static/mass.svg similarity index 100% rename from public/mass.svg rename to static/mass.svg diff --git a/public/print.css b/static/print.css similarity index 100% rename from public/print.css rename to static/print.css diff --git a/public/ssd-icons/AADFC.svg b/static/ssd-icons/AADFC.svg similarity index 100% rename from public/ssd-icons/AADFC.svg rename to static/ssd-icons/AADFC.svg diff --git a/public/ssd-icons/ADS.svg b/static/ssd-icons/ADS.svg similarity index 100% rename from public/ssd-icons/ADS.svg rename to static/ssd-icons/ADS.svg diff --git a/public/ssd-icons/AMSuicide.svg b/static/ssd-icons/AMSuicide.svg similarity index 100% rename from public/ssd-icons/AMSuicide.svg rename to static/ssd-icons/AMSuicide.svg diff --git a/public/ssd-icons/AMT.svg b/static/ssd-icons/AMT.svg similarity index 100% rename from public/ssd-icons/AMT.svg rename to static/ssd-icons/AMT.svg diff --git a/public/ssd-icons/AdvFireCont2.svg b/static/ssd-icons/AdvFireCont2.svg similarity index 100% rename from public/ssd-icons/AdvFireCont2.svg rename to static/ssd-icons/AdvFireCont2.svg diff --git a/public/ssd-icons/Advanced FTL Drive.svg b/static/ssd-icons/Advanced FTL Drive.svg similarity index 100% rename from public/ssd-icons/Advanced FTL Drive.svg rename to static/ssd-icons/Advanced FTL Drive.svg diff --git a/public/ssd-icons/AlternativeIcon.svg b/static/ssd-icons/AlternativeIcon.svg similarity index 100% rename from public/ssd-icons/AlternativeIcon.svg rename to static/ssd-icons/AlternativeIcon.svg diff --git a/public/ssd-icons/AndvancedDrives (2).svg b/static/ssd-icons/AndvancedDrives (2).svg similarity index 100% rename from public/ssd-icons/AndvancedDrives (2).svg rename to static/ssd-icons/AndvancedDrives (2).svg diff --git a/public/ssd-icons/AndvancedDrives (3).svg b/static/ssd-icons/AndvancedDrives (3).svg similarity index 100% rename from public/ssd-icons/AndvancedDrives (3).svg rename to static/ssd-icons/AndvancedDrives (3).svg diff --git a/public/ssd-icons/AndvancedDrives (4).svg b/static/ssd-icons/AndvancedDrives (4).svg similarity index 100% rename from public/ssd-icons/AndvancedDrives (4).svg rename to static/ssd-icons/AndvancedDrives (4).svg diff --git a/public/ssd-icons/AndvancedDrives (5).svg b/static/ssd-icons/AndvancedDrives (5).svg similarity index 100% rename from public/ssd-icons/AndvancedDrives (5).svg rename to static/ssd-icons/AndvancedDrives (5).svg diff --git a/public/ssd-icons/AndvancedDrives (6).svg b/static/ssd-icons/AndvancedDrives (6).svg similarity index 100% rename from public/ssd-icons/AndvancedDrives (6).svg rename to static/ssd-icons/AndvancedDrives (6).svg diff --git a/public/ssd-icons/AndvancedDrives (7).svg b/static/ssd-icons/AndvancedDrives (7).svg similarity index 100% rename from public/ssd-icons/AndvancedDrives (7).svg rename to static/ssd-icons/AndvancedDrives (7).svg diff --git a/public/ssd-icons/AndvancedDrives (8).svg b/static/ssd-icons/AndvancedDrives (8).svg similarity index 100% rename from public/ssd-icons/AndvancedDrives (8).svg rename to static/ssd-icons/AndvancedDrives (8).svg diff --git a/public/ssd-icons/AndvancedDrives.svg b/static/ssd-icons/AndvancedDrives.svg similarity index 100% rename from public/ssd-icons/AndvancedDrives.svg rename to static/ssd-icons/AndvancedDrives.svg diff --git a/public/ssd-icons/AreaECM.svg b/static/ssd-icons/AreaECM.svg similarity index 100% rename from public/ssd-icons/AreaECM.svg rename to static/ssd-icons/AreaECM.svg diff --git a/public/ssd-icons/AreaScreens1.svg b/static/ssd-icons/AreaScreens1.svg similarity index 100% rename from public/ssd-icons/AreaScreens1.svg rename to static/ssd-icons/AreaScreens1.svg diff --git a/public/ssd-icons/AreaScreens2.svg b/static/ssd-icons/AreaScreens2.svg similarity index 100% rename from public/ssd-icons/AreaScreens2.svg rename to static/ssd-icons/AreaScreens2.svg diff --git a/public/ssd-icons/Beam1 (2).svg b/static/ssd-icons/Beam1 (2).svg similarity index 100% rename from public/ssd-icons/Beam1 (2).svg rename to static/ssd-icons/Beam1 (2).svg diff --git a/public/ssd-icons/Beam1.svg b/static/ssd-icons/Beam1.svg similarity index 100% rename from public/ssd-icons/Beam1.svg rename to static/ssd-icons/Beam1.svg diff --git a/public/ssd-icons/Beam2 (2).svg b/static/ssd-icons/Beam2 (2).svg similarity index 100% rename from public/ssd-icons/Beam2 (2).svg rename to static/ssd-icons/Beam2 (2).svg diff --git a/public/ssd-icons/Beam2.svg b/static/ssd-icons/Beam2.svg similarity index 100% rename from public/ssd-icons/Beam2.svg rename to static/ssd-icons/Beam2.svg diff --git a/public/ssd-icons/Beam3 (2).svg b/static/ssd-icons/Beam3 (2).svg similarity index 100% rename from public/ssd-icons/Beam3 (2).svg rename to static/ssd-icons/Beam3 (2).svg diff --git a/public/ssd-icons/Beam3.svg b/static/ssd-icons/Beam3.svg similarity index 100% rename from public/ssd-icons/Beam3.svg rename to static/ssd-icons/Beam3.svg diff --git a/public/ssd-icons/Beam4.svg b/static/ssd-icons/Beam4.svg similarity index 100% rename from public/ssd-icons/Beam4.svg rename to static/ssd-icons/Beam4.svg diff --git a/public/ssd-icons/Boarding Torps.svg b/static/ssd-icons/Boarding Torps.svg similarity index 100% rename from public/ssd-icons/Boarding Torps.svg rename to static/ssd-icons/Boarding Torps.svg diff --git a/public/ssd-icons/Capital Decoy.svg b/static/ssd-icons/Capital Decoy.svg similarity index 100% rename from public/ssd-icons/Capital Decoy.svg rename to static/ssd-icons/Capital Decoy.svg diff --git a/public/ssd-icons/Cargo Hold.svg b/static/ssd-icons/Cargo Hold.svg similarity index 100% rename from public/ssd-icons/Cargo Hold.svg rename to static/ssd-icons/Cargo Hold.svg diff --git a/public/ssd-icons/Cruiser Decoy.svg b/static/ssd-icons/Cruiser Decoy.svg similarity index 100% rename from public/ssd-icons/Cruiser Decoy.svg rename to static/ssd-icons/Cruiser Decoy.svg diff --git a/public/ssd-icons/DamageControl.svg b/static/ssd-icons/DamageControl.svg similarity index 100% rename from public/ssd-icons/DamageControl.svg rename to static/ssd-icons/DamageControl.svg diff --git a/public/ssd-icons/Defenses1.svg b/static/ssd-icons/Defenses1.svg similarity index 100% rename from public/ssd-icons/Defenses1.svg rename to static/ssd-icons/Defenses1.svg diff --git a/public/ssd-icons/Defenses2.svg b/static/ssd-icons/Defenses2.svg similarity index 100% rename from public/ssd-icons/Defenses2.svg rename to static/ssd-icons/Defenses2.svg diff --git a/public/ssd-icons/Defenses3.svg b/static/ssd-icons/Defenses3.svg similarity index 100% rename from public/ssd-icons/Defenses3.svg rename to static/ssd-icons/Defenses3.svg diff --git a/public/ssd-icons/Defenses4.svg b/static/ssd-icons/Defenses4.svg similarity index 100% rename from public/ssd-icons/Defenses4.svg rename to static/ssd-icons/Defenses4.svg diff --git a/public/ssd-icons/ECM.svg b/static/ssd-icons/ECM.svg similarity index 100% rename from public/ssd-icons/ECM.svg rename to static/ssd-icons/ECM.svg diff --git a/public/ssd-icons/EMP1.svg b/static/ssd-icons/EMP1.svg similarity index 100% rename from public/ssd-icons/EMP1.svg rename to static/ssd-icons/EMP1.svg diff --git a/public/ssd-icons/EMP2.svg b/static/ssd-icons/EMP2.svg similarity index 100% rename from public/ssd-icons/EMP2.svg rename to static/ssd-icons/EMP2.svg diff --git a/public/ssd-icons/EMP3.svg b/static/ssd-icons/EMP3.svg similarity index 100% rename from public/ssd-icons/EMP3.svg rename to static/ssd-icons/EMP3.svg diff --git a/public/ssd-icons/EMP4.svg b/static/ssd-icons/EMP4.svg similarity index 100% rename from public/ssd-icons/EMP4.svg rename to static/ssd-icons/EMP4.svg diff --git a/public/ssd-icons/Energy1.svg b/static/ssd-icons/Energy1.svg similarity index 100% rename from public/ssd-icons/Energy1.svg rename to static/ssd-icons/Energy1.svg diff --git a/public/ssd-icons/FTL Tug.svg b/static/ssd-icons/FTL Tug.svg similarity index 100% rename from public/ssd-icons/FTL Tug.svg rename to static/ssd-icons/FTL Tug.svg diff --git a/public/ssd-icons/FusionArray.svg b/static/ssd-icons/FusionArray.svg similarity index 100% rename from public/ssd-icons/FusionArray.svg rename to static/ssd-icons/FusionArray.svg diff --git a/public/ssd-icons/Gattling battery.svg b/static/ssd-icons/Gattling battery.svg similarity index 100% rename from public/ssd-icons/Gattling battery.svg rename to static/ssd-icons/Gattling battery.svg diff --git a/public/ssd-icons/GrapeShot.svg b/static/ssd-icons/GrapeShot.svg similarity index 100% rename from public/ssd-icons/GrapeShot.svg rename to static/ssd-icons/GrapeShot.svg diff --git a/public/ssd-icons/Gravity1.svg b/static/ssd-icons/Gravity1.svg similarity index 100% rename from public/ssd-icons/Gravity1.svg rename to static/ssd-icons/Gravity1.svg diff --git a/public/ssd-icons/Gravity2.svg b/static/ssd-icons/Gravity2.svg similarity index 100% rename from public/ssd-icons/Gravity2.svg rename to static/ssd-icons/Gravity2.svg diff --git a/public/ssd-icons/Gravity3.svg b/static/ssd-icons/Gravity3.svg similarity index 100% rename from public/ssd-icons/Gravity3.svg rename to static/ssd-icons/Gravity3.svg diff --git a/public/ssd-icons/Gravity4.svg b/static/ssd-icons/Gravity4.svg similarity index 100% rename from public/ssd-icons/Gravity4.svg rename to static/ssd-icons/Gravity4.svg diff --git a/public/ssd-icons/Hangar Rack 1.svg b/static/ssd-icons/Hangar Rack 1.svg similarity index 100% rename from public/ssd-icons/Hangar Rack 1.svg rename to static/ssd-icons/Hangar Rack 1.svg diff --git a/public/ssd-icons/Hangar Rack 2.svg b/static/ssd-icons/Hangar Rack 2.svg similarity index 100% rename from public/ssd-icons/Hangar Rack 2.svg rename to static/ssd-icons/Hangar Rack 2.svg diff --git a/public/ssd-icons/HeavyGraser1.svg b/static/ssd-icons/HeavyGraser1.svg similarity index 100% rename from public/ssd-icons/HeavyGraser1.svg rename to static/ssd-icons/HeavyGraser1.svg diff --git a/public/ssd-icons/HeavyGraser2.svg b/static/ssd-icons/HeavyGraser2.svg similarity index 100% rename from public/ssd-icons/HeavyGraser2.svg rename to static/ssd-icons/HeavyGraser2.svg diff --git a/public/ssd-icons/HeavyGraser3.svg b/static/ssd-icons/HeavyGraser3.svg similarity index 100% rename from public/ssd-icons/HeavyGraser3.svg rename to static/ssd-icons/HeavyGraser3.svg diff --git a/public/ssd-icons/HeavyGraser4.svg b/static/ssd-icons/HeavyGraser4.svg similarity index 100% rename from public/ssd-icons/HeavyGraser4.svg rename to static/ssd-icons/HeavyGraser4.svg diff --git a/public/ssd-icons/Holofield.svg b/static/ssd-icons/Holofield.svg similarity index 100% rename from public/ssd-icons/Holofield.svg rename to static/ssd-icons/Holofield.svg diff --git a/public/ssd-icons/Hull.svg b/static/ssd-icons/Hull.svg similarity index 100% rename from public/ssd-icons/Hull.svg rename to static/ssd-icons/Hull.svg diff --git a/public/ssd-icons/LRK1.svg b/static/ssd-icons/LRK1.svg similarity index 100% rename from public/ssd-icons/LRK1.svg rename to static/ssd-icons/LRK1.svg diff --git a/public/ssd-icons/LRK2.svg b/static/ssd-icons/LRK2.svg similarity index 100% rename from public/ssd-icons/LRK2.svg rename to static/ssd-icons/LRK2.svg diff --git a/public/ssd-icons/LRK3.svg b/static/ssd-icons/LRK3.svg similarity index 100% rename from public/ssd-icons/LRK3.svg rename to static/ssd-icons/LRK3.svg diff --git a/public/ssd-icons/LRK4.svg b/static/ssd-icons/LRK4.svg similarity index 100% rename from public/ssd-icons/LRK4.svg rename to static/ssd-icons/LRK4.svg diff --git a/public/ssd-icons/LRK5.svg b/static/ssd-icons/LRK5.svg similarity index 100% rename from public/ssd-icons/LRK5.svg rename to static/ssd-icons/LRK5.svg diff --git a/public/ssd-icons/Launch Tube Catapult 2.svg b/static/ssd-icons/Launch Tube Catapult 2.svg similarity index 100% rename from public/ssd-icons/Launch Tube Catapult 2.svg rename to static/ssd-icons/Launch Tube Catapult 2.svg diff --git a/public/ssd-icons/Launch Tube Catapult.svg b/static/ssd-icons/Launch Tube Catapult.svg similarity index 100% rename from public/ssd-icons/Launch Tube Catapult.svg rename to static/ssd-icons/Launch Tube Catapult.svg diff --git a/public/ssd-icons/Launch Tube.svg b/static/ssd-icons/Launch Tube.svg similarity index 100% rename from public/ssd-icons/Launch Tube.svg rename to static/ssd-icons/Launch Tube.svg diff --git a/public/ssd-icons/Marines1.svg b/static/ssd-icons/Marines1.svg similarity index 100% rename from public/ssd-icons/Marines1.svg rename to static/ssd-icons/Marines1.svg diff --git a/public/ssd-icons/Marines2.svg b/static/ssd-icons/Marines2.svg similarity index 100% rename from public/ssd-icons/Marines2.svg rename to static/ssd-icons/Marines2.svg diff --git a/public/ssd-icons/Marines3.svg b/static/ssd-icons/Marines3.svg similarity index 100% rename from public/ssd-icons/Marines3.svg rename to static/ssd-icons/Marines3.svg diff --git a/public/ssd-icons/MesonProjector.svg b/static/ssd-icons/MesonProjector.svg similarity index 100% rename from public/ssd-icons/MesonProjector.svg rename to static/ssd-icons/MesonProjector.svg diff --git a/public/ssd-icons/Mine Rack.svg b/static/ssd-icons/Mine Rack.svg similarity index 100% rename from public/ssd-icons/Mine Rack.svg rename to static/ssd-icons/Mine Rack.svg diff --git a/public/ssd-icons/Minesweep.svg b/static/ssd-icons/Minesweep.svg similarity index 100% rename from public/ssd-icons/Minesweep.svg rename to static/ssd-icons/Minesweep.svg diff --git a/public/ssd-icons/Needle1.svg b/static/ssd-icons/Needle1.svg similarity index 100% rename from public/ssd-icons/Needle1.svg rename to static/ssd-icons/Needle1.svg diff --git a/public/ssd-icons/Needle2.svg b/static/ssd-icons/Needle2.svg similarity index 100% rename from public/ssd-icons/Needle2.svg rename to static/ssd-icons/Needle2.svg diff --git a/public/ssd-icons/Needle3.svg b/static/ssd-icons/Needle3.svg similarity index 100% rename from public/ssd-icons/Needle3.svg rename to static/ssd-icons/Needle3.svg diff --git a/public/ssd-icons/Needle4.svg b/static/ssd-icons/Needle4.svg similarity index 100% rename from public/ssd-icons/Needle4.svg rename to static/ssd-icons/Needle4.svg diff --git a/public/ssd-icons/Nova Cannon.svg b/static/ssd-icons/Nova Cannon.svg similarity index 100% rename from public/ssd-icons/Nova Cannon.svg rename to static/ssd-icons/Nova Cannon.svg diff --git a/public/ssd-icons/Ortillery.svg b/static/ssd-icons/Ortillery.svg similarity index 100% rename from public/ssd-icons/Ortillery.svg rename to static/ssd-icons/Ortillery.svg diff --git a/public/ssd-icons/Passenger Berth.svg b/static/ssd-icons/Passenger Berth.svg similarity index 100% rename from public/ssd-icons/Passenger Berth.svg rename to static/ssd-icons/Passenger Berth.svg diff --git a/public/ssd-icons/Phasers1.svg b/static/ssd-icons/Phasers1.svg similarity index 100% rename from public/ssd-icons/Phasers1.svg rename to static/ssd-icons/Phasers1.svg diff --git a/public/ssd-icons/Phasers2.svg b/static/ssd-icons/Phasers2.svg similarity index 100% rename from public/ssd-icons/Phasers2.svg rename to static/ssd-icons/Phasers2.svg diff --git a/public/ssd-icons/Phasers3.svg b/static/ssd-icons/Phasers3.svg similarity index 100% rename from public/ssd-icons/Phasers3.svg rename to static/ssd-icons/Phasers3.svg diff --git a/public/ssd-icons/Phasers4.svg b/static/ssd-icons/Phasers4.svg similarity index 100% rename from public/ssd-icons/Phasers4.svg rename to static/ssd-icons/Phasers4.svg diff --git a/public/ssd-icons/Plasma Bolt Launcher 1 v1.svg b/static/ssd-icons/Plasma Bolt Launcher 1 v1.svg similarity index 100% rename from public/ssd-icons/Plasma Bolt Launcher 1 v1.svg rename to static/ssd-icons/Plasma Bolt Launcher 1 v1.svg diff --git a/public/ssd-icons/Plasma Bolt Launcher 1 v2.svg b/static/ssd-icons/Plasma Bolt Launcher 1 v2.svg similarity index 100% rename from public/ssd-icons/Plasma Bolt Launcher 1 v2.svg rename to static/ssd-icons/Plasma Bolt Launcher 1 v2.svg diff --git a/public/ssd-icons/Plasma Bolt Launcher 1.svg b/static/ssd-icons/Plasma Bolt Launcher 1.svg similarity index 100% rename from public/ssd-icons/Plasma Bolt Launcher 1.svg rename to static/ssd-icons/Plasma Bolt Launcher 1.svg diff --git a/public/ssd-icons/Plasma Bolt Launcher 2 v1.svg b/static/ssd-icons/Plasma Bolt Launcher 2 v1.svg similarity index 100% rename from public/ssd-icons/Plasma Bolt Launcher 2 v1.svg rename to static/ssd-icons/Plasma Bolt Launcher 2 v1.svg diff --git a/public/ssd-icons/Plasma Bolt Launcher 2 v2.svg b/static/ssd-icons/Plasma Bolt Launcher 2 v2.svg similarity index 100% rename from public/ssd-icons/Plasma Bolt Launcher 2 v2.svg rename to static/ssd-icons/Plasma Bolt Launcher 2 v2.svg diff --git a/public/ssd-icons/Plasma Bolt Launcher 2.svg b/static/ssd-icons/Plasma Bolt Launcher 2.svg similarity index 100% rename from public/ssd-icons/Plasma Bolt Launcher 2.svg rename to static/ssd-icons/Plasma Bolt Launcher 2.svg diff --git a/public/ssd-icons/Plasma Bolt Launcher 3 v1.svg b/static/ssd-icons/Plasma Bolt Launcher 3 v1.svg similarity index 100% rename from public/ssd-icons/Plasma Bolt Launcher 3 v1.svg rename to static/ssd-icons/Plasma Bolt Launcher 3 v1.svg diff --git a/public/ssd-icons/Plasma Bolt Launcher 3 v2.svg b/static/ssd-icons/Plasma Bolt Launcher 3 v2.svg similarity index 100% rename from public/ssd-icons/Plasma Bolt Launcher 3 v2.svg rename to static/ssd-icons/Plasma Bolt Launcher 3 v2.svg diff --git a/public/ssd-icons/Plasma Bolt Launcher 3.svg b/static/ssd-icons/Plasma Bolt Launcher 3.svg similarity index 100% rename from public/ssd-icons/Plasma Bolt Launcher 3.svg rename to static/ssd-icons/Plasma Bolt Launcher 3.svg diff --git a/public/ssd-icons/Plasma Bolt Launcher 4 v1.svg b/static/ssd-icons/Plasma Bolt Launcher 4 v1.svg similarity index 100% rename from public/ssd-icons/Plasma Bolt Launcher 4 v1.svg rename to static/ssd-icons/Plasma Bolt Launcher 4 v1.svg diff --git a/public/ssd-icons/Plasma Bolt Launcher 4 v2.svg b/static/ssd-icons/Plasma Bolt Launcher 4 v2.svg similarity index 100% rename from public/ssd-icons/Plasma Bolt Launcher 4 v2.svg rename to static/ssd-icons/Plasma Bolt Launcher 4 v2.svg diff --git a/public/ssd-icons/Plasma Bolt Launcher 4.svg b/static/ssd-icons/Plasma Bolt Launcher 4.svg similarity index 100% rename from public/ssd-icons/Plasma Bolt Launcher 4.svg rename to static/ssd-icons/Plasma Bolt Launcher 4.svg diff --git a/public/ssd-icons/Plasma Bolt Launcher 5 v1.svg b/static/ssd-icons/Plasma Bolt Launcher 5 v1.svg similarity index 100% rename from public/ssd-icons/Plasma Bolt Launcher 5 v1.svg rename to static/ssd-icons/Plasma Bolt Launcher 5 v1.svg diff --git a/public/ssd-icons/Plasma Bolt Launcher 5 v2.svg b/static/ssd-icons/Plasma Bolt Launcher 5 v2.svg similarity index 100% rename from public/ssd-icons/Plasma Bolt Launcher 5 v2.svg rename to static/ssd-icons/Plasma Bolt Launcher 5 v2.svg diff --git a/public/ssd-icons/Plasma Bolt Launcher 5.svg b/static/ssd-icons/Plasma Bolt Launcher 5.svg similarity index 100% rename from public/ssd-icons/Plasma Bolt Launcher 5.svg rename to static/ssd-icons/Plasma Bolt Launcher 5.svg diff --git a/public/ssd-icons/Plasma Bolt Launcher 6 v1.svg b/static/ssd-icons/Plasma Bolt Launcher 6 v1.svg similarity index 100% rename from public/ssd-icons/Plasma Bolt Launcher 6 v1.svg rename to static/ssd-icons/Plasma Bolt Launcher 6 v1.svg diff --git a/public/ssd-icons/Plasma Bolt Launcher 6 v2.svg b/static/ssd-icons/Plasma Bolt Launcher 6 v2.svg similarity index 100% rename from public/ssd-icons/Plasma Bolt Launcher 6 v2.svg rename to static/ssd-icons/Plasma Bolt Launcher 6 v2.svg diff --git a/public/ssd-icons/Plasma Bolt Launcher 6.svg b/static/ssd-icons/Plasma Bolt Launcher 6.svg similarity index 100% rename from public/ssd-icons/Plasma Bolt Launcher 6.svg rename to static/ssd-icons/Plasma Bolt Launcher 6.svg diff --git a/public/ssd-icons/Plasma1.svg b/static/ssd-icons/Plasma1.svg similarity index 100% rename from public/ssd-icons/Plasma1.svg rename to static/ssd-icons/Plasma1.svg diff --git a/public/ssd-icons/Plasma2.svg b/static/ssd-icons/Plasma2.svg similarity index 100% rename from public/ssd-icons/Plasma2.svg rename to static/ssd-icons/Plasma2.svg diff --git a/public/ssd-icons/Plasma3.svg b/static/ssd-icons/Plasma3.svg similarity index 100% rename from public/ssd-icons/Plasma3.svg rename to static/ssd-icons/Plasma3.svg diff --git a/public/ssd-icons/PlasmaCannon1.svg b/static/ssd-icons/PlasmaCannon1.svg similarity index 100% rename from public/ssd-icons/PlasmaCannon1.svg rename to static/ssd-icons/PlasmaCannon1.svg diff --git a/public/ssd-icons/PlasmaCannon2.svg b/static/ssd-icons/PlasmaCannon2.svg similarity index 100% rename from public/ssd-icons/PlasmaCannon2.svg rename to static/ssd-icons/PlasmaCannon2.svg diff --git a/public/ssd-icons/PlasmaCannon3.svg b/static/ssd-icons/PlasmaCannon3.svg similarity index 100% rename from public/ssd-icons/PlasmaCannon3.svg rename to static/ssd-icons/PlasmaCannon3.svg diff --git a/public/ssd-icons/PlasmaCannon4.svg b/static/ssd-icons/PlasmaCannon4.svg similarity index 100% rename from public/ssd-icons/PlasmaCannon4.svg rename to static/ssd-icons/PlasmaCannon4.svg diff --git a/public/ssd-icons/Psp1.svg b/static/ssd-icons/Psp1.svg similarity index 100% rename from public/ssd-icons/Psp1.svg rename to static/ssd-icons/Psp1.svg diff --git a/public/ssd-icons/Psp2.svg b/static/ssd-icons/Psp2.svg similarity index 100% rename from public/ssd-icons/Psp2.svg rename to static/ssd-icons/Psp2.svg diff --git a/public/ssd-icons/Psp3.svg b/static/ssd-icons/Psp3.svg similarity index 100% rename from public/ssd-icons/Psp3.svg rename to static/ssd-icons/Psp3.svg diff --git a/public/ssd-icons/Pulser1.svg b/static/ssd-icons/Pulser1.svg similarity index 100% rename from public/ssd-icons/Pulser1.svg rename to static/ssd-icons/Pulser1.svg diff --git a/public/ssd-icons/Pulser2.svg b/static/ssd-icons/Pulser2.svg similarity index 100% rename from public/ssd-icons/Pulser2.svg rename to static/ssd-icons/Pulser2.svg diff --git a/public/ssd-icons/Pulser3.svg b/static/ssd-icons/Pulser3.svg similarity index 100% rename from public/ssd-icons/Pulser3.svg rename to static/ssd-icons/Pulser3.svg diff --git a/public/ssd-icons/Pulser4.svg b/static/ssd-icons/Pulser4.svg similarity index 100% rename from public/ssd-icons/Pulser4.svg rename to static/ssd-icons/Pulser4.svg diff --git a/public/ssd-icons/Pulser5.svg b/static/ssd-icons/Pulser5.svg similarity index 100% rename from public/ssd-icons/Pulser5.svg rename to static/ssd-icons/Pulser5.svg diff --git a/public/ssd-icons/Pulser6.svg b/static/ssd-icons/Pulser6.svg similarity index 100% rename from public/ssd-icons/Pulser6.svg rename to static/ssd-icons/Pulser6.svg diff --git a/public/ssd-icons/Pulser7.svg b/static/ssd-icons/Pulser7.svg similarity index 100% rename from public/ssd-icons/Pulser7.svg rename to static/ssd-icons/Pulser7.svg diff --git a/public/ssd-icons/Pulser8.svg b/static/ssd-icons/Pulser8.svg similarity index 100% rename from public/ssd-icons/Pulser8.svg rename to static/ssd-icons/Pulser8.svg diff --git a/public/ssd-icons/Reflex Field.svg b/static/ssd-icons/Reflex Field.svg similarity index 100% rename from public/ssd-icons/Reflex Field.svg rename to static/ssd-icons/Reflex Field.svg diff --git a/public/ssd-icons/Rocket Pod 2.svg b/static/ssd-icons/Rocket Pod 2.svg similarity index 100% rename from public/ssd-icons/Rocket Pod 2.svg rename to static/ssd-icons/Rocket Pod 2.svg diff --git a/public/ssd-icons/Rocket Pod.svg b/static/ssd-icons/Rocket Pod.svg similarity index 100% rename from public/ssd-icons/Rocket Pod.svg rename to static/ssd-icons/Rocket Pod.svg diff --git a/public/ssd-icons/SRK1(v1).svg b/static/ssd-icons/SRK1(v1).svg similarity index 100% rename from public/ssd-icons/SRK1(v1).svg rename to static/ssd-icons/SRK1(v1).svg diff --git a/public/ssd-icons/SRK1(v2).svg b/static/ssd-icons/SRK1(v2).svg similarity index 100% rename from public/ssd-icons/SRK1(v2).svg rename to static/ssd-icons/SRK1(v2).svg diff --git a/public/ssd-icons/SRK2(v1).svg b/static/ssd-icons/SRK2(v1).svg similarity index 100% rename from public/ssd-icons/SRK2(v1).svg rename to static/ssd-icons/SRK2(v1).svg diff --git a/public/ssd-icons/SRK2(v2).svg b/static/ssd-icons/SRK2(v2).svg similarity index 100% rename from public/ssd-icons/SRK2(v2).svg rename to static/ssd-icons/SRK2(v2).svg diff --git a/public/ssd-icons/SRK3(v1).svg b/static/ssd-icons/SRK3(v1).svg similarity index 100% rename from public/ssd-icons/SRK3(v1).svg rename to static/ssd-icons/SRK3(v1).svg diff --git a/public/ssd-icons/SRK3(v2).svg b/static/ssd-icons/SRK3(v2).svg similarity index 100% rename from public/ssd-icons/SRK3(v2).svg rename to static/ssd-icons/SRK3(v2).svg diff --git a/public/ssd-icons/SRK4(v1).svg b/static/ssd-icons/SRK4(v1).svg similarity index 100% rename from public/ssd-icons/SRK4(v1).svg rename to static/ssd-icons/SRK4(v1).svg diff --git a/public/ssd-icons/SRK4(v2).svg b/static/ssd-icons/SRK4(v2).svg similarity index 100% rename from public/ssd-icons/SRK4(v2).svg rename to static/ssd-icons/SRK4(v2).svg diff --git a/public/ssd-icons/SRK5(v1).svg b/static/ssd-icons/SRK5(v1).svg similarity index 100% rename from public/ssd-icons/SRK5(v1).svg rename to static/ssd-icons/SRK5(v1).svg diff --git a/public/ssd-icons/SRK5(v2).svg b/static/ssd-icons/SRK5(v2).svg similarity index 100% rename from public/ssd-icons/SRK5(v2).svg rename to static/ssd-icons/SRK5(v2).svg diff --git a/public/ssd-icons/Salvo Missiles Magazines (2).svg b/static/ssd-icons/Salvo Missiles Magazines (2).svg similarity index 100% rename from public/ssd-icons/Salvo Missiles Magazines (2).svg rename to static/ssd-icons/Salvo Missiles Magazines (2).svg diff --git a/public/ssd-icons/Salvo Missiles Magazines (3).svg b/static/ssd-icons/Salvo Missiles Magazines (3).svg similarity index 100% rename from public/ssd-icons/Salvo Missiles Magazines (3).svg rename to static/ssd-icons/Salvo Missiles Magazines (3).svg diff --git a/public/ssd-icons/Salvo Missiles Magazines (4).svg b/static/ssd-icons/Salvo Missiles Magazines (4).svg similarity index 100% rename from public/ssd-icons/Salvo Missiles Magazines (4).svg rename to static/ssd-icons/Salvo Missiles Magazines (4).svg diff --git a/public/ssd-icons/Salvo Missiles Magazines (5).svg b/static/ssd-icons/Salvo Missiles Magazines (5).svg similarity index 100% rename from public/ssd-icons/Salvo Missiles Magazines (5).svg rename to static/ssd-icons/Salvo Missiles Magazines (5).svg diff --git a/public/ssd-icons/Salvo Missiles Magazines (6).svg b/static/ssd-icons/Salvo Missiles Magazines (6).svg similarity index 100% rename from public/ssd-icons/Salvo Missiles Magazines (6).svg rename to static/ssd-icons/Salvo Missiles Magazines (6).svg diff --git a/public/ssd-icons/Salvo Missiles Magazines.svg b/static/ssd-icons/Salvo Missiles Magazines.svg similarity index 100% rename from public/ssd-icons/Salvo Missiles Magazines.svg rename to static/ssd-icons/Salvo Missiles Magazines.svg diff --git a/public/ssd-icons/Salvo Missiles.svg b/static/ssd-icons/Salvo Missiles.svg similarity index 100% rename from public/ssd-icons/Salvo Missiles.svg rename to static/ssd-icons/Salvo Missiles.svg diff --git a/public/ssd-icons/SensorsLVL1.svg b/static/ssd-icons/SensorsLVL1.svg similarity index 100% rename from public/ssd-icons/SensorsLVL1.svg rename to static/ssd-icons/SensorsLVL1.svg diff --git a/public/ssd-icons/SensorsLVL2.svg b/static/ssd-icons/SensorsLVL2.svg similarity index 100% rename from public/ssd-icons/SensorsLVL2.svg rename to static/ssd-icons/SensorsLVL2.svg diff --git a/public/ssd-icons/Shroud.svg b/static/ssd-icons/Shroud.svg similarity index 100% rename from public/ssd-icons/Shroud.svg rename to static/ssd-icons/Shroud.svg diff --git a/public/ssd-icons/StandardDrives (2).svg b/static/ssd-icons/StandardDrives (2).svg similarity index 100% rename from public/ssd-icons/StandardDrives (2).svg rename to static/ssd-icons/StandardDrives (2).svg diff --git a/public/ssd-icons/StandardDrives (3).svg b/static/ssd-icons/StandardDrives (3).svg similarity index 100% rename from public/ssd-icons/StandardDrives (3).svg rename to static/ssd-icons/StandardDrives (3).svg diff --git a/public/ssd-icons/StandardDrives (4).svg b/static/ssd-icons/StandardDrives (4).svg similarity index 100% rename from public/ssd-icons/StandardDrives (4).svg rename to static/ssd-icons/StandardDrives (4).svg diff --git a/public/ssd-icons/StandardDrives (5).svg b/static/ssd-icons/StandardDrives (5).svg similarity index 100% rename from public/ssd-icons/StandardDrives (5).svg rename to static/ssd-icons/StandardDrives (5).svg diff --git a/public/ssd-icons/StandardDrives (6).svg b/static/ssd-icons/StandardDrives (6).svg similarity index 100% rename from public/ssd-icons/StandardDrives (6).svg rename to static/ssd-icons/StandardDrives (6).svg diff --git a/public/ssd-icons/StandardDrives (7).svg b/static/ssd-icons/StandardDrives (7).svg similarity index 100% rename from public/ssd-icons/StandardDrives (7).svg rename to static/ssd-icons/StandardDrives (7).svg diff --git a/public/ssd-icons/StandardDrives (8).svg b/static/ssd-icons/StandardDrives (8).svg similarity index 100% rename from public/ssd-icons/StandardDrives (8).svg rename to static/ssd-icons/StandardDrives (8).svg diff --git a/public/ssd-icons/StandardDrives.svg b/static/ssd-icons/StandardDrives.svg similarity index 100% rename from public/ssd-icons/StandardDrives.svg rename to static/ssd-icons/StandardDrives.svg diff --git a/public/ssd-icons/StandardGraser1.svg b/static/ssd-icons/StandardGraser1.svg similarity index 100% rename from public/ssd-icons/StandardGraser1.svg rename to static/ssd-icons/StandardGraser1.svg diff --git a/public/ssd-icons/StandardGraser2.svg b/static/ssd-icons/StandardGraser2.svg similarity index 100% rename from public/ssd-icons/StandardGraser2.svg rename to static/ssd-icons/StandardGraser2.svg diff --git a/public/ssd-icons/StandardGraser3.svg b/static/ssd-icons/StandardGraser3.svg similarity index 100% rename from public/ssd-icons/StandardGraser3.svg rename to static/ssd-icons/StandardGraser3.svg diff --git a/public/ssd-icons/Stealth Hull.svg b/static/ssd-icons/Stealth Hull.svg similarity index 100% rename from public/ssd-icons/Stealth Hull.svg rename to static/ssd-icons/Stealth Hull.svg diff --git a/public/ssd-icons/StealthField.svg b/static/ssd-icons/StealthField.svg similarity index 100% rename from public/ssd-icons/StealthField.svg rename to static/ssd-icons/StealthField.svg diff --git a/public/ssd-icons/Transport Craft.svg b/static/ssd-icons/Transport Craft.svg similarity index 100% rename from public/ssd-icons/Transport Craft.svg rename to static/ssd-icons/Transport Craft.svg diff --git a/public/ssd-icons/Transporter1.svg b/static/ssd-icons/Transporter1.svg similarity index 100% rename from public/ssd-icons/Transporter1.svg rename to static/ssd-icons/Transporter1.svg diff --git a/public/ssd-icons/Transporter2.svg b/static/ssd-icons/Transporter2.svg similarity index 100% rename from public/ssd-icons/Transporter2.svg rename to static/ssd-icons/Transporter2.svg diff --git a/public/ssd-icons/Transporter3.svg b/static/ssd-icons/Transporter3.svg similarity index 100% rename from public/ssd-icons/Transporter3.svg rename to static/ssd-icons/Transporter3.svg diff --git a/public/ssd-icons/Transporter4.svg b/static/ssd-icons/Transporter4.svg similarity index 100% rename from public/ssd-icons/Transporter4.svg rename to static/ssd-icons/Transporter4.svg diff --git a/public/ssd-icons/Troop Berth.svg b/static/ssd-icons/Troop Berth.svg similarity index 100% rename from public/ssd-icons/Troop Berth.svg rename to static/ssd-icons/Troop Berth.svg diff --git a/public/ssd-icons/Turret1.svg b/static/ssd-icons/Turret1.svg similarity index 100% rename from public/ssd-icons/Turret1.svg rename to static/ssd-icons/Turret1.svg diff --git a/public/ssd-icons/Turret2.svg b/static/ssd-icons/Turret2.svg similarity index 100% rename from public/ssd-icons/Turret2.svg rename to static/ssd-icons/Turret2.svg diff --git a/public/ssd-icons/TwinParticleArray.svg b/static/ssd-icons/TwinParticleArray.svg similarity index 100% rename from public/ssd-icons/TwinParticleArray.svg rename to static/ssd-icons/TwinParticleArray.svg diff --git a/public/ssd-icons/Type I Cloak.svg b/static/ssd-icons/Type I Cloak.svg similarity index 100% rename from public/ssd-icons/Type I Cloak.svg rename to static/ssd-icons/Type I Cloak.svg diff --git a/public/ssd-icons/Type II Cloak.svg b/static/ssd-icons/Type II Cloak.svg similarity index 100% rename from public/ssd-icons/Type II Cloak.svg rename to static/ssd-icons/Type II Cloak.svg diff --git a/public/ssd-icons/Type III Cloak.svg b/static/ssd-icons/Type III Cloak.svg similarity index 100% rename from public/ssd-icons/Type III Cloak.svg rename to static/ssd-icons/Type III Cloak.svg diff --git a/public/ssd-icons/Wave Gun.svg b/static/ssd-icons/Wave Gun.svg similarity index 100% rename from public/ssd-icons/Wave Gun.svg rename to static/ssd-icons/Wave Gun.svg diff --git a/public/ssd-icons/armor.svg b/static/ssd-icons/armor.svg similarity index 100% rename from public/ssd-icons/armor.svg rename to static/ssd-icons/armor.svg diff --git a/public/ssd-icons/fighter 1.svg b/static/ssd-icons/fighter 1.svg similarity index 100% rename from public/ssd-icons/fighter 1.svg rename to static/ssd-icons/fighter 1.svg diff --git a/public/ssd-icons/fighter 2.svg b/static/ssd-icons/fighter 2.svg similarity index 100% rename from public/ssd-icons/fighter 2.svg rename to static/ssd-icons/fighter 2.svg diff --git a/public/ssd-icons/fighter 3.svg b/static/ssd-icons/fighter 3.svg similarity index 100% rename from public/ssd-icons/fighter 3.svg rename to static/ssd-icons/fighter 3.svg diff --git a/public/ssd-icons/fighter 4.svg b/static/ssd-icons/fighter 4.svg similarity index 100% rename from public/ssd-icons/fighter 4.svg rename to static/ssd-icons/fighter 4.svg diff --git a/public/ssd-icons/fighter 5.svg b/static/ssd-icons/fighter 5.svg similarity index 100% rename from public/ssd-icons/fighter 5.svg rename to static/ssd-icons/fighter 5.svg diff --git a/public/ssd-icons/fighter 6.svg b/static/ssd-icons/fighter 6.svg similarity index 100% rename from public/ssd-icons/fighter 6.svg rename to static/ssd-icons/fighter 6.svg diff --git a/public/ssd-icons/fighter 7.svg b/static/ssd-icons/fighter 7.svg similarity index 100% rename from public/ssd-icons/fighter 7.svg rename to static/ssd-icons/fighter 7.svg diff --git a/public/ssd-icons/fighter 8.svg b/static/ssd-icons/fighter 8.svg similarity index 100% rename from public/ssd-icons/fighter 8.svg rename to static/ssd-icons/fighter 8.svg diff --git a/public/ssd-icons/fighter 9.svg b/static/ssd-icons/fighter 9.svg similarity index 100% rename from public/ssd-icons/fighter 9.svg rename to static/ssd-icons/fighter 9.svg diff --git a/public/ssd-icons/fighter bays (1).svg b/static/ssd-icons/fighter bays (1).svg similarity index 100% rename from public/ssd-icons/fighter bays (1).svg rename to static/ssd-icons/fighter bays (1).svg diff --git a/public/ssd-icons/fighter bays (10).svg b/static/ssd-icons/fighter bays (10).svg similarity index 100% rename from public/ssd-icons/fighter bays (10).svg rename to static/ssd-icons/fighter bays (10).svg diff --git a/public/ssd-icons/fighter bays (11).svg b/static/ssd-icons/fighter bays (11).svg similarity index 100% rename from public/ssd-icons/fighter bays (11).svg rename to static/ssd-icons/fighter bays (11).svg diff --git a/public/ssd-icons/fighter bays (12).svg b/static/ssd-icons/fighter bays (12).svg similarity index 100% rename from public/ssd-icons/fighter bays (12).svg rename to static/ssd-icons/fighter bays (12).svg diff --git a/public/ssd-icons/fighter bays (13).svg b/static/ssd-icons/fighter bays (13).svg similarity index 100% rename from public/ssd-icons/fighter bays (13).svg rename to static/ssd-icons/fighter bays (13).svg diff --git a/public/ssd-icons/fighter bays (14).svg b/static/ssd-icons/fighter bays (14).svg similarity index 100% rename from public/ssd-icons/fighter bays (14).svg rename to static/ssd-icons/fighter bays (14).svg diff --git a/public/ssd-icons/fighter bays (15).svg b/static/ssd-icons/fighter bays (15).svg similarity index 100% rename from public/ssd-icons/fighter bays (15).svg rename to static/ssd-icons/fighter bays (15).svg diff --git a/public/ssd-icons/fighter bays (16).svg b/static/ssd-icons/fighter bays (16).svg similarity index 100% rename from public/ssd-icons/fighter bays (16).svg rename to static/ssd-icons/fighter bays (16).svg diff --git a/public/ssd-icons/fighter bays (2).svg b/static/ssd-icons/fighter bays (2).svg similarity index 100% rename from public/ssd-icons/fighter bays (2).svg rename to static/ssd-icons/fighter bays (2).svg diff --git a/public/ssd-icons/fighter bays (3).svg b/static/ssd-icons/fighter bays (3).svg similarity index 100% rename from public/ssd-icons/fighter bays (3).svg rename to static/ssd-icons/fighter bays (3).svg diff --git a/public/ssd-icons/fighter bays (4).svg b/static/ssd-icons/fighter bays (4).svg similarity index 100% rename from public/ssd-icons/fighter bays (4).svg rename to static/ssd-icons/fighter bays (4).svg diff --git a/public/ssd-icons/fighter bays (5).svg b/static/ssd-icons/fighter bays (5).svg similarity index 100% rename from public/ssd-icons/fighter bays (5).svg rename to static/ssd-icons/fighter bays (5).svg diff --git a/public/ssd-icons/fighter bays (6).svg b/static/ssd-icons/fighter bays (6).svg similarity index 100% rename from public/ssd-icons/fighter bays (6).svg rename to static/ssd-icons/fighter bays (6).svg diff --git a/public/ssd-icons/fighter bays (7).svg b/static/ssd-icons/fighter bays (7).svg similarity index 100% rename from public/ssd-icons/fighter bays (7).svg rename to static/ssd-icons/fighter bays (7).svg diff --git a/public/ssd-icons/fighter bays (8).svg b/static/ssd-icons/fighter bays (8).svg similarity index 100% rename from public/ssd-icons/fighter bays (8).svg rename to static/ssd-icons/fighter bays (8).svg diff --git a/public/ssd-icons/fighter bays (9).svg b/static/ssd-icons/fighter bays (9).svg similarity index 100% rename from public/ssd-icons/fighter bays (9).svg rename to static/ssd-icons/fighter bays (9).svg diff --git a/public/ssd-icons/new1.svg b/static/ssd-icons/new1.svg similarity index 100% rename from public/ssd-icons/new1.svg rename to static/ssd-icons/new1.svg diff --git a/public/ssd-icons/new2.svg b/static/ssd-icons/new2.svg similarity index 100% rename from public/ssd-icons/new2.svg rename to static/ssd-icons/new2.svg diff --git a/public/ssd-icons/new3.svg b/static/ssd-icons/new3.svg similarity index 100% rename from public/ssd-icons/new3.svg rename to static/ssd-icons/new3.svg diff --git a/public/ssd-icons/new4.svg b/static/ssd-icons/new4.svg similarity index 100% rename from public/ssd-icons/new4.svg rename to static/ssd-icons/new4.svg diff --git a/public/ssd-icons/new5.svg b/static/ssd-icons/new5.svg similarity index 100% rename from public/ssd-icons/new5.svg rename to static/ssd-icons/new5.svg diff --git a/public/ssd-icons/new6.svg b/static/ssd-icons/new6.svg similarity index 100% rename from public/ssd-icons/new6.svg rename to static/ssd-icons/new6.svg diff --git a/public/ssd-icons/notes b/static/ssd-icons/notes similarity index 100% rename from public/ssd-icons/notes rename to static/ssd-icons/notes diff --git a/public/ssd-icons/numbers/0.svg b/static/ssd-icons/numbers/0.svg similarity index 100% rename from public/ssd-icons/numbers/0.svg rename to static/ssd-icons/numbers/0.svg diff --git a/public/ssd-icons/numbers/1.svg b/static/ssd-icons/numbers/1.svg similarity index 100% rename from public/ssd-icons/numbers/1.svg rename to static/ssd-icons/numbers/1.svg diff --git a/public/ssd-icons/numbers/2.svg b/static/ssd-icons/numbers/2.svg similarity index 100% rename from public/ssd-icons/numbers/2.svg rename to static/ssd-icons/numbers/2.svg diff --git a/public/ssd-icons/numbers/3.svg b/static/ssd-icons/numbers/3.svg similarity index 100% rename from public/ssd-icons/numbers/3.svg rename to static/ssd-icons/numbers/3.svg diff --git a/public/ssd-icons/numbers/4.svg b/static/ssd-icons/numbers/4.svg similarity index 100% rename from public/ssd-icons/numbers/4.svg rename to static/ssd-icons/numbers/4.svg diff --git a/public/ssd-icons/numbers/5.svg b/static/ssd-icons/numbers/5.svg similarity index 100% rename from public/ssd-icons/numbers/5.svg rename to static/ssd-icons/numbers/5.svg diff --git a/public/ssd-icons/numbers/6.svg b/static/ssd-icons/numbers/6.svg similarity index 100% rename from public/ssd-icons/numbers/6.svg rename to static/ssd-icons/numbers/6.svg diff --git a/public/ssd-icons/numbers/7.svg b/static/ssd-icons/numbers/7.svg similarity index 100% rename from public/ssd-icons/numbers/7.svg rename to static/ssd-icons/numbers/7.svg diff --git a/public/ssd-icons/numbers/8.svg b/static/ssd-icons/numbers/8.svg similarity index 100% rename from public/ssd-icons/numbers/8.svg rename to static/ssd-icons/numbers/8.svg diff --git a/public/ssd-icons/numbers/9.svg b/static/ssd-icons/numbers/9.svg similarity index 100% rename from public/ssd-icons/numbers/9.svg rename to static/ssd-icons/numbers/9.svg diff --git a/public/ssd-icons/old1.svg b/static/ssd-icons/old1.svg similarity index 100% rename from public/ssd-icons/old1.svg rename to static/ssd-icons/old1.svg diff --git a/public/ssd-icons/old2.svg b/static/ssd-icons/old2.svg similarity index 100% rename from public/ssd-icons/old2.svg rename to static/ssd-icons/old2.svg diff --git a/public/ssd-icons/old3.svg b/static/ssd-icons/old3.svg similarity index 100% rename from public/ssd-icons/old3.svg rename to static/ssd-icons/old3.svg diff --git a/public/ssd-icons/old4.svg b/static/ssd-icons/old4.svg similarity index 100% rename from public/ssd-icons/old4.svg rename to static/ssd-icons/old4.svg diff --git a/public/ssd-icons/old5.svg b/static/ssd-icons/old5.svg similarity index 100% rename from public/ssd-icons/old5.svg rename to static/ssd-icons/old5.svg diff --git a/public/ssd-icons/old6.svg b/static/ssd-icons/old6.svg similarity index 100% rename from public/ssd-icons/old6.svg rename to static/ssd-icons/old6.svg diff --git a/public/ssd-icons/unlabeled (1).svg b/static/ssd-icons/unlabeled (1).svg similarity index 100% rename from public/ssd-icons/unlabeled (1).svg rename to static/ssd-icons/unlabeled (1).svg diff --git a/public/ssd-icons/unlabeled (3).svg b/static/ssd-icons/unlabeled (3).svg similarity index 100% rename from public/ssd-icons/unlabeled (3).svg rename to static/ssd-icons/unlabeled (3).svg diff --git a/public/ssd-icons/unlabeled (4).svg b/static/ssd-icons/unlabeled (4).svg similarity index 100% rename from public/ssd-icons/unlabeled (4).svg rename to static/ssd-icons/unlabeled (4).svg diff --git a/public/standard-drive.svg b/static/standard-drive.svg similarity index 100% rename from public/standard-drive.svg rename to static/standard-drive.svg diff --git a/svelte.config.js b/svelte.config.js index bc88df1..0c369ac 100644 --- a/svelte.config.js +++ b/svelte.config.js @@ -5,12 +5,7 @@ import analyze from 'rollup-plugin-analyzer'; export default { kit: { // hydrate the
element in src/app.html - target: '#svelte', adapter: adapter(), - files: { - lib: './src', - assets: './public', - }, vite: { build: { rollupOptions: { From b51b27e43b7635aa688c9123e2a2d5c39dbfc138 Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Mon, 28 Feb 2022 15:25:34 -0500 Subject: [PATCH 03/51] put a minimal working App.svelte --- src/lib/components/App-original.svelte | 188 +++++++++++++++++++++++++ src/lib/components/App.svelte | 181 +----------------------- src/routes/index.svelte | 7 - 3 files changed, 189 insertions(+), 187 deletions(-) create mode 100644 src/lib/components/App-original.svelte diff --git a/src/lib/components/App-original.svelte b/src/lib/components/App-original.svelte new file mode 100644 index 0000000..9de857f --- /dev/null +++ b/src/lib/components/App-original.svelte @@ -0,0 +1,188 @@ + +
+ + + +{#if show_notes} + +{/if} + +{#if output === "json"} + set_output(null)} /> +{:else if output === "print"} + +{:else} +
+ + + + + + +
+ + + + + + + {#each weapons as weapon (weapon.id)} + + {/each} +
+ + +
+ +{/if} + + + + diff --git a/src/lib/components/App.svelte b/src/lib/components/App.svelte index 9de857f..624dfa9 100644 --- a/src/lib/components/App.svelte +++ b/src/lib/components/App.svelte @@ -1,188 +1,9 @@ -
- - - -{#if show_notes} - -{/if} - -{#if output === "json"} - set_output(null)} /> -{:else if output === "print"} - -{:else} -
- - - - - - -
- - - - - - - {#each weapons as weapon (weapon.id)} - - {/each} -
- - -
- -{/if} diff --git a/src/routes/index.svelte b/src/routes/index.svelte index 6bc1d4b..cb657b4 100644 --- a/src/routes/index.svelte +++ b/src/routes/index.svelte @@ -1,16 +1,9 @@ - - {#each stylesheets as href (href)} - - {/each} - - From 0a8ed55af567c1558e4b26078c9abb3fe4d4c1ee Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Mon, 28 Feb 2022 15:46:57 -0500 Subject: [PATCH 04/51] add the ribbon and the header --- src/lib/components/App-original.svelte | 4 ---- src/lib/components/App.svelte | 5 ++++- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/src/lib/components/App-original.svelte b/src/lib/components/App-original.svelte index 9de857f..136740d 100644 --- a/src/lib/components/App-original.svelte +++ b/src/lib/components/App-original.svelte @@ -1,6 +1,3 @@ - -
-
+ diff --git a/src/lib/components/Hull/Streamlining/index.svelte b/src/lib/components/Hull/Streamlining/index.svelte index 3dcb9e8..cccb2b1 100644 --- a/src/lib/components/Hull/Streamlining/index.svelte +++ b/src/lib/components/Hull/Streamlining/index.svelte @@ -1,38 +1,41 @@ -
- - - +
+ + +
- - - - + diff --git a/src/lib/components/Hull/index.svelte b/src/lib/components/Hull/index.svelte index 20d34d4..c74b6e9 100644 --- a/src/lib/components/Hull/index.svelte +++ b/src/lib/components/Hull/index.svelte @@ -1,51 +1,51 @@
- - + - + - + + - + - + - - - +
diff --git a/src/lib/components/Notes.svelte b/src/lib/components/Notes.svelte index 5eb79ff..03d1dbb 100644 --- a/src/lib/components/Notes.svelte +++ b/src/lib/components/Notes.svelte @@ -24,9 +24,9 @@

- The app is mostly developed for Firefox. I also check as much as I can - that I don't mess things too badly on Chrome. For the other browsers... - caveat emptor. + The app is mostly developed for Firefox. I also check as much as I can that + I don't mess things too badly on Chrome. For the other browsers... caveat + emptor.

diff --git a/src/lib/components/Output/Json.svelte b/src/lib/components/Output/Json.svelte index b7d86c1..6bae267 100644 --- a/src/lib/components/Output/Json.svelte +++ b/src/lib/components/Output/Json.svelte @@ -5,13 +5,13 @@ + diff --git a/src/lib/components/Output/Print/Weapons/Beam/index.svelte b/src/lib/components/Output/Print/Weapons/Beam/index.svelte index 1ffdc98..899a8bd 100644 --- a/src/lib/components/Output/Print/Weapons/Beam/index.svelte +++ b/src/lib/components/Output/Print/Weapons/Beam/index.svelte @@ -1,13 +1,13 @@

- - {weapon_class} + + {weapon_class}
diff --git a/src/lib/components/Output/Print/Weapons/index.svelte b/src/lib/components/Output/Print/Weapons/index.svelte index b8e1e85..edb7d6f 100644 --- a/src/lib/components/Output/Print/Weapons/index.svelte +++ b/src/lib/components/Output/Print/Weapons/index.svelte @@ -1,21 +1,17 @@
-
- {#each beams as beam} - - {/each} + {#each beams as beam} + + {/each}
- -
diff --git a/src/lib/components/Output/Print/sample.js b/src/lib/components/Output/Print/sample.js index 2ecdbf9..4c356b3 100644 --- a/src/lib/components/Output/Print/sample.js +++ b/src/lib/components/Output/Print/sample.js @@ -1,114 +1,108 @@ export default { - "ftl": { - "mass": 0, - "cost": 0, - "type": "standard" + ftl: { + mass: 0, + cost: 0, + type: "standard", }, - "engine": { - "mass": 40, - "cost": 80, - "rating": 6, - "advanced": false + engine: { + mass: 40, + cost: 80, + rating: 6, + advanced: false, }, - "general": { - "ship_class": "Deviant", - "name": "", - "ship_type": "Battleship", - "mass": 132, - "used_mass": 131, - "cost": 415 + general: { + ship_class: "Deviant", + name: "", + ship_type: "Battleship", + mass: 132, + used_mass: 131, + cost: 415, }, - "weaponry": { - "firecons": { - "nbr": 5, - "mass": 5, - "cost": 20 + weaponry: { + firecons: { + nbr: 5, + mass: 5, + cost: 20, }, - "weapons": [ + weapons: [ { - "weapon_type": "submunition", - "arcs": [ - "F" - ], - "mass": 1, - "cost": 3, - "id": 1 + weapon_type: "submunition", + arcs: ["F"], + mass: 1, + cost: 3, + id: 1, }, { - "weapon_type": "beam", - "weapon_class": "2", - "arcs": [ - "A", - "AS", - "FS" - ], - "mass": 2, - "cost": 6, - "id": 2 + weapon_type: "beam", + weapon_class: "2", + arcs: ["A", "AS", "FS"], + mass: 2, + cost: 6, + id: 2, }, { - "weapon_type": "pds", - "mass": 1, - "cost": 3, - "id": 3 - } + weapon_type: "pds", + mass: 1, + cost: 3, + id: 3, + }, ], - "adfc": { - "rating": 0, - "cost": 0, - "mass": 0 - } + adfc: { + rating: 0, + cost: 0, + mass: 0, + }, }, - "structure": { - "mass": 0, - "cost": 0, - "hull": { - "rating": 22, - "advanced": false, - "cost": 44, - "mass": 22 + structure: { + mass: 0, + cost: 0, + hull: { + rating: 22, + advanced: false, + cost: 44, + mass: 22, }, - "screens": { - "standard": 2, - "advanced": 1, - "cost": 105, - "mass": 35 + screens: { + standard: 2, + advanced: 1, + cost: 105, + mass: 35, }, - "armour": [ + armour: [ { - "layer": 1, - "rating": 7, - "cost": 14, - "mass": 14 + layer: 1, + rating: 7, + cost: 14, + mass: 14, }, { - "layer": 2, - "rating": 2, - "cost": 8, - "mass": 4 + layer: 2, + rating: 2, + cost: 8, + mass: 4, }, { - "layer": 3, - "rating": 0, - "cost": 0, - "mass": 0 - } - ] + layer: 3, + rating: 0, + cost: 0, + mass: 0, + }, + ], }, - "cargo": { - "space": 7, - "cost": 0, - "mass": 7 + cargo: { + space: 7, + cost: 0, + mass: 7, }, - "streamlining": { - "type": "none", - "cost": 0, - "mass": 0 + streamlining: { + type: "none", + cost: 0, + mass: 0, }, - "carrier": { - "bays": 0, - "cost": 0, - "mass": 0, - "squadrons": [] - } -} + carrier: { + bays: 0, + cost: 0, + mass: 0, + squadrons: [], + }, +}; diff --git a/src/lib/components/Output/Print/stories.js b/src/lib/components/Output/Print/stories.js index e494b3b..858e5c1 100644 --- a/src/lib/components/Output/Print/stories.js +++ b/src/lib/components/Output/Print/stories.js @@ -1,13 +1,13 @@ -import Print from './index.svelte'; -import sample from './sample'; +import Print from "./index.svelte"; +import sample from "./sample"; export default { - title: "printouts" + title: "printouts", }; export const basic = () => ({ - Component: Print, - props: { - ship: sample - } + Component: Print, + props: { + ship: sample, + }, }); diff --git a/src/lib/components/Propulsion/index.svelte b/src/lib/components/Propulsion/index.svelte index 20a2a08..26276dc 100644 --- a/src/lib/components/Propulsion/index.svelte +++ b/src/lib/components/Propulsion/index.svelte @@ -1,18 +1,14 @@ -
+ - - - - +
diff --git a/src/lib/components/Section/index.svelte b/src/lib/components/Section/index.svelte index 19f58d5..caf4f94 100644 --- a/src/lib/components/Section/index.svelte +++ b/src/lib/components/Section/index.svelte @@ -7,7 +7,6 @@ diff --git a/src/lib/components/ShipItem/index.svelte b/src/lib/components/ShipItem/index.svelte index c1e9d59..7b5f447 100644 --- a/src/lib/components/ShipItem/index.svelte +++ b/src/lib/components/ShipItem/index.svelte @@ -1,7 +1,11 @@ -
+
+
-
{mass}
-
{cost}
+
+
{mass}
+
{cost}
+
+
diff --git a/src/lib/components/ShipSpecs/Identification.svelte b/src/lib/components/ShipSpecs/Identification.svelte index 0cc0bbc..7180a1e 100644 --- a/src/lib/components/ShipSpecs/Identification.svelte +++ b/src/lib/components/ShipSpecs/Identification.svelte @@ -1,41 +1,43 @@
- + - - {#each ship_types as type (type)} - {/each} - - + {/each} + +
diff --git a/src/lib/components/ShipSpecs/index.svelte b/src/lib/components/ShipSpecs/index.svelte index 87d0d57..a564076 100644 --- a/src/lib/components/ShipSpecs/index.svelte +++ b/src/lib/components/ShipSpecs/index.svelte @@ -1,16 +1,14 @@ - - - + + diff --git a/src/lib/components/Weapon/Arcs/index.svelte b/src/lib/components/Weapon/Arcs/index.svelte index 8600deb..682bc8a 100644 --- a/src/lib/components/Weapon/Arcs/index.svelte +++ b/src/lib/components/Weapon/Arcs/index.svelte @@ -1,32 +1,32 @@ - -{#each all_arcs as arc (arc)} - click_arc(arc)} + {#each all_arcs as arc (arc)} + click_arc(arc)} /> -{/each} - - + {/each} + + diff --git a/src/lib/components/Weapon/Beam/index.svelte b/src/lib/components/Weapon/Beam/index.svelte index 6269277..b0fc2c4 100644 --- a/src/lib/components/Weapon/Beam/index.svelte +++ b/src/lib/components/Weapon/Beam/index.svelte @@ -93,7 +93,6 @@ weapon_class, arcs: cache.split(":"), }); - diff --git a/src/lib/components/Weapon/Needle/index.svelte b/src/lib/components/Weapon/Needle/index.svelte index c0d658a..dff20ee 100644 --- a/src/lib/components/Weapon/Needle/index.svelte +++ b/src/lib/components/Weapon/Needle/index.svelte @@ -1,37 +1,35 @@ - click_arc(detail)} /> + click_arc(detail)} /> - + } + diff --git a/src/lib/components/Weapon/PointDefenceSystem/index.svelte b/src/lib/components/Weapon/PointDefenceSystem/index.svelte index 27f4aa9..6c9c9ef 100644 --- a/src/lib/components/Weapon/PointDefenceSystem/index.svelte +++ b/src/lib/components/Weapon/PointDefenceSystem/index.svelte @@ -1,2 +1 @@ - diff --git a/src/lib/components/Weapon/Scattergun/index.svelte b/src/lib/components/Weapon/Scattergun/index.svelte index de8a6e0..8910b00 100644 --- a/src/lib/components/Weapon/Scattergun/index.svelte +++ b/src/lib/components/Weapon/Scattergun/index.svelte @@ -1,2 +1 @@ - diff --git a/src/lib/components/Weapon/Submunition/index.svelte b/src/lib/components/Weapon/Submunition/index.svelte index e8ceb4b..27174cb 100644 --- a/src/lib/components/Weapon/Submunition/index.svelte +++ b/src/lib/components/Weapon/Submunition/index.svelte @@ -1,37 +1,35 @@ - click_arc(detail)} /> + click_arc(detail)} /> - + } + diff --git a/src/lib/components/Weapon/index.svelte b/src/lib/components/Weapon/index.svelte index df422ee..fea53a2 100644 --- a/src/lib/components/Weapon/index.svelte +++ b/src/lib/components/Weapon/index.svelte @@ -56,7 +56,6 @@ ...detail, }); }; - diff --git a/src/lib/components/Weaponry/ADFC/index.svelte b/src/lib/components/Weaponry/ADFC/index.svelte index 4a4e641..d574045 100644 --- a/src/lib/components/Weaponry/ADFC/index.svelte +++ b/src/lib/components/Weaponry/ADFC/index.svelte @@ -4,7 +4,6 @@ - diff --git a/src/lib/components/Weaponry/AddWeapon/index.svelte b/src/lib/components/Weaponry/AddWeapon/index.svelte index f6e66ba..6cfe6c2 100644 --- a/src/lib/components/Weaponry/AddWeapon/index.svelte +++ b/src/lib/components/Weaponry/AddWeapon/index.svelte @@ -23,5 +23,4 @@ export let ship = getContext("ship"); const add_weapon = () => ship?.dispatch_action("add_weapon", weapon_type); - diff --git a/src/lib/components/Weapons/Add.svelte b/src/lib/components/Weapons/Add.svelte index 6bf67b6..8cf4bf1 100644 --- a/src/lib/components/Weapons/Add.svelte +++ b/src/lib/components/Weapons/Add.svelte @@ -1,202 +1,194 @@ - +
- - - + - + - + - -{#each arcs as arc (arc)} - + {#each arcs as arc (arc)} + click_arc(arc)} - /> -{/each} + on:click={() => click_arc(arc)} + /> + {/each} + - - - -
{weapon.cost}
-
{weapon.mass}
- +
{weapon.cost}
+
{weapon.mass}
diff --git a/src/lib/components/Weapons/Arc.svelte b/src/lib/components/Weapons/Arc.svelte index 792a068..47a73a0 100644 --- a/src/lib/components/Weapons/Arc.svelte +++ b/src/lib/components/Weapons/Arc.svelte @@ -1,50 +1,50 @@ - - - - - - diff --git a/src/lib/components/Weapons/stories.js b/src/lib/components/Weapons/stories.js index 4f49d42..f3923fe 100644 --- a/src/lib/components/Weapons/stories.js +++ b/src/lib/components/Weapons/stories.js @@ -1,10 +1,9 @@ -import AddWeapon from './Add.svelte'; +import AddWeapon from "./Add.svelte"; export default { - title: "add weapon", + title: "add weapon", }; export const beam = () => ({ - Component: AddWeapon, + Component: AddWeapon, }); - diff --git a/src/lib/style/index.css b/src/lib/style/index.css new file mode 100644 index 0000000..2717525 --- /dev/null +++ b/src/lib/style/index.css @@ -0,0 +1,4 @@ +:root { + --main-font-family: "Dosis", -apple-system, BlinkMacSystemFont, "Segoe UI", + Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; +} diff --git a/src/lib/style/index.js b/src/lib/style/index.js new file mode 100644 index 0000000..53d4749 --- /dev/null +++ b/src/lib/style/index.js @@ -0,0 +1,4 @@ +import "../../../static/fonts/faktos.css"; +import "../../../static/fonts/dosis/dosis.css"; +import "../../../static/global.css"; +import "./index.css"; diff --git a/src/routes/index.svelte b/src/routes/index.svelte index cb657b4..c4ec81d 100644 --- a/src/routes/index.svelte +++ b/src/routes/index.svelte @@ -1,9 +1,9 @@ diff --git a/svelte.config.js b/svelte.config.js index 0c369ac..c3bd805 100644 --- a/svelte.config.js +++ b/svelte.config.js @@ -1,17 +1,18 @@ -import adapter from '@sveltejs/adapter-static'; -import analyze from 'rollup-plugin-analyzer'; +import adapter from "@sveltejs/adapter-static"; +import analyze from "rollup-plugin-analyzer"; /** @type {import('@sveltejs/kit').Config} */ export default { - kit: { - // hydrate the
element in src/app.html - adapter: adapter(), - vite: { - build: { + kit: { + // hydrate the
element in src/app.html + adapter: adapter(), + vite: { + build: { rollupOptions: { - plugins: [ analyze() ], -// external: ['updux','@yanick/updeep'] - } - } - }}, + plugins: [analyze()], + // external: ['updux','@yanick/updeep'] + }, + }, + }, + }, }; From 4d7e033f518ea1da3595142b7e4249d6535b0145 Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Tue, 1 Mar 2022 14:01:37 -0500 Subject: [PATCH 06/51] create reqs dux --- src/lib/shipDux/reqs.js | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 src/lib/shipDux/reqs.js diff --git a/src/lib/shipDux/reqs.js b/src/lib/shipDux/reqs.js new file mode 100644 index 0000000..171e1a0 --- /dev/null +++ b/src/lib/shipDux/reqs.js @@ -0,0 +1,9 @@ +import {Updux} from "updux"; + +const dux = new Updux({ + initial: { + cost: 0, mass: 0 + }, +}); + +export default dux; From 0acce21e2aa0667d2af29a9a83b9d18924b56bf5 Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Tue, 1 Mar 2022 17:13:05 -0500 Subject: [PATCH 07/51] identification ui --- package.json | 3 +- src/dux/index.js | 2 - .../Identification.stories.svelte | 28 +++++++++++++ .../ShipEdit/Identification/index.svelte | 39 +++++++++++++++++++ .../ShipEdit/Identification/shipTypes.js} | 3 +- src/lib/components/ShipSpecs/index.svelte | 6 --- src/lib/shipDux/engine.js | 28 +++++++++++++ src/lib/shipDux/index.js | 12 ++++++ 8 files changed, 109 insertions(+), 12 deletions(-) create mode 100644 src/lib/components/ShipEdit/Identification/Identification.stories.svelte create mode 100644 src/lib/components/ShipEdit/Identification/index.svelte rename src/{dux/ship_types.js => lib/components/ShipEdit/Identification/shipTypes.js} (93%) create mode 100644 src/lib/shipDux/engine.js create mode 100644 src/lib/shipDux/index.js diff --git a/package.json b/package.json index 2a98b5d..e40e34c 100644 --- a/package.json +++ b/package.json @@ -35,14 +35,13 @@ "@storybook/addon-svelte-csf": "^1.1.0", "@storybook/svelte": "^6.4.19", "@sveltejs/adapter-node": "^1.0.0-next.0", - "@yanick/updeep": "link:/home/yanick/work/javascript/updeep", "lodash": "^4.17.21", "redux": "^4.1.2", "reselect": "^4.1.5", "rollup-plugin-analyzer": "^4.0.0", "svelte-knobby": "^0.3.4", "ts-action": "^11.0.0", - "updux": "link:/home/yanick/work/javascript/updux/", + "updux": "link:/home/yanick/work/javascript/updux-js/", "webpack": "5" }, "prettier": { diff --git a/src/dux/index.js b/src/dux/index.js index 3565298..8d582ef 100644 --- a/src/dux/index.js +++ b/src/dux/index.js @@ -36,8 +36,6 @@ const initial = { }, }; -console.log(Updux); - const dux = new Updux({ subduxes: { ftl, engine, weaponry, structure, cargo, streamlining, carrier }, initial diff --git a/src/lib/components/ShipEdit/Identification/Identification.stories.svelte b/src/lib/components/ShipEdit/Identification/Identification.stories.svelte new file mode 100644 index 0000000..49bf570 --- /dev/null +++ b/src/lib/components/ShipEdit/Identification/Identification.stories.svelte @@ -0,0 +1,28 @@ + + + + + + + diff --git a/src/lib/components/ShipEdit/Identification/index.svelte b/src/lib/components/ShipEdit/Identification/index.svelte new file mode 100644 index 0000000..0c57162 --- /dev/null +++ b/src/lib/components/ShipEdit/Identification/index.svelte @@ -0,0 +1,39 @@ +
+ + + + + +
+ + + + diff --git a/src/dux/ship_types.js b/src/lib/components/ShipEdit/Identification/shipTypes.js similarity index 93% rename from src/dux/ship_types.js rename to src/lib/components/ShipEdit/Identification/shipTypes.js index f37b43b..038da4f 100644 --- a/src/dux/ship_types.js +++ b/src/lib/components/ShipEdit/Identification/shipTypes.js @@ -20,7 +20,6 @@ const ship_types = [ { name: "Attack Carrier", mass: [150, 300], abbrev: "CVA", carrier: true }, ]; -export function candidate_ship_types(mass = 0, carrier = false) { - console.log({carrier}); +export function candidateShipTypes(mass = 0, carrier = false) { return ship_types.filter((c) => carrier == !!c.carrier).filter((c) => c.mass[0] <= mass).filter((c) => c.mass[1] >= mass); } diff --git a/src/lib/components/ShipSpecs/index.svelte b/src/lib/components/ShipSpecs/index.svelte index a564076..af4d310 100644 --- a/src/lib/components/ShipSpecs/index.svelte +++ b/src/lib/components/ShipSpecs/index.svelte @@ -6,9 +6,3 @@ import Identification from "./Identification.svelte"; import ShipCost from "./ShipCost.svelte"; - - diff --git a/src/lib/shipDux/engine.js b/src/lib/shipDux/engine.js new file mode 100644 index 0000000..ed14366 --- /dev/null +++ b/src/lib/shipDux/engine.js @@ -0,0 +1,28 @@ +import {Updux} from "updux"; +import u from 'updeep'; + +import reqs from './reqs.js'; + +const dux = new Updux({ + subduxes: { reqs }, + initial: { + rating: 1, + advanced: false, + }, + actions: { + setEngine: null, + setEngineReqs: null, + } +}); + +dux.addMutation('setEngine', changes => u(changes) ); +dux.addMutation('setEngineReqs', reqs => u({reqs}) ); + +export function calcDriveReqs(shipMass,rating,advanced=false) { + const mass = Math.ceil(rating * 0.05 * shipMass); + const cost = mass * ( advanced ? 3 : 2 ); + + return { mass, cost }; +} + +export default dux; diff --git a/src/lib/shipDux/index.js b/src/lib/shipDux/index.js new file mode 100644 index 0000000..1b63cb1 --- /dev/null +++ b/src/lib/shipDux/index.js @@ -0,0 +1,12 @@ +import Updux from "updux"; + +import engine from './engine.js'; + +const dux = new Updux({ + subduxes: { + engine, + }, + +}); + +export default dux; From 4a7877c4336b0c16de60fc04862e6e02d2378aa3 Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Tue, 1 Mar 2022 19:14:01 -0500 Subject: [PATCH 08/51] identification store --- .storybook/main.js | 1 + fake/app/env.js | 1 + src/dux/index.js | 138 +++++++++--------- src/lib/components/Field/index.svelte | 2 +- .../Identification.stories.svelte | 8 +- .../ShipEdit/Identification/index.svelte | 29 ++-- .../ShipEdit/Identification/shipTypes.js | 5 +- .../ShipEdit/ShipEdit.stories.svelte | 21 +++ src/lib/components/ShipEdit/index.svelte | 12 ++ .../ShipSpecs/Identification.svelte | 49 ------- src/lib/shipDux/engine.js | 36 ++--- src/lib/shipDux/identification.js | 20 +++ src/lib/shipDux/index.js | 17 ++- src/lib/shipDux/reqs.js | 9 +- src/lib/store/ship.js | 32 ++++ 15 files changed, 212 insertions(+), 168 deletions(-) create mode 100644 fake/app/env.js create mode 100644 src/lib/components/ShipEdit/ShipEdit.stories.svelte create mode 100644 src/lib/components/ShipEdit/index.svelte delete mode 100644 src/lib/components/ShipSpecs/Identification.svelte create mode 100644 src/lib/shipDux/identification.js create mode 100644 src/lib/store/ship.js diff --git a/.storybook/main.js b/.storybook/main.js index 144e24b..1a51bb1 100644 --- a/.storybook/main.js +++ b/.storybook/main.js @@ -27,6 +27,7 @@ module.exports = { $app: path.resolve("./fake/app"), "\\$lib": path.resolve(__dirname, "../src/lib/"), $lib: path.resolve(__dirname, "../src/lib/"), + "\\$app/env": path.resolve(__dirname, "../fake/app/env.js"), }, }, }; diff --git a/fake/app/env.js b/fake/app/env.js new file mode 100644 index 0000000..43dac6b --- /dev/null +++ b/fake/app/env.js @@ -0,0 +1 @@ +export const browser = true; diff --git a/src/dux/index.js b/src/dux/index.js index 8d582ef..204169d 100644 --- a/src/dux/index.js +++ b/src/dux/index.js @@ -5,15 +5,15 @@ import { createSelector } from "reselect"; import ftl from "./ftl"; import engine, { calc_drive_reqs } from "./engine"; -import weaponry from './weaponry'; +import weaponry from "./weaponry"; import { calc_ftl_reqs } from "./ftl/rules"; import { calc_ship_req } from "./utils"; -import { candidate_ship_types } from './ship_types'; -import structure from './structure'; -import cargo from './cargo'; -import streamlining from './streamlining'; -import carrier from './carrier'; -import { ceil } from './utils'; +import { candidate_ship_types } from "./ship_types"; +import structure from "./structure"; +import cargo from "./cargo"; +import streamlining from "./streamlining"; +import carrier from "./carrier"; +import { ceil } from "./utils"; const set_ship_mass = action("set_ship_mass", payload()); const set_name = action("set_name", payload()); @@ -21,29 +21,29 @@ const set_name = action("set_name", payload()); const set_ship_reqs = action("set_ship_reqs", payload()); const set_hull = action("set_hull", payload()); -const set_ship_type = action('set_ship_type',payload()); +const set_ship_type = action("set_ship_type", payload()); -const reset = action('reset' ); +const reset = action("reset"); const initial = { - general: { - ship_class: "", - name: "", - ship_type: "", - mass: 10, - used_mass: 0, - cost: 10, - }, - }; + general: { + ship_class: "", + name: "", + ship_type: "", + mass: 10, + used_mass: 0, + cost: 10, + }, +}; const dux = new Updux({ subduxes: { ftl, engine, weaponry, structure, cargo, streamlining, carrier }, - initial + initial, }); -dux.addMutation( reset, () => () => initial ); +dux.addMutation(reset, () => () => initial); -dux.addMutation(set_hull, ({rating}) => (state) => { +dux.addMutation(set_hull, ({ rating }) => (state) => { return u.updateIn("structure.hull", { cost: 2 * rating, rating, @@ -53,8 +53,8 @@ dux.addMutation(set_hull, ({rating}) => (state) => { dux.addMutation(set_ship_mass, (mass) => u.updateIn("general", { mass })); dux.addMutation(set_name, (name) => u.updateIn("general", { name })); -dux.addMutation( action('set_ship_class',payload() ), - ship_class => u.updateIn('general',{ship_class}) +dux.addMutation(action("set_ship_class", payload()), (ship_class) => + u.updateIn("general", { ship_class }) ); dux.addMutation(set_ship_reqs, ({ cost, mass: used_mass }) => @@ -68,71 +68,73 @@ dux.addSubscription((store) => dux.addSubscription((store) => createSelector( - store => store.general.mass, - store => store.streamlining.type, - (ship_mass, streamlining ) => { - const mass = ceil( ship_mass * ( - streamlining === 'none' ? 0 - : streamlining === 'partial' ? 5 : 10 - ) / 100 ); - const cost = 2 * mass; + (store) => store.general.mass, + (store) => store.streamlining.type, + (ship_mass, streamlining) => { + const mass = ceil( + (ship_mass * + (streamlining === "none" ? 0 : streamlining === "partial" ? 5 : 10)) / + 100 + ); + const cost = 2 * mass; - store.dispatch( dux.actions.set_streamlining_cost_mass({cost,mass}) ); - } + store.dispatch(dux.actions.set_streamlining_cost_mass({ cost, mass })); + } ) ); dux.addSubscription((store) => - createSelector( - store => store.general.mass, - store => store.general.ship_type, - store => store.carrier.bays, - (mass,type,bays) => { - console.log({bays}); - const candidates = candidate_ship_types(mass,bays > 0); + createSelector( + (store) => store.general.mass, + (store) => store.general.ship_type, + (store) => store.carrier.bays, + (mass, type, bays) => { + console.log({ bays }); + const candidates = candidate_ship_types(mass, bays > 0); - console.log({candidates}); - if( candidates.length === 0 ) return; + console.log({ candidates }); + if (candidates.length === 0) return; - if( candidates.find( ({name}) => name === type ) ) return; + if (candidates.find(({ name }) => name === type)) return; - store.dispatch( - store.actions.set_ship_type( - candidates[0].name - ) - ) - - } - ) + store.dispatch(store.actions.set_ship_type(candidates[0].name)); + } + ) ); -dux.addMutation(set_ship_type, type => u.updateIn('general.ship_type',type) ); +dux.addMutation(set_ship_type, (type) => u.updateIn("general.ship_type", type)); dux.addSubscription((store) => createSelector( [(ship) => ship.general.mass, (ship) => ship.ftl.type], (ship_mass, type) => - store.dispatch(ftl.actions.set_ftl_reqs(calc_ftl_reqs(type,ship_mass))) + store.dispatch(ftl.actions.set_ftl_reqs(calc_ftl_reqs(type, ship_mass))) ) ); -dux.addSubscription( store => createSelector( - ship => ship.general.mass, - ship => ship.structure.screens.standard, - ship => ship.structure.screens.advanced, - (mass,standard,advanced) => { - console.log({ - mass, standard, advanced - }) - const standard_mass = standard * Math.max(3,ceil( 0.05 * mass )); - const advanced_mass = advanced * Math.max(4,ceil( 0.075 * mass )); +dux.addSubscription((store) => + createSelector( + (ship) => ship.general.mass, + (ship) => ship.structure.screens.standard, + (ship) => ship.structure.screens.advanced, + (mass, standard, advanced) => { + console.log({ + mass, + standard, + advanced, + }); + const standard_mass = standard * Math.max(3, ceil(0.05 * mass)); + const advanced_mass = advanced * Math.max(4, ceil(0.075 * mass)); - store.dispatch( dux.actions.set_screens_reqs({ - mass: standard_mass + advanced_mass, - cost: 3 * standard_mass + 4 * advanced_mass - })); + store.dispatch( + dux.actions.set_screens_reqs({ + mass: standard_mass + advanced_mass, + cost: 3 * standard_mass + 4 * advanced_mass, + }) + ); } -)); + ) +); dux.addSubscription((store) => createSelector( diff --git a/src/lib/components/Field/index.svelte b/src/lib/components/Field/index.svelte index 71657d3..764bd93 100644 --- a/src/lib/components/Field/index.svelte +++ b/src/lib/components/Field/index.svelte @@ -3,7 +3,7 @@ {/if} - +
diff --git a/src/lib/components/ShipEdit/Identification/Identification.stories.svelte b/src/lib/components/ShipEdit/Identification/Identification.stories.svelte index 49bf570..67ecb68 100644 --- a/src/lib/components/ShipEdit/Identification/Identification.stories.svelte +++ b/src/lib/components/ShipEdit/Identification/Identification.stories.svelte @@ -1,9 +1,4 @@ - + @@ -24,5 +19,4 @@ setContext("ship", { dispatch: (type, detail) => action(type)(detail), }); - diff --git a/src/lib/components/ShipEdit/Identification/index.svelte b/src/lib/components/ShipEdit/Identification/index.svelte index 0c57162..6d79133 100644 --- a/src/lib/components/ShipEdit/Identification/index.svelte +++ b/src/lib/components/ShipEdit/Identification/index.svelte @@ -1,11 +1,7 @@
- - + - {#each shipTypes as name (name)} {/each} @@ -14,20 +10,25 @@
diff --git a/src/lib/components/ShipSpecs/Identification.svelte b/src/lib/components/ShipSpecs/Identification.svelte deleted file mode 100644 index 7180a1e..0000000 --- a/src/lib/components/ShipSpecs/Identification.svelte +++ /dev/null @@ -1,49 +0,0 @@ -
- - - - - -
- - - - diff --git a/src/lib/shipDux/engine.js b/src/lib/shipDux/engine.js index ed14366..d0d4d70 100644 --- a/src/lib/shipDux/engine.js +++ b/src/lib/shipDux/engine.js @@ -1,28 +1,28 @@ -import {Updux} from "updux"; -import u from 'updeep'; +import { Updux } from "updux"; +import u from "updeep"; -import reqs from './reqs.js'; +import reqs from "./reqs.js"; const dux = new Updux({ - subduxes: { reqs }, - initial: { - rating: 1, - advanced: false, - }, - actions: { - setEngine: null, - setEngineReqs: null, - } + subduxes: { reqs }, + initial: { + rating: 1, + advanced: false, + }, + actions: { + setEngine: null, + setEngineReqs: null, + }, }); -dux.addMutation('setEngine', changes => u(changes) ); -dux.addMutation('setEngineReqs', reqs => u({reqs}) ); +dux.setMutation("setEngine", (changes) => u(changes)); +dux.setMutation("setEngineReqs", (reqs) => u({ reqs })); -export function calcDriveReqs(shipMass,rating,advanced=false) { - const mass = Math.ceil(rating * 0.05 * shipMass); - const cost = mass * ( advanced ? 3 : 2 ); +export function calcDriveReqs(shipMass, rating, advanced = false) { + const mass = Math.ceil(rating * 0.05 * shipMass); + const cost = mass * (advanced ? 3 : 2); - return { mass, cost }; + return { mass, cost }; } export default dux; diff --git a/src/lib/shipDux/identification.js b/src/lib/shipDux/identification.js new file mode 100644 index 0000000..50abc17 --- /dev/null +++ b/src/lib/shipDux/identification.js @@ -0,0 +1,20 @@ +import { Updux } from "updux"; +import u from "updeep"; + +const dux = new Updux({ + actions: { + setShipType: null, + setShipClass: null, + }, + initial: { + shipType: "", + shipClass: "", + isCarrier: false, + mass: 10, + }, +}); + +dux.setMutation("setShipType", (shipType) => u({ shipType })); +dux.setMutation("setShipClass", (shipClass) => u({ shipClass })); + +export default dux; diff --git a/src/lib/shipDux/index.js b/src/lib/shipDux/index.js index 1b63cb1..755e3e9 100644 --- a/src/lib/shipDux/index.js +++ b/src/lib/shipDux/index.js @@ -1,12 +1,17 @@ -import Updux from "updux"; +import { Updux } from "updux"; -import engine from './engine.js'; +import engine from "./engine.js"; +import identification from "./identification.js"; +import reqs from "./reqs.js"; const dux = new Updux({ - subduxes: { - engine, - }, - + subduxes: { + identification, + engine, + }, + initial: { + reqs: { cost: 0, mass: 10 }, + }, }); export default dux; diff --git a/src/lib/shipDux/reqs.js b/src/lib/shipDux/reqs.js index 171e1a0..62ea2dd 100644 --- a/src/lib/shipDux/reqs.js +++ b/src/lib/shipDux/reqs.js @@ -1,9 +1,10 @@ -import {Updux} from "updux"; +import { Updux } from "updux"; const dux = new Updux({ - initial: { - cost: 0, mass: 0 - }, + initial: { + cost: 0, + mass: 0, + }, }); export default dux; diff --git a/src/lib/store/ship.js b/src/lib/store/ship.js new file mode 100644 index 0000000..dcfbe80 --- /dev/null +++ b/src/lib/store/ship.js @@ -0,0 +1,32 @@ +import { browser } from "$app/env"; +import { readable, get } from "svelte/store"; +import { compose, applyMiddleware } from "redux"; + +import shipDux from "../shipDux/index.js"; + +let composeEnhancers = compose; + +if (browser) { + composeEnhancers = window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__; +} + +export default () => { + const duxStore = shipDux.createStore(undefined, (mw) => + composeEnhancers(applyMiddleware(mw)) + ); + + let previous; + const state = readable(duxStore.getState(), (set) => { + duxStore.subscribe(() => { + if (previous === duxStore.getState()) return; + previous = duxStore.getState(); + console.log("Setting!", previous); + set(previous); + }); + }); + + return { + dispatch: duxStore.dispatch, + state, + }; +}; From 7f037b3de923e54399144d3d947f0a68870cbf59 Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Wed, 2 Mar 2022 11:14:31 -0500 Subject: [PATCH 09/51] ShipCost component --- src/lib/components/ShipEdit/ShipCost.svelte | 86 +++++++++++++++++++++ src/lib/components/ShipEdit/index.svelte | 20 ++++- src/lib/shipDux/index.js | 8 +- 3 files changed, 109 insertions(+), 5 deletions(-) create mode 100644 src/lib/components/ShipEdit/ShipCost.svelte diff --git a/src/lib/components/ShipEdit/ShipCost.svelte b/src/lib/components/ShipEdit/ShipCost.svelte new file mode 100644 index 0000000..969b577 --- /dev/null +++ b/src/lib/components/ShipEdit/ShipCost.svelte @@ -0,0 +1,86 @@ +
+ + + + +
+ {#if withinBudget} + mass unused: {massUnused} + {:else} + excessive mass: {-massUnused} + {/if} +
+
+
+ +
+ + {cost} + +
+ + + + diff --git a/src/lib/components/ShipEdit/index.svelte b/src/lib/components/ShipEdit/index.svelte index 841b7c7..5a96ab0 100644 --- a/src/lib/components/ShipEdit/index.svelte +++ b/src/lib/components/ShipEdit/index.svelte @@ -1,12 +1,24 @@ - +
+ + + +
diff --git a/src/lib/shipDux/index.js b/src/lib/shipDux/index.js index 755e3e9..3cf5750 100644 --- a/src/lib/shipDux/index.js +++ b/src/lib/shipDux/index.js @@ -1,4 +1,5 @@ import { Updux } from "updux"; +import u from 'updeep'; import engine from "./engine.js"; import identification from "./identification.js"; @@ -10,8 +11,13 @@ const dux = new Updux({ engine, }, initial: { - reqs: { cost: 0, mass: 10 }, + reqs: { cost: 0, mass: 10, usedMass: 0 }, }, + actions: { + setShipMass: null, + } }); +dux.setMutation( 'setShipMass', mass => u({reqs: {mass}}) ); + export default dux; From 31d48d092641bf410978e3d3e11eaec4cb3a9d4f Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Wed, 2 Mar 2022 13:42:42 -0500 Subject: [PATCH 10/51] Drive UI --- .../Propulsion/Drive}/Engine.stories.svelte | 12 ++++---- .../Propulsion/Drive}/index.svelte | 7 ++--- .../ShipEdit/Propulsion/index.svelte | 11 ++++++++ src/lib/components/ShipEdit/index.svelte | 3 ++ src/lib/shipDux/engine.js | 8 +++--- src/lib/shipDux/index.js | 5 ++-- src/lib/shipDux/propulsion/drive.js | 28 +++++++++++++++++++ src/lib/shipDux/propulsion/index.js | 12 ++++++++ 8 files changed, 70 insertions(+), 16 deletions(-) rename src/lib/components/{Engine => ShipEdit/Propulsion/Drive}/Engine.stories.svelte (75%) rename src/lib/components/{Engine => ShipEdit/Propulsion/Drive}/index.svelte (83%) create mode 100644 src/lib/components/ShipEdit/Propulsion/index.svelte create mode 100644 src/lib/shipDux/propulsion/drive.js create mode 100644 src/lib/shipDux/propulsion/index.js diff --git a/src/lib/components/Engine/Engine.stories.svelte b/src/lib/components/ShipEdit/Propulsion/Drive/Engine.stories.svelte similarity index 75% rename from src/lib/components/Engine/Engine.stories.svelte rename to src/lib/components/ShipEdit/Propulsion/Drive/Engine.stories.svelte index 6000962..3e3fa70 100644 --- a/src/lib/components/Engine/Engine.stories.svelte +++ b/src/lib/components/ShipEdit/Propulsion/Drive/Engine.stories.svelte @@ -1,6 +1,6 @@
- +
@@ -22,10 +22,12 @@ import { setContext } from "svelte"; - import Engine from "./index.svelte"; + import Drive from "./index.svelte"; setContext("ship", { - dispatch: (type, detail) => action(type)(detail), + dispatch: { + setDrive: action('setDrive') + }, }); let advanced = false; diff --git a/src/lib/components/Engine/index.svelte b/src/lib/components/ShipEdit/Propulsion/Drive/index.svelte similarity index 83% rename from src/lib/components/Engine/index.svelte rename to src/lib/components/ShipEdit/Propulsion/Drive/index.svelte index c106aea..9af3248 100644 --- a/src/lib/components/Engine/index.svelte +++ b/src/lib/components/ShipEdit/Propulsion/Drive/index.svelte @@ -17,11 +17,10 @@ export let advanced = false; export let rating = 0; - const ship = getContext("ship") || { - dispatch: (...args) => console.log(args), - }; + const ship = getContext("ship"); - $: ship.dispatch("setEngine", { rating, advanced }); + console.log( ship.dispatch ) + $: ship.dispatch.setDrive({ rating, advanced }); diff --git a/src/lib/components/ShipEdit/Propulsion/index.svelte b/src/lib/components/ShipEdit/Propulsion/index.svelte index d5b446a..b0077ef 100644 --- a/src/lib/components/ShipEdit/Propulsion/index.svelte +++ b/src/lib/components/ShipEdit/Propulsion/index.svelte @@ -1,11 +1,12 @@
+
diff --git a/src/lib/shipDux/index.js b/src/lib/shipDux/index.js index e03e866..447ee88 100644 --- a/src/lib/shipDux/index.js +++ b/src/lib/shipDux/index.js @@ -4,6 +4,7 @@ import u from 'updeep'; import propulsion from "./propulsion/index.js"; import identification from "./identification.js"; import { calculateDriveReqs } from './propulsion/drive.js'; +import { ftlReqsReaction } from './propulsion/ftl.js'; const dux = new Updux({ subduxes: { @@ -21,5 +22,6 @@ const dux = new Updux({ dux.setMutation( 'setShipMass', mass => u({reqs: {mass}}) ); dux.addReaction( calculateDriveReqs ); +dux.addReaction( ftlReqsReaction ); export default dux; diff --git a/src/lib/shipDux/propulsion/ftl.js b/src/lib/shipDux/propulsion/ftl.js new file mode 100644 index 0000000..ee42eca --- /dev/null +++ b/src/lib/shipDux/propulsion/ftl.js @@ -0,0 +1,44 @@ +import { Updux } from "updux"; +import u from "updeep"; +import { createSelector } from "reselect"; + +import reqs from "../reqs.js"; + +export const ftlTypes = ["none", "standard", "advanced"]; + +const dux = new Updux({ + subduxes: { reqs }, + initial: { + type: "none", + }, + actions: { + setFtl: null, + setFtlReqs: null, + }, +}); +export default dux; + +dux.setMutation( 'setFtl', type => u({type}) ); +dux.setMutation( 'setFtlReqs', reqs => u({reqs}) ); + +export function calcFtlReqs(type,shipMass) { + if(type==="none") return { cost: 0, mass: 0 }; + + const mass = Math.ceil(shipMass / 10); + + return { + mass, + cost: mass * ( type === 'advanced' ? 3 : 2 ), + } +} + +// needs to be at the top level +export const ftlReqsReaction = store => + createSelector( + [ + (ship) => ship.propulsion.ftl.type, + (ship) => ship.reqs.mass, + ], + (type,shipMass) => + store.dispatch.setFtlReqs(calcFtlReqs(type,shipMass)) + ); diff --git a/src/lib/shipDux/propulsion/index.js b/src/lib/shipDux/propulsion/index.js index e9cb366..47d28fc 100644 --- a/src/lib/shipDux/propulsion/index.js +++ b/src/lib/shipDux/propulsion/index.js @@ -2,10 +2,11 @@ import { Updux } from "updux"; import u from 'updeep'; import drive from './drive.js'; +import ftl from './ftl.js'; const dux = new Updux({ subduxes: { - drive + drive, ftl }, }); From 70338119239d6cf30440baa39bbb0bfdf88b05fe Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Thu, 3 Mar 2022 19:45:47 -0500 Subject: [PATCH 13/51] hull component --- .../components/ShipEdit/Structure/Hull.svelte | 27 ++++++++++++++++ .../ShipEdit/Structure/index.svelte | 16 ++++++++++ src/lib/components/ShipEdit/index.svelte | 3 ++ .../Armour/Layer/index.svelte | 0 .../{Hull => Structure}/Armour/index.svelte | 0 .../{Hull => Structure}/Armour/stories.js | 0 .../{Hull => Structure}/Cargo/index.svelte | 0 .../{Hull => Structure}/Screens/index.svelte | 0 .../Streamlining/index.svelte | 0 .../{Hull => Structure}/index.svelte | 0 src/lib/shipDux/index.js | 5 +-- src/lib/shipDux/structure/hull.js | 31 +++++++++++++++++++ src/lib/shipDux/structure/index.js | 8 +++++ 13 files changed, 88 insertions(+), 2 deletions(-) create mode 100644 src/lib/components/ShipEdit/Structure/Hull.svelte create mode 100644 src/lib/components/ShipEdit/Structure/index.svelte rename src/lib/components/{Hull => Structure}/Armour/Layer/index.svelte (100%) rename src/lib/components/{Hull => Structure}/Armour/index.svelte (100%) rename src/lib/components/{Hull => Structure}/Armour/stories.js (100%) rename src/lib/components/{Hull => Structure}/Cargo/index.svelte (100%) rename src/lib/components/{Hull => Structure}/Screens/index.svelte (100%) rename src/lib/components/{Hull => Structure}/Streamlining/index.svelte (100%) rename src/lib/components/{Hull => Structure}/index.svelte (100%) create mode 100644 src/lib/shipDux/structure/hull.js create mode 100644 src/lib/shipDux/structure/index.js diff --git a/src/lib/components/ShipEdit/Structure/Hull.svelte b/src/lib/components/ShipEdit/Structure/Hull.svelte new file mode 100644 index 0000000..3f73838 --- /dev/null +++ b/src/lib/components/ShipEdit/Structure/Hull.svelte @@ -0,0 +1,27 @@ + + + + + + + + + diff --git a/src/lib/components/ShipEdit/Structure/index.svelte b/src/lib/components/ShipEdit/Structure/index.svelte new file mode 100644 index 0000000..99699f6 --- /dev/null +++ b/src/lib/components/ShipEdit/Structure/index.svelte @@ -0,0 +1,16 @@ +
+ +
+ + + + diff --git a/src/lib/components/ShipEdit/index.svelte b/src/lib/components/ShipEdit/index.svelte index c745b75..89dec7a 100644 --- a/src/lib/components/ShipEdit/index.svelte +++ b/src/lib/components/ShipEdit/index.svelte @@ -6,12 +6,15 @@ + + diff --git a/src/lib/components/Hull/Armour/Layer/index.svelte b/src/lib/components/Structure/Armour/Layer/index.svelte similarity index 100% rename from src/lib/components/Hull/Armour/Layer/index.svelte rename to src/lib/components/Structure/Armour/Layer/index.svelte diff --git a/src/lib/components/Hull/Armour/index.svelte b/src/lib/components/Structure/Armour/index.svelte similarity index 100% rename from src/lib/components/Hull/Armour/index.svelte rename to src/lib/components/Structure/Armour/index.svelte diff --git a/src/lib/components/Hull/Armour/stories.js b/src/lib/components/Structure/Armour/stories.js similarity index 100% rename from src/lib/components/Hull/Armour/stories.js rename to src/lib/components/Structure/Armour/stories.js diff --git a/src/lib/components/Hull/Cargo/index.svelte b/src/lib/components/Structure/Cargo/index.svelte similarity index 100% rename from src/lib/components/Hull/Cargo/index.svelte rename to src/lib/components/Structure/Cargo/index.svelte diff --git a/src/lib/components/Hull/Screens/index.svelte b/src/lib/components/Structure/Screens/index.svelte similarity index 100% rename from src/lib/components/Hull/Screens/index.svelte rename to src/lib/components/Structure/Screens/index.svelte diff --git a/src/lib/components/Hull/Streamlining/index.svelte b/src/lib/components/Structure/Streamlining/index.svelte similarity index 100% rename from src/lib/components/Hull/Streamlining/index.svelte rename to src/lib/components/Structure/Streamlining/index.svelte diff --git a/src/lib/components/Hull/index.svelte b/src/lib/components/Structure/index.svelte similarity index 100% rename from src/lib/components/Hull/index.svelte rename to src/lib/components/Structure/index.svelte diff --git a/src/lib/shipDux/index.js b/src/lib/shipDux/index.js index 447ee88..c3b1c69 100644 --- a/src/lib/shipDux/index.js +++ b/src/lib/shipDux/index.js @@ -5,17 +5,18 @@ import propulsion from "./propulsion/index.js"; import identification from "./identification.js"; import { calculateDriveReqs } from './propulsion/drive.js'; import { ftlReqsReaction } from './propulsion/ftl.js'; +import structure from './structure/index.js'; const dux = new Updux({ subduxes: { identification, - propulsion + propulsion, + structure }, initial: { reqs: { cost: 0, mass: 10, usedMass: 0 }, }, actions: { - setShipMass: null, } }); diff --git a/src/lib/shipDux/structure/hull.js b/src/lib/shipDux/structure/hull.js new file mode 100644 index 0000000..a91160c --- /dev/null +++ b/src/lib/shipDux/structure/hull.js @@ -0,0 +1,31 @@ +import { Updux } from "updux"; +import u from 'updeep'; + +import reqs from '../reqs.js'; + +const dux = new Updux({ + subduxes: { + reqs + }, + initial: { + rating: 0, min: 0, max: 0, + }, + actions: { + setShipMass: null, + setHull: null, + } +}); +export default dux; + +dux.setMutation( 'setHull', rating => u({rating, + reqs: { +mass: rating, cost: 2 * rating + }}) ); + +dux.setMutation( 'setShipMass', mass => state => { + let {rating} = state; + if(rating > mass) rating = mass; + const min = Math.ceil(mass/10); + if(rating < min) rating = min; + return u({max: mass, min, rating}, state); +}) diff --git a/src/lib/shipDux/structure/index.js b/src/lib/shipDux/structure/index.js new file mode 100644 index 0000000..e407a17 --- /dev/null +++ b/src/lib/shipDux/structure/index.js @@ -0,0 +1,8 @@ +import { Updux } from 'updux'; + +import hull from './hull.js'; + +const dux = new Updux({ + subduxes: { hull } +}); +export default dux; From 607106ed35706c99c198e7f587dc42c841de218a Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Thu, 3 Mar 2022 20:43:49 -0500 Subject: [PATCH 14/51] screens --- src/dux/index.js | 5 --- src/dux/structure/screens/index.js | 18 --------- .../ShipEdit/Structure/Screens.svelte | 37 +++++++++++++++++ .../ShipEdit/Structure/index.svelte | 4 +- src/lib/shipDux/index.js | 2 + src/lib/shipDux/structure/index.js | 3 +- src/lib/shipDux/structure/screens.js | 40 +++++++++++++++++++ 7 files changed, 84 insertions(+), 25 deletions(-) delete mode 100644 src/dux/structure/screens/index.js create mode 100644 src/lib/components/ShipEdit/Structure/Screens.svelte create mode 100644 src/lib/shipDux/structure/screens.js diff --git a/src/dux/index.js b/src/dux/index.js index 204169d..9d83cb5 100644 --- a/src/dux/index.js +++ b/src/dux/index.js @@ -118,11 +118,6 @@ dux.addSubscription((store) => (ship) => ship.structure.screens.standard, (ship) => ship.structure.screens.advanced, (mass, standard, advanced) => { - console.log({ - mass, - standard, - advanced, - }); const standard_mass = standard * Math.max(3, ceil(0.05 * mass)); const advanced_mass = advanced * Math.max(4, ceil(0.075 * mass)); diff --git a/src/dux/structure/screens/index.js b/src/dux/structure/screens/index.js deleted file mode 100644 index 73a4a4e..0000000 --- a/src/dux/structure/screens/index.js +++ /dev/null @@ -1,18 +0,0 @@ -import Updux from "updux"; -import { action, payload } from "ts-action"; -import u from "@yanick/updeep"; -import { createSelector } from "reselect"; - -const dux = new Updux({ - initial: { - standard: 0, advanced: 0, cost: 0, mass: 0, - } -}); - -const set_screens = action('set_screens', payload() ); -dux.addMutation(set_screens, payload => u.update(payload) ); - -const set_screens_reqs = action('set_screens_reqs', payload() ); -dux.addMutation(set_screens_reqs, payload => u.update(payload) ); - -export default dux.asDux; diff --git a/src/lib/components/ShipEdit/Structure/Screens.svelte b/src/lib/components/ShipEdit/Structure/Screens.svelte new file mode 100644 index 0000000..57aad57 --- /dev/null +++ b/src/lib/components/ShipEdit/Structure/Screens.svelte @@ -0,0 +1,37 @@ + +
+ + + + + + + +
+
+ + + + diff --git a/src/lib/components/ShipEdit/Structure/index.svelte b/src/lib/components/ShipEdit/Structure/index.svelte index 99699f6..0bfd6bf 100644 --- a/src/lib/components/ShipEdit/Structure/index.svelte +++ b/src/lib/components/ShipEdit/Structure/index.svelte @@ -1,14 +1,16 @@
+
diff --git a/src/lib/shipDux/index.js b/src/lib/shipDux/index.js index c3b1c69..4b74aab 100644 --- a/src/lib/shipDux/index.js +++ b/src/lib/shipDux/index.js @@ -6,6 +6,7 @@ import identification from "./identification.js"; import { calculateDriveReqs } from './propulsion/drive.js'; import { ftlReqsReaction } from './propulsion/ftl.js'; import structure from './structure/index.js'; +import { screenReqsReaction, screensReqsReaction } from './structure/screens.js' const dux = new Updux({ subduxes: { @@ -24,5 +25,6 @@ dux.setMutation( 'setShipMass', mass => u({reqs: {mass}}) ); dux.addReaction( calculateDriveReqs ); dux.addReaction( ftlReqsReaction ); +dux.addReaction( screenReqsReaction ); export default dux; diff --git a/src/lib/shipDux/structure/index.js b/src/lib/shipDux/structure/index.js index e407a17..a2f8b4d 100644 --- a/src/lib/shipDux/structure/index.js +++ b/src/lib/shipDux/structure/index.js @@ -1,8 +1,9 @@ import { Updux } from 'updux'; import hull from './hull.js'; +import screens from './screens.js'; const dux = new Updux({ - subduxes: { hull } + subduxes: { hull, screens } }); export default dux; diff --git a/src/lib/shipDux/structure/screens.js b/src/lib/shipDux/structure/screens.js new file mode 100644 index 0000000..49e3ed4 --- /dev/null +++ b/src/lib/shipDux/structure/screens.js @@ -0,0 +1,40 @@ +import { Updux } from "updux"; +import u from 'updeep'; +import { createSelector } from 'reselect'; + +import reqs from '../reqs.js'; + +const dux = new Updux({ + subduxes: { + reqs + }, + initial: { + standard: 0, advanced: 0, + }, + actions: { + setScreens: null, + setScreensReqs: null, + } +}); +export default dux; + +dux.setMutation('setScreens', payload => u(payload)); +dux.setMutation('setScreensReqs', reqs => u({reqs})); + +export const screenReqsReaction = store => createSelector( + (ship) => ship.reqs.mass, + (ship) => ship.structure.screens.standard, + (ship) => ship.structure.screens.advanced, + (...args) => store.dispatch.setScreensReqs(calcScreensReqs(...args)), +); + +function calcScreensReqs(mass,standard,advanced) { + + const standard_mass = standard * Math.max(3, Math.ceil(0.05 * mass)); + const advanced_mass = advanced * Math.max(4, Math.ceil(0.075 * mass)); + + return { + mass: standard_mass + advanced_mass, + cost: 3 * standard_mass + 4 * advanced_mass, + } +} From 9596ae99226193bb580c39d4d91ea5fb45e76d94 Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Fri, 4 Mar 2022 16:17:57 -0500 Subject: [PATCH 15/51] cargo --- .../ShipEdit/Structure/Cargo.svelte | 25 +++++++++++++++++++ .../ShipEdit/Structure/index.svelte | 3 +++ src/lib/shipDux/structure/cargo.js | 24 ++++++++++++++++++ src/lib/shipDux/structure/index.js | 3 ++- 4 files changed, 54 insertions(+), 1 deletion(-) create mode 100644 src/lib/components/ShipEdit/Structure/Cargo.svelte create mode 100644 src/lib/shipDux/structure/cargo.js diff --git a/src/lib/components/ShipEdit/Structure/Cargo.svelte b/src/lib/components/ShipEdit/Structure/Cargo.svelte new file mode 100644 index 0000000..6bb00eb --- /dev/null +++ b/src/lib/components/ShipEdit/Structure/Cargo.svelte @@ -0,0 +1,25 @@ + + + + + + + + + diff --git a/src/lib/components/ShipEdit/Structure/index.svelte b/src/lib/components/ShipEdit/Structure/index.svelte index 0bfd6bf..8276ea1 100644 --- a/src/lib/components/ShipEdit/Structure/index.svelte +++ b/src/lib/components/ShipEdit/Structure/index.svelte @@ -1,15 +1,18 @@
+
diff --git a/src/lib/shipDux/structure/cargo.js b/src/lib/shipDux/structure/cargo.js new file mode 100644 index 0000000..204d94b --- /dev/null +++ b/src/lib/shipDux/structure/cargo.js @@ -0,0 +1,24 @@ +import { Updux } from "updux"; +import u from 'updeep'; +import { createSelector } from 'reselect'; + +import reqs from '../reqs.js'; + +const dux = new Updux({ + subduxes: { + reqs + }, + initial: { + space: 0, + }, + actions: { + setCargo: null, + } +}); +export default dux; + +dux.setMutation('setCargo', space => u({ + space, + reqs: { mass: space } +})); + diff --git a/src/lib/shipDux/structure/index.js b/src/lib/shipDux/structure/index.js index a2f8b4d..cffeeae 100644 --- a/src/lib/shipDux/structure/index.js +++ b/src/lib/shipDux/structure/index.js @@ -2,8 +2,9 @@ import { Updux } from 'updux'; import hull from './hull.js'; import screens from './screens.js'; +import cargo from './cargo.js'; const dux = new Updux({ - subduxes: { hull, screens } + subduxes: { hull, screens, cargo } }); export default dux; From 15495ee84387c0382ddc6aabd8ac96877dea6781 Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Fri, 4 Mar 2022 16:31:05 -0500 Subject: [PATCH 16/51] streamlining --- src/dux/index.js | 16 -------- .../ShipEdit/Structure/Streamlining.svelte | 41 +++++++++++++++++++ .../ShipEdit/Structure/index.svelte | 3 ++ src/lib/shipDux/structure/index.js | 4 +- src/lib/shipDux/structure/streamlining.js | 33 +++++++++++++++ src/lib/store/ship.js | 3 +- 6 files changed, 82 insertions(+), 18 deletions(-) create mode 100644 src/lib/components/ShipEdit/Structure/Streamlining.svelte create mode 100644 src/lib/shipDux/structure/streamlining.js diff --git a/src/dux/index.js b/src/dux/index.js index 9d83cb5..86acdde 100644 --- a/src/dux/index.js +++ b/src/dux/index.js @@ -66,22 +66,6 @@ dux.addSubscription((store) => createSelector(calc_ship_req, (reqs) => store.dispatch(set_ship_reqs(reqs))) ); -dux.addSubscription((store) => - createSelector( - (store) => store.general.mass, - (store) => store.streamlining.type, - (ship_mass, streamlining) => { - const mass = ceil( - (ship_mass * - (streamlining === "none" ? 0 : streamlining === "partial" ? 5 : 10)) / - 100 - ); - const cost = 2 * mass; - - store.dispatch(dux.actions.set_streamlining_cost_mass({ cost, mass })); - } - ) -); dux.addSubscription((store) => createSelector( diff --git a/src/lib/components/ShipEdit/Structure/Streamlining.svelte b/src/lib/components/ShipEdit/Structure/Streamlining.svelte new file mode 100644 index 0000000..f610be3 --- /dev/null +++ b/src/lib/components/ShipEdit/Structure/Streamlining.svelte @@ -0,0 +1,41 @@ + + +
+ + + +
+
+
+ + + + diff --git a/src/lib/components/ShipEdit/Structure/index.svelte b/src/lib/components/ShipEdit/Structure/index.svelte index 8276ea1..b627975 100644 --- a/src/lib/components/ShipEdit/Structure/index.svelte +++ b/src/lib/components/ShipEdit/Structure/index.svelte @@ -2,6 +2,7 @@ + diff --git a/src/lib/shipDux/structure/index.js b/src/lib/shipDux/structure/index.js index cffeeae..4311ec4 100644 --- a/src/lib/shipDux/structure/index.js +++ b/src/lib/shipDux/structure/index.js @@ -3,8 +3,10 @@ import { Updux } from 'updux'; import hull from './hull.js'; import screens from './screens.js'; import cargo from './cargo.js'; +import streamlining from './streamlining.js'; const dux = new Updux({ - subduxes: { hull, screens, cargo } + subduxes: { hull, screens, cargo, streamlining } }); export default dux; + diff --git a/src/lib/shipDux/structure/streamlining.js b/src/lib/shipDux/structure/streamlining.js new file mode 100644 index 0000000..f05f09f --- /dev/null +++ b/src/lib/shipDux/structure/streamlining.js @@ -0,0 +1,33 @@ +import { Updux } from "updux"; +import u from "updeep"; + +import reqs from "../reqs.js"; +import { calculateDriveReqs } from "../propulsion/drive.js"; + +const dux = new Updux({ + subduxes: { + reqs, + }, + initial: { + type: "none", + }, + actions: { + setStreamlining: null, + }, +}); +export default dux; + +dux.setMutation("setStreamlining", ({ shipMass, type }) => + u({ + type, + reqs: calcStreamliningReqs({ shipMass, type }), + }) +); + +function calcStreamliningReqs({ shipMass, type }) { + const mass = Math.ceil( + (shipMass * (type === "none" ? 0 : type === "partial" ? 5 : 10)) / 100 + ); + + return { mass, cost: 2 * mass }; +} diff --git a/src/lib/store/ship.js b/src/lib/store/ship.js index dcfbe80..7f459d2 100644 --- a/src/lib/store/ship.js +++ b/src/lib/store/ship.js @@ -1,5 +1,5 @@ import { browser } from "$app/env"; -import { readable, get } from "svelte/store"; +import { readable, get, derived } from "svelte/store"; import { compose, applyMiddleware } from "redux"; import shipDux from "../shipDux/index.js"; @@ -28,5 +28,6 @@ export default () => { return { dispatch: duxStore.dispatch, state, + shipMass: derived( state, state => state.reqs.mass ) }; }; From 9afbd45419229faaa0f62f82830dc2bb5fe42ec5 Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Fri, 4 Mar 2022 19:10:51 -0500 Subject: [PATCH 17/51] armor --- .../ShipEdit/Structure/Armor.svelte | 41 +++++++++++++++ .../ShipEdit/Structure/Armor/Layer.svelte | 22 ++++++++ .../ShipEdit/Structure/index.svelte | 3 ++ src/lib/shipDux/structure/armor.js | 50 +++++++++++++++++++ src/lib/shipDux/structure/index.js | 3 +- src/lib/shipDux/structure/streamlining.js | 1 - 6 files changed, 118 insertions(+), 2 deletions(-) create mode 100644 src/lib/components/ShipEdit/Structure/Armor.svelte create mode 100644 src/lib/components/ShipEdit/Structure/Armor/Layer.svelte create mode 100644 src/lib/shipDux/structure/armor.js diff --git a/src/lib/components/ShipEdit/Structure/Armor.svelte b/src/lib/components/ShipEdit/Structure/Armor.svelte new file mode 100644 index 0000000..de581f2 --- /dev/null +++ b/src/lib/components/ShipEdit/Structure/Armor.svelte @@ -0,0 +1,41 @@ + +
+
+ + + +
+ +
+ {#each layers as rating,i (i)} + + {/each} +
+
+
+ + + + diff --git a/src/lib/components/ShipEdit/Structure/Armor/Layer.svelte b/src/lib/components/ShipEdit/Structure/Armor/Layer.svelte new file mode 100644 index 0000000..b6dab9e --- /dev/null +++ b/src/lib/components/ShipEdit/Structure/Armor/Layer.svelte @@ -0,0 +1,22 @@ + + + + + + + diff --git a/src/lib/components/ShipEdit/Structure/index.svelte b/src/lib/components/ShipEdit/Structure/index.svelte index b627975..f6c583e 100644 --- a/src/lib/components/ShipEdit/Structure/index.svelte +++ b/src/lib/components/ShipEdit/Structure/index.svelte @@ -1,6 +1,7 @@
+
@@ -10,12 +11,14 @@ import Hull from './Hull.svelte'; import Screens from './Screens.svelte'; import Cargo from './Cargo.svelte'; + import Armor from './Armor.svelte'; import Streamlining from './Streamlining.svelte'; export let hull = {}; export let screens = {}; export let cargo = {}; export let streamlining = {}; + export let armor = {}; diff --git a/src/lib/shipDux/structure/armor.js b/src/lib/shipDux/structure/armor.js new file mode 100644 index 0000000..9b43574 --- /dev/null +++ b/src/lib/shipDux/structure/armor.js @@ -0,0 +1,50 @@ +import { Updux } from "updux"; +import u from "updeep"; + +import reqs from "../reqs.js"; + +const dux = new Updux({ + subduxes: { + reqs, + }, + initial: { + layers: [], + }, + actions: { + setArmorLayers: null, + setArmorRating: null, + }, +}); +export default dux; + +dux.setMutation('setArmorRating', ({layer, rating}) => state => { + let layers = [ ...state.layers ].map( (v,k) => k === layer-1 ? rating : v ); + + return { layers, reqs: calcArmorReqs(layers) } +} ); + +dux.setMutation( 'setArmorLayers', nbrLayers => state => { + + let layers = [...state.layers]; + + if( nbrLayers < state.layers.length ) + layers = [ ...state.layers ].slice(0,nbrLayers); + + while( layers.length < nbrLayers ) { + layers.push(0); + } + + return { + layers, + reqs: calcArmorReqs(layers), + } +}); + +function calcArmorReqs(layers) { + const mass = 2* layers.reduce( (a,b) => a+ b,0 ); + const cost = 2* layers.map( (v,k) => v * (k+1) ).reduce( (a,b) => a+ b,0 ); + + return { + mass, cost + } +} diff --git a/src/lib/shipDux/structure/index.js b/src/lib/shipDux/structure/index.js index 4311ec4..c5fe3cb 100644 --- a/src/lib/shipDux/structure/index.js +++ b/src/lib/shipDux/structure/index.js @@ -3,10 +3,11 @@ import { Updux } from 'updux'; import hull from './hull.js'; import screens from './screens.js'; import cargo from './cargo.js'; +import armor from './armor.js'; import streamlining from './streamlining.js'; const dux = new Updux({ - subduxes: { hull, screens, cargo, streamlining } + subduxes: { hull, screens, cargo, streamlining, armor } }); export default dux; diff --git a/src/lib/shipDux/structure/streamlining.js b/src/lib/shipDux/structure/streamlining.js index f05f09f..aca39e6 100644 --- a/src/lib/shipDux/structure/streamlining.js +++ b/src/lib/shipDux/structure/streamlining.js @@ -2,7 +2,6 @@ import { Updux } from "updux"; import u from "updeep"; import reqs from "../reqs.js"; -import { calculateDriveReqs } from "../propulsion/drive.js"; const dux = new Updux({ subduxes: { From c8454ed792a444afe97619258dd338378c5673ad Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Sat, 5 Mar 2022 13:41:30 -0500 Subject: [PATCH 18/51] carrier --- .../ShipEdit/Carrier/Carrier.stories.svelte | 33 ++++++++ .../Carrier/Squadron.svelte} | 22 +++--- .../components/ShipEdit/Carrier/index.svelte | 35 +++++++++ .../Identification.stories.svelte | 2 +- src/lib/shipDux/carrier.js | 76 +++++++++++++++++++ src/lib/store/ship.js | 1 - 6 files changed, 154 insertions(+), 15 deletions(-) create mode 100644 src/lib/components/ShipEdit/Carrier/Carrier.stories.svelte rename src/lib/components/{Carrier/Squadron/index.svelte => ShipEdit/Carrier/Squadron.svelte} (52%) create mode 100644 src/lib/components/ShipEdit/Carrier/index.svelte create mode 100644 src/lib/shipDux/carrier.js diff --git a/src/lib/components/ShipEdit/Carrier/Carrier.stories.svelte b/src/lib/components/ShipEdit/Carrier/Carrier.stories.svelte new file mode 100644 index 0000000..b17359f --- /dev/null +++ b/src/lib/components/ShipEdit/Carrier/Carrier.stories.svelte @@ -0,0 +1,33 @@ + + + + + + + diff --git a/src/lib/components/Carrier/Squadron/index.svelte b/src/lib/components/ShipEdit/Carrier/Squadron.svelte similarity index 52% rename from src/lib/components/Carrier/Squadron/index.svelte rename to src/lib/components/ShipEdit/Carrier/Squadron.svelte index 7eb17ac..6f46f46 100644 --- a/src/lib/components/Carrier/Squadron/index.svelte +++ b/src/lib/components/ShipEdit/Carrier/Squadron.svelte @@ -1,4 +1,4 @@ - + + + + + {#each squadrons as squadron,id (id)} + + {/each} + + + + + diff --git a/src/lib/components/ShipEdit/Identification/Identification.stories.svelte b/src/lib/components/ShipEdit/Identification/Identification.stories.svelte index 67ecb68..a3d01ab 100644 --- a/src/lib/components/ShipEdit/Identification/Identification.stories.svelte +++ b/src/lib/components/ShipEdit/Identification/Identification.stories.svelte @@ -1,4 +1,4 @@ - + diff --git a/src/lib/shipDux/carrier.js b/src/lib/shipDux/carrier.js new file mode 100644 index 0000000..6d8d145 --- /dev/null +++ b/src/lib/shipDux/carrier.js @@ -0,0 +1,76 @@ +import { Updux } from "updux"; +import u from "updeep"; +import _ from 'lodash'; + +import reqs from "./reqs.js"; + +const dux = new Updux({ + subduxes: { reqs }, + initial: { + bays: 0, + squadrons: [], + }, + actions: { + setCarrierBays: null, + setSquadronType: null, + } +}); + +dux.setMutation( 'setCarrierBays', bays => u({bays, reqs: + calcBaysReqs(bays), + squadrons: adjustSquadrons(bays), +}) ); + +dux.setMutation('setSquadronType', ({type, id}) => state => { + + return u.updateIn(['squadrons', id-1], { + type, + reqs: squadronReqs(type) + }, state ) + +} ); + +export const squadronTypes= [ + { type: "standard", cost: 3 }, + { type: "fast", cost: 4 }, + { type: "heavy", cost: 5 }, + { type: "interceptor", cost: 3 }, + { type: "attack", cost: 4 }, + { type: "long range", cost: 4 }, + { type: "torpedo", cost: 6 }, +]; + +function squadronReqs(type) { + return { mass: 6, cost: 6 * squadronTypes.find( s => s.type === type )?.cost } +} + + +const adjustSquadrons = bays => squadrons => { + if( squadrons.length > bays ) { + squadrons = squadrons.slice(0,bays); + } + + if( squadrons.length < bays ) { + squadrons = [ ...squadrons, ..._.times( + bays - squadrons.length, () => ({ + type: squadronTypes[0].type, + reqs: { + cost: 6 * squadronTypes[0].cost, + mass: 6, + }, + }) + )]; + } + + return squadrons; + +} + +function calcBaysReqs(bays) { + return { + mass: 9 * bays, + cost: 18 * bays, + } +} + +export default dux; diff --git a/src/lib/store/ship.js b/src/lib/store/ship.js index 7f459d2..2e507f1 100644 --- a/src/lib/store/ship.js +++ b/src/lib/store/ship.js @@ -20,7 +20,6 @@ export default () => { duxStore.subscribe(() => { if (previous === duxStore.getState()) return; previous = duxStore.getState(); - console.log("Setting!", previous); set(previous); }); }); From f207fa3d3c29a0b1765c6d0e5775049f8a2da8bc Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Sun, 6 Mar 2022 14:10:44 -0500 Subject: [PATCH 19/51] carrier --- src/lib/components/ShipEdit/Identification/shipTypes.js | 4 ++-- src/lib/components/ShipEdit/index.svelte | 3 +++ src/lib/shipDux/identification.js | 6 ++++++ src/lib/shipDux/index.js | 3 ++- 4 files changed, 13 insertions(+), 3 deletions(-) diff --git a/src/lib/components/ShipEdit/Identification/shipTypes.js b/src/lib/components/ShipEdit/Identification/shipTypes.js index be32552..19ad819 100644 --- a/src/lib/components/ShipEdit/Identification/shipTypes.js +++ b/src/lib/components/ShipEdit/Identification/shipTypes.js @@ -1,5 +1,5 @@ const ship_types = [ - { name: "Scout", mass: [4, 10], abbrev: "SC" }, + { name: "Scout", mass: [0, 10], abbrev: "SC" }, { name: "Courier", mass: [4, 10], abbrev: "SC" }, { name: "Corvette", mass: [8, 16], abbrev: "CT" }, { name: "Frigate", mass: [14, 28], abbrev: "FF" }, @@ -14,7 +14,7 @@ const ship_types = [ { name: "Heavy Battleship", mass: [120, 160], abbrev: "BDN" }, { name: "Dreadnought", mass: [140, 180], abbrev: "DN" }, { name: "Superdreadnought", mass: [160, 300], abbrev: "SDN" }, - { name: "Escort Carrier", mass: [60, 140], abbrev: "CVE", carrier: true }, + { name: "Escort Carrier", mass: [0, 140], abbrev: "CVE", carrier: true }, { name: "Light Carrier", mass: [120, 180], abbrev: "CVL", carrier: true }, { name: "Heavy Carrier", mass: [160, 300], abbrev: "CVH", carrier: true }, { name: "Attack Carrier", mass: [150, 300], abbrev: "CVA", carrier: true }, diff --git a/src/lib/components/ShipEdit/index.svelte b/src/lib/components/ShipEdit/index.svelte index 89dec7a..ecfa2fd 100644 --- a/src/lib/components/ShipEdit/index.svelte +++ b/src/lib/components/ShipEdit/index.svelte @@ -8,6 +8,8 @@ + + diff --git a/src/lib/shipDux/identification.js b/src/lib/shipDux/identification.js index 50abc17..71e4085 100644 --- a/src/lib/shipDux/identification.js +++ b/src/lib/shipDux/identification.js @@ -1,10 +1,13 @@ import { Updux } from "updux"; import u from "updeep"; +import carrier from './carrier.js'; + const dux = new Updux({ actions: { setShipType: null, setShipClass: null, + setCarrierBays: carrier.actions.setCarrierBays, }, initial: { shipType: "", @@ -16,5 +19,8 @@ const dux = new Updux({ dux.setMutation("setShipType", (shipType) => u({ shipType })); dux.setMutation("setShipClass", (shipClass) => u({ shipClass })); +dux.setMutation('setCarrierBays', (bays) => u({ + isCarrier: bays > 0, +})) export default dux; diff --git a/src/lib/shipDux/index.js b/src/lib/shipDux/index.js index 4b74aab..d2a8f25 100644 --- a/src/lib/shipDux/index.js +++ b/src/lib/shipDux/index.js @@ -6,13 +6,14 @@ import identification from "./identification.js"; import { calculateDriveReqs } from './propulsion/drive.js'; import { ftlReqsReaction } from './propulsion/ftl.js'; import structure from './structure/index.js'; +import carrier from './carrier.js'; import { screenReqsReaction, screensReqsReaction } from './structure/screens.js' const dux = new Updux({ subduxes: { identification, propulsion, - structure + structure, carrier }, initial: { reqs: { cost: 0, mass: 10, usedMass: 0 }, From 161175c3c942abbefe8b3600ccad948d59ba9d09 Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Sun, 6 Mar 2022 14:29:40 -0500 Subject: [PATCH 20/51] firecons --- src/dux/index.js | 12 ------- .../ShipEdit/Weaponry/Firecons.svelte | 21 ++++++++++++ .../ShipEdit/Weaponry/Weaponry.stories.svelte | 33 +++++++++++++++++++ .../components/ShipEdit/Weaponry/index.svelte | 16 +++++++++ src/lib/shipDux/weaponry/index.js | 30 +++++++++++++++++ 5 files changed, 100 insertions(+), 12 deletions(-) create mode 100644 src/lib/components/ShipEdit/Weaponry/Firecons.svelte create mode 100644 src/lib/components/ShipEdit/Weaponry/Weaponry.stories.svelte create mode 100644 src/lib/components/ShipEdit/Weaponry/index.svelte create mode 100644 src/lib/shipDux/weaponry/index.js diff --git a/src/dux/index.js b/src/dux/index.js index 86acdde..2c234ca 100644 --- a/src/dux/index.js +++ b/src/dux/index.js @@ -129,18 +129,6 @@ dux.addSubscription((store) => ) ); -const calc_firecons_reqs = (nbr) => ({ - cost: 4 * nbr, - mass: nbr, -}); - -const set_firecons = action("set_firecons", payload()); -dux.addMutation(set_firecons, (nbr) => - u.updateIn("weaponry.firecons", { - nbr, - ...calc_firecons_reqs(nbr), - }) -); export default dux.asDux; diff --git a/src/lib/components/ShipEdit/Weaponry/Firecons.svelte b/src/lib/components/ShipEdit/Weaponry/Firecons.svelte new file mode 100644 index 0000000..24ffc9c --- /dev/null +++ b/src/lib/components/ShipEdit/Weaponry/Firecons.svelte @@ -0,0 +1,21 @@ + + + + + + + + + diff --git a/src/lib/components/ShipEdit/Weaponry/Weaponry.stories.svelte b/src/lib/components/ShipEdit/Weaponry/Weaponry.stories.svelte new file mode 100644 index 0000000..35be883 --- /dev/null +++ b/src/lib/components/ShipEdit/Weaponry/Weaponry.stories.svelte @@ -0,0 +1,33 @@ + + + + + + + diff --git a/src/lib/components/ShipEdit/Weaponry/index.svelte b/src/lib/components/ShipEdit/Weaponry/index.svelte new file mode 100644 index 0000000..18bd2c5 --- /dev/null +++ b/src/lib/components/ShipEdit/Weaponry/index.svelte @@ -0,0 +1,16 @@ +
+ +
+ + + + diff --git a/src/lib/shipDux/weaponry/index.js b/src/lib/shipDux/weaponry/index.js new file mode 100644 index 0000000..7c97c15 --- /dev/null +++ b/src/lib/shipDux/weaponry/index.js @@ -0,0 +1,30 @@ +import { Updux } from "updux"; +import u from "updeep"; + +const reqs = { cost: 0, mass: 0 }; + +const dux = new Updux({ + initial: { + firecons: { + stations: 0, + reqs, + }, + }, + actions: { + setFirecons: null, + }, +}); + +dux.setMutation("setFirecons", (stations) => + u({ + firecons: { + stations, + reqs: { + cost: 4 * stations, + mass: stations, + }, + }, + }) +); + +export default dux; From 55a9a17dc1232f66747ea8731a8d87d0f18f1056 Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Sun, 6 Mar 2022 14:49:20 -0500 Subject: [PATCH 21/51] adfc component --- src/dux/weaponry/adfc/index.js | 17 ----------------- .../components/ShipEdit/Weaponry/ADFC.svelte | 18 ++++++++++++++++++ .../components/ShipEdit/Weaponry/index.svelte | 9 ++++++++- src/lib/shipDux/weaponry/index.js | 13 +++++++++++++ 4 files changed, 39 insertions(+), 18 deletions(-) delete mode 100644 src/dux/weaponry/adfc/index.js create mode 100644 src/lib/components/ShipEdit/Weaponry/ADFC.svelte diff --git a/src/dux/weaponry/adfc/index.js b/src/dux/weaponry/adfc/index.js deleted file mode 100644 index 485557a..0000000 --- a/src/dux/weaponry/adfc/index.js +++ /dev/null @@ -1,17 +0,0 @@ -import Updux from "updux"; -import { action, payload } from "ts-action"; -import u from "@yanick/updeep"; - -const dux = new Updux({ - initial: { - rating: 0, - cost: 0, - mass: 0, - }, -}) - -dux.addMutation( action( 'set_adfc', payload() ), rating => - u.update({ rating, mass: 2 * rating, cost: 8 * rating }) -); - -export default dux.asDux; diff --git a/src/lib/components/ShipEdit/Weaponry/ADFC.svelte b/src/lib/components/ShipEdit/Weaponry/ADFC.svelte new file mode 100644 index 0000000..93da8e6 --- /dev/null +++ b/src/lib/components/ShipEdit/Weaponry/ADFC.svelte @@ -0,0 +1,18 @@ + + + + + + + diff --git a/src/lib/components/ShipEdit/Weaponry/index.svelte b/src/lib/components/ShipEdit/Weaponry/index.svelte index 18bd2c5..5167466 100644 --- a/src/lib/components/ShipEdit/Weaponry/index.svelte +++ b/src/lib/components/ShipEdit/Weaponry/index.svelte @@ -1,14 +1,21 @@
+ +
diff --git a/src/lib/shipDux/weaponry/index.js b/src/lib/shipDux/weaponry/index.js index 7c97c15..7dbf3f1 100644 --- a/src/lib/shipDux/weaponry/index.js +++ b/src/lib/shipDux/weaponry/index.js @@ -9,8 +9,10 @@ const dux = new Updux({ stations: 0, reqs, }, + adfc: { rating: 0, reqs }, }, actions: { + setADFC: null, setFirecons: null, }, }); @@ -26,5 +28,16 @@ dux.setMutation("setFirecons", (stations) => }, }) ); +dux.setMutation("setADFC", (rating) => + u({ + adfc: { + rating, + reqs: { + cost: 8 * rating, + mass: 2 * rating, + }, + }, + }) +); export default dux; From fd72aafec02e7a3a4d5b65956dea5d7508344300 Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Sun, 6 Mar 2022 17:09:01 -0500 Subject: [PATCH 22/51] trying vite for storybook... again --- .storybook/main.js | 10 +++++++++- package.json | 3 +-- src/lib/shipDux/index.js | 4 ++-- src/lib/shipDux/structure/screens.js | 2 +- 4 files changed, 13 insertions(+), 6 deletions(-) diff --git a/.storybook/main.js b/.storybook/main.js index 1a51bb1..9fa12a9 100644 --- a/.storybook/main.js +++ b/.storybook/main.js @@ -2,6 +2,7 @@ const path = require("path"); const preprocess = require("svelte-preprocess"); module.exports = { + // core: { builder: "storybook-builder-vite" }, staticDirs: ["../static", "../pictures"], stories: [ "../src/**/*.stories.mdx", @@ -9,13 +10,20 @@ module.exports = { "../src/**/stories.svelte", ], addons: [ - "@storybook/addon-links", "@storybook/addon-essentials", "@storybook/addon-svelte-csf", ], framework: "@storybook/svelte", svelteOptions: { preprocess: preprocess(), + }, + async viteFinal(config, { configType }) { + // customize the Vite config here + config.resolve.alias.$lib = path.resolve(__dirname, "../src/lib/"); + config.resolve.alias.$app = path.resolve(__dirname, "../fake/app/"); + + // return the customized config + return config; }, webpackFinal: async (config) => { return { diff --git a/package.json b/package.json index e40e34c..422941b 100644 --- a/package.json +++ b/package.json @@ -24,14 +24,13 @@ "eslint-plugin-svelte3": "^3.4.1", "prettier": "~2.5.1", "prettier-plugin-svelte": "^2.6.0", + "storybook-builder-vite": "0.1.17", "svelte": "^3.46.4", "vite": "^2.7.0" }, "type": "module", "dependencies": { - "@storybook/addon-actions": "^6.4.19", "@storybook/addon-essentials": "^6.4.19", - "@storybook/addon-links": "6.4.19", "@storybook/addon-svelte-csf": "^1.1.0", "@storybook/svelte": "^6.4.19", "@sveltejs/adapter-node": "^1.0.0-next.0", diff --git a/src/lib/shipDux/index.js b/src/lib/shipDux/index.js index d2a8f25..ede0f8c 100644 --- a/src/lib/shipDux/index.js +++ b/src/lib/shipDux/index.js @@ -7,7 +7,7 @@ import { calculateDriveReqs } from './propulsion/drive.js'; import { ftlReqsReaction } from './propulsion/ftl.js'; import structure from './structure/index.js'; import carrier from './carrier.js'; -import { screenReqsReaction, screensReqsReaction } from './structure/screens.js' +import { screensReqsReaction } from './structure/screens.js' const dux = new Updux({ subduxes: { @@ -26,6 +26,6 @@ dux.setMutation( 'setShipMass', mass => u({reqs: {mass}}) ); dux.addReaction( calculateDriveReqs ); dux.addReaction( ftlReqsReaction ); -dux.addReaction( screenReqsReaction ); +dux.addReaction( screensReqsReaction ); export default dux; diff --git a/src/lib/shipDux/structure/screens.js b/src/lib/shipDux/structure/screens.js index 49e3ed4..068e653 100644 --- a/src/lib/shipDux/structure/screens.js +++ b/src/lib/shipDux/structure/screens.js @@ -21,7 +21,7 @@ export default dux; dux.setMutation('setScreens', payload => u(payload)); dux.setMutation('setScreensReqs', reqs => u({reqs})); -export const screenReqsReaction = store => createSelector( +export const screensReqsReaction = store => createSelector( (ship) => ship.reqs.mass, (ship) => ship.structure.screens.standard, (ship) => ship.structure.screens.advanced, From b40efe242ea8405efad60c47363297f0155f5724 Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Sun, 6 Mar 2022 17:36:50 -0500 Subject: [PATCH 23/51] new weapon --- src/dux/weapons/rules.js | 65 -------------- .../ShipEdit/Weaponry/AddWeapon.svelte | 22 +++++ .../components/ShipEdit/Weaponry/index.svelte | 5 ++ src/lib/shipDux/weaponry/index.js | 3 + src/lib/shipDux/weaponry/weapons.js | 84 +++++++++++++++++++ 5 files changed, 114 insertions(+), 65 deletions(-) create mode 100644 src/lib/components/ShipEdit/Weaponry/AddWeapon.svelte create mode 100644 src/lib/shipDux/weaponry/weapons.js diff --git a/src/dux/weapons/rules.js b/src/dux/weapons/rules.js index 77d5c4d..52d0633 100644 --- a/src/dux/weapons/rules.js +++ b/src/dux/weapons/rules.js @@ -1,30 +1,4 @@ -export function weapon_cost_mass(weapon){ - let cost = 0; - let mass = 0; - - if( weapon.weapon_type === 'beam' ) { - return beam_cost_mass(weapon); - } - - if( weapon.weapon_type == 'submunition' ) { - return { mass: 1, cost: 3 }; - } - - if( weapon.weapon_type === 'pds' ) { - return { mass: 1, cost: 3 }; - } - - if( weapon.weapon_type === 'scattergun' ) { - return { mass: 1, cost: 4 }; - } - - if( weapon.weapon_type === 'needle' ) { - return { mass: 2, cost: 6 }; - } - - return { cost, mass }; -} const is_broadside = arcs => { if( arcs.length !== 4 ) return false; @@ -33,42 +7,3 @@ const is_broadside = arcs => { return !arcs.some( a => a.length === 1 ); } -function beam_cost_mass({weapon_class, arcs}) { - let mass; - if( weapon_class === 1 ) { - mass = 1; - } - - if( weapon_class == 2 ) { - mass = 2 + (arcs.length > 3 ? 1 : 0); - } - - - if( weapon_class == 3 ) { - mass = 4; - - if( is_broadside(arcs) ) { - mass += 2; - } - else { - mass += arcs.length - 1; - } - } - - if( weapon_class == 4 ) { - mass = 8; - - if( is_broadside(arcs) ) { - mass += 4; - } - else { - mass += 2*(arcs.length - 1); - } - } - - return { - mass, cost: 3 * mass - } - - -} diff --git a/src/lib/components/ShipEdit/Weaponry/AddWeapon.svelte b/src/lib/components/ShipEdit/Weaponry/AddWeapon.svelte new file mode 100644 index 0000000..b84e43a --- /dev/null +++ b/src/lib/components/ShipEdit/Weaponry/AddWeapon.svelte @@ -0,0 +1,22 @@ + + + + + + + diff --git a/src/lib/components/ShipEdit/Weaponry/index.svelte b/src/lib/components/ShipEdit/Weaponry/index.svelte index 5167466..2e5af0b 100644 --- a/src/lib/components/ShipEdit/Weaponry/index.svelte +++ b/src/lib/components/ShipEdit/Weaponry/index.svelte @@ -2,6 +2,8 @@ + + diff --git a/src/lib/components/ShipEdit/Weaponry/index.svelte b/src/lib/components/ShipEdit/Weaponry/index.svelte index 2e5af0b..d9b168b 100644 --- a/src/lib/components/ShipEdit/Weaponry/index.svelte +++ b/src/lib/components/ShipEdit/Weaponry/index.svelte @@ -4,6 +4,11 @@ + + {#each weapons as weapon (weapon.id)} + + {/each} + diff --git a/src/lib/shipDux/index.js b/src/lib/shipDux/index.js index bd20867..388af19 100644 --- a/src/lib/shipDux/index.js +++ b/src/lib/shipDux/index.js @@ -11,13 +11,13 @@ import weaponry from "./weaponry/index.js"; import { screensReqsReaction } from "./structure/screens.js"; const dux = new Updux({ - subduxes: { + subduxes: { identification, propulsion, structure, carrier, weaponry, - }, + }, initial: { reqs: { cost: 0, mass: 10, usedMass: 0 }, }, @@ -55,5 +55,4 @@ dux.addReaction( (store) => (state) => { }); - export default dux; diff --git a/src/routes/index.svelte b/src/routes/index.svelte index c4ec81d..591acee 100644 --- a/src/routes/index.svelte +++ b/src/routes/index.svelte @@ -1,9 +1,15 @@ From d21f07929d443d07eeefc0f4a19a7049f33fc2b4 Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Sun, 20 Mar 2022 14:15:00 -0400 Subject: [PATCH 31/51] add chota --- package.json | 2 ++ src/lib/style/index.js | 1 + 2 files changed, 3 insertions(+) diff --git a/package.json b/package.json index 422941b..7835ef8 100644 --- a/package.json +++ b/package.json @@ -34,10 +34,12 @@ "@storybook/addon-svelte-csf": "^1.1.0", "@storybook/svelte": "^6.4.19", "@sveltejs/adapter-node": "^1.0.0-next.0", + "chota": "^0.8.0", "lodash": "^4.17.21", "redux": "^4.1.2", "reselect": "^4.1.5", "rollup-plugin-analyzer": "^4.0.0", + "svelte-chota": "^1.8.6", "svelte-knobby": "^0.3.4", "ts-action": "^11.0.0", "updux": "link:/home/yanick/work/javascript/updux-js/", diff --git a/src/lib/style/index.js b/src/lib/style/index.js index 53d4749..86e7d49 100644 --- a/src/lib/style/index.js +++ b/src/lib/style/index.js @@ -1,4 +1,5 @@ import "../../../static/fonts/faktos.css"; import "../../../static/fonts/dosis/dosis.css"; import "../../../static/global.css"; +import 'chota'; import "./index.css"; From 4f9c70020a3725b5f9fc40603f5f01858590967f Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Sat, 19 Mar 2022 19:21:49 -0400 Subject: [PATCH 32/51] replace lodash function --- .../components/ShipEdit/Weaponry/Weapon/Beam/index.svelte | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/src/lib/components/ShipEdit/Weaponry/Weapon/Beam/index.svelte b/src/lib/components/ShipEdit/Weaponry/Weapon/Beam/index.svelte index 8e031d3..0ba11a7 100644 --- a/src/lib/components/ShipEdit/Weaponry/Weapon/Beam/index.svelte +++ b/src/lib/components/ShipEdit/Weaponry/Weapon/Beam/index.svelte @@ -53,7 +53,6 @@ function setArcs(firstArc) { - console.log(firstArc); if (nbrArcs === "broadside") { arcs = broadside; return; @@ -61,12 +60,10 @@ let first_index = all_arcs.findIndex((arc) => arc === firstArc); if (first_index === -1) first_index = 0; - console.log({arcs, label:"before"}); - arcs = _.range(nbrArcs).map( - (i) => all_arcs[(first_index + i) % all_arcs.length] + arcs = Array.from({length: nbrArcs}).map( + (_dummy,i) => all_arcs[(first_index + i) % all_arcs.length] ); arcsCaches = arcs.join(','); - console.log({arcs, label:"after"}); } $: if (arcs.length !== nbrArcs) setArcs(arcs[0]); From 629bffdc9f806b8c59f3c2df317f2130db5eda47 Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Sun, 20 Mar 2022 14:42:59 -0400 Subject: [PATCH 33/51] adjust styles for chota --- .../ShipEdit/Carrier/Squadron.svelte | 3 +++ .../components/ShipEdit/Carrier/index.svelte | 2 +- .../ShipEdit/Propulsion/Drive/index.svelte | 2 +- src/lib/components/ShipEdit/ShipCost.svelte | 5 +++-- .../components/ShipEdit/Structure/Armor.svelte | 2 +- .../ShipEdit/Structure/Armor/Layer.svelte | 2 +- .../components/ShipEdit/Structure/Cargo.svelte | 2 +- .../components/ShipEdit/Structure/Hull.svelte | 2 +- .../ShipEdit/Structure/Screens.svelte | 4 ++-- .../ShipEdit/Weaponry/AddWeapon.svelte | 9 ++++++++- src/lib/style/index.css | 4 ++++ src/routes/index.svelte | 5 +---- static/global.css | 18 ------------------ 13 files changed, 27 insertions(+), 33 deletions(-) diff --git a/src/lib/components/ShipEdit/Carrier/Squadron.svelte b/src/lib/components/ShipEdit/Carrier/Squadron.svelte index 6f46f46..4b17645 100644 --- a/src/lib/components/ShipEdit/Carrier/Squadron.svelte +++ b/src/lib/components/ShipEdit/Carrier/Squadron.svelte @@ -30,4 +30,7 @@ $: dispatch.setSquadronType({type, id}); diff --git a/src/lib/components/ShipEdit/Carrier/index.svelte b/src/lib/components/ShipEdit/Carrier/index.svelte index cb69ac8..53b8907 100644 --- a/src/lib/components/ShipEdit/Carrier/index.svelte +++ b/src/lib/components/ShipEdit/Carrier/index.svelte @@ -1,7 +1,7 @@
- + diff --git a/src/lib/components/ShipEdit/Propulsion/Drive/index.svelte b/src/lib/components/ShipEdit/Propulsion/Drive/index.svelte index a092b2d..75d8eef 100644 --- a/src/lib/components/ShipEdit/Propulsion/Drive/index.svelte +++ b/src/lib/components/ShipEdit/Propulsion/Drive/index.svelte @@ -1,7 +1,7 @@
- + diff --git a/src/lib/components/ShipEdit/ShipCost.svelte b/src/lib/components/ShipEdit/ShipCost.svelte index 969b577..5589309 100644 --- a/src/lib/components/ShipEdit/ShipCost.svelte +++ b/src/lib/components/ShipEdit/ShipCost.svelte @@ -1,6 +1,6 @@
- +
@@ -53,6 +53,7 @@ } input { width: 5em; + display: inline !important; } .mass_symbol:after { content: url("/mass.svg"); @@ -74,7 +75,7 @@ } .mass { - grid-column: 2; + width: 15em; } div.cost { grid-column: 3; diff --git a/src/lib/components/ShipEdit/Structure/Armor.svelte b/src/lib/components/ShipEdit/Structure/Armor.svelte index de581f2..b4a3a45 100644 --- a/src/lib/components/ShipEdit/Structure/Armor.svelte +++ b/src/lib/components/ShipEdit/Structure/Armor.svelte @@ -2,7 +2,7 @@
- +
diff --git a/src/lib/components/ShipEdit/Structure/Armor/Layer.svelte b/src/lib/components/ShipEdit/Structure/Armor/Layer.svelte index b6dab9e..ec80415 100644 --- a/src/lib/components/ShipEdit/Structure/Armor/Layer.svelte +++ b/src/lib/components/ShipEdit/Structure/Armor/Layer.svelte @@ -1,5 +1,5 @@ - + + + diff --git a/src/lib/style/index.css b/src/lib/style/index.css index 2717525..8d3300d 100644 --- a/src/lib/style/index.css +++ b/src/lib/style/index.css @@ -2,3 +2,7 @@ --main-font-family: "Dosis", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; } + +input.short { + width: 5em !important; +} diff --git a/src/routes/index.svelte b/src/routes/index.svelte index 591acee..df71d56 100644 --- a/src/routes/index.svelte +++ b/src/routes/index.svelte @@ -3,10 +3,7 @@ diff --git a/src/lib/components/App.svelte b/src/lib/components/App.svelte index 7673d7b..bae5ddd 100644 --- a/src/lib/components/App.svelte +++ b/src/lib/components/App.svelte @@ -1,13 +1,25 @@
+ diff --git a/src/lib/components/Header.svelte b/src/lib/components/Header.svelte index 9dd62ff..d85b113 100644 --- a/src/lib/components/Header.svelte +++ b/src/lib/components/Header.svelte @@ -4,8 +4,22 @@ a Full Thrust ship builder + showAbout = true}>about the app
+ + + + + + diff --git a/src/lib/style/index.css b/src/lib/style/index.css index 8d3300d..75866d1 100644 --- a/src/lib/style/index.css +++ b/src/lib/style/index.css @@ -1,8 +1,17 @@ :root { --main-font-family: "Dosis", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; + + --font-scale-9: 0.75rem; + --font-scale-10: 1em; + --font-scale-11: 1.333rem; + --font-scale-12: 1.777rem; + --font-scale-13: 2.369rem; + --font-scale-14: 3.157rem; + --font-scale-15: 4.209rem; } input.short { width: 5em !important; } + diff --git a/static/global.css b/static/global.css index f168cee..49c533a 100644 --- a/static/global.css +++ b/static/global.css @@ -1,11 +1,4 @@ :root { - --font-scale-9: 0.75rem; - --font-scale-10: 1em; - --font-scale-11: 1.333rem; - --font-scale-12: 1.777rem; - --font-scale-13: 2.369rem; - --font-scale-14: 3.157rem; - --font-scale-15: 4.209rem; --oxford-blue: hsla(226, 60%, 10%, 1); --royal-blue-dark: hsla(218, 100%, 16%, 1); From 69d8e4dd84c7183ff450b0f28475db3906b87525 Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Sun, 20 Mar 2022 17:55:51 -0400 Subject: [PATCH 35/51] prettier --- src/lib/components/App.svelte | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/src/lib/components/App.svelte b/src/lib/components/App.svelte index bae5ddd..7ff03ab 100644 --- a/src/lib/components/App.svelte +++ b/src/lib/components/App.svelte @@ -1,25 +1,21 @@
- From db8dccb4882db514ef8d5ba6c554a5a7d8527f6c Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Tue, 22 Mar 2022 10:45:33 -0400 Subject: [PATCH 36/51] add json component --- src/lib/components/App.svelte | 27 ++++++- src/lib/components/Header.svelte | 102 +++++++++++++++----------- src/lib/components/Output/Json.svelte | 66 ++++++++++------- 3 files changed, 124 insertions(+), 71 deletions(-) diff --git a/src/lib/components/App.svelte b/src/lib/components/App.svelte index 7ff03ab..d453b95 100644 --- a/src/lib/components/App.svelte +++ b/src/lib/components/App.svelte @@ -1,7 +1,16 @@ - -
+
- + +
activeTab = detail}/> + +
+ +
+
+ +
+ +
diff --git a/src/lib/components/Header.svelte b/src/lib/components/Header.svelte index d85b113..56ba613 100644 --- a/src/lib/components/Header.svelte +++ b/src/lib/components/Header.svelte @@ -1,53 +1,69 @@
-

The Docks

-

- a Full Thrust ship - builder -

- showAbout = true}>about the app +

The Docks

+

+ a Full Thrust ship builder +

+ (showAbout = true)}>about the app
- - - +
+ + editor + json view + print view + +
- diff --git a/src/lib/components/Output/Json.svelte b/src/lib/components/Output/Json.svelte index 6bae267..e17d9dc 100644 --- a/src/lib/components/Output/Json.svelte +++ b/src/lib/components/Output/Json.svelte @@ -1,33 +1,49 @@ - +
+ + +
{json}
+
+ + From 7fbddee67a673676d347e882247b93c806035d16 Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Tue, 22 Mar 2022 10:54:07 -0400 Subject: [PATCH 37/51] tweak layout --- src/lib/components/Header.svelte | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/lib/components/Header.svelte b/src/lib/components/Header.svelte index 56ba613..26ecf9b 100644 --- a/src/lib/components/Header.svelte +++ b/src/lib/components/Header.svelte @@ -40,7 +40,7 @@ $: dispatch( 'changeTab', activeTab ); width: var(--main-width); margin-left: auto; margin-right: auto; - margin-bottom: 3em; + margin-bottom: 1em; } h1, h2 { @@ -62,7 +62,14 @@ $: dispatch( 'changeTab', activeTab ); margin: 0px 2em; font-size: var(--font-scale-10); } + div :global(nav) { + margin-left: 2em; + margin-bottom: 2em; + } div :global(nav span) { + font-weight: bold; + font-family: var(--main-font-family); + font-size: var(--font-scale-12); margin-right: 1em; padding-bottom: 0.125em !important; } From e95e1233ab3b527ef1682071986dfe8000866841 Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Tue, 22 Mar 2022 17:38:54 -0400 Subject: [PATCH 38/51] print component --- src/lib/components/App.svelte | 4 ++ .../Output/Print/Identification/index.svelte | 70 +++++++++---------- src/lib/components/Output/Print/index.svelte | 22 ++++-- 3 files changed, 54 insertions(+), 42 deletions(-) diff --git a/src/lib/components/App.svelte b/src/lib/components/App.svelte index d453b95..54f9faa 100644 --- a/src/lib/components/App.svelte +++ b/src/lib/components/App.svelte @@ -9,6 +9,9 @@
+
+ +
@@ -20,6 +23,7 @@ import ShipEdit from "./ShipEdit/index.svelte"; import About from "./About.svelte"; import JsonOutput from './Output/Json.svelte'; + import PrintOutput from './Output/Print/index.svelte'; let activeTab = 'editor'; $: console.log(activeTab); diff --git a/src/lib/components/Output/Print/Identification/index.svelte b/src/lib/components/Output/Print/Identification/index.svelte index 228394a..07dcf3d 100644 --- a/src/lib/components/Output/Print/Identification/index.svelte +++ b/src/lib/components/Output/Print/Identification/index.svelte @@ -1,47 +1,47 @@

- ship name:
+ ship name:

-

{ship_class}-class, {ship_type}

-
- -   - -
+

{shipClass}-class, {shipType}

+
+ +   + +
diff --git a/src/lib/components/Output/Print/index.svelte b/src/lib/components/Output/Print/index.svelte index d8328f9..a3221ea 100644 --- a/src/lib/components/Output/Print/index.svelte +++ b/src/lib/components/Output/Print/index.svelte @@ -1,3 +1,7 @@ +
+ +
+ + From 9ecea73c44df567b58561ea7abff724d6eafd678 Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Sat, 26 Mar 2022 12:15:02 -0400 Subject: [PATCH 41/51] armor print --- .../{Armour/index.svelte => Armor.svelte} | 8 +++---- .../Output/Print/Hull/Armour.stories.svelte | 22 +++++++++++++++++++ src/lib/components/Output/Print/index.svelte | 6 ++++- .../ShipEdit/Carrier/Carrier.stories.svelte | 7 +++++- src/lib/shipDux/structure/armor.js | 14 ++++++++++++ 5 files changed, 51 insertions(+), 6 deletions(-) rename src/lib/components/Output/Print/Hull/{Armour/index.svelte => Armor.svelte} (75%) create mode 100644 src/lib/components/Output/Print/Hull/Armour.stories.svelte diff --git a/src/lib/components/Output/Print/Hull/Armour/index.svelte b/src/lib/components/Output/Print/Hull/Armor.svelte similarity index 75% rename from src/lib/components/Output/Print/Hull/Armour/index.svelte rename to src/lib/components/Output/Print/Hull/Armor.svelte index c22251a..e2b4c63 100644 --- a/src/lib/components/Output/Print/Hull/Armour/index.svelte +++ b/src/lib/components/Output/Print/Hull/Armor.svelte @@ -1,7 +1,7 @@
- {#each armour as layer (layer)} + {#each armor as layer,i (i)}
- {#each _.range(layer.rating) as i (i)} + {#each Array.from({length: layer}) as j}
{/each}
@@ -11,9 +11,9 @@ From 5b7b8336d6bbcde10385f802864a5a9620d0e94a Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Sat, 26 Mar 2022 12:41:42 -0400 Subject: [PATCH 43/51] storybook vite works --- .storybook/main.js | 4 +++- package.json | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.storybook/main.js b/.storybook/main.js index 21445a9..cbe87f7 100644 --- a/.storybook/main.js +++ b/.storybook/main.js @@ -2,7 +2,7 @@ const path = require("path"); const preprocess = require("svelte-preprocess"); module.exports = { - // core: { builder: "storybook-builder-vite" }, + core: { builder: "storybook-builder-vite" }, staticDirs: ["../static", "../pictures"], stories: [ "../src/**/*.stories.mdx", @@ -18,6 +18,8 @@ module.exports = { preprocess: preprocess(), }, async viteFinal(config, { configType }) { + + if(!config.resolve.alias) config.resolve.alias = {}; // customize the Vite config here config.resolve.alias.$lib = path.resolve(__dirname, "../src/lib/"); config.resolve.alias.$app = path.resolve(__dirname, "../fake/app/"); diff --git a/package.json b/package.json index 7835ef8..bf57761 100644 --- a/package.json +++ b/package.json @@ -24,7 +24,7 @@ "eslint-plugin-svelte3": "^3.4.1", "prettier": "~2.5.1", "prettier-plugin-svelte": "^2.6.0", - "storybook-builder-vite": "0.1.17", + "storybook-builder-vite": "0.1.21", "svelte": "^3.46.4", "vite": "^2.7.0" }, From 139deb8614ea7ddd7e7a51a6b2bd7369522f5297 Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Sat, 26 Mar 2022 13:10:11 -0400 Subject: [PATCH 44/51] hygen --- _templates/generator/help/index.ejs.t | 5 +++++ _templates/generator/new/hello.ejs.t | 18 +++++++++++++++++ _templates/generator/with-prompt/hello.ejs.t | 18 +++++++++++++++++ _templates/generator/with-prompt/prompt.js | 14 +++++++++++++ _templates/package.json | 3 +++ _templates/story/new/index.js | 11 ++++++++++ _templates/story/new/stories.svelte.temp | 21 ++++++++++++++++++++ 7 files changed, 90 insertions(+) create mode 100644 _templates/generator/help/index.ejs.t create mode 100644 _templates/generator/new/hello.ejs.t create mode 100644 _templates/generator/with-prompt/hello.ejs.t create mode 100644 _templates/generator/with-prompt/prompt.js create mode 100644 _templates/package.json create mode 100644 _templates/story/new/index.js create mode 100644 _templates/story/new/stories.svelte.temp diff --git a/_templates/generator/help/index.ejs.t b/_templates/generator/help/index.ejs.t new file mode 100644 index 0000000..90a29af --- /dev/null +++ b/_templates/generator/help/index.ejs.t @@ -0,0 +1,5 @@ +--- +message: | + hygen {bold generator new} --name [NAME] --action [ACTION] + hygen {bold generator with-prompt} --name [NAME] --action [ACTION] +--- \ No newline at end of file diff --git a/_templates/generator/new/hello.ejs.t b/_templates/generator/new/hello.ejs.t new file mode 100644 index 0000000..5680d96 --- /dev/null +++ b/_templates/generator/new/hello.ejs.t @@ -0,0 +1,18 @@ +--- +to: _templates/<%= name %>/<%= action || 'new' %>/hello.ejs.t +--- +--- +to: app/hello.js +--- +const hello = ``` +Hello! +This is your first hygen template. + +Learn what it can do here: + +https://github.com/jondot/hygen +``` + +console.log(hello) + + diff --git a/_templates/generator/with-prompt/hello.ejs.t b/_templates/generator/with-prompt/hello.ejs.t new file mode 100644 index 0000000..ba6abc5 --- /dev/null +++ b/_templates/generator/with-prompt/hello.ejs.t @@ -0,0 +1,18 @@ +--- +to: _templates/<%= name %>/<%= action || 'new' %>/hello.ejs.t +--- +--- +to: app/hello.js +--- +const hello = ``` +Hello! +This is your first prompt based hygen template. + +Learn what it can do here: + +https://github.com/jondot/hygen +``` + +console.log(hello) + + diff --git a/_templates/generator/with-prompt/prompt.js b/_templates/generator/with-prompt/prompt.js new file mode 100644 index 0000000..76ea532 --- /dev/null +++ b/_templates/generator/with-prompt/prompt.js @@ -0,0 +1,14 @@ +--- +to: _templates/<%= name %>/<%= action || 'new' %>/prompt.js +--- + +// see types of prompts: +// https://github.com/enquirer/enquirer/tree/master/examples +// +module.exports = [ + { + type: 'input', + name: 'message', + message: "What's your message?" + } +] diff --git a/_templates/package.json b/_templates/package.json new file mode 100644 index 0000000..5bbefff --- /dev/null +++ b/_templates/package.json @@ -0,0 +1,3 @@ +{ + "type": "commonjs" +} diff --git a/_templates/story/new/index.js b/_templates/story/new/index.js new file mode 100644 index 0000000..37b2a7e --- /dev/null +++ b/_templates/story/new/index.js @@ -0,0 +1,11 @@ +const path = require('path'); + +module.exports = { + params: ({ args }) => { + + const storypath = args.path.replace( '.svelte', '.stories.svelte' ); + const component = path.basename(args.path).replace('.svelte',''); + + return { storypath, component} + } +} diff --git a/_templates/story/new/stories.svelte.temp b/_templates/story/new/stories.svelte.temp new file mode 100644 index 0000000..fe2ba10 --- /dev/null +++ b/_templates/story/new/stories.svelte.temp @@ -0,0 +1,21 @@ +--- +to: <%= storypath %> +--- +} argTypes={{}} /> + + + + + + From 3e63ea24dd3aed462da159461cfb4254d5bfb614 Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Sat, 26 Mar 2022 13:10:54 -0400 Subject: [PATCH 45/51] fixup! armor print --- src/lib/components/ShipEdit/Carrier/Carrier.stories.svelte | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/src/lib/components/ShipEdit/Carrier/Carrier.stories.svelte b/src/lib/components/ShipEdit/Carrier/Carrier.stories.svelte index 5475528..b17359f 100644 --- a/src/lib/components/ShipEdit/Carrier/Carrier.stories.svelte +++ b/src/lib/components/ShipEdit/Carrier/Carrier.stories.svelte @@ -1,9 +1,4 @@ - + From 0d3c053705a0c6fa19874a412f55877384c12382 Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Sat, 26 Mar 2022 13:55:12 -0400 Subject: [PATCH 46/51] print firecons --- .../Systems/Firecons/Firecons.stories.svelte | 17 +++++++++++++++++ .../Output/Print/Systems/Firecons/index.svelte | 4 ++-- src/lib/utils.js | 8 ++++++++ 3 files changed, 27 insertions(+), 2 deletions(-) create mode 100644 src/lib/components/Output/Print/Systems/Firecons/Firecons.stories.svelte create mode 100644 src/lib/utils.js diff --git a/src/lib/components/Output/Print/Systems/Firecons/Firecons.stories.svelte b/src/lib/components/Output/Print/Systems/Firecons/Firecons.stories.svelte new file mode 100644 index 0000000..83ad5f0 --- /dev/null +++ b/src/lib/components/Output/Print/Systems/Firecons/Firecons.stories.svelte @@ -0,0 +1,17 @@ + + + + + + + diff --git a/src/lib/components/Output/Print/Systems/Firecons/index.svelte b/src/lib/components/Output/Print/Systems/Firecons/index.svelte index 10ce7c2..673a3ce 100644 --- a/src/lib/components/Output/Print/Systems/Firecons/index.svelte +++ b/src/lib/components/Output/Print/Systems/Firecons/index.svelte @@ -1,11 +1,11 @@
- {#each _.range(firecons) as firecon} + {#each range(1,firecons) as firecon} firecon {/each}
diff --git a/src/lib/utils.js b/src/lib/utils.js new file mode 100644 index 0000000..79226cb --- /dev/null +++ b/src/lib/utils.js @@ -0,0 +1,8 @@ +export function range(min, max) { + if(max === undefined) { + max = min; + min = 0; + } + + return Array.from({length: 1+max - min}).map( (_d,i) => i+ min); +} From 745a72f83fe13c86487978c8e61e0302e5105579 Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Sat, 26 Mar 2022 14:04:24 -0400 Subject: [PATCH 47/51] print screens --- _templates/story/new/index.js | 6 ++++-- _templates/story/new/stories.svelte.temp | 2 +- .../Systems/Screens/Screens.stories.svelte | 18 ++++++++++++++++++ .../Output/Print/Systems/Screens/index.svelte | 6 +++--- 4 files changed, 26 insertions(+), 6 deletions(-) create mode 100644 src/lib/components/Output/Print/Systems/Screens/Screens.stories.svelte diff --git a/_templates/story/new/index.js b/_templates/story/new/index.js index 37b2a7e..5a3f060 100644 --- a/_templates/story/new/index.js +++ b/_templates/story/new/index.js @@ -4,8 +4,10 @@ module.exports = { params: ({ args }) => { const storypath = args.path.replace( '.svelte', '.stories.svelte' ); - const component = path.basename(args.path).replace('.svelte',''); - return { storypath, component} + const component = path.basename(args.path.replace('/index.svelte','')).replace('.svelte',''); + + const to = path.join(path.dirname(args.path), component + '.stories.svelte' ); + return { storypath, component, to} } } diff --git a/_templates/story/new/stories.svelte.temp b/_templates/story/new/stories.svelte.temp index fe2ba10..25911ce 100644 --- a/_templates/story/new/stories.svelte.temp +++ b/_templates/story/new/stories.svelte.temp @@ -1,5 +1,5 @@ --- -to: <%= storypath %> +to: <%= to %> --- } argTypes={{}} /> diff --git a/src/lib/components/Output/Print/Systems/Screens/Screens.stories.svelte b/src/lib/components/Output/Print/Systems/Screens/Screens.stories.svelte new file mode 100644 index 0000000..c4ffa23 --- /dev/null +++ b/src/lib/components/Output/Print/Systems/Screens/Screens.stories.svelte @@ -0,0 +1,18 @@ + + + + + + + diff --git a/src/lib/components/Output/Print/Systems/Screens/index.svelte b/src/lib/components/Output/Print/Systems/Screens/index.svelte index 5272361..400e569 100644 --- a/src/lib/components/Output/Print/Systems/Screens/index.svelte +++ b/src/lib/components/Output/Print/Systems/Screens/index.svelte @@ -1,14 +1,14 @@
- {#each _.range(standard) as i} + {#each range(1,standard) as i} screen {/each} - {#each _.range(advanced) as i} + {#each range(1,advanced) as i} advanced screen {/each}
diff --git a/src/lib/components/Output/Print/sample.js b/src/lib/components/Output/Print/sample.js index 4c356b3..bd9352c 100644 --- a/src/lib/components/Output/Print/sample.js +++ b/src/lib/components/Output/Print/sample.js @@ -1,108 +1,105 @@ export default { - ftl: { - mass: 0, - cost: 0, - type: "standard", + "identification": { + "shipType": "Scout", + "shipClass": "Blah", + "isCarrier": false, + "mass": 10 }, - engine: { - mass: 40, - cost: 80, - rating: 6, - advanced: false, - }, - general: { - ship_class: "Deviant", - name: "", - ship_type: "Battleship", - mass: 132, - used_mass: 131, - cost: 415, - }, - weaponry: { - firecons: { - nbr: 5, - mass: 5, - cost: 20, + "propulsion": { + "drive": { + "reqs": { + "cost": 2, + "mass": 1 + }, + "rating": 3, + "advanced": true }, - weapons: [ - { - weapon_type: "submunition", - arcs: ["F"], - mass: 1, - cost: 3, - id: 1, + "ftl": { + "reqs": { + "cost": 0, + "mass": 0 }, - { - weapon_type: "beam", - weapon_class: "2", - arcs: ["A", "AS", "FS"], - mass: 2, - cost: 6, - id: 2, + "type": "none" + } + }, + "structure": { + "hull": { + "reqs": { + "cost": 2, + "mass": 1 }, - { - weapon_type: "pds", - mass: 1, - cost: 3, - id: 3, + "rating": 10, + "min": 1, + "max": 10 + }, + "screens": { + "reqs": { + "cost": 0, + "mass": 0 }, + "standard": 3, + "advanced": 2 + }, + "cargo": { + "reqs": { + "cost": 0, + "mass": 0 + }, + "space": 0 + }, + "streamlining": { + "reqs": { + "cost": 0, + "mass": 0 + }, + "type": "none" + }, + "armor": { + "layers": [], + "reqs": { + "mass": 0, + "cost": 0 + } + } + }, + "carrier": { + "reqs": { + "cost": 0, + "mass": 0 + }, + "bays": 0, + "squadrons": [] + }, + "weaponry": { + "weapons": [ + { + "id": 1, + "type": "beam", + "reqs": { + "mass": 1, + "cost": 3 + }, + "weaponClass": 1 + } ], - adfc: { - rating: 0, - cost: 0, - mass: 0, + "firecons": { + "stations": 1, + "reqs": { + "cost": 4, + "mass": 1 + } }, + "adfc": { + "rating": 1, + "reqs": { + "cost": 8, + "mass": 2 + } + } }, - structure: { - mass: 0, - cost: 0, - hull: { - rating: 22, - advanced: false, - cost: 44, - mass: 22, - }, - screens: { - standard: 2, - advanced: 1, - cost: 105, - mass: 35, - }, - armour: [ - { - layer: 1, - rating: 7, - cost: 14, - mass: 14, - }, - { - layer: 2, - rating: 2, - cost: 8, - mass: 4, - }, - { - layer: 3, - rating: 0, - cost: 0, - mass: 0, - }, - ], - }, - cargo: { - space: 7, - cost: 0, - mass: 7, - }, - streamlining: { - type: "none", - cost: 0, - mass: 0, - }, - carrier: { - bays: 0, - cost: 0, - mass: 0, - squadrons: [], - }, -}; + "reqs": { + "cost": 19, + "mass": 10, + "usedMass": 6 + } +} diff --git a/src/lib/components/Output/Print/stories.js b/src/lib/components/Output/Print/stories.js deleted file mode 100644 index 858e5c1..0000000 --- a/src/lib/components/Output/Print/stories.js +++ /dev/null @@ -1,13 +0,0 @@ -import Print from "./index.svelte"; -import sample from "./sample"; - -export default { - title: "printouts", -}; - -export const basic = () => ({ - Component: Print, - props: { - ship: sample, - }, -}); From 63f8f70a93e9432222e19dc0cb96b70b98dd1d1f Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Sat, 26 Mar 2022 14:37:34 -0400 Subject: [PATCH 49/51] weird problem with spreads? --- src/lib/components/App.svelte | 5 ++++- .../Output/Print/Identification/index.svelte | 13 +++++++++---- src/lib/components/Output/Print/index.svelte | 6 ++++-- 3 files changed, 17 insertions(+), 7 deletions(-) diff --git a/src/lib/components/App.svelte b/src/lib/components/App.svelte index 54f9faa..68ebcde 100644 --- a/src/lib/components/App.svelte +++ b/src/lib/components/App.svelte @@ -10,12 +10,13 @@
- +
From 6a15273a49413e172b02accd9639d52f45b86756 Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Sat, 2 Apr 2022 19:31:25 -0400 Subject: [PATCH 51/51] set width to be 960px for mobiles --- src/lib/components/App.svelte | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/lib/components/App.svelte b/src/lib/components/App.svelte index 68ebcde..4680419 100644 --- a/src/lib/components/App.svelte +++ b/src/lib/components/App.svelte @@ -1,3 +1,7 @@ + + + +