canvas-globe-web-component 1.1.0 → 1.1.1

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 (3) hide show
  1. package/LICENSE.md +251 -251
  2. package/custom-elements.json +142 -142
  3. package/package.json +2 -2
package/LICENSE.md CHANGED
@@ -1,251 +1,251 @@
1
- # CanvasGlobe Software License Agreement
2
-
3
- **Version 2.0, effective September 16, 2026**
4
-
5
- This Commercial License Agreement ("Agreement") is between Harsh
6
- Jhunjhunuwala, an individual trading as Swiftools ("Licensor"), and the person
7
- or legal entity that downloads, installs, purchases, or uses the
8
- Software ("Customer"). Swiftools is an operating brand and is not a separate
9
- legal entity.
10
-
11
- By downloading, installing, purchasing, or using the Software,
12
- Customer accepts this Agreement. An individual accepting for an organization
13
- represents that they have authority to bind it. A Customer that does not agree
14
- must not use the Software.
15
-
16
- The applicable order, including its plan, price, developer count, product
17
- count, update period, and any negotiated terms, is the "Order". This Agreement
18
- and the Order form the complete commercial license for that Order.
19
-
20
- ## 1. Definitions
21
-
22
- - "Software" means the CanvasGlobe source code, compiled artifacts,
23
- documentation, and official updates supplied under an Order.
24
- - "Developer" means an employee or contractor who accesses the Software to
25
- develop or modify a Customer Product.
26
- - "Customer Product" means a website, application, service, or other product
27
- that Customer owns and controls and that is permitted by the Order.
28
- - "Internal Product" means a Customer Product used only by Customer and its
29
- personnel and not sold, licensed, supplied, or made available to third
30
- parties as a product or service.
31
- - "Redistributable Product" means an SDK, builder, template, component
32
- library, white-label product, installable product, code generator, or other
33
- product that supplies the Software or reusable copies of it to third
34
- parties.
35
- - "Update Period" means the period stated in the Order during which Customer
36
- may receive new Software versions and the included support.
37
-
38
- ## 2. Commercial license grant
39
-
40
- Subject to payment and compliance with this Agreement, Licensor grants
41
- Customer a non-exclusive, worldwide, non-transferable license to use,
42
- reproduce, modify, and incorporate the Software into the Customer Products
43
- permitted by the Order, and to distribute those Customer Products in
44
- proprietary form for Customer's end users.
45
-
46
- This commercial grant applies only within the Developer, Customer Product,
47
- entity and redistribution limits in the Order.
48
-
49
- For a perpetual Order, Customer may continue using and distributing versions
50
- received during the Update Period after that period ends. Access to later
51
- versions, support, and development exceeding the purchased scope requires a
52
- renewal or a new Order.
53
-
54
- ## 3. Standard plan scope
55
-
56
- Unless the Order expressly states different limits:
57
-
58
- - Solo permits one Developer and one Customer Product.
59
- - Team permits up to five Developers and five Customer Products.
60
- - Business permits up to twenty Developers and unlimited Internal Products
61
- owned and controlled by the purchasing legal entity.
62
- - OEM, Builder, and Enterprise rights exist only to the extent expressly
63
- stated in a negotiated Order.
64
-
65
- A production, staging, and development deployment of the same Customer
66
- Product count as one product. Separate offerings count separately. Customer
67
- may reassign a seat when a Developer permanently stops working on Customer's
68
- covered products, but may not rotate seats to avoid a Developer limit.
69
-
70
- ## 4. Restrictions
71
-
72
- Except where an OEM, Builder, or Enterprise Order expressly permits it,
73
- Customer must not:
74
-
75
- - sell, sublicense, publish, or distribute the Software on a standalone basis;
76
- - use or include the Software in a Redistributable Product;
77
- - provide the Software's source code to anyone other than authorized
78
- Developers working solely for Customer;
79
- - remove or obscure copyright, license, attribution, or third-party notices;
80
- - share or use a license key outside the Customer entity and purchased scope;
81
- - use one Order for an affiliate or other legal entity; or
82
- - represent CanvasGlobe or the Swiftools brand as Customer's own library or
83
- brand.
84
-
85
- Customer may make reasonable internal backup copies. Contractors may access
86
- the Software only for Customer, count toward the Developer limit, and must be
87
- bound by confidentiality and use restrictions at least as protective as this
88
- Agreement. Customer is responsible for their compliance.
89
-
90
- ## 5. License keys
91
-
92
- A valid commercial license key is required for the applicable use. The Software
93
- checks the key locally and does not contact a license server.
94
-
95
- Without a valid key, the Software may display watermarks, licensing
96
- notices, and console warnings, and later versions may limit functionality.
97
- Customer must keep license keys confidential and must report suspected
98
- disclosure or misuse. Keys associated with fraudulent, refunded, charged back,
99
- shared, revoked, or out-of-scope Orders are not licensed for use.
100
-
101
- ## 6. Ownership and feedback
102
-
103
- Licensor and its contributors retain all right, title, and interest in the
104
- Software. Customer retains all right, title, and interest in Customer's code,
105
- content, and data. No trademark or brand license is granted.
106
-
107
- If Customer voluntarily provides suggestions or feedback, Customer grants
108
- Licensor a perpetual, worldwide, non-exclusive, irrevocable, royalty-free
109
- license to use and incorporate that feedback without restriction or payment.
110
- This does not grant Licensor rights in Customer's confidential information or
111
- Customer Product.
112
-
113
- ## 7. Updates and support
114
-
115
- The Update Period and support level are stated in the Order. Unless the Order
116
- says otherwise, standard plans include twelve months of new versions and
117
- commercially reasonable email assistance for documented Software APIs.
118
- Support excludes custom implementation, unrelated application debugging,
119
- guaranteed response or resolution times, and support for versions or uses
120
- outside the Order.
121
-
122
- ## 8. Orders, payment, taxes, and refunds
123
-
124
- Kelviq acts as Merchant of Record for online purchases. Kelviq processes the
125
- payment, tax, invoice, and refund transaction under the terms shown at
126
- checkout. All fees are final and non-refundable,
127
- and no credits are provided, except where a refund or other remedy is required
128
- by applicable law or expressly stated in the Order or at checkout. Mandatory
129
- rights under applicable law are not excluded.
130
-
131
- A refund or charge reversal may end the commercial rights and access associated
132
- with the refunded Order to the extent permitted by the applicable checkout
133
- terms and law.
134
-
135
- ## 9. Privacy and order data
136
-
137
- Kelviq processes checkout and payment data under its own privacy terms.
138
- Licensor may receive order, contact, invoice, entitlement, and support
139
- information needed to fulfill the Order, provide support, prevent abuse, keep
140
- business records, and comply with law. Licensor's public privacy notice applies
141
- to information it receives and controls.
142
-
143
- The license-key check takes place locally in the Software. It does not add
144
- visitor analytics or a license-server request to Customer's Application and
145
- does not send visitor globe interactions or website activity to Licensor.
146
-
147
- Customer must not send secrets, regulated data, license keys, or personal data
148
- that is unnecessary for support.
149
-
150
- ## 10. Confidentiality
151
-
152
- Each party must use reasonable care to protect the other party's non-public
153
- information and may use it only to perform or enforce this Agreement.
154
- Confidential information does not include information that the receiving party
155
- can show was already lawfully known, independently developed without use of
156
- the information, publicly available without breach, or lawfully received from
157
- another source without a confidentiality duty.
158
-
159
- A party may disclose information when legally required if it gives prior
160
- notice where lawful and reasonably assists the other party in seeking
161
- protection.
162
-
163
- ## 11. Limited authority warranty and disclaimer
164
-
165
- Licensor warrants only that Licensor has authority to grant the commercial
166
- rights stated in this Agreement. Except for that express warranty, the
167
- Software, updates, support, and documentation are provided "as is" and "as
168
- available". To the maximum extent permitted by law, Licensor disclaims all
169
- other express, implied, and statutory warranties, including merchantability,
170
- fitness for a particular purpose, title, non-infringement, accuracy, security,
171
- and uninterrupted or error-free operation.
172
-
173
- Customer is responsible for evaluating the Software, maintaining backups,
174
- securing its systems, and confirming that its use satisfies applicable laws
175
- and requirements.
176
-
177
- ## 12. Limitation of liability
178
-
179
- To the maximum extent permitted by law, neither party is liable under this
180
- Agreement for lost profits, lost revenue, lost data, business interruption, or
181
- indirect, incidental, special, exemplary, punitive, or consequential damages,
182
- even if advised that those damages are possible.
183
-
184
- To the maximum extent permitted by law, each party's total aggregate liability
185
- arising from an Order will not exceed the fees paid for that Order. This cap
186
- does not limit payment obligations, unauthorized use or distribution of the
187
- Software, infringement or misuse of the other party's intellectual property,
188
- breach of confidentiality, fraud, willful misconduct, or liability that law
189
- does not permit a party to limit.
190
-
191
- ## 13. Indemnity
192
-
193
- No indemnity is included in a standard Solo, Team, or Business Order. Any
194
- indemnity must be expressly stated in a negotiated OEM or Enterprise Order.
195
-
196
- ## 14. Term and termination
197
-
198
- This Agreement begins when Customer accepts it for an Order. Either party may
199
- terminate the affected Order for a material breach that remains uncured thirty
200
- days after written notice. Licensor may suspend access or terminate immediately
201
- for nonpayment, fraudulent purchase, unlawful use, or material unauthorized
202
- distribution.
203
-
204
- On termination for Customer's breach, Customer must stop new use and
205
- distribution under the commercial license and remove the Software from future
206
- releases of Customer Products. Sections that by their nature should survive
207
- will survive, including ownership, confidentiality, disclaimers, liability
208
- limits, accrued payments, and general terms.
209
-
210
- ## 15. Earlier GPL releases
211
-
212
- CanvasGlobe versions through 0.1.6 were separately released under GNU GPLv3.
213
- Rights already received under those releases are not revoked by this Agreement.
214
- This Agreement governs CanvasGlobe 1.0 and later and does not provide access to
215
- future commercial versions under the earlier GPL terms.
216
-
217
- ## 16. General terms
218
-
219
- This Agreement is governed by the laws of India, without regard to conflict of
220
- laws rules. Courts with territorial jurisdiction over Licensor's principal
221
- place of business or residence in India will have exclusive jurisdiction,
222
- except that either party may seek urgent injunctive relief in any court with
223
- appropriate jurisdiction.
224
-
225
- Formal notices must be sent to [globe@swiftools.com](mailto:globe@swiftools.com)
226
- and to the email address recorded for Customer's Order. A notice is effective
227
- when receipt is acknowledged or the sending party receives an automated proof
228
- of successful delivery without a rejection notice.
229
-
230
- Customer may not assign or transfer this Agreement or an Order without
231
- Licensor's written consent, except as part of a merger or sale of substantially
232
- all of Customer's relevant business if the successor accepts this Agreement
233
- and is not Licensor's direct competitor. Licensor may assign this Agreement to
234
- a successor to CanvasGlobe or the relevant business.
235
-
236
- Neither party is responsible for delay caused by events outside its reasonable
237
- control, except for payment obligations. A failure to enforce a term is not a
238
- waiver. If a term is unenforceable, it will be limited only as necessary and
239
- the remaining terms continue in effect.
240
-
241
- A negotiated Order controls over this Agreement only where it expressly says
242
- that it overrides a named section. This Agreement controls over public pricing,
243
- FAQ, documentation, marketing, and support pages. Changes apply only when
244
- accepted for a new Order or renewal unless both parties agree otherwise in
245
- writing.
246
-
247
- This Agreement and the applicable Order are the complete agreement about the
248
- commercial license and replace prior discussions about that Order. Electronic
249
- acceptance and electronic records have the same effect as paper signatures.
250
-
251
- Questions may be sent to [globe@swiftools.com](mailto:globe@swiftools.com).
1
+ # CanvasGlobe Software License Agreement
2
+
3
+ **Version 2.0, effective September 16, 2026**
4
+
5
+ This Commercial License Agreement ("Agreement") is between Harsh
6
+ Jhunjhunuwala, an individual trading as Swiftools ("Licensor"), and the person
7
+ or legal entity that downloads, installs, purchases, or uses the
8
+ Software ("Customer"). Swiftools is an operating brand and is not a separate
9
+ legal entity.
10
+
11
+ By downloading, installing, purchasing, or using the Software,
12
+ Customer accepts this Agreement. An individual accepting for an organization
13
+ represents that they have authority to bind it. A Customer that does not agree
14
+ must not use the Software.
15
+
16
+ The applicable order, including its plan, price, developer count, product
17
+ count, update period, and any negotiated terms, is the "Order". This Agreement
18
+ and the Order form the complete commercial license for that Order.
19
+
20
+ ## 1. Definitions
21
+
22
+ - "Software" means the CanvasGlobe source code, compiled artifacts,
23
+ documentation, and official updates supplied under an Order.
24
+ - "Developer" means an employee or contractor who accesses the Software to
25
+ develop or modify a Customer Product.
26
+ - "Customer Product" means a website, application, service, or other product
27
+ that Customer owns and controls and that is permitted by the Order.
28
+ - "Internal Product" means a Customer Product used only by Customer and its
29
+ personnel and not sold, licensed, supplied, or made available to third
30
+ parties as a product or service.
31
+ - "Redistributable Product" means an SDK, builder, template, component
32
+ library, white-label product, installable product, code generator, or other
33
+ product that supplies the Software or reusable copies of it to third
34
+ parties.
35
+ - "Update Period" means the period stated in the Order during which Customer
36
+ may receive new Software versions and the included support.
37
+
38
+ ## 2. Commercial license grant
39
+
40
+ Subject to payment and compliance with this Agreement, Licensor grants
41
+ Customer a non-exclusive, worldwide, non-transferable license to use,
42
+ reproduce, modify, and incorporate the Software into the Customer Products
43
+ permitted by the Order, and to distribute those Customer Products in
44
+ proprietary form for Customer's end users.
45
+
46
+ This commercial grant applies only within the Developer, Customer Product,
47
+ entity and redistribution limits in the Order.
48
+
49
+ For a perpetual Order, Customer may continue using and distributing versions
50
+ received during the Update Period after that period ends. Access to later
51
+ versions, support, and development exceeding the purchased scope requires a
52
+ renewal or a new Order.
53
+
54
+ ## 3. Standard plan scope
55
+
56
+ Unless the Order expressly states different limits:
57
+
58
+ - Solo permits one Developer and one Customer Product.
59
+ - Team permits up to five Developers and five Customer Products.
60
+ - Business permits up to twenty Developers and unlimited Internal Products
61
+ owned and controlled by the purchasing legal entity.
62
+ - OEM, Builder, and Enterprise rights exist only to the extent expressly
63
+ stated in a negotiated Order.
64
+
65
+ A production, staging, and development deployment of the same Customer
66
+ Product count as one product. Separate offerings count separately. Customer
67
+ may reassign a seat when a Developer permanently stops working on Customer's
68
+ covered products, but may not rotate seats to avoid a Developer limit.
69
+
70
+ ## 4. Restrictions
71
+
72
+ Except where an OEM, Builder, or Enterprise Order expressly permits it,
73
+ Customer must not:
74
+
75
+ - sell, sublicense, publish, or distribute the Software on a standalone basis;
76
+ - use or include the Software in a Redistributable Product;
77
+ - provide the Software's source code to anyone other than authorized
78
+ Developers working solely for Customer;
79
+ - remove or obscure copyright, license, attribution, or third-party notices;
80
+ - share or use a license key outside the Customer entity and purchased scope;
81
+ - use one Order for an affiliate or other legal entity; or
82
+ - represent CanvasGlobe or the Swiftools brand as Customer's own library or
83
+ brand.
84
+
85
+ Customer may make reasonable internal backup copies. Contractors may access
86
+ the Software only for Customer, count toward the Developer limit, and must be
87
+ bound by confidentiality and use restrictions at least as protective as this
88
+ Agreement. Customer is responsible for their compliance.
89
+
90
+ ## 5. License keys
91
+
92
+ A valid commercial license key is required for the applicable use. The Software
93
+ checks the key locally and does not contact a license server.
94
+
95
+ Without a valid key, the Software may display watermarks, licensing
96
+ notices, and console warnings, and later versions may limit functionality.
97
+ Customer must keep license keys confidential and must report suspected
98
+ disclosure or misuse. Keys associated with fraudulent, refunded, charged back,
99
+ shared, revoked, or out-of-scope Orders are not licensed for use.
100
+
101
+ ## 6. Ownership and feedback
102
+
103
+ Licensor and its contributors retain all right, title, and interest in the
104
+ Software. Customer retains all right, title, and interest in Customer's code,
105
+ content, and data. No trademark or brand license is granted.
106
+
107
+ If Customer voluntarily provides suggestions or feedback, Customer grants
108
+ Licensor a perpetual, worldwide, non-exclusive, irrevocable, royalty-free
109
+ license to use and incorporate that feedback without restriction or payment.
110
+ This does not grant Licensor rights in Customer's confidential information or
111
+ Customer Product.
112
+
113
+ ## 7. Updates and support
114
+
115
+ The Update Period and support level are stated in the Order. Unless the Order
116
+ says otherwise, standard plans include twelve months of new versions and
117
+ commercially reasonable email assistance for documented Software APIs.
118
+ Support excludes custom implementation, unrelated application debugging,
119
+ guaranteed response or resolution times, and support for versions or uses
120
+ outside the Order.
121
+
122
+ ## 8. Orders, payment, taxes, and refunds
123
+
124
+ Kelviq acts as Merchant of Record for online purchases. Kelviq processes the
125
+ payment, tax, invoice, and refund transaction under the terms shown at
126
+ checkout. All fees are final and non-refundable,
127
+ and no credits are provided, except where a refund or other remedy is required
128
+ by applicable law or expressly stated in the Order or at checkout. Mandatory
129
+ rights under applicable law are not excluded.
130
+
131
+ A refund or charge reversal may end the commercial rights and access associated
132
+ with the refunded Order to the extent permitted by the applicable checkout
133
+ terms and law.
134
+
135
+ ## 9. Privacy and order data
136
+
137
+ Kelviq processes checkout and payment data under its own privacy terms.
138
+ Licensor may receive order, contact, invoice, entitlement, and support
139
+ information needed to fulfill the Order, provide support, prevent abuse, keep
140
+ business records, and comply with law. Licensor's public privacy notice applies
141
+ to information it receives and controls.
142
+
143
+ The license-key check takes place locally in the Software. It does not add
144
+ visitor analytics or a license-server request to Customer's Application and
145
+ does not send visitor globe interactions or website activity to Licensor.
146
+
147
+ Customer must not send secrets, regulated data, license keys, or personal data
148
+ that is unnecessary for support.
149
+
150
+ ## 10. Confidentiality
151
+
152
+ Each party must use reasonable care to protect the other party's non-public
153
+ information and may use it only to perform or enforce this Agreement.
154
+ Confidential information does not include information that the receiving party
155
+ can show was already lawfully known, independently developed without use of
156
+ the information, publicly available without breach, or lawfully received from
157
+ another source without a confidentiality duty.
158
+
159
+ A party may disclose information when legally required if it gives prior
160
+ notice where lawful and reasonably assists the other party in seeking
161
+ protection.
162
+
163
+ ## 11. Limited authority warranty and disclaimer
164
+
165
+ Licensor warrants only that Licensor has authority to grant the commercial
166
+ rights stated in this Agreement. Except for that express warranty, the
167
+ Software, updates, support, and documentation are provided "as is" and "as
168
+ available". To the maximum extent permitted by law, Licensor disclaims all
169
+ other express, implied, and statutory warranties, including merchantability,
170
+ fitness for a particular purpose, title, non-infringement, accuracy, security,
171
+ and uninterrupted or error-free operation.
172
+
173
+ Customer is responsible for evaluating the Software, maintaining backups,
174
+ securing its systems, and confirming that its use satisfies applicable laws
175
+ and requirements.
176
+
177
+ ## 12. Limitation of liability
178
+
179
+ To the maximum extent permitted by law, neither party is liable under this
180
+ Agreement for lost profits, lost revenue, lost data, business interruption, or
181
+ indirect, incidental, special, exemplary, punitive, or consequential damages,
182
+ even if advised that those damages are possible.
183
+
184
+ To the maximum extent permitted by law, each party's total aggregate liability
185
+ arising from an Order will not exceed the fees paid for that Order. This cap
186
+ does not limit payment obligations, unauthorized use or distribution of the
187
+ Software, infringement or misuse of the other party's intellectual property,
188
+ breach of confidentiality, fraud, willful misconduct, or liability that law
189
+ does not permit a party to limit.
190
+
191
+ ## 13. Indemnity
192
+
193
+ No indemnity is included in a standard Solo, Team, or Business Order. Any
194
+ indemnity must be expressly stated in a negotiated OEM or Enterprise Order.
195
+
196
+ ## 14. Term and termination
197
+
198
+ This Agreement begins when Customer accepts it for an Order. Either party may
199
+ terminate the affected Order for a material breach that remains uncured thirty
200
+ days after written notice. Licensor may suspend access or terminate immediately
201
+ for nonpayment, fraudulent purchase, unlawful use, or material unauthorized
202
+ distribution.
203
+
204
+ On termination for Customer's breach, Customer must stop new use and
205
+ distribution under the commercial license and remove the Software from future
206
+ releases of Customer Products. Sections that by their nature should survive
207
+ will survive, including ownership, confidentiality, disclaimers, liability
208
+ limits, accrued payments, and general terms.
209
+
210
+ ## 15. Earlier GPL releases
211
+
212
+ CanvasGlobe versions through 0.1.6 were separately released under GNU GPLv3.
213
+ Rights already received under those releases are not revoked by this Agreement.
214
+ This Agreement governs CanvasGlobe 1.0 and later and does not provide access to
215
+ future commercial versions under the earlier GPL terms.
216
+
217
+ ## 16. General terms
218
+
219
+ This Agreement is governed by the laws of India, without regard to conflict of
220
+ laws rules. Courts with territorial jurisdiction over Licensor's principal
221
+ place of business or residence in India will have exclusive jurisdiction,
222
+ except that either party may seek urgent injunctive relief in any court with
223
+ appropriate jurisdiction.
224
+
225
+ Formal notices must be sent to [globe@swiftools.com](mailto:globe@swiftools.com)
226
+ and to the email address recorded for Customer's Order. A notice is effective
227
+ when receipt is acknowledged or the sending party receives an automated proof
228
+ of successful delivery without a rejection notice.
229
+
230
+ Customer may not assign or transfer this Agreement or an Order without
231
+ Licensor's written consent, except as part of a merger or sale of substantially
232
+ all of Customer's relevant business if the successor accepts this Agreement
233
+ and is not Licensor's direct competitor. Licensor may assign this Agreement to
234
+ a successor to CanvasGlobe or the relevant business.
235
+
236
+ Neither party is responsible for delay caused by events outside its reasonable
237
+ control, except for payment obligations. A failure to enforce a term is not a
238
+ waiver. If a term is unenforceable, it will be limited only as necessary and
239
+ the remaining terms continue in effect.
240
+
241
+ A negotiated Order controls over this Agreement only where it expressly says
242
+ that it overrides a named section. This Agreement controls over public pricing,
243
+ FAQ, documentation, marketing, and support pages. Changes apply only when
244
+ accepted for a new Order or renewal unless both parties agree otherwise in
245
+ writing.
246
+
247
+ This Agreement and the applicable Order are the complete agreement about the
248
+ commercial license and replace prior discussions about that Order. Electronic
249
+ acceptance and electronic records have the same effect as paper signatures.
250
+
251
+ Questions may be sent to [globe@swiftools.com](mailto:globe@swiftools.com).
@@ -1,142 +1,142 @@
1
- {
2
- "schemaVersion": "2.1.0",
3
- "readme": "README.md",
4
- "modules": [
5
- {
6
- "kind": "javascript-module",
7
- "path": "src/element.js",
8
- "declarations": [
9
- {
10
- "kind": "class",
11
- "name": "GeoGlobeElement",
12
- "description": "Framework-independent interactive globe and flat world map rendered with Canvas 2D.",
13
- "customElement": true,
14
- "tagName": "geo-globe",
15
- "superclass": {
16
- "name": "HTMLElement",
17
- "package": "global:"
18
- },
19
- "members": [
20
- {
21
- "kind": "field",
22
- "name": "globe",
23
- "description": "Underlying GeoGlobe instance after the element is connected.",
24
- "type": { "text": "GeoGlobe | null" }
25
- },
26
- {
27
- "kind": "field",
28
- "name": "markers",
29
- "description": "Marker data displayed on the globe.",
30
- "type": { "text": "Marker[]" }
31
- },
32
- {
33
- "kind": "field",
34
- "name": "arcs",
35
- "description": "Great-circle route data displayed on the globe.",
36
- "type": { "text": "Arc[]" }
37
- },
38
- {
39
- "kind": "field",
40
- "name": "options",
41
- "description": "Applies options that cannot be represented as HTML attributes. Accepts Partial<GeoGlobeOptions>."
42
- },
43
- {
44
- "kind": "method",
45
- "name": "flyTo",
46
- "description": "Animates the view to a longitude and latitude.",
47
- "parameters": [
48
- { "name": "lon", "type": { "text": "number" } },
49
- { "name": "lat", "type": { "text": "number" } },
50
- { "name": "opts", "type": { "text": "FlyToOptions" }, "optional": true }
51
- ],
52
- "return": { "type": { "text": "this" } }
53
- },
54
- {
55
- "kind": "method",
56
- "name": "fitTo",
57
- "description": "Fits the view to geographic bounds.",
58
- "parameters": [
59
- { "name": "bounds", "type": { "text": "[number, number, number, number]" } },
60
- { "name": "opts", "type": { "text": "FlyToOptions & { padding?: number }" }, "optional": true }
61
- ],
62
- "return": { "type": { "text": "this" } }
63
- },
64
- {
65
- "kind": "method",
66
- "name": "snapshot",
67
- "description": "Returns a data URL snapshot of the current canvas.",
68
- "parameters": [
69
- { "name": "type", "type": { "text": "string" }, "optional": true },
70
- { "name": "quality", "type": { "text": "number" }, "optional": true }
71
- ],
72
- "return": { "type": { "text": "string | undefined" } }
73
- }
74
- ],
75
- "attributes": [
76
- { "name": "mode", "description": "Rendering mode.", "type": { "text": "'globe' | 'map'" }, "default": "globe" },
77
- { "name": "projection", "description": "Flat-map projection.", "type": { "text": "'equirectangular' | 'mercator' | 'naturalEarth'" }, "default": "equirectangular" },
78
- { "name": "theme", "description": "Built-in theme name or serialized theme object.", "type": { "text": "string" }, "default": "atlas" },
79
- { "name": "preset", "description": "Built-in visual preset.", "type": { "text": "string" } },
80
- { "name": "land-style", "description": "Land rendering style.", "type": { "text": "'fill' | 'dots' | 'outline' | 'glow' | 'none'" }, "default": "fill" },
81
- { "name": "marker-style", "description": "Marker rendering style.", "type": { "text": "string" } },
82
- { "name": "aria-label", "description": "Accessible label for the canvas.", "type": { "text": "string" } },
83
- { "name": "license-key", "description": "CanvasGlobe license key.", "type": { "text": "string" } },
84
- { "name": "auto-rotate", "description": "Enables automatic rotation.", "type": { "text": "boolean" } },
85
- { "name": "interactive", "description": "Enables pointer interaction.", "type": { "text": "boolean" }, "default": "true" },
86
- { "name": "keyboard", "description": "Enables keyboard controls.", "type": { "text": "boolean" }, "default": "true" },
87
- { "name": "graticule", "description": "Shows latitude and longitude grid lines.", "type": { "text": "boolean" } },
88
- { "name": "stars", "description": "Shows the star background.", "type": { "text": "boolean" } },
89
- { "name": "shade", "description": "Enables sphere shading.", "type": { "text": "boolean" } },
90
- { "name": "terminator", "description": "Shows the day and night terminator.", "type": { "text": "boolean" } },
91
- { "name": "cluster", "description": "Clusters nearby markers.", "type": { "text": "boolean" } },
92
- { "name": "tooltip", "description": "Enables the built-in tooltip.", "type": { "text": "boolean" } },
93
- { "name": "zoomable", "description": "Enables wheel and pinch zoom.", "type": { "text": "boolean" }, "default": "true" },
94
- { "name": "zoom", "description": "Initial zoom level.", "type": { "text": "number" } },
95
- { "name": "min-zoom", "description": "Minimum zoom level.", "type": { "text": "number" } },
96
- { "name": "max-zoom", "description": "Maximum zoom level.", "type": { "text": "number" } },
97
- { "name": "rotate-speed", "description": "Automatic rotation speed.", "type": { "text": "number" } },
98
- { "name": "marker-scale", "description": "Global marker scale.", "type": { "text": "number" } },
99
- { "name": "radius-ratio", "description": "Globe radius relative to its canvas.", "type": { "text": "number" } },
100
- { "name": "fps", "description": "Maximum animation frame rate.", "type": { "text": "number" } },
101
- { "name": "cluster-radius", "description": "Marker clustering radius in pixels.", "type": { "text": "number" } },
102
- { "name": "arc-lift", "description": "Default arc lift above the sphere.", "type": { "text": "number" } },
103
- { "name": "arc-speed", "description": "Default animated arc speed.", "type": { "text": "number" } },
104
- { "name": "lat", "description": "Initial centre latitude.", "type": { "text": "number" } },
105
- { "name": "lon", "description": "Initial centre longitude.", "type": { "text": "number" } },
106
- { "name": "orbits", "description": "Number of decorative orbit rings.", "type": { "text": "number" } },
107
- { "name": "dot-spacing", "description": "Dot land-style spacing in degrees.", "type": { "text": "number" } },
108
- { "name": "dot-size", "description": "Dot land-style radius in pixels.", "type": { "text": "number" } },
109
- { "name": "markers", "description": "Serialized marker array.", "type": { "text": "Marker[]" } },
110
- { "name": "arcs", "description": "Serialized route array.", "type": { "text": "Arc[]" } },
111
- { "name": "country-colors", "description": "Serialized country colour mapping.", "type": { "text": "Record<string, string>" } },
112
- { "name": "lat-range", "description": "Serialized latitude range.", "type": { "text": "[number, number]" } }
113
- ],
114
- "events": [
115
- { "name": "geo-hover", "description": "Fires when the hovered marker changes.", "type": { "text": "CustomEvent<{ marker: Marker | ClusterMarker | null; pos: { x: number; y: number } | null }>" } },
116
- { "name": "geo-click", "description": "Fires when a marker is clicked.", "type": { "text": "CustomEvent<{ marker: Marker | ClusterMarker; pos: { x: number; y: number } }>" } },
117
- { "name": "geo-country-hover", "description": "Fires when the hovered country changes.", "type": { "text": "CustomEvent<{ country: CountryShape | null; pos: { x: number; y: number } | null }>" } },
118
- { "name": "geo-country-click", "description": "Fires when a country is clicked.", "type": { "text": "CustomEvent<{ country: CountryShape; pos: { x: number; y: number } }>" } },
119
- { "name": "geo-render", "description": "Fires after CanvasGlobe renders a frame.", "type": { "text": "CustomEvent<{ globe: GeoGlobe }>" } }
120
- ]
121
- }
122
- ],
123
- "exports": [
124
- {
125
- "kind": "js",
126
- "name": "GeoGlobeElement",
127
- "declaration": { "name": "GeoGlobeElement", "module": "src/element.js" }
128
- },
129
- {
130
- "kind": "js",
131
- "name": "defineGeoGlobe",
132
- "declaration": { "name": "defineGeoGlobe", "module": "src/element.js" }
133
- },
134
- {
135
- "kind": "custom-element-definition",
136
- "name": "geo-globe",
137
- "declaration": { "name": "GeoGlobeElement", "module": "src/element.js" }
138
- }
139
- ]
140
- }
141
- ]
142
- }
1
+ {
2
+ "schemaVersion": "2.1.0",
3
+ "readme": "README.md",
4
+ "modules": [
5
+ {
6
+ "kind": "javascript-module",
7
+ "path": "src/element.js",
8
+ "declarations": [
9
+ {
10
+ "kind": "class",
11
+ "name": "GeoGlobeElement",
12
+ "description": "Framework-independent interactive globe and flat world map rendered with Canvas 2D.",
13
+ "customElement": true,
14
+ "tagName": "geo-globe",
15
+ "superclass": {
16
+ "name": "HTMLElement",
17
+ "package": "global:"
18
+ },
19
+ "members": [
20
+ {
21
+ "kind": "field",
22
+ "name": "globe",
23
+ "description": "Underlying GeoGlobe instance after the element is connected.",
24
+ "type": { "text": "GeoGlobe | null" }
25
+ },
26
+ {
27
+ "kind": "field",
28
+ "name": "markers",
29
+ "description": "Marker data displayed on the globe.",
30
+ "type": { "text": "Marker[]" }
31
+ },
32
+ {
33
+ "kind": "field",
34
+ "name": "arcs",
35
+ "description": "Great-circle route data displayed on the globe.",
36
+ "type": { "text": "Arc[]" }
37
+ },
38
+ {
39
+ "kind": "field",
40
+ "name": "options",
41
+ "description": "Applies options that cannot be represented as HTML attributes. Accepts Partial<GeoGlobeOptions>."
42
+ },
43
+ {
44
+ "kind": "method",
45
+ "name": "flyTo",
46
+ "description": "Animates the view to a longitude and latitude.",
47
+ "parameters": [
48
+ { "name": "lon", "type": { "text": "number" } },
49
+ { "name": "lat", "type": { "text": "number" } },
50
+ { "name": "opts", "type": { "text": "FlyToOptions" }, "optional": true }
51
+ ],
52
+ "return": { "type": { "text": "this" } }
53
+ },
54
+ {
55
+ "kind": "method",
56
+ "name": "fitTo",
57
+ "description": "Fits the view to geographic bounds.",
58
+ "parameters": [
59
+ { "name": "bounds", "type": { "text": "[number, number, number, number]" } },
60
+ { "name": "opts", "type": { "text": "FlyToOptions & { padding?: number }" }, "optional": true }
61
+ ],
62
+ "return": { "type": { "text": "this" } }
63
+ },
64
+ {
65
+ "kind": "method",
66
+ "name": "snapshot",
67
+ "description": "Returns a data URL snapshot of the current canvas.",
68
+ "parameters": [
69
+ { "name": "type", "type": { "text": "string" }, "optional": true },
70
+ { "name": "quality", "type": { "text": "number" }, "optional": true }
71
+ ],
72
+ "return": { "type": { "text": "string | undefined" } }
73
+ }
74
+ ],
75
+ "attributes": [
76
+ { "name": "mode", "description": "Rendering mode.", "type": { "text": "'globe' | 'map'" }, "default": "globe" },
77
+ { "name": "projection", "description": "Flat-map projection.", "type": { "text": "'equirectangular' | 'mercator' | 'naturalEarth'" }, "default": "equirectangular" },
78
+ { "name": "theme", "description": "Built-in theme name or serialized theme object.", "type": { "text": "string" }, "default": "atlas" },
79
+ { "name": "preset", "description": "Built-in visual preset.", "type": { "text": "string" } },
80
+ { "name": "land-style", "description": "Land rendering style.", "type": { "text": "'fill' | 'dots' | 'outline' | 'glow' | 'none'" }, "default": "fill" },
81
+ { "name": "marker-style", "description": "Marker rendering style.", "type": { "text": "string" } },
82
+ { "name": "aria-label", "description": "Accessible label for the canvas.", "type": { "text": "string" } },
83
+ { "name": "license-key", "description": "CanvasGlobe license key.", "type": { "text": "string" } },
84
+ { "name": "auto-rotate", "description": "Enables automatic rotation.", "type": { "text": "boolean" } },
85
+ { "name": "interactive", "description": "Enables pointer interaction.", "type": { "text": "boolean" }, "default": "true" },
86
+ { "name": "keyboard", "description": "Enables keyboard controls.", "type": { "text": "boolean" }, "default": "true" },
87
+ { "name": "graticule", "description": "Shows latitude and longitude grid lines.", "type": { "text": "boolean" } },
88
+ { "name": "stars", "description": "Shows the star background.", "type": { "text": "boolean" } },
89
+ { "name": "shade", "description": "Enables sphere shading.", "type": { "text": "boolean" } },
90
+ { "name": "terminator", "description": "Shows the day and night terminator.", "type": { "text": "boolean" } },
91
+ { "name": "cluster", "description": "Clusters nearby markers.", "type": { "text": "boolean" } },
92
+ { "name": "tooltip", "description": "Enables the built-in tooltip.", "type": { "text": "boolean" } },
93
+ { "name": "zoomable", "description": "Enables wheel and pinch zoom.", "type": { "text": "boolean" }, "default": "true" },
94
+ { "name": "zoom", "description": "Initial zoom level.", "type": { "text": "number" } },
95
+ { "name": "min-zoom", "description": "Minimum zoom level.", "type": { "text": "number" } },
96
+ { "name": "max-zoom", "description": "Maximum zoom level.", "type": { "text": "number" } },
97
+ { "name": "rotate-speed", "description": "Automatic rotation speed.", "type": { "text": "number" } },
98
+ { "name": "marker-scale", "description": "Global marker scale.", "type": { "text": "number" } },
99
+ { "name": "radius-ratio", "description": "Globe radius relative to its canvas.", "type": { "text": "number" } },
100
+ { "name": "fps", "description": "Maximum animation frame rate.", "type": { "text": "number" } },
101
+ { "name": "cluster-radius", "description": "Marker clustering radius in pixels.", "type": { "text": "number" } },
102
+ { "name": "arc-lift", "description": "Default arc lift above the sphere.", "type": { "text": "number" } },
103
+ { "name": "arc-speed", "description": "Default animated arc speed.", "type": { "text": "number" } },
104
+ { "name": "lat", "description": "Initial centre latitude.", "type": { "text": "number" } },
105
+ { "name": "lon", "description": "Initial centre longitude.", "type": { "text": "number" } },
106
+ { "name": "orbits", "description": "Number of decorative orbit rings.", "type": { "text": "number" } },
107
+ { "name": "dot-spacing", "description": "Dot land-style spacing in degrees.", "type": { "text": "number" } },
108
+ { "name": "dot-size", "description": "Dot land-style radius in pixels.", "type": { "text": "number" } },
109
+ { "name": "markers", "description": "Serialized marker array.", "type": { "text": "Marker[]" } },
110
+ { "name": "arcs", "description": "Serialized route array.", "type": { "text": "Arc[]" } },
111
+ { "name": "country-colors", "description": "Serialized country colour mapping.", "type": { "text": "Record<string, string>" } },
112
+ { "name": "lat-range", "description": "Serialized latitude range.", "type": { "text": "[number, number]" } }
113
+ ],
114
+ "events": [
115
+ { "name": "geo-hover", "description": "Fires when the hovered marker changes.", "type": { "text": "CustomEvent<{ marker: Marker | ClusterMarker | null; pos: { x: number; y: number } | null }>" } },
116
+ { "name": "geo-click", "description": "Fires when a marker is clicked.", "type": { "text": "CustomEvent<{ marker: Marker | ClusterMarker; pos: { x: number; y: number } }>" } },
117
+ { "name": "geo-country-hover", "description": "Fires when the hovered country changes.", "type": { "text": "CustomEvent<{ country: CountryShape | null; pos: { x: number; y: number } | null }>" } },
118
+ { "name": "geo-country-click", "description": "Fires when a country is clicked.", "type": { "text": "CustomEvent<{ country: CountryShape; pos: { x: number; y: number } }>" } },
119
+ { "name": "geo-render", "description": "Fires after CanvasGlobe renders a frame.", "type": { "text": "CustomEvent<{ globe: GeoGlobe }>" } }
120
+ ]
121
+ }
122
+ ],
123
+ "exports": [
124
+ {
125
+ "kind": "js",
126
+ "name": "GeoGlobeElement",
127
+ "declaration": { "name": "GeoGlobeElement", "module": "src/element.js" }
128
+ },
129
+ {
130
+ "kind": "js",
131
+ "name": "defineGeoGlobe",
132
+ "declaration": { "name": "defineGeoGlobe", "module": "src/element.js" }
133
+ },
134
+ {
135
+ "kind": "custom-element-definition",
136
+ "name": "geo-globe",
137
+ "declaration": { "name": "GeoGlobeElement", "module": "src/element.js" }
138
+ }
139
+ ]
140
+ }
141
+ ]
142
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "canvas-globe-web-component",
3
- "version": "1.1.0",
3
+ "version": "1.1.1",
4
4
  "description": "Web Component for interactive 3D globes and world maps rendered with Canvas 2D.",
5
5
  "license": "SEE LICENSE IN LICENSE.md",
6
6
  "author": {
@@ -37,7 +37,7 @@
37
37
  ],
38
38
  "sideEffects": true,
39
39
  "dependencies": {
40
- "canvas-globe": "^1.1.0"
40
+ "canvas-globe": "^1.1.1"
41
41
  },
42
42
  "publishConfig": {
43
43
  "access": "public"