@kulupu-linku/sona 0.3.7 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (78) hide show
  1. package/dist/index-7uKIarVW.d.mts +1495 -0
  2. package/dist/index-N8h8E1s6.d.mts +398 -0
  3. package/dist/index-nmyNJa57.d.mts +300 -0
  4. package/dist/lib/v1/client.d.mts +1610 -0
  5. package/dist/lib/v1/client.mjs +8 -0
  6. package/dist/lib/v1/client.test.d.mts +30 -0
  7. package/dist/lib/v1/client.test.mjs +2 -0
  8. package/dist/lib/v1/index.d.mts +2 -0
  9. package/dist/lib/v1/index.mjs +137 -0
  10. package/dist/lib/v1/types.d.mts +2 -0
  11. package/dist/lib/v1/types.mjs +1 -0
  12. package/dist/lib/v1/utils.d.mts +26 -0
  13. package/dist/lib/v1/utils.mjs +35 -0
  14. package/dist/lib/v2/client.d.mts +1610 -0
  15. package/dist/lib/v2/client.mjs +8 -0
  16. package/dist/lib/v2/client.test.d.mts +35 -0
  17. package/dist/lib/v2/client.test.mjs +2 -0
  18. package/dist/lib/v2/index.d.mts +2 -0
  19. package/dist/lib/v2/index.mjs +192 -0
  20. package/dist/lib/v2/types.d.mts +2 -0
  21. package/dist/lib/v2/types.mjs +1 -0
  22. package/dist/lib/v2/utils.d.mts +44 -0
  23. package/dist/lib/v2/utils.mjs +38 -0
  24. package/dist/server/index.d.mts +2 -0
  25. package/dist/server/index.mjs +35 -0
  26. package/dist/server/utils.d.mts +27 -0
  27. package/dist/server/utils.mjs +31 -0
  28. package/dist/server/v1/index.d.mts +902 -0
  29. package/dist/server/v1/index.mjs +2 -0
  30. package/dist/server/v2/index.d.mts +1112 -0
  31. package/dist/server/v2/index.mjs +2 -0
  32. package/dist/server/versioning.d.mts +2019 -0
  33. package/dist/server/versioning.mjs +2 -0
  34. package/dist/v1-Da4_o5R1.mjs +261 -0
  35. package/generated/{commentary_translation.json → v1/commentary_translation.json} +1 -1
  36. package/generated/{definition_translation.json → v1/definition_translation.json} +1 -1
  37. package/generated/{etymology_translation.json → v1/etymology_translation.json} +2 -4
  38. package/generated/{fingerspelling.json → v1/fingerspelling.json} +5 -20
  39. package/generated/{fingerspelling_sign.json → v1/fingerspelling_sign.json} +4 -16
  40. package/generated/{font.json → v1/font.json} +1 -1
  41. package/generated/{fonts.json → v1/fonts.json} +1 -1
  42. package/generated/{icon_translation.json → v1/icon_translation.json} +1 -1
  43. package/generated/{languages.json → v1/languages.json} +4 -14
  44. package/generated/{parameters_translation.json → v1/parameters_translation.json} +1 -1
  45. package/generated/{sign.json → v1/sign.json} +3 -8
  46. package/generated/{signs.json → v1/signs.json} +4 -12
  47. package/generated/{sitelen_pona_translation.json → v1/sitelen_pona_translation.json} +1 -1
  48. package/generated/{word.json → v1/word.json} +6 -29
  49. package/generated/v2/fingerspelling.json +184 -0
  50. package/generated/v2/fingerspellings.json +198 -0
  51. package/generated/v2/font.json +164 -0
  52. package/generated/v2/fonts.json +178 -0
  53. package/generated/v2/glyph.json +186 -0
  54. package/generated/v2/glyphs.json +196 -0
  55. package/generated/v2/language.json +76 -0
  56. package/generated/v2/languages.json +86 -0
  57. package/generated/v2/sign.json +221 -0
  58. package/generated/v2/signs.json +235 -0
  59. package/generated/v2/word.json +449 -0
  60. package/generated/v2/words.json +459 -0
  61. package/package.json +66 -35
  62. package/dist/client.d.ts +0 -2
  63. package/dist/client.js +0 -172
  64. package/dist/index.d.ts +0 -2
  65. package/dist/index.js +0 -223
  66. package/dist/lib/client.d.ts +0 -743
  67. package/dist/lib/client.test.d.ts +0 -27
  68. package/dist/lib/index.d.ts +0 -962
  69. package/dist/lib/types.d.ts +0 -17
  70. package/dist/lib/utils.d.ts +0 -13
  71. package/dist/server/index.d.ts +0 -685
  72. package/dist/server/utils.d.ts +0 -19
  73. package/dist/server/v1/index.d.ts +0 -677
  74. package/dist/server/versioning.d.ts +0 -2423
  75. package/dist/utils-B3Jq5OVZ.js +0 -2899
  76. package/dist/utils.d.ts +0 -2
  77. package/dist/utils.js +0 -9
  78. package/generated/words.json +0 -315
@@ -0,0 +1,178 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "propertyNames": {
5
+ "$ref": "#/$defs/__schema0"
6
+ },
7
+ "additionalProperties": {
8
+ "$ref": "#/$defs/__schema1"
9
+ },
10
+ "description": "A raw data object containing all fonts data in Linku",
11
+ "$defs": {
12
+ "__schema0": {
13
+ "type": "string",
14
+ "minLength": 1,
15
+ "description": "A unique identifier for an object in Linku. Generally named after the object."
16
+ },
17
+ "__schema1": {
18
+ "type": "object",
19
+ "properties": {
20
+ "id": {
21
+ "$ref": "#/$defs/__schema2"
22
+ },
23
+ "author": {
24
+ "$ref": "#/$defs/__schema3"
25
+ },
26
+ "features": {
27
+ "$ref": "#/$defs/__schema5"
28
+ },
29
+ "filename": {
30
+ "$ref": "#/$defs/__schema7"
31
+ },
32
+ "last_updated": {
33
+ "$ref": "#/$defs/__schema8"
34
+ },
35
+ "license": {
36
+ "$ref": "#/$defs/__schema9"
37
+ },
38
+ "ligatures": {
39
+ "$ref": "#/$defs/__schema10"
40
+ },
41
+ "name": {
42
+ "$ref": "#/$defs/__schema11"
43
+ },
44
+ "style": {
45
+ "$ref": "#/$defs/__schema12"
46
+ },
47
+ "ucsur": {
48
+ "$ref": "#/$defs/__schema13"
49
+ },
50
+ "version": {
51
+ "$ref": "#/$defs/__schema14"
52
+ },
53
+ "writing_system": {
54
+ "$ref": "#/$defs/__schema15"
55
+ },
56
+ "links": {
57
+ "$ref": "#/$defs/__schema16"
58
+ }
59
+ },
60
+ "required": [
61
+ "id",
62
+ "author",
63
+ "features",
64
+ "filename",
65
+ "last_updated",
66
+ "license",
67
+ "ligatures",
68
+ "name",
69
+ "style",
70
+ "ucsur",
71
+ "version",
72
+ "writing_system",
73
+ "links"
74
+ ],
75
+ "additionalProperties": false,
76
+ "description": "Info on a font for Toki Pona"
77
+ },
78
+ "__schema2": {
79
+ "description": "The font's unique ID, identifying it among other fonts",
80
+ "$ref": "#/$defs/__schema0"
81
+ },
82
+ "__schema3": {
83
+ "type": "array",
84
+ "items": {
85
+ "$ref": "#/$defs/__schema4"
86
+ },
87
+ "description": "a list of this font's authors"
88
+ },
89
+ "__schema4": {
90
+ "type": "string",
91
+ "minLength": 1
92
+ },
93
+ "__schema5": {
94
+ "type": "array",
95
+ "items": {
96
+ "$ref": "#/$defs/__schema6"
97
+ },
98
+ "description": "a list of features this font supports"
99
+ },
100
+ "__schema6": {
101
+ "type": "string",
102
+ "minLength": 1
103
+ },
104
+ "__schema7": {
105
+ "type": "string",
106
+ "pattern": "^(?:.+\\.(ttf|otf|woff2|woff))?$",
107
+ "description": "the name of the file this font is stored in at https://github.com/lipu-linku/ijo"
108
+ },
109
+ "__schema8": {
110
+ "type": "string",
111
+ "pattern": "^(?:|(?<year>20\\d{2})(?:-(?<month>0[1-9]|1[0-2])(?:-(?<day>0[1-9]|[12]\\d|3[01]))?)?|(?<startYear>20\\d{2})-(?<endYear>20\\d{2}))$",
112
+ "description": "the rough date of this font's last update"
113
+ },
114
+ "__schema9": {
115
+ "type": "string",
116
+ "description": "an SPDX expression describing this font's license: https://spdx.org/licenses/"
117
+ },
118
+ "__schema10": {
119
+ "type": "boolean",
120
+ "description": "whether this font supports ligatures"
121
+ },
122
+ "__schema11": {
123
+ "type": "string",
124
+ "minLength": 1,
125
+ "description": "this font's name"
126
+ },
127
+ "__schema12": {
128
+ "type": "string",
129
+ "minLength": 1,
130
+ "description": "the general style of this font"
131
+ },
132
+ "__schema13": {
133
+ "type": "boolean",
134
+ "description": "whether this font conforms to the UCSUR standard: https://www.kreativekorp.com/ucsur/charts/sitelen.html"
135
+ },
136
+ "__schema14": {
137
+ "type": "string",
138
+ "description": "the current version of this font"
139
+ },
140
+ "__schema15": {
141
+ "type": "string",
142
+ "enum": [
143
+ "sitelen pona",
144
+ "sitelen sitelen",
145
+ "alphabet",
146
+ "syllabary",
147
+ "logography",
148
+ "tokiponido alphabet",
149
+ "tokiponido syllabary",
150
+ "tokiponido logography"
151
+ ],
152
+ "description": "the writing system this font uses as its script"
153
+ },
154
+ "__schema16": {
155
+ "type": "object",
156
+ "properties": {
157
+ "fontfile": {
158
+ "description": "a link to the font file published by the original author (not the mirror on the Linku Project's GitHub)",
159
+ "$ref": "#/$defs/__schema17"
160
+ },
161
+ "repo": {
162
+ "description": "a link to a web hosted repository of this font's source files (usually hosted on GitHub or GitLab)",
163
+ "$ref": "#/$defs/__schema17"
164
+ },
165
+ "webpage": {
166
+ "description": "a link to this font's home page, usually showcasing its features and usage/installation",
167
+ "$ref": "#/$defs/__schema17"
168
+ }
169
+ },
170
+ "additionalProperties": false
171
+ },
172
+ "__schema17": {
173
+ "type": "string",
174
+ "format": "uri",
175
+ "description": "A URL pointing to some external resource."
176
+ }
177
+ }
178
+ }
@@ -0,0 +1,186 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "id": {
6
+ "description": "A unique identifier for the glyph. Named after its primary word and numbered in order of coining or attestation.",
7
+ "$ref": "#/$defs/__schema0"
8
+ },
9
+ "word": {
10
+ "type": "string",
11
+ "minLength": 1,
12
+ "description": "The toki pona word which is written with this glyph."
13
+ },
14
+ "word_id": {
15
+ "description": "The Linku id of the toki pona word this glyph writes.",
16
+ "$ref": "#/$defs/__schema0"
17
+ },
18
+ "usage_category": {
19
+ "type": "string",
20
+ "enum": [
21
+ "core",
22
+ "common",
23
+ "uncommon",
24
+ "obscure",
25
+ "sandbox"
26
+ ],
27
+ "description": "The glyph's usage category, derived from the data of the annual Linku glyph survey."
28
+ },
29
+ "author": {
30
+ "type": "array",
31
+ "items": {
32
+ "$ref": "#/$defs/__schema1"
33
+ },
34
+ "description": "The name or names of those involved in creating this glyph."
35
+ },
36
+ "author_source": {
37
+ "description": "The source or origin of this glyph, often a URL.",
38
+ "$ref": "#/$defs/__schema2"
39
+ },
40
+ "creation_date": {
41
+ "type": "string",
42
+ "pattern": "^(?:|(?<year>20\\d{2})(?:-(?<month>0[1-9]|1[0-2])(?:-(?<day>0[1-9]|[12]\\d|3[01]))?)?|(?<startYear>20\\d{2})-(?<endYear>20\\d{2}))$",
43
+ "description": "When this glyph was created, to precision known"
44
+ },
45
+ "see_also": {
46
+ "type": "array",
47
+ "items": {
48
+ "$ref": "#/$defs/__schema0"
49
+ },
50
+ "description": "A list of related glyphs by ID"
51
+ },
52
+ "primary": {
53
+ "type": "boolean",
54
+ "description": "Whether this glyph is the main glyph used to write the toki pona word in `word`"
55
+ },
56
+ "parent_id": {
57
+ "description": "The primary glyph which this glyph is considered to share its form with.",
58
+ "$ref": "#/$defs/__schema3"
59
+ },
60
+ "deprecated": {
61
+ "type": "boolean",
62
+ "description": "Whether this glyph is considered deprecated by its author(s)."
63
+ },
64
+ "image": {
65
+ "description": "A URL to an image of the sitelen pona glyph.",
66
+ "$ref": "#/$defs/__schema4"
67
+ },
68
+ "svg": {
69
+ "description": "A URL to an SVG of the sitelen pona glyph.",
70
+ "$ref": "#/$defs/__schema4"
71
+ },
72
+ "ligature": {
73
+ "description": "The specific numerical ligature used to render this sitelen pona glyph.",
74
+ "$ref": "#/$defs/__schema5"
75
+ },
76
+ "alias_ligatures": {
77
+ "description": "All non-numerical ligature used to render this sitelen pona glyph.",
78
+ "$ref": "#/$defs/__schema6"
79
+ },
80
+ "ucsur": {
81
+ "description": "The UCSUR codepoint used to render this specific sitelen pona glyph.",
82
+ "$ref": "#/$defs/__schema7"
83
+ },
84
+ "usage": {
85
+ "type": "object",
86
+ "propertyNames": {
87
+ "$ref": "#/$defs/__schema8"
88
+ },
89
+ "additionalProperties": {
90
+ "$ref": "#/$defs/__schema9"
91
+ },
92
+ "description": "The percentage of respondents to the annual Linku word survey who report to use this glyph, by the date of the survey."
93
+ },
94
+ "translations": {
95
+ "type": "object",
96
+ "properties": {
97
+ "commentary": {
98
+ "type": "string",
99
+ "description": "Localized commentary on this glyph, such as history, clarifications, or trivia."
100
+ },
101
+ "etymology": {
102
+ "type": "string",
103
+ "description": "Localized etymology of this glyph."
104
+ },
105
+ "names": {
106
+ "type": "array",
107
+ "items": {
108
+ "$ref": "#/$defs/__schema10"
109
+ },
110
+ "description": "A list of names used to refer to this sitelen pona glyph"
111
+ }
112
+ },
113
+ "required": [
114
+ "commentary",
115
+ "etymology",
116
+ "names"
117
+ ],
118
+ "additionalProperties": false
119
+ }
120
+ },
121
+ "required": [
122
+ "id",
123
+ "word",
124
+ "word_id",
125
+ "usage_category",
126
+ "author",
127
+ "creation_date",
128
+ "see_also",
129
+ "primary",
130
+ "deprecated",
131
+ "usage",
132
+ "translations"
133
+ ],
134
+ "additionalProperties": false,
135
+ "$defs": {
136
+ "__schema0": {
137
+ "type": "string",
138
+ "minLength": 1,
139
+ "description": "A unique identifier for an object in Linku. Generally named after the object."
140
+ },
141
+ "__schema1": {
142
+ "type": "string",
143
+ "minLength": 1
144
+ },
145
+ "__schema2": {
146
+ "type": "string",
147
+ "description": "The source or origin of this object, often a URL."
148
+ },
149
+ "__schema3": {
150
+ "description": "The ID of an object related to this one.",
151
+ "$ref": "#/$defs/__schema0"
152
+ },
153
+ "__schema4": {
154
+ "type": "string",
155
+ "format": "uri",
156
+ "description": "A URL pointing to some external resource."
157
+ },
158
+ "__schema5": {
159
+ "type": "string",
160
+ "minLength": 1
161
+ },
162
+ "__schema6": {
163
+ "type": "array",
164
+ "items": {
165
+ "$ref": "#/$defs/__schema5"
166
+ }
167
+ },
168
+ "__schema7": {
169
+ "type": "string",
170
+ "pattern": "^U\\+[\\da-fA-F]{4,6}$"
171
+ },
172
+ "__schema8": {
173
+ "type": "string",
174
+ "pattern": "^(?<year>20\\d{2})(?:-(?<month>0[1-9]|1[0-2])(?:-(?<day>0[1-9]|[12]\\d|3[01]))?)?$"
175
+ },
176
+ "__schema9": {
177
+ "type": "number",
178
+ "minimum": 0,
179
+ "maximum": 100
180
+ },
181
+ "__schema10": {
182
+ "type": "string",
183
+ "description": "A name this sitelen pona glyph is known by."
184
+ }
185
+ }
186
+ }
@@ -0,0 +1,196 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "propertyNames": {
5
+ "$ref": "#/$defs/__schema0"
6
+ },
7
+ "additionalProperties": {
8
+ "$ref": "#/$defs/__schema1"
9
+ },
10
+ "description": "A raw data object containing metadata about Sitelen Pona glyphs",
11
+ "$defs": {
12
+ "__schema0": {
13
+ "type": "string",
14
+ "minLength": 1,
15
+ "description": "A unique identifier for an object in Linku. Generally named after the object."
16
+ },
17
+ "__schema1": {
18
+ "type": "object",
19
+ "properties": {
20
+ "id": {
21
+ "description": "A unique identifier for the glyph. Named after its primary word and numbered in order of coining or attestation.",
22
+ "$ref": "#/$defs/__schema0"
23
+ },
24
+ "word": {
25
+ "type": "string",
26
+ "minLength": 1,
27
+ "description": "The toki pona word which is written with this glyph."
28
+ },
29
+ "word_id": {
30
+ "description": "The Linku id of the toki pona word this glyph writes.",
31
+ "$ref": "#/$defs/__schema0"
32
+ },
33
+ "usage_category": {
34
+ "type": "string",
35
+ "enum": [
36
+ "core",
37
+ "common",
38
+ "uncommon",
39
+ "obscure",
40
+ "sandbox"
41
+ ],
42
+ "description": "The glyph's usage category, derived from the data of the annual Linku glyph survey."
43
+ },
44
+ "author": {
45
+ "type": "array",
46
+ "items": {
47
+ "$ref": "#/$defs/__schema2"
48
+ },
49
+ "description": "The name or names of those involved in creating this glyph."
50
+ },
51
+ "author_source": {
52
+ "description": "The source or origin of this glyph, often a URL.",
53
+ "$ref": "#/$defs/__schema3"
54
+ },
55
+ "creation_date": {
56
+ "type": "string",
57
+ "pattern": "^(?:|(?<year>20\\d{2})(?:-(?<month>0[1-9]|1[0-2])(?:-(?<day>0[1-9]|[12]\\d|3[01]))?)?|(?<startYear>20\\d{2})-(?<endYear>20\\d{2}))$",
58
+ "description": "When this glyph was created, to precision known"
59
+ },
60
+ "see_also": {
61
+ "type": "array",
62
+ "items": {
63
+ "$ref": "#/$defs/__schema0"
64
+ },
65
+ "description": "A list of related glyphs by ID"
66
+ },
67
+ "primary": {
68
+ "type": "boolean",
69
+ "description": "Whether this glyph is the main glyph used to write the toki pona word in `word`"
70
+ },
71
+ "parent_id": {
72
+ "description": "The primary glyph which this glyph is considered to share its form with.",
73
+ "$ref": "#/$defs/__schema4"
74
+ },
75
+ "deprecated": {
76
+ "type": "boolean",
77
+ "description": "Whether this glyph is considered deprecated by its author(s)."
78
+ },
79
+ "image": {
80
+ "description": "A URL to an image of the sitelen pona glyph.",
81
+ "$ref": "#/$defs/__schema5"
82
+ },
83
+ "svg": {
84
+ "description": "A URL to an SVG of the sitelen pona glyph.",
85
+ "$ref": "#/$defs/__schema5"
86
+ },
87
+ "ligature": {
88
+ "description": "The specific numerical ligature used to render this sitelen pona glyph.",
89
+ "$ref": "#/$defs/__schema6"
90
+ },
91
+ "alias_ligatures": {
92
+ "description": "All non-numerical ligature used to render this sitelen pona glyph.",
93
+ "$ref": "#/$defs/__schema7"
94
+ },
95
+ "ucsur": {
96
+ "description": "The UCSUR codepoint used to render this specific sitelen pona glyph.",
97
+ "$ref": "#/$defs/__schema8"
98
+ },
99
+ "usage": {
100
+ "type": "object",
101
+ "propertyNames": {
102
+ "$ref": "#/$defs/__schema9"
103
+ },
104
+ "additionalProperties": {
105
+ "$ref": "#/$defs/__schema10"
106
+ },
107
+ "description": "The percentage of respondents to the annual Linku word survey who report to use this glyph, by the date of the survey."
108
+ },
109
+ "translations": {
110
+ "type": "object",
111
+ "properties": {
112
+ "commentary": {
113
+ "type": "string",
114
+ "description": "Localized commentary on this glyph, such as history, clarifications, or trivia."
115
+ },
116
+ "etymology": {
117
+ "type": "string",
118
+ "description": "Localized etymology of this glyph."
119
+ },
120
+ "names": {
121
+ "type": "array",
122
+ "items": {
123
+ "$ref": "#/$defs/__schema11"
124
+ },
125
+ "description": "A list of names used to refer to this sitelen pona glyph"
126
+ }
127
+ },
128
+ "required": [
129
+ "commentary",
130
+ "etymology",
131
+ "names"
132
+ ],
133
+ "additionalProperties": false
134
+ }
135
+ },
136
+ "required": [
137
+ "id",
138
+ "word",
139
+ "word_id",
140
+ "usage_category",
141
+ "author",
142
+ "creation_date",
143
+ "see_also",
144
+ "primary",
145
+ "deprecated",
146
+ "usage",
147
+ "translations"
148
+ ],
149
+ "additionalProperties": false
150
+ },
151
+ "__schema2": {
152
+ "type": "string",
153
+ "minLength": 1
154
+ },
155
+ "__schema3": {
156
+ "type": "string",
157
+ "description": "The source or origin of this object, often a URL."
158
+ },
159
+ "__schema4": {
160
+ "description": "The ID of an object related to this one.",
161
+ "$ref": "#/$defs/__schema0"
162
+ },
163
+ "__schema5": {
164
+ "type": "string",
165
+ "format": "uri",
166
+ "description": "A URL pointing to some external resource."
167
+ },
168
+ "__schema6": {
169
+ "type": "string",
170
+ "minLength": 1
171
+ },
172
+ "__schema7": {
173
+ "type": "array",
174
+ "items": {
175
+ "$ref": "#/$defs/__schema6"
176
+ }
177
+ },
178
+ "__schema8": {
179
+ "type": "string",
180
+ "pattern": "^U\\+[\\da-fA-F]{4,6}$"
181
+ },
182
+ "__schema9": {
183
+ "type": "string",
184
+ "pattern": "^(?<year>20\\d{2})(?:-(?<month>0[1-9]|1[0-2])(?:-(?<day>0[1-9]|[12]\\d|3[01]))?)?$"
185
+ },
186
+ "__schema10": {
187
+ "type": "number",
188
+ "minimum": 0,
189
+ "maximum": 100
190
+ },
191
+ "__schema11": {
192
+ "type": "string",
193
+ "description": "A name this sitelen pona glyph is known by."
194
+ }
195
+ }
196
+ }
@@ -0,0 +1,76 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "id": {
6
+ "type": "string",
7
+ "minLength": 2,
8
+ "description": "The language's code in Crowdin. Usually its 2 or 3 letter code.",
9
+ "$ref": "#/$defs/__schema0"
10
+ },
11
+ "locale": {
12
+ "type": "string",
13
+ "minLength": 2,
14
+ "description": "The locale code corresponding to the language.",
15
+ "$ref": "#/$defs/__schema0"
16
+ },
17
+ "direction": {
18
+ "anyOf": [
19
+ {
20
+ "$ref": "#/$defs/__schema1"
21
+ },
22
+ {
23
+ "$ref": "#/$defs/__schema2"
24
+ }
25
+ ],
26
+ "description": "The direction of the language's script."
27
+ },
28
+ "name": {
29
+ "type": "object",
30
+ "properties": {
31
+ "en": {
32
+ "type": "string",
33
+ "description": "The name of the language in English."
34
+ },
35
+ "endonym": {
36
+ "type": "string",
37
+ "description": "The name of the language in that language. Prefer if available."
38
+ },
39
+ "tok": {
40
+ "description": "The name of the language in Toki Pona.",
41
+ "$ref": "#/$defs/__schema3"
42
+ }
43
+ },
44
+ "required": [
45
+ "en",
46
+ "endonym"
47
+ ],
48
+ "additionalProperties": false
49
+ }
50
+ },
51
+ "required": [
52
+ "id",
53
+ "locale",
54
+ "direction",
55
+ "name"
56
+ ],
57
+ "additionalProperties": false,
58
+ "$defs": {
59
+ "__schema0": {
60
+ "type": "string",
61
+ "minLength": 1,
62
+ "description": "A unique identifier for an object in Linku. Generally named after the object."
63
+ },
64
+ "__schema1": {
65
+ "type": "string",
66
+ "const": "ltr"
67
+ },
68
+ "__schema2": {
69
+ "type": "string",
70
+ "const": "rtl"
71
+ },
72
+ "__schema3": {
73
+ "type": "string"
74
+ }
75
+ }
76
+ }