@tileflow/maps 0.1.0-alpha.3 → 0.1.0-alpha.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +123 -186
- package/THIRD_PARTY_NOTICES.md +64 -1
- package/assets/README.md +24 -5
- package/assets/civica/README.md +35 -0
- package/assets/civica/fonts/BarlowSemiCondensed-Regular.ttf +0 -0
- package/assets/civica/fonts/BarlowSemiCondensed-SemiBold.ttf +0 -0
- package/assets/civica/fonts/DMSerifText-Italic.ttf +0 -0
- package/assets/civica/fonts/DMSerifText-Regular.ttf +0 -0
- package/assets/civica/fonts/LICENSE-BarlowSemiCondensed.txt +93 -0
- package/assets/civica/fonts/LICENSE-NotoSans.txt +94 -0
- package/assets/civica/fonts/LICENSE.txt +293 -0
- package/assets/civica/fonts/NotoSans-Regular.ttf +0 -0
- package/assets/civica/fonts/OFL.txt +93 -0
- package/assets/civica/fonts/README.md +42 -0
- package/assets/civica/icons/civica-industrial-hatch.pattern.svg +5 -0
- package/assets/civica/icons/civica-orchard.pattern.svg +16 -0
- package/assets/civica/icons/civica-paper-grain.pattern.svg +26 -0
- package/assets/civica/icons/civica-park-groves.pattern.svg +13 -0
- package/assets/civica/icons/civica-poi-airport.svg +6 -0
- package/assets/civica/icons/civica-poi-civic-star.svg +5 -0
- package/assets/civica/icons/civica-poi-dot.svg +5 -0
- package/assets/civica/icons/civica-poi-food.svg +7 -0
- package/assets/civica/icons/civica-poi-garden.svg +16 -0
- package/assets/civica/icons/civica-poi-hospital.svg +5 -0
- package/assets/civica/icons/civica-poi-lodging.svg +8 -0
- package/assets/civica/icons/civica-poi-monument.svg +7 -0
- package/assets/civica/icons/civica-poi-museum.svg +7 -0
- package/assets/civica/icons/civica-poi-shopping.svg +8 -0
- package/assets/civica/icons/civica-poi-transit.svg +10 -0
- package/assets/civica/icons/civica-water-lines.pattern.svg +7 -0
- package/assets/super-tile-world/README.md +45 -0
- package/assets/super-tile-world/fonts/LICENSE-NotoSans.txt +94 -0
- package/assets/super-tile-world/fonts/LICENSE-PixelifySans.txt +93 -0
- package/assets/super-tile-world/fonts/LICENSE-PressStart2P.txt +93 -0
- package/assets/super-tile-world/fonts/LICENSE.txt +289 -0
- package/assets/super-tile-world/fonts/NotoSans-Regular.ttf +0 -0
- package/assets/super-tile-world/fonts/PixelifySans-Regular.ttf +0 -0
- package/assets/super-tile-world/fonts/PixelifySans-SemiBold.ttf +0 -0
- package/assets/super-tile-world/fonts/README.md +49 -0
- package/assets/super-tile-world/fonts/TileWorldArcade-Regular.ttf +0 -0
- package/assets/super-tile-world/icons/stw-airship.svg +4 -0
- package/assets/super-tile-world/icons/stw-book.svg +4 -0
- package/assets/super-tile-world/icons/stw-brick.pattern.svg +4 -0
- package/assets/super-tile-world/icons/stw-castle.svg +4 -0
- package/assets/super-tile-world/icons/stw-coin.svg +4 -0
- package/assets/super-tile-world/icons/stw-farmland.pattern.svg +4 -0
- package/assets/super-tile-world/icons/stw-flag.svg +4 -0
- package/assets/super-tile-world/icons/stw-flower.svg +4 -0
- package/assets/super-tile-world/icons/stw-forest.pattern.svg +4 -0
- package/assets/super-tile-world/icons/stw-ghost-house.svg +4 -0
- package/assets/super-tile-world/icons/stw-grass.pattern.svg +4 -0
- package/assets/super-tile-world/icons/stw-heart.svg +4 -0
- package/assets/super-tile-world/icons/stw-hill.svg +4 -0
- package/assets/super-tile-world/icons/stw-level-node.svg +4 -0
- package/assets/super-tile-world/icons/stw-meadow.pattern.svg +36 -0
- package/assets/super-tile-world/icons/stw-mushroom-house.svg +4 -0
- package/assets/super-tile-world/icons/stw-mushroom.svg +4 -0
- package/assets/super-tile-world/icons/stw-question-block.svg +4 -0
- package/assets/super-tile-world/icons/stw-sand.pattern.svg +4 -0
- package/assets/super-tile-world/icons/stw-star.svg +4 -0
- package/assets/super-tile-world/icons/stw-tree.svg +4 -0
- package/assets/super-tile-world/icons/stw-warp-pipe.svg +4 -0
- package/assets/super-tile-world/icons/stw-water.pattern.svg +4 -0
- package/dist/index.d.ts +177 -8
- package/dist/index.js +3951 -1987
- package/docs/design-and-assets.md +263 -0
- package/package.json +8 -4
package/README.md
CHANGED
|
@@ -1,205 +1,142 @@
|
|
|
1
|
-
#
|
|
1
|
+
# @tileflow/maps
|
|
2
2
|
|
|
3
|
-
Official Tileflow maps and
|
|
3
|
+
Official Tileflow maps with their icon, pattern, and font assets. Extend a map with
|
|
4
|
+
`@tileflow/core`; render its prepared output with a framework adapter or MapLibre.
|
|
5
|
+
|
|
6
|
+
> Related packages and guides: [documentation index](https://raw.githubusercontent.com/tileflow/tileflow-sdk/main/llms.txt).
|
|
7
|
+
|
|
8
|
+
## Install
|
|
9
|
+
|
|
10
|
+
```sh
|
|
11
|
+
npm install @tileflow/maps@alpha @tileflow/core@alpha
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
Core is a peer dependency: it owns the map language and compiler. This package owns map definitions
|
|
15
|
+
and assets. It does not include a tile archive, a browser renderer, or a hosted service subscription.
|
|
16
|
+
|
|
17
|
+
## Use an official map
|
|
18
|
+
|
|
19
|
+
Create `tileflow.config.ts`:
|
|
20
|
+
|
|
21
|
+
<!-- docs:check -->
|
|
4
22
|
|
|
5
23
|
```ts
|
|
6
24
|
import {defineMap} from '@tileflow/core';
|
|
7
25
|
import {streets} from '@tileflow/maps';
|
|
8
26
|
|
|
9
27
|
export default defineMap({
|
|
10
|
-
id: '
|
|
28
|
+
id: 'madrid',
|
|
29
|
+
name: 'Madrid',
|
|
11
30
|
version: 1,
|
|
12
31
|
extends: streets,
|
|
13
32
|
defaultTheme: 'dark',
|
|
33
|
+
view: {center: [-3.7038, 40.4168], zoom: 12},
|
|
14
34
|
});
|
|
15
35
|
```
|
|
16
36
|
|
|
17
|
-
This
|
|
18
|
-
|
|
37
|
+
This inherits both Streets themes and changes only the default selection and initial view.
|
|
38
|
+
Coordinates are `[longitude, latitude]`. To preview it:
|
|
19
39
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
40
|
+
```sh
|
|
41
|
+
npm install --save-dev --save-exact tileflow@alpha
|
|
42
|
+
npx tileflow validate
|
|
43
|
+
npx tileflow preview
|
|
44
|
+
```
|
|
25
45
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
46
|
+
Rendering can request remote tiles, glyphs, or terrain. Installing the package does not make those
|
|
47
|
+
resources available offline.
|
|
48
|
+
|
|
49
|
+
## Choose a map
|
|
50
|
+
|
|
51
|
+
- `streets`: contemporary street cartography with coordinated light and dark themes, ranked POIs,
|
|
52
|
+
and generic road-reference shields.
|
|
53
|
+
- `baedeker`: warm travel-atlas styling, serif labels, original engraved patterns, and contours.
|
|
54
|
+
- `civica`: illustrated civic-print styling with warm paper, olive parks, blue annotations, and
|
|
55
|
+
vermilion landmarks.
|
|
56
|
+
- `ferraris`: printed-atlas styling with patterned land cover and settlements.
|
|
57
|
+
- `harad`: the historical green-map design displayed as **Härad**.
|
|
58
|
+
- `siegfried`: a terrain atlas with coordinated light/dark ink palettes, contours, and engraved patterns.
|
|
59
|
+
- `soundings`: bathymetric reference cartography with depth bands, continuous relief, and port context.
|
|
60
|
+
- `cyberpunk`: a dark heads-up-display design with destination beacons and Oxanium typography.
|
|
61
|
+
- `matrix`: a monochrome green-screen design with scanline and dot patterns.
|
|
62
|
+
- `verdant`: a contemporary field atlas emphasizing trails, vegetation, and hydrography.
|
|
63
|
+
- `sanFrancisto`: a dark architectural-blueprint design centered on San Francisco. The export is
|
|
64
|
+
spelled `sanFrancisto`.
|
|
65
|
+
- `superTileWorld`: a pixel-art overworld with layered shores, golden routes, destination sprites,
|
|
66
|
+
and packaged arcade lettering.
|
|
67
|
+
|
|
68
|
+
Every official map is a complete, independent root using the same Core compiler. Official map
|
|
69
|
+
objects are deeply frozen shared instances. Do not mutate them; use `defineMap({extends: ...})`
|
|
70
|
+
to create an application-owned map.
|
|
71
|
+
|
|
72
|
+
Soundings is not a navigation product. Its depth-band edges are approximate reference geometry,
|
|
73
|
+
not surveyed isolines or vessel-specific safety contours. Experimental nautical aids and hazards
|
|
74
|
+
are not enabled by that official map.
|
|
75
|
+
|
|
76
|
+
## Themes and assets
|
|
77
|
+
|
|
78
|
+
`streetsThemes` and `siegfriedThemes` expose complete `light` and `dark` themes. Import those
|
|
79
|
+
collections when using `defineTheme()` to derive a new appearance. A declared `themes` collection
|
|
80
|
+
replaces the inherited collection, so also declare the intended `defaultTheme` and `systemThemes`
|
|
81
|
+
mapping. `system` belongs to browser selection; captures and builds use concrete theme names.
|
|
82
|
+
|
|
83
|
+
Every map exports an icon-directory descriptor: `streetsIcons`, `baedekerIcons`, `civicaIcons`,
|
|
84
|
+
`ferrarisIcons`, `haradIcons`, `siegfriedIcons`, `soundingsIcons`, `cyberpunkIcons`, `matrixIcons`,
|
|
85
|
+
`verdantIcons`, `sanFrancistoIcons`, and `superTileWorldIcons`. The descriptors point into this installed package; they are not sprite URLs.
|
|
86
|
+
The CLI and build integrations compile the selected directories into runtime assets.
|
|
87
|
+
|
|
88
|
+
Baedeker and Siegfried also export `baedekerFonts` and `siegfriedFonts` for their packaged Cormorant
|
|
89
|
+
Garamond faces. Cyberpunk and Matrix export `cyberpunkFonts` and `matrixFonts` for Oxanium.
|
|
90
|
+
Cívica exports `civicaFonts` for DM Serif Text, Barlow Semi Condensed, and Noto Sans fallback.
|
|
91
|
+
Super Tile World exports `superTileWorldFonts` for Pixelify Sans, Tile World Arcade, and Noto Sans fallback.
|
|
92
|
+
Streets, Ferraris, Härad, Soundings, Verdant, and San Francisto declare Noto Sans URL glyph providers
|
|
93
|
+
from one immutable Hosted base-asset set, versioned independently of World data.
|
|
94
|
+
|
|
95
|
+
Omitting `icons` inherits the parent's directory list. Declaring a list replaces it; `[]` removes
|
|
96
|
+
all icon directories. Compose explicitly when adding application icons:
|
|
97
|
+
|
|
98
|
+
<!-- docs:check -->
|
|
30
99
|
|
|
31
100
|
```ts
|
|
32
|
-
import {
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
harad,
|
|
42
|
-
haradIcons,
|
|
43
|
-
matrix,
|
|
44
|
-
matrixFonts,
|
|
45
|
-
matrixIcons,
|
|
46
|
-
sanFrancisto,
|
|
47
|
-
sanFrancistoIcons,
|
|
48
|
-
siegfried,
|
|
49
|
-
siegfriedFonts,
|
|
50
|
-
siegfriedIcons,
|
|
51
|
-
siegfriedThemes,
|
|
52
|
-
soundings,
|
|
53
|
-
soundingsIcons,
|
|
54
|
-
streets,
|
|
55
|
-
streetsIcons,
|
|
56
|
-
streetsThemes,
|
|
57
|
-
verdant,
|
|
58
|
-
verdantIcons,
|
|
59
|
-
} from '@tileflow/maps';
|
|
101
|
+
import {defineMap} from '@tileflow/core';
|
|
102
|
+
import {streets, streetsIcons} from '@tileflow/maps';
|
|
103
|
+
|
|
104
|
+
export default defineMap({
|
|
105
|
+
id: 'store-locator',
|
|
106
|
+
version: 1,
|
|
107
|
+
extends: streets,
|
|
108
|
+
icons: [streetsIcons, './icons'],
|
|
109
|
+
});
|
|
60
110
|
```
|
|
61
111
|
|
|
62
|
-
`
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
`soundings` is a self-contained bathymetric-chart design with ivory land, thirteen-stop
|
|
94
|
-
depth-graded water, labelled band edges, continuous colour relief, multidirectional seabed shading,
|
|
95
|
-
port context, named ferry routes, and restrained technical magenta. Its initial camera faces the
|
|
96
|
-
Strait of Gibraltar, allowing an Iberian GEBCO pilot to exercise both Atlantic and Mediterranean
|
|
97
|
-
relief. It selects the public semantic compiler contract without importing or extending `streets`
|
|
98
|
-
and explicitly composes World with `bathymetry({display: 'hybrid'})` while setting Nautical to
|
|
99
|
-
`false`.
|
|
100
|
-
|
|
101
|
-
Vector bands come from `tileflow-bathymetry`; continuous colour relief and hillshade come from
|
|
102
|
-
`tileflow-bathymetry-dem`. The stronger DEM treatment is balanced against the vector wash and depth
|
|
103
|
-
labels rather than against experimental navigation symbols. Dashed outlines remain an honest
|
|
104
|
-
fallback traced from broad GEBCO band polygons until native contour geometry is released. Labels
|
|
105
|
-
show the absolute `min_depth` value, not an inferred range or vessel-specific safety contour.
|
|
106
|
-
Harbours and ferries are ordinary World context. Experimental `nautical-v1` tiles, aids, lights,
|
|
107
|
-
soundings, hazards, reefs, and wrecks are deliberately absent from the official map and remain
|
|
108
|
-
available only to explicitly configured laboratory maps. Soundings is reference cartography and is
|
|
109
|
-
not a navigation product.
|
|
110
|
-
|
|
111
|
-
`siegfried` is a self-contained terrain atlas based on the visual grammar documented for
|
|
112
|
-
swisstopo's nineteenth-century Siegfried Map. It does not import or extend `streets`. The default
|
|
113
|
-
`light` theme preserves black, brown, blue, and an ivory paper substrate; browser-derived contours
|
|
114
|
-
replace modern hillshade and retain the 30-metre Alpine cadence at detailed zooms. Rock and scree
|
|
115
|
-
are re-engraved in key ink after the contour deck, while dedicated SVG motifs distinguish forest,
|
|
116
|
-
glacier, wetland, gravel, orchard, and water. Its coordinated `dark` theme is explicitly a nocturnal
|
|
117
|
-
engraver's proof, not a historical facsimile: it keeps identical geometry and semantic ink roles on
|
|
118
|
-
charcoal paper. `[siegfriedIcons]` owns nine light and nine dark pattern variants,
|
|
119
|
-
`[siegfriedFonts]` owns the locally packaged Cormorant Garamond Regular, SemiBold, and Italic faces,
|
|
120
|
-
and `[siegfriedThemes]` exposes the two complete visual vocabularies for safe derivation.
|
|
121
|
-
|
|
122
|
-
`verdant` is a self-contained contemporary field-atlas design. It combines a park-map information
|
|
123
|
-
hierarchy with a cool mineral substrate, clean blue hydrography, graphite buildings, and a
|
|
124
|
-
trail-forward accent; its original botanical textures appear only where detailed zooms make them
|
|
125
|
-
useful. It uses the same semantic compiler contract without importing or extending `streets`,
|
|
126
|
-
declares its own Noto Sans glyph provider, and owns its complete icon and pattern set through
|
|
127
|
-
`[verdantIcons]`.
|
|
128
|
-
|
|
129
|
-
`sanFrancisto` is a self-contained dark architectural-blueprint design centered on San Francisco.
|
|
130
|
-
Fine technical road strokes, survey-like uppercase labels, precise building footprints, contour
|
|
131
|
-
dimensions, and dedicated landscape and water hatches replace naturalistic map color. It declares
|
|
132
|
-
the canonical Noto Sans glyph provider and only `[sanFrancistoIcons]`, whose four original patterns
|
|
133
|
-
and schematic POI node form its complete sprite vocabulary.
|
|
134
|
-
|
|
135
|
-
`cyberpunk` is a self-contained dark HUD root. Its road hierarchy, building signals, destination
|
|
136
|
-
beacons, semantic render passes, theme, World data selection, `[cyberpunkIcons]`, and
|
|
137
|
-
`[cyberpunkFonts]` are all declared directly; it does not import or extend `streets`.
|
|
138
|
-
|
|
139
|
-
`matrix` is a self-contained monochrome green-screen root. It explicitly owns its sparse HUD
|
|
140
|
-
geometry, reviewed phosphor-green ramp, modules, semantic render passes, and theme. It
|
|
141
|
-
omits a bright road centerline and building circuit texture, and uses compact square destination
|
|
142
|
-
nodes through `[matrixIcons]`. A translucent scanline and dot pattern masks the cartographic
|
|
143
|
-
linework so bright strokes break into the phosphor rows of an old CRT without baking that texture
|
|
144
|
-
into the map data; text layers render afterwards and stay crisp. `[matrixFonts]` owns Matrix's
|
|
145
|
-
packaged Oxanium faces for uppercase labels, independently of Cyberpunk's font provider.
|
|
146
|
-
|
|
147
|
-
`streetsThemes.light` and `streetsThemes.dark` are complete appearance documents consumed by the
|
|
148
|
-
same semantic module structure. Selecting `dark` changes colors, typography roles, image roles, and
|
|
149
|
-
lighting without changing a source, filter, layer order, zoom gate, collision rule, or module. Both
|
|
150
|
-
sidewalk patterns live in the shared `[streetsIcons]` atlas and the selected theme resolves the
|
|
151
|
-
semantic `roads.sidewalkPattern` image token to the correct asset.
|
|
152
|
-
|
|
153
|
-
Streets uses one ranked destination hierarchy in both themes. Major transit and cultural anchors
|
|
154
|
-
appear first; lodging, health, education, services, shopping, food, coffee, and parking enter
|
|
155
|
-
progressively as the camera approaches street level. Each visible destination is one collision
|
|
156
|
-
unit made from a colored circular pictogram and an optional neutral name, so the marker remains
|
|
157
|
-
useful when the label cannot fit. The pictogram scale grows gently from 1× at z12 to 1.06× at z17,
|
|
158
|
-
giving detailed street views a little more visual presence without increasing POI density.
|
|
159
|
-
Portal-number labels are intentionally disabled. The ten POI
|
|
160
|
-
pictograms are adapted from the pinned CC0 Maki subset documented in
|
|
161
|
-
`THIRD_PARTY_NOTICES.md`; their containers, colors, sizing, and composition are Tileflow-authored.
|
|
162
|
-
|
|
163
|
-
Road references use a compact Tileflow-owned family of generic rectangular and circular shields.
|
|
164
|
-
The data's normalized `shield_kind` selects neutral, blue, green, red, orange, yellow, or circular
|
|
165
|
-
artwork; `shield_text_color` independently selects the light or dark theme token. Unknown and
|
|
166
|
-
unsupported networks fall back to the neutral rectangle with dark text instead of guessing a
|
|
167
|
-
country from the spelling of `ref`. Both themes retain the same signaling colors.
|
|
168
|
-
|
|
169
|
-
Streets has separate shield phases for scale, not separate hand-authored network layers. Overview
|
|
170
|
-
uses pre-deduplicated point candidates; detail switches to repeated line placement. Both the fitted
|
|
171
|
-
plate and its complete route reference are viewport-aligned, so shields remain horizontal as the
|
|
172
|
-
map rotates or pitches. The rectangular base plate is 20 by 14 pixels with a one-pixel outline;
|
|
173
|
-
the circular neutral base is 14 by 14. Both use 9-pixel bold text and a small width-only fit
|
|
174
|
-
allowance. Streets limits shields to the motorway-through-tertiary hierarchy; collision padding
|
|
175
|
-
and the overview candidate schedule keep regional views legible while preserving useful repetition
|
|
176
|
-
at street scale.
|
|
177
|
-
|
|
178
|
-
The two palettes are Tileflow-owned, deterministic snapshots calibrated from rendered Mapbox
|
|
179
|
-
Standard `default/day` and `default/night` references on 2026-08-27. They do not import Mapbox style
|
|
180
|
-
JSON, rules, assets, or runtime dependencies. Public roles such as `surface.background`,
|
|
181
|
-
`landuse.industrial`, `landuse.medical`, `labels.settlement`, `labels.neighborhood`, and
|
|
182
|
-
`labels.road` remain independently wired; `hydro.ocean` also separates Standard Night's deep sea
|
|
183
|
-
from urban and inland water. An agent can alter one cartographic intent without
|
|
184
|
-
knowing or perturbing the physical layer topology. Because Standard is evergreen, later parity work
|
|
185
|
-
must be an explicit dated recalibration rather than an implicit network-dependent change.
|
|
186
|
-
|
|
187
|
-
At detailed zooms, the road-bearing official maps round-cap ordinary surface-road and bridge
|
|
188
|
-
feature endpoints so adjacent vector segments overlap their antialiasing fringe instead of exposing
|
|
189
|
-
hairline cuts. Tunnel portals retain butt caps; Streets, Cyberpunk, and Matrix also keep butt caps on
|
|
190
|
-
steps and approaches carrying circular-road clearance so those structural ends do not protrude into
|
|
191
|
-
the connected geometry. Streets pairs its blue/slate road decks with a darker casing that grows from
|
|
192
|
-
1 px at z15 to 2 px at z22; tunnel casings use the compact dashed rhythm of the calibrated reference.
|
|
193
|
-
|
|
194
|
-
A theme is not a loose override cascade. Module styles explicitly reference roles such as
|
|
195
|
-
`roads.motorway`, `labels.road`, and `hydro.water`; the selected complete theme resolves those
|
|
196
|
-
references before MapLibre output is generated. Use `defaultTheme` for a deterministic default and
|
|
197
|
-
`systemThemes` plus the runtime `theme="system"` selection when the browser should follow the OS.
|
|
198
|
-
|
|
199
|
-
The directory descriptors point into this installed package. A map inherits its parent's icon or
|
|
200
|
-
font list when the property is omitted. Declaring a list replaces the inherited list, a later
|
|
201
|
-
directory wins for an exact duplicate ID, and `[]` selects no directories.
|
|
202
|
-
|
|
203
|
-
`@tileflow/maps` has a peer dependency on `@tileflow/core`. Core owns the map language and compiler;
|
|
204
|
-
this package owns the official map definitions, icon and pattern sources, Cyberpunk, Matrix, and
|
|
205
|
-
Siegfried fonts, and their notices. Core never depends on this package.
|
|
112
|
+
Create `icons/` beside the config and add supported image files before building. Later directories
|
|
113
|
+
replace earlier files with the same exact icon ID. Fonts follow the same ordered-directory model;
|
|
114
|
+
`fonts` and `glyphs` are mutually exclusive providers.
|
|
115
|
+
|
|
116
|
+
## Delivery and attribution
|
|
117
|
+
|
|
118
|
+
Use the CLI or a build integration to prepare a map's complete asset set. Copying Style JSON alone
|
|
119
|
+
can leave missing sprites, font files, or browser protocols. Keep the generated manifest and its
|
|
120
|
+
referenced files together.
|
|
121
|
+
|
|
122
|
+
Hosted deployment currently requires Tileflow World and rejects local/package font bundles before
|
|
123
|
+
uploading a style. Maps with packaged fonts therefore need self-hosted delivery or an explicitly
|
|
124
|
+
replaced, compatible public glyph provider. Check with `tileflow validate --target hosted` before
|
|
125
|
+
planning a hosted deployment.
|
|
126
|
+
|
|
127
|
+
Tileflow-owned designs and artwork use Apache-2.0. Historical inspiration does not mean the package
|
|
128
|
+
redistributes historical scans, source cartography, or data. Third-party fonts and the pinned Maki
|
|
129
|
+
icon subset retain their own terms. Preserve
|
|
130
|
+
[THIRD_PARTY_NOTICES.md](https://github.com/tileflow/tileflow-sdk/blob/main/packages/maps/THIRD_PARTY_NOTICES.md)
|
|
131
|
+
and the notices next to packaged assets. Map data and terrain services have separate attribution
|
|
132
|
+
and usage requirements.
|
|
133
|
+
|
|
134
|
+
See the [Core guide](https://github.com/tileflow/tileflow-sdk/blob/main/packages/core/README.md)
|
|
135
|
+
for inheritance and styling, or the
|
|
136
|
+
[public exports](https://github.com/tileflow/tileflow-sdk/blob/main/packages/maps/src/index.ts)
|
|
137
|
+
for exact names. The installed package's definitions and README take precedence over a newer `main`.
|
|
138
|
+
|
|
139
|
+
## Design and asset reference
|
|
140
|
+
|
|
141
|
+
The [design and asset notes](https://github.com/tileflow/tileflow-sdk/blob/main/packages/maps/docs/design-and-assets.md) describe each map's visual grammar, source references, and third-party asset boundaries. They are also included under
|
|
142
|
+
`docs/` in the installed package.
|
package/THIRD_PARTY_NOTICES.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# Third-party notices
|
|
2
2
|
|
|
3
3
|
Except for the Streets POI pictograms documented below, the official themed Streets, Baedeker,
|
|
4
|
-
Ferraris, Härad, Siegfried, Soundings, Cyberpunk, Matrix, Verdant,
|
|
4
|
+
Ferraris, Härad, Siegfried, Soundings, Cyberpunk, Matrix, Verdant, San Francisto, Cívica, and Super Tile World icon and pattern
|
|
5
5
|
artwork published under `assets/` is original Tileflow artwork.
|
|
6
6
|
|
|
7
7
|
This file is shipped with `@tileflow/maps` so future third-party assets have a stable place for
|
|
@@ -138,3 +138,66 @@ respective `assets/cyberpunk/fonts/` and `assets/matrix/fonts/` directories. Oxa
|
|
|
138
138
|
2019 The Oxanium Project Authors and is distributed under the SIL Open Font License 1.1 included
|
|
139
139
|
beside both font copies. The canonical license filename consumed by Tileflow's generic font
|
|
140
140
|
pipeline is `LICENSE.txt`.
|
|
141
|
+
|
|
142
|
+
## Cívica artwork and fonts
|
|
143
|
+
|
|
144
|
+
The `civica` map, its five SVG patterns, and its eleven SVG POI pictograms are original Tileflow
|
|
145
|
+
code and artwork. Its civic print-atlas vocabulary takes broad visual inspiration from the user's
|
|
146
|
+
[Inside the Belt Way — Washington DC reference](https://www.etsy.com/listing/990932175/inside-the-belt-way-washington-dc).
|
|
147
|
+
This package does not include or redistribute the reference map, geography, composition,
|
|
148
|
+
lettering, symbols, images, or other artwork. Cívica declares its own assets and does not import
|
|
149
|
+
another official map's artwork or font directories.
|
|
150
|
+
|
|
151
|
+
Cívica includes five unmodified upstream font files under `assets/civica/fonts/`:
|
|
152
|
+
|
|
153
|
+
- `DMSerifText-Regular.ttf` and `DMSerifText-Italic.ttf` are from the official Google Fonts
|
|
154
|
+
[DM Serif Text directory](https://github.com/google/fonts/tree/2536d8f1f906c7bb1f4b1d09ac073109dc6a7cd9/ofl/dmseriftext),
|
|
155
|
+
pinned to revision `2536d8f1f906c7bb1f4b1d09ac073109dc6a7cd9`. Their complete upstream
|
|
156
|
+
SIL Open Font License 1.1 notice is preserved at `assets/civica/fonts/OFL.txt`.
|
|
157
|
+
- `BarlowSemiCondensed-Regular.ttf` and `BarlowSemiCondensed-SemiBold.ttf` are from the official
|
|
158
|
+
Google Fonts [Barlow Semi Condensed directory](https://github.com/google/fonts/tree/3218ae2acc5bce7ccd97c477965b5b4094241fb0/ofl/barlowsemicondensed),
|
|
159
|
+
pinned to revision `3218ae2acc5bce7ccd97c477965b5b4094241fb0`. Their complete upstream
|
|
160
|
+
SIL Open Font License 1.1 notice is preserved at `assets/civica/fonts/LICENSE-BarlowSemiCondensed.txt`.
|
|
161
|
+
- `NotoSans-Regular.ttf` is from the official Noto
|
|
162
|
+
[static hinted Noto Sans directory](https://github.com/notofonts/noto-fonts/tree/c971829a87e7920f960e7277c3dafd9bedd3c601/hinted/ttf/NotoSans),
|
|
163
|
+
pinned to revision `c971829a87e7920f960e7277c3dafd9bedd3c601`. Its complete upstream
|
|
164
|
+
SIL Open Font License 1.1 notice is preserved at `assets/civica/fonts/LICENSE-NotoSans.txt`.
|
|
165
|
+
|
|
166
|
+
`assets/civica/fonts/LICENSE.txt` combines all three complete upstream notices and licenses with
|
|
167
|
+
component filenames and source revisions for Tileflow's generic font preparation pipeline.
|
|
168
|
+
`assets/civica/fonts/README.md` records individual pinned source links and verified OpenType full
|
|
169
|
+
names. No font file has been subsetted, renamed internally, or modified.
|
|
170
|
+
|
|
171
|
+
## Super Tile World artwork and fonts
|
|
172
|
+
|
|
173
|
+
The `superTileWorld` map, sixteen SVG sprites, and seven SVG patterns are original Tileflow code
|
|
174
|
+
and artwork. Its pixel-art overworld takes visual inspiration from _Super Mario World_. This
|
|
175
|
+
package includes no extracted game sprites, Nintendo logo, source map, or downloaded icon artwork.
|
|
176
|
+
Super Mario World is a Nintendo trademark; this independent showcase has no affiliation with or
|
|
177
|
+
endorsement from Nintendo. The asset research references are recorded in
|
|
178
|
+
`assets/super-tile-world/README.md`.
|
|
179
|
+
|
|
180
|
+
Super Tile World packages three unmodified static upstream font files and one renamed derivative in its own
|
|
181
|
+
`assets/super-tile-world/fonts/` directory:
|
|
182
|
+
|
|
183
|
+
- `PixelifySans-Regular.ttf` and `PixelifySans-SemiBold.ttf` are from the official
|
|
184
|
+
[Pixelify Sans project](https://github.com/eifetx/Pixelify-Sans/tree/39df74aba80df8157546034b878e8be1eb565ced),
|
|
185
|
+
pinned to revision `39df74aba80df8157546034b878e8be1eb565ced`. Its complete SIL Open Font
|
|
186
|
+
License 1.1 notice is preserved as `LICENSE-PixelifySans.txt`.
|
|
187
|
+
- `TileWorldArcade-Regular.ttf` is a name-table-only derivative of `PressStart2P-Regular.ttf`
|
|
188
|
+
from the official Google Fonts
|
|
189
|
+
[Press Start 2P directory](https://github.com/google/fonts/tree/e06fe11c39051bddaef73ec338a9d1c8175723f1/ofl/pressstart2p),
|
|
190
|
+
pinned to revision `e06fe11c39051bddaef73ec338a9d1c8175723f1`. The derivative is named
|
|
191
|
+
“Tile World Arcade” to satisfy the upstream reserved-font-name requirement and to give browser
|
|
192
|
+
canvas rendering a compatible family name. Glyph outlines, metrics, and character mappings
|
|
193
|
+
remain unchanged. Its complete SIL Open Font License 1.1 notice, including the upstream
|
|
194
|
+
reserved font name, is preserved as `LICENSE-PressStart2P.txt`.
|
|
195
|
+
- `NotoSans-Regular.ttf` is from the official Noto
|
|
196
|
+
[static hinted Noto Sans directory](https://github.com/notofonts/noto-fonts/tree/c971829a87e7920f960e7277c3dafd9bedd3c601/hinted/ttf/NotoSans),
|
|
197
|
+
pinned to revision `c971829a87e7920f960e7277c3dafd9bedd3c601`. Its complete SIL Open Font
|
|
198
|
+
License 1.1 notice is preserved as `LICENSE-NotoSans.txt`.
|
|
199
|
+
|
|
200
|
+
`LICENSE.txt` combines all three complete font-family notices and licenses for the generic local
|
|
201
|
+
font preparation pipeline. The adjacent `fonts/README.md` records the pinned source files,
|
|
202
|
+
verified OpenType full names, and the derivative's exact name-table changes. No font is subsetted;
|
|
203
|
+
Pixelify Sans and Noto Sans remain unmodified upstream files.
|
package/assets/README.md
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
# Official map assets
|
|
2
2
|
|
|
3
3
|
These directories contain the package-owned sources required by the official Streets, Baedeker,
|
|
4
|
-
Ferraris, Härad, Siegfried, Soundings, Cyberpunk, Matrix, Verdant,
|
|
4
|
+
Ferraris, Härad, Siegfried, Soundings, Cyberpunk, Matrix, Verdant, San Francisto, Cívica, and Super Tile World maps. Their SVG icons and
|
|
5
5
|
patterns live under each map's `icons/` directory. Streets includes a pinned CC0 subset of Maki
|
|
6
6
|
pictograms inside Tileflow-authored circular POI markers; its provenance is recorded in
|
|
7
7
|
`../THIRD_PARTY_NOTICES.md` and the upstream license is kept at `streets/LICENSE-MAKI.txt`. A map
|
|
8
8
|
refers to those directories through the exported `streetsIcons`, `baedekerIcons`, `ferrarisIcons`,
|
|
9
9
|
`haradIcons`, `siegfriedIcons`, `soundingsIcons`, `cyberpunkIcons`, `matrixIcons`, `verdantIcons`,
|
|
10
|
-
and `
|
|
11
|
-
packaged font directories through `baedekerFonts`, `cyberpunkFonts`, `matrixFonts`, and
|
|
12
|
-
`siegfriedFonts`; the files and their `LICENSE.txt` remain beside the map that owns them.
|
|
10
|
+
`sanFrancistoIcons`, `civicaIcons`, and `superTileWorldIcons` descriptors. Baedeker, Cívica, Cyberpunk, Matrix, Siegfried, and Super Tile World refer to their own
|
|
11
|
+
packaged font directories through `baedekerFonts`, `civicaFonts`, `cyberpunkFonts`, `matrixFonts`, and
|
|
12
|
+
`siegfriedFonts`, and `superTileWorldFonts`; the files and their `LICENSE.txt` remain beside the map that owns them.
|
|
13
13
|
|
|
14
14
|
The seven `road-shield-*` SVGs are original Tileflow artwork: a deliberately generic neutral,
|
|
15
15
|
colored-rectangle, and neutral-circle vocabulary. They do not reproduce a national sign template
|
|
@@ -71,6 +71,22 @@ technical symbol: `san-francisto-blueprint-grid`, `san-francisto-building-hatch`
|
|
|
71
71
|
Together they provide drawing-paper grid, building, landscape, and water notation plus a schematic
|
|
72
72
|
POI marker without importing another official map's sprite assets.
|
|
73
73
|
|
|
74
|
+
The Cívica directory contains five original transparent patterns: `civica-paper-grain`,
|
|
75
|
+
`civica-park-groves`, `civica-orchard`, `civica-water-lines`, and `civica-industrial-hatch`.
|
|
76
|
+
Eleven original `civica-poi-*` pictograms provide civic, cultural, garden, transport, and everyday
|
|
77
|
+
destination glyphs with fine ivory clearances and compact paper squares for transport symbols.
|
|
78
|
+
Small marks and a quiet secondary point preserve the map's label hierarchy. The map also owns its packaged fonts; artwork and font
|
|
79
|
+
provenance are recorded in `civica/README.md` and `civica/fonts/README.md`.
|
|
80
|
+
|
|
81
|
+
The Super Tile World directory contains sixteen original pixel-art SVG sprites and seven
|
|
82
|
+
intrinsic-size patterns for grass, water, forest, brick, sand, meadow, and farmland. Its `stw-*`
|
|
83
|
+
asset vocabulary supports a game-board interpretation of real geography without importing another
|
|
84
|
+
map's sprites. Pixelify Sans Regular and SemiBold supply detail lettering; Tile World Arcade Regular
|
|
85
|
+
supplies display lettering, with Noto Sans Regular as a local fallback. Tile World Arcade is a
|
|
86
|
+
name-table-only derivative of Press Start 2P, with its glyphs preserved and a distinct family name
|
|
87
|
+
for reliable browser canvas rendering. All four font faces and their complete OFL notices are packaged
|
|
88
|
+
locally. See `super-tile-world/README.md` and `super-tile-world/fonts/README.md`.
|
|
89
|
+
|
|
74
90
|
`@tileflow/dev` resolves each package descriptor, verifies that its real path remains inside the
|
|
75
91
|
installed package, and compiles the complete ordered directory composition into deterministic
|
|
76
92
|
MapLibre sprite atlases. `<id>.<ext>` publishes an icon as `<id>` and
|
|
@@ -90,7 +106,10 @@ Verdant, and San Francisto each declare the canonical Tileflow glyph URL with ex
|
|
|
90
106
|
`Noto Sans Regular` and `Noto Sans Bold` stacks. Cyberpunk and Matrix name `Oxanium Medium` and
|
|
91
107
|
`Oxanium SemiBold`, while Baedeker and Siegfried each name `Cormorant Garamond Regular`,
|
|
92
108
|
`Cormorant Garamond SemiBold`, and `Cormorant Garamond Italic` from their respective packaged
|
|
93
|
-
directories.
|
|
109
|
+
directories. Cívica packages `DM Serif Text Regular` and `DM Serif Text Italic` for its place
|
|
110
|
+
and water lettering, `Barlow Semi Condensed Regular` and `Barlow Semi Condensed SemiBold` for
|
|
111
|
+
roads and destinations, and `Noto Sans Regular` as an explicit local fallback. It declares only local fonts because the public contract makes local
|
|
112
|
+
font directories and remote glyph providers mutually exclusive. The compatibility URL
|
|
94
113
|
is canonical but not content-addressed; responses
|
|
95
114
|
revalidate and do not provide an exact-byte receipt. Reproducible official PBF delivery will use the
|
|
96
115
|
separate `/base/<assetSetSha256>/glyphs/...` contract once Hosted has verified and published that
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# Cívica artwork
|
|
2
|
+
|
|
3
|
+
The SVG patterns and point-of-interest pictograms in `icons/` are original artwork drawn from
|
|
4
|
+
scratch for the Cívica Tileflow map. They use a civic print-atlas vocabulary: warm paper,
|
|
5
|
+
vermilion destinations, blue transport ink, loose olive tree rings, broken horizontal water
|
|
6
|
+
strokes, and fine diagonal industrial overprinting. The design takes broad visual inspiration
|
|
7
|
+
from the user's reference, _Inside the Belt Way — Washington DC_, without copying its map,
|
|
8
|
+
geography, lettering, composition, symbols, or artwork.
|
|
9
|
+
|
|
10
|
+
No downloaded imagery, existing map style, or external icon set is included.
|
|
11
|
+
Every icon and pattern is a self-contained SVG with an explicit intrinsic size for Tileflow's sprite
|
|
12
|
+
pipeline. Patterns have transparent backgrounds so the map owns the underlying land or water
|
|
13
|
+
color. Ink marks remain intentionally small and sparse to avoid competing with road and label
|
|
14
|
+
hierarchies at different zoom levels.
|
|
15
|
+
|
|
16
|
+
The POI pictograms use a 28 × 28 canvas and remain useful at icon sizes of 0.65–0.85. Fine ivory
|
|
17
|
+
clearances keep the original glyphs legible over colored map areas. Vermilion identifies civic,
|
|
18
|
+
cultural, and medical destinations; quiet gray-green identifies everyday businesses; gardens use
|
|
19
|
+
green ink. Transit and airports use compact paper squares with fine blue keylines.
|
|
20
|
+
`civica-poi-dot` is a quiet secondary point occupying less of the same canvas.
|
|
21
|
+
|
|
22
|
+
Pattern runtime IDs remove the `.pattern.svg` filename suffix:
|
|
23
|
+
|
|
24
|
+
- `civica-paper-grain` — sparse warm ink flecks; 128 × 128.
|
|
25
|
+
- `civica-park-groves` — loose clusters of small tree rings; 64 × 64.
|
|
26
|
+
- `civica-orchard` — staggered small orchard crowns; 64 × 32.
|
|
27
|
+
- `civica-water-lines` — broken horizontal blue strokes; 64 × 32.
|
|
28
|
+
- `civica-industrial-hatch` — seamless diagonal working-landscape hatch; 16 × 16.
|
|
29
|
+
|
|
30
|
+
POI runtime IDs are `civica-poi-civic-star`, `civica-poi-museum`, `civica-poi-monument`,
|
|
31
|
+
`civica-poi-garden`, `civica-poi-transit`, `civica-poi-food`, `civica-poi-lodging`,
|
|
32
|
+
`civica-poi-hospital`, `civica-poi-shopping`, `civica-poi-airport`, and `civica-poi-dot`.
|
|
33
|
+
|
|
34
|
+
The separately licensed fonts packaged under `fonts/` have their own upstream provenance in
|
|
35
|
+
`fonts/README.md` and their complete license beside the font files.
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
Copyright 2017 The Barlow Project Authors (https://github.com/jpt/barlow)
|
|
2
|
+
|
|
3
|
+
This Font Software is licensed under the SIL Open Font License, Version 1.1.
|
|
4
|
+
This license is copied below, and is also available with a FAQ at:
|
|
5
|
+
http://scripts.sil.org/OFL
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
-----------------------------------------------------------
|
|
9
|
+
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
|
|
10
|
+
-----------------------------------------------------------
|
|
11
|
+
|
|
12
|
+
PREAMBLE
|
|
13
|
+
The goals of the Open Font License (OFL) are to stimulate worldwide
|
|
14
|
+
development of collaborative font projects, to support the font creation
|
|
15
|
+
efforts of academic and linguistic communities, and to provide a free and
|
|
16
|
+
open framework in which fonts may be shared and improved in partnership
|
|
17
|
+
with others.
|
|
18
|
+
|
|
19
|
+
The OFL allows the licensed fonts to be used, studied, modified and
|
|
20
|
+
redistributed freely as long as they are not sold by themselves. The
|
|
21
|
+
fonts, including any derivative works, can be bundled, embedded,
|
|
22
|
+
redistributed and/or sold with any software provided that any reserved
|
|
23
|
+
names are not used by derivative works. The fonts and derivatives,
|
|
24
|
+
however, cannot be released under any other type of license. The
|
|
25
|
+
requirement for fonts to remain under this license does not apply
|
|
26
|
+
to any document created using the fonts or their derivatives.
|
|
27
|
+
|
|
28
|
+
DEFINITIONS
|
|
29
|
+
"Font Software" refers to the set of files released by the Copyright
|
|
30
|
+
Holder(s) under this license and clearly marked as such. This may
|
|
31
|
+
include source files, build scripts and documentation.
|
|
32
|
+
|
|
33
|
+
"Reserved Font Name" refers to any names specified as such after the
|
|
34
|
+
copyright statement(s).
|
|
35
|
+
|
|
36
|
+
"Original Version" refers to the collection of Font Software components as
|
|
37
|
+
distributed by the Copyright Holder(s).
|
|
38
|
+
|
|
39
|
+
"Modified Version" refers to any derivative made by adding to, deleting,
|
|
40
|
+
or substituting -- in part or in whole -- any of the components of the
|
|
41
|
+
Original Version, by changing formats or by porting the Font Software to a
|
|
42
|
+
new environment.
|
|
43
|
+
|
|
44
|
+
"Author" refers to any designer, engineer, programmer, technical
|
|
45
|
+
writer or other person who contributed to the Font Software.
|
|
46
|
+
|
|
47
|
+
PERMISSION & CONDITIONS
|
|
48
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
|
49
|
+
a copy of the Font Software, to use, study, copy, merge, embed, modify,
|
|
50
|
+
redistribute, and sell modified and unmodified copies of the Font
|
|
51
|
+
Software, subject to the following conditions:
|
|
52
|
+
|
|
53
|
+
1) Neither the Font Software nor any of its individual components,
|
|
54
|
+
in Original or Modified Versions, may be sold by itself.
|
|
55
|
+
|
|
56
|
+
2) Original or Modified Versions of the Font Software may be bundled,
|
|
57
|
+
redistributed and/or sold with any software, provided that each copy
|
|
58
|
+
contains the above copyright notice and this license. These can be
|
|
59
|
+
included either as stand-alone text files, human-readable headers or
|
|
60
|
+
in the appropriate machine-readable metadata fields within text or
|
|
61
|
+
binary files as long as those fields can be easily viewed by the user.
|
|
62
|
+
|
|
63
|
+
3) No Modified Version of the Font Software may use the Reserved Font
|
|
64
|
+
Name(s) unless explicit written permission is granted by the corresponding
|
|
65
|
+
Copyright Holder. This restriction only applies to the primary font name as
|
|
66
|
+
presented to the users.
|
|
67
|
+
|
|
68
|
+
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
|
|
69
|
+
Software shall not be used to promote, endorse or advertise any
|
|
70
|
+
Modified Version, except to acknowledge the contribution(s) of the
|
|
71
|
+
Copyright Holder(s) and the Author(s) or with their explicit written
|
|
72
|
+
permission.
|
|
73
|
+
|
|
74
|
+
5) The Font Software, modified or unmodified, in part or in whole,
|
|
75
|
+
must be distributed entirely under this license, and must not be
|
|
76
|
+
distributed under any other license. The requirement for fonts to
|
|
77
|
+
remain under this license does not apply to any document created
|
|
78
|
+
using the Font Software.
|
|
79
|
+
|
|
80
|
+
TERMINATION
|
|
81
|
+
This license becomes null and void if any of the above conditions are
|
|
82
|
+
not met.
|
|
83
|
+
|
|
84
|
+
DISCLAIMER
|
|
85
|
+
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
86
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
|
|
87
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
|
|
88
|
+
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
|
|
89
|
+
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
|
90
|
+
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
|
|
91
|
+
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
92
|
+
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
|
|
93
|
+
OTHER DEALINGS IN THE FONT SOFTWARE.
|