You can't do this for the general case, without decompressing some or almost all of the nested components. If you do it manually or try to make a script, consider doing it safely, under disk limitations.
For example, we create a big file, we zip it. And we zip it again, together with a small file.
yes 1 | head -c1G > file1
zip inner.zip file1
touch file2
zip outer.zip inner.zip file2
Now you can see, without decompressing anything, the size for the contents of the outer zip, which is small.
$ unzip -v outer.zip
Archive: outer.zip
Length Method Size Cmpr Date Time CRC-32 Name
-------- ------ ------- ---- ---------- ----- -------- ----
1042294 Stored 1042294 0% 2020-12-04 10:13 7093703f inner.zip
0 Stored 0 0% 2020-12-04 10:13 00000000 file2
-------- ------- --- -------
1042294 1042294 0% 2 files
After you unzip it, you can see the size for the contents of any nested zips files.
$ unzip outer.zip
$ unzip -v inner.zip
Archive: inner.zip
Length Method Size Cmpr Date Time CRC-32 Name
-------- ------ ------- ---- ---------- ----- -------- ----
1073741824 Defl:N 1042134 100% 2020-12-04 10:12 5aa3a8cc file1
-------- ------- --- -------
1073741824 1042134 100% 1 file
And this stack can have many levels of nesting, many different compressed files. So, if you are curious to calculate the total size, you should safely repeat these steps until the last level, or abort the process if you see a size that couldn't be handled.
ls -lh zipfilename.zip
or for all zip filesls -lh *.zip