@spawnite/ui 0.1.0-beta.16
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/LICENSE.md +169 -0
- package/README.md +49 -0
- package/dist/GS22bG64.js +1 -0
- package/dist/THIRD-PARTY-NOTICES +147 -0
- package/dist/brand-face.css +17 -0
- package/dist/brand.css +29 -0
- package/dist/brand.d.ts +2 -0
- package/dist/brand.js +1 -0
- package/dist/controls.d.ts +2 -0
- package/dist/controls.js +1 -0
- package/dist/fonts/archivo/Archivo.woff2 +0 -0
- package/dist/fonts/archivo/OFL.txt +93 -0
- package/dist/index.d.ts +425 -0
- package/dist/index.js +405 -0
- package/dist/motion.d.ts +42 -0
- package/dist/motion.js +1 -0
- package/dist/public-CGV4pFD1.d.ts +146 -0
- package/dist/public-DMivBp7u.d.ts +29 -0
- package/dist/styles.css +3 -0
- package/dist/themes/glass.css +41 -0
- package/dist/themes/slate.css +41 -0
- package/dist/tooltip.d.ts +33 -0
- package/dist/tooltip.js +1 -0
- package/dist/umq8ESOW.js +1 -0
- package/package.json +84 -0
package/LICENSE.md
ADDED
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
# Spawnite License 1.0
|
|
2
|
+
|
|
3
|
+
<https://spawnite.com/license/1.0>
|
|
4
|
+
|
|
5
|
+
Copyright (c) 2026 Daniel Zarinski and David Zarinski.
|
|
6
|
+
|
|
7
|
+
## Summary
|
|
8
|
+
|
|
9
|
+
This summary is not part of the terms and does not replace them.
|
|
10
|
+
|
|
11
|
+
- Using the Spawnite engine, tools and development room is free. Building and testing your games and their tools is always allowed, on your machines and through the services and agents that work for you, including local multiplayer.
|
|
12
|
+
- Games that include the software are made public only through Spawnite. To publish one anywhere else, ask us at dev@spawnite.com. We decide each request case by case, and a yes is a written license that says what it covers.
|
|
13
|
+
- Your game's own code, assets and earnings share are yours, including what you write yourself inside a copied plugin. These terms do not reach them, and you may take them to any engine.
|
|
14
|
+
- A plugin the engine ships as readable source, in a package's `readable` folder, is yours to read, copy into your game and change. A copy stays under these terms.
|
|
15
|
+
- Everything else ships closed: use it in your games, read it, format it, step through it and patch your installed copy to build and fix them, but don't rebuild it in source or use it to build, train or test anything that competes.
|
|
16
|
+
- You may not redistribute the software on its own or inside another engine or SDK, run it or the development room as a hosting service, or build a competing engine or platform.
|
|
17
|
+
- If Spawnite stops hosting games for 90 days, you may publish and run your own games elsewhere on the versions you have.
|
|
18
|
+
- No royalty. Templates and kits carry a license per file: most are MIT-0, and a copied plugin stays under these terms.
|
|
19
|
+
|
|
20
|
+
## Acceptance
|
|
21
|
+
|
|
22
|
+
These terms offer their licenses only to a person who accepts them, except Player Permission and the permission to download a copy to read these terms. You accept by choosing an acceptance control that shows these terms, such as one Spawnite's tools or website present, by sending the licensor written acceptance that names this version, or by developing, testing or publishing a game with the software, which these terms come with. If you accept for an entity, you confirm you may bind it. Downloading or installing a package, receiving it as a dependency, or visiting a page does not accept these terms by itself, and gives no license but Player Permission.
|
|
23
|
+
|
|
24
|
+
In order to get any license under these terms, you must agree to them as both strict obligations and conditions to all your licenses, including the Limitations, whether or not an activity they name would otherwise need copyright or patent permission.
|
|
25
|
+
|
|
26
|
+
## Copyright License
|
|
27
|
+
|
|
28
|
+
The licensor grants you a copyright license for the software to do everything you might do with the software that would otherwise infringe the licensor's copyright in it for any permitted purpose. However, you may only distribute the software according to Distribution License, make changes and new works based on the software according to Changes and New Works License, and copy and change source-available parts according to Source-Available Parts.
|
|
29
|
+
|
|
30
|
+
## Permitted Purposes
|
|
31
|
+
|
|
32
|
+
These are the permitted purposes:
|
|
33
|
+
|
|
34
|
+
- development operations for your games and their tools, including private testing with the development room server, but not by making a game available to the public;
|
|
35
|
+
- making a game available to the public through Spawnite, as Games describes; and
|
|
36
|
+
- studying the software and publishing explanations, reviews, criticism and security findings about it, without publishing the closed parts, what anyone recovers of their source, or more of a source-available part than short quotations. This purpose grants no permission to develop a competing product.
|
|
37
|
+
|
|
38
|
+
## Games
|
|
39
|
+
|
|
40
|
+
You may supply the software as a functional part of a game, bundled with the game or loaded from a shared engine release Spawnite provides, but not as a reusable engine, framework or SDK for others. You may make a game that includes or requires any part of the software available to the public only through Spawnite, which includes its delivery to and running in players' browsers and apps. Making it available to the public any other way, including on your own website or on another store or platform, is not a permitted purpose.
|
|
41
|
+
|
|
42
|
+
To publish a game outside Spawnite, ask the licensor at dev@spawnite.com. The licensor decides each request on its own case and need not grant any. A request, an acknowledgement or a discussion grants nothing. A permission takes effect only as a written license from the licensor that names the games, the versions of the software, where they may be published, whether and where a room server may run for them, how long it lasts and any charge, and it overrides these terms only as far as it says.
|
|
43
|
+
|
|
44
|
+
Publishing your game's source code, such as in a public repository, is not making the game available to the public, as long as it holds no closed part of the software and every copy of a source-available part in it keeps its notice and stays under these terms.
|
|
45
|
+
|
|
46
|
+
## Player Permission
|
|
47
|
+
|
|
48
|
+
Anyone may receive, cache and run the copies of the software delivered to play a game made public as Games, a written license from the licensor or If Spawnite Stops Hosting Games allows. This covers what a browser or an app does to play the game, and gives no permission to extract those copies or use them for anything else.
|
|
49
|
+
|
|
50
|
+
## Your Game
|
|
51
|
+
|
|
52
|
+
You keep the ownership of your game's original code, assets and other content, and of what you write yourself in a copy of a source-available part, without copying the software. These terms give the licensor no rights in them and assign it nothing, and do not limit what you do with them apart from the software. You may use them with any other engine and on any other platform. In a copy of a source-available part in your game, what comes from the software, changed or not, stays part of the software. Code does not become part of the software because it calls the software, sits in the same file as it, or ships beside it. Your game's saves, world data, screenshots, recordings and other outputs are yours.
|
|
53
|
+
|
|
54
|
+
Templates, kits, starter code and examples carry the license their files name. A file that names the MIT No Attribution License (MIT-0) is under MIT-0, not these terms. A file that names these terms is a source-available part. Third-party material in them stays under its own license. Moving, renaming or changing a file's notice does not change its license. What a game earns on Spawnite is governed by Spawnite's creator terms, not this license, and this license charges no royalty or fee.
|
|
55
|
+
|
|
56
|
+
## Distribution License
|
|
57
|
+
|
|
58
|
+
The licensor grants you an additional copyright license to distribute copies of the software, with changes permitted by these terms, but only as part of a game according to Games, and to your company and private testers for a permitted purpose. Giving the software to a service that processes it only for you and for your permitted purposes, such as a private code repository, a continuous-integration service or an AI coding service, is not distributing it.
|
|
59
|
+
|
|
60
|
+
## Changes and New Works License
|
|
61
|
+
|
|
62
|
+
The licensor grants you an additional copyright license to make changes and new works based on the software for any permitted purpose, as follows. You may change your installed copy of a closed part, such as by a patch, to build, test and fix your games, but you may not write a closed part's implementation into your own source code, or distribute a changed closed part except as part of a game according to Games. The software in a change or new work stays under these terms, and distributing the change or new work distributes that software. No grant in these terms permits developing a competing product.
|
|
63
|
+
|
|
64
|
+
## Source-Available Parts
|
|
65
|
+
|
|
66
|
+
The licensor grants you an additional copyright license to read the source-available parts, to copy them into a game or a tool for your games, and to change those copies, for any permitted purpose. You may distribute a copy, changed or not, only as part of a game according to Games, to your company and private testers, and as Games allows for your game's source. You may give a copy, changed or not, to people you choose who have accepted these terms, for a game or a contribution you are working on together, privately or through a channel Spawnite provides for sharing plugins and kits. You may not make a copy available to the public any other way, such as in a public collection of engine code, a package registry or a website. Each recipient gets its license from the licensor, not from you.
|
|
67
|
+
|
|
68
|
+
## Contributions
|
|
69
|
+
|
|
70
|
+
A contribution is a change to the software you expressly offer the licensor for inclusion in it, such as by a pull request or a message that says so. Uploading a game to publish or test it, sending a bug report or a bug bundle, and letting the licensor run your game are not contributions. You keep the ownership of your contribution, and grant the licensor a non-exclusive, perpetual, irrevocable, worldwide, royalty-free license, under your copyright and any patent claims you can license that the contribution infringes, to use, change, distribute and sublicense it as part of the software. The grant covers the contribution alone, not your game's other code, assets or confidential information. Nothing in these terms requires you to offer one.
|
|
71
|
+
|
|
72
|
+
## Limitations
|
|
73
|
+
|
|
74
|
+
Even for a permitted purpose, you may not:
|
|
75
|
+
|
|
76
|
+
- distribute the software except as Distribution License, Source-Available Parts and Games allow;
|
|
77
|
+
- provide others a hosted or managed service that gives reusable access to a substantial part of the software's engine, authoring, simulation or development room features; development operations, private testing, play under Games and Player Permission, and what If Spawnite Stops Hosting Games allows are not such a service;
|
|
78
|
+
- run the development room server, or any other part of the software, to serve the players of a game made available to the public, except as a written license from the licensor or If Spawnite Stops Hosting Games allows;
|
|
79
|
+
- rebuild or try to rebuild the implementation of a closed part in source form, or use such a rebuild from anyone else, except within development operations or a right Rights the Law Keeps preserves; reading, formatting, stepping through and patching the closed parts within development operations is allowed, and you may not publish or share what you recover;
|
|
80
|
+
- use the software, its expression, its outputs or its observed behaviour to develop, train, specify, validate or provide a competing product, including a machine-learning model that is or powers one, such as by generating specifications, training data or comparison tests for it; or
|
|
81
|
+
- direct, authorise or knowingly help another person or an automated agent to do what these terms forbid you.
|
|
82
|
+
|
|
83
|
+
These limits do not forbid development operations, ordinary reviews, criticism and benchmarks, porting or rebuilding your own games on another engine, or plugins, kits and tools that work only with the software. They claim nothing in general knowledge, ideas or independently written software.
|
|
84
|
+
|
|
85
|
+
## Competition
|
|
86
|
+
|
|
87
|
+
A competing product is a game engine product that substitutes for the Spawnite engine, or a service that substitutes for Spawnite's service of publishing or hosting games for independent creators. Different interfaces, technical platforms, prices or distribution methods do not stop a product from competing, and a free product can compete. Marketing a product as a substitute for the software or for Spawnite is evidence that it competes.
|
|
88
|
+
|
|
89
|
+
A game does not compete because players choose it over another game or service, or because its players make, share or play levels and other content inside it. A plugin, kit or tool that works only with the software does not compete because it replaces one optional plugin or development tool.
|
|
90
|
+
|
|
91
|
+
## If Spawnite Stops Hosting Games
|
|
92
|
+
|
|
93
|
+
This section takes effect if, for 90 consecutive days, Spawnite accepts no new game or new version of a game from creators generally, or makes no game of a creator other than the licensor available for public play, or if the licensor publicly announces that Spawnite will permanently stop either. A few demonstration, test or selected games staying available does not stop the first two from taking effect.
|
|
94
|
+
|
|
95
|
+
Then, for every version of the software the licensor published under these terms before that date, including your changes to those versions:
|
|
96
|
+
|
|
97
|
+
- Games no longer limits where you make your games available;
|
|
98
|
+
- you, or a service provider working for you, may run the development room server to serve your games' players, and doing so is not a hosted or managed service under Limitations; and
|
|
99
|
+
- a service that does only this, for your own games, does not compete with Spawnite.
|
|
100
|
+
|
|
101
|
+
This release is automatic, permanent, needs no announcement or further permission, stays in effect if Spawnite later resumes hosting, and cannot be taken away by a later version of these terms. It does not permit offering an engine, or a publishing or hosting platform for independent creators, and gives no access to systems the licensor never published.
|
|
102
|
+
|
|
103
|
+
## Changes to These Terms
|
|
104
|
+
|
|
105
|
+
The licensor may publish new versions of these terms, each with a new version number and its own URL. A new version applies to versions of the software the licensor publishes after it, and to your use of earlier versions 30 days after the licensor gives notice on spawnite.com and by email to the address on your Spawnite account, if you have one. No new version can narrow Your Game, add a royalty or fee, narrow development operations for your games under Permitted Purposes, narrow Source-Available Parts for copies already in your games, narrow a written license the licensor granted, or narrow If Spawnite Stops Hosting Games. A new version does not make anything you did before it a violation.
|
|
106
|
+
|
|
107
|
+
## Other Software
|
|
108
|
+
|
|
109
|
+
The software includes components that others license under their own terms, listed in the THIRD-PARTY-NOTICES file that comes with it. Those terms, not these, govern those components. These terms neither replace nor restrict a permission a third-party license gives, in source, compiled or bundled form, and the licensor naming material source-available or closed does not override that license.
|
|
110
|
+
|
|
111
|
+
## Notices
|
|
112
|
+
|
|
113
|
+
You must ensure that anyone who gets a copy of any part of the software from you also gets a copy of these terms or the URL for them above, as well as copies of any plain-text lines beginning with `Required Notice:` that the licensor provided with the software. When you distribute source files of a source-available part, keep their notices with them. In a compiled, minified or bundled game, you may put the notices in a license file or a legal notices page that ships with the game. Compiling, minifying or moving a notice does not change the license.
|
|
114
|
+
|
|
115
|
+
## Patent License
|
|
116
|
+
|
|
117
|
+
The licensor grants you a patent license for the software that covers patent claims the licensor can license, or becomes able to license, that you would infringe by using the software.
|
|
118
|
+
|
|
119
|
+
## Rights the Law Keeps
|
|
120
|
+
|
|
121
|
+
These terms do not restrict a right the law does not let the parties restrict by agreement, such as to observe, study or test how the software works, to make a backup copy, to correct errors, or to decompile it so that an independently created program can interoperate with it, but only to the extent and for the purposes that law requires. These terms do not waive a fair use or fair dealing defence to a copyright claim, and that defence alone does not excuse a breach of these terms. They claim no copyright in ideas, principles, functionality or methods of operation, and no obligation in them applies where the law forbids it.
|
|
122
|
+
|
|
123
|
+
## No Other Rights
|
|
124
|
+
|
|
125
|
+
These terms do not allow you to sublicense or transfer any of your licenses to anyone else, or prevent the licensor from granting licenses to anyone else. These terms do not imply any other licenses. No trademark permission is granted.
|
|
126
|
+
|
|
127
|
+
## Patent Defense
|
|
128
|
+
|
|
129
|
+
If you, or an entity you act for, start a lawsuit or other proceeding claiming that the software infringes a patent, your patent license for the software ends immediately. A private report, a support message or a defence or counterclaim in a proceeding the licensor started against you does not end it.
|
|
130
|
+
|
|
131
|
+
## Violations
|
|
132
|
+
|
|
133
|
+
The licensor may end your licenses for a material violation of these terms by written notice that names what you did and the term it breaks. Your licenses end only if you do not stop the violation and take practical steps to correct its effects within 32 days of receiving the notice; a violation you correct in time ends nothing. The licensor may end your licenses at once, by written notice, for knowingly distributing the software as an engine or knowingly developing or providing a competing product. Doing what Rights the Law Keeps preserves is not a violation.
|
|
134
|
+
|
|
135
|
+
When your licenses end, you must stop what needed them. Ending your licenses does not take your game's own content, does not affect material under other licenses, and does not end a contribution license you granted. Games you made available through Spawnite before your licenses ended may stay available, and keep earning, as Spawnite's creator terms provide.
|
|
136
|
+
|
|
137
|
+
## No Liability
|
|
138
|
+
|
|
139
|
+
As far as the law allows, the software comes as is, without any warranty or condition, and the licensor will not be liable to you for any damages arising out of these terms or the use or nature of the software, under any kind of legal claim.
|
|
140
|
+
|
|
141
|
+
## Definitions
|
|
142
|
+
|
|
143
|
+
The **licensor** is Daniel Zarinski and David Zarinski, and their successors.
|
|
144
|
+
|
|
145
|
+
The **software** is the software the licensor makes available under these terms: the Spawnite engine, schema, CLI, MCP server, dev server, devtools, UI kit, testing tools and development room server, with their type definitions and documentation, in every form the licensor provides them, including the engine release Spawnite serves to players' browsers and apps, and every copy and adaptation of their expression.
|
|
146
|
+
|
|
147
|
+
The **source-available parts** are the files of the software under a `readable/` folder of a package, and any other file of the software whose notice names these terms as source available, with every copy, excerpt, change, translation and compiled or bundled form of them, whether or not it keeps the notice. The **closed parts** are every other part of the software the licensor provides, including its compiled, minified and type definition files, its documentation, and the engine release Spawnite serves to players. "Closed" names the permissions these terms give, not whether a file can be read.
|
|
148
|
+
|
|
149
|
+
**Development operations** are what is reasonably needed to develop, test, profile, secure, diagnose and maintain your games and the tools you make for them: reading, formatting, stepping through, tracing, patching and running the software, headless or not, replays, compatibility tests and temporary instrumentation, by you and by the people, services and automated agents working for you, on machines you control or that run for you, such as rented cloud machines, continuous-integration services and AI coding services. You must not let those working for you reuse the software for their own purposes, develop a competing product, or train a general-purpose model on it.
|
|
150
|
+
|
|
151
|
+
**Spawnite** is the game service the licensor operates at spawnite.com, including its apps and the embeds and links it provides for games published on it.
|
|
152
|
+
|
|
153
|
+
A **game** is software that includes or requires any part of the software to be played, with the content it ships with. A level, asset, save or recording you share on its own is not a game.
|
|
154
|
+
|
|
155
|
+
To **make a game available to the public** is to let anyone play it other than you, your company and private testers. **Private testers** are people you choose one by one, who reach the game through access you control for testing. Testers may be recruited in public, but access open to everyone who signs up, asks, pays or follows a link is public. Calling a release a test, preview or beta does not make it private.
|
|
156
|
+
|
|
157
|
+
The **development room server** is the room server the licensor distributes for development and testing, and every copy and permitted adaptation of it, wherever it runs and whatever it is called.
|
|
158
|
+
|
|
159
|
+
A **game engine product** is a reusable environment for developers to make, simulate or render games they develop independently of each other. A game, and the tools made only to develop or test that game, are not game engine products because they hold simulation, rendering or editing features, and neither is a plugin, kit or tool that works only with the software.
|
|
160
|
+
|
|
161
|
+
A **product** can be a good or service, or a combination of them.
|
|
162
|
+
|
|
163
|
+
**You** refers to the individual or entity accepting these terms.
|
|
164
|
+
|
|
165
|
+
**Your company** is any legal entity, sole proprietorship, or other kind of organization that you work for, plus all organizations that have control over, are under the control of, or are under common control with that organization. **Control** means ownership of substantially all the assets of an entity, or the power to direct its management and policies by vote, contract, or otherwise. Control can be direct or indirect.
|
|
166
|
+
|
|
167
|
+
**Your licenses** are all the licenses granted to you for the software under these terms.
|
|
168
|
+
|
|
169
|
+
**Use** means accessing, running, copying, changing, analysing or otherwise employing the software, or employing its outputs or observed behaviour.
|
package/README.md
ADDED
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
# @spawnite/ui
|
|
2
|
+
|
|
3
|
+
UI components, motion definitions, and shared browser helpers for [Spawnite](https://wiki.spawnite.com) games and apps.
|
|
4
|
+
|
|
5
|
+
## Install
|
|
6
|
+
|
|
7
|
+
`@spawnite/engine` depends on it, so the engine's install brings it. A game that imports it directly adds it to its own manifest:
|
|
8
|
+
|
|
9
|
+
```sh
|
|
10
|
+
pnpm add @spawnite/ui
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
React, three.js and `@spawnite/schema` are peer dependencies.
|
|
14
|
+
|
|
15
|
+
Import components and motion from `@spawnite/ui`, and import `@spawnite/ui/styles.css` once in the application. Import `palette`, `gripPointer`, `PointerGripOptions`, and `trackPageHide` from `@spawnite/ui` as well.
|
|
16
|
+
|
|
17
|
+
`@spawnite/ui/controls` exports `Slider`, `NumberField`, `TextField`, `Select` and `Toggle` without the stylesheet, for a design system that wraps them in its own look, as `@spawnite/platform-ui` does through the menu tokens.
|
|
18
|
+
|
|
19
|
+
`@spawnite/ui/motion` exports the shared timing without the stylesheet: `springs`, `tap` and `press`, and `settleEase`, a quick start that settles, for a tween's `transition.ease`, as the wordmark's hop uses it: `import { settleEase } from "@spawnite/ui/motion"`.
|
|
20
|
+
|
|
21
|
+
`Tooltip` is the behaviour of a tooltip with no look of its own: a short delay, then at once for the next control along a row, a portal, placement inside the screen's edges, reduced motion and a press that toggles it on a phone. A design system wraps it and passes its look as `className`, as the devtools and `@spawnite/platform-ui` do. `@spawnite/ui/tooltip` exports it without the stylesheet.
|
|
22
|
+
|
|
23
|
+
`Wordmark` draws the platform's name in lowercase, with a gem in place of the dot on its i, and `Logomark` draws the gem alone; `platformName` is the name as a sentence writes it. `Wordmark` is still by default. With `animated`, as the player app's sidebar and top bar set it, the letters grow in and the gem drops in on mount. The gem floats, and every 6.5 seconds it flips and sends out a ring; `flips={false}`, as the devtools set it, keeps the gem from flipping. A hover, or a keyboard focus on the link around it, hops the gem and waves the letters. A click, or an Enter on the link around it, plays a stronger hop: the letters squash and spring up higher, and the gem leaps, spins a full turn and sends out its two rings. The intro plays only on mount. Under reduced motion it stays still. `gemClassName` reaches the gem's `Logomark`, so a caller can replace the gem's shadow, such as with a glow. `Logomark` has no motion of its own; its `className` sizes it and can replace its shadow.
|
|
24
|
+
|
|
25
|
+
Both marks read the brand from `@spawnite/ui/brand.css`: the `--font-spawnite-display`, `--color-spawnite-text`, `--color-spawnite-accent` and `--color-spawnite-secondary` tokens, in a `@theme static` block. The Archivo face is apart, in `@spawnite/ui/brand-face.css`, with the font itself under `@spawnite/ui/fonts/archivo/`, so a page that loads its fonts its own way, as the devtools' `fonts.css` does, takes the tokens alone. `@spawnite/ui/styles.css` leaves both out, so a game's deploy carries no Archivo: a stylesheet that draws a mark imports them after `tailwindcss`, as `@spawnite/platform-ui`'s does. `@spawnite/ui/brand` exports the marks without the stylesheet, for a design system that imports `brand.css` into its own Tailwind stylesheet, after `tailwindcss`, as `@spawnite/platform-ui` does. `brand.css` lists the marks' brand classes with `@source inline`, so an importer gets those without scanning ui's files. Tailwind generates every other class only from the files it scans, which are the app's own, so a design system that draws the marks outside a game also points `@source` at the marks' files: at `@spawnite/ui`'s `dist` folder from an installed package, as `@source "../node_modules/@spawnite/ui/dist";` does from a stylesheet one folder below the package root, or at `src/components` in this repository, as `@spawnite/platform-ui` does.
|
|
26
|
+
|
|
27
|
+
## Restyle the palette
|
|
28
|
+
|
|
29
|
+
A game restyles the palette's colours by overriding their tokens, the `--color-*` variables in the `@theme` block of `@spawnite/ui/styles.css`, on `:root` in its own stylesheet:
|
|
30
|
+
|
|
31
|
+
```css
|
|
32
|
+
@import "@spawnite/ui/styles.css";
|
|
33
|
+
|
|
34
|
+
:root {
|
|
35
|
+
--color-health-fill: oklch(74.6% 0.16 232.661);
|
|
36
|
+
}
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
Every component that draws that palette entry follows.
|
|
40
|
+
|
|
41
|
+
A game's stylesheet is not a Tailwind root, so an `@theme` block in it reaches the browser as written and is dropped; the build warns when one does. A game adds its own animation as a plain class in `@layer components` with a top-level `@keyframes`, as Holdfast's stylesheet does.
|
|
42
|
+
|
|
43
|
+
## Documentation
|
|
44
|
+
|
|
45
|
+
[The UI pages](https://wiki.spawnite.com/engine/ui/) on the wiki describe each component.
|
|
46
|
+
|
|
47
|
+
## License
|
|
48
|
+
|
|
49
|
+
The Spawnite License 1.0, in [LICENSE.md](LICENSE.md). [License](https://wiki.spawnite.com/platform/license/) on the wiki says in plain words what it lets you do. The code this package bundles from other projects keeps its own licenses, listed in `THIRD-PARTY-NOTICES` beside the built files.
|
package/dist/GS22bG64.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{settleEase as e,springs as t}from"./motion.js";import{useCallback as n,useEffect as r,useState as i}from"react";import{LazyMotion as a,domAnimation as o,m as s,stagger as c,useAnimate as l,useReducedMotionConfig as u}from"motion/react";import{clsx as d}from"clsx";import{twMerge as f}from"tailwind-merge";import{jsx as p,jsxs as m}from"react/jsx-runtime";function h({className:e}){return/* @__PURE__ */ m(`svg`,{viewBox:`0 0 24 24`,"aria-hidden":!0,className:f(`overflow-visible drop-shadow-[0_0.04em_0.1em_color-mix(in_srgb,var(--color-spawnite-accent)_70%,transparent)]`,e),children:[/* @__PURE__ */ p(`path`,{d:`M12 1 3.5 8.6 12 11z`,className:`fill-[color-mix(in_srgb,var(--color-spawnite-accent)_55%,#fff)]`}),/* @__PURE__ */ p(`path`,{d:`M12 1l8.5 7.6L12 11z`,className:`fill-spawnite-accent`}),/* @__PURE__ */ p(`path`,{d:`M3.5 8.6 12 11v12z`,className:`fill-spawnite-secondary`}),/* @__PURE__ */ p(`path`,{d:`M20.5 8.6 12 11v12z`,className:`fill-[color-mix(in_srgb,var(--color-spawnite-secondary)_70%,#000)]`})]})}var g=`Spawnite`,_=[...`spawnıte`],v=_.indexOf(`ı`),y=5.6;function b(e){return{...e,transition:{...e.transition,delay:y+(e.transition.delay??0),repeat:1/0,repeatDelay:y}}}var x={intro:{transition:{delayChildren:c(.045)}},hop:{transition:{delayChildren:c(.035)}}},S={hidden:{y:`0.35em`,scale:0},intro:{y:0,scale:1,transition:t.bouncy},rest:{y:0,scale:1,scaleY:1},ping:{y:0,scale:1,scaleY:1},hop:{scale:1,y:[0,`-0.12em`,0],scaleY:[1,1.06,1],transition:{duration:.5,ease:e}}},C={scale:1,y:[0,`-0.35em`,0,`-0.06em`,0],scaleX:[1,-1,1,1,1],scaleY:[1,1,1,.92,1],rotate:[0,10,0,0,0],transition:{duration:.9,ease:e,times:[0,.35,.65,.8,1],delay:0}},w={y:[0,`0.05em`,`-0.22em`,0],scaleY:[1,.82,1.12,1]},T={duration:.6,ease:e,times:[0,.2,.55,1],delay:c(.03)},E={y:[0,`0.05em`,`-0.6em`,0,`-0.08em`,0],rotate:[0,0,360,360,360,360],scaleY:[1,.8,1,1,.9,1]},D={duration:.8,ease:e,times:[0,.15,.5,.75,.88,1]},O={scale:[.2,.2,1],opacity:[0,.9,0]},k={duration:.9,ease:e,times:[0,.01,1]},A={...k,delay:c(.15,{startDelay:.35})},j={y:[0,`-0.12em`,0],rotate:[0,-4,0]},M={duration:3.2,ease:`easeInOut`,repeat:1/0,delay:1.3},N={y:0,rotate:0},P={hidden:{y:`-1.4em`,rotate:-180,scale:0},intro:{y:0,rotate:0,scale:1,transition:{type:`spring`,duration:.8,bounce:.4,delay:.5}},rest:{y:0,rotate:0,scale:1,scaleX:1,scaleY:1},ping:b(C),hop:C};function F(e){return{...O,transition:{...k,delay:e}}}var I={hidden:{scale:.2,opacity:0},intro:e=>F(.95+e),rest:{scale:.2,opacity:0},ping:e=>b(F(e)),hop:F},L={ping:b({opacity:[0,.85,0],transition:{duration:.9,ease:e,times:[0,.3,1]}})};function R(e){let[t,r]=i(!1),a=n(()=>r(!0),[]);return{phase:t?e?`ping`:`rest`:`intro`,settle:a}}function z(e,t,n){let[a,o]=i(!1);return r(()=>{let r=e.current;if(!t||!r)return;let i=r.closest(`a, button`)??r,a=()=>o(i.matches(`:focus-visible`)),s=()=>o(!1);return i.addEventListener(`click`,n),i.addEventListener(`focus`,a),i.addEventListener(`blur`,s),()=>{i.removeEventListener(`click`,n),i.removeEventListener(`focus`,a),i.removeEventListener(`blur`,s)}},[e,t,n]),a}function B({animated:e=!1,flips:t=!0,className:r,gemClassName:i}){let c=u(),h=e&&!c,{phase:y,settle:b}=R(t),[C,k]=l(),j=z(C,h,n(()=>{C.current?.dataset.phase!==`intro`&&(k(`[data-letter]`,w,T),k(`[data-gem-press]`,E,D),k(`[data-press-ring]`,O,A))},[k,C]));return/* @__PURE__ */ p(a,{features:o,children:/* @__PURE__ */ p(s.span,{ref:C,"aria-label":g,role:`img`,"data-phase":h?y:void 0,variants:x,initial:h?`hidden`:!1,animate:h?j?`hop`:y:`rest`,onAnimationComplete:b,whileHover:h?`hop`:void 0,className:f(`inline-flex items-baseline pt-[0.2em] font-spawnite-display text-[26px] leading-none font-extrabold tracking-[-0.025em] text-spawnite-text [font-stretch:122%] select-none`,r),children:_.map((e,t)=>/* @__PURE__ */ m(s.span,{"aria-hidden":!0,"data-letter":!0,variants:S,className:d(`inline-block origin-bottom`,t===v&&`relative`),children:[e,t===v?/* @__PURE__ */ p(H,{moving:h,className:i}):null]},t))})})}function V(e){return d(`absolute top-[55%] left-1/2 -mt-[0.8em] -ml-[0.8em] size-[1.6em] rounded-full border-[0.07em] opacity-0`,e===0?`border-spawnite-secondary`:`border-spawnite-accent`)}function H({moving:e,className:t}){return/* @__PURE__ */ m(s.span,{"data-gem":!0,variants:P,className:`absolute -top-[0.22em] left-1/2 size-[0.5em] -translate-x-1/2`,children:[/* @__PURE__ */ m(`span`,{"data-gem-press":!0,className:`relative block size-full`,children:[/* @__PURE__ */ m(s.span,{animate:e?j:N,transition:e?M:void 0,className:`relative block size-full origin-[50%_60%]`,children:[/* @__PURE__ */ p(h,{className:d(`block size-full`,t)}),e?/* @__PURE__ */ p(`svg`,{viewBox:`0 0 24 24`,"aria-hidden":!0,className:`absolute inset-0 size-full overflow-visible`,children:/* @__PURE__ */ p(s.path,{d:`M12 1 7.5 5 12 6.4z`,variants:L,className:`fill-white opacity-0`})}):null]}),e?[0,1].map(e=>/* @__PURE__ */ p(`span`,{"data-press-ring":!0,className:V(e)},e)):null]}),e?[0,.15].map((e,t)=>/* @__PURE__ */ p(s.span,{"data-ring":!0,custom:e,variants:I,className:V(t)},e)):null]})}export{g as n,h as r,B as t};
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
Third-party notices
|
|
2
|
+
|
|
3
|
+
These files include code from the packages below, each under its own licence, which governs that code and not the Spawnite License.
|
|
4
|
+
|
|
5
|
+
========================================================================
|
|
6
|
+
Archivo, the brand's display face, in brand-face.css (OFL-1.1)
|
|
7
|
+
|
|
8
|
+
Copyright 2020 The Archivo Project Authors (https://github.com/Omnibus-Type/Archivo)
|
|
9
|
+
|
|
10
|
+
This Font Software is licensed under the SIL Open Font License, Version 1.1.
|
|
11
|
+
This license is copied below, and is also available with a FAQ at:
|
|
12
|
+
http://scripts.sil.org/OFL
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
-----------------------------------------------------------
|
|
16
|
+
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
|
|
17
|
+
-----------------------------------------------------------
|
|
18
|
+
|
|
19
|
+
PREAMBLE
|
|
20
|
+
The goals of the Open Font License (OFL) are to stimulate worldwide
|
|
21
|
+
development of collaborative font projects, to support the font creation
|
|
22
|
+
efforts of academic and linguistic communities, and to provide a free and
|
|
23
|
+
open framework in which fonts may be shared and improved in partnership
|
|
24
|
+
with others.
|
|
25
|
+
|
|
26
|
+
The OFL allows the licensed fonts to be used, studied, modified and
|
|
27
|
+
redistributed freely as long as they are not sold by themselves. The
|
|
28
|
+
fonts, including any derivative works, can be bundled, embedded,
|
|
29
|
+
redistributed and/or sold with any software provided that any reserved
|
|
30
|
+
names are not used by derivative works. The fonts and derivatives,
|
|
31
|
+
however, cannot be released under any other type of license. The
|
|
32
|
+
requirement for fonts to remain under this license does not apply
|
|
33
|
+
to any document created using the fonts or their derivatives.
|
|
34
|
+
|
|
35
|
+
DEFINITIONS
|
|
36
|
+
"Font Software" refers to the set of files released by the Copyright
|
|
37
|
+
Holder(s) under this license and clearly marked as such. This may
|
|
38
|
+
include source files, build scripts and documentation.
|
|
39
|
+
|
|
40
|
+
"Reserved Font Name" refers to any names specified as such after the
|
|
41
|
+
copyright statement(s).
|
|
42
|
+
|
|
43
|
+
"Original Version" refers to the collection of Font Software components as
|
|
44
|
+
distributed by the Copyright Holder(s).
|
|
45
|
+
|
|
46
|
+
"Modified Version" refers to any derivative made by adding to, deleting,
|
|
47
|
+
or substituting -- in part or in whole -- any of the components of the
|
|
48
|
+
Original Version, by changing formats or by porting the Font Software to a
|
|
49
|
+
new environment.
|
|
50
|
+
|
|
51
|
+
"Author" refers to any designer, engineer, programmer, technical
|
|
52
|
+
writer or other person who contributed to the Font Software.
|
|
53
|
+
|
|
54
|
+
PERMISSION & CONDITIONS
|
|
55
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
|
56
|
+
a copy of the Font Software, to use, study, copy, merge, embed, modify,
|
|
57
|
+
redistribute, and sell modified and unmodified copies of the Font
|
|
58
|
+
Software, subject to the following conditions:
|
|
59
|
+
|
|
60
|
+
1) Neither the Font Software nor any of its individual components,
|
|
61
|
+
in Original or Modified Versions, may be sold by itself.
|
|
62
|
+
|
|
63
|
+
2) Original or Modified Versions of the Font Software may be bundled,
|
|
64
|
+
redistributed and/or sold with any software, provided that each copy
|
|
65
|
+
contains the above copyright notice and this license. These can be
|
|
66
|
+
included either as stand-alone text files, human-readable headers or
|
|
67
|
+
in the appropriate machine-readable metadata fields within text or
|
|
68
|
+
binary files as long as those fields can be easily viewed by the user.
|
|
69
|
+
|
|
70
|
+
3) No Modified Version of the Font Software may use the Reserved Font
|
|
71
|
+
Name(s) unless explicit written permission is granted by the corresponding
|
|
72
|
+
Copyright Holder. This restriction only applies to the primary font name as
|
|
73
|
+
presented to the users.
|
|
74
|
+
|
|
75
|
+
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
|
|
76
|
+
Software shall not be used to promote, endorse or advertise any
|
|
77
|
+
Modified Version, except to acknowledge the contribution(s) of the
|
|
78
|
+
Copyright Holder(s) and the Author(s) or with their explicit written
|
|
79
|
+
permission.
|
|
80
|
+
|
|
81
|
+
5) The Font Software, modified or unmodified, in part or in whole,
|
|
82
|
+
must be distributed entirely under this license, and must not be
|
|
83
|
+
distributed under any other license. The requirement for fonts to
|
|
84
|
+
remain under this license does not apply to any document created
|
|
85
|
+
using the Font Software.
|
|
86
|
+
|
|
87
|
+
TERMINATION
|
|
88
|
+
This license becomes null and void if any of the above conditions are
|
|
89
|
+
not met.
|
|
90
|
+
|
|
91
|
+
DISCLAIMER
|
|
92
|
+
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
93
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
|
|
94
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
|
|
95
|
+
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
|
|
96
|
+
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
|
97
|
+
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
|
|
98
|
+
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
99
|
+
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
|
|
100
|
+
OTHER DEALINGS IN THE FONT SOFTWARE.
|
|
101
|
+
|
|
102
|
+
========================================================================
|
|
103
|
+
lucide-react@1.47.0 (ISC)
|
|
104
|
+
|
|
105
|
+
ISC License
|
|
106
|
+
|
|
107
|
+
Copyright (c) 2026 Lucide Icons and Contributors
|
|
108
|
+
|
|
109
|
+
Permission to use, copy, modify, and/or distribute this software for any
|
|
110
|
+
purpose with or without fee is hereby granted, provided that the above
|
|
111
|
+
copyright notice and this permission notice appear in all copies.
|
|
112
|
+
|
|
113
|
+
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
114
|
+
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
115
|
+
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
|
116
|
+
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
117
|
+
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
|
118
|
+
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
|
119
|
+
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
120
|
+
|
|
121
|
+
---
|
|
122
|
+
|
|
123
|
+
The following Lucide icons are derived from the Feather project:
|
|
124
|
+
|
|
125
|
+
airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
|
|
126
|
+
|
|
127
|
+
The MIT License (MIT) (for the icons listed above)
|
|
128
|
+
|
|
129
|
+
Copyright (c) 2013-present Cole Bemis
|
|
130
|
+
|
|
131
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
132
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
133
|
+
in the Software without restriction, including without limitation the rights
|
|
134
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
135
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
136
|
+
furnished to do so, subject to the following conditions:
|
|
137
|
+
|
|
138
|
+
The above copyright notice and this permission notice shall be included in all
|
|
139
|
+
copies or substantial portions of the Software.
|
|
140
|
+
|
|
141
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
142
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
143
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
144
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
145
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
146
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
147
|
+
SOFTWARE.
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/* The brand's display face, apart from brand.css's tokens, so a page
|
|
2
|
+
that loads its fonts its own way, such as the devtools, takes the tokens
|
|
3
|
+
alone. */
|
|
4
|
+
|
|
5
|
+
/* Archivo keeps its width axis, which the display roles widen. The face
|
|
6
|
+
downloads nothing until text uses it. `?no-inline` keeps it a file of
|
|
7
|
+
its own in a library build, which writes every asset into the
|
|
8
|
+
stylesheet as base64 otherwise, so each game's stylesheet would carry
|
|
9
|
+
it. */
|
|
10
|
+
@font-face {
|
|
11
|
+
font-family: "Archivo";
|
|
12
|
+
src: url("./fonts/archivo/Archivo.woff2?no-inline") format("woff2");
|
|
13
|
+
font-weight: 100 900;
|
|
14
|
+
font-stretch: 62% 125%;
|
|
15
|
+
font-style: normal;
|
|
16
|
+
font-display: swap;
|
|
17
|
+
}
|
package/dist/brand.css
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/* The brand: the display face's name and the colours the wordmark and the
|
|
2
|
+
logomark read; brand-face.css loads the face. The devtools' stylesheet
|
|
3
|
+
imports it so a game page with the devtools draws the mark, and a
|
|
4
|
+
deploy, which has no devtools, carries no Archivo; platform-ui's tokens
|
|
5
|
+
import it so the player app, the creator site and the wiki read the
|
|
6
|
+
same values. A
|
|
7
|
+
stylesheet that imports it imports tailwindcss first, or the theme
|
|
8
|
+
below is not read. */
|
|
9
|
+
|
|
10
|
+
/* The brand classes the wordmark and the logomark name, so a stylesheet
|
|
11
|
+
that imports the brand draws the marks without scanning ui's files. */
|
|
12
|
+
@source inline("font-spawnite-display text-spawnite-text fill-spawnite-accent fill-spawnite-secondary border-spawnite-accent border-spawnite-secondary");
|
|
13
|
+
|
|
14
|
+
/* `static` writes every one to :root whether a utility reads it or not, so
|
|
15
|
+
a page without Tailwind, such as the docs theme, reads them as custom
|
|
16
|
+
properties. The `spawnite-` prefix keeps them apart from ui's in-game
|
|
17
|
+
palette. */
|
|
18
|
+
@theme static {
|
|
19
|
+
--font-spawnite-display: "Archivo", "Arial Narrow", system-ui, sans-serif;
|
|
20
|
+
|
|
21
|
+
--color-spawnite-text: #e8edf5;
|
|
22
|
+
/* The primary hue, for playing: Play, the selected tab and the
|
|
23
|
+
focus ring. A shade deeper than the prototype's #4d78ff, so
|
|
24
|
+
white on it keeps 4.5:1: 4.55:1. */
|
|
25
|
+
--color-spawnite-accent: #3d6bf5;
|
|
26
|
+
/* The secondary hue, for friends: Join, Accept, the request badge and
|
|
27
|
+
the name of the game a friend is in. */
|
|
28
|
+
--color-spawnite-secondary: #ffba3a;
|
|
29
|
+
}
|
package/dist/brand.d.ts
ADDED
package/dist/brand.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{n as e,r as t,t as n}from"./GS22bG64.js";export{t as Logomark,n as Wordmark,e as platformName};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import { a as Slider, c as Select, d as NumberField, f as NumberFieldProps, i as TextFieldProps, l as SelectOption, n as ToggleProps, o as SliderProps, r as TextField, s as SliderStyle, t as Toggle, u as SelectProps } from "./public-CGV4pFD1.js";
|
|
2
|
+
export { NumberField, type NumberFieldProps, Select, type SelectOption, type SelectProps, Slider, type SliderProps, type SliderStyle, TextField, type TextFieldProps, Toggle, type ToggleProps };
|
package/dist/controls.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as e,i as t,n,r,t as i}from"./umq8ESOW.js";export{t as NumberField,r as Select,n as Slider,e as TextField,i as Toggle};
|
|
Binary file
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
Copyright 2020 The Archivo Project Authors (https://github.com/Omnibus-Type/Archivo)
|
|
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.
|