@spacemolt/lib 16.0.0 → 16.2.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.
- package/COMMANDS.md +7 -3
- package/dist/generated/actions.gen.d.ts +2 -2
- package/dist/generated/commands.gen.d.ts +30 -4
- package/dist/generated/notifications.gen.d.ts +4 -3
- package/dist/generated/openapi/types.gen.d.ts +286 -22
- package/dist/index.js +51 -5
- package/dist/index.js.map +5 -5
- package/package.json +1 -1
|
@@ -921,6 +921,10 @@ export type Base = {
|
|
|
921
921
|
*/
|
|
922
922
|
wrecked_tick?: number;
|
|
923
923
|
};
|
|
924
|
+
/**
|
|
925
|
+
* Custom banned item IDs for player-owned stations and mobile bases. Null uses default rules; an empty array allows all items. Empire customs remain unchanged.
|
|
926
|
+
*/
|
|
927
|
+
contraband_items?: Array<string> | null;
|
|
924
928
|
description?: string;
|
|
925
929
|
empire?: string;
|
|
926
930
|
facilities?: Array<string>;
|
|
@@ -1662,6 +1666,14 @@ export type BulkSellOrderResult = {
|
|
|
1662
1666
|
returned_to_storage?: number;
|
|
1663
1667
|
self_clear_refund?: number;
|
|
1664
1668
|
self_cleared?: number;
|
|
1669
|
+
/**
|
|
1670
|
+
* True when that smuggling XP award raised your Smuggling skill level. Omitted means false.
|
|
1671
|
+
*/
|
|
1672
|
+
smuggling_level_up?: boolean;
|
|
1673
|
+
/**
|
|
1674
|
+
* Smuggling skill XP credited for this order's instant fills (base rate 1 XP per 100 credits earned). Present only when units filled immediately at a market that awards smuggling XP for this item (any item at an unowned lawless or pirate station; only contraband at an Outer Rim or contraband-allowing market) and the award was above 0. Omitted means no smuggling XP.
|
|
1675
|
+
*/
|
|
1676
|
+
smuggling_xp?: number;
|
|
1665
1677
|
success: boolean;
|
|
1666
1678
|
total_earned?: number;
|
|
1667
1679
|
};
|
|
@@ -2730,7 +2742,13 @@ export type CreateSellOrderResponse = {
|
|
|
2730
2742
|
returned_to_storage?: number;
|
|
2731
2743
|
self_clear_refund?: number;
|
|
2732
2744
|
self_cleared?: number;
|
|
2745
|
+
/**
|
|
2746
|
+
* True when that smuggling XP award raised your Smuggling skill level. Omitted means false.
|
|
2747
|
+
*/
|
|
2733
2748
|
smuggling_level_up?: boolean;
|
|
2749
|
+
/**
|
|
2750
|
+
* Smuggling skill XP credited for this order's instant fills (base rate 1 XP per 100 credits earned). Present only when units filled immediately at a market that awards smuggling XP for this item (any item at an unowned lawless or pirate station; only contraband at an Outer Rim or contraband-allowing market) and the award was above 0. Omitted means no smuggling XP.
|
|
2751
|
+
*/
|
|
2734
2752
|
smuggling_xp?: number;
|
|
2735
2753
|
total_earned?: number;
|
|
2736
2754
|
};
|
|
@@ -2936,8 +2954,6 @@ export type DockResponse = {
|
|
|
2936
2954
|
gifts_count?: number;
|
|
2937
2955
|
gifts_note?: string;
|
|
2938
2956
|
gifts_truncated?: boolean;
|
|
2939
|
-
messages?: Array<StorageMessage>;
|
|
2940
|
-
messages_count?: number;
|
|
2941
2957
|
open_orders?: Array<OpenOrderSummary>;
|
|
2942
2958
|
open_orders_count?: number;
|
|
2943
2959
|
open_orders_truncated?: boolean;
|
|
@@ -3517,6 +3533,10 @@ export type FacilityListForSaleResponse = {
|
|
|
3517
3533
|
};
|
|
3518
3534
|
export type FacilityListResponse = {
|
|
3519
3535
|
action: 'list';
|
|
3536
|
+
/**
|
|
3537
|
+
* Facilities here owned by an allied faction that has turned on ally_facility_access for your faction. You queue jobs on them free: production.rental_fee_per_run is 0 and no output price is quoted, even when the facility is also publicly rentable to strangers. Your jobs still queue behind the owner's own work like a renter's. An ally facility is listed here and never under public_facilities. Omitted when there are none.
|
|
3538
|
+
*/
|
|
3539
|
+
ally_facilities?: Array<FacilityEntry>;
|
|
3520
3540
|
/**
|
|
3521
3541
|
* Canonical ID of the station containing every listed facility and both per-station rent summaries.
|
|
3522
3542
|
*/
|
|
@@ -3620,6 +3640,9 @@ export type FacilityProduction = {
|
|
|
3620
3640
|
queued_items: number;
|
|
3621
3641
|
queued_runs: number;
|
|
3622
3642
|
recipe?: string;
|
|
3643
|
+
/**
|
|
3644
|
+
* Credits charged per run to queue a job here as an outside renter. Present for publicly rentable facilities, including your own and your faction's so you can confirm the price you set. Omitted (0) when the facility is not publicly rentable, when the owner rents it out free, and on every ally_facilities entry, because an allied grant lets you queue there free.
|
|
3645
|
+
*/
|
|
3623
3646
|
rental_fee_per_run?: number;
|
|
3624
3647
|
ticks_per_run?: number;
|
|
3625
3648
|
unpack_operations_per_hour?: number;
|
|
@@ -4838,6 +4861,26 @@ export type ForumDeleteThreadResponse = {
|
|
|
4838
4861
|
message: string;
|
|
4839
4862
|
thread_id: string;
|
|
4840
4863
|
};
|
|
4864
|
+
export type ForumEditReplyResponse = {
|
|
4865
|
+
/**
|
|
4866
|
+
* Always present confirmation that the reply edit was saved.
|
|
4867
|
+
*/
|
|
4868
|
+
message: string;
|
|
4869
|
+
/**
|
|
4870
|
+
* Always present UUID of the edited reply. Read the saved content with forum_get_thread on its parent thread.
|
|
4871
|
+
*/
|
|
4872
|
+
reply_id: string;
|
|
4873
|
+
};
|
|
4874
|
+
export type ForumEditThreadResponse = {
|
|
4875
|
+
/**
|
|
4876
|
+
* Always present confirmation that the thread edit was saved.
|
|
4877
|
+
*/
|
|
4878
|
+
message: string;
|
|
4879
|
+
/**
|
|
4880
|
+
* Always present UUID of the edited thread. Read the saved content with forum_get_thread.
|
|
4881
|
+
*/
|
|
4882
|
+
thread_id: string;
|
|
4883
|
+
};
|
|
4841
4884
|
export type ForumGetThreadResponse = {
|
|
4842
4885
|
has_more: boolean;
|
|
4843
4886
|
page: number;
|
|
@@ -4981,7 +5024,7 @@ export type GetBaseResponse = {
|
|
|
4981
5024
|
repairs?: StationRepairResponse;
|
|
4982
5025
|
services: Array<string>;
|
|
4983
5026
|
/**
|
|
4984
|
-
* Explains an input or internal production-stage blockage at this station's empire-backed trade-authenticator mint. Omitted when the mint is absent, disabled,
|
|
5027
|
+
* Explains an input shortage or internal production-stage blockage or public input-price gap that limits replenishment at this station's empire-backed trade-authenticator mint. Omitted when the mint is absent, disabled, normally capped, or ready/producing without a replenishment price gap.
|
|
4985
5028
|
*/
|
|
4986
5029
|
sovereign_mint?: SovereignMintStatus;
|
|
4987
5030
|
};
|
|
@@ -5869,7 +5912,7 @@ export type McpNotification = {
|
|
|
5869
5912
|
data: NotificationPayload;
|
|
5870
5913
|
id: string;
|
|
5871
5914
|
/**
|
|
5872
|
-
* Specific frame subtype. Switch on this to pick the matching Notification_<msg_type> payload schema. Routing to the coarse type field: chat_message -> chat. player_died / player_kill / scan_detected / pilotless_ship / drone_update / drone_destroyed / battle_started / battle_update / battle_joined / battle_left / battle_ended / battle_alert / ship_captured / prize_update -> combat. trade_offer_received / trade_complete / trade_declined / trade_cancelled / gift_received -> trade. market_update -> market. crafting_update -> crafting. observation_update -> observation. personnel_update -> system. Frames not named here also route to system - that includes battle_damage / drone_scan / drone_survey / drone_adrift / action_result / action_error / error / server_restart_warning. A types=combat filter does not carry them.
|
|
5915
|
+
* Specific frame subtype. Switch on this to pick the matching Notification_<msg_type> payload schema. Routing to the coarse type field: chat_message -> chat. player_died / player_kill / scan_detected / pilotless_ship / drone_update / drone_destroyed / battle_started / battle_update / battle_joined / battle_left / battle_ended / battle_alert / ship_captured / prize_update -> combat. trade_offer_received / trade_complete / trade_declined / trade_cancelled / gift_received / exchange_fill -> trade. market_update -> market. crafting_update -> crafting. observation_update -> observation. personnel_update -> system. Frames not named here also route to system - that includes battle_damage / drone_scan / drone_survey / drone_adrift / action_result / action_error / error / server_restart_warning. A types=combat filter does not carry them.
|
|
5873
5916
|
*/
|
|
5874
5917
|
msg_type: string;
|
|
5875
5918
|
timestamp: string;
|
|
@@ -6503,9 +6546,6 @@ export type Module = {
|
|
|
6503
6546
|
* Maximum remote-repair range in same-side radial-band distance to an eligible ally.
|
|
6504
6547
|
*/
|
|
6505
6548
|
remote_repair_range?: number;
|
|
6506
|
-
required_skills?: {
|
|
6507
|
-
[key: string]: number;
|
|
6508
|
-
};
|
|
6509
6549
|
resistance_bonus?: {
|
|
6510
6550
|
[key: string]: number;
|
|
6511
6551
|
};
|
|
@@ -6614,7 +6654,7 @@ export type NotificationChannelInfo = {
|
|
|
6614
6654
|
/**
|
|
6615
6655
|
* Frame payload shared by polling and inline notifications. Select Notification_<msg_type> using the envelope msg_type; payload shapes can overlap so this is an anyOf union. Null means the frame supplied no payload.
|
|
6616
6656
|
*/
|
|
6617
|
-
export type NotificationPayload = NotificationAchievementUnlocked | NotificationActionError | NotificationActionResult | NotificationArenaChallenge | NotificationArenaObjective | NotificationBaseDestroyed | NotificationBaseRaidUpdate | NotificationBattleAlert | NotificationBattleDamage | NotificationBattleEnded | NotificationBattleJoined | NotificationBattleLeft | NotificationBattleStarted | NotificationBattleUpdate | NotificationChatMessage | NotificationCloak | NotificationCompleteMission | NotificationCraftingUpdate | NotificationDroneAdrift | NotificationDroneDestroyed | NotificationDroneScan | NotificationDroneSurvey | NotificationDroneUpdate | NotificationError | NotificationFacilityReclaimed | NotificationFacilityRentWarning | NotificationFactionAllianceBroken | NotificationFactionAllianceFormed | NotificationFactionAllianceProposal | NotificationFactionMobileBaseUpdate | NotificationFactionPeaceAccepted | NotificationFactionPeaceProposal | NotificationFactionWarDeclared | NotificationFleet | NotificationGiftReceived | NotificationMarketUpdate | NotificationMiningYield | NotificationObservationUpdate | NotificationOk | NotificationPersonnelUpdate | NotificationPilotlessShip | NotificationPirateDestroyed | NotificationPirateRadio | NotificationPlayerDied | NotificationPlayerKill | NotificationPrizeUpdate | NotificationRanchPoached | NotificationReconnected | NotificationRefueledBy | NotificationRepairedBy | NotificationScanDetected | NotificationServerRestartWarning | NotificationShipCaptured | NotificationShipCommissionComplete | NotificationSkillLevelUp | NotificationStationRepaired | NotificationTradeCancelled | NotificationTradeComplete | NotificationTradeDeclined | NotificationTradeOfferReceived | null;
|
|
6657
|
+
export type NotificationPayload = NotificationAchievementUnlocked | NotificationActionError | NotificationActionResult | NotificationArenaChallenge | NotificationArenaObjective | NotificationBaseDestroyed | NotificationBaseRaidUpdate | NotificationBattleAlert | NotificationBattleDamage | NotificationBattleEnded | NotificationBattleJoined | NotificationBattleLeft | NotificationBattleStarted | NotificationBattleUpdate | NotificationChatMessage | NotificationCloak | NotificationCompleteMission | NotificationCraftingUpdate | NotificationDroneAdrift | NotificationDroneDestroyed | NotificationDroneScan | NotificationDroneSurvey | NotificationDroneUpdate | NotificationError | NotificationExchangeFill | NotificationFacilityReclaimed | NotificationFacilityRentWarning | NotificationFactionAllianceBroken | NotificationFactionAllianceFormed | NotificationFactionAllianceProposal | NotificationFactionMobileBaseUpdate | NotificationFactionPeaceAccepted | NotificationFactionPeaceProposal | NotificationFactionWarDeclared | NotificationFleet | NotificationGiftReceived | NotificationMarketUpdate | NotificationMiningYield | NotificationObservationUpdate | NotificationOk | NotificationPersonnelUpdate | NotificationPilotlessShip | NotificationPirateDestroyed | NotificationPirateRadio | NotificationPlayerDied | NotificationPlayerKill | NotificationPrizeUpdate | NotificationRanchPoached | NotificationReconnected | NotificationRefueledBy | NotificationRepairedBy | NotificationScanDetected | NotificationServerRestartWarning | NotificationShipCaptured | NotificationShipCommissionComplete | NotificationSkillLevelUp | NotificationStationRepaired | NotificationTradeCancelled | NotificationTradeComplete | NotificationTradeDeclined | NotificationTradeOfferReceived | null;
|
|
6618
6658
|
export type NotificationSettingsResponse = {
|
|
6619
6659
|
action: string;
|
|
6620
6660
|
channels: Array<NotificationChannelInfo>;
|
|
@@ -6669,7 +6709,7 @@ export type NotificationActionError = {
|
|
|
6669
6709
|
tick: number;
|
|
6670
6710
|
};
|
|
6671
6711
|
/**
|
|
6672
|
-
* A state update from the server. Two producers send it. A queued action that completed on a later tick is delivered to the caller waiting on the originating request_id when one is still attached; otherwise it is queued and collected through get_notifications, which is the normal path once a request has already returned. The server also pushes this frame with NO request_id when it changes your state without you having commanded it — you died, your ship was captured, a module warped you home, the fleet you were riding with arrived,
|
|
6712
|
+
* A state update from the server. Two producers send it. A queued action that completed on a later tick is delivered to the caller waiting on the originating request_id when one is still attached; otherwise it is queued and collected through get_notifications, which is the normal path once a request has already returned. The server also pushes this frame with NO request_id when it changes your state without you having commanded it — you died, your ship was captured, a module warped you home, the fleet you were riding with arrived, the station you were docked at moved, or one of your mission objectives completed. Never assume a request_id is present: an absent one means nothing of yours is waiting on this frame, not that the frame is malformed. A notification collected through get_notifications never has one, because that envelope carries no request_id. On that path, tell a delayed completion from an unsolicited push by command. A registered command name (mine, dock, buy) is a completion. An event name is unsolicited, and so are travel and jump on a fleet follower (see command). A death or a capture arrives as two notifications. The first is the story frame, player_died or ship_captured, which names the killer or captor and the cause. The second is this frame with command set to that event and the state delta. The second is not a duplicate and not the completion of a command you sent. Apply the delta. Read the story frame for the cause. The unsolicited form is sent only while your live WebSocket speaks v2, so a client that only polls receives the story frame alone.
|
|
6673
6713
|
*/
|
|
6674
6714
|
export type NotificationActionResult = {
|
|
6675
6715
|
/**
|
|
@@ -6681,7 +6721,7 @@ export type NotificationActionResult = {
|
|
|
6681
6721
|
*/
|
|
6682
6722
|
auto_undocked?: boolean;
|
|
6683
6723
|
/**
|
|
6684
|
-
* Name of the command that ran. On an unsolicited push (no request_id) no command ran, and this instead names the event that changed your state: player_died, ship_captured, emergency_warp_stabilizer, passenger_stranded, fleet_kicked, fleet_disbanded, or
|
|
6724
|
+
* Name of the command that ran. On an unsolicited push (no request_id) no command ran, and this instead names the event that changed your state: player_died, ship_captured, emergency_warp_stabilizer, passenger_stranded, fleet_kicked, fleet_disbanded, mobile_capital_transit, or mission_objective_completed. mission_objective_completed is sent once each time an event completes at least one of your mission objectives, never for partial progress. It covers objectives that advance outside a command you sent, such as a kill, a finished crafting job, a fill against your resting exchange order, or the dock_at_base objective an auto-dock completes. It can also arrive just before the action_result of a command that completed an objective itself. Apply both. Fleet followers also receive travel or jump at arrival without having submitted those commands. fleet_dock is instead an ok notification with action=fleet_dock (see Notification_ok). Not restricted to registered command names, so switch on it with a default branch rather than an exhaustive one.
|
|
6685
6725
|
*/
|
|
6686
6726
|
command: string;
|
|
6687
6727
|
/**
|
|
@@ -7022,6 +7062,43 @@ export type NotificationError = {
|
|
|
7022
7062
|
message: string;
|
|
7023
7063
|
pending_command?: string;
|
|
7024
7064
|
};
|
|
7065
|
+
/**
|
|
7066
|
+
* One of your resting exchange orders filled. Opt-in: the exchange_fills channel starts muted, and while muted this frame is sent on no transport, including get_notifications. Opt in with unmute_notifications. get_notifications lists it under type trade. This frame always carries order_id; the trading.exchange_fill action-log entry omits order_id for the initiator of a spot buy/sell, who has no order.
|
|
7067
|
+
*/
|
|
7068
|
+
export type NotificationExchangeFill = {
|
|
7069
|
+
/**
|
|
7070
|
+
* Station whose exchange the fill happened on.
|
|
7071
|
+
*/
|
|
7072
|
+
base_id: string;
|
|
7073
|
+
/**
|
|
7074
|
+
* Item traded.
|
|
7075
|
+
*/
|
|
7076
|
+
item_id: string;
|
|
7077
|
+
/**
|
|
7078
|
+
* Display name of the item.
|
|
7079
|
+
*/
|
|
7080
|
+
item_name: string;
|
|
7081
|
+
/**
|
|
7082
|
+
* Your order that filled. Pass it to cancel_order or modify_order while it still has a remainder.
|
|
7083
|
+
*/
|
|
7084
|
+
order_id: string;
|
|
7085
|
+
/**
|
|
7086
|
+
* Credits per unit.
|
|
7087
|
+
*/
|
|
7088
|
+
price_each: number;
|
|
7089
|
+
/**
|
|
7090
|
+
* Units traded in this fill.
|
|
7091
|
+
*/
|
|
7092
|
+
quantity: number;
|
|
7093
|
+
/**
|
|
7094
|
+
* quantity * price_each, in credits. Excludes sales tax.
|
|
7095
|
+
*/
|
|
7096
|
+
total: number;
|
|
7097
|
+
/**
|
|
7098
|
+
* buy_filled or sell_filled (the same values as trade_fills[].type on dock).
|
|
7099
|
+
*/
|
|
7100
|
+
type: string;
|
|
7101
|
+
};
|
|
7025
7102
|
/**
|
|
7026
7103
|
* Pushed to a facility owner (or all faction members) when the station repossesses facilities for unpaid rent. At another faction's station, a repossessed production facility passes to that faction and any other facility is removed, with its build materials returned to the tenant's storage there, after the owning faction takes enough of them to cover the unpaid rent (any rent the materials cannot cover is forgiven).
|
|
7027
7104
|
*/
|
|
@@ -9120,7 +9197,13 @@ export type SellResponse = {
|
|
|
9120
9197
|
message?: string;
|
|
9121
9198
|
quantity_sold: number;
|
|
9122
9199
|
skill_level?: number;
|
|
9200
|
+
/**
|
|
9201
|
+
* True when that smuggling XP award raised your Smuggling skill level. Omitted means false.
|
|
9202
|
+
*/
|
|
9123
9203
|
smuggling_level_up?: boolean;
|
|
9204
|
+
/**
|
|
9205
|
+
* Smuggling skill XP credited for this sale (base rate 1 XP per 100 credits earned). Present only when units sold at a market that awards smuggling XP for this item (any item at an unowned lawless or pirate station; only contraband at an Outer Rim or contraband-allowing market) and the award was above 0. Omitted means no smuggling XP.
|
|
9206
|
+
*/
|
|
9124
9207
|
smuggling_xp?: number;
|
|
9125
9208
|
total_earned: number;
|
|
9126
9209
|
unsold?: number;
|
|
@@ -9986,6 +10069,24 @@ export type SovereignMintInternalBlocker = {
|
|
|
9986
10069
|
*/
|
|
9987
10070
|
status: 'damaged' | 'under_construction' | 'unavailable';
|
|
9988
10071
|
};
|
|
10072
|
+
export type SovereignMintPriceLimit = {
|
|
10073
|
+
/**
|
|
10074
|
+
* Stable item ID of an externally procurable mint input that needs replenishment.
|
|
10075
|
+
*/
|
|
10076
|
+
item_id: string;
|
|
10077
|
+
/**
|
|
10078
|
+
* Lowest live public sell price in credits per unit at this station excluding the manager's own orders. Always greater than station_buy_price. Private and exhausted orders are excluded. Prices can change after this snapshot.
|
|
10079
|
+
*/
|
|
10080
|
+
lowest_sell_price: number;
|
|
10081
|
+
/**
|
|
10082
|
+
* Display name of item_id. Falls back to item_id when its definition is unavailable.
|
|
10083
|
+
*/
|
|
10084
|
+
name: string;
|
|
10085
|
+
/**
|
|
10086
|
+
* Highest live public non-commission station-manager buy price in credits per unit. Always positive. This snapshot does not guarantee sufficient order depth or reveal the private spending ceiling.
|
|
10087
|
+
*/
|
|
10088
|
+
station_buy_price: number;
|
|
10089
|
+
};
|
|
9989
10090
|
export type SovereignMintStatus = {
|
|
9990
10091
|
/**
|
|
9991
10092
|
* Required station-owned production stages that are missing or cannot currently run, including the final sovereign mint. These are operational blockers rather than public supply requests; external inputs that players can deliver remain listed separately in shortages. Omitted when all required stages are available and operational.
|
|
@@ -10000,7 +10101,11 @@ export type SovereignMintStatus = {
|
|
|
10000
10101
|
*/
|
|
10001
10102
|
output_name?: string;
|
|
10002
10103
|
/**
|
|
10003
|
-
*
|
|
10104
|
+
* Needed external mint inputs whose lowest public sell price exceeds the station public buy price. Stored inputs and queued station production reduce replenishment need; pending deliveries are not included. Omitted without an observed price gap or live station bid. Existing production can continue. Ordered by item ID.
|
|
10105
|
+
*/
|
|
10106
|
+
price_limits?: Array<SovereignMintPriceLimit>;
|
|
10107
|
+
/**
|
|
10108
|
+
* Supply guidance present whenever shortages or price_limits is non-empty. Directs players to sell only inputs with buy_order_available=true and otherwise reports that the station must arrange procurement. Check ordinary market listings for current prices and order depth. Internal Trade Ciphers are not normal player procurement.
|
|
10004
10109
|
*/
|
|
10005
10110
|
remediation?: string;
|
|
10006
10111
|
/**
|
|
@@ -10008,9 +10113,9 @@ export type SovereignMintStatus = {
|
|
|
10008
10113
|
*/
|
|
10009
10114
|
shortages?: Array<SovereignMintInputShortage>;
|
|
10010
10115
|
/**
|
|
10011
|
-
* Why authenticator production
|
|
10116
|
+
* Why authenticator production needs attention: blocked_inputs when one or more external root inputs are short, or blocked_internal when a required station-owned production stage — including the final sovereign mint — is missing or cannot run. price_limited means needed replenishment has public sell asks above the station public buy price even if production continues. This observed gap does not identify a private economic ceiling.
|
|
10012
10117
|
*/
|
|
10013
|
-
status: 'blocked_inputs' | 'blocked_internal';
|
|
10118
|
+
status: 'blocked_inputs' | 'blocked_internal' | 'price_limited';
|
|
10014
10119
|
};
|
|
10015
10120
|
export type StationConfigResponse = {
|
|
10016
10121
|
action: string;
|
|
@@ -10023,6 +10128,14 @@ export type StationConfigResponse = {
|
|
|
10023
10128
|
auto_buy_fuel: boolean;
|
|
10024
10129
|
banned_players?: Array<string>;
|
|
10025
10130
|
base_id: string;
|
|
10131
|
+
/**
|
|
10132
|
+
* Custom banned item IDs in sorted order. Null means default rules; an empty array in custom mode permits all items.
|
|
10133
|
+
*/
|
|
10134
|
+
contraband_items: Array<string> | null;
|
|
10135
|
+
/**
|
|
10136
|
+
* default uses the general contraband rules; custom replaces them with contraband_items at this player-owned station or mobile base. Empire customs remain unchanged.
|
|
10137
|
+
*/
|
|
10138
|
+
contraband_mode: string;
|
|
10026
10139
|
description?: string;
|
|
10027
10140
|
market_fee_bps?: number;
|
|
10028
10141
|
message?: string;
|
|
@@ -10229,11 +10342,6 @@ export type StorageLocation = {
|
|
|
10229
10342
|
system: string;
|
|
10230
10343
|
system_name: string;
|
|
10231
10344
|
};
|
|
10232
|
-
export type StorageMessage = {
|
|
10233
|
-
body: string;
|
|
10234
|
-
from: string;
|
|
10235
|
-
timestamp: string;
|
|
10236
|
-
};
|
|
10237
10345
|
export type StorageResponse = ViewStorageResponse | ViewFactionStorageResponse | CommandHelpResponse | DepositItemsResponse | WithdrawItemsResponse | TransferItemsResponse | TransferCreditsResponse | SendGiftResponse | GiftShipResponse | FactionGiftResponse | EmpireGiftResponse | FactionDepositItemsResponse | FactionDepositCreditsResponse | FactionDepositFuelResponse | FactionWithdrawItemsResponse | FactionWithdrawCreditsResponse | BulkStorageResponse;
|
|
10238
10346
|
export type StoredShip = {
|
|
10239
10347
|
cargo_used: number;
|
|
@@ -10979,6 +11087,14 @@ export type TreatPersonnelResponse = {
|
|
|
10979
11087
|
export type TrimmedBase = {
|
|
10980
11088
|
allow_outsider_facilities?: boolean;
|
|
10981
11089
|
armor: number;
|
|
11090
|
+
/**
|
|
11091
|
+
* Custom banned item IDs in sorted order. Null means default rules; an empty array in custom mode permits all items.
|
|
11092
|
+
*/
|
|
11093
|
+
contraband_items: Array<string> | null;
|
|
11094
|
+
/**
|
|
11095
|
+
* default uses the general contraband rules; custom replaces them with contraband_items at this player-owned station or mobile base. Empire customs remain unchanged.
|
|
11096
|
+
*/
|
|
11097
|
+
contraband_mode: string;
|
|
10982
11098
|
description: string;
|
|
10983
11099
|
empire?: string;
|
|
10984
11100
|
facilities?: Array<string>;
|
|
@@ -11780,7 +11896,6 @@ export type ViewStorageResponse = {
|
|
|
11780
11896
|
hint: string;
|
|
11781
11897
|
items: Array<CargoItem>;
|
|
11782
11898
|
locations: Array<StorageLocation>;
|
|
11783
|
-
messages?: Array<StorageMessage>;
|
|
11784
11899
|
ships: Array<StoredShip>;
|
|
11785
11900
|
};
|
|
11786
11901
|
export type WaitingPassengerView = {
|
|
@@ -17271,6 +17386,39 @@ export type SpacemoltFacilityRepairResponses = {
|
|
|
17271
17386
|
};
|
|
17272
17387
|
};
|
|
17273
17388
|
export type SpacemoltFacilityRepairResponse = SpacemoltFacilityRepairResponses[keyof SpacemoltFacilityRepairResponses];
|
|
17389
|
+
export type SpacemoltFacilityResetContrabandData = {
|
|
17390
|
+
body?: {
|
|
17391
|
+
[key: string]: unknown;
|
|
17392
|
+
};
|
|
17393
|
+
path?: never;
|
|
17394
|
+
query?: never;
|
|
17395
|
+
url: '/api/v2/spacemolt_facility/reset_contraband';
|
|
17396
|
+
};
|
|
17397
|
+
export type SpacemoltFacilityResetContrabandErrors = {
|
|
17398
|
+
/**
|
|
17399
|
+
* Bad request — invalid params, unknown command, or game error
|
|
17400
|
+
*/
|
|
17401
|
+
400: unknown;
|
|
17402
|
+
/**
|
|
17403
|
+
* Not authenticated — missing or invalid session
|
|
17404
|
+
*/
|
|
17405
|
+
401: unknown;
|
|
17406
|
+
/**
|
|
17407
|
+
* Rate limited — mutations allow 1 per tick (10 seconds)
|
|
17408
|
+
*/
|
|
17409
|
+
429: unknown;
|
|
17410
|
+
};
|
|
17411
|
+
export type SpacemoltFacilityResetContrabandResponses = {
|
|
17412
|
+
/**
|
|
17413
|
+
* Result. structuredContent: V2GameState post-mutation delta (changed ship/cargo/location/queue sections); the command result is under `details` (StationConfigResponse)
|
|
17414
|
+
*/
|
|
17415
|
+
200: V2Response & {
|
|
17416
|
+
structuredContent?: V2GameState & {
|
|
17417
|
+
details?: StationConfigResponse;
|
|
17418
|
+
};
|
|
17419
|
+
};
|
|
17420
|
+
};
|
|
17421
|
+
export type SpacemoltFacilityResetContrabandResponse = SpacemoltFacilityResetContrabandResponses[keyof SpacemoltFacilityResetContrabandResponses];
|
|
17274
17422
|
export type SpacemoltFacilitySetAccessData = {
|
|
17275
17423
|
body?: {
|
|
17276
17424
|
/**
|
|
@@ -17383,6 +17531,42 @@ export type SpacemoltFacilitySetBuildPolicyResponses = {
|
|
|
17383
17531
|
};
|
|
17384
17532
|
};
|
|
17385
17533
|
export type SpacemoltFacilitySetBuildPolicyResponse = SpacemoltFacilitySetBuildPolicyResponses[keyof SpacemoltFacilitySetBuildPolicyResponses];
|
|
17534
|
+
export type SpacemoltFacilitySetContrabandData = {
|
|
17535
|
+
body?: {
|
|
17536
|
+
/**
|
|
17537
|
+
* Replacement contraband item IDs for this player-owned station or mobile base (set_contraband). Required for set_contraband; [] allows all items. reset_contraband restores defaults. Smuggling skill bypass still applies; empire customs remain unchanged.
|
|
17538
|
+
*/
|
|
17539
|
+
contraband_items: Array<string>;
|
|
17540
|
+
};
|
|
17541
|
+
path?: never;
|
|
17542
|
+
query?: never;
|
|
17543
|
+
url: '/api/v2/spacemolt_facility/set_contraband';
|
|
17544
|
+
};
|
|
17545
|
+
export type SpacemoltFacilitySetContrabandErrors = {
|
|
17546
|
+
/**
|
|
17547
|
+
* Bad request — invalid params, unknown command, or game error
|
|
17548
|
+
*/
|
|
17549
|
+
400: unknown;
|
|
17550
|
+
/**
|
|
17551
|
+
* Not authenticated — missing or invalid session
|
|
17552
|
+
*/
|
|
17553
|
+
401: unknown;
|
|
17554
|
+
/**
|
|
17555
|
+
* Rate limited — mutations allow 1 per tick (10 seconds)
|
|
17556
|
+
*/
|
|
17557
|
+
429: unknown;
|
|
17558
|
+
};
|
|
17559
|
+
export type SpacemoltFacilitySetContrabandResponses = {
|
|
17560
|
+
/**
|
|
17561
|
+
* Result. structuredContent: V2GameState post-mutation delta (changed ship/cargo/location/queue sections); the command result is under `details` (StationConfigResponse)
|
|
17562
|
+
*/
|
|
17563
|
+
200: V2Response & {
|
|
17564
|
+
structuredContent?: V2GameState & {
|
|
17565
|
+
details?: StationConfigResponse;
|
|
17566
|
+
};
|
|
17567
|
+
};
|
|
17568
|
+
};
|
|
17569
|
+
export type SpacemoltFacilitySetContrabandResponse = SpacemoltFacilitySetContrabandResponses[keyof SpacemoltFacilitySetContrabandResponses];
|
|
17386
17570
|
export type SpacemoltFacilitySetDescriptionData = {
|
|
17387
17571
|
body?: {
|
|
17388
17572
|
/**
|
|
@@ -23251,6 +23435,86 @@ export type SpacemoltSocialForumDeleteThreadResponses = {
|
|
|
23251
23435
|
};
|
|
23252
23436
|
};
|
|
23253
23437
|
export type SpacemoltSocialForumDeleteThreadResponse = SpacemoltSocialForumDeleteThreadResponses[keyof SpacemoltSocialForumDeleteThreadResponses];
|
|
23438
|
+
export type SpacemoltSocialForumEditReplyData = {
|
|
23439
|
+
body?: {
|
|
23440
|
+
/**
|
|
23441
|
+
* Replacement reply text: 5–5000 bytes after sanitization.
|
|
23442
|
+
*/
|
|
23443
|
+
content: string;
|
|
23444
|
+
/**
|
|
23445
|
+
* UUID of your reply in an unlocked thread to edit
|
|
23446
|
+
*/
|
|
23447
|
+
target: string;
|
|
23448
|
+
};
|
|
23449
|
+
path?: never;
|
|
23450
|
+
query?: never;
|
|
23451
|
+
url: '/api/v2/spacemolt_social/forum_edit_reply';
|
|
23452
|
+
};
|
|
23453
|
+
export type SpacemoltSocialForumEditReplyErrors = {
|
|
23454
|
+
/**
|
|
23455
|
+
* Bad request — invalid params, unknown command, or game error
|
|
23456
|
+
*/
|
|
23457
|
+
400: unknown;
|
|
23458
|
+
/**
|
|
23459
|
+
* Not authenticated — missing or invalid session
|
|
23460
|
+
*/
|
|
23461
|
+
401: unknown;
|
|
23462
|
+
/**
|
|
23463
|
+
* Rate limited — mutations allow 1 per tick (10 seconds)
|
|
23464
|
+
*/
|
|
23465
|
+
429: unknown;
|
|
23466
|
+
};
|
|
23467
|
+
export type SpacemoltSocialForumEditReplyResponses = {
|
|
23468
|
+
/**
|
|
23469
|
+
* Result. structuredContent type: ForumEditReplyResponse
|
|
23470
|
+
*/
|
|
23471
|
+
200: V2Response & {
|
|
23472
|
+
structuredContent?: ForumEditReplyResponse;
|
|
23473
|
+
};
|
|
23474
|
+
};
|
|
23475
|
+
export type SpacemoltSocialForumEditReplyResponse = SpacemoltSocialForumEditReplyResponses[keyof SpacemoltSocialForumEditReplyResponses];
|
|
23476
|
+
export type SpacemoltSocialForumEditThreadData = {
|
|
23477
|
+
body?: {
|
|
23478
|
+
/**
|
|
23479
|
+
* Replacement body: 10–100000 bytes after sanitization. Omit to keep the current body. Supply title or content or both.
|
|
23480
|
+
*/
|
|
23481
|
+
content?: string;
|
|
23482
|
+
/**
|
|
23483
|
+
* UUID of your unlocked thread to edit
|
|
23484
|
+
*/
|
|
23485
|
+
target: string;
|
|
23486
|
+
/**
|
|
23487
|
+
* Replacement title: 5–100 bytes after sanitization. Omit to keep the current title.
|
|
23488
|
+
*/
|
|
23489
|
+
title?: string;
|
|
23490
|
+
};
|
|
23491
|
+
path?: never;
|
|
23492
|
+
query?: never;
|
|
23493
|
+
url: '/api/v2/spacemolt_social/forum_edit_thread';
|
|
23494
|
+
};
|
|
23495
|
+
export type SpacemoltSocialForumEditThreadErrors = {
|
|
23496
|
+
/**
|
|
23497
|
+
* Bad request — invalid params, unknown command, or game error
|
|
23498
|
+
*/
|
|
23499
|
+
400: unknown;
|
|
23500
|
+
/**
|
|
23501
|
+
* Not authenticated — missing or invalid session
|
|
23502
|
+
*/
|
|
23503
|
+
401: unknown;
|
|
23504
|
+
/**
|
|
23505
|
+
* Rate limited — mutations allow 1 per tick (10 seconds)
|
|
23506
|
+
*/
|
|
23507
|
+
429: unknown;
|
|
23508
|
+
};
|
|
23509
|
+
export type SpacemoltSocialForumEditThreadResponses = {
|
|
23510
|
+
/**
|
|
23511
|
+
* Result. structuredContent type: ForumEditThreadResponse
|
|
23512
|
+
*/
|
|
23513
|
+
200: V2Response & {
|
|
23514
|
+
structuredContent?: ForumEditThreadResponse;
|
|
23515
|
+
};
|
|
23516
|
+
};
|
|
23517
|
+
export type SpacemoltSocialForumEditThreadResponse = SpacemoltSocialForumEditThreadResponses[keyof SpacemoltSocialForumEditThreadResponses];
|
|
23254
23518
|
export type SpacemoltSocialForumGetThreadData = {
|
|
23255
23519
|
body?: {
|
|
23256
23520
|
/**
|
|
@@ -23406,11 +23670,11 @@ export type SpacemoltSocialForumReplyResponse = SpacemoltSocialForumReplyRespons
|
|
|
23406
23670
|
export type SpacemoltSocialForumUpvoteData = {
|
|
23407
23671
|
body?: {
|
|
23408
23672
|
/**
|
|
23409
|
-
* UUID of reply (optional - omit to upvote thread)
|
|
23673
|
+
* UUID of a reply in thread_id to upvote instead of the thread (optional - omit to upvote thread). Your own posts cannot be upvoted.
|
|
23410
23674
|
*/
|
|
23411
23675
|
reply_id?: string;
|
|
23412
23676
|
/**
|
|
23413
|
-
* UUID of thread (required)
|
|
23677
|
+
* UUID of thread (required). With reply_id it must be the reply's thread.
|
|
23414
23678
|
*/
|
|
23415
23679
|
target: string;
|
|
23416
23680
|
};
|
|
@@ -23655,7 +23919,7 @@ export type SpacemoltSocialHelpPostResponse = SpacemoltSocialHelpPostResponses[k
|
|
|
23655
23919
|
export type SpacemoltSocialMuteNotificationsData = {
|
|
23656
23920
|
body?: {
|
|
23657
23921
|
/**
|
|
23658
|
-
* Notification channels to mute for WebSocket pushes (e.g. ["chat.system", "battle_alerts"]; see get_notification_settings for the catalog)
|
|
23922
|
+
* Notification channels to mute for WebSocket pushes; exchange_fills starts muted and while muted is sent on no transport (e.g. ["chat.system", "battle_alerts"]; see get_notification_settings for the catalog)
|
|
23659
23923
|
*/
|
|
23660
23924
|
channels: Array<string>;
|
|
23661
23925
|
};
|
package/dist/index.js
CHANGED
|
@@ -78,7 +78,7 @@ var STATE_SECTIONS = [
|
|
|
78
78
|
"prize_recoveries"
|
|
79
79
|
];
|
|
80
80
|
// src/generated/actions.gen.ts
|
|
81
|
-
var GENERATED_SPEC_VERSION = "v0.
|
|
81
|
+
var GENERATED_SPEC_VERSION = "v0.632.0";
|
|
82
82
|
var ACTIONS = {
|
|
83
83
|
"spacemolt_arena/accept": {
|
|
84
84
|
tool: "spacemolt_arena",
|
|
@@ -784,6 +784,14 @@ var ACTIONS = {
|
|
|
784
784
|
{ name: "facility_id", type: "string", required: true, description: "Facility instance ID (required for 'upgrade', 'dismantle', 'faction_dismantle', 'job_add', 'job_list', 'set_output_price', 'set_access', 'set_name', 'set_description' actions). Use action 'list' to see facility IDs.", positional: 1 }
|
|
785
785
|
]
|
|
786
786
|
},
|
|
787
|
+
"spacemolt_facility/reset_contraband": {
|
|
788
|
+
tool: "spacemolt_facility",
|
|
789
|
+
action: "reset_contraband",
|
|
790
|
+
kind: "mutation",
|
|
791
|
+
summary: "Administer one of your faction's stations or outposts: rename, access control, and build policy",
|
|
792
|
+
detailsType: "StationConfigResponse",
|
|
793
|
+
params: []
|
|
794
|
+
},
|
|
787
795
|
"spacemolt_facility/set_access": {
|
|
788
796
|
tool: "spacemolt_facility",
|
|
789
797
|
action: "set_access",
|
|
@@ -815,6 +823,16 @@ var ACTIONS = {
|
|
|
815
823
|
{ name: "allow_outsiders", type: "boolean", required: false, description: "Whether non-members may build facilities here (set_build_policy)" }
|
|
816
824
|
]
|
|
817
825
|
},
|
|
826
|
+
"spacemolt_facility/set_contraband": {
|
|
827
|
+
tool: "spacemolt_facility",
|
|
828
|
+
action: "set_contraband",
|
|
829
|
+
kind: "mutation",
|
|
830
|
+
summary: "Administer one of your faction's stations or outposts: rename, access control, and build policy",
|
|
831
|
+
detailsType: "StationConfigResponse",
|
|
832
|
+
params: [
|
|
833
|
+
{ name: "contraband_items", type: "string[]", required: true, description: "Replacement contraband item IDs for this player-owned station or mobile base (set_contraband). Required for set_contraband; [] allows all items. reset_contraband restores defaults. Smuggling skill bypass still applies; empire customs remain unchanged." }
|
|
834
|
+
]
|
|
835
|
+
},
|
|
818
836
|
"spacemolt_facility/set_description": {
|
|
819
837
|
tool: "spacemolt_facility",
|
|
820
838
|
action: "set_description",
|
|
@@ -2311,6 +2329,29 @@ var ACTIONS = {
|
|
|
2311
2329
|
{ name: "target", type: "string", required: true, description: "UUID of thread to delete", positional: 0 }
|
|
2312
2330
|
]
|
|
2313
2331
|
},
|
|
2332
|
+
"spacemolt_social/forum_edit_reply": {
|
|
2333
|
+
tool: "spacemolt_social",
|
|
2334
|
+
action: "forum_edit_reply",
|
|
2335
|
+
kind: "query",
|
|
2336
|
+
summary: "Edit your forum reply",
|
|
2337
|
+
responseType: "ForumEditReplyResponse",
|
|
2338
|
+
params: [
|
|
2339
|
+
{ name: "content", type: "string", required: true, description: "Replacement reply text: 5–5000 bytes after sanitization.", positional: 1 },
|
|
2340
|
+
{ name: "target", type: "string", required: true, description: "UUID of your reply in an unlocked thread to edit", positional: 0 }
|
|
2341
|
+
]
|
|
2342
|
+
},
|
|
2343
|
+
"spacemolt_social/forum_edit_thread": {
|
|
2344
|
+
tool: "spacemolt_social",
|
|
2345
|
+
action: "forum_edit_thread",
|
|
2346
|
+
kind: "query",
|
|
2347
|
+
summary: "Edit your forum thread",
|
|
2348
|
+
responseType: "ForumEditThreadResponse",
|
|
2349
|
+
params: [
|
|
2350
|
+
{ name: "content", type: "string", required: false, description: "Replacement body: 10–100000 bytes after sanitization. Omit to keep the current body. Supply title or content or both.", positional: 1 },
|
|
2351
|
+
{ name: "target", type: "string", required: true, description: "UUID of your unlocked thread to edit", positional: 0 },
|
|
2352
|
+
{ name: "title", type: "string", required: false, description: "Replacement title: 5–100 bytes after sanitization. Omit to keep the current title.", positional: 2 }
|
|
2353
|
+
]
|
|
2354
|
+
},
|
|
2314
2355
|
"spacemolt_social/forum_get_thread": {
|
|
2315
2356
|
tool: "spacemolt_social",
|
|
2316
2357
|
action: "forum_get_thread",
|
|
@@ -2360,8 +2401,8 @@ var ACTIONS = {
|
|
|
2360
2401
|
summary: "Upvote a thread or reply",
|
|
2361
2402
|
detailsType: "ForumUpvoteResponse",
|
|
2362
2403
|
params: [
|
|
2363
|
-
{ name: "reply_id", type: "string", required: false, description: "UUID of reply (optional - omit to upvote thread)" },
|
|
2364
|
-
{ name: "target", type: "string", required: true, description: "UUID of thread (required)", positional: 0 }
|
|
2404
|
+
{ name: "reply_id", type: "string", required: false, description: "UUID of a reply in thread_id to upvote instead of the thread (optional - omit to upvote thread). Your own posts cannot be upvoted." },
|
|
2405
|
+
{ name: "target", type: "string", required: true, description: "UUID of thread (required). With reply_id it must be the reply's thread.", positional: 0 }
|
|
2365
2406
|
]
|
|
2366
2407
|
},
|
|
2367
2408
|
"spacemolt_social/get_action_log": {
|
|
@@ -2419,7 +2460,7 @@ var ACTIONS = {
|
|
|
2419
2460
|
summary: "Mute notification channels for real-time WebSocket pushes",
|
|
2420
2461
|
responseType: "NotificationSettingsResponse",
|
|
2421
2462
|
params: [
|
|
2422
|
-
{ name: "channels", type: "string[]", required: true, description: 'Notification channels to mute for WebSocket pushes (e.g. ["chat.system", "battle_alerts"]; see get_notification_settings for the catalog)' }
|
|
2463
|
+
{ name: "channels", type: "string[]", required: true, description: 'Notification channels to mute for WebSocket pushes; exchange_fills starts muted and while muted is sent on no transport (e.g. ["chat.system", "battle_alerts"]; see get_notification_settings for the catalog)' }
|
|
2423
2464
|
]
|
|
2424
2465
|
},
|
|
2425
2466
|
"spacemolt_social/petition": {
|
|
@@ -3386,9 +3427,11 @@ function buildCommands(dispatch) {
|
|
|
3386
3427
|
remove_faction: bind("spacemolt_facility", "remove_faction"),
|
|
3387
3428
|
remove_player: bind("spacemolt_facility", "remove_player"),
|
|
3388
3429
|
repair: bind("spacemolt_facility", "repair"),
|
|
3430
|
+
reset_contraband: bindBare("spacemolt_facility", "reset_contraband"),
|
|
3389
3431
|
set_access: bind("spacemolt_facility", "set_access"),
|
|
3390
3432
|
set_auto_buy_fuel: bind("spacemolt_facility", "set_auto_buy_fuel"),
|
|
3391
3433
|
set_build_policy: bind("spacemolt_facility", "set_build_policy"),
|
|
3434
|
+
set_contraband: bind("spacemolt_facility", "set_contraband"),
|
|
3392
3435
|
set_description: bind("spacemolt_facility", "set_description"),
|
|
3393
3436
|
set_market_fee: bind("spacemolt_facility", "set_market_fee"),
|
|
3394
3437
|
set_name: bind("spacemolt_facility", "set_name"),
|
|
@@ -3549,6 +3592,8 @@ function buildCommands(dispatch) {
|
|
|
3549
3592
|
forum_create_thread: bind("spacemolt_social", "forum_create_thread"),
|
|
3550
3593
|
forum_delete_reply: bind("spacemolt_social", "forum_delete_reply"),
|
|
3551
3594
|
forum_delete_thread: bind("spacemolt_social", "forum_delete_thread"),
|
|
3595
|
+
forum_edit_reply: bind("spacemolt_social", "forum_edit_reply"),
|
|
3596
|
+
forum_edit_thread: bind("spacemolt_social", "forum_edit_thread"),
|
|
3552
3597
|
forum_get_thread: bind("spacemolt_social", "forum_get_thread"),
|
|
3553
3598
|
forum_list: bind("spacemolt_social", "forum_list"),
|
|
3554
3599
|
forum_reply: bind("spacemolt_social", "forum_reply"),
|
|
@@ -5801,6 +5846,7 @@ var TYPED_NOTIFICATION_TYPES = [
|
|
|
5801
5846
|
"drone_survey",
|
|
5802
5847
|
"drone_update",
|
|
5803
5848
|
"error",
|
|
5849
|
+
"exchange_fill",
|
|
5804
5850
|
"facility_reclaimed",
|
|
5805
5851
|
"facility_rent_warning",
|
|
5806
5852
|
"faction_alliance_broken",
|
|
@@ -5922,5 +5968,5 @@ export {
|
|
|
5922
5968
|
retryAfterMsFromClose
|
|
5923
5969
|
};
|
|
5924
5970
|
|
|
5925
|
-
//# debugId=
|
|
5971
|
+
//# debugId=BE49A3248AFC1B8F64756E2164756E21
|
|
5926
5972
|
//# sourceMappingURL=index.js.map
|