tileserver-gl-light 3.1.1 → 4.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Dockerfile +3 -2
- package/Dockerfile_test +2 -1
- package/docker-entrypoint.sh +13 -1
- package/docs/conf.py +4 -4
- package/docs/deployment.rst +2 -2
- package/docs/installation.rst +23 -4
- package/docs/usage.rst +4 -2
- package/fonts/Open Sans Bold/0-255.pbf +0 -0
- package/fonts/Open Sans Bold/1024-1279.pbf +0 -0
- package/fonts/Open Sans Bold/10240-10495.pbf +3 -0
- package/fonts/Open Sans Bold/10496-10751.pbf +3 -0
- package/fonts/Open Sans Bold/10752-11007.pbf +3 -0
- package/fonts/Open Sans Bold/11008-11263.pbf +3 -0
- package/fonts/Open Sans Bold/11264-11519.pbf +3 -0
- package/fonts/Open Sans Bold/11520-11775.pbf +3 -0
- package/fonts/Open Sans Bold/11776-12031.pbf +3 -0
- package/fonts/Open Sans Bold/12032-12287.pbf +3 -0
- package/fonts/Open Sans Bold/12288-12543.pbf +3 -0
- package/fonts/Open Sans Bold/12544-12799.pbf +3 -0
- package/fonts/Open Sans Bold/1280-1535.pbf +0 -0
- package/fonts/Open Sans Bold/12800-13055.pbf +3 -0
- package/fonts/Open Sans Bold/13056-13311.pbf +3 -0
- package/fonts/Open Sans Bold/13312-13567.pbf +3 -0
- package/fonts/Open Sans Bold/13568-13823.pbf +3 -0
- package/fonts/Open Sans Bold/13824-14079.pbf +3 -0
- package/fonts/Open Sans Bold/14080-14335.pbf +3 -0
- package/fonts/Open Sans Bold/14336-14591.pbf +3 -0
- package/fonts/Open Sans Bold/14592-14847.pbf +3 -0
- package/fonts/Open Sans Bold/14848-15103.pbf +3 -0
- package/fonts/Open Sans Bold/15104-15359.pbf +3 -0
- package/fonts/Open Sans Bold/1536-1791.pbf +3 -0
- package/fonts/Open Sans Bold/15360-15615.pbf +3 -0
- package/fonts/Open Sans Bold/15616-15871.pbf +3 -0
- package/fonts/Open Sans Bold/15872-16127.pbf +3 -0
- package/fonts/Open Sans Bold/16128-16383.pbf +3 -0
- package/fonts/Open Sans Bold/16384-16639.pbf +3 -0
- package/fonts/Open Sans Bold/16640-16895.pbf +3 -0
- package/fonts/Open Sans Bold/16896-17151.pbf +3 -0
- package/fonts/Open Sans Bold/17152-17407.pbf +3 -0
- package/fonts/Open Sans Bold/17408-17663.pbf +3 -0
- package/fonts/Open Sans Bold/17664-17919.pbf +3 -0
- package/fonts/Open Sans Bold/1792-2047.pbf +3 -0
- package/fonts/Open Sans Bold/17920-18175.pbf +3 -0
- package/fonts/Open Sans Bold/18176-18431.pbf +3 -0
- package/fonts/Open Sans Bold/18432-18687.pbf +3 -0
- package/fonts/Open Sans Bold/18688-18943.pbf +3 -0
- package/fonts/Open Sans Bold/18944-19199.pbf +3 -0
- package/fonts/Open Sans Bold/19200-19455.pbf +3 -0
- package/fonts/Open Sans Bold/19456-19711.pbf +3 -0
- package/fonts/Open Sans Bold/19712-19967.pbf +3 -0
- package/fonts/Open Sans Bold/19968-20223.pbf +3 -0
- package/fonts/Open Sans Bold/20224-20479.pbf +3 -0
- package/fonts/Open Sans Bold/2048-2303.pbf +3 -0
- package/fonts/Open Sans Bold/20480-20735.pbf +3 -0
- package/fonts/Open Sans Bold/20736-20991.pbf +3 -0
- package/fonts/Open Sans Bold/20992-21247.pbf +3 -0
- package/fonts/Open Sans Bold/21248-21503.pbf +3 -0
- package/fonts/Open Sans Bold/21504-21759.pbf +3 -0
- package/fonts/Open Sans Bold/21760-22015.pbf +3 -0
- package/fonts/Open Sans Bold/22016-22271.pbf +3 -0
- package/fonts/Open Sans Bold/22272-22527.pbf +3 -0
- package/fonts/Open Sans Bold/22528-22783.pbf +3 -0
- package/fonts/Open Sans Bold/22784-23039.pbf +3 -0
- package/fonts/Open Sans Bold/2304-2559.pbf +3 -0
- package/fonts/Open Sans Bold/23040-23295.pbf +3 -0
- package/fonts/Open Sans Bold/23296-23551.pbf +3 -0
- package/fonts/Open Sans Bold/23552-23807.pbf +3 -0
- package/fonts/Open Sans Bold/23808-24063.pbf +3 -0
- package/fonts/Open Sans Bold/24064-24319.pbf +3 -0
- package/fonts/Open Sans Bold/24320-24575.pbf +3 -0
- package/fonts/Open Sans Bold/24576-24831.pbf +3 -0
- package/fonts/Open Sans Bold/24832-25087.pbf +3 -0
- package/fonts/Open Sans Bold/25088-25343.pbf +3 -0
- package/fonts/Open Sans Bold/25344-25599.pbf +3 -0
- package/fonts/Open Sans Bold/256-511.pbf +0 -0
- package/fonts/Open Sans Bold/2560-2815.pbf +3 -0
- package/fonts/Open Sans Bold/25600-25855.pbf +3 -0
- package/fonts/Open Sans Bold/25856-26111.pbf +3 -0
- package/fonts/Open Sans Bold/26112-26367.pbf +3 -0
- package/fonts/Open Sans Bold/26368-26623.pbf +3 -0
- package/fonts/Open Sans Bold/26624-26879.pbf +3 -0
- package/fonts/Open Sans Bold/26880-27135.pbf +3 -0
- package/fonts/Open Sans Bold/27136-27391.pbf +3 -0
- package/fonts/Open Sans Bold/27392-27647.pbf +3 -0
- package/fonts/Open Sans Bold/27648-27903.pbf +3 -0
- package/fonts/Open Sans Bold/27904-28159.pbf +3 -0
- package/fonts/Open Sans Bold/2816-3071.pbf +3 -0
- package/fonts/Open Sans Bold/28160-28415.pbf +3 -0
- package/fonts/Open Sans Bold/28416-28671.pbf +3 -0
- package/fonts/Open Sans Bold/28672-28927.pbf +3 -0
- package/fonts/Open Sans Bold/28928-29183.pbf +3 -0
- package/fonts/Open Sans Bold/29184-29439.pbf +3 -0
- package/fonts/Open Sans Bold/29440-29695.pbf +3 -0
- package/fonts/Open Sans Bold/29696-29951.pbf +3 -0
- package/fonts/Open Sans Bold/29952-30207.pbf +3 -0
- package/fonts/Open Sans Bold/30208-30463.pbf +3 -0
- package/fonts/Open Sans Bold/30464-30719.pbf +3 -0
- package/fonts/Open Sans Bold/3072-3327.pbf +3 -0
- package/fonts/Open Sans Bold/30720-30975.pbf +3 -0
- package/fonts/Open Sans Bold/30976-31231.pbf +3 -0
- package/fonts/Open Sans Bold/31232-31487.pbf +3 -0
- package/fonts/Open Sans Bold/31488-31743.pbf +3 -0
- package/fonts/Open Sans Bold/31744-31999.pbf +3 -0
- package/fonts/Open Sans Bold/32000-32255.pbf +3 -0
- package/fonts/Open Sans Bold/32256-32511.pbf +3 -0
- package/fonts/Open Sans Bold/32512-32767.pbf +3 -0
- package/fonts/Open Sans Bold/32768-33023.pbf +3 -0
- package/fonts/Open Sans Bold/33024-33279.pbf +3 -0
- package/fonts/Open Sans Bold/3328-3583.pbf +3 -0
- package/fonts/Open Sans Bold/33280-33535.pbf +3 -0
- package/fonts/Open Sans Bold/33536-33791.pbf +3 -0
- package/fonts/Open Sans Bold/33792-34047.pbf +3 -0
- package/fonts/Open Sans Bold/34048-34303.pbf +3 -0
- package/fonts/Open Sans Bold/34304-34559.pbf +3 -0
- package/fonts/Open Sans Bold/34560-34815.pbf +3 -0
- package/fonts/Open Sans Bold/34816-35071.pbf +3 -0
- package/fonts/Open Sans Bold/35072-35327.pbf +3 -0
- package/fonts/Open Sans Bold/35328-35583.pbf +3 -0
- package/fonts/Open Sans Bold/35584-35839.pbf +3 -0
- package/fonts/Open Sans Bold/3584-3839.pbf +3 -0
- package/fonts/Open Sans Bold/35840-36095.pbf +3 -0
- package/fonts/Open Sans Bold/36096-36351.pbf +3 -0
- package/fonts/Open Sans Bold/36352-36607.pbf +3 -0
- package/fonts/Open Sans Bold/36608-36863.pbf +3 -0
- package/fonts/Open Sans Bold/36864-37119.pbf +3 -0
- package/fonts/Open Sans Bold/37120-37375.pbf +3 -0
- package/fonts/Open Sans Bold/37376-37631.pbf +3 -0
- package/fonts/Open Sans Bold/37632-37887.pbf +3 -0
- package/fonts/Open Sans Bold/37888-38143.pbf +3 -0
- package/fonts/Open Sans Bold/38144-38399.pbf +3 -0
- package/fonts/Open Sans Bold/3840-4095.pbf +3 -0
- package/fonts/Open Sans Bold/38400-38655.pbf +3 -0
- package/fonts/Open Sans Bold/38656-38911.pbf +3 -0
- package/fonts/Open Sans Bold/38912-39167.pbf +3 -0
- package/fonts/Open Sans Bold/39168-39423.pbf +3 -0
- package/fonts/Open Sans Bold/39424-39679.pbf +3 -0
- package/fonts/Open Sans Bold/39680-39935.pbf +3 -0
- package/fonts/Open Sans Bold/39936-40191.pbf +3 -0
- package/fonts/Open Sans Bold/40192-40447.pbf +3 -0
- package/fonts/Open Sans Bold/40448-40703.pbf +3 -0
- package/fonts/Open Sans Bold/40704-40959.pbf +3 -0
- package/fonts/Open Sans Bold/4096-4351.pbf +3 -0
- package/fonts/Open Sans Bold/40960-41215.pbf +3 -0
- package/fonts/Open Sans Bold/41216-41471.pbf +3 -0
- package/fonts/Open Sans Bold/41472-41727.pbf +3 -0
- package/fonts/Open Sans Bold/41728-41983.pbf +3 -0
- package/fonts/Open Sans Bold/41984-42239.pbf +3 -0
- package/fonts/Open Sans Bold/42240-42495.pbf +3 -0
- package/fonts/Open Sans Bold/42496-42751.pbf +3 -0
- package/fonts/Open Sans Bold/42752-43007.pbf +3 -0
- package/fonts/Open Sans Bold/43008-43263.pbf +3 -0
- package/fonts/Open Sans Bold/43264-43519.pbf +3 -0
- package/fonts/Open Sans Bold/4352-4607.pbf +3 -0
- package/fonts/Open Sans Bold/43520-43775.pbf +3 -0
- package/fonts/Open Sans Bold/43776-44031.pbf +3 -0
- package/fonts/Open Sans Bold/44032-44287.pbf +3 -0
- package/fonts/Open Sans Bold/44288-44543.pbf +3 -0
- package/fonts/Open Sans Bold/44544-44799.pbf +3 -0
- package/fonts/Open Sans Bold/44800-45055.pbf +3 -0
- package/fonts/Open Sans Bold/45056-45311.pbf +3 -0
- package/fonts/Open Sans Bold/45312-45567.pbf +3 -0
- package/fonts/Open Sans Bold/45568-45823.pbf +3 -0
- package/fonts/Open Sans Bold/45824-46079.pbf +3 -0
- package/fonts/Open Sans Bold/4608-4863.pbf +3 -0
- package/fonts/Open Sans Bold/46080-46335.pbf +3 -0
- package/fonts/Open Sans Bold/46336-46591.pbf +3 -0
- package/fonts/Open Sans Bold/46592-46847.pbf +3 -0
- package/fonts/Open Sans Bold/46848-47103.pbf +3 -0
- package/fonts/Open Sans Bold/47104-47359.pbf +3 -0
- package/fonts/Open Sans Bold/47360-47615.pbf +3 -0
- package/fonts/Open Sans Bold/47616-47871.pbf +3 -0
- package/fonts/Open Sans Bold/47872-48127.pbf +3 -0
- package/fonts/Open Sans Bold/48128-48383.pbf +3 -0
- package/fonts/Open Sans Bold/48384-48639.pbf +3 -0
- package/fonts/Open Sans Bold/4864-5119.pbf +3 -0
- package/fonts/Open Sans Bold/48640-48895.pbf +3 -0
- package/fonts/Open Sans Bold/48896-49151.pbf +3 -0
- package/fonts/Open Sans Bold/49152-49407.pbf +3 -0
- package/fonts/Open Sans Bold/49408-49663.pbf +3 -0
- package/fonts/Open Sans Bold/49664-49919.pbf +3 -0
- package/fonts/Open Sans Bold/49920-50175.pbf +3 -0
- package/fonts/Open Sans Bold/50176-50431.pbf +3 -0
- package/fonts/Open Sans Bold/50432-50687.pbf +3 -0
- package/fonts/Open Sans Bold/50688-50943.pbf +3 -0
- package/fonts/Open Sans Bold/50944-51199.pbf +3 -0
- package/fonts/Open Sans Bold/512-767.pbf +0 -0
- package/fonts/Open Sans Bold/5120-5375.pbf +3 -0
- package/fonts/Open Sans Bold/51200-51455.pbf +3 -0
- package/fonts/Open Sans Bold/51456-51711.pbf +3 -0
- package/fonts/Open Sans Bold/51712-51967.pbf +3 -0
- package/fonts/Open Sans Bold/51968-52223.pbf +3 -0
- package/fonts/Open Sans Bold/52224-52479.pbf +3 -0
- package/fonts/Open Sans Bold/52480-52735.pbf +3 -0
- package/fonts/Open Sans Bold/52736-52991.pbf +3 -0
- package/fonts/Open Sans Bold/52992-53247.pbf +3 -0
- package/fonts/Open Sans Bold/53248-53503.pbf +3 -0
- package/fonts/Open Sans Bold/53504-53759.pbf +3 -0
- package/fonts/Open Sans Bold/5376-5631.pbf +3 -0
- package/fonts/Open Sans Bold/53760-54015.pbf +3 -0
- package/fonts/Open Sans Bold/54016-54271.pbf +3 -0
- package/fonts/Open Sans Bold/54272-54527.pbf +3 -0
- package/fonts/Open Sans Bold/54528-54783.pbf +3 -0
- package/fonts/Open Sans Bold/54784-55039.pbf +3 -0
- package/fonts/Open Sans Bold/55040-55295.pbf +3 -0
- package/fonts/Open Sans Bold/55296-55551.pbf +3 -0
- package/fonts/Open Sans Bold/55552-55807.pbf +3 -0
- package/fonts/Open Sans Bold/55808-56063.pbf +3 -0
- package/fonts/Open Sans Bold/56064-56319.pbf +3 -0
- package/fonts/Open Sans Bold/5632-5887.pbf +3 -0
- package/fonts/Open Sans Bold/56320-56575.pbf +3 -0
- package/fonts/Open Sans Bold/56576-56831.pbf +3 -0
- package/fonts/Open Sans Bold/56832-57087.pbf +3 -0
- package/fonts/Open Sans Bold/57088-57343.pbf +3 -0
- package/fonts/Open Sans Bold/57344-57599.pbf +3 -0
- package/fonts/Open Sans Bold/57600-57855.pbf +3 -0
- package/fonts/Open Sans Bold/57856-58111.pbf +3 -0
- package/fonts/Open Sans Bold/58112-58367.pbf +3 -0
- package/fonts/Open Sans Bold/58368-58623.pbf +3 -0
- package/fonts/Open Sans Bold/58624-58879.pbf +3 -0
- package/fonts/Open Sans Bold/5888-6143.pbf +3 -0
- package/fonts/Open Sans Bold/58880-59135.pbf +3 -0
- package/fonts/Open Sans Bold/59136-59391.pbf +3 -0
- package/fonts/Open Sans Bold/59392-59647.pbf +3 -0
- package/fonts/Open Sans Bold/59648-59903.pbf +3 -0
- package/fonts/Open Sans Bold/59904-60159.pbf +3 -0
- package/fonts/Open Sans Bold/60160-60415.pbf +3 -0
- package/fonts/Open Sans Bold/60416-60671.pbf +3 -0
- package/fonts/Open Sans Bold/60672-60927.pbf +3 -0
- package/fonts/Open Sans Bold/60928-61183.pbf +3 -0
- package/fonts/Open Sans Bold/61184-61439.pbf +3 -0
- package/fonts/Open Sans Bold/6144-6399.pbf +3 -0
- package/fonts/Open Sans Bold/61440-61695.pbf +3 -0
- package/fonts/Open Sans Bold/61696-61951.pbf +3 -0
- package/fonts/Open Sans Bold/61952-62207.pbf +3 -0
- package/fonts/Open Sans Bold/62208-62463.pbf +3 -0
- package/fonts/Open Sans Bold/62464-62719.pbf +3 -0
- package/fonts/Open Sans Bold/62720-62975.pbf +3 -0
- package/fonts/Open Sans Bold/62976-63231.pbf +3 -0
- package/fonts/Open Sans Bold/63232-63487.pbf +3 -0
- package/fonts/Open Sans Bold/63488-63743.pbf +3 -0
- package/fonts/Open Sans Bold/63744-63999.pbf +3 -0
- package/fonts/Open Sans Bold/6400-6655.pbf +3 -0
- package/fonts/Open Sans Bold/64000-64255.pbf +3 -0
- package/fonts/Open Sans Bold/64256-64511.pbf +0 -0
- package/fonts/Open Sans Bold/64512-64767.pbf +3 -0
- package/fonts/Open Sans Bold/64768-65023.pbf +3 -0
- package/fonts/Open Sans Bold/65024-65279.pbf +0 -0
- package/fonts/Open Sans Bold/65280-65535.pbf +0 -0
- package/fonts/Open Sans Bold/6656-6911.pbf +3 -0
- package/fonts/Open Sans Bold/6912-7167.pbf +3 -0
- package/fonts/Open Sans Bold/7168-7423.pbf +3 -0
- package/fonts/Open Sans Bold/7424-7679.pbf +3 -0
- package/fonts/Open Sans Bold/768-1023.pbf +0 -0
- package/fonts/Open Sans Bold/7680-7935.pbf +0 -0
- package/fonts/Open Sans Bold/7936-8191.pbf +0 -0
- package/fonts/Open Sans Bold/8192-8447.pbf +0 -0
- package/fonts/Open Sans Bold/8448-8703.pbf +0 -0
- package/fonts/Open Sans Bold/8704-8959.pbf +0 -0
- package/fonts/Open Sans Bold/8960-9215.pbf +3 -0
- package/fonts/Open Sans Bold/9216-9471.pbf +3 -0
- package/fonts/Open Sans Bold/9472-9727.pbf +0 -0
- package/fonts/Open Sans Bold/9728-9983.pbf +3 -0
- package/fonts/Open Sans Bold/9984-10239.pbf +4 -0
- package/fonts/Open Sans Italic/0-255.pbf +0 -0
- package/fonts/Open Sans Italic/1024-1279.pbf +0 -0
- package/fonts/Open Sans Italic/10240-10495.pbf +3 -0
- package/fonts/Open Sans Italic/10496-10751.pbf +3 -0
- package/fonts/Open Sans Italic/10752-11007.pbf +3 -0
- package/fonts/Open Sans Italic/11008-11263.pbf +3 -0
- package/fonts/Open Sans Italic/11264-11519.pbf +3 -0
- package/fonts/Open Sans Italic/11520-11775.pbf +3 -0
- package/fonts/Open Sans Italic/11776-12031.pbf +3 -0
- package/fonts/Open Sans Italic/12032-12287.pbf +3 -0
- package/fonts/Open Sans Italic/12288-12543.pbf +3 -0
- package/fonts/Open Sans Italic/12544-12799.pbf +3 -0
- package/fonts/Open Sans Italic/1280-1535.pbf +0 -0
- package/fonts/Open Sans Italic/12800-13055.pbf +3 -0
- package/fonts/Open Sans Italic/13056-13311.pbf +3 -0
- package/fonts/Open Sans Italic/13312-13567.pbf +3 -0
- package/fonts/Open Sans Italic/13568-13823.pbf +3 -0
- package/fonts/Open Sans Italic/13824-14079.pbf +3 -0
- package/fonts/Open Sans Italic/14080-14335.pbf +3 -0
- package/fonts/Open Sans Italic/14336-14591.pbf +3 -0
- package/fonts/Open Sans Italic/14592-14847.pbf +3 -0
- package/fonts/Open Sans Italic/14848-15103.pbf +3 -0
- package/fonts/Open Sans Italic/15104-15359.pbf +3 -0
- package/fonts/Open Sans Italic/1536-1791.pbf +3 -0
- package/fonts/Open Sans Italic/15360-15615.pbf +3 -0
- package/fonts/Open Sans Italic/15616-15871.pbf +3 -0
- package/fonts/Open Sans Italic/15872-16127.pbf +3 -0
- package/fonts/Open Sans Italic/16128-16383.pbf +3 -0
- package/fonts/Open Sans Italic/16384-16639.pbf +3 -0
- package/fonts/Open Sans Italic/16640-16895.pbf +3 -0
- package/fonts/Open Sans Italic/16896-17151.pbf +3 -0
- package/fonts/Open Sans Italic/17152-17407.pbf +3 -0
- package/fonts/Open Sans Italic/17408-17663.pbf +3 -0
- package/fonts/Open Sans Italic/17664-17919.pbf +3 -0
- package/fonts/Open Sans Italic/1792-2047.pbf +3 -0
- package/fonts/Open Sans Italic/17920-18175.pbf +3 -0
- package/fonts/Open Sans Italic/18176-18431.pbf +3 -0
- package/fonts/Open Sans Italic/18432-18687.pbf +3 -0
- package/fonts/Open Sans Italic/18688-18943.pbf +3 -0
- package/fonts/Open Sans Italic/18944-19199.pbf +3 -0
- package/fonts/Open Sans Italic/19200-19455.pbf +3 -0
- package/fonts/Open Sans Italic/19456-19711.pbf +3 -0
- package/fonts/Open Sans Italic/19712-19967.pbf +3 -0
- package/fonts/Open Sans Italic/19968-20223.pbf +3 -0
- package/fonts/Open Sans Italic/20224-20479.pbf +3 -0
- package/fonts/Open Sans Italic/2048-2303.pbf +3 -0
- package/fonts/Open Sans Italic/20480-20735.pbf +3 -0
- package/fonts/Open Sans Italic/20736-20991.pbf +3 -0
- package/fonts/Open Sans Italic/20992-21247.pbf +3 -0
- package/fonts/Open Sans Italic/21248-21503.pbf +3 -0
- package/fonts/Open Sans Italic/21504-21759.pbf +3 -0
- package/fonts/Open Sans Italic/21760-22015.pbf +3 -0
- package/fonts/Open Sans Italic/22016-22271.pbf +3 -0
- package/fonts/Open Sans Italic/22272-22527.pbf +3 -0
- package/fonts/Open Sans Italic/22528-22783.pbf +3 -0
- package/fonts/Open Sans Italic/22784-23039.pbf +3 -0
- package/fonts/Open Sans Italic/2304-2559.pbf +3 -0
- package/fonts/Open Sans Italic/23040-23295.pbf +3 -0
- package/fonts/Open Sans Italic/23296-23551.pbf +3 -0
- package/fonts/Open Sans Italic/23552-23807.pbf +3 -0
- package/fonts/Open Sans Italic/23808-24063.pbf +3 -0
- package/fonts/Open Sans Italic/24064-24319.pbf +3 -0
- package/fonts/Open Sans Italic/24320-24575.pbf +3 -0
- package/fonts/Open Sans Italic/24576-24831.pbf +3 -0
- package/fonts/Open Sans Italic/24832-25087.pbf +3 -0
- package/fonts/Open Sans Italic/25088-25343.pbf +3 -0
- package/fonts/Open Sans Italic/25344-25599.pbf +3 -0
- package/fonts/Open Sans Italic/256-511.pbf +0 -0
- package/fonts/Open Sans Italic/2560-2815.pbf +3 -0
- package/fonts/Open Sans Italic/25600-25855.pbf +3 -0
- package/fonts/Open Sans Italic/25856-26111.pbf +3 -0
- package/fonts/Open Sans Italic/26112-26367.pbf +3 -0
- package/fonts/Open Sans Italic/26368-26623.pbf +3 -0
- package/fonts/Open Sans Italic/26624-26879.pbf +3 -0
- package/fonts/Open Sans Italic/26880-27135.pbf +3 -0
- package/fonts/Open Sans Italic/27136-27391.pbf +3 -0
- package/fonts/Open Sans Italic/27392-27647.pbf +3 -0
- package/fonts/Open Sans Italic/27648-27903.pbf +3 -0
- package/fonts/Open Sans Italic/27904-28159.pbf +3 -0
- package/fonts/Open Sans Italic/2816-3071.pbf +3 -0
- package/fonts/Open Sans Italic/28160-28415.pbf +3 -0
- package/fonts/Open Sans Italic/28416-28671.pbf +3 -0
- package/fonts/Open Sans Italic/28672-28927.pbf +3 -0
- package/fonts/Open Sans Italic/28928-29183.pbf +3 -0
- package/fonts/Open Sans Italic/29184-29439.pbf +3 -0
- package/fonts/Open Sans Italic/29440-29695.pbf +3 -0
- package/fonts/Open Sans Italic/29696-29951.pbf +3 -0
- package/fonts/Open Sans Italic/29952-30207.pbf +3 -0
- package/fonts/Open Sans Italic/30208-30463.pbf +3 -0
- package/fonts/Open Sans Italic/30464-30719.pbf +3 -0
- package/fonts/Open Sans Italic/3072-3327.pbf +3 -0
- package/fonts/Open Sans Italic/30720-30975.pbf +3 -0
- package/fonts/Open Sans Italic/30976-31231.pbf +3 -0
- package/fonts/Open Sans Italic/31232-31487.pbf +3 -0
- package/fonts/Open Sans Italic/31488-31743.pbf +3 -0
- package/fonts/Open Sans Italic/31744-31999.pbf +3 -0
- package/fonts/Open Sans Italic/32000-32255.pbf +3 -0
- package/fonts/Open Sans Italic/32256-32511.pbf +3 -0
- package/fonts/Open Sans Italic/32512-32767.pbf +3 -0
- package/fonts/Open Sans Italic/32768-33023.pbf +3 -0
- package/fonts/Open Sans Italic/33024-33279.pbf +3 -0
- package/fonts/Open Sans Italic/3328-3583.pbf +3 -0
- package/fonts/Open Sans Italic/33280-33535.pbf +3 -0
- package/fonts/Open Sans Italic/33536-33791.pbf +3 -0
- package/fonts/Open Sans Italic/33792-34047.pbf +3 -0
- package/fonts/Open Sans Italic/34048-34303.pbf +3 -0
- package/fonts/Open Sans Italic/34304-34559.pbf +3 -0
- package/fonts/Open Sans Italic/34560-34815.pbf +3 -0
- package/fonts/Open Sans Italic/34816-35071.pbf +3 -0
- package/fonts/Open Sans Italic/35072-35327.pbf +3 -0
- package/fonts/Open Sans Italic/35328-35583.pbf +3 -0
- package/fonts/Open Sans Italic/35584-35839.pbf +3 -0
- package/fonts/Open Sans Italic/3584-3839.pbf +3 -0
- package/fonts/Open Sans Italic/35840-36095.pbf +3 -0
- package/fonts/Open Sans Italic/36096-36351.pbf +3 -0
- package/fonts/Open Sans Italic/36352-36607.pbf +3 -0
- package/fonts/Open Sans Italic/36608-36863.pbf +3 -0
- package/fonts/Open Sans Italic/36864-37119.pbf +3 -0
- package/fonts/Open Sans Italic/37120-37375.pbf +3 -0
- package/fonts/Open Sans Italic/37376-37631.pbf +3 -0
- package/fonts/Open Sans Italic/37632-37887.pbf +3 -0
- package/fonts/Open Sans Italic/37888-38143.pbf +3 -0
- package/fonts/Open Sans Italic/38144-38399.pbf +3 -0
- package/fonts/Open Sans Italic/3840-4095.pbf +3 -0
- package/fonts/Open Sans Italic/38400-38655.pbf +3 -0
- package/fonts/Open Sans Italic/38656-38911.pbf +3 -0
- package/fonts/Open Sans Italic/38912-39167.pbf +3 -0
- package/fonts/Open Sans Italic/39168-39423.pbf +3 -0
- package/fonts/Open Sans Italic/39424-39679.pbf +3 -0
- package/fonts/Open Sans Italic/39680-39935.pbf +3 -0
- package/fonts/Open Sans Italic/39936-40191.pbf +3 -0
- package/fonts/Open Sans Italic/40192-40447.pbf +3 -0
- package/fonts/Open Sans Italic/40448-40703.pbf +3 -0
- package/fonts/Open Sans Italic/40704-40959.pbf +3 -0
- package/fonts/Open Sans Italic/4096-4351.pbf +3 -0
- package/fonts/Open Sans Italic/40960-41215.pbf +3 -0
- package/fonts/Open Sans Italic/41216-41471.pbf +3 -0
- package/fonts/Open Sans Italic/41472-41727.pbf +3 -0
- package/fonts/Open Sans Italic/41728-41983.pbf +3 -0
- package/fonts/Open Sans Italic/41984-42239.pbf +3 -0
- package/fonts/Open Sans Italic/42240-42495.pbf +3 -0
- package/fonts/Open Sans Italic/42496-42751.pbf +3 -0
- package/fonts/Open Sans Italic/42752-43007.pbf +3 -0
- package/fonts/Open Sans Italic/43008-43263.pbf +3 -0
- package/fonts/Open Sans Italic/43264-43519.pbf +3 -0
- package/fonts/Open Sans Italic/4352-4607.pbf +3 -0
- package/fonts/Open Sans Italic/43520-43775.pbf +3 -0
- package/fonts/Open Sans Italic/43776-44031.pbf +3 -0
- package/fonts/Open Sans Italic/44032-44287.pbf +3 -0
- package/fonts/Open Sans Italic/44288-44543.pbf +3 -0
- package/fonts/Open Sans Italic/44544-44799.pbf +3 -0
- package/fonts/Open Sans Italic/44800-45055.pbf +3 -0
- package/fonts/Open Sans Italic/45056-45311.pbf +3 -0
- package/fonts/Open Sans Italic/45312-45567.pbf +3 -0
- package/fonts/Open Sans Italic/45568-45823.pbf +3 -0
- package/fonts/Open Sans Italic/45824-46079.pbf +3 -0
- package/fonts/Open Sans Italic/4608-4863.pbf +3 -0
- package/fonts/Open Sans Italic/46080-46335.pbf +3 -0
- package/fonts/Open Sans Italic/46336-46591.pbf +3 -0
- package/fonts/Open Sans Italic/46592-46847.pbf +3 -0
- package/fonts/Open Sans Italic/46848-47103.pbf +3 -0
- package/fonts/Open Sans Italic/47104-47359.pbf +3 -0
- package/fonts/Open Sans Italic/47360-47615.pbf +3 -0
- package/fonts/Open Sans Italic/47616-47871.pbf +3 -0
- package/fonts/Open Sans Italic/47872-48127.pbf +3 -0
- package/fonts/Open Sans Italic/48128-48383.pbf +3 -0
- package/fonts/Open Sans Italic/48384-48639.pbf +3 -0
- package/fonts/Open Sans Italic/4864-5119.pbf +3 -0
- package/fonts/Open Sans Italic/48640-48895.pbf +3 -0
- package/fonts/Open Sans Italic/48896-49151.pbf +3 -0
- package/fonts/Open Sans Italic/49152-49407.pbf +3 -0
- package/fonts/Open Sans Italic/49408-49663.pbf +3 -0
- package/fonts/Open Sans Italic/49664-49919.pbf +3 -0
- package/fonts/Open Sans Italic/49920-50175.pbf +3 -0
- package/fonts/Open Sans Italic/50176-50431.pbf +3 -0
- package/fonts/Open Sans Italic/50432-50687.pbf +3 -0
- package/fonts/Open Sans Italic/50688-50943.pbf +3 -0
- package/fonts/Open Sans Italic/50944-51199.pbf +3 -0
- package/fonts/Open Sans Italic/512-767.pbf +0 -0
- package/fonts/Open Sans Italic/5120-5375.pbf +3 -0
- package/fonts/Open Sans Italic/51200-51455.pbf +3 -0
- package/fonts/Open Sans Italic/51456-51711.pbf +3 -0
- package/fonts/Open Sans Italic/51712-51967.pbf +3 -0
- package/fonts/Open Sans Italic/51968-52223.pbf +3 -0
- package/fonts/Open Sans Italic/52224-52479.pbf +3 -0
- package/fonts/Open Sans Italic/52480-52735.pbf +3 -0
- package/fonts/Open Sans Italic/52736-52991.pbf +3 -0
- package/fonts/Open Sans Italic/52992-53247.pbf +3 -0
- package/fonts/Open Sans Italic/53248-53503.pbf +3 -0
- package/fonts/Open Sans Italic/53504-53759.pbf +3 -0
- package/fonts/Open Sans Italic/5376-5631.pbf +3 -0
- package/fonts/Open Sans Italic/53760-54015.pbf +3 -0
- package/fonts/Open Sans Italic/54016-54271.pbf +3 -0
- package/fonts/Open Sans Italic/54272-54527.pbf +3 -0
- package/fonts/Open Sans Italic/54528-54783.pbf +3 -0
- package/fonts/Open Sans Italic/54784-55039.pbf +3 -0
- package/fonts/Open Sans Italic/55040-55295.pbf +3 -0
- package/fonts/Open Sans Italic/55296-55551.pbf +3 -0
- package/fonts/Open Sans Italic/55552-55807.pbf +3 -0
- package/fonts/Open Sans Italic/55808-56063.pbf +3 -0
- package/fonts/Open Sans Italic/56064-56319.pbf +3 -0
- package/fonts/Open Sans Italic/5632-5887.pbf +3 -0
- package/fonts/Open Sans Italic/56320-56575.pbf +3 -0
- package/fonts/Open Sans Italic/56576-56831.pbf +3 -0
- package/fonts/Open Sans Italic/56832-57087.pbf +3 -0
- package/fonts/Open Sans Italic/57088-57343.pbf +3 -0
- package/fonts/Open Sans Italic/57344-57599.pbf +3 -0
- package/fonts/Open Sans Italic/57600-57855.pbf +3 -0
- package/fonts/Open Sans Italic/57856-58111.pbf +3 -0
- package/fonts/Open Sans Italic/58112-58367.pbf +3 -0
- package/fonts/Open Sans Italic/58368-58623.pbf +3 -0
- package/fonts/Open Sans Italic/58624-58879.pbf +3 -0
- package/fonts/Open Sans Italic/5888-6143.pbf +3 -0
- package/fonts/Open Sans Italic/58880-59135.pbf +3 -0
- package/fonts/Open Sans Italic/59136-59391.pbf +3 -0
- package/fonts/Open Sans Italic/59392-59647.pbf +3 -0
- package/fonts/Open Sans Italic/59648-59903.pbf +3 -0
- package/fonts/Open Sans Italic/59904-60159.pbf +3 -0
- package/fonts/Open Sans Italic/60160-60415.pbf +3 -0
- package/fonts/Open Sans Italic/60416-60671.pbf +3 -0
- package/fonts/Open Sans Italic/60672-60927.pbf +3 -0
- package/fonts/Open Sans Italic/60928-61183.pbf +3 -0
- package/fonts/Open Sans Italic/61184-61439.pbf +3 -0
- package/fonts/Open Sans Italic/6144-6399.pbf +3 -0
- package/fonts/Open Sans Italic/61440-61695.pbf +3 -0
- package/fonts/Open Sans Italic/61696-61951.pbf +3 -0
- package/fonts/Open Sans Italic/61952-62207.pbf +3 -0
- package/fonts/Open Sans Italic/62208-62463.pbf +3 -0
- package/fonts/Open Sans Italic/62464-62719.pbf +3 -0
- package/fonts/Open Sans Italic/62720-62975.pbf +3 -0
- package/fonts/Open Sans Italic/62976-63231.pbf +3 -0
- package/fonts/Open Sans Italic/63232-63487.pbf +3 -0
- package/fonts/Open Sans Italic/63488-63743.pbf +3 -0
- package/fonts/Open Sans Italic/63744-63999.pbf +3 -0
- package/fonts/Open Sans Italic/6400-6655.pbf +3 -0
- package/fonts/Open Sans Italic/64000-64255.pbf +3 -0
- package/fonts/Open Sans Italic/64256-64511.pbf +0 -0
- package/fonts/Open Sans Italic/64512-64767.pbf +3 -0
- package/fonts/Open Sans Italic/64768-65023.pbf +3 -0
- package/fonts/Open Sans Italic/65024-65279.pbf +0 -0
- package/fonts/Open Sans Italic/65280-65535.pbf +0 -0
- package/fonts/Open Sans Italic/6656-6911.pbf +3 -0
- package/fonts/Open Sans Italic/6912-7167.pbf +3 -0
- package/fonts/Open Sans Italic/7168-7423.pbf +3 -0
- package/fonts/Open Sans Italic/7424-7679.pbf +3 -0
- package/fonts/Open Sans Italic/768-1023.pbf +0 -0
- package/fonts/Open Sans Italic/7680-7935.pbf +0 -0
- package/fonts/Open Sans Italic/7936-8191.pbf +0 -0
- package/fonts/Open Sans Italic/8192-8447.pbf +0 -0
- package/fonts/Open Sans Italic/8448-8703.pbf +0 -0
- package/fonts/Open Sans Italic/8704-8959.pbf +0 -0
- package/fonts/Open Sans Italic/8960-9215.pbf +3 -0
- package/fonts/Open Sans Italic/9216-9471.pbf +3 -0
- package/fonts/Open Sans Italic/9472-9727.pbf +0 -0
- package/fonts/Open Sans Italic/9728-9983.pbf +3 -0
- package/fonts/Open Sans Italic/9984-10239.pbf +4 -0
- package/fonts/Open Sans Regular/0-255.pbf +0 -0
- package/fonts/Open Sans Regular/1024-1279.pbf +0 -0
- package/fonts/Open Sans Regular/10240-10495.pbf +3 -0
- package/fonts/Open Sans Regular/10496-10751.pbf +3 -0
- package/fonts/Open Sans Regular/10752-11007.pbf +3 -0
- package/fonts/Open Sans Regular/11008-11263.pbf +3 -0
- package/fonts/Open Sans Regular/11264-11519.pbf +3 -0
- package/fonts/Open Sans Regular/11520-11775.pbf +3 -0
- package/fonts/Open Sans Regular/11776-12031.pbf +3 -0
- package/fonts/Open Sans Regular/12032-12287.pbf +3 -0
- package/fonts/Open Sans Regular/12288-12543.pbf +3 -0
- package/fonts/Open Sans Regular/12544-12799.pbf +3 -0
- package/fonts/Open Sans Regular/1280-1535.pbf +0 -0
- package/fonts/Open Sans Regular/12800-13055.pbf +3 -0
- package/fonts/Open Sans Regular/13056-13311.pbf +3 -0
- package/fonts/Open Sans Regular/13312-13567.pbf +3 -0
- package/fonts/Open Sans Regular/13568-13823.pbf +3 -0
- package/fonts/Open Sans Regular/13824-14079.pbf +3 -0
- package/fonts/Open Sans Regular/14080-14335.pbf +3 -0
- package/fonts/Open Sans Regular/14336-14591.pbf +3 -0
- package/fonts/Open Sans Regular/14592-14847.pbf +3 -0
- package/fonts/Open Sans Regular/14848-15103.pbf +3 -0
- package/fonts/Open Sans Regular/15104-15359.pbf +3 -0
- package/fonts/Open Sans Regular/1536-1791.pbf +3 -0
- package/fonts/Open Sans Regular/15360-15615.pbf +3 -0
- package/fonts/Open Sans Regular/15616-15871.pbf +3 -0
- package/fonts/Open Sans Regular/15872-16127.pbf +3 -0
- package/fonts/Open Sans Regular/16128-16383.pbf +3 -0
- package/fonts/Open Sans Regular/16384-16639.pbf +3 -0
- package/fonts/Open Sans Regular/16640-16895.pbf +3 -0
- package/fonts/Open Sans Regular/16896-17151.pbf +3 -0
- package/fonts/Open Sans Regular/17152-17407.pbf +3 -0
- package/fonts/Open Sans Regular/17408-17663.pbf +3 -0
- package/fonts/Open Sans Regular/17664-17919.pbf +3 -0
- package/fonts/Open Sans Regular/1792-2047.pbf +3 -0
- package/fonts/Open Sans Regular/17920-18175.pbf +3 -0
- package/fonts/Open Sans Regular/18176-18431.pbf +3 -0
- package/fonts/Open Sans Regular/18432-18687.pbf +3 -0
- package/fonts/Open Sans Regular/18688-18943.pbf +3 -0
- package/fonts/Open Sans Regular/18944-19199.pbf +3 -0
- package/fonts/Open Sans Regular/19200-19455.pbf +3 -0
- package/fonts/Open Sans Regular/19456-19711.pbf +3 -0
- package/fonts/Open Sans Regular/19712-19967.pbf +3 -0
- package/fonts/Open Sans Regular/19968-20223.pbf +3 -0
- package/fonts/Open Sans Regular/20224-20479.pbf +3 -0
- package/fonts/Open Sans Regular/2048-2303.pbf +3 -0
- package/fonts/Open Sans Regular/20480-20735.pbf +3 -0
- package/fonts/Open Sans Regular/20736-20991.pbf +3 -0
- package/fonts/Open Sans Regular/20992-21247.pbf +3 -0
- package/fonts/Open Sans Regular/21248-21503.pbf +3 -0
- package/fonts/Open Sans Regular/21504-21759.pbf +3 -0
- package/fonts/Open Sans Regular/21760-22015.pbf +3 -0
- package/fonts/Open Sans Regular/22016-22271.pbf +3 -0
- package/fonts/Open Sans Regular/22272-22527.pbf +3 -0
- package/fonts/Open Sans Regular/22528-22783.pbf +3 -0
- package/fonts/Open Sans Regular/22784-23039.pbf +3 -0
- package/fonts/Open Sans Regular/2304-2559.pbf +3 -0
- package/fonts/Open Sans Regular/23040-23295.pbf +3 -0
- package/fonts/Open Sans Regular/23296-23551.pbf +3 -0
- package/fonts/Open Sans Regular/23552-23807.pbf +3 -0
- package/fonts/Open Sans Regular/23808-24063.pbf +3 -0
- package/fonts/Open Sans Regular/24064-24319.pbf +3 -0
- package/fonts/Open Sans Regular/24320-24575.pbf +3 -0
- package/fonts/Open Sans Regular/24576-24831.pbf +3 -0
- package/fonts/Open Sans Regular/24832-25087.pbf +3 -0
- package/fonts/Open Sans Regular/25088-25343.pbf +3 -0
- package/fonts/Open Sans Regular/25344-25599.pbf +3 -0
- package/fonts/Open Sans Regular/256-511.pbf +0 -0
- package/fonts/Open Sans Regular/2560-2815.pbf +3 -0
- package/fonts/Open Sans Regular/25600-25855.pbf +3 -0
- package/fonts/Open Sans Regular/25856-26111.pbf +3 -0
- package/fonts/Open Sans Regular/26112-26367.pbf +3 -0
- package/fonts/Open Sans Regular/26368-26623.pbf +3 -0
- package/fonts/Open Sans Regular/26624-26879.pbf +3 -0
- package/fonts/Open Sans Regular/26880-27135.pbf +3 -0
- package/fonts/Open Sans Regular/27136-27391.pbf +3 -0
- package/fonts/Open Sans Regular/27392-27647.pbf +3 -0
- package/fonts/Open Sans Regular/27648-27903.pbf +3 -0
- package/fonts/Open Sans Regular/27904-28159.pbf +3 -0
- package/fonts/Open Sans Regular/2816-3071.pbf +3 -0
- package/fonts/Open Sans Regular/28160-28415.pbf +3 -0
- package/fonts/Open Sans Regular/28416-28671.pbf +3 -0
- package/fonts/Open Sans Regular/28672-28927.pbf +3 -0
- package/fonts/Open Sans Regular/28928-29183.pbf +3 -0
- package/fonts/Open Sans Regular/29184-29439.pbf +3 -0
- package/fonts/Open Sans Regular/29440-29695.pbf +3 -0
- package/fonts/Open Sans Regular/29696-29951.pbf +3 -0
- package/fonts/Open Sans Regular/29952-30207.pbf +3 -0
- package/fonts/Open Sans Regular/30208-30463.pbf +3 -0
- package/fonts/Open Sans Regular/30464-30719.pbf +3 -0
- package/fonts/Open Sans Regular/3072-3327.pbf +3 -0
- package/fonts/Open Sans Regular/30720-30975.pbf +3 -0
- package/fonts/Open Sans Regular/30976-31231.pbf +3 -0
- package/fonts/Open Sans Regular/31232-31487.pbf +3 -0
- package/fonts/Open Sans Regular/31488-31743.pbf +3 -0
- package/fonts/Open Sans Regular/31744-31999.pbf +3 -0
- package/fonts/Open Sans Regular/32000-32255.pbf +3 -0
- package/fonts/Open Sans Regular/32256-32511.pbf +3 -0
- package/fonts/Open Sans Regular/32512-32767.pbf +3 -0
- package/fonts/Open Sans Regular/32768-33023.pbf +3 -0
- package/fonts/Open Sans Regular/33024-33279.pbf +3 -0
- package/fonts/Open Sans Regular/3328-3583.pbf +3 -0
- package/fonts/Open Sans Regular/33280-33535.pbf +3 -0
- package/fonts/Open Sans Regular/33536-33791.pbf +3 -0
- package/fonts/Open Sans Regular/33792-34047.pbf +3 -0
- package/fonts/Open Sans Regular/34048-34303.pbf +3 -0
- package/fonts/Open Sans Regular/34304-34559.pbf +3 -0
- package/fonts/Open Sans Regular/34560-34815.pbf +3 -0
- package/fonts/Open Sans Regular/34816-35071.pbf +3 -0
- package/fonts/Open Sans Regular/35072-35327.pbf +3 -0
- package/fonts/Open Sans Regular/35328-35583.pbf +3 -0
- package/fonts/Open Sans Regular/35584-35839.pbf +3 -0
- package/fonts/Open Sans Regular/3584-3839.pbf +3 -0
- package/fonts/Open Sans Regular/35840-36095.pbf +3 -0
- package/fonts/Open Sans Regular/36096-36351.pbf +3 -0
- package/fonts/Open Sans Regular/36352-36607.pbf +3 -0
- package/fonts/Open Sans Regular/36608-36863.pbf +3 -0
- package/fonts/Open Sans Regular/36864-37119.pbf +3 -0
- package/fonts/Open Sans Regular/37120-37375.pbf +3 -0
- package/fonts/Open Sans Regular/37376-37631.pbf +3 -0
- package/fonts/Open Sans Regular/37632-37887.pbf +3 -0
- package/fonts/Open Sans Regular/37888-38143.pbf +3 -0
- package/fonts/Open Sans Regular/38144-38399.pbf +3 -0
- package/fonts/Open Sans Regular/3840-4095.pbf +3 -0
- package/fonts/Open Sans Regular/38400-38655.pbf +3 -0
- package/fonts/Open Sans Regular/38656-38911.pbf +3 -0
- package/fonts/Open Sans Regular/38912-39167.pbf +3 -0
- package/fonts/Open Sans Regular/39168-39423.pbf +3 -0
- package/fonts/Open Sans Regular/39424-39679.pbf +3 -0
- package/fonts/Open Sans Regular/39680-39935.pbf +3 -0
- package/fonts/Open Sans Regular/39936-40191.pbf +3 -0
- package/fonts/Open Sans Regular/40192-40447.pbf +3 -0
- package/fonts/Open Sans Regular/40448-40703.pbf +3 -0
- package/fonts/Open Sans Regular/40704-40959.pbf +3 -0
- package/fonts/Open Sans Regular/4096-4351.pbf +3 -0
- package/fonts/Open Sans Regular/40960-41215.pbf +3 -0
- package/fonts/Open Sans Regular/41216-41471.pbf +3 -0
- package/fonts/Open Sans Regular/41472-41727.pbf +3 -0
- package/fonts/Open Sans Regular/41728-41983.pbf +3 -0
- package/fonts/Open Sans Regular/41984-42239.pbf +3 -0
- package/fonts/Open Sans Regular/42240-42495.pbf +3 -0
- package/fonts/Open Sans Regular/42496-42751.pbf +3 -0
- package/fonts/Open Sans Regular/42752-43007.pbf +3 -0
- package/fonts/Open Sans Regular/43008-43263.pbf +3 -0
- package/fonts/Open Sans Regular/43264-43519.pbf +3 -0
- package/fonts/Open Sans Regular/4352-4607.pbf +3 -0
- package/fonts/Open Sans Regular/43520-43775.pbf +3 -0
- package/fonts/Open Sans Regular/43776-44031.pbf +3 -0
- package/fonts/Open Sans Regular/44032-44287.pbf +3 -0
- package/fonts/Open Sans Regular/44288-44543.pbf +3 -0
- package/fonts/Open Sans Regular/44544-44799.pbf +3 -0
- package/fonts/Open Sans Regular/44800-45055.pbf +3 -0
- package/fonts/Open Sans Regular/45056-45311.pbf +3 -0
- package/fonts/Open Sans Regular/45312-45567.pbf +3 -0
- package/fonts/Open Sans Regular/45568-45823.pbf +3 -0
- package/fonts/Open Sans Regular/45824-46079.pbf +3 -0
- package/fonts/Open Sans Regular/4608-4863.pbf +3 -0
- package/fonts/Open Sans Regular/46080-46335.pbf +3 -0
- package/fonts/Open Sans Regular/46336-46591.pbf +3 -0
- package/fonts/Open Sans Regular/46592-46847.pbf +3 -0
- package/fonts/Open Sans Regular/46848-47103.pbf +3 -0
- package/fonts/Open Sans Regular/47104-47359.pbf +3 -0
- package/fonts/Open Sans Regular/47360-47615.pbf +3 -0
- package/fonts/Open Sans Regular/47616-47871.pbf +3 -0
- package/fonts/Open Sans Regular/47872-48127.pbf +3 -0
- package/fonts/Open Sans Regular/48128-48383.pbf +3 -0
- package/fonts/Open Sans Regular/48384-48639.pbf +3 -0
- package/fonts/Open Sans Regular/4864-5119.pbf +3 -0
- package/fonts/Open Sans Regular/48640-48895.pbf +3 -0
- package/fonts/Open Sans Regular/48896-49151.pbf +3 -0
- package/fonts/Open Sans Regular/49152-49407.pbf +3 -0
- package/fonts/Open Sans Regular/49408-49663.pbf +3 -0
- package/fonts/Open Sans Regular/49664-49919.pbf +3 -0
- package/fonts/Open Sans Regular/49920-50175.pbf +3 -0
- package/fonts/Open Sans Regular/50176-50431.pbf +3 -0
- package/fonts/Open Sans Regular/50432-50687.pbf +3 -0
- package/fonts/Open Sans Regular/50688-50943.pbf +3 -0
- package/fonts/Open Sans Regular/50944-51199.pbf +3 -0
- package/fonts/Open Sans Regular/512-767.pbf +0 -0
- package/fonts/Open Sans Regular/5120-5375.pbf +3 -0
- package/fonts/Open Sans Regular/51200-51455.pbf +3 -0
- package/fonts/Open Sans Regular/51456-51711.pbf +3 -0
- package/fonts/Open Sans Regular/51712-51967.pbf +3 -0
- package/fonts/Open Sans Regular/51968-52223.pbf +3 -0
- package/fonts/Open Sans Regular/52224-52479.pbf +3 -0
- package/fonts/Open Sans Regular/52480-52735.pbf +3 -0
- package/fonts/Open Sans Regular/52736-52991.pbf +3 -0
- package/fonts/Open Sans Regular/52992-53247.pbf +3 -0
- package/fonts/Open Sans Regular/53248-53503.pbf +3 -0
- package/fonts/Open Sans Regular/53504-53759.pbf +3 -0
- package/fonts/Open Sans Regular/5376-5631.pbf +3 -0
- package/fonts/Open Sans Regular/53760-54015.pbf +3 -0
- package/fonts/Open Sans Regular/54016-54271.pbf +3 -0
- package/fonts/Open Sans Regular/54272-54527.pbf +3 -0
- package/fonts/Open Sans Regular/54528-54783.pbf +3 -0
- package/fonts/Open Sans Regular/54784-55039.pbf +3 -0
- package/fonts/Open Sans Regular/55040-55295.pbf +3 -0
- package/fonts/Open Sans Regular/55296-55551.pbf +3 -0
- package/fonts/Open Sans Regular/55552-55807.pbf +3 -0
- package/fonts/Open Sans Regular/55808-56063.pbf +3 -0
- package/fonts/Open Sans Regular/56064-56319.pbf +3 -0
- package/fonts/Open Sans Regular/5632-5887.pbf +3 -0
- package/fonts/Open Sans Regular/56320-56575.pbf +3 -0
- package/fonts/Open Sans Regular/56576-56831.pbf +3 -0
- package/fonts/Open Sans Regular/56832-57087.pbf +3 -0
- package/fonts/Open Sans Regular/57088-57343.pbf +3 -0
- package/fonts/Open Sans Regular/57344-57599.pbf +3 -0
- package/fonts/Open Sans Regular/57600-57855.pbf +3 -0
- package/fonts/Open Sans Regular/57856-58111.pbf +3 -0
- package/fonts/Open Sans Regular/58112-58367.pbf +3 -0
- package/fonts/Open Sans Regular/58368-58623.pbf +3 -0
- package/fonts/Open Sans Regular/58624-58879.pbf +3 -0
- package/fonts/Open Sans Regular/5888-6143.pbf +3 -0
- package/fonts/Open Sans Regular/58880-59135.pbf +3 -0
- package/fonts/Open Sans Regular/59136-59391.pbf +3 -0
- package/fonts/Open Sans Regular/59392-59647.pbf +3 -0
- package/fonts/Open Sans Regular/59648-59903.pbf +3 -0
- package/fonts/Open Sans Regular/59904-60159.pbf +3 -0
- package/fonts/Open Sans Regular/60160-60415.pbf +3 -0
- package/fonts/Open Sans Regular/60416-60671.pbf +3 -0
- package/fonts/Open Sans Regular/60672-60927.pbf +3 -0
- package/fonts/Open Sans Regular/60928-61183.pbf +3 -0
- package/fonts/Open Sans Regular/61184-61439.pbf +3 -0
- package/fonts/Open Sans Regular/6144-6399.pbf +3 -0
- package/fonts/Open Sans Regular/61440-61695.pbf +3 -0
- package/fonts/Open Sans Regular/61696-61951.pbf +3 -0
- package/fonts/Open Sans Regular/61952-62207.pbf +3 -0
- package/fonts/Open Sans Regular/62208-62463.pbf +3 -0
- package/fonts/Open Sans Regular/62464-62719.pbf +3 -0
- package/fonts/Open Sans Regular/62720-62975.pbf +3 -0
- package/fonts/Open Sans Regular/62976-63231.pbf +3 -0
- package/fonts/Open Sans Regular/63232-63487.pbf +3 -0
- package/fonts/Open Sans Regular/63488-63743.pbf +3 -0
- package/fonts/Open Sans Regular/63744-63999.pbf +3 -0
- package/fonts/Open Sans Regular/6400-6655.pbf +3 -0
- package/fonts/Open Sans Regular/64000-64255.pbf +3 -0
- package/fonts/Open Sans Regular/64256-64511.pbf +0 -0
- package/fonts/Open Sans Regular/64512-64767.pbf +3 -0
- package/fonts/Open Sans Regular/64768-65023.pbf +3 -0
- package/fonts/Open Sans Regular/65024-65279.pbf +0 -0
- package/fonts/Open Sans Regular/65280-65535.pbf +0 -0
- package/fonts/Open Sans Regular/6656-6911.pbf +3 -0
- package/fonts/Open Sans Regular/6912-7167.pbf +3 -0
- package/fonts/Open Sans Regular/7168-7423.pbf +3 -0
- package/fonts/Open Sans Regular/7424-7679.pbf +3 -0
- package/fonts/Open Sans Regular/768-1023.pbf +0 -0
- package/fonts/Open Sans Regular/7680-7935.pbf +0 -0
- package/fonts/Open Sans Regular/7936-8191.pbf +0 -0
- package/fonts/Open Sans Regular/8192-8447.pbf +0 -0
- package/fonts/Open Sans Regular/8448-8703.pbf +0 -0
- package/fonts/Open Sans Regular/8704-8959.pbf +0 -0
- package/fonts/Open Sans Regular/8960-9215.pbf +3 -0
- package/fonts/Open Sans Regular/9216-9471.pbf +3 -0
- package/fonts/Open Sans Regular/9472-9727.pbf +0 -0
- package/fonts/Open Sans Regular/9728-9983.pbf +3 -0
- package/fonts/Open Sans Regular/9984-10239.pbf +4 -0
- package/fonts/Open Sans Semibold/0-255.pbf +0 -0
- package/fonts/Open Sans Semibold/1024-1279.pbf +0 -0
- package/fonts/Open Sans Semibold/10240-10495.pbf +3 -0
- package/fonts/Open Sans Semibold/10496-10751.pbf +3 -0
- package/fonts/Open Sans Semibold/10752-11007.pbf +3 -0
- package/fonts/Open Sans Semibold/11008-11263.pbf +3 -0
- package/fonts/Open Sans Semibold/11264-11519.pbf +3 -0
- package/fonts/Open Sans Semibold/11520-11775.pbf +3 -0
- package/fonts/Open Sans Semibold/11776-12031.pbf +3 -0
- package/fonts/Open Sans Semibold/12032-12287.pbf +3 -0
- package/fonts/Open Sans Semibold/12288-12543.pbf +3 -0
- package/fonts/Open Sans Semibold/12544-12799.pbf +3 -0
- package/fonts/Open Sans Semibold/1280-1535.pbf +0 -0
- package/fonts/Open Sans Semibold/12800-13055.pbf +3 -0
- package/fonts/Open Sans Semibold/13056-13311.pbf +3 -0
- package/fonts/Open Sans Semibold/13312-13567.pbf +3 -0
- package/fonts/Open Sans Semibold/13568-13823.pbf +3 -0
- package/fonts/Open Sans Semibold/13824-14079.pbf +3 -0
- package/fonts/Open Sans Semibold/14080-14335.pbf +3 -0
- package/fonts/Open Sans Semibold/14336-14591.pbf +3 -0
- package/fonts/Open Sans Semibold/14592-14847.pbf +3 -0
- package/fonts/Open Sans Semibold/14848-15103.pbf +3 -0
- package/fonts/Open Sans Semibold/15104-15359.pbf +3 -0
- package/fonts/Open Sans Semibold/1536-1791.pbf +3 -0
- package/fonts/Open Sans Semibold/15360-15615.pbf +3 -0
- package/fonts/Open Sans Semibold/15616-15871.pbf +3 -0
- package/fonts/Open Sans Semibold/15872-16127.pbf +3 -0
- package/fonts/Open Sans Semibold/16128-16383.pbf +3 -0
- package/fonts/Open Sans Semibold/16384-16639.pbf +3 -0
- package/fonts/Open Sans Semibold/16640-16895.pbf +3 -0
- package/fonts/Open Sans Semibold/16896-17151.pbf +3 -0
- package/fonts/Open Sans Semibold/17152-17407.pbf +3 -0
- package/fonts/Open Sans Semibold/17408-17663.pbf +3 -0
- package/fonts/Open Sans Semibold/17664-17919.pbf +3 -0
- package/fonts/Open Sans Semibold/1792-2047.pbf +3 -0
- package/fonts/Open Sans Semibold/17920-18175.pbf +3 -0
- package/fonts/Open Sans Semibold/18176-18431.pbf +3 -0
- package/fonts/Open Sans Semibold/18432-18687.pbf +3 -0
- package/fonts/Open Sans Semibold/18688-18943.pbf +3 -0
- package/fonts/Open Sans Semibold/18944-19199.pbf +3 -0
- package/fonts/Open Sans Semibold/19200-19455.pbf +3 -0
- package/fonts/Open Sans Semibold/19456-19711.pbf +3 -0
- package/fonts/Open Sans Semibold/19712-19967.pbf +3 -0
- package/fonts/Open Sans Semibold/19968-20223.pbf +3 -0
- package/fonts/Open Sans Semibold/20224-20479.pbf +3 -0
- package/fonts/Open Sans Semibold/2048-2303.pbf +3 -0
- package/fonts/Open Sans Semibold/20480-20735.pbf +3 -0
- package/fonts/Open Sans Semibold/20736-20991.pbf +3 -0
- package/fonts/Open Sans Semibold/20992-21247.pbf +3 -0
- package/fonts/Open Sans Semibold/21248-21503.pbf +3 -0
- package/fonts/Open Sans Semibold/21504-21759.pbf +3 -0
- package/fonts/Open Sans Semibold/21760-22015.pbf +3 -0
- package/fonts/Open Sans Semibold/22016-22271.pbf +3 -0
- package/fonts/Open Sans Semibold/22272-22527.pbf +3 -0
- package/fonts/Open Sans Semibold/22528-22783.pbf +3 -0
- package/fonts/Open Sans Semibold/22784-23039.pbf +3 -0
- package/fonts/Open Sans Semibold/2304-2559.pbf +3 -0
- package/fonts/Open Sans Semibold/23040-23295.pbf +3 -0
- package/fonts/Open Sans Semibold/23296-23551.pbf +3 -0
- package/fonts/Open Sans Semibold/23552-23807.pbf +3 -0
- package/fonts/Open Sans Semibold/23808-24063.pbf +3 -0
- package/fonts/Open Sans Semibold/24064-24319.pbf +3 -0
- package/fonts/Open Sans Semibold/24320-24575.pbf +3 -0
- package/fonts/Open Sans Semibold/24576-24831.pbf +3 -0
- package/fonts/Open Sans Semibold/24832-25087.pbf +3 -0
- package/fonts/Open Sans Semibold/25088-25343.pbf +3 -0
- package/fonts/Open Sans Semibold/25344-25599.pbf +3 -0
- package/fonts/Open Sans Semibold/256-511.pbf +0 -0
- package/fonts/Open Sans Semibold/2560-2815.pbf +3 -0
- package/fonts/Open Sans Semibold/25600-25855.pbf +3 -0
- package/fonts/Open Sans Semibold/25856-26111.pbf +3 -0
- package/fonts/Open Sans Semibold/26112-26367.pbf +3 -0
- package/fonts/Open Sans Semibold/26368-26623.pbf +3 -0
- package/fonts/Open Sans Semibold/26624-26879.pbf +3 -0
- package/fonts/Open Sans Semibold/26880-27135.pbf +3 -0
- package/fonts/Open Sans Semibold/27136-27391.pbf +3 -0
- package/fonts/Open Sans Semibold/27392-27647.pbf +3 -0
- package/fonts/Open Sans Semibold/27648-27903.pbf +3 -0
- package/fonts/Open Sans Semibold/27904-28159.pbf +3 -0
- package/fonts/Open Sans Semibold/2816-3071.pbf +3 -0
- package/fonts/Open Sans Semibold/28160-28415.pbf +3 -0
- package/fonts/Open Sans Semibold/28416-28671.pbf +3 -0
- package/fonts/Open Sans Semibold/28672-28927.pbf +3 -0
- package/fonts/Open Sans Semibold/28928-29183.pbf +3 -0
- package/fonts/Open Sans Semibold/29184-29439.pbf +3 -0
- package/fonts/Open Sans Semibold/29440-29695.pbf +3 -0
- package/fonts/Open Sans Semibold/29696-29951.pbf +3 -0
- package/fonts/Open Sans Semibold/29952-30207.pbf +3 -0
- package/fonts/Open Sans Semibold/30208-30463.pbf +3 -0
- package/fonts/Open Sans Semibold/30464-30719.pbf +3 -0
- package/fonts/Open Sans Semibold/3072-3327.pbf +3 -0
- package/fonts/Open Sans Semibold/30720-30975.pbf +3 -0
- package/fonts/Open Sans Semibold/30976-31231.pbf +3 -0
- package/fonts/Open Sans Semibold/31232-31487.pbf +3 -0
- package/fonts/Open Sans Semibold/31488-31743.pbf +3 -0
- package/fonts/Open Sans Semibold/31744-31999.pbf +3 -0
- package/fonts/Open Sans Semibold/32000-32255.pbf +3 -0
- package/fonts/Open Sans Semibold/32256-32511.pbf +3 -0
- package/fonts/Open Sans Semibold/32512-32767.pbf +3 -0
- package/fonts/Open Sans Semibold/32768-33023.pbf +3 -0
- package/fonts/Open Sans Semibold/33024-33279.pbf +3 -0
- package/fonts/Open Sans Semibold/3328-3583.pbf +3 -0
- package/fonts/Open Sans Semibold/33280-33535.pbf +3 -0
- package/fonts/Open Sans Semibold/33536-33791.pbf +3 -0
- package/fonts/Open Sans Semibold/33792-34047.pbf +3 -0
- package/fonts/Open Sans Semibold/34048-34303.pbf +3 -0
- package/fonts/Open Sans Semibold/34304-34559.pbf +3 -0
- package/fonts/Open Sans Semibold/34560-34815.pbf +3 -0
- package/fonts/Open Sans Semibold/34816-35071.pbf +3 -0
- package/fonts/Open Sans Semibold/35072-35327.pbf +3 -0
- package/fonts/Open Sans Semibold/35328-35583.pbf +3 -0
- package/fonts/Open Sans Semibold/35584-35839.pbf +3 -0
- package/fonts/Open Sans Semibold/3584-3839.pbf +3 -0
- package/fonts/Open Sans Semibold/35840-36095.pbf +3 -0
- package/fonts/Open Sans Semibold/36096-36351.pbf +3 -0
- package/fonts/Open Sans Semibold/36352-36607.pbf +3 -0
- package/fonts/Open Sans Semibold/36608-36863.pbf +3 -0
- package/fonts/Open Sans Semibold/36864-37119.pbf +3 -0
- package/fonts/Open Sans Semibold/37120-37375.pbf +3 -0
- package/fonts/Open Sans Semibold/37376-37631.pbf +3 -0
- package/fonts/Open Sans Semibold/37632-37887.pbf +3 -0
- package/fonts/Open Sans Semibold/37888-38143.pbf +3 -0
- package/fonts/Open Sans Semibold/38144-38399.pbf +3 -0
- package/fonts/Open Sans Semibold/3840-4095.pbf +3 -0
- package/fonts/Open Sans Semibold/38400-38655.pbf +3 -0
- package/fonts/Open Sans Semibold/38656-38911.pbf +3 -0
- package/fonts/Open Sans Semibold/38912-39167.pbf +3 -0
- package/fonts/Open Sans Semibold/39168-39423.pbf +3 -0
- package/fonts/Open Sans Semibold/39424-39679.pbf +3 -0
- package/fonts/Open Sans Semibold/39680-39935.pbf +3 -0
- package/fonts/Open Sans Semibold/39936-40191.pbf +3 -0
- package/fonts/Open Sans Semibold/40192-40447.pbf +3 -0
- package/fonts/Open Sans Semibold/40448-40703.pbf +3 -0
- package/fonts/Open Sans Semibold/40704-40959.pbf +3 -0
- package/fonts/Open Sans Semibold/4096-4351.pbf +3 -0
- package/fonts/Open Sans Semibold/40960-41215.pbf +3 -0
- package/fonts/Open Sans Semibold/41216-41471.pbf +3 -0
- package/fonts/Open Sans Semibold/41472-41727.pbf +3 -0
- package/fonts/Open Sans Semibold/41728-41983.pbf +3 -0
- package/fonts/Open Sans Semibold/41984-42239.pbf +3 -0
- package/fonts/Open Sans Semibold/42240-42495.pbf +3 -0
- package/fonts/Open Sans Semibold/42496-42751.pbf +3 -0
- package/fonts/Open Sans Semibold/42752-43007.pbf +3 -0
- package/fonts/Open Sans Semibold/43008-43263.pbf +3 -0
- package/fonts/Open Sans Semibold/43264-43519.pbf +3 -0
- package/fonts/Open Sans Semibold/4352-4607.pbf +3 -0
- package/fonts/Open Sans Semibold/43520-43775.pbf +3 -0
- package/fonts/Open Sans Semibold/43776-44031.pbf +3 -0
- package/fonts/Open Sans Semibold/44032-44287.pbf +3 -0
- package/fonts/Open Sans Semibold/44288-44543.pbf +3 -0
- package/fonts/Open Sans Semibold/44544-44799.pbf +3 -0
- package/fonts/Open Sans Semibold/44800-45055.pbf +3 -0
- package/fonts/Open Sans Semibold/45056-45311.pbf +3 -0
- package/fonts/Open Sans Semibold/45312-45567.pbf +3 -0
- package/fonts/Open Sans Semibold/45568-45823.pbf +3 -0
- package/fonts/Open Sans Semibold/45824-46079.pbf +3 -0
- package/fonts/Open Sans Semibold/4608-4863.pbf +3 -0
- package/fonts/Open Sans Semibold/46080-46335.pbf +3 -0
- package/fonts/Open Sans Semibold/46336-46591.pbf +3 -0
- package/fonts/Open Sans Semibold/46592-46847.pbf +3 -0
- package/fonts/Open Sans Semibold/46848-47103.pbf +3 -0
- package/fonts/Open Sans Semibold/47104-47359.pbf +3 -0
- package/fonts/Open Sans Semibold/47360-47615.pbf +3 -0
- package/fonts/Open Sans Semibold/47616-47871.pbf +3 -0
- package/fonts/Open Sans Semibold/47872-48127.pbf +3 -0
- package/fonts/Open Sans Semibold/48128-48383.pbf +3 -0
- package/fonts/Open Sans Semibold/48384-48639.pbf +3 -0
- package/fonts/Open Sans Semibold/4864-5119.pbf +3 -0
- package/fonts/Open Sans Semibold/48640-48895.pbf +3 -0
- package/fonts/Open Sans Semibold/48896-49151.pbf +3 -0
- package/fonts/Open Sans Semibold/49152-49407.pbf +3 -0
- package/fonts/Open Sans Semibold/49408-49663.pbf +3 -0
- package/fonts/Open Sans Semibold/49664-49919.pbf +3 -0
- package/fonts/Open Sans Semibold/49920-50175.pbf +3 -0
- package/fonts/Open Sans Semibold/50176-50431.pbf +3 -0
- package/fonts/Open Sans Semibold/50432-50687.pbf +3 -0
- package/fonts/Open Sans Semibold/50688-50943.pbf +3 -0
- package/fonts/Open Sans Semibold/50944-51199.pbf +3 -0
- package/fonts/Open Sans Semibold/512-767.pbf +0 -0
- package/fonts/Open Sans Semibold/5120-5375.pbf +3 -0
- package/fonts/Open Sans Semibold/51200-51455.pbf +3 -0
- package/fonts/Open Sans Semibold/51456-51711.pbf +3 -0
- package/fonts/Open Sans Semibold/51712-51967.pbf +3 -0
- package/fonts/Open Sans Semibold/51968-52223.pbf +3 -0
- package/fonts/Open Sans Semibold/52224-52479.pbf +3 -0
- package/fonts/Open Sans Semibold/52480-52735.pbf +3 -0
- package/fonts/Open Sans Semibold/52736-52991.pbf +3 -0
- package/fonts/Open Sans Semibold/52992-53247.pbf +3 -0
- package/fonts/Open Sans Semibold/53248-53503.pbf +3 -0
- package/fonts/Open Sans Semibold/53504-53759.pbf +3 -0
- package/fonts/Open Sans Semibold/5376-5631.pbf +3 -0
- package/fonts/Open Sans Semibold/53760-54015.pbf +3 -0
- package/fonts/Open Sans Semibold/54016-54271.pbf +3 -0
- package/fonts/Open Sans Semibold/54272-54527.pbf +3 -0
- package/fonts/Open Sans Semibold/54528-54783.pbf +3 -0
- package/fonts/Open Sans Semibold/54784-55039.pbf +3 -0
- package/fonts/Open Sans Semibold/55040-55295.pbf +3 -0
- package/fonts/Open Sans Semibold/55296-55551.pbf +3 -0
- package/fonts/Open Sans Semibold/55552-55807.pbf +3 -0
- package/fonts/Open Sans Semibold/55808-56063.pbf +3 -0
- package/fonts/Open Sans Semibold/56064-56319.pbf +3 -0
- package/fonts/Open Sans Semibold/5632-5887.pbf +3 -0
- package/fonts/Open Sans Semibold/56320-56575.pbf +3 -0
- package/fonts/Open Sans Semibold/56576-56831.pbf +3 -0
- package/fonts/Open Sans Semibold/56832-57087.pbf +3 -0
- package/fonts/Open Sans Semibold/57088-57343.pbf +3 -0
- package/fonts/Open Sans Semibold/57344-57599.pbf +3 -0
- package/fonts/Open Sans Semibold/57600-57855.pbf +3 -0
- package/fonts/Open Sans Semibold/57856-58111.pbf +3 -0
- package/fonts/Open Sans Semibold/58112-58367.pbf +3 -0
- package/fonts/Open Sans Semibold/58368-58623.pbf +3 -0
- package/fonts/Open Sans Semibold/58624-58879.pbf +3 -0
- package/fonts/Open Sans Semibold/5888-6143.pbf +3 -0
- package/fonts/Open Sans Semibold/58880-59135.pbf +3 -0
- package/fonts/Open Sans Semibold/59136-59391.pbf +3 -0
- package/fonts/Open Sans Semibold/59392-59647.pbf +3 -0
- package/fonts/Open Sans Semibold/59648-59903.pbf +3 -0
- package/fonts/Open Sans Semibold/59904-60159.pbf +3 -0
- package/fonts/Open Sans Semibold/60160-60415.pbf +3 -0
- package/fonts/Open Sans Semibold/60416-60671.pbf +3 -0
- package/fonts/Open Sans Semibold/60672-60927.pbf +3 -0
- package/fonts/Open Sans Semibold/60928-61183.pbf +3 -0
- package/fonts/Open Sans Semibold/61184-61439.pbf +3 -0
- package/fonts/Open Sans Semibold/6144-6399.pbf +3 -0
- package/fonts/Open Sans Semibold/61440-61695.pbf +3 -0
- package/fonts/Open Sans Semibold/61696-61951.pbf +3 -0
- package/fonts/Open Sans Semibold/61952-62207.pbf +3 -0
- package/fonts/Open Sans Semibold/62208-62463.pbf +3 -0
- package/fonts/Open Sans Semibold/62464-62719.pbf +3 -0
- package/fonts/Open Sans Semibold/62720-62975.pbf +3 -0
- package/fonts/Open Sans Semibold/62976-63231.pbf +3 -0
- package/fonts/Open Sans Semibold/63232-63487.pbf +3 -0
- package/fonts/Open Sans Semibold/63488-63743.pbf +3 -0
- package/fonts/Open Sans Semibold/63744-63999.pbf +3 -0
- package/fonts/Open Sans Semibold/6400-6655.pbf +3 -0
- package/fonts/Open Sans Semibold/64000-64255.pbf +3 -0
- package/fonts/Open Sans Semibold/64256-64511.pbf +0 -0
- package/fonts/Open Sans Semibold/64512-64767.pbf +3 -0
- package/fonts/Open Sans Semibold/64768-65023.pbf +3 -0
- package/fonts/Open Sans Semibold/65024-65279.pbf +0 -0
- package/fonts/Open Sans Semibold/65280-65535.pbf +0 -0
- package/fonts/Open Sans Semibold/6656-6911.pbf +3 -0
- package/fonts/Open Sans Semibold/6912-7167.pbf +3 -0
- package/fonts/Open Sans Semibold/7168-7423.pbf +3 -0
- package/fonts/Open Sans Semibold/7424-7679.pbf +3 -0
- package/fonts/Open Sans Semibold/768-1023.pbf +0 -0
- package/fonts/Open Sans Semibold/7680-7935.pbf +0 -0
- package/fonts/Open Sans Semibold/7936-8191.pbf +0 -0
- package/fonts/Open Sans Semibold/8192-8447.pbf +0 -0
- package/fonts/Open Sans Semibold/8448-8703.pbf +0 -0
- package/fonts/Open Sans Semibold/8704-8959.pbf +0 -0
- package/fonts/Open Sans Semibold/8960-9215.pbf +3 -0
- package/fonts/Open Sans Semibold/9216-9471.pbf +3 -0
- package/fonts/Open Sans Semibold/9472-9727.pbf +0 -0
- package/fonts/Open Sans Semibold/9728-9983.pbf +3 -0
- package/fonts/Open Sans Semibold/9984-10239.pbf +4 -0
- package/package.json +14 -14
- package/public/resources/L.TileLayer.NoGap.js +243 -0
- package/public/resources/leaflet.css +657 -0
- package/public/resources/leaflet.js +6 -0
- package/public/resources/leaflet.js.map +1 -0
- package/public/resources/maplibre-gl-compat.css +1 -0
- package/public/resources/maplibre-gl-compat.js +45 -0
- package/public/resources/maplibre-gl-compat.js.map +1 -0
- package/public/resources/maplibre-gl-inspect-compat.min.js +1 -0
- package/public/resources/maplibre-gl-inspect.css +40 -0
- package/public/resources/maplibre-gl-inspect.min.js +1 -0
- package/public/resources/maplibre-gl.css +1 -0
- package/public/resources/maplibre-gl.js +44 -0
- package/public/resources/maplibre-gl.js.map +1 -0
- package/public/templates/data.tmpl +54 -15
- package/public/templates/index.tmpl +1 -1
- package/public/templates/viewer.tmpl +68 -14
- package/publish.js +18 -10
- package/src/main.js +34 -31
- package/src/serve_data.js +22 -22
- package/src/serve_font.js +12 -12
- package/src/serve_light.js +10 -0
- package/src/serve_rendered.js +142 -140
- package/src/serve_style.js +16 -16
- package/src/server.js +122 -121
- package/src/utils.js +13 -15
- package/styles/klokantech-basic/style.json +1083 -0
- package/styles/osm-bright/sprite.json +611 -0
- package/styles/osm-bright/sprite.png +0 -0
- package/styles/osm-bright/sprite@2x.json +611 -0
- package/styles/osm-bright/sprite@2x.png +0 -0
- package/styles/osm-bright/style.json +3445 -0
- package/test/metadata.js +30 -30
- package/test/setup.js +9 -5
- package/test/static.js +4 -4
- package/test/style.js +18 -18
- package/test/tiles_data.js +4 -4
- package/test/tiles_rendered.js +5 -5
- package/test_data.zip +0 -0
- package/public/resources/mapbox-gl-inspect.css +0 -40
- package/public/resources/mapbox-gl-inspect.min.js +0 -1
- package/public/resources/mapbox-gl.css +0 -1
- package/public/resources/mapbox-gl.js +0 -40
- package/public/resources/mapbox.css +0 -1
- package/public/resources/mapbox.js +0 -67
package/src/serve_rendered.js
CHANGED
|
@@ -1,37 +1,33 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
const mbgl = require('@mapbox/mapbox-gl-native');
|
|
21
|
-
const MBTiles = require('@mapbox/mbtiles');
|
|
22
|
-
const proj4 = require('proj4');
|
|
23
|
-
const request = require('request');
|
|
24
|
-
|
|
25
|
-
const utils = require('./utils');
|
|
3
|
+
import advancedPool from 'advanced-pool';
|
|
4
|
+
import fs from 'node:fs';
|
|
5
|
+
import path from 'path';
|
|
6
|
+
import url from 'url';
|
|
7
|
+
import util from 'util';
|
|
8
|
+
import zlib from 'zlib';
|
|
9
|
+
import sharp from 'sharp'; // sharp has to be required before node-canvas. see https://github.com/lovell/sharp/issues/371
|
|
10
|
+
import pkg from 'canvas';
|
|
11
|
+
import clone from 'clone';
|
|
12
|
+
import Color from 'color';
|
|
13
|
+
import express from 'express';
|
|
14
|
+
import SphericalMercator from '@mapbox/sphericalmercator';
|
|
15
|
+
import mlgl from '@maplibre/maplibre-gl-native';
|
|
16
|
+
import MBTiles from '@mapbox/mbtiles';
|
|
17
|
+
import proj4 from 'proj4';
|
|
18
|
+
import request from 'request';
|
|
19
|
+
import {getFontsPbf, getTileUrls, fixTileJSONCenter} from './utils.js';
|
|
26
20
|
|
|
27
21
|
const FLOAT_PATTERN = '[+-]?(?:\\d+|\\d+\.?\\d+)';
|
|
28
22
|
const httpTester = /^(http(s)?:)?\/\//;
|
|
29
23
|
|
|
30
|
-
const
|
|
24
|
+
const {createCanvas} = pkg;
|
|
25
|
+
const mercator = new SphericalMercator();
|
|
26
|
+
const getScale = (scale) => (scale || '@1x').slice(1, 2) | 0;
|
|
31
27
|
|
|
32
|
-
|
|
28
|
+
mlgl.on('message', (e) => {
|
|
33
29
|
if (e.severity === 'WARNING' || e.severity === 'ERROR') {
|
|
34
|
-
console.log('
|
|
30
|
+
console.log('mlgl:', e);
|
|
35
31
|
}
|
|
36
32
|
});
|
|
37
33
|
|
|
@@ -54,14 +50,14 @@ const cachedEmptyResponses = {
|
|
|
54
50
|
};
|
|
55
51
|
|
|
56
52
|
/**
|
|
57
|
-
* Create an appropriate
|
|
53
|
+
* Create an appropriate mlgl response for http errors.
|
|
58
54
|
* @param {string} format The format (a sharp format or 'pbf').
|
|
59
55
|
* @param {string} color The background color (or empty string for transparent).
|
|
60
|
-
* @param {Function} callback The
|
|
56
|
+
* @param {Function} callback The mlgl callback.
|
|
61
57
|
*/
|
|
62
58
|
function createEmptyResponse(format, color, callback) {
|
|
63
59
|
if (!format || format === 'pbf') {
|
|
64
|
-
callback(null, {
|
|
60
|
+
callback(null, {data: cachedEmptyResponses['']});
|
|
65
61
|
return;
|
|
66
62
|
}
|
|
67
63
|
|
|
@@ -75,7 +71,7 @@ function createEmptyResponse(format, color, callback) {
|
|
|
75
71
|
const cacheKey = `${format},${color}`;
|
|
76
72
|
const data = cachedEmptyResponses[cacheKey];
|
|
77
73
|
if (data) {
|
|
78
|
-
callback(null, {
|
|
74
|
+
callback(null, {data: data});
|
|
79
75
|
return;
|
|
80
76
|
}
|
|
81
77
|
|
|
@@ -93,7 +89,7 @@ function createEmptyResponse(format, color, callback) {
|
|
|
93
89
|
if (!err) {
|
|
94
90
|
cachedEmptyResponses[cacheKey] = buffer;
|
|
95
91
|
}
|
|
96
|
-
callback(null, {
|
|
92
|
+
callback(null, {data: buffer});
|
|
97
93
|
});
|
|
98
94
|
}
|
|
99
95
|
|
|
@@ -119,7 +115,7 @@ const extractPathFromQuery = (query, transformer) => {
|
|
|
119
115
|
};
|
|
120
116
|
|
|
121
117
|
const renderOverlay = (z, x, y, bearing, pitch, w, h, scale,
|
|
122
|
-
|
|
118
|
+
path, query) => {
|
|
123
119
|
if (!path || path.length < 2) {
|
|
124
120
|
return null;
|
|
125
121
|
}
|
|
@@ -179,14 +175,14 @@ const calcZForBBox = (bbox, w, h, query) => {
|
|
|
179
175
|
const padding = query.padding !== undefined ?
|
|
180
176
|
parseFloat(query.padding) : 0.1;
|
|
181
177
|
|
|
182
|
-
const minCorner = mercator.px([bbox[0], bbox[3]], z)
|
|
183
|
-
|
|
178
|
+
const minCorner = mercator.px([bbox[0], bbox[3]], z);
|
|
179
|
+
const maxCorner = mercator.px([bbox[2], bbox[1]], z);
|
|
184
180
|
const w_ = w / (1 + 2 * padding);
|
|
185
181
|
const h_ = h / (1 + 2 * padding);
|
|
186
182
|
|
|
187
183
|
z -= Math.max(
|
|
188
|
-
|
|
189
|
-
|
|
184
|
+
Math.log((maxCorner[0] - minCorner[0]) / w_),
|
|
185
|
+
Math.log((maxCorner[1] - minCorner[1]) / h_)
|
|
190
186
|
) / Math.LN2;
|
|
191
187
|
|
|
192
188
|
z = Math.max(Math.log(Math.max(w, h) / 256) / Math.LN2, Math.min(25, z));
|
|
@@ -197,7 +193,7 @@ const calcZForBBox = (bbox, w, h, query) => {
|
|
|
197
193
|
const existingFonts = {};
|
|
198
194
|
let maxScaleFactor = 2;
|
|
199
195
|
|
|
200
|
-
|
|
196
|
+
export const serve_rendered = {
|
|
201
197
|
init: (options, repo) => {
|
|
202
198
|
const fontListingPromise = new Promise((resolve, reject) => {
|
|
203
199
|
fs.readdir(options.paths.fonts, (err, files) => {
|
|
@@ -229,9 +225,7 @@ module.exports = {
|
|
|
229
225
|
|
|
230
226
|
const app = express().disable('x-powered-by');
|
|
231
227
|
|
|
232
|
-
const respondImage = (item, z, lon, lat, bearing, pitch,
|
|
233
|
-
width, height, scale, format, res, next,
|
|
234
|
-
opt_overlay) => {
|
|
228
|
+
const respondImage = (item, z, lon, lat, bearing, pitch, width, height, scale, format, res, next, opt_overlay, opt_mode='tile') => {
|
|
235
229
|
if (Math.abs(lon) > 180 || Math.abs(lat) > 85.06 ||
|
|
236
230
|
lon !== lon || lat !== lat) {
|
|
237
231
|
return res.status(400).send('Invalid center');
|
|
@@ -248,11 +242,16 @@ module.exports = {
|
|
|
248
242
|
return res.status(400).send('Invalid format');
|
|
249
243
|
}
|
|
250
244
|
|
|
251
|
-
|
|
245
|
+
let pool;
|
|
246
|
+
if (opt_mode === 'tile') {
|
|
247
|
+
pool = item.map.renderers[scale];
|
|
248
|
+
} else {
|
|
249
|
+
pool = item.map.renderers_static[scale];
|
|
250
|
+
}
|
|
252
251
|
pool.acquire((err, renderer) => {
|
|
253
|
-
const
|
|
252
|
+
const mlglZ = Math.max(0, z - 1);
|
|
254
253
|
const params = {
|
|
255
|
-
zoom:
|
|
254
|
+
zoom: mlglZ,
|
|
256
255
|
center: [lon, lat],
|
|
257
256
|
bearing: bearing,
|
|
258
257
|
pitch: pitch,
|
|
@@ -279,9 +278,9 @@ module.exports = {
|
|
|
279
278
|
|
|
280
279
|
// Fix semi-transparent outlines on raw, premultiplied input
|
|
281
280
|
// https://github.com/maptiler/tileserver-gl/issues/350#issuecomment-477857040
|
|
282
|
-
for (
|
|
283
|
-
|
|
284
|
-
|
|
281
|
+
for (let i = 0; i < data.length; i += 4) {
|
|
282
|
+
const alpha = data[i + 3];
|
|
283
|
+
const norm = alpha / 255;
|
|
285
284
|
if (alpha === 0) {
|
|
286
285
|
data[i] = 0;
|
|
287
286
|
data[i + 1] = 0;
|
|
@@ -302,9 +301,11 @@ module.exports = {
|
|
|
302
301
|
});
|
|
303
302
|
|
|
304
303
|
if (z > 2 && tileMargin > 0) {
|
|
304
|
+
const [_, y] = mercator.px(params.center, z);
|
|
305
|
+
let yoffset = Math.max(Math.min(0, y - 128 - tileMargin), y + 128 + tileMargin - Math.pow(2, z + 8));
|
|
305
306
|
image.extract({
|
|
306
307
|
left: tileMargin * scale,
|
|
307
|
-
top: tileMargin * scale,
|
|
308
|
+
top: (tileMargin + yoffset) * scale,
|
|
308
309
|
width: width * scale,
|
|
309
310
|
height: height * scale
|
|
310
311
|
});
|
|
@@ -316,7 +317,7 @@ module.exports = {
|
|
|
316
317
|
}
|
|
317
318
|
|
|
318
319
|
if (opt_overlay) {
|
|
319
|
-
image.composite([{
|
|
320
|
+
image.composite([{input: opt_overlay}]);
|
|
320
321
|
}
|
|
321
322
|
if (item.watermark) {
|
|
322
323
|
const canvas = createCanvas(scale * width, scale * height);
|
|
@@ -329,17 +330,17 @@ module.exports = {
|
|
|
329
330
|
ctx.fillStyle = 'rgba(0,0,0,.4)';
|
|
330
331
|
ctx.fillText(item.watermark, 5, height - 5);
|
|
331
332
|
|
|
332
|
-
image.composite([{
|
|
333
|
+
image.composite([{input: canvas.toBuffer()}]);
|
|
333
334
|
}
|
|
334
335
|
|
|
335
336
|
const formatQuality = (options.formatQuality || {})[format];
|
|
336
337
|
|
|
337
338
|
if (format === 'png') {
|
|
338
|
-
image.png({
|
|
339
|
+
image.png({adaptiveFiltering: false});
|
|
339
340
|
} else if (format === 'jpeg') {
|
|
340
|
-
image.jpeg({
|
|
341
|
+
image.jpeg({quality: formatQuality || 80});
|
|
341
342
|
} else if (format === 'webp') {
|
|
342
|
-
image.webp({
|
|
343
|
+
image.webp({quality: formatQuality || 90});
|
|
343
344
|
}
|
|
344
345
|
image.toBuffer((err, buffer, info) => {
|
|
345
346
|
if (!buffer) {
|
|
@@ -362,18 +363,18 @@ module.exports = {
|
|
|
362
363
|
return res.sendStatus(404);
|
|
363
364
|
}
|
|
364
365
|
|
|
365
|
-
const modifiedSince = req.get('if-modified-since')
|
|
366
|
+
const modifiedSince = req.get('if-modified-since'); const cc = req.get('cache-control');
|
|
366
367
|
if (modifiedSince && (!cc || cc.indexOf('no-cache') === -1)) {
|
|
367
368
|
if (new Date(item.lastModified) <= new Date(modifiedSince)) {
|
|
368
369
|
return res.sendStatus(304);
|
|
369
370
|
}
|
|
370
371
|
}
|
|
371
372
|
|
|
372
|
-
const z = req.params.z | 0
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
373
|
+
const z = req.params.z | 0;
|
|
374
|
+
const x = req.params.x | 0;
|
|
375
|
+
const y = req.params.y | 0;
|
|
376
|
+
const scale = getScale(req.params.scale);
|
|
377
|
+
const format = req.params.format;
|
|
377
378
|
if (z < 0 || x < 0 || y < 0 ||
|
|
378
379
|
z > 22 || x >= Math.pow(2, z) || y >= Math.pow(2, z)) {
|
|
379
380
|
return res.status(404).send('Out of bounds');
|
|
@@ -383,8 +384,7 @@ module.exports = {
|
|
|
383
384
|
((x + 0.5) / (1 << z)) * (256 << z),
|
|
384
385
|
((y + 0.5) / (1 << z)) * (256 << z)
|
|
385
386
|
], z);
|
|
386
|
-
return respondImage(item, z, tileCenter[0], tileCenter[1], 0, 0,
|
|
387
|
-
tileSize, tileSize, scale, format, res, next);
|
|
387
|
+
return respondImage(item, z, tileCenter[0], tileCenter[1], 0, 0, tileSize, tileSize, scale, format, res, next);
|
|
388
388
|
});
|
|
389
389
|
|
|
390
390
|
if (options.serveStaticMaps !== false) {
|
|
@@ -393,8 +393,8 @@ module.exports = {
|
|
|
393
393
|
|
|
394
394
|
const centerPattern =
|
|
395
395
|
util.format(':x(%s),:y(%s),:z(%s)(@:bearing(%s)(,:pitch(%s))?)?',
|
|
396
|
-
|
|
397
|
-
|
|
396
|
+
FLOAT_PATTERN, FLOAT_PATTERN, FLOAT_PATTERN,
|
|
397
|
+
FLOAT_PATTERN, FLOAT_PATTERN);
|
|
398
398
|
|
|
399
399
|
app.get(util.format(staticPattern, centerPattern), (req, res, next) => {
|
|
400
400
|
const item = repo[req.params.id];
|
|
@@ -402,15 +402,15 @@ module.exports = {
|
|
|
402
402
|
return res.sendStatus(404);
|
|
403
403
|
}
|
|
404
404
|
const raw = req.params.raw;
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
405
|
+
const z = +req.params.z;
|
|
406
|
+
let x = +req.params.x;
|
|
407
|
+
let y = +req.params.y;
|
|
408
|
+
const bearing = +(req.params.bearing || '0');
|
|
409
|
+
const pitch = +(req.params.pitch || '0');
|
|
410
|
+
const w = req.params.width | 0;
|
|
411
|
+
const h = req.params.height | 0;
|
|
412
|
+
const scale = getScale(req.params.scale);
|
|
413
|
+
const format = req.params.format;
|
|
414
414
|
|
|
415
415
|
if (z < 0) {
|
|
416
416
|
return res.status(404).send('Invalid zoom');
|
|
@@ -426,11 +426,9 @@ module.exports = {
|
|
|
426
426
|
}
|
|
427
427
|
|
|
428
428
|
const path = extractPathFromQuery(req.query, transformer);
|
|
429
|
-
const overlay = renderOverlay(z, x, y, bearing, pitch, w, h, scale,
|
|
430
|
-
path, req.query);
|
|
429
|
+
const overlay = renderOverlay(z, x, y, bearing, pitch, w, h, scale, path, req.query);
|
|
431
430
|
|
|
432
|
-
return respondImage(item, z, x, y, bearing, pitch, w, h, scale, format,
|
|
433
|
-
res, next, overlay);
|
|
431
|
+
return respondImage(item, z, x, y, bearing, pitch, w, h, scale, format, res, next, overlay, 'static');
|
|
434
432
|
});
|
|
435
433
|
|
|
436
434
|
const serveBounds = (req, res, next) => {
|
|
@@ -439,8 +437,7 @@ module.exports = {
|
|
|
439
437
|
return res.sendStatus(404);
|
|
440
438
|
}
|
|
441
439
|
const raw = req.params.raw;
|
|
442
|
-
const bbox = [+req.params.minx, +req.params.miny,
|
|
443
|
-
+req.params.maxx, +req.params.maxy];
|
|
440
|
+
const bbox = [+req.params.minx, +req.params.miny, +req.params.maxx, +req.params.maxy];
|
|
444
441
|
let center = [(bbox[0] + bbox[2]) / 2, (bbox[1] + bbox[3]) / 2];
|
|
445
442
|
|
|
446
443
|
const transformer = raw ?
|
|
@@ -456,32 +453,31 @@ module.exports = {
|
|
|
456
453
|
center = transformer(center);
|
|
457
454
|
}
|
|
458
455
|
|
|
459
|
-
const w = req.params.width | 0
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
456
|
+
const w = req.params.width | 0;
|
|
457
|
+
const h = req.params.height | 0;
|
|
458
|
+
const scale = getScale(req.params.scale);
|
|
459
|
+
const format = req.params.format;
|
|
463
460
|
|
|
464
|
-
const z = calcZForBBox(bbox, w, h, req.query)
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
461
|
+
const z = calcZForBBox(bbox, w, h, req.query);
|
|
462
|
+
const x = center[0];
|
|
463
|
+
const y = center[1];
|
|
464
|
+
const bearing = 0;
|
|
465
|
+
const pitch = 0;
|
|
469
466
|
|
|
470
467
|
const path = extractPathFromQuery(req.query, transformer);
|
|
471
|
-
const overlay = renderOverlay(z, x, y, bearing, pitch, w, h, scale,
|
|
472
|
-
|
|
473
|
-
return respondImage(item, z, x, y, bearing, pitch, w, h, scale, format,
|
|
474
|
-
res, next, overlay);
|
|
468
|
+
const overlay = renderOverlay(z, x, y, bearing, pitch, w, h, scale, path, req.query);
|
|
469
|
+
|
|
470
|
+
return respondImage(item, z, x, y, bearing, pitch, w, h, scale, format, res, next, overlay, 'static');
|
|
475
471
|
};
|
|
476
472
|
|
|
477
473
|
const boundsPattern =
|
|
478
474
|
util.format(':minx(%s),:miny(%s),:maxx(%s),:maxy(%s)',
|
|
479
|
-
|
|
475
|
+
FLOAT_PATTERN, FLOAT_PATTERN, FLOAT_PATTERN, FLOAT_PATTERN);
|
|
480
476
|
|
|
481
477
|
app.get(util.format(staticPattern, boundsPattern), serveBounds);
|
|
482
478
|
|
|
483
479
|
app.get('/:id/static/', (req, res, next) => {
|
|
484
|
-
for (
|
|
480
|
+
for (const key in req.query) {
|
|
485
481
|
req.query[key.toLowerCase()] = req.query[key];
|
|
486
482
|
}
|
|
487
483
|
req.params.raw = true;
|
|
@@ -510,12 +506,12 @@ module.exports = {
|
|
|
510
506
|
return res.sendStatus(404);
|
|
511
507
|
}
|
|
512
508
|
const raw = req.params.raw;
|
|
513
|
-
const w = req.params.width | 0
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
509
|
+
const w = req.params.width | 0;
|
|
510
|
+
const h = req.params.height | 0;
|
|
511
|
+
const bearing = 0;
|
|
512
|
+
const pitch = 0;
|
|
513
|
+
const scale = getScale(req.params.scale);
|
|
514
|
+
const format = req.params.format;
|
|
519
515
|
|
|
520
516
|
const transformer = raw ?
|
|
521
517
|
mercator.inverse.bind(mercator) : item.dataProjWGStoInternalWGS;
|
|
@@ -535,18 +531,16 @@ module.exports = {
|
|
|
535
531
|
|
|
536
532
|
const bbox_ = mercator.convert(bbox, '900913');
|
|
537
533
|
const center = mercator.inverse(
|
|
538
|
-
|
|
534
|
+
[(bbox_[0] + bbox_[2]) / 2, (bbox_[1] + bbox_[3]) / 2]
|
|
539
535
|
);
|
|
540
536
|
|
|
541
|
-
const z = calcZForBBox(bbox, w, h, req.query)
|
|
542
|
-
|
|
543
|
-
|
|
537
|
+
const z = calcZForBBox(bbox, w, h, req.query);
|
|
538
|
+
const x = center[0];
|
|
539
|
+
const y = center[1];
|
|
544
540
|
|
|
545
|
-
const overlay = renderOverlay(z, x, y, bearing, pitch, w, h, scale,
|
|
546
|
-
path, req.query);
|
|
541
|
+
const overlay = renderOverlay(z, x, y, bearing, pitch, w, h, scale, path, req.query);
|
|
547
542
|
|
|
548
|
-
return respondImage(item, z, x, y, bearing, pitch, w, h, scale, format,
|
|
549
|
-
res, next, overlay);
|
|
543
|
+
return respondImage(item, z, x, y, bearing, pitch, w, h, scale, format, res, next, overlay, 'static');
|
|
550
544
|
});
|
|
551
545
|
}
|
|
552
546
|
|
|
@@ -556,8 +550,8 @@ module.exports = {
|
|
|
556
550
|
return res.sendStatus(404);
|
|
557
551
|
}
|
|
558
552
|
const info = clone(item.tileJSON);
|
|
559
|
-
info.tiles =
|
|
560
|
-
|
|
553
|
+
info.tiles = getTileUrls(req, info.tiles,
|
|
554
|
+
`styles/${req.params.id}`, info.format, item.publicUrl);
|
|
561
555
|
return res.send(info);
|
|
562
556
|
});
|
|
563
557
|
|
|
@@ -566,44 +560,45 @@ module.exports = {
|
|
|
566
560
|
add: (options, repo, params, id, publicUrl, dataResolver) => {
|
|
567
561
|
const map = {
|
|
568
562
|
renderers: [],
|
|
563
|
+
renderers_static: [],
|
|
569
564
|
sources: {}
|
|
570
565
|
};
|
|
571
566
|
|
|
572
567
|
let styleJSON;
|
|
573
|
-
const createPool = (ratio, min, max) => {
|
|
568
|
+
const createPool = (ratio, mode, min, max) => {
|
|
574
569
|
const createRenderer = (ratio, createCallback) => {
|
|
575
|
-
const renderer = new
|
|
576
|
-
mode:
|
|
570
|
+
const renderer = new mlgl.Map({
|
|
571
|
+
mode: mode,
|
|
577
572
|
ratio: ratio,
|
|
578
573
|
request: (req, callback) => {
|
|
579
574
|
const protocol = req.url.split(':')[0];
|
|
580
|
-
//console.log('Handling request:', req);
|
|
575
|
+
// console.log('Handling request:', req);
|
|
581
576
|
if (protocol === 'sprites') {
|
|
582
577
|
const dir = options.paths[protocol];
|
|
583
578
|
const file = unescape(req.url).substring(protocol.length + 3);
|
|
584
579
|
fs.readFile(path.join(dir, file), (err, data) => {
|
|
585
|
-
callback(err, {
|
|
580
|
+
callback(err, {data: data});
|
|
586
581
|
});
|
|
587
582
|
} else if (protocol === 'fonts') {
|
|
588
583
|
const parts = req.url.split('/');
|
|
589
584
|
const fontstack = unescape(parts[2]);
|
|
590
585
|
const range = parts[3].split('.')[0];
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
).then(concated => {
|
|
594
|
-
callback(null, {
|
|
595
|
-
}, err => {
|
|
596
|
-
callback(err, {
|
|
586
|
+
getFontsPbf(
|
|
587
|
+
null, options.paths[protocol], fontstack, range, existingFonts
|
|
588
|
+
).then((concated) => {
|
|
589
|
+
callback(null, {data: concated});
|
|
590
|
+
}, (err) => {
|
|
591
|
+
callback(err, {data: null});
|
|
597
592
|
});
|
|
598
593
|
} else if (protocol === 'mbtiles') {
|
|
599
594
|
const parts = req.url.split('/');
|
|
600
595
|
const sourceId = parts[2];
|
|
601
596
|
const source = map.sources[sourceId];
|
|
602
597
|
const sourceInfo = styleJSON.sources[sourceId];
|
|
603
|
-
const z = parts[3] | 0
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
598
|
+
const z = parts[3] | 0;
|
|
599
|
+
const x = parts[4] | 0;
|
|
600
|
+
const y = parts[5].split('.')[0] | 0;
|
|
601
|
+
const format = parts[5].split('.')[1];
|
|
607
602
|
source.getTile(z, x, y, (err, data, headers) => {
|
|
608
603
|
if (err) {
|
|
609
604
|
if (options.verbose) console.log('MBTiles error, serving empty', err);
|
|
@@ -620,11 +615,11 @@ module.exports = {
|
|
|
620
615
|
try {
|
|
621
616
|
response.data = zlib.unzipSync(data);
|
|
622
617
|
} catch (err) {
|
|
623
|
-
console.log(
|
|
618
|
+
console.log('Skipping incorrect header for tile mbtiles://%s/%s/%s/%s.pbf', id, z, x, y);
|
|
624
619
|
}
|
|
625
620
|
if (options.dataDecoratorFunc) {
|
|
626
621
|
response.data = options.dataDecoratorFunc(
|
|
627
|
-
|
|
622
|
+
sourceId, 'data', response.data, z, x, y);
|
|
628
623
|
}
|
|
629
624
|
} else {
|
|
630
625
|
response.data = data;
|
|
@@ -671,7 +666,7 @@ module.exports = {
|
|
|
671
666
|
min: min,
|
|
672
667
|
max: max,
|
|
673
668
|
create: createRenderer.bind(null, ratio),
|
|
674
|
-
destroy: renderer => {
|
|
669
|
+
destroy: (renderer) => {
|
|
675
670
|
renderer.release();
|
|
676
671
|
}
|
|
677
672
|
});
|
|
@@ -689,8 +684,8 @@ module.exports = {
|
|
|
689
684
|
if (styleJSON.sprite && !httpTester.test(styleJSON.sprite)) {
|
|
690
685
|
styleJSON.sprite = 'sprites://' +
|
|
691
686
|
styleJSON.sprite
|
|
692
|
-
|
|
693
|
-
|
|
687
|
+
.replace('{style}', path.basename(styleFile, '.json'))
|
|
688
|
+
.replace('{styleJsonFolder}', path.relative(options.paths.sprites, path.dirname(styleJSONPath)));
|
|
694
689
|
}
|
|
695
690
|
if (styleJSON.glyphs && !httpTester.test(styleJSON.glyphs)) {
|
|
696
691
|
styleJSON.glyphs = `fonts://${styleJSON.glyphs}`;
|
|
@@ -721,9 +716,9 @@ module.exports = {
|
|
|
721
716
|
const attributionOverride = params.tilejson && params.tilejson.attribution;
|
|
722
717
|
Object.assign(tileJSON, params.tilejson || {});
|
|
723
718
|
tileJSON.tiles = params.domains || options.domains;
|
|
724
|
-
|
|
719
|
+
fixTileJSONCenter(tileJSON);
|
|
725
720
|
|
|
726
|
-
|
|
721
|
+
const repoobj = {
|
|
727
722
|
tileJSON,
|
|
728
723
|
publicUrl,
|
|
729
724
|
map,
|
|
@@ -731,6 +726,7 @@ module.exports = {
|
|
|
731
726
|
lastModified: new Date().toUTCString(),
|
|
732
727
|
watermark: params.watermark || options.watermark
|
|
733
728
|
};
|
|
729
|
+
repo[id] = repoobj;
|
|
734
730
|
|
|
735
731
|
const queue = [];
|
|
736
732
|
for (const name of Object.keys(styleJSON.sources)) {
|
|
@@ -764,18 +760,18 @@ module.exports = {
|
|
|
764
760
|
if (!mbtilesFileStats.isFile() || mbtilesFileStats.size === 0) {
|
|
765
761
|
throw Error(`Not valid MBTiles file: ${mbtilesFile}`);
|
|
766
762
|
}
|
|
767
|
-
map.sources[name] = new MBTiles(mbtilesFile, err => {
|
|
763
|
+
map.sources[name] = new MBTiles(mbtilesFile + '?mode=ro', err => {
|
|
768
764
|
map.sources[name].getInfo((err, info) => {
|
|
769
765
|
if (err) {
|
|
770
766
|
console.error(err);
|
|
771
767
|
return;
|
|
772
768
|
}
|
|
773
769
|
|
|
774
|
-
if (!
|
|
770
|
+
if (!repoobj.dataProjWGStoInternalWGS && info.proj4) {
|
|
775
771
|
// how to do this for multiple sources with different proj4 defs?
|
|
776
772
|
const to3857 = proj4('EPSG:3857');
|
|
777
773
|
const toDataProj = proj4(info.proj4);
|
|
778
|
-
|
|
774
|
+
repoobj.dataProjWGStoInternalWGS = (xy) => to3857.inverse(toDataProj.forward(xy));
|
|
779
775
|
}
|
|
780
776
|
|
|
781
777
|
const type = source.type;
|
|
@@ -793,10 +789,12 @@ module.exports = {
|
|
|
793
789
|
|
|
794
790
|
if (!attributionOverride &&
|
|
795
791
|
source.attribution && source.attribution.length > 0) {
|
|
796
|
-
if (tileJSON.attribution.
|
|
797
|
-
tileJSON.attribution
|
|
792
|
+
if (!tileJSON.attribution.includes(source.attribution)) {
|
|
793
|
+
if (tileJSON.attribution.length > 0) {
|
|
794
|
+
tileJSON.attribution += ' | ';
|
|
795
|
+
}
|
|
796
|
+
tileJSON.attribution += source.attribution;
|
|
798
797
|
}
|
|
799
|
-
tileJSON.attribution += source.attribution;
|
|
800
798
|
}
|
|
801
799
|
resolve();
|
|
802
800
|
});
|
|
@@ -814,19 +812,23 @@ module.exports = {
|
|
|
814
812
|
const j = Math.min(maxPoolSizes.length - 1, s - 1);
|
|
815
813
|
const minPoolSize = minPoolSizes[i];
|
|
816
814
|
const maxPoolSize = Math.max(minPoolSize, maxPoolSizes[j]);
|
|
817
|
-
map.renderers[s] = createPool(s, minPoolSize, maxPoolSize);
|
|
815
|
+
map.renderers[s] = createPool(s, 'tile', minPoolSize, maxPoolSize);
|
|
816
|
+
map.renderers_static[s] = createPool(s, 'static', minPoolSize, maxPoolSize);
|
|
818
817
|
}
|
|
819
818
|
});
|
|
820
819
|
|
|
821
820
|
return Promise.all([renderersReadyPromise]);
|
|
822
821
|
},
|
|
823
822
|
remove: (repo, id) => {
|
|
824
|
-
|
|
823
|
+
const item = repo[id];
|
|
825
824
|
if (item) {
|
|
826
|
-
item.map.renderers.forEach(pool => {
|
|
825
|
+
item.map.renderers.forEach((pool) => {
|
|
826
|
+
pool.close();
|
|
827
|
+
});
|
|
828
|
+
item.map.renderers_static.forEach((pool) => {
|
|
827
829
|
pool.close();
|
|
828
830
|
});
|
|
829
831
|
}
|
|
830
832
|
delete repo[id];
|
|
831
|
-
}
|
|
833
|
+
}
|
|
832
834
|
};
|
package/src/serve_style.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
import path from 'path';
|
|
4
|
+
import fs from 'node:fs';
|
|
5
5
|
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
import {validate} from '@
|
|
6
|
+
import clone from 'clone';
|
|
7
|
+
import express from 'express';
|
|
8
|
+
import {validate} from '@maplibre/maplibre-gl-style-spec';
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
import {getPublicUrl} from './utils.js';
|
|
11
11
|
|
|
12
12
|
const httpTester = /^(http(s)?:)?\/\//;
|
|
13
13
|
|
|
@@ -24,10 +24,10 @@ const fixUrl = (req, url, publicUrl, opt_nokey) => {
|
|
|
24
24
|
query = `?${queryParams.join('&')}`;
|
|
25
25
|
}
|
|
26
26
|
return url.replace(
|
|
27
|
-
|
|
27
|
+
'local://', getPublicUrl(publicUrl, req)) + query;
|
|
28
28
|
};
|
|
29
29
|
|
|
30
|
-
|
|
30
|
+
export const serve_style = {
|
|
31
31
|
init: (options, repo) => {
|
|
32
32
|
const app = express().disable('x-powered-by');
|
|
33
33
|
|
|
@@ -56,8 +56,8 @@ module.exports = {
|
|
|
56
56
|
if (!item || !item.spritePath) {
|
|
57
57
|
return res.sendStatus(404);
|
|
58
58
|
}
|
|
59
|
-
const scale = req.params.scale
|
|
60
|
-
|
|
59
|
+
const scale = req.params.scale;
|
|
60
|
+
const format = req.params.format;
|
|
61
61
|
const filename = `${item.spritePath + (scale || '')}.${format}`;
|
|
62
62
|
return fs.readFile(filename, (err, data) => {
|
|
63
63
|
if (err) {
|
|
@@ -87,7 +87,7 @@ module.exports = {
|
|
|
87
87
|
return false;
|
|
88
88
|
}
|
|
89
89
|
|
|
90
|
-
|
|
90
|
+
const validationErrors = validate(styleFileData);
|
|
91
91
|
if (validationErrors.length > 0) {
|
|
92
92
|
console.log(`The file "${params.style}" is not valid a valid style file:`);
|
|
93
93
|
for (const err of validationErrors) {
|
|
@@ -95,7 +95,7 @@ module.exports = {
|
|
|
95
95
|
}
|
|
96
96
|
return false;
|
|
97
97
|
}
|
|
98
|
-
|
|
98
|
+
const styleJSON = JSON.parse(styleFileData);
|
|
99
99
|
|
|
100
100
|
for (const name of Object.keys(styleJSON.sources)) {
|
|
101
101
|
const source = styleJSON.sources[name];
|
|
@@ -120,7 +120,7 @@ module.exports = {
|
|
|
120
120
|
}
|
|
121
121
|
}
|
|
122
122
|
|
|
123
|
-
for (
|
|
123
|
+
for (const obj of styleJSON.layers) {
|
|
124
124
|
if (obj['type'] === 'symbol') {
|
|
125
125
|
const fonts = (obj['layout'] || {})['text-font'];
|
|
126
126
|
if (fonts && fonts.length) {
|
|
@@ -136,9 +136,9 @@ module.exports = {
|
|
|
136
136
|
|
|
137
137
|
if (styleJSON.sprite && !httpTester.test(styleJSON.sprite)) {
|
|
138
138
|
spritePath = path.join(options.paths.sprites,
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
139
|
+
styleJSON.sprite
|
|
140
|
+
.replace('{style}', path.basename(styleFile, '.json'))
|
|
141
|
+
.replace('{styleJsonFolder}', path.relative(options.paths.sprites, path.dirname(styleFile)))
|
|
142
142
|
);
|
|
143
143
|
styleJSON.sprite = `local://styles/${id}/sprite`;
|
|
144
144
|
}
|