├── .editorconfig ├── .envrc ├── .gcloudignore ├── .github └── workflows │ ├── ci-nix.yaml │ ├── publish-docker-images.yaml │ └── publish-to-pypi.yaml ├── .gitignore ├── CHANGELOG.md ├── LICENSE ├── Makefile ├── README.md ├── data └── tests │ ├── .gitignore │ ├── camden.osm.pbf │ ├── colour-areas.geojson │ ├── granary-square.geojson │ ├── granary-square.osm.pbf │ ├── gtfs-manchester │ ├── README │ ├── agency.txt │ ├── calendar.txt │ ├── calendar_dates.txt │ ├── feed_info.txt │ ├── filter.py │ ├── routes.txt │ ├── stop_times.txt │ ├── stops.txt │ └── trips.txt │ ├── london-boundaries.osm.pbf │ ├── lsoa-camden.dbf │ ├── lsoa-camden.prj │ ├── lsoa-camden.qpj │ ├── lsoa-camden.shp │ ├── lsoa-camden.shx │ ├── ward-hole.cpg │ ├── ward-hole.dbf │ ├── ward-hole.prj │ ├── ward-hole.shp │ ├── ward-hole.shx │ ├── ward-inverted.cpg │ ├── ward-inverted.dbf │ ├── ward-inverted.prj │ ├── ward-inverted.shp │ └── ward-inverted.shx ├── docs ├── .gitignore ├── README.md ├── babel.config.js ├── docs │ ├── api.md │ ├── backend │ │ ├── index.md │ │ ├── ingest.md │ │ └── worlds.md │ ├── contributing │ │ └── index.md │ ├── frontend │ │ └── index.md │ └── quirks.md ├── docusaurus.config.ts ├── package-lock.json ├── package.json ├── sidebars.ts ├── src │ ├── components │ │ └── HomepageFeatures │ │ │ ├── index.tsx │ │ │ └── styles.module.css │ ├── css │ │ └── custom.css │ └── pages │ │ ├── index.module.css │ │ └── index.tsx ├── static │ └── .nojekyll └── tsconfig.json ├── flake.lock ├── flake.nix ├── frontend ├── .env.development ├── .env.production ├── .eslintrc.cjs ├── .gitignore ├── .prettierignore ├── .prettierrc ├── .storybook │ ├── main.ts │ ├── manager.ts │ ├── preview.tsx │ └── theme.ts ├── .svgrrc ├── Makefile ├── README.md ├── index-vite.html ├── index.html ├── package.json ├── pnpm-lock.yaml ├── postcss.config.js ├── public │ └── assets │ │ └── fonts │ │ └── glyphs │ │ └── Unica77 │ │ ├── 0-255.pbf │ │ ├── 1024-1279.pbf │ │ ├── 10240-10495.pbf │ │ ├── 10496-10751.pbf │ │ ├── 10752-11007.pbf │ │ ├── 11008-11263.pbf │ │ ├── 11264-11519.pbf │ │ ├── 11520-11775.pbf │ │ ├── 11776-12031.pbf │ │ ├── 12032-12287.pbf │ │ ├── 12288-12543.pbf │ │ ├── 12544-12799.pbf │ │ ├── 1280-1535.pbf │ │ ├── 12800-13055.pbf │ │ ├── 13056-13311.pbf │ │ ├── 13312-13567.pbf │ │ ├── 13568-13823.pbf │ │ ├── 13824-14079.pbf │ │ ├── 14080-14335.pbf │ │ ├── 14336-14591.pbf │ │ ├── 14592-14847.pbf │ │ ├── 14848-15103.pbf │ │ ├── 15104-15359.pbf │ │ ├── 1536-1791.pbf │ │ ├── 15360-15615.pbf │ │ ├── 15616-15871.pbf │ │ ├── 15872-16127.pbf │ │ ├── 16128-16383.pbf │ │ ├── 16384-16639.pbf │ │ ├── 16640-16895.pbf │ │ ├── 16896-17151.pbf │ │ ├── 17152-17407.pbf │ │ ├── 17408-17663.pbf │ │ ├── 17664-17919.pbf │ │ ├── 1792-2047.pbf │ │ ├── 17920-18175.pbf │ │ ├── 18176-18431.pbf │ │ ├── 18432-18687.pbf │ │ ├── 18688-18943.pbf │ │ ├── 18944-19199.pbf │ │ ├── 19200-19455.pbf │ │ ├── 19456-19711.pbf │ │ ├── 19712-19967.pbf │ │ ├── 19968-20223.pbf │ │ ├── 20224-20479.pbf │ │ ├── 2048-2303.pbf │ │ ├── 20480-20735.pbf │ │ ├── 20736-20991.pbf │ │ ├── 20992-21247.pbf │ │ ├── 21248-21503.pbf │ │ ├── 21504-21759.pbf │ │ ├── 21760-22015.pbf │ │ ├── 22016-22271.pbf │ │ ├── 22272-22527.pbf │ │ ├── 22528-22783.pbf │ │ ├── 22784-23039.pbf │ │ ├── 2304-2559.pbf │ │ ├── 23040-23295.pbf │ │ ├── 23296-23551.pbf │ │ ├── 23552-23807.pbf │ │ ├── 23808-24063.pbf │ │ ├── 24064-24319.pbf │ │ ├── 24320-24575.pbf │ │ ├── 24576-24831.pbf │ │ ├── 24832-25087.pbf │ │ ├── 25088-25343.pbf │ │ ├── 25344-25599.pbf │ │ ├── 256-511.pbf │ │ ├── 2560-2815.pbf │ │ ├── 25600-25855.pbf │ │ ├── 25856-26111.pbf │ │ ├── 26112-26367.pbf │ │ ├── 26368-26623.pbf │ │ ├── 26624-26879.pbf │ │ ├── 26880-27135.pbf │ │ ├── 27136-27391.pbf │ │ ├── 27392-27647.pbf │ │ ├── 27648-27903.pbf │ │ ├── 27904-28159.pbf │ │ ├── 2816-3071.pbf │ │ ├── 28160-28415.pbf │ │ ├── 28416-28671.pbf │ │ ├── 28672-28927.pbf │ │ ├── 28928-29183.pbf │ │ ├── 29184-29439.pbf │ │ ├── 29440-29695.pbf │ │ ├── 29696-29951.pbf │ │ ├── 29952-30207.pbf │ │ ├── 30208-30463.pbf │ │ ├── 30464-30719.pbf │ │ ├── 3072-3327.pbf │ │ ├── 30720-30975.pbf │ │ ├── 30976-31231.pbf │ │ ├── 31232-31487.pbf │ │ ├── 31488-31743.pbf │ │ ├── 31744-31999.pbf │ │ ├── 32000-32255.pbf │ │ ├── 32256-32511.pbf │ │ ├── 32512-32767.pbf │ │ ├── 32768-33023.pbf │ │ ├── 33024-33279.pbf │ │ ├── 3328-3583.pbf │ │ ├── 33280-33535.pbf │ │ ├── 33536-33791.pbf │ │ ├── 33792-34047.pbf │ │ ├── 34048-34303.pbf │ │ ├── 34304-34559.pbf │ │ ├── 34560-34815.pbf │ │ ├── 34816-35071.pbf │ │ ├── 35072-35327.pbf │ │ ├── 35328-35583.pbf │ │ ├── 35584-35839.pbf │ │ ├── 3584-3839.pbf │ │ ├── 35840-36095.pbf │ │ ├── 36096-36351.pbf │ │ ├── 36352-36607.pbf │ │ ├── 36608-36863.pbf │ │ ├── 36864-37119.pbf │ │ ├── 37120-37375.pbf │ │ ├── 37376-37631.pbf │ │ ├── 37632-37887.pbf │ │ ├── 37888-38143.pbf │ │ ├── 38144-38399.pbf │ │ ├── 3840-4095.pbf │ │ ├── 38400-38655.pbf │ │ ├── 38656-38911.pbf │ │ ├── 38912-39167.pbf │ │ ├── 39168-39423.pbf │ │ ├── 39424-39679.pbf │ │ ├── 39680-39935.pbf │ │ ├── 39936-40191.pbf │ │ ├── 40192-40447.pbf │ │ ├── 40448-40703.pbf │ │ ├── 40704-40959.pbf │ │ ├── 4096-4351.pbf │ │ ├── 40960-41215.pbf │ │ ├── 41216-41471.pbf │ │ ├── 41472-41727.pbf │ │ ├── 41728-41983.pbf │ │ ├── 41984-42239.pbf │ │ ├── 42240-42495.pbf │ │ ├── 42496-42751.pbf │ │ ├── 42752-43007.pbf │ │ ├── 43008-43263.pbf │ │ ├── 43264-43519.pbf │ │ ├── 4352-4607.pbf │ │ ├── 43520-43775.pbf │ │ ├── 43776-44031.pbf │ │ ├── 44032-44287.pbf │ │ ├── 44288-44543.pbf │ │ ├── 44544-44799.pbf │ │ ├── 44800-45055.pbf │ │ ├── 45056-45311.pbf │ │ ├── 45312-45567.pbf │ │ ├── 45568-45823.pbf │ │ ├── 45824-46079.pbf │ │ ├── 4608-4863.pbf │ │ ├── 46080-46335.pbf │ │ ├── 46336-46591.pbf │ │ ├── 46592-46847.pbf │ │ ├── 46848-47103.pbf │ │ ├── 47104-47359.pbf │ │ ├── 47360-47615.pbf │ │ ├── 47616-47871.pbf │ │ ├── 47872-48127.pbf │ │ ├── 48128-48383.pbf │ │ ├── 48384-48639.pbf │ │ ├── 4864-5119.pbf │ │ ├── 48640-48895.pbf │ │ ├── 48896-49151.pbf │ │ ├── 49152-49407.pbf │ │ ├── 49408-49663.pbf │ │ ├── 49664-49919.pbf │ │ ├── 49920-50175.pbf │ │ ├── 50176-50431.pbf │ │ ├── 50432-50687.pbf │ │ ├── 50688-50943.pbf │ │ ├── 50944-51199.pbf │ │ ├── 512-767.pbf │ │ ├── 5120-5375.pbf │ │ ├── 51200-51455.pbf │ │ ├── 51456-51711.pbf │ │ ├── 51712-51967.pbf │ │ ├── 51968-52223.pbf │ │ ├── 52224-52479.pbf │ │ ├── 52480-52735.pbf │ │ ├── 52736-52991.pbf │ │ ├── 52992-53247.pbf │ │ ├── 53248-53503.pbf │ │ ├── 53504-53759.pbf │ │ ├── 5376-5631.pbf │ │ ├── 53760-54015.pbf │ │ ├── 54016-54271.pbf │ │ ├── 54272-54527.pbf │ │ ├── 54528-54783.pbf │ │ ├── 54784-55039.pbf │ │ ├── 55040-55295.pbf │ │ ├── 55296-55551.pbf │ │ ├── 55552-55807.pbf │ │ ├── 55808-56063.pbf │ │ ├── 56064-56319.pbf │ │ ├── 5632-5887.pbf │ │ ├── 56320-56575.pbf │ │ ├── 56576-56831.pbf │ │ ├── 56832-57087.pbf │ │ ├── 57088-57343.pbf │ │ ├── 57344-57599.pbf │ │ ├── 57600-57855.pbf │ │ ├── 57856-58111.pbf │ │ ├── 58112-58367.pbf │ │ ├── 58368-58623.pbf │ │ ├── 58624-58879.pbf │ │ ├── 5888-6143.pbf │ │ ├── 58880-59135.pbf │ │ ├── 59136-59391.pbf │ │ ├── 59392-59647.pbf │ │ ├── 59648-59903.pbf │ │ ├── 59904-60159.pbf │ │ ├── 60160-60415.pbf │ │ ├── 60416-60671.pbf │ │ ├── 60672-60927.pbf │ │ ├── 60928-61183.pbf │ │ ├── 61184-61439.pbf │ │ ├── 6144-6399.pbf │ │ ├── 61440-61695.pbf │ │ ├── 61696-61951.pbf │ │ ├── 61952-62207.pbf │ │ ├── 62208-62463.pbf │ │ ├── 62464-62719.pbf │ │ ├── 62720-62975.pbf │ │ ├── 62976-63231.pbf │ │ ├── 63232-63487.pbf │ │ ├── 63488-63743.pbf │ │ ├── 63744-63999.pbf │ │ ├── 6400-6655.pbf │ │ ├── 64000-64255.pbf │ │ ├── 64256-64511.pbf │ │ ├── 64512-64767.pbf │ │ ├── 64768-65023.pbf │ │ ├── 65024-65279.pbf │ │ ├── 65280-65535.pbf │ │ ├── 6656-6911.pbf │ │ ├── 6912-7167.pbf │ │ ├── 7168-7423.pbf │ │ ├── 7424-7679.pbf │ │ ├── 768-1023.pbf │ │ ├── 7680-7935.pbf │ │ ├── 7936-8191.pbf │ │ ├── 8192-8447.pbf │ │ ├── 8448-8703.pbf │ │ ├── 8704-8959.pbf │ │ ├── 8960-9215.pbf │ │ ├── 9216-9471.pbf │ │ ├── 9472-9727.pbf │ │ ├── 9728-9983.pbf │ │ └── 9984-10239.pbf ├── src │ ├── api │ │ ├── client.ts │ │ ├── evaluate.ts │ │ ├── stack.ts │ │ └── startup.ts │ ├── app │ │ ├── index.tsx │ │ └── provider.tsx │ ├── assets │ │ ├── fonts │ │ │ └── glyphs │ │ │ │ └── Unica77 │ │ │ │ ├── 0-255.pbf │ │ │ │ ├── 1024-1279.pbf │ │ │ │ ├── 10240-10495.pbf │ │ │ │ ├── 10496-10751.pbf │ │ │ │ ├── 10752-11007.pbf │ │ │ │ ├── 11008-11263.pbf │ │ │ │ ├── 11264-11519.pbf │ │ │ │ ├── 11520-11775.pbf │ │ │ │ ├── 11776-12031.pbf │ │ │ │ ├── 12032-12287.pbf │ │ │ │ ├── 12288-12543.pbf │ │ │ │ ├── 12544-12799.pbf │ │ │ │ ├── 1280-1535.pbf │ │ │ │ ├── 12800-13055.pbf │ │ │ │ ├── 13056-13311.pbf │ │ │ │ ├── 13312-13567.pbf │ │ │ │ ├── 13568-13823.pbf │ │ │ │ ├── 13824-14079.pbf │ │ │ │ ├── 14080-14335.pbf │ │ │ │ ├── 14336-14591.pbf │ │ │ │ ├── 14592-14847.pbf │ │ │ │ ├── 14848-15103.pbf │ │ │ │ ├── 15104-15359.pbf │ │ │ │ ├── 1536-1791.pbf │ │ │ │ ├── 15360-15615.pbf │ │ │ │ ├── 15616-15871.pbf │ │ │ │ ├── 15872-16127.pbf │ │ │ │ ├── 16128-16383.pbf │ │ │ │ ├── 16384-16639.pbf │ │ │ │ ├── 16640-16895.pbf │ │ │ │ ├── 16896-17151.pbf │ │ │ │ ├── 17152-17407.pbf │ │ │ │ ├── 17408-17663.pbf │ │ │ │ ├── 17664-17919.pbf │ │ │ │ ├── 1792-2047.pbf │ │ │ │ ├── 17920-18175.pbf │ │ │ │ ├── 18176-18431.pbf │ │ │ │ ├── 18432-18687.pbf │ │ │ │ ├── 18688-18943.pbf │ │ │ │ ├── 18944-19199.pbf │ │ │ │ ├── 19200-19455.pbf │ │ │ │ ├── 19456-19711.pbf │ │ │ │ ├── 19712-19967.pbf │ │ │ │ ├── 19968-20223.pbf │ │ │ │ ├── 20224-20479.pbf │ │ │ │ ├── 2048-2303.pbf │ │ │ │ ├── 20480-20735.pbf │ │ │ │ ├── 20736-20991.pbf │ │ │ │ ├── 20992-21247.pbf │ │ │ │ ├── 21248-21503.pbf │ │ │ │ ├── 21504-21759.pbf │ │ │ │ ├── 21760-22015.pbf │ │ │ │ ├── 22016-22271.pbf │ │ │ │ ├── 22272-22527.pbf │ │ │ │ ├── 22528-22783.pbf │ │ │ │ ├── 22784-23039.pbf │ │ │ │ ├── 2304-2559.pbf │ │ │ │ ├── 23040-23295.pbf │ │ │ │ ├── 23296-23551.pbf │ │ │ │ ├── 23552-23807.pbf │ │ │ │ ├── 23808-24063.pbf │ │ │ │ ├── 24064-24319.pbf │ │ │ │ ├── 24320-24575.pbf │ │ │ │ ├── 24576-24831.pbf │ │ │ │ ├── 24832-25087.pbf │ │ │ │ ├── 25088-25343.pbf │ │ │ │ ├── 25344-25599.pbf │ │ │ │ ├── 256-511.pbf │ │ │ │ ├── 2560-2815.pbf │ │ │ │ ├── 25600-25855.pbf │ │ │ │ ├── 25856-26111.pbf │ │ │ │ ├── 26112-26367.pbf │ │ │ │ ├── 26368-26623.pbf │ │ │ │ ├── 26624-26879.pbf │ │ │ │ ├── 26880-27135.pbf │ │ │ │ ├── 27136-27391.pbf │ │ │ │ ├── 27392-27647.pbf │ │ │ │ ├── 27648-27903.pbf │ │ │ │ ├── 27904-28159.pbf │ │ │ │ ├── 2816-3071.pbf │ │ │ │ ├── 28160-28415.pbf │ │ │ │ ├── 28416-28671.pbf │ │ │ │ ├── 28672-28927.pbf │ │ │ │ ├── 28928-29183.pbf │ │ │ │ ├── 29184-29439.pbf │ │ │ │ ├── 29440-29695.pbf │ │ │ │ ├── 29696-29951.pbf │ │ │ │ ├── 29952-30207.pbf │ │ │ │ ├── 30208-30463.pbf │ │ │ │ ├── 30464-30719.pbf │ │ │ │ ├── 3072-3327.pbf │ │ │ │ ├── 30720-30975.pbf │ │ │ │ ├── 30976-31231.pbf │ │ │ │ ├── 31232-31487.pbf │ │ │ │ ├── 31488-31743.pbf │ │ │ │ ├── 31744-31999.pbf │ │ │ │ ├── 32000-32255.pbf │ │ │ │ ├── 32256-32511.pbf │ │ │ │ ├── 32512-32767.pbf │ │ │ │ ├── 32768-33023.pbf │ │ │ │ ├── 33024-33279.pbf │ │ │ │ ├── 3328-3583.pbf │ │ │ │ ├── 33280-33535.pbf │ │ │ │ ├── 33536-33791.pbf │ │ │ │ ├── 33792-34047.pbf │ │ │ │ ├── 34048-34303.pbf │ │ │ │ ├── 34304-34559.pbf │ │ │ │ ├── 34560-34815.pbf │ │ │ │ ├── 34816-35071.pbf │ │ │ │ ├── 35072-35327.pbf │ │ │ │ ├── 35328-35583.pbf │ │ │ │ ├── 35584-35839.pbf │ │ │ │ ├── 3584-3839.pbf │ │ │ │ ├── 35840-36095.pbf │ │ │ │ ├── 36096-36351.pbf │ │ │ │ ├── 36352-36607.pbf │ │ │ │ ├── 36608-36863.pbf │ │ │ │ ├── 36864-37119.pbf │ │ │ │ ├── 37120-37375.pbf │ │ │ │ ├── 37376-37631.pbf │ │ │ │ ├── 37632-37887.pbf │ │ │ │ ├── 37888-38143.pbf │ │ │ │ ├── 38144-38399.pbf │ │ │ │ ├── 3840-4095.pbf │ │ │ │ ├── 38400-38655.pbf │ │ │ │ ├── 38656-38911.pbf │ │ │ │ ├── 38912-39167.pbf │ │ │ │ ├── 39168-39423.pbf │ │ │ │ ├── 39424-39679.pbf │ │ │ │ ├── 39680-39935.pbf │ │ │ │ ├── 39936-40191.pbf │ │ │ │ ├── 40192-40447.pbf │ │ │ │ ├── 40448-40703.pbf │ │ │ │ ├── 40704-40959.pbf │ │ │ │ ├── 4096-4351.pbf │ │ │ │ ├── 40960-41215.pbf │ │ │ │ ├── 41216-41471.pbf │ │ │ │ ├── 41472-41727.pbf │ │ │ │ ├── 41728-41983.pbf │ │ │ │ ├── 41984-42239.pbf │ │ │ │ ├── 42240-42495.pbf │ │ │ │ ├── 42496-42751.pbf │ │ │ │ ├── 42752-43007.pbf │ │ │ │ ├── 43008-43263.pbf │ │ │ │ ├── 43264-43519.pbf │ │ │ │ ├── 4352-4607.pbf │ │ │ │ ├── 43520-43775.pbf │ │ │ │ ├── 43776-44031.pbf │ │ │ │ ├── 44032-44287.pbf │ │ │ │ ├── 44288-44543.pbf │ │ │ │ ├── 44544-44799.pbf │ │ │ │ ├── 44800-45055.pbf │ │ │ │ ├── 45056-45311.pbf │ │ │ │ ├── 45312-45567.pbf │ │ │ │ ├── 45568-45823.pbf │ │ │ │ ├── 45824-46079.pbf │ │ │ │ ├── 4608-4863.pbf │ │ │ │ ├── 46080-46335.pbf │ │ │ │ ├── 46336-46591.pbf │ │ │ │ ├── 46592-46847.pbf │ │ │ │ ├── 46848-47103.pbf │ │ │ │ ├── 47104-47359.pbf │ │ │ │ ├── 47360-47615.pbf │ │ │ │ ├── 47616-47871.pbf │ │ │ │ ├── 47872-48127.pbf │ │ │ │ ├── 48128-48383.pbf │ │ │ │ ├── 48384-48639.pbf │ │ │ │ ├── 4864-5119.pbf │ │ │ │ ├── 48640-48895.pbf │ │ │ │ ├── 48896-49151.pbf │ │ │ │ ├── 49152-49407.pbf │ │ │ │ ├── 49408-49663.pbf │ │ │ │ ├── 49664-49919.pbf │ │ │ │ ├── 49920-50175.pbf │ │ │ │ ├── 50176-50431.pbf │ │ │ │ ├── 50432-50687.pbf │ │ │ │ ├── 50688-50943.pbf │ │ │ │ ├── 50944-51199.pbf │ │ │ │ ├── 512-767.pbf │ │ │ │ ├── 5120-5375.pbf │ │ │ │ ├── 51200-51455.pbf │ │ │ │ ├── 51456-51711.pbf │ │ │ │ ├── 51712-51967.pbf │ │ │ │ ├── 51968-52223.pbf │ │ │ │ ├── 52224-52479.pbf │ │ │ │ ├── 52480-52735.pbf │ │ │ │ ├── 52736-52991.pbf │ │ │ │ ├── 52992-53247.pbf │ │ │ │ ├── 53248-53503.pbf │ │ │ │ ├── 53504-53759.pbf │ │ │ │ ├── 5376-5631.pbf │ │ │ │ ├── 53760-54015.pbf │ │ │ │ ├── 54016-54271.pbf │ │ │ │ ├── 54272-54527.pbf │ │ │ │ ├── 54528-54783.pbf │ │ │ │ ├── 54784-55039.pbf │ │ │ │ ├── 55040-55295.pbf │ │ │ │ ├── 55296-55551.pbf │ │ │ │ ├── 55552-55807.pbf │ │ │ │ ├── 55808-56063.pbf │ │ │ │ ├── 56064-56319.pbf │ │ │ │ ├── 5632-5887.pbf │ │ │ │ ├── 56320-56575.pbf │ │ │ │ ├── 56576-56831.pbf │ │ │ │ ├── 56832-57087.pbf │ │ │ │ ├── 57088-57343.pbf │ │ │ │ ├── 57344-57599.pbf │ │ │ │ ├── 57600-57855.pbf │ │ │ │ ├── 57856-58111.pbf │ │ │ │ ├── 58112-58367.pbf │ │ │ │ ├── 58368-58623.pbf │ │ │ │ ├── 58624-58879.pbf │ │ │ │ ├── 5888-6143.pbf │ │ │ │ ├── 58880-59135.pbf │ │ │ │ ├── 59136-59391.pbf │ │ │ │ ├── 59392-59647.pbf │ │ │ │ ├── 59648-59903.pbf │ │ │ │ ├── 59904-60159.pbf │ │ │ │ ├── 60160-60415.pbf │ │ │ │ ├── 60416-60671.pbf │ │ │ │ ├── 60672-60927.pbf │ │ │ │ ├── 60928-61183.pbf │ │ │ │ ├── 61184-61439.pbf │ │ │ │ ├── 6144-6399.pbf │ │ │ │ ├── 61440-61695.pbf │ │ │ │ ├── 61696-61951.pbf │ │ │ │ ├── 61952-62207.pbf │ │ │ │ ├── 62208-62463.pbf │ │ │ │ ├── 62464-62719.pbf │ │ │ │ ├── 62720-62975.pbf │ │ │ │ ├── 62976-63231.pbf │ │ │ │ ├── 63232-63487.pbf │ │ │ │ ├── 63488-63743.pbf │ │ │ │ ├── 63744-63999.pbf │ │ │ │ ├── 6400-6655.pbf │ │ │ │ ├── 64000-64255.pbf │ │ │ │ ├── 64256-64511.pbf │ │ │ │ ├── 64512-64767.pbf │ │ │ │ ├── 64768-65023.pbf │ │ │ │ ├── 65024-65279.pbf │ │ │ │ ├── 65280-65535.pbf │ │ │ │ ├── 6656-6911.pbf │ │ │ │ ├── 6912-7167.pbf │ │ │ │ ├── 7168-7423.pbf │ │ │ │ ├── 7424-7679.pbf │ │ │ │ ├── 768-1023.pbf │ │ │ │ ├── 7680-7935.pbf │ │ │ │ ├── 7936-8191.pbf │ │ │ │ ├── 8192-8447.pbf │ │ │ │ ├── 8448-8703.pbf │ │ │ │ ├── 8704-8959.pbf │ │ │ │ ├── 8960-9215.pbf │ │ │ │ ├── 9216-9471.pbf │ │ │ │ ├── 9472-9727.pbf │ │ │ │ ├── 9728-9983.pbf │ │ │ │ └── 9984-10239.pbf │ │ ├── icons │ │ │ ├── circle │ │ │ │ ├── AlcoholShop.tsx │ │ │ │ ├── Bakery.tsx │ │ │ │ ├── Beer.tsx │ │ │ │ ├── Building.tsx │ │ │ │ ├── Bus.tsx │ │ │ │ ├── Car.tsx │ │ │ │ ├── CarRepair.tsx │ │ │ │ ├── Carehome.tsx │ │ │ │ ├── ClothingStore.tsx │ │ │ │ ├── Dentist.tsx │ │ │ │ ├── Dot.tsx │ │ │ │ ├── Farm.tsx │ │ │ │ ├── Garden.tsx │ │ │ │ ├── Grocery.tsx │ │ │ │ ├── Hairdresser.tsx │ │ │ │ ├── Home.tsx │ │ │ │ ├── HorseRiding.tsx │ │ │ │ ├── Hospital.tsx │ │ │ │ ├── Industry.tsx │ │ │ │ ├── Landmarks.tsx │ │ │ │ ├── Logging.tsx │ │ │ │ ├── NaturalAreas.tsx │ │ │ │ ├── Park.tsx │ │ │ │ ├── Parking.tsx │ │ │ │ ├── Pharmacy.tsx │ │ │ │ ├── Playground.tsx │ │ │ │ ├── Rail.tsx │ │ │ │ ├── RailMetro.tsx │ │ │ │ ├── ReligiousChristian.tsx │ │ │ │ ├── Restaurant.tsx │ │ │ │ ├── School.tsx │ │ │ │ ├── Shop.tsx │ │ │ │ ├── Soccer.tsx │ │ │ │ ├── Swimming.tsx │ │ │ │ ├── index.ts │ │ │ │ └── svg │ │ │ │ │ ├── alcohol-shop.svg │ │ │ │ │ ├── bakery.svg │ │ │ │ │ ├── beer.svg │ │ │ │ │ ├── building.svg │ │ │ │ │ ├── bus.svg │ │ │ │ │ ├── car-repair.svg │ │ │ │ │ ├── car.svg │ │ │ │ │ ├── carehome.svg │ │ │ │ │ ├── clothing-store.svg │ │ │ │ │ ├── dentist.svg │ │ │ │ │ ├── dot.svg │ │ │ │ │ ├── farm.svg │ │ │ │ │ ├── garden.svg │ │ │ │ │ ├── grocery.svg │ │ │ │ │ ├── hairdresser.svg │ │ │ │ │ ├── home.svg │ │ │ │ │ ├── horse-riding.svg │ │ │ │ │ ├── hospital.svg │ │ │ │ │ ├── industry.svg │ │ │ │ │ ├── landmarks.svg │ │ │ │ │ ├── logging.svg │ │ │ │ │ ├── natural_areas.svg │ │ │ │ │ ├── park.svg │ │ │ │ │ ├── parking.svg │ │ │ │ │ ├── pharmacy.svg │ │ │ │ │ ├── playground.svg │ │ │ │ │ ├── rail-metro.svg │ │ │ │ │ ├── rail.svg │ │ │ │ │ ├── religious-christian.svg │ │ │ │ │ ├── restaurant.svg │ │ │ │ │ ├── school.svg │ │ │ │ │ ├── shop.svg │ │ │ │ │ ├── soccer.svg │ │ │ │ │ └── swimming.svg │ │ │ └── solid │ │ │ │ ├── AlcoholShop.tsx │ │ │ │ ├── Bakery.tsx │ │ │ │ ├── Beer.tsx │ │ │ │ ├── Building.tsx │ │ │ │ ├── Bus.tsx │ │ │ │ ├── Car.tsx │ │ │ │ ├── CarRepair.tsx │ │ │ │ ├── ClothingStore.tsx │ │ │ │ ├── Dot.tsx │ │ │ │ ├── Farm.tsx │ │ │ │ ├── Garden.tsx │ │ │ │ ├── Grocery.tsx │ │ │ │ ├── Hairdresser.tsx │ │ │ │ ├── Home.tsx │ │ │ │ ├── HorseRiding.tsx │ │ │ │ ├── Hospital.tsx │ │ │ │ ├── Industry.tsx │ │ │ │ ├── Logging.tsx │ │ │ │ ├── Park.tsx │ │ │ │ ├── Parking.tsx │ │ │ │ ├── Playground.tsx │ │ │ │ ├── Rail.tsx │ │ │ │ ├── RailMetro.tsx │ │ │ │ ├── ReligiousChristian.tsx │ │ │ │ ├── Restaurant.tsx │ │ │ │ ├── School.tsx │ │ │ │ ├── Shop.tsx │ │ │ │ ├── Soccer.tsx │ │ │ │ ├── Swimming.tsx │ │ │ │ ├── index.ts │ │ │ │ └── svg │ │ │ │ ├── alcohol-shop.svg │ │ │ │ ├── bakery.svg │ │ │ │ ├── beer.svg │ │ │ │ ├── building.svg │ │ │ │ ├── bus.svg │ │ │ │ ├── car-repair.svg │ │ │ │ ├── car.svg │ │ │ │ ├── clothing-store.svg │ │ │ │ ├── dot.svg │ │ │ │ ├── farm.svg │ │ │ │ ├── garden.svg │ │ │ │ ├── grocery.svg │ │ │ │ ├── hairdresser.svg │ │ │ │ ├── home.svg │ │ │ │ ├── horse-riding.svg │ │ │ │ ├── hospital.svg │ │ │ │ ├── industry.svg │ │ │ │ ├── logging.svg │ │ │ │ ├── park.svg │ │ │ │ ├── parking.svg │ │ │ │ ├── playground.svg │ │ │ │ ├── rail-metro.svg │ │ │ │ ├── rail.svg │ │ │ │ ├── religious-christian.svg │ │ │ │ ├── restaurant.svg │ │ │ │ ├── school.svg │ │ │ │ ├── shop.svg │ │ │ │ ├── soccer.svg │ │ │ │ └── swimming.svg │ │ └── map │ │ │ ├── diagonal-map-style-rose.json │ │ │ └── diagonal-map-style.json │ ├── components │ │ ├── ConditionalWrap.tsx │ │ ├── DeckGLOverlay.tsx │ │ ├── GeoJsonLayer.tsx │ │ ├── Map.tsx │ │ ├── Outliner.tsx │ │ ├── OutlinersLayer.tsx │ │ ├── Workspace.tsx │ │ ├── World.tsx │ │ ├── adapters │ │ │ ├── AtomAdapter.tsx │ │ │ ├── ChipAdapter.tsx │ │ │ ├── ConditionalAdapter.tsx │ │ │ ├── HeaderAdapter.tsx │ │ │ ├── HistogramAdapter.tsx │ │ │ ├── LabelledIconAdapter.tsx │ │ │ ├── LineAdapter.tsx │ │ │ ├── SelectAdapter.tsx │ │ │ └── SubstackAdapter.tsx │ │ ├── errors │ │ │ └── MainErrorFallback.tsx │ │ └── system │ │ │ ├── Atoms.stories.tsx │ │ │ ├── Button.tsx │ │ │ ├── ClickableAtom.tsx │ │ │ ├── Header.tsx │ │ │ ├── Histogram.stories.tsx │ │ │ ├── Histogram.tsx │ │ │ ├── IconButton.tsx │ │ │ ├── LabelledIcon.tsx │ │ │ ├── Line.stories.tsx │ │ │ ├── Line.tsx │ │ │ ├── Logo.tsx │ │ │ ├── MapControls.tsx │ │ │ ├── Select.tsx │ │ │ ├── Spinner.tsx │ │ │ ├── Stack.stories.tsx │ │ │ ├── Stack.tsx │ │ │ └── Tooltip.tsx │ ├── features │ │ ├── scenarios │ │ │ ├── README.md │ │ │ ├── api │ │ │ │ ├── change-functions.ts │ │ │ │ ├── comparison.ts │ │ │ │ └── run-scenario.ts │ │ │ ├── components │ │ │ │ ├── ChangePanel.tsx │ │ │ │ ├── ComparisonCard.tsx │ │ │ │ ├── ComparisonStack.tsx │ │ │ │ ├── OutlinerChangeWrapper.tsx │ │ │ │ └── Tabs.tsx │ │ │ ├── hooks │ │ │ │ └── useDockedAnalysis.tsx │ │ │ ├── stores │ │ │ │ ├── changes.tsx │ │ │ │ ├── comparisons.tsx │ │ │ │ └── tabs.tsx │ │ │ └── types │ │ │ │ └── change.ts │ │ └── shell │ │ │ ├── adapters │ │ │ └── ShellAdapter.tsx │ │ │ └── components │ │ │ ├── Shell.css │ │ │ ├── Shell.stories.tsx │ │ │ └── Shell.tsx │ ├── hooks │ │ ├── useChartDimensions.ts │ │ ├── useFeatureFlag.ts │ │ ├── useHighlight.ts │ │ ├── useMap.ts │ │ ├── useOverflow.ts │ │ └── usePersistURL.ts │ ├── index.css │ ├── lib │ │ ├── context │ │ │ ├── line.tsx │ │ │ └── stack.tsx │ │ └── zustand.tsx │ ├── main.tsx │ ├── scripts │ │ └── figma │ │ │ ├── api.ts │ │ │ ├── colors.ts │ │ │ └── typography.ts │ ├── stores │ │ ├── map.ts │ │ ├── outliners.ts │ │ ├── view.ts │ │ ├── workspace.ts │ │ └── worlds.ts │ ├── tokens │ │ ├── Colors.stories.tsx │ │ ├── Icons.stories.tsx │ │ ├── Typography.stories.tsx │ │ ├── colors.json │ │ ├── typography.css │ │ └── typography.json │ ├── types │ │ ├── events.ts │ │ ├── features.ts │ │ ├── generated │ │ │ ├── api.ts │ │ │ ├── geometry.ts │ │ │ └── ui.ts │ │ ├── stack.ts │ │ └── startup.ts │ ├── utils │ │ ├── animations.ts │ │ ├── atoms.ts │ │ ├── colors.ts │ │ ├── defs.d.ts │ │ ├── map.ts │ │ ├── text.tsx │ │ └── world.ts │ └── vite-env.d.ts ├── tailwind.config.ts ├── tsconfig.json ├── tsconfig.node.json └── vite.config.ts ├── nix ├── docker.nix ├── go.nix ├── js.nix ├── python.nix ├── templates │ └── python-client │ │ ├── flake.lock │ │ └── flake.nix └── treefmt.nix ├── proto ├── api.proto ├── compact.proto ├── geometry.proto ├── pbf.proto ├── tiles.proto └── ui.proto ├── python ├── .gitignore ├── README.md ├── diagonal_b6 │ ├── .gitignore │ ├── __init__.py │ ├── b6_test.py │ ├── connect.py │ ├── expression.py │ ├── features.py │ ├── generate_api.py │ ├── geometry.py │ └── query.py ├── docs │ ├── 01_Search.ipynb │ ├── b6-screenshot.jpg │ └── env.yml └── pyproject.toml.template ├── scripts └── api-docs-to-docusaurus.py └── src └── diagonal.works └── b6 ├── api ├── .gitignore ├── api.go ├── collections.go ├── evaluator.go ├── functions │ ├── access.go │ ├── access_test.go │ ├── change.go │ ├── change_test.go │ ├── collections.go │ ├── collections_test.go │ ├── debug.go │ ├── docs.go │ ├── export.go │ ├── features.go │ ├── features_test.go │ ├── functions.go │ ├── geojson.go │ ├── geojson_test.go │ ├── geometry.go │ ├── geometry_test.go │ ├── graph.go │ ├── graph_test.go │ ├── map.go │ ├── map_test.go │ ├── materialise.go │ ├── materialise_test.go │ ├── math.go │ ├── math_test.go │ ├── s2.go │ ├── s2_test.go │ ├── search.go │ ├── sightline.go │ ├── sightline_test.go │ ├── tiles.go │ ├── transit_test.go │ └── vm_test.go ├── histogram.go ├── shell.go ├── shell.y ├── shell_test.go ├── tiles.go ├── vm.go └── y.go ├── cmd ├── b6-api │ └── b6-api.go ├── b6-connect │ ├── .gitignore │ └── b6-connect.go ├── b6-ingest-gb-codepoint │ └── b6-ingest-gb-codepoint.go ├── b6-ingest-gb-uprn │ ├── .gitignore │ └── b6-ingest-gb-uprn.go ├── b6-ingest-gdal │ └── b6-ingest-gdal.go ├── b6-ingest-gtfs │ ├── .gitignore │ └── b6-ingest-gtfs.go ├── b6-ingest-osm │ └── b6-ingest-osm.go ├── b6-ingest-terrain │ └── b6-ingest-terrain.go └── b6 │ ├── b6.go │ └── js │ ├── .eslintrc.json │ ├── .gitignore │ ├── .prettierignore │ ├── .prettierrc │ ├── Makefile │ ├── b6.js │ ├── main.js │ ├── package-lock.json │ ├── package.json │ ├── rollup.config.js │ └── static │ ├── b6.css │ ├── images │ ├── alcohol-shop.svg │ ├── area.svg │ ├── bakery.svg │ ├── beer.svg │ ├── building.svg │ ├── bus.svg │ ├── car-repair.svg │ ├── car.svg │ ├── close.svg │ ├── clothing-store.svg │ ├── collection.svg │ ├── dot-blue.svg │ ├── dot-cyan.svg │ ├── dot-emerald.svg │ ├── dot-rose.svg │ ├── dot-stone.svg │ ├── dot-teal.svg │ ├── dot-violet.svg │ ├── dot-yellow.svg │ ├── dot.svg │ ├── expression.svg │ ├── farm.svg │ ├── favicon-16x16.png │ ├── favicon-32x32.png │ ├── garden.svg │ ├── grocery.svg │ ├── hairdresser.svg │ ├── home.svg │ ├── horse-riding.svg │ ├── hospital.svg │ ├── industry.svg │ ├── logging.svg │ ├── park.svg │ ├── parking.svg │ ├── path.svg │ ├── playground.svg │ ├── point.svg │ ├── rail-metro.svg │ ├── rail.svg │ ├── relation.svg │ ├── religious-christian.svg │ ├── restaurant.svg │ ├── school.svg │ ├── share.svg │ ├── shop.svg │ ├── soccer.svg │ ├── swimming.svg │ ├── zoom-in.svg │ └── zoom-out.svg │ ├── index.html │ └── palette.html ├── collections.go ├── elevation.go ├── elevation_test.go ├── encoding ├── arrays.go ├── arrays_test.go ├── encoding.go ├── ints.go ├── ints_test.go ├── strings.go ├── strings_test.go ├── testing.go ├── uint64map.go └── uint64map_test.go ├── expression.go ├── expression_test.go ├── geojson ├── geojson.go └── geojson_test.go ├── geometry ├── foster.go └── multipolygon.go ├── go.mod ├── go.sum ├── gomod2nix.toml ├── graph ├── connectivity.go ├── connectivity_test.go ├── graph.go └── graph_test.go ├── grpc ├── service.go └── service_test.go ├── ids.go ├── ids_test.go ├── ingest ├── basic.go ├── box.go ├── change.go ├── change_test.go ├── colouring.go ├── colouring_test.go ├── compact │ ├── build.go │ ├── encoding.go │ ├── encoding_test.go │ ├── overlay.go │ ├── overlay_test.go │ ├── read.go │ ├── world.go │ └── world_test.go ├── features.go ├── features_test.go ├── gb │ └── uprn │ │ ├── source.go │ │ └── source_test.go ├── gdal │ ├── inputs.go │ ├── source.go │ └── source_test.go ├── gtfs │ ├── gtfs.go │ └── gtfs_test.go ├── ids.go ├── ids_test.go ├── index.go ├── join.go ├── mutable.go ├── mutable_test.go ├── osm.go ├── overlay.go ├── overlay_test.go ├── search_test.go ├── source.go ├── source_test.go ├── spatial_test.go ├── testing.go ├── tokens.go ├── transit │ ├── conflate.go │ ├── conflate_test.go │ ├── evaluate.go │ ├── gtfs.go │ ├── gtfs_test.go │ └── transit.go ├── validate.go ├── world_test.go ├── worlds.go ├── yaml.go └── yaml_test.go ├── merged.go ├── merged_test.go ├── osm ├── osm.go ├── pbf.go ├── pbf_test.go ├── polygons.go ├── polygons_test.go └── proto │ └── pbf.pb.go ├── path.go ├── path_test.go ├── proto ├── api.pb.go ├── api_grpc.pb.go ├── compact.pb.go ├── geometry.pb.go ├── tiles.pb.go └── ui.pb.go ├── protos.go ├── renderer ├── collection.go ├── collection_test.go ├── colours.go ├── colours_test.go ├── encoder.go ├── encoder_test.go ├── features.go ├── handler.go ├── handler_test.go ├── histogram.go ├── histogram_test.go ├── icons.go ├── query.go ├── query_test.go ├── renderer.go ├── renderer_test.go ├── simplify.go └── simplify_test.go ├── search.go ├── search ├── array.go ├── intersection.go ├── prefix.go ├── range.go ├── search.go ├── search_test.go ├── spatial.go ├── spatial_test.go ├── tokens.go ├── tree.go ├── tree_test.go └── union.go ├── search_test.go ├── spatial.go ├── spatial_test.go ├── test ├── camden │ └── camden.go └── data.go ├── tiles.go ├── tiles_test.go ├── ui ├── histogram.go ├── histogram_test.go ├── labels.go ├── lines.go ├── lines_test.go ├── ui.go └── ui_test.go ├── units └── units.go ├── values.go ├── values_test.go ├── version.go ├── version_test.go ├── world.go ├── world_test.go └── yaml.go /.editorconfig: -------------------------------------------------------------------------------- 1 | [*.go] 2 | indent_style = tab 3 | indent_size = 2 4 | end_of_line = lf 5 | charset = utf-8 6 | trim_trailing_whitespace = true 7 | insert_final_newline = true 8 | 9 | [*.tsx] 10 | indent_size = 4 11 | end_of_line = lf 12 | charset = utf-8 13 | trim_trailing_whitespace = true 14 | insert_final_newline = true 15 | 16 | -------------------------------------------------------------------------------- /.envrc: -------------------------------------------------------------------------------- 1 | use flake . --accept-flake-config 2 | 3 | -------------------------------------------------------------------------------- /.gcloudignore: -------------------------------------------------------------------------------- 1 | * 2 | !.git 3 | !data 4 | !docker 5 | !etc 6 | !frontend 7 | !Makefile 8 | !proto 9 | !python 10 | !scripts 11 | !src 12 | frontend/node_modules 13 | src/diagonal.works/b6/cmd/b6/js/node_modules 14 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .venv 2 | .vscode 3 | bin 4 | **/.DS_Store 5 | **/*_pb2.py 6 | **/*_grpc.py 7 | **/__pycache__ 8 | VERSION 9 | python/docs/.ipynb_checkpoints/ 10 | 11 | # Nix 12 | result* 13 | .direnv/ 14 | 15 | # Data 16 | data/*.index 17 | data/*.yaml 18 | -------------------------------------------------------------------------------- /data/tests/.gitignore: -------------------------------------------------------------------------------- 1 | granary-square.index 2 | -------------------------------------------------------------------------------- /data/tests/camden.osm.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/data/tests/camden.osm.pbf -------------------------------------------------------------------------------- /data/tests/granary-square.geojson: -------------------------------------------------------------------------------- 1 | {"type":"FeatureCollection","features":[{"type":"Feature","properties":{},"geometry":{"coordinates":[[[-0.12587682256517496,51.535363375642135],[-0.12486525568502316,51.53519822404303],[-0.12472453903350811,51.535497147998],[-0.12576265622502092,51.53564082897941],[-0.12587682256517496,51.535363375642135]]],"type":"Polygon"}}]} -------------------------------------------------------------------------------- /data/tests/granary-square.osm.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/data/tests/granary-square.osm.pbf -------------------------------------------------------------------------------- /data/tests/gtfs-manchester/README: -------------------------------------------------------------------------------- 1 | GTFS feed for manchester: 2 | http://odata.tfgm.com/opendata/downloads/TfGMgtfs.zip#gtdf-out 3 | Downloaded via https://transit.land/feed-registry/operators/o-gcw2-metrolink 4 | The feed is then downsampled via filter.py to make it small enough to keep 5 | tests fast. 6 | -------------------------------------------------------------------------------- /data/tests/gtfs-manchester/feed_info.txt: -------------------------------------------------------------------------------- 1 | feed_publisher_name,feed_publisher_url,feed_timezone,feed_lang,feed_valid_from,feed_valid_to,feed_version 2 | Transport for Greater Manchester,http://www.tfgm.com,Europe/London,en,20200528,20200728,20200528 3 | -------------------------------------------------------------------------------- /data/tests/gtfs-manchester/routes.txt: -------------------------------------------------------------------------------- 1 | route_id,agency_id,route_short_name,route_long_name,route_type 2 | NOR: 541:I:,NOR, 541,Toppings - Bolton,3 3 | GOA: 98:O:,GOA, 98,Manchester - Whitefield - Radcliffe - Bury,3 4 | BPT: 6:C:,BPT, 6,Rochdale - Queensway - Kirkholt circular,3 5 | GMS: 43:O:,GMS, 43,Manchester - Manchester Airport Night Service,3 6 | GMS: 309:C:,GMS, 309,Stockport - Cheadle - Cheadle Heath Circular,3 7 | GTB: 511:O:,GTB, 511,Bury - Walshaw - Ainsworth - Breightmet - Bolton,3 8 | VBL: 559:I:,VBL, 559,Ashton - Hindley - Westhoughton - Bolton,3 9 | -------------------------------------------------------------------------------- /data/tests/london-boundaries.osm.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/data/tests/london-boundaries.osm.pbf -------------------------------------------------------------------------------- /data/tests/lsoa-camden.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/data/tests/lsoa-camden.dbf -------------------------------------------------------------------------------- /data/tests/lsoa-camden.prj: -------------------------------------------------------------------------------- 1 | PROJCS["OSGB_1936_British_National_Grid",GEOGCS["GCS_OSGB 1936",DATUM["D_OSGB_1936",SPHEROID["Airy_1830",6377563.396,299.3249646]],PRIMEM["Greenwich",0],UNIT["Degree",0.017453292519943295]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",49],PARAMETER["central_meridian",-2],PARAMETER["scale_factor",0.9996012717],PARAMETER["false_easting",400000],PARAMETER["false_northing",-100000],UNIT["Meter",1]] -------------------------------------------------------------------------------- /data/tests/lsoa-camden.qpj: -------------------------------------------------------------------------------- 1 | PROJCS["OSGB 1936 / British National Grid",GEOGCS["OSGB 1936",DATUM["OSGB_1936",SPHEROID["Airy 1830",6377563.396,299.3249646,AUTHORITY["EPSG","7001"]],TOWGS84[446.448,-125.157,542.06,0.15,0.247,0.842,-20.489],AUTHORITY["EPSG","6277"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4277"]],PROJECTION["Transverse_Mercator"],PARAMETER["latitude_of_origin",49],PARAMETER["central_meridian",-2],PARAMETER["scale_factor",0.9996012717],PARAMETER["false_easting",400000],PARAMETER["false_northing",-100000],UNIT["metre",1,AUTHORITY["EPSG","9001"]],AXIS["Easting",EAST],AXIS["Northing",NORTH],AUTHORITY["EPSG","27700"]] 2 | -------------------------------------------------------------------------------- /data/tests/lsoa-camden.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/data/tests/lsoa-camden.shp -------------------------------------------------------------------------------- /data/tests/lsoa-camden.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/data/tests/lsoa-camden.shx -------------------------------------------------------------------------------- /data/tests/ward-hole.cpg: -------------------------------------------------------------------------------- 1 | UTF-8 -------------------------------------------------------------------------------- /data/tests/ward-hole.dbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/data/tests/ward-hole.dbf -------------------------------------------------------------------------------- /data/tests/ward-hole.prj: -------------------------------------------------------------------------------- 1 | PROJCS["British_National_Grid",GEOGCS["GCS_OSGB_1936",DATUM["D_OSGB_1936",SPHEROID["Airy_1830",6377563.396,299.3249646]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",400000.0],PARAMETER["False_Northing",-100000.0],PARAMETER["Central_Meridian",-2.0],PARAMETER["Scale_Factor",0.9996012717],PARAMETER["Latitude_Of_Origin",49.0],UNIT["Meter",1.0]] -------------------------------------------------------------------------------- /data/tests/ward-hole.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/data/tests/ward-hole.shp -------------------------------------------------------------------------------- /data/tests/ward-hole.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/data/tests/ward-hole.shx -------------------------------------------------------------------------------- /data/tests/ward-inverted.cpg: -------------------------------------------------------------------------------- 1 | UTF-8 -------------------------------------------------------------------------------- /data/tests/ward-inverted.dbf: -------------------------------------------------------------------------------- 1 | |aWD22CDC WD22NMC7WD22NMWC2LAD22CDC LAD22NMCABNG_EN 2 | BNG_NN 3 | LONGN LATN GlobalIDC& E05004196Maldon East E07000074Maldon 586351 2055310.6963220000051.717500000028fcacbb-7984-4dfc-8c0a-d87e4e995a34  -------------------------------------------------------------------------------- /data/tests/ward-inverted.prj: -------------------------------------------------------------------------------- 1 | PROJCS["British_National_Grid",GEOGCS["GCS_OSGB_1936",DATUM["D_OSGB_1936",SPHEROID["Airy_1830",6377563.396,299.3249646]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",400000.0],PARAMETER["False_Northing",-100000.0],PARAMETER["Central_Meridian",-2.0],PARAMETER["Scale_Factor",0.9996012717],PARAMETER["Latitude_Of_Origin",49.0],UNIT["Meter",1.0]] -------------------------------------------------------------------------------- /data/tests/ward-inverted.shp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/data/tests/ward-inverted.shp -------------------------------------------------------------------------------- /data/tests/ward-inverted.shx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/data/tests/ward-inverted.shx -------------------------------------------------------------------------------- /docs/.gitignore: -------------------------------------------------------------------------------- 1 | # Dependencies 2 | /node_modules 3 | 4 | # Production 5 | /build 6 | 7 | # Generated files 8 | .docusaurus 9 | .cache-loader 10 | 11 | # Misc 12 | .DS_Store 13 | .env.local 14 | .env.development.local 15 | .env.test.local 16 | .env.production.local 17 | 18 | npm-debug.log* 19 | yarn-debug.log* 20 | yarn-error.log* 21 | -------------------------------------------------------------------------------- /docs/README.md: -------------------------------------------------------------------------------- 1 | # Website 2 | 3 | This website is built using [Docusaurus](https://docusaurus.io/), a modern static website generator. 4 | 5 | ### Installation 6 | 7 | ``` 8 | $ npm i 9 | ``` 10 | 11 | ### Local Development 12 | 13 | ``` 14 | $ npm start 15 | ``` 16 | 17 | This command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server. 18 | 19 | ### Build 20 | 21 | ``` 22 | $ npm run build 23 | ``` 24 | 25 | This command generates static content into the `build` directory and can be served using any static contents hosting service. 26 | -------------------------------------------------------------------------------- /docs/babel.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | presets: [require.resolve("@docusaurus/core/lib/babel/preset")], 3 | }; 4 | -------------------------------------------------------------------------------- /docs/docs/backend/index.md: -------------------------------------------------------------------------------- 1 | --- 2 | sidebar_position: 1 3 | --- 4 | 5 | # Backend 6 | 7 | ## [Worlds](/docs/backend/worlds) 8 | 9 | ## Features 10 | 11 | ## Tags 12 | 13 | ## Indexes 14 | 15 | ## [Ingesting](/docs/backend/ingest) 16 | 17 | ## UI 18 | 19 | ## Tiles 20 | 21 | ## Expressions 22 | 23 | ## The VM 24 | 25 | ## Connectivity 26 | 27 | ## gRPC 28 | 29 | - [ ] SemVer/danger of changing structs 30 | - [ ] gRPC packset size too big 31 | -------------------------------------------------------------------------------- /docs/docs/quirks.md: -------------------------------------------------------------------------------- 1 | --- 2 | sidebar_position: 5 3 | --- 4 | 5 | # Quirks 6 | 7 | - The `b6.collection(*[ ... ])` limitations. This seems to break, in 8 | combination with `add_tags`; it seems to drop if the list has more than 60k 9 | elements. 10 | 11 | - Searching for things added with `add_world_with_change( ... )`; the default 12 | connection uses the default `root` world. You'd need to open another 13 | connection with the specific world you are after. 14 | 15 | 16 | -------------------------------------------------------------------------------- /docs/sidebars.ts: -------------------------------------------------------------------------------- 1 | import type { SidebarsConfig } from "@docusaurus/plugin-content-docs"; 2 | 3 | const sidebars: SidebarsConfig = { 4 | docsSidebar: [ 5 | "api", 6 | { 7 | type: "category", 8 | label: "Backend", 9 | link: { type: "doc", id: "backend/index" }, 10 | items: ["backend/worlds", "backend/ingest"], 11 | }, 12 | "frontend/index", 13 | "contributing/index", 14 | "quirks", 15 | ], 16 | }; 17 | 18 | export default sidebars; 19 | -------------------------------------------------------------------------------- /docs/src/components/HomepageFeatures/styles.module.css: -------------------------------------------------------------------------------- 1 | .features { 2 | display: flex; 3 | align-items: center; 4 | padding: 2rem 0; 5 | width: 100%; 6 | } 7 | 8 | .featureSvg { 9 | height: 200px; 10 | width: 200px; 11 | } 12 | -------------------------------------------------------------------------------- /docs/src/pages/index.module.css: -------------------------------------------------------------------------------- 1 | /** 2 | * CSS files with the .module.css suffix will be treated as CSS modules 3 | * and scoped locally. 4 | */ 5 | 6 | .heroBanner { 7 | padding: 4rem 0; 8 | text-align: center; 9 | position: relative; 10 | overflow: hidden; 11 | } 12 | 13 | @media screen and (max-width: 996px) { 14 | .heroBanner { 15 | padding: 2rem; 16 | } 17 | } 18 | 19 | .buttons { 20 | display: flex; 21 | align-items: center; 22 | justify-content: center; 23 | } 24 | -------------------------------------------------------------------------------- /docs/static/.nojekyll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/docs/static/.nojekyll -------------------------------------------------------------------------------- /docs/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | // This file is not used in compilation. It is here just for a nice editor experience. 3 | "extends": "@docusaurus/tsconfig", 4 | "compilerOptions": { 5 | "baseUrl": "." 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /frontend/.env.development: -------------------------------------------------------------------------------- 1 | VITE_B6_BASE_PATH="/" 2 | -------------------------------------------------------------------------------- /frontend/.env.production: -------------------------------------------------------------------------------- 1 | VITE_B6_BASE_PATH="/" 2 | -------------------------------------------------------------------------------- /frontend/.eslintrc.cjs: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | root: true, 3 | env: { browser: true, es2020: true }, 4 | extends: [ 5 | "eslint:recommended", 6 | "plugin:@typescript-eslint/recommended", 7 | "plugin:react-hooks/recommended", 8 | ], 9 | ignorePatterns: ["dist", ".eslintrc.cjs", "node_modules"], 10 | parser: "@typescript-eslint/parser", 11 | plugins: ["react-refresh", "@tanstack/query"], 12 | rules: { 13 | "react-hooks/rules-of-hooks": "error", 14 | "react-refresh/only-export-components": [ 15 | "warn", 16 | { allowConstantExport: true }, 17 | ], 18 | }, 19 | }; 20 | -------------------------------------------------------------------------------- /frontend/.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | pnpm-debug.log* 8 | lerna-debug.log* 9 | 10 | node_modules 11 | dist 12 | dist-storybook 13 | dist-ssr 14 | *.local 15 | 16 | .env 17 | .vite 18 | 19 | # Editor directories and files 20 | .vscode/* 21 | !.vscode/extensions.json 22 | .idea 23 | .DS_Store 24 | *.suo 25 | *.ntvs* 26 | *.njsproj 27 | *.sln 28 | *.sw? 29 | 30 | # Storybook 31 | storybook-static/ -------------------------------------------------------------------------------- /frontend/.prettierignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | dist/ 3 | -------------------------------------------------------------------------------- /frontend/.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "trailingComma": "es5", 3 | "tabWidth": 4, 4 | "semi": true, 5 | "singleQuote": true, 6 | "printWidth": 80, 7 | "useTabs": false, 8 | "bracketSpacing": true, 9 | "arrowParens": "always", 10 | "plugins": ["@trivago/prettier-plugin-sort-imports"], 11 | "importOrder": ["^@/(.*)$", "^[./]"], 12 | "importOrderSeparation": true, 13 | "importOrderSortSpecifiers": true 14 | } 15 | -------------------------------------------------------------------------------- /frontend/.storybook/main.ts: -------------------------------------------------------------------------------- 1 | import type { StorybookConfig } from "@storybook/react-vite"; 2 | 3 | const config: StorybookConfig = { 4 | stories: ["../src/**/*.mdx", "../src/**/*.stories.@(js|jsx|mjs|ts|tsx)"], 5 | addons: [ 6 | "@storybook/addon-links", 7 | "@storybook/addon-essentials", 8 | "@storybook/addon-onboarding", 9 | "@storybook/addon-interactions", 10 | ], 11 | framework: { 12 | name: "@storybook/react-vite", 13 | options: {}, 14 | }, 15 | docs: { 16 | autodocs: "tag", 17 | }, 18 | }; 19 | export default config; 20 | -------------------------------------------------------------------------------- /frontend/.storybook/manager.ts: -------------------------------------------------------------------------------- 1 | import { addons } from "@storybook/manager-api"; 2 | import b6Theme from "./theme"; 3 | 4 | addons.setConfig({ 5 | theme: b6Theme, 6 | }); 7 | -------------------------------------------------------------------------------- /frontend/.storybook/theme.ts: -------------------------------------------------------------------------------- 1 | import { create } from "@storybook/theming/create"; 2 | 3 | export default create({ 4 | base: "dark", 5 | brandTitle: "b6 design system", 6 | brandUrl: "https://www.diagonal.works", 7 | brandTarget: "_self", 8 | colorPrimary: "#3b3c67", 9 | colorSecondary: "#646ac3", 10 | 11 | // UI 12 | appBg: "#3b3c67", 13 | appContentBg: "#fff", 14 | appPreviewBg: "#fff", 15 | appBorderColor: "#eeecff", 16 | appBorderRadius: 2, 17 | 18 | // Text colors 19 | textColor: "#f9f9fe", 20 | textInverseColor: "#25253c", 21 | textMutedColor: "#b3a7da", 22 | 23 | // Toolbar default and active colors 24 | barTextColor: "#646ac3", 25 | barSelectedColor: "#3b3c67", 26 | barBg: "#f9f9fe", 27 | }); 28 | -------------------------------------------------------------------------------- /frontend/.svgrrc: -------------------------------------------------------------------------------- 1 | { 2 | "replaceAttrValues": { 3 | "#4F5A7D": "{props.fill}" 4 | }, 5 | "typescript": true, 6 | "jsxRuntime": "automatic" 7 | } 8 | -------------------------------------------------------------------------------- /frontend/Makefile: -------------------------------------------------------------------------------- 1 | # pnpm --config.confirmModulesPurge=false prevents pnpm from blocking on 2 | # stdin in the continuous build. 3 | 4 | all: 5 | pnpm install --config.confirmModulesPurge=false 6 | pnpm build 7 | pnpm build-storybook 8 | -------------------------------------------------------------------------------- /frontend/index-vite.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 11 | 12 | 13 | 14 | 15 | 16 | b6 17 | 18 | 19 |
20 | 21 | 22 | -------------------------------------------------------------------------------- /frontend/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | b6 8 | 9 | 10 |
11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /frontend/postcss.config.js: -------------------------------------------------------------------------------- 1 | export default { 2 | plugins: { 3 | tailwindcss: {}, 4 | autoprefixer: {}, 5 | }, 6 | }; 7 | -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/0-255.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/public/assets/fonts/glyphs/Unica77/0-255.pbf -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/1024-1279.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  1024-1279 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/10240-10495.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  10240-10495 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/10496-10751.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/public/assets/fonts/glyphs/Unica77/10496-10751.pbf -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/10752-11007.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  10752-11007 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/11008-11263.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/public/assets/fonts/glyphs/Unica77/11008-11263.pbf -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/11264-11519.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  11264-11519 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/11520-11775.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  11520-11775 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/11776-12031.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  11776-12031 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/12032-12287.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  12032-12287 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/12288-12543.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  12288-12543 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/12544-12799.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  12544-12799 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/1280-1535.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  1280-1535 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/12800-13055.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  12800-13055 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/13056-13311.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  13056-13311 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/13312-13567.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  13312-13567 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/13568-13823.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  13568-13823 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/13824-14079.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  13824-14079 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/14080-14335.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  14080-14335 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/14336-14591.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  14336-14591 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/14592-14847.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  14592-14847 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/14848-15103.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  14848-15103 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/15104-15359.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  15104-15359 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/1536-1791.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  1536-1791 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/15360-15615.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  15360-15615 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/15616-15871.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  15616-15871 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/15872-16127.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  15872-16127 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/16128-16383.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  16128-16383 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/16384-16639.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  16384-16639 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/16640-16895.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  16640-16895 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/16896-17151.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  16896-17151 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/17152-17407.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  17152-17407 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/17408-17663.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  17408-17663 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/17664-17919.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  17664-17919 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/1792-2047.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  1792-2047 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/17920-18175.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  17920-18175 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/18176-18431.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  18176-18431 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/18432-18687.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  18432-18687 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/18688-18943.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  18688-18943 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/18944-19199.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  18944-19199 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/19200-19455.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  19200-19455 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/19456-19711.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  19456-19711 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/19712-19967.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  19712-19967 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/19968-20223.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  19968-20223 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/20224-20479.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  20224-20479 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/2048-2303.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  2048-2303 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/20480-20735.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  20480-20735 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/20736-20991.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  20736-20991 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/20992-21247.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  20992-21247 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/21248-21503.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  21248-21503 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/21504-21759.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  21504-21759 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/21760-22015.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  21760-22015 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/22016-22271.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  22016-22271 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/22272-22527.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  22272-22527 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/22528-22783.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  22528-22783 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/22784-23039.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  22784-23039 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/2304-2559.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  2304-2559 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/23040-23295.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  23040-23295 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/23296-23551.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  23296-23551 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/23552-23807.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  23552-23807 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/23808-24063.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  23808-24063 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/24064-24319.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  24064-24319 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/24320-24575.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  24320-24575 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/24576-24831.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  24576-24831 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/24832-25087.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  24832-25087 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/25088-25343.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  25088-25343 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/25344-25599.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  25344-25599 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/256-511.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/public/assets/fonts/glyphs/Unica77/256-511.pbf -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/2560-2815.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  2560-2815 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/25600-25855.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  25600-25855 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/25856-26111.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  25856-26111 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/26112-26367.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  26112-26367 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/26368-26623.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  26368-26623 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/26624-26879.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  26624-26879 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/26880-27135.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  26880-27135 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/27136-27391.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  27136-27391 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/27392-27647.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  27392-27647 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/27648-27903.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  27648-27903 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/27904-28159.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  27904-28159 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/2816-3071.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  2816-3071 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/28160-28415.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  28160-28415 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/28416-28671.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  28416-28671 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/28672-28927.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  28672-28927 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/28928-29183.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  28928-29183 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/29184-29439.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  29184-29439 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/29440-29695.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  29440-29695 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/29696-29951.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  29696-29951 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/29952-30207.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  29952-30207 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/30208-30463.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  30208-30463 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/30464-30719.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  30464-30719 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/3072-3327.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  3072-3327 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/30720-30975.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  30720-30975 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/30976-31231.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  30976-31231 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/31232-31487.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  31232-31487 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/31488-31743.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  31488-31743 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/31744-31999.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  31744-31999 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/32000-32255.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  32000-32255 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/32256-32511.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  32256-32511 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/32512-32767.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  32512-32767 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/32768-33023.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  32768-33023 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/33024-33279.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  33024-33279 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/3328-3583.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  3328-3583 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/33280-33535.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  33280-33535 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/33536-33791.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  33536-33791 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/33792-34047.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  33792-34047 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/34048-34303.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  34048-34303 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/34304-34559.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  34304-34559 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/34560-34815.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  34560-34815 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/34816-35071.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  34816-35071 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/35072-35327.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  35072-35327 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/35328-35583.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  35328-35583 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/35584-35839.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  35584-35839 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/3584-3839.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  3584-3839 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/35840-36095.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  35840-36095 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/36096-36351.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  36096-36351 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/36352-36607.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  36352-36607 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/36608-36863.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  36608-36863 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/36864-37119.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  36864-37119 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/37120-37375.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  37120-37375 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/37376-37631.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  37376-37631 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/37632-37887.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  37632-37887 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/37888-38143.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  37888-38143 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/38144-38399.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  38144-38399 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/3840-4095.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  3840-4095 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/38400-38655.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  38400-38655 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/38656-38911.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  38656-38911 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/38912-39167.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  38912-39167 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/39168-39423.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  39168-39423 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/39424-39679.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  39424-39679 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/39680-39935.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  39680-39935 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/39936-40191.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  39936-40191 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/40192-40447.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  40192-40447 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/40448-40703.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  40448-40703 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/40704-40959.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  40704-40959 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/4096-4351.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  4096-4351 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/40960-41215.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  40960-41215 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/41216-41471.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  41216-41471 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/41472-41727.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  41472-41727 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/41728-41983.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  41728-41983 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/41984-42239.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  41984-42239 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/42240-42495.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  42240-42495 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/42496-42751.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  42496-42751 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/42752-43007.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  42752-43007 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/43008-43263.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  43008-43263 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/43264-43519.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  43264-43519 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/4352-4607.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  4352-4607 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/43520-43775.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  43520-43775 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/43776-44031.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  43776-44031 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/44032-44287.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  44032-44287 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/44288-44543.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  44288-44543 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/44544-44799.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  44544-44799 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/44800-45055.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  44800-45055 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/45056-45311.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  45056-45311 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/45312-45567.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  45312-45567 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/45568-45823.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  45568-45823 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/45824-46079.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  45824-46079 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/4608-4863.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  4608-4863 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/46080-46335.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  46080-46335 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/46336-46591.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  46336-46591 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/46592-46847.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  46592-46847 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/46848-47103.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  46848-47103 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/47104-47359.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  47104-47359 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/47360-47615.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  47360-47615 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/47616-47871.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  47616-47871 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/47872-48127.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  47872-48127 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/48128-48383.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  48128-48383 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/48384-48639.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  48384-48639 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/4864-5119.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  4864-5119 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/48640-48895.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  48640-48895 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/48896-49151.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  48896-49151 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/49152-49407.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  49152-49407 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/49408-49663.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  49408-49663 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/49664-49919.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  49664-49919 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/49920-50175.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  49920-50175 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/50176-50431.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  50176-50431 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/50432-50687.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  50432-50687 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/50688-50943.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  50688-50943 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/50944-51199.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  50944-51199 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/512-767.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/public/assets/fonts/glyphs/Unica77/512-767.pbf -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/5120-5375.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  5120-5375 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/51200-51455.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  51200-51455 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/51456-51711.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  51456-51711 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/51712-51967.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  51712-51967 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/51968-52223.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  51968-52223 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/52224-52479.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  52224-52479 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/52480-52735.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  52480-52735 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/52736-52991.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  52736-52991 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/52992-53247.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  52992-53247 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/53248-53503.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  53248-53503 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/53504-53759.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  53504-53759 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/5376-5631.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  5376-5631 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/53760-54015.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  53760-54015 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/54016-54271.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  54016-54271 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/54272-54527.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  54272-54527 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/54528-54783.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  54528-54783 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/54784-55039.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  54784-55039 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/55040-55295.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  55040-55295 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/55296-55551.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  55296-55551 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/55552-55807.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  55552-55807 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/55808-56063.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  55808-56063 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/56064-56319.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  56064-56319 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/5632-5887.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  5632-5887 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/56320-56575.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  56320-56575 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/56576-56831.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  56576-56831 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/56832-57087.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  56832-57087 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/57088-57343.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  57088-57343 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/57344-57599.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  57344-57599 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/57600-57855.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  57600-57855 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/57856-58111.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  57856-58111 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/58112-58367.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  58112-58367 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/58368-58623.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  58368-58623 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/58624-58879.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  58624-58879 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/5888-6143.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  5888-6143 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/58880-59135.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  58880-59135 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/59136-59391.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  59136-59391 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/59392-59647.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  59392-59647 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/59648-59903.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  59648-59903 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/59904-60159.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  59904-60159 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/60160-60415.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  60160-60415 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/60416-60671.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  60416-60671 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/60672-60927.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  60672-60927 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/60928-61183.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  60928-61183 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/61184-61439.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  61184-61439 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/6144-6399.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  6144-6399 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/61440-61695.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  61440-61695 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/61696-61951.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  61696-61951 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/61952-62207.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  61952-62207 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/62208-62463.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  62208-62463 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/62464-62719.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  62464-62719 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/62720-62975.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  62720-62975 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/62976-63231.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  62976-63231 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/63232-63487.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  63232-63487 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/63488-63743.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  63488-63743 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/63744-63999.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  63744-63999 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/6400-6655.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  6400-6655 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/64000-64255.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  64000-64255 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/64256-64511.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/public/assets/fonts/glyphs/Unica77/64256-64511.pbf -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/64512-64767.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  64512-64767 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/64768-65023.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  64768-65023 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/65024-65279.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/public/assets/fonts/glyphs/Unica77/65024-65279.pbf -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/65280-65535.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/public/assets/fonts/glyphs/Unica77/65280-65535.pbf -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/6656-6911.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  6656-6911 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/6912-7167.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  6912-7167 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/7168-7423.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  7168-7423 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/7424-7679.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  7424-7679 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/768-1023.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/public/assets/fonts/glyphs/Unica77/768-1023.pbf -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/7680-7935.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/public/assets/fonts/glyphs/Unica77/7680-7935.pbf -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/7936-8191.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  7936-8191 -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/8192-8447.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/public/assets/fonts/glyphs/Unica77/8192-8447.pbf -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/8448-8703.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/public/assets/fonts/glyphs/Unica77/8448-8703.pbf -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/8704-8959.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/public/assets/fonts/glyphs/Unica77/8704-8959.pbf -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/8960-9215.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/public/assets/fonts/glyphs/Unica77/8960-9215.pbf -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/9216-9471.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/public/assets/fonts/glyphs/Unica77/9216-9471.pbf -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/9472-9727.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/public/assets/fonts/glyphs/Unica77/9472-9727.pbf -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/9728-9983.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/public/assets/fonts/glyphs/Unica77/9728-9983.pbf -------------------------------------------------------------------------------- /frontend/public/assets/fonts/glyphs/Unica77/9984-10239.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/public/assets/fonts/glyphs/Unica77/9984-10239.pbf -------------------------------------------------------------------------------- /frontend/src/api/client.ts: -------------------------------------------------------------------------------- 1 | import Axios from "axios"; 2 | 3 | /** 4 | * Axios instance for the b6 API. 5 | */ 6 | export const b6 = Axios.create({ 7 | baseURL: "/", 8 | }); 9 | 10 | b6.interceptors.response.use( 11 | (response) => { 12 | return response.data; 13 | }, 14 | (error) => { 15 | const message = error.response?.data?.message || error.message; 16 | // @TODO: add notification here 17 | console.warn("API error:", message); 18 | return Promise.reject(error); 19 | }, 20 | ); 21 | -------------------------------------------------------------------------------- /frontend/src/api/evaluate.ts: -------------------------------------------------------------------------------- 1 | import { 2 | EvaluateRequestProto, 3 | EvaluateResponseProto, 4 | } from "@/types/generated/api"; 5 | import { useQuery } from "@tanstack/react-query"; 6 | import { b6 } from "./client"; 7 | 8 | export const getEvaluate = ( 9 | request: EvaluateRequestProto, 10 | ): Promise => { 11 | return b6.post("evaluate", request); 12 | }; 13 | 14 | export const useEvaluate = (request: EvaluateRequestProto) => { 15 | const query = useQuery({ 16 | queryKey: [ 17 | "evaluate", 18 | request.version, 19 | JSON.stringify(request.root), 20 | JSON.stringify(request.request), 21 | ], 22 | queryFn: () => getEvaluate(request), 23 | }); 24 | 25 | return query; 26 | }; 27 | -------------------------------------------------------------------------------- /frontend/src/app/index.tsx: -------------------------------------------------------------------------------- 1 | import Workspace from "@/components/Workspace"; 2 | 3 | import { AppProvider } from "./provider"; 4 | 5 | export function App() { 6 | return ( 7 | 8 | 9 | 10 | ); 11 | } 12 | -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/0-255.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/src/assets/fonts/glyphs/Unica77/0-255.pbf -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/1024-1279.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  1024-1279 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/10240-10495.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  10240-10495 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/10496-10751.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/src/assets/fonts/glyphs/Unica77/10496-10751.pbf -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/10752-11007.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  10752-11007 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/11008-11263.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/src/assets/fonts/glyphs/Unica77/11008-11263.pbf -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/11264-11519.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  11264-11519 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/11520-11775.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  11520-11775 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/11776-12031.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  11776-12031 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/12032-12287.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  12032-12287 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/12288-12543.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  12288-12543 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/12544-12799.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  12544-12799 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/1280-1535.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  1280-1535 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/12800-13055.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  12800-13055 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/13056-13311.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  13056-13311 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/13312-13567.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  13312-13567 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/13568-13823.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  13568-13823 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/13824-14079.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  13824-14079 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/14080-14335.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  14080-14335 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/14336-14591.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  14336-14591 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/14592-14847.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  14592-14847 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/14848-15103.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  14848-15103 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/15104-15359.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  15104-15359 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/1536-1791.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  1536-1791 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/15360-15615.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  15360-15615 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/15616-15871.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  15616-15871 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/15872-16127.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  15872-16127 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/16128-16383.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  16128-16383 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/16384-16639.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  16384-16639 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/16640-16895.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  16640-16895 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/16896-17151.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  16896-17151 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/17152-17407.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  17152-17407 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/17408-17663.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  17408-17663 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/17664-17919.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  17664-17919 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/1792-2047.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  1792-2047 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/17920-18175.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  17920-18175 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/18176-18431.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  18176-18431 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/18432-18687.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  18432-18687 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/18688-18943.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  18688-18943 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/18944-19199.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  18944-19199 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/19200-19455.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  19200-19455 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/19456-19711.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  19456-19711 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/19712-19967.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  19712-19967 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/19968-20223.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  19968-20223 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/20224-20479.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  20224-20479 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/2048-2303.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  2048-2303 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/20480-20735.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  20480-20735 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/20736-20991.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  20736-20991 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/20992-21247.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  20992-21247 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/21248-21503.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  21248-21503 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/21504-21759.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  21504-21759 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/21760-22015.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  21760-22015 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/22016-22271.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  22016-22271 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/22272-22527.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  22272-22527 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/22528-22783.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  22528-22783 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/22784-23039.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  22784-23039 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/2304-2559.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  2304-2559 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/23040-23295.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  23040-23295 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/23296-23551.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  23296-23551 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/23552-23807.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  23552-23807 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/23808-24063.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  23808-24063 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/24064-24319.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  24064-24319 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/24320-24575.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  24320-24575 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/24576-24831.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  24576-24831 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/24832-25087.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  24832-25087 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/25088-25343.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  25088-25343 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/25344-25599.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  25344-25599 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/256-511.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/src/assets/fonts/glyphs/Unica77/256-511.pbf -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/2560-2815.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  2560-2815 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/25600-25855.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  25600-25855 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/25856-26111.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  25856-26111 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/26112-26367.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  26112-26367 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/26368-26623.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  26368-26623 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/26624-26879.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  26624-26879 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/26880-27135.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  26880-27135 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/27136-27391.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  27136-27391 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/27392-27647.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  27392-27647 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/27648-27903.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  27648-27903 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/27904-28159.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  27904-28159 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/2816-3071.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  2816-3071 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/28160-28415.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  28160-28415 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/28416-28671.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  28416-28671 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/28672-28927.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  28672-28927 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/28928-29183.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  28928-29183 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/29184-29439.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  29184-29439 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/29440-29695.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  29440-29695 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/29696-29951.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  29696-29951 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/29952-30207.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  29952-30207 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/30208-30463.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  30208-30463 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/30464-30719.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  30464-30719 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/3072-3327.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  3072-3327 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/30720-30975.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  30720-30975 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/30976-31231.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  30976-31231 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/31232-31487.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  31232-31487 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/31488-31743.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  31488-31743 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/31744-31999.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  31744-31999 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/32000-32255.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  32000-32255 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/32256-32511.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  32256-32511 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/32512-32767.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  32512-32767 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/32768-33023.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  32768-33023 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/33024-33279.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  33024-33279 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/3328-3583.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  3328-3583 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/33280-33535.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  33280-33535 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/33536-33791.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  33536-33791 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/33792-34047.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  33792-34047 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/34048-34303.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  34048-34303 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/34304-34559.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  34304-34559 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/34560-34815.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  34560-34815 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/34816-35071.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  34816-35071 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/35072-35327.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  35072-35327 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/35328-35583.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  35328-35583 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/35584-35839.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  35584-35839 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/3584-3839.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  3584-3839 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/35840-36095.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  35840-36095 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/36096-36351.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  36096-36351 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/36352-36607.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  36352-36607 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/36608-36863.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  36608-36863 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/36864-37119.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  36864-37119 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/37120-37375.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  37120-37375 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/37376-37631.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  37376-37631 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/37632-37887.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  37632-37887 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/37888-38143.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  37888-38143 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/38144-38399.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  38144-38399 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/3840-4095.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  3840-4095 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/38400-38655.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  38400-38655 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/38656-38911.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  38656-38911 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/38912-39167.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  38912-39167 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/39168-39423.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  39168-39423 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/39424-39679.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  39424-39679 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/39680-39935.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  39680-39935 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/39936-40191.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  39936-40191 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/40192-40447.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  40192-40447 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/40448-40703.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  40448-40703 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/40704-40959.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  40704-40959 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/4096-4351.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  4096-4351 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/40960-41215.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  40960-41215 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/41216-41471.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  41216-41471 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/41472-41727.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  41472-41727 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/41728-41983.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  41728-41983 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/41984-42239.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  41984-42239 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/42240-42495.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  42240-42495 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/42496-42751.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  42496-42751 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/42752-43007.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  42752-43007 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/43008-43263.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  43008-43263 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/43264-43519.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  43264-43519 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/4352-4607.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  4352-4607 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/43520-43775.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  43520-43775 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/43776-44031.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  43776-44031 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/44032-44287.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  44032-44287 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/44288-44543.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  44288-44543 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/44544-44799.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  44544-44799 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/44800-45055.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  44800-45055 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/45056-45311.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  45056-45311 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/45312-45567.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  45312-45567 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/45568-45823.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  45568-45823 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/45824-46079.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  45824-46079 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/4608-4863.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  4608-4863 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/46080-46335.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  46080-46335 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/46336-46591.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  46336-46591 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/46592-46847.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  46592-46847 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/46848-47103.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  46848-47103 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/47104-47359.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  47104-47359 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/47360-47615.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  47360-47615 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/47616-47871.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  47616-47871 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/47872-48127.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  47872-48127 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/48128-48383.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  48128-48383 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/48384-48639.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  48384-48639 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/4864-5119.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  4864-5119 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/48640-48895.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  48640-48895 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/48896-49151.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  48896-49151 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/49152-49407.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  49152-49407 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/49408-49663.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  49408-49663 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/49664-49919.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  49664-49919 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/49920-50175.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  49920-50175 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/50176-50431.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  50176-50431 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/50432-50687.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  50432-50687 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/50688-50943.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  50688-50943 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/50944-51199.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  50944-51199 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/512-767.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/src/assets/fonts/glyphs/Unica77/512-767.pbf -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/5120-5375.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  5120-5375 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/51200-51455.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  51200-51455 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/51456-51711.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  51456-51711 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/51712-51967.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  51712-51967 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/51968-52223.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  51968-52223 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/52224-52479.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  52224-52479 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/52480-52735.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  52480-52735 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/52736-52991.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  52736-52991 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/52992-53247.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  52992-53247 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/53248-53503.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  53248-53503 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/53504-53759.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  53504-53759 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/5376-5631.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  5376-5631 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/53760-54015.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  53760-54015 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/54016-54271.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  54016-54271 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/54272-54527.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  54272-54527 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/54528-54783.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  54528-54783 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/54784-55039.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  54784-55039 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/55040-55295.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  55040-55295 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/55296-55551.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  55296-55551 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/55552-55807.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  55552-55807 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/55808-56063.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  55808-56063 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/56064-56319.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  56064-56319 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/5632-5887.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  5632-5887 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/56320-56575.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  56320-56575 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/56576-56831.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  56576-56831 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/56832-57087.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  56832-57087 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/57088-57343.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  57088-57343 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/57344-57599.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  57344-57599 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/57600-57855.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  57600-57855 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/57856-58111.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  57856-58111 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/58112-58367.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  58112-58367 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/58368-58623.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  58368-58623 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/58624-58879.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  58624-58879 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/5888-6143.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  5888-6143 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/58880-59135.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  58880-59135 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/59136-59391.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  59136-59391 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/59392-59647.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  59392-59647 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/59648-59903.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  59648-59903 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/59904-60159.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  59904-60159 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/60160-60415.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  60160-60415 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/60416-60671.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  60416-60671 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/60672-60927.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  60672-60927 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/60928-61183.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  60928-61183 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/61184-61439.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  61184-61439 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/6144-6399.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  6144-6399 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/61440-61695.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  61440-61695 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/61696-61951.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  61696-61951 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/61952-62207.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  61952-62207 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/62208-62463.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  62208-62463 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/62464-62719.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  62464-62719 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/62720-62975.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  62720-62975 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/62976-63231.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  62976-63231 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/63232-63487.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  63232-63487 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/63488-63743.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  63488-63743 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/63744-63999.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  63744-63999 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/6400-6655.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  6400-6655 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/64000-64255.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  64000-64255 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/64256-64511.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/src/assets/fonts/glyphs/Unica77/64256-64511.pbf -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/64512-64767.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  64512-64767 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/64768-65023.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  64768-65023 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/65024-65279.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/src/assets/fonts/glyphs/Unica77/65024-65279.pbf -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/65280-65535.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/src/assets/fonts/glyphs/Unica77/65280-65535.pbf -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/6656-6911.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  6656-6911 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/6912-7167.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  6912-7167 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/7168-7423.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  7168-7423 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/7424-7679.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  7424-7679 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/768-1023.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/src/assets/fonts/glyphs/Unica77/768-1023.pbf -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/7680-7935.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/src/assets/fonts/glyphs/Unica77/7680-7935.pbf -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/7936-8191.pbf: -------------------------------------------------------------------------------- 1 | 2 |  3 | .  7936-8191 -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/8192-8447.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/src/assets/fonts/glyphs/Unica77/8192-8447.pbf -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/8448-8703.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/src/assets/fonts/glyphs/Unica77/8448-8703.pbf -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/8704-8959.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/src/assets/fonts/glyphs/Unica77/8704-8959.pbf -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/8960-9215.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/src/assets/fonts/glyphs/Unica77/8960-9215.pbf -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/9216-9471.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/src/assets/fonts/glyphs/Unica77/9216-9471.pbf -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/9472-9727.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/src/assets/fonts/glyphs/Unica77/9472-9727.pbf -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/9728-9983.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/src/assets/fonts/glyphs/Unica77/9728-9983.pbf -------------------------------------------------------------------------------- /frontend/src/assets/fonts/glyphs/Unica77/9984-10239.pbf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/frontend/src/assets/fonts/glyphs/Unica77/9984-10239.pbf -------------------------------------------------------------------------------- /frontend/src/assets/icons/circle/Building.tsx: -------------------------------------------------------------------------------- 1 | import type { SVGProps } from 'react'; 2 | const SvgBuilding = (props: SVGProps) => ( 3 | 11 | 12 | 16 | 17 | ); 18 | export default SvgBuilding; 19 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/circle/ClothingStore.tsx: -------------------------------------------------------------------------------- 1 | import type { SVGProps } from 'react'; 2 | const SvgClothingStore = (props: SVGProps) => ( 3 | 11 | 12 | 16 | 17 | ); 18 | export default SvgClothingStore; 19 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/circle/Dentist.tsx: -------------------------------------------------------------------------------- 1 | import type { SVGProps } from 'react'; 2 | const SvgDentist = (props: SVGProps) => ( 3 | 11 | 12 | 16 | 17 | ); 18 | export default SvgDentist; 19 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/circle/Dot.tsx: -------------------------------------------------------------------------------- 1 | import type { SVGProps } from 'react'; 2 | const SvgDot = (props: SVGProps) => ( 3 | 11 | 16 | 17 | ); 18 | export default SvgDot; 19 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/circle/Farm.tsx: -------------------------------------------------------------------------------- 1 | import type { SVGProps } from 'react'; 2 | const SvgFarm = (props: SVGProps) => ( 3 | 11 | 12 | 16 | 17 | ); 18 | export default SvgFarm; 19 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/circle/Garden.tsx: -------------------------------------------------------------------------------- 1 | import type { SVGProps } from 'react'; 2 | const SvgGarden = (props: SVGProps) => ( 3 | 11 | 12 | 16 | 17 | ); 18 | export default SvgGarden; 19 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/circle/Home.tsx: -------------------------------------------------------------------------------- 1 | import type { SVGProps } from 'react'; 2 | const SvgHome = (props: SVGProps) => ( 3 | 11 | 12 | 16 | 17 | ); 18 | export default SvgHome; 19 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/circle/Hospital.tsx: -------------------------------------------------------------------------------- 1 | import type { SVGProps } from 'react'; 2 | const SvgHospital = (props: SVGProps) => ( 3 | 11 | 12 | 16 | 17 | ); 18 | export default SvgHospital; 19 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/circle/Industry.tsx: -------------------------------------------------------------------------------- 1 | import type { SVGProps } from 'react'; 2 | const SvgIndustry = (props: SVGProps) => ( 3 | 11 | 12 | 16 | 17 | ); 18 | export default SvgIndustry; 19 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/circle/NaturalAreas.tsx: -------------------------------------------------------------------------------- 1 | import type { SVGProps } from 'react'; 2 | const SvgNaturalAreas = (props: SVGProps) => ( 3 | 11 | 12 | 16 | 17 | ); 18 | export default SvgNaturalAreas; 19 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/circle/Parking.tsx: -------------------------------------------------------------------------------- 1 | import type { SVGProps } from 'react'; 2 | const SvgParking = (props: SVGProps) => ( 3 | 11 | 12 | 16 | 17 | ); 18 | export default SvgParking; 19 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/circle/Pharmacy.tsx: -------------------------------------------------------------------------------- 1 | import type { SVGProps } from 'react'; 2 | const SvgPharmacy = (props: SVGProps) => ( 3 | 11 | 12 | 16 | 17 | ); 18 | export default SvgPharmacy; 19 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/circle/ReligiousChristian.tsx: -------------------------------------------------------------------------------- 1 | import type { SVGProps } from 'react'; 2 | const SvgReligiousChristian = (props: SVGProps) => ( 3 | 11 | 12 | 16 | 17 | ); 18 | export default SvgReligiousChristian; 19 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/circle/svg/building.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/circle/svg/clothing-store.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/circle/svg/dentist.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/circle/svg/dot.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/circle/svg/farm.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/circle/svg/garden.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/circle/svg/home.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/circle/svg/hospital.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/circle/svg/industry.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/circle/svg/landmarks.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/circle/svg/natural_areas.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/circle/svg/parking.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/circle/svg/pharmacy.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/circle/svg/religious-christian.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/circle/svg/restaurant.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/solid/Building.tsx: -------------------------------------------------------------------------------- 1 | import type { SVGProps } from 'react'; 2 | const SvgBuilding = (props: SVGProps) => ( 3 | 11 | 17 | 18 | ); 19 | export default SvgBuilding; 20 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/solid/ClothingStore.tsx: -------------------------------------------------------------------------------- 1 | import type { SVGProps } from 'react'; 2 | const SvgClothingStore = (props: SVGProps) => ( 3 | 11 | 17 | 18 | ); 19 | export default SvgClothingStore; 20 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/solid/Dot.tsx: -------------------------------------------------------------------------------- 1 | import type { SVGProps } from 'react'; 2 | const SvgDot = (props: SVGProps) => ( 3 | 11 | 17 | 18 | ); 19 | export default SvgDot; 20 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/solid/Farm.tsx: -------------------------------------------------------------------------------- 1 | import type { SVGProps } from 'react'; 2 | const SvgFarm = (props: SVGProps) => ( 3 | 11 | 17 | 18 | ); 19 | export default SvgFarm; 20 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/solid/Parking.tsx: -------------------------------------------------------------------------------- 1 | import type { SVGProps } from 'react'; 2 | const SvgParking = (props: SVGProps) => ( 3 | 11 | 17 | 18 | ); 19 | export default SvgParking; 20 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/solid/svg/building.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/solid/svg/clothing-store.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/solid/svg/dot.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/solid/svg/farm.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /frontend/src/assets/icons/solid/svg/parking.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /frontend/src/components/ConditionalWrap.tsx: -------------------------------------------------------------------------------- 1 | export const ConditionalWrap = ({ 2 | condition, 3 | wrap, 4 | children, 5 | }: { 6 | condition: boolean; 7 | wrap: (children: JSX.Element) => JSX.Element; 8 | children: JSX.Element; 9 | }) => (condition ? wrap(children) : children); 10 | -------------------------------------------------------------------------------- /frontend/src/components/DeckGLOverlay.tsx: -------------------------------------------------------------------------------- 1 | import { 2 | MapboxOverlay as DeckOverlay, 3 | MapboxOverlayProps, 4 | } from "@deck.gl/mapbox"; 5 | import { useControl } from "react-map-gl/maplibre"; 6 | 7 | export function DeckGLOverlay(props: MapboxOverlayProps) { 8 | const overlay = useControl(() => new DeckOverlay(props)); 9 | overlay.setProps(props); 10 | return null; 11 | } 12 | -------------------------------------------------------------------------------- /frontend/src/components/adapters/ChipAdapter.tsx: -------------------------------------------------------------------------------- 1 | import { useMemo } from "react"; 2 | 3 | import { SelectAdapter } from "@/components/adapters/SelectAdapter"; 4 | import { Chip } from "@/types/stack"; 5 | 6 | export const ChipAdapter = ({ 7 | chip, 8 | onChange, 9 | }: { 10 | chip: Chip; 11 | onChange: (v: number) => void; 12 | }) => { 13 | const options = useMemo( 14 | () => 15 | chip.atom.labels?.map((label, i) => ({ 16 | value: i.toString(), 17 | label, 18 | })) ?? [], 19 | [chip.atom.labels], 20 | ); 21 | 22 | return ( 23 | onChange(parseInt(v))} 27 | /> 28 | ); 29 | }; 30 | -------------------------------------------------------------------------------- /frontend/src/components/adapters/SelectAdapter.tsx: -------------------------------------------------------------------------------- 1 | import { Select } from "@/components/system/Select"; 2 | 3 | export const SelectAdapter = ({ 4 | options, 5 | value, 6 | onValueChange, 7 | }: { 8 | options: { value: string; label: string }[]; 9 | value: string; 10 | onValueChange: (v: string) => void; 11 | }) => { 12 | const label = (value: string) => { 13 | return options.find((option) => option.value === value)?.label ?? ""; 14 | }; 15 | 16 | return ( 17 | 29 | ); 30 | }; 31 | -------------------------------------------------------------------------------- /frontend/src/components/system/IconButton.tsx: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import { twMerge } from "tailwind-merge"; 3 | 4 | export interface IconButtonProps 5 | extends React.HTMLAttributes {} 6 | 7 | export const IconButton = React.forwardRef( 8 | ({ children, className, ...props }: IconButtonProps, forwardedRef) => { 9 | return ( 10 | 20 | ); 21 | }, 22 | ); 23 | -------------------------------------------------------------------------------- /frontend/src/components/system/Logo.tsx: -------------------------------------------------------------------------------- 1 | import type { SVGProps } from "react"; 2 | 3 | const Logo = (props: SVGProps) => ( 4 | 12 | 13 | 14 | 19 | 20 | 21 | ); 22 | export default Logo; 23 | -------------------------------------------------------------------------------- /frontend/src/features/scenarios/README.md: -------------------------------------------------------------------------------- 1 | ## Scenarios 2 | 3 | This directory contains the code for the scenarios feature. 4 | 5 | // TODO: Add more information about the feature here. 6 | 7 | To be potentially extracted into a separate package. 8 | -------------------------------------------------------------------------------- /frontend/src/features/scenarios/components/ComparisonStack.tsx: -------------------------------------------------------------------------------- 1 | import Outliner from "@/components/Outliner"; 2 | import { OutlinerSpec, useOutlinersStore } from "@/stores/outliners"; 3 | 4 | /** 5 | * Componenet to display the comparison outliner. 6 | * Wraps the Outliner component to provide the origin outliner for comparison. 7 | */ 8 | export default function ComparisonStack({ 9 | id, 10 | origin, 11 | }: { 12 | id: OutlinerSpec["id"]; 13 | origin?: OutlinerSpec["id"]; 14 | }) { 15 | const outliner = useOutlinersStore((state) => state.outliners[id]); 16 | const originOutliner = useOutlinersStore((state) => 17 | origin ? state.outliners[origin] : undefined, 18 | ); 19 | 20 | if (!outliner) return null; 21 | return ; 22 | } 23 | -------------------------------------------------------------------------------- /frontend/src/features/scenarios/types/change.ts: -------------------------------------------------------------------------------- 1 | import { FeatureIDProto } from "@/types/generated/api"; 2 | import { LabelledIconProto } from "@/types/generated/ui"; 3 | 4 | export type ChangeFeature = { 5 | id: FeatureIDProto; 6 | label?: LabelledIconProto; 7 | expression: string; 8 | }; 9 | 10 | export type ChangeFunction = { 11 | label?: string; 12 | id: FeatureIDProto; 13 | }; 14 | 15 | export type ChangeSpec = { 16 | analysis?: FeatureIDProto; 17 | features: ChangeFeature[]; 18 | changeFunction?: ChangeFunction; 19 | }; 20 | -------------------------------------------------------------------------------- /frontend/src/features/shell/components/Shell.css: -------------------------------------------------------------------------------- 1 | .keywords { 2 | display: flex; 3 | align-items: center; 4 | overflow-x: scroll; 5 | position: absolute; 6 | left: 0; 7 | top: 0; 8 | } 9 | 10 | .input, 11 | .keywords { 12 | width: 100%; 13 | height: 100%; 14 | white-space: nowrap; 15 | /* IE and Firefox support */ 16 | -ms-overflow-style: none; 17 | scrollbar-width: none; 18 | } 19 | 20 | .input::-webkit-scrollbar, 21 | .keywords::-webkit-scrollbar { 22 | display: none; 23 | } 24 | 25 | .input { 26 | background: transparent; 27 | color: transparent; 28 | resize: none; 29 | position: relative; 30 | vertical-align: middle; 31 | } 32 | -------------------------------------------------------------------------------- /frontend/src/features/shell/components/Shell.stories.tsx: -------------------------------------------------------------------------------- 1 | import type { Meta, StoryObj } from "@storybook/react"; 2 | 3 | import { Shell as ShellComponent } from "@/features/shell/components/Shell"; 4 | 5 | type Story = StoryObj; 6 | 7 | export const Shell: Story = { 8 | render: () => { 9 | return ( 10 | 23 | ); 24 | }, 25 | }; 26 | 27 | const meta: Meta = { 28 | title: "Components/Shell", 29 | }; 30 | 31 | export default meta; 32 | -------------------------------------------------------------------------------- /frontend/src/hooks/useFeatureFlag.ts: -------------------------------------------------------------------------------- 1 | import { useEffect, useState } from "react"; 2 | 3 | import { $IntentionalAny } from "@/utils/defs"; 4 | 5 | const useFeatureFlag = (flagName: string): boolean => { 6 | const [flagValue, setFlagValue] = useState(false); 7 | 8 | useEffect(() => { 9 | const envVariableName = `VITE_FEATURES_${flagName.toUpperCase()}`; 10 | const flag = import.meta.env[envVariableName as $IntentionalAny]; 11 | 12 | // If the flag is not explicitly set to true, we consider it to be false 13 | if (flag === "true") { 14 | setFlagValue(true); 15 | } 16 | }, [flagName]); 17 | 18 | return flagValue; 19 | }; 20 | 21 | export default useFeatureFlag; 22 | -------------------------------------------------------------------------------- /frontend/src/hooks/useOverflow.ts: -------------------------------------------------------------------------------- 1 | import { useEffect, useState } from "react"; 2 | 3 | /** 4 | * Hook to determine if a text element is overflowing its container. 5 | * @param ref - The ref of the text element 6 | * @param text - The text to check for overflow 7 | * @returns Whether the text is overflowing 8 | */ 9 | export default function useOverflow( 10 | ref: React.RefObject, 11 | text: string, 12 | ) { 13 | const [isTextOverflowing, setIsTextOverflowing] = useState(false); 14 | 15 | useEffect(() => { 16 | if (ref.current) { 17 | setIsTextOverflowing(ref.current.scrollWidth > ref.current.clientWidth); 18 | } 19 | }, [ref, text]); 20 | 21 | return isTextOverflowing; 22 | } 23 | -------------------------------------------------------------------------------- /frontend/src/main.tsx: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import ReactDOM from "react-dom/client"; 3 | 4 | import { App } from "@/app/index"; 5 | 6 | import "./index.css"; 7 | 8 | ReactDOM.createRoot(document.getElementById("root")!).render( 9 | 10 | 11 | , 12 | ); 13 | -------------------------------------------------------------------------------- /frontend/src/types/events.ts: -------------------------------------------------------------------------------- 1 | export type Event = "s" | "do" | "mlc" | "mfc" | "oc" | "os" | "ws" | "err"; 2 | -------------------------------------------------------------------------------- /frontend/src/types/stack.ts: -------------------------------------------------------------------------------- 1 | import { FeatureCollection } from "geojson"; 2 | 3 | import { ChipProto, UIResponseProto } from "./generated/ui"; 4 | 5 | export type StackResponse = { 6 | proto: UIResponseProto; 7 | geoJSON: FeatureCollection[]; 8 | }; 9 | 10 | // enriched Chip type that includes the selected value of the chip 11 | export type Chip = { atom: ChipProto; value: number }; 12 | -------------------------------------------------------------------------------- /frontend/src/types/startup.ts: -------------------------------------------------------------------------------- 1 | import { FeatureCollection } from "geojson"; 2 | 3 | import { FeatureIDProto } from "./generated/api"; 4 | import { UIResponseProto } from "./generated/ui"; 5 | 6 | export type LatLng = { 7 | latE7: number; 8 | lngE7: number; 9 | }; 10 | 11 | export type Docked = { 12 | geoJSON: FeatureCollection[]; 13 | proto: UIResponseProto; 14 | }; 15 | 16 | export type StartupRequest = { 17 | z?: string; 18 | ll?: string; 19 | r?: string; 20 | }; 21 | 22 | export type StartupResponse = { 23 | version?: string; 24 | docked?: Docked[]; 25 | openDockIndex?: number; 26 | mapCenter?: LatLng; 27 | mapZoom?: number; 28 | root?: FeatureIDProto; 29 | expression?: string; 30 | error?: string; 31 | session: number; 32 | locked?: boolean; 33 | }; 34 | -------------------------------------------------------------------------------- /frontend/src/utils/animations.ts: -------------------------------------------------------------------------------- 1 | /** 2 | * Variants for the pop open animation. 3 | * Opacity and scale are animated from 0 to 1. 4 | */ 5 | export const popOpen = { 6 | hidden: { 7 | opacity: 0, 8 | scale: 0, 9 | }, 10 | visible: { 11 | opacity: 1, 12 | scale: 1, 13 | }, 14 | }; 15 | -------------------------------------------------------------------------------- /frontend/src/utils/defs.d.ts: -------------------------------------------------------------------------------- 1 | /** 2 | * FixMe type, use this when type will be fixed later and to avoid eslint errors for now. 3 | */ 4 | // eslint-disable-next-line @typescript-eslint/no-explicit-any 5 | export type $FixMe = any; 6 | 7 | /** 8 | * IntentionalAny type, use this when type is intentionally any and to avoid eslint errors. 9 | */ 10 | // eslint-disable-next-line @typescript-eslint/no-explicit-any 11 | export type $IntentionalAny = any; 12 | -------------------------------------------------------------------------------- /frontend/src/vite-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | 3 | interface ImportMetaEnv { 4 | readonly VITE_FEATURES_SCENARIOS: boolean; 5 | // more env variables... 6 | } 7 | 8 | interface ImportMeta { 9 | readonly env: ImportMetaEnv; 10 | } 11 | -------------------------------------------------------------------------------- /frontend/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "ES2021", 4 | "useDefineForClassFields": true, 5 | "lib": ["ES2021", "DOM", "DOM.Iterable"], 6 | "module": "ESNext", 7 | "skipLibCheck": true, 8 | 9 | /* Bundler mode */ 10 | "moduleResolution": "bundler", 11 | "allowImportingTsExtensions": true, 12 | "resolveJsonModule": true, 13 | "isolatedModules": true, 14 | "noEmit": true, 15 | "jsx": "react-jsx", 16 | 17 | /* Linting */ 18 | "strict": true, 19 | "noUnusedLocals": true, 20 | "noUnusedParameters": true, 21 | "noFallthroughCasesInSwitch": true, 22 | "paths": { 23 | "@/*": ["./src/*"] 24 | } 25 | }, 26 | "include": ["src"], 27 | "references": [{ "path": "./tsconfig.node.json" }] 28 | } 29 | -------------------------------------------------------------------------------- /frontend/tsconfig.node.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "composite": true, 4 | "skipLibCheck": true, 5 | "module": "ESNext", 6 | "moduleResolution": "bundler", 7 | "allowSyntheticDefaultImports": true, 8 | "strict": true, 9 | "resolveJsonModule": true 10 | }, 11 | "include": ["vite.config.ts", "tailwind.config.ts"] 12 | } 13 | -------------------------------------------------------------------------------- /frontend/vite.config.ts: -------------------------------------------------------------------------------- 1 | import react from "@vitejs/plugin-react"; 2 | import { fileURLToPath } from "url"; 3 | import { defineConfig } from "vite"; 4 | import { viteStaticCopy } from "vite-plugin-static-copy"; 5 | 6 | // https://vitejs.dev/config/ 7 | export default defineConfig({ 8 | plugins: [ 9 | react(), 10 | viteStaticCopy({ 11 | targets: [ 12 | { 13 | src: "index-vite.html", 14 | dest: ".", 15 | }, 16 | ], 17 | }), 18 | ], 19 | resolve: { 20 | alias: [ 21 | { 22 | find: "@", 23 | replacement: fileURLToPath(new URL("./src", import.meta.url)), 24 | }, 25 | ], 26 | }, 27 | }); 28 | -------------------------------------------------------------------------------- /nix/treefmt.nix: -------------------------------------------------------------------------------- 1 | { pkgs, ... }: 2 | { 3 | projectRootFile = "flake.nix"; 4 | 5 | # Nix 6 | programs.nixpkgs-fmt.enable = true; 7 | 8 | # JS 9 | programs.biome.enable = true; 10 | settings.formatter.biome = { 11 | excludes = [ 12 | # Autogenerated 13 | "docs/docs/b6-api-documentation.md" 14 | "frontend/src/types/generated/*" 15 | "frontend/src/assets/**/*" 16 | ]; 17 | }; 18 | 19 | # Go 20 | programs.gofmt.enable = true; 21 | settings.formatter.gofmt.excludes = [ 22 | "*.pb.go" 23 | # This file is autogenerated, so we won't worry about formatting it. 24 | "src/diagonal.works/b6/api/functions/docs.go" 25 | ]; 26 | 27 | # Python 28 | programs.ruff.enable = true; 29 | 30 | settings.excludes = [ 31 | "src/diagonal.works/b6/cmd/b6/js/*" 32 | ]; 33 | } 34 | -------------------------------------------------------------------------------- /proto/compact.proto: -------------------------------------------------------------------------------- 1 | syntax = "proto3"; 2 | 3 | package compact; 4 | 5 | option go_package = "diagonal.works/b6/proto"; 6 | 7 | message CompactHeaderProto { 8 | repeated string namespaces = 1; 9 | string Builder = 2; 10 | } -------------------------------------------------------------------------------- /proto/geometry.proto: -------------------------------------------------------------------------------- 1 | syntax = "proto3"; 2 | 3 | package geometry; 4 | 5 | option go_package = "diagonal.works/b6/proto"; 6 | 7 | message PolylineProto { 8 | repeated PointProto points = 1; 9 | double length_meters = 2; 10 | } 11 | 12 | message MultiPolygonProto { 13 | repeated PolygonProto polygons = 1; 14 | } 15 | 16 | message PolygonProto { 17 | // All loops are ordered counter-clockwise, and a point is defined to be 18 | // inside the polygon if it's enclosed by an odd number of loops. 19 | repeated LoopProto loops = 1; 20 | } 21 | 22 | message LoopProto { 23 | repeated PointProto points = 1; 24 | } 25 | 26 | message PointProto { 27 | int32 lat_e7 = 1; 28 | int32 lng_e7 = 2; 29 | } 30 | 31 | -------------------------------------------------------------------------------- /python/.gitignore: -------------------------------------------------------------------------------- 1 | dist 2 | diagonal_b6.egg-info 3 | pyproject.toml 4 | -------------------------------------------------------------------------------- /python/README.md: -------------------------------------------------------------------------------- 1 | A Python client library for b6, Diagonal's geospatial analysis engine. 2 | -------------------------------------------------------------------------------- /python/diagonal_b6/.gitignore: -------------------------------------------------------------------------------- 1 | api_generated.py 2 | -------------------------------------------------------------------------------- /python/diagonal_b6/__init__.py: -------------------------------------------------------------------------------- 1 | import diagonal_b6.query # noqa: F401 2 | 3 | from diagonal_b6.features import * # noqa: F403 4 | from diagonal_b6.api_generated import * # noqa: F403 5 | from diagonal_b6.connect import * # noqa: F403 6 | from diagonal_b6.geometry import wkt # noqa: F403, F401 7 | -------------------------------------------------------------------------------- /python/docs/b6-screenshot.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/python/docs/b6-screenshot.jpg -------------------------------------------------------------------------------- /python/docs/env.yml: -------------------------------------------------------------------------------- 1 | channels: 2 | - defaults 3 | - conda-forge 4 | dependencies: 5 | - jupyter 6 | - pandas 7 | - matplotlib 8 | - pip 9 | - pip: 10 | - diagonal-b6 -------------------------------------------------------------------------------- /src/diagonal.works/b6/api/.gitignore: -------------------------------------------------------------------------------- 1 | y.output 2 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/api/functions/debug.go: -------------------------------------------------------------------------------- 1 | package functions 2 | 3 | import ( 4 | "fmt" 5 | 6 | "diagonal.works/b6" 7 | "diagonal.works/b6/api" 8 | "diagonal.works/b6/ingest" 9 | "diagonal.works/b6/search" 10 | ) 11 | 12 | // Return the search index tokens generated for the given feature. 13 | // Intended for debugging use only. 14 | func debugTokens(c *api.Context, id b6.Identifiable) (b6.Collection[int, string], error) { 15 | if f := api.Resolve(id, c.World); f != nil { 16 | return b6.ArrayValuesCollection[string](ingest.TokensForFeature(f)).Collection(), nil 17 | } 18 | return b6.Collection[int, string]{}, fmt.Errorf("No feature with id %s", id.FeatureID()) 19 | } 20 | 21 | // Deprecated. 22 | func debugAllQuery(c *api.Context, token string) (search.Query, error) { 23 | return search.All{Token: token}, nil 24 | } 25 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6-connect/.gitignore: -------------------------------------------------------------------------------- 1 | connect 2 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6-ingest-gb-uprn/.gitignore: -------------------------------------------------------------------------------- 1 | ingest-gb-uprn 2 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6-ingest-gtfs/.gitignore: -------------------------------------------------------------------------------- 1 | ingest-gtfs 2 | 3 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "browser": true, 4 | "es2021": true 5 | }, 6 | "extends": ["eslint:recommended", "prettier"], 7 | "parserOptions": { 8 | "ecmaVersion": "latest", 9 | "sourceType": "module" 10 | }, 11 | "rules": {}, 12 | "ignorePatterns": ["bundle.js"] 13 | } 14 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | bundle.js 3 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/.prettierignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | build 3 | dist 4 | bundle.js -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "trailingComma": "all", 3 | "tabWidth": 4, 4 | "semi": true, 5 | "singleQuote": true, 6 | "printWidth": 80, 7 | "useTabs": false, 8 | "bracketSpacing": true, 9 | "arrowParens": "always", 10 | "plugins": ["prettier-plugin-organize-imports"] 11 | } 12 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/Makefile: -------------------------------------------------------------------------------- 1 | all: bundle.js 2 | 3 | bundle.js: 4 | npm install 5 | npm run build 6 | 7 | format: 8 | npx prettier . --write 9 | 10 | .PHONY: bundle.js 11 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/main.js: -------------------------------------------------------------------------------- 1 | import main from './b6.js'; 2 | 3 | main('#b6'); 4 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "b6", 3 | "version": "0.0.0", 4 | "scripts": { 5 | "build": "rollup -c", 6 | "start": "rollup -c --watch" 7 | }, 8 | "files": [ 9 | "b6.js" 10 | ], 11 | "main": "b6.js", 12 | "module": "b6.js", 13 | "dependencies": { 14 | "@rollup/plugin-commonjs": "^21.1.0", 15 | "@rollup/plugin-node-resolve": "^13.3.0", 16 | "d3": "^7.6.1", 17 | "leaflet": "^1.8.0", 18 | "ol": "^7.0.0", 19 | "pbf": "^3.2.1", 20 | "rollup-plugin-terser": "^7.0.2" 21 | }, 22 | "devDependencies": { 23 | "eslint": "^8.56.0", 24 | "eslint-config-prettier": "^9.1.0", 25 | "prettier": "3.2.5", 26 | "prettier-plugin-organize-imports": "^3.2.4" 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/rollup.config.js: -------------------------------------------------------------------------------- 1 | import cjs from '@rollup/plugin-commonjs'; 2 | import resolve from '@rollup/plugin-node-resolve'; 3 | 4 | export default { 5 | input: 'main.js', 6 | output: { 7 | file: 'bundle.js', 8 | format: 'iife', 9 | }, 10 | plugins: [resolve(), cjs()], 11 | }; 12 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/static/images/area.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/static/images/building.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/static/images/close.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/static/images/clothing-store.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/static/images/dot-blue.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/static/images/dot-cyan.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/static/images/dot-emerald.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/static/images/dot-rose.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/static/images/dot-stone.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/static/images/dot-teal.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/static/images/dot-violet.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/static/images/dot-yellow.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/static/images/dot.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/static/images/farm.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/static/images/favicon-16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/src/diagonal.works/b6/cmd/b6/js/static/images/favicon-16x16.png -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/static/images/favicon-32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/diagonalworks/diagonal-b6/3eab6823fe5e1dc3037f95d15b3d018b1c73d249/src/diagonal.works/b6/cmd/b6/js/static/images/favicon-32x32.png -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/static/images/garden.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/static/images/home.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/static/images/hospital.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/static/images/industry.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/static/images/parking.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/static/images/path.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/static/images/point.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/static/images/relation.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/static/images/religious-christian.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/static/images/restaurant.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/static/images/zoom-in.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/cmd/b6/js/static/images/zoom-out.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/elevation_test.go: -------------------------------------------------------------------------------- 1 | package b6 2 | 3 | import ( 4 | "math" 5 | "testing" 6 | 7 | "diagonal.works/b6/units" 8 | "github.com/golang/geo/s2" 9 | ) 10 | 11 | func TestElevationField(t *testing.T) { 12 | e := ElevationField{Radius: units.MetersToAngle(500)} 13 | e.Add(s2.LatLngFromDegrees(55.9913178, -3.4858895), 28.9) 14 | e.Add(s2.LatLngFromDegrees(55.9895487, -3.4857895), 39.8) 15 | e.Add(s2.LatLngFromDegrees(55.9895694, -3.4825841), 50.8) 16 | e.Add(s2.LatLngFromDegrees(55.9914559, -3.4826242), 34.3) 17 | e.Finish() 18 | 19 | actual := 54.0 20 | estimated, ok := e.Elevation(s2.PointFromLatLng(s2.LatLngFromDegrees(55.9905299, -3.4841599))) 21 | if ok { 22 | if d := math.Abs((estimated - actual) / actual); d > 0.3 { 23 | t.Errorf("Expected a delta of less than 0.3, found %f", d) 24 | } 25 | } else { 26 | t.Errorf("Expected to find an elevation") 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/ingest/compact/overlay.go: -------------------------------------------------------------------------------- 1 | package compact 2 | 3 | import ( 4 | "diagonal.works/b6" 5 | "diagonal.works/b6/ingest" 6 | ) 7 | 8 | func BuildOverlayInMemory(source ingest.FeatureSource, o *Options, base b6.World) ([]byte, error) { 9 | var output MemoryOutput 10 | if err := build(source, base, o, &output); err != nil { 11 | return nil, err 12 | } 13 | bytes, _, _ := output.Bytes() 14 | return bytes, nil 15 | } 16 | 17 | func BuildOverlay(source ingest.FeatureSource, o *Options, base b6.World) error { 18 | return build(source, base, o, o.Output()) 19 | } 20 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/ingest/ids_test.go: -------------------------------------------------------------------------------- 1 | package ingest 2 | 3 | import ( 4 | "testing" 5 | 6 | "diagonal.works/b6" 7 | "github.com/golang/geo/s2" 8 | ) 9 | 10 | func TestIDFromLatLng(t *testing.T) { 11 | expected := s2.LatLngFromDegrees(51.5371371, -0.1240464) 12 | actual, ok := LatLngFromID(NewLatLngID(expected)) 13 | 14 | if !ok { 15 | t.Fatal("Failed to convert world.FeatureID to s2.LatLng") 16 | } 17 | if s2.PointFromLatLng(expected).Distance(s2.PointFromLatLng(actual)) > b6.MetersToAngle(0.01) { 18 | t.Errorf("Expected %v to be close to %v", expected, actual) 19 | } 20 | 21 | if _, ok := LatLngFromID(FromOSMNodeID(2309943870)); ok { 22 | t.Error("Incorrectly converted world.FeatureID to s2.LatLng") 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/ingest/tokens.go: -------------------------------------------------------------------------------- 1 | package ingest 2 | 3 | import ( 4 | "diagonal.works/b6" 5 | "diagonal.works/b6/search" 6 | "github.com/golang/geo/s2" 7 | ) 8 | 9 | func TokensForFeature(feature b6.Feature) []string { 10 | if feature.FeatureID().Type == b6.FeatureTypePoint && len(feature.AllTags()) == 1 { 11 | return []string{} 12 | } 13 | 14 | tokens := make([]string, 0, 64) // Best guess 15 | tokens = append(tokens, search.AllToken) 16 | 17 | if p, ok := feature.(b6.PhysicalFeature); ok { 18 | covering := b6.Covering(p, s2.RegionCoverer{MaxLevel: search.MaxIndexedCellLevel, MaxCells: 5}) 19 | tokens = search.TokensForCovering(covering, tokens) 20 | } 21 | 22 | for _, tag := range feature.AllTags() { 23 | if token, ok := b6.TokenForTag(tag); ok { 24 | tokens = append(tokens, token) 25 | } 26 | } 27 | return tokens 28 | } 29 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/search/spatial_test.go: -------------------------------------------------------------------------------- 1 | package search 2 | 3 | import ( 4 | "testing" 5 | 6 | "github.com/golang/geo/s2" 7 | ) 8 | 9 | func TestAncestorCellIDTokens(t *testing.T) { 10 | granarySquare := s2.CellIDFromToken("48761b3dc") 11 | kingsCross := s2.CellIDFromToken("48761b3c4") 12 | union := s2.CellUnion{granarySquare, kingsCross} 13 | 14 | ancestorTokens := TokensForCovering(union, []string{}) 15 | expectedLength := 17 16 | if len(ancestorTokens) != expectedLength { 17 | t.Errorf("Expected %d tokens, found %d", expectedLength, len(ancestorTokens)) 18 | } 19 | 20 | found := false 21 | expectedToken := "a2:484" 22 | for _, token := range ancestorTokens { 23 | if token == expectedToken { 24 | found = true 25 | break 26 | } 27 | } 28 | if !found { 29 | t.Errorf("Expected to find token %q", expectedToken) 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/search_test.go: -------------------------------------------------------------------------------- 1 | package b6 2 | 3 | // Additional tests that depend on real data are in 4 | // ingest/search_test.go 5 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/units/units.go: -------------------------------------------------------------------------------- 1 | package units 2 | 3 | import ( 4 | "github.com/golang/geo/s1" 5 | ) 6 | 7 | const EarthRadiusMeters = 6371.01 * 1000.0 8 | 9 | func AngleToMeters(angle s1.Angle) float64 { 10 | return EarthRadiusMeters * angle.Radians() 11 | } 12 | 13 | func MetersToAngle(meters float64) s1.Angle { 14 | return s1.Angle(meters/EarthRadiusMeters) * s1.Radian 15 | } 16 | 17 | func AreaToMeters2(area float64) float64 { 18 | return area * EarthRadiusMeters * EarthRadiusMeters 19 | } 20 | 21 | func Meters2ToArea(m2 float64) float64 { 22 | return m2 / (EarthRadiusMeters * EarthRadiusMeters) 23 | } 24 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/values_test.go: -------------------------------------------------------------------------------- 1 | package b6 2 | 3 | import ( 4 | "testing" 5 | ) 6 | 7 | func TestGreaterHappyPath(t *testing.T) { 8 | cases := []struct { 9 | a interface{} 10 | b interface{} 11 | expected bool 12 | }{ 13 | {3, 0, true}, 14 | {0, 3, false}, 15 | {3, int32(0), true}, 16 | {int32(0), 3, false}, 17 | {uint64((1 << 33) + 1), 0, true}, 18 | {0, uint64((1 << 33) + 1), false}, 19 | {uint64((1 << 33) + 2), (1 << 33) + 1, true}, 20 | {(1 << 33) + 1, uint64((1 << 33) + 2), false}, 21 | } 22 | for _, c := range cases { 23 | greater, err := Greater(c.a, c.b) 24 | if err != nil { 25 | t.Errorf("Expected no error, found: %s", err) 26 | } else if greater != c.expected { 27 | t.Errorf("Expected %v > %v == %v, found %v", c.a, c.b, c.expected, greater) 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /src/diagonal.works/b6/world_test.go: -------------------------------------------------------------------------------- 1 | package b6 2 | 3 | import ( 4 | "testing" 5 | ) 6 | 7 | func TestFeatureIDToAndFromString(t *testing.T) { 8 | id := FeatureID{FeatureTypePath, NamespaceOSMWay, 687471322} 9 | actual := FeatureIDFromString(id.String()) 10 | if actual != id { 11 | t.Errorf("Expected %s, found %s", id, actual) 12 | } 13 | } 14 | 15 | func TestFeatureFromStringHandlesLeadingSlash(t *testing.T) { 16 | token := "/path/openstreetmap.org/way/687471322" 17 | expected := FeatureID{FeatureTypePath, NamespaceOSMWay, 687471322} 18 | actual := FeatureIDFromString(token) 19 | if actual != expected { 20 | t.Errorf("Expected %s, found: %s", expected, actual) 21 | } 22 | } 23 | --------------------------------------------------------------------------------