@polyester/sdk 0.0.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/CHANGELOG.md +1 -0
- package/LICENSE +7 -0
- package/README.md +55 -0
- package/SECURITY.md +14 -0
- package/dist/_virtual/_rolldown/runtime.js +13 -0
- package/dist/account-signer/create-polyester-account-signer.d.ts +28 -0
- package/dist/account-signer/create-polyester-account-signer.d.ts.map +1 -0
- package/dist/account-signer/create-polyester-account-signer.js +101 -0
- package/dist/account-signer/create-polyester-account-signer.js.map +1 -0
- package/dist/account-signer/index.d.ts +3 -0
- package/dist/account-signer/index.js +3 -0
- package/dist/account-signer/predict-safe-address.js +230 -0
- package/dist/account-signer/predict-safe-address.js.map +1 -0
- package/dist/account-signer/types.d.ts +40 -0
- package/dist/account-signer/types.d.ts.map +1 -0
- package/dist/account-signer/types.js +29 -0
- package/dist/account-signer/types.js.map +1 -0
- package/dist/browser-client.d.ts +37 -0
- package/dist/browser-client.d.ts.map +1 -0
- package/dist/browser-client.js +69 -0
- package/dist/browser-client.js.map +1 -0
- package/dist/catalogs/client-catalog.d.ts +6 -0
- package/dist/catalogs/client-catalog.d.ts.map +1 -0
- package/dist/catalogs/client-catalog.js +88 -0
- package/dist/catalogs/client-catalog.js.map +1 -0
- package/dist/catalogs/decimal.js +92 -0
- package/dist/catalogs/decimal.js.map +1 -0
- package/dist/catalogs/index.d.ts +10 -0
- package/dist/catalogs/index.js +8 -0
- package/dist/catalogs/indexes.js +36 -0
- package/dist/catalogs/indexes.js.map +1 -0
- package/dist/catalogs/market-data-catalog.d.ts +37 -0
- package/dist/catalogs/market-data-catalog.d.ts.map +1 -0
- package/dist/catalogs/market-data-catalog.js +49 -0
- package/dist/catalogs/market-data-catalog.js.map +1 -0
- package/dist/catalogs/readers.d.ts +6 -0
- package/dist/catalogs/readers.d.ts.map +1 -0
- package/dist/catalogs/readers.js +545 -0
- package/dist/catalogs/readers.js.map +1 -0
- package/dist/catalogs/snapshot.d.ts +18 -0
- package/dist/catalogs/snapshot.d.ts.map +1 -0
- package/dist/catalogs/snapshot.js +16 -0
- package/dist/catalogs/snapshot.js.map +1 -0
- package/dist/catalogs/types.d.ts +268 -0
- package/dist/catalogs/types.d.ts.map +1 -0
- package/dist/catalogs/types.js +48 -0
- package/dist/catalogs/types.js.map +1 -0
- package/dist/catalogs/unknown-asset.d.ts +27 -0
- package/dist/catalogs/unknown-asset.d.ts.map +1 -0
- package/dist/catalogs/unknown-asset.js +38 -0
- package/dist/catalogs/unknown-asset.js.map +1 -0
- package/dist/catalogs/zipper-catalog.d.ts +33 -0
- package/dist/catalogs/zipper-catalog.d.ts.map +1 -0
- package/dist/catalogs/zipper-catalog.js +54 -0
- package/dist/catalogs/zipper-catalog.js.map +1 -0
- package/dist/catalogs/zipper-supply.d.ts +10 -0
- package/dist/catalogs/zipper-supply.d.ts.map +1 -0
- package/dist/catalogs/zipper-supply.js +40 -0
- package/dist/catalogs/zipper-supply.js.map +1 -0
- package/dist/core-client.d.ts +155 -0
- package/dist/core-client.d.ts.map +1 -0
- package/dist/core-client.js +266 -0
- package/dist/core-client.js.map +1 -0
- package/dist/environment.d.ts +57 -0
- package/dist/environment.d.ts.map +1 -0
- package/dist/environment.js +153 -0
- package/dist/environment.js.map +1 -0
- package/dist/gen/auth/v1/address_book_pb.d.ts +2012 -0
- package/dist/gen/auth/v1/address_book_pb.d.ts.map +1 -0
- package/dist/gen/auth/v1/address_book_pb.js +505 -0
- package/dist/gen/auth/v1/address_book_pb.js.map +1 -0
- package/dist/gen/auth/v1/api_keys_pb.d.ts +496 -0
- package/dist/gen/auth/v1/api_keys_pb.d.ts.map +1 -0
- package/dist/gen/auth/v1/api_keys_pb.js +137 -0
- package/dist/gen/auth/v1/api_keys_pb.js.map +1 -0
- package/dist/gen/auth/v1/auth_pb.d.ts +523 -0
- package/dist/gen/auth/v1/auth_pb.d.ts.map +1 -0
- package/dist/gen/auth/v1/auth_pb.js +313 -0
- package/dist/gen/auth/v1/auth_pb.js.map +1 -0
- package/dist/gen/auth/v1/mfa_pb.d.ts +1020 -0
- package/dist/gen/auth/v1/mfa_pb.d.ts.map +1 -0
- package/dist/gen/auth/v1/mfa_pb.js +315 -0
- package/dist/gen/auth/v1/mfa_pb.js.map +1 -0
- package/dist/gen/auth/v1/policies_pb.d.ts +1410 -0
- package/dist/gen/auth/v1/policies_pb.d.ts.map +1 -0
- package/dist/gen/auth/v1/policies_pb.js +341 -0
- package/dist/gen/auth/v1/policies_pb.js.map +1 -0
- package/dist/gen/auth/v1/profile_pb.d.ts +370 -0
- package/dist/gen/auth/v1/profile_pb.d.ts.map +1 -0
- package/dist/gen/auth/v1/profile_pb.js +114 -0
- package/dist/gen/auth/v1/profile_pb.js.map +1 -0
- package/dist/gen/auth/v1/resolve_pb.d.ts +174 -0
- package/dist/gen/auth/v1/resolve_pb.d.ts.map +1 -0
- package/dist/gen/auth/v1/resolve_pb.js +80 -0
- package/dist/gen/auth/v1/resolve_pb.js.map +1 -0
- package/dist/gen/auth/v1/social_verification_pb.d.ts +408 -0
- package/dist/gen/auth/v1/social_verification_pb.d.ts.map +1 -0
- package/dist/gen/auth/v1/social_verification_pb.js +196 -0
- package/dist/gen/auth/v1/social_verification_pb.js.map +1 -0
- package/dist/gen/auth/v1/subaccounts_pb.d.ts +1490 -0
- package/dist/gen/auth/v1/subaccounts_pb.d.ts.map +1 -0
- package/dist/gen/auth/v1/subaccounts_pb.js +574 -0
- package/dist/gen/auth/v1/subaccounts_pb.js.map +1 -0
- package/dist/gen/chain/analytics/v1/analytics_read_pb.d.ts +426 -0
- package/dist/gen/chain/analytics/v1/analytics_read_pb.d.ts.map +1 -0
- package/dist/gen/chain/analytics/v1/analytics_read_pb.js +119 -0
- package/dist/gen/chain/analytics/v1/analytics_read_pb.js.map +1 -0
- package/dist/gen/chain/deposit/v1/deposit_pb.d.ts +158 -0
- package/dist/gen/chain/deposit/v1/deposit_pb.d.ts.map +1 -0
- package/dist/gen/chain/deposit/v1/deposit_pb.js +52 -0
- package/dist/gen/chain/deposit/v1/deposit_pb.js.map +1 -0
- package/dist/gen/chain/guard/v1/guard_signer_pb.d.ts +588 -0
- package/dist/gen/chain/guard/v1/guard_signer_pb.d.ts.map +1 -0
- package/dist/gen/chain/guard/v1/guard_signer_pb.js +195 -0
- package/dist/gen/chain/guard/v1/guard_signer_pb.js.map +1 -0
- package/dist/gen/chain/lifecycle/v1/lifecycle_read_pb.d.ts +1297 -0
- package/dist/gen/chain/lifecycle/v1/lifecycle_read_pb.d.ts.map +1 -0
- package/dist/gen/chain/lifecycle/v1/lifecycle_read_pb.js +408 -0
- package/dist/gen/chain/lifecycle/v1/lifecycle_read_pb.js.map +1 -0
- package/dist/gen/chain/lifecycle/v1/types_pb.d.ts +359 -0
- package/dist/gen/chain/lifecycle/v1/types_pb.d.ts.map +1 -0
- package/dist/gen/chain/lifecycle/v1/types_pb.js +322 -0
- package/dist/gen/chain/lifecycle/v1/types_pb.js.map +1 -0
- package/dist/gen/chain/withdraw/v1/withdraw_pb.d.ts +236 -0
- package/dist/gen/chain/withdraw/v1/withdraw_pb.d.ts.map +1 -0
- package/dist/gen/chain/withdraw/v1/withdraw_pb.js +79 -0
- package/dist/gen/chain/withdraw/v1/withdraw_pb.js.map +1 -0
- package/dist/gen/chain/zipper/v1/reason_pb.d.ts +349 -0
- package/dist/gen/chain/zipper/v1/reason_pb.d.ts.map +1 -0
- package/dist/gen/chain/zipper/v1/reason_pb.js +330 -0
- package/dist/gen/chain/zipper/v1/reason_pb.js.map +1 -0
- package/dist/gen/chain/zipper/v1/zipper_pb.d.ts +396 -0
- package/dist/gen/chain/zipper/v1/zipper_pb.d.ts.map +1 -0
- package/dist/gen/chain/zipper/v1/zipper_pb.js +70 -0
- package/dist/gen/chain/zipper/v1/zipper_pb.js.map +1 -0
- package/dist/gen/collab/v1/whiteboard_pb.d.ts +829 -0
- package/dist/gen/collab/v1/whiteboard_pb.d.ts.map +1 -0
- package/dist/gen/collab/v1/whiteboard_pb.js +250 -0
- package/dist/gen/collab/v1/whiteboard_pb.js.map +1 -0
- package/dist/gen/index.d.ts +35 -0
- package/dist/gen/index.js +35 -0
- package/dist/gen/layout/v1/layout_pb.d.ts +1289 -0
- package/dist/gen/layout/v1/layout_pb.d.ts.map +1 -0
- package/dist/gen/layout/v1/layout_pb.js +313 -0
- package/dist/gen/layout/v1/layout_pb.js.map +1 -0
- package/dist/gen/ledger/read/v1/ledger_read_pb.d.ts +1000 -0
- package/dist/gen/ledger/read/v1/ledger_read_pb.d.ts.map +1 -0
- package/dist/gen/ledger/read/v1/ledger_read_pb.js +347 -0
- package/dist/gen/ledger/read/v1/ledger_read_pb.js.map +1 -0
- package/dist/gen/ledger/v1/catalog_pb.d.ts +129 -0
- package/dist/gen/ledger/v1/catalog_pb.d.ts.map +1 -0
- package/dist/gen/ledger/v1/catalog_pb.js +138 -0
- package/dist/gen/ledger/v1/catalog_pb.js.map +1 -0
- package/dist/gen/marketdata/v1/heatmap_pb.d.ts +571 -0
- package/dist/gen/marketdata/v1/heatmap_pb.d.ts.map +1 -0
- package/dist/gen/marketdata/v1/heatmap_pb.js +194 -0
- package/dist/gen/marketdata/v1/heatmap_pb.js.map +1 -0
- package/dist/gen/marketdata/v1/marketdata_pb.d.ts +1015 -0
- package/dist/gen/marketdata/v1/marketdata_pb.d.ts.map +1 -0
- package/dist/gen/marketdata/v1/marketdata_pb.js +274 -0
- package/dist/gen/marketdata/v1/marketdata_pb.js.map +1 -0
- package/dist/gen/marketoverview/v1/marketoverview_pb.d.ts +419 -0
- package/dist/gen/marketoverview/v1/marketoverview_pb.d.ts.map +1 -0
- package/dist/gen/marketoverview/v1/marketoverview_pb.js +212 -0
- package/dist/gen/marketoverview/v1/marketoverview_pb.js.map +1 -0
- package/dist/gen/orderbook/v1/orderbook_pb.d.ts +260 -0
- package/dist/gen/orderbook/v1/orderbook_pb.d.ts.map +1 -0
- package/dist/gen/orderbook/v1/orderbook_pb.js +119 -0
- package/dist/gen/orderbook/v1/orderbook_pb.js.map +1 -0
- package/dist/gen/orders/v1/orders_pb.d.ts +2497 -0
- package/dist/gen/orders/v1/orders_pb.d.ts.map +1 -0
- package/dist/gen/orders/v1/orders_pb.js +1043 -0
- package/dist/gen/orders/v1/orders_pb.js.map +1 -0
- package/dist/gen/orders/v1/orders_read_pb.d.ts +1322 -0
- package/dist/gen/orders/v1/orders_read_pb.d.ts.map +1 -0
- package/dist/gen/orders/v1/orders_read_pb.js +408 -0
- package/dist/gen/orders/v1/orders_read_pb.js.map +1 -0
- package/dist/gen/polychart/events/v1/polychart_events_pb.d.ts +192 -0
- package/dist/gen/polychart/events/v1/polychart_events_pb.d.ts.map +1 -0
- package/dist/gen/polychart/events/v1/polychart_events_pb.js +57 -0
- package/dist/gen/polychart/events/v1/polychart_events_pb.js.map +1 -0
- package/dist/gen/polychart/v1/polychart_pb.d.ts +1208 -0
- package/dist/gen/polychart/v1/polychart_pb.d.ts.map +1 -0
- package/dist/gen/polychart/v1/polychart_pb.js +244 -0
- package/dist/gen/polychart/v1/polychart_pb.js.map +1 -0
- package/dist/gen/polyester/api/options_pb.d.ts +67 -0
- package/dist/gen/polyester/api/options_pb.d.ts.map +1 -0
- package/dist/gen/polyester/api/options_pb.js +76 -0
- package/dist/gen/polyester/api/options_pb.js.map +1 -0
- package/dist/gen/polyester/type/v1/u128_pb.d.ts +42 -0
- package/dist/gen/polyester/type/v1/u128_pb.d.ts.map +1 -0
- package/dist/gen/polyester/type/v1/u128_pb.js +20 -0
- package/dist/gen/polyester/type/v1/u128_pb.js.map +1 -0
- package/dist/gen/tradews/v1/trade_ws_pb.d.ts +316 -0
- package/dist/gen/tradews/v1/trade_ws_pb.d.ts.map +1 -0
- package/dist/gen/tradews/v1/trade_ws_pb.js +63 -0
- package/dist/gen/tradews/v1/trade_ws_pb.js.map +1 -0
- package/dist/gen/transfer/v1/internal_transfer_pb.d.ts +235 -0
- package/dist/gen/transfer/v1/internal_transfer_pb.d.ts.map +1 -0
- package/dist/gen/transfer/v1/internal_transfer_pb.js +81 -0
- package/dist/gen/transfer/v1/internal_transfer_pb.js.map +1 -0
- package/dist/gen/triggers/v1/triggers_pb.d.ts +1731 -0
- package/dist/gen/triggers/v1/triggers_pb.d.ts.map +1 -0
- package/dist/gen/triggers/v1/triggers_pb.js +413 -0
- package/dist/gen/triggers/v1/triggers_pb.js.map +1 -0
- package/dist/index.d.ts +100 -0
- package/dist/index.js +18 -0
- package/dist/realtime/client.d.ts +18 -0
- package/dist/realtime/client.d.ts.map +1 -0
- package/dist/realtime/client.js +420 -0
- package/dist/realtime/client.js.map +1 -0
- package/dist/realtime/index.d.ts +3 -0
- package/dist/realtime/snapshot-then-stream.js +144 -0
- package/dist/realtime/snapshot-then-stream.js.map +1 -0
- package/dist/realtime/types.d.ts +41 -0
- package/dist/realtime/types.d.ts.map +1 -0
- package/dist/server-client.d.ts +73 -0
- package/dist/server-client.d.ts.map +1 -0
- package/dist/server-client.js +126 -0
- package/dist/server-client.js.map +1 -0
- package/dist/server-session.d.ts +4 -0
- package/dist/server-session.js +3 -0
- package/dist/services/accounts/accounts.codecs.js +17 -0
- package/dist/services/accounts/accounts.codecs.js.map +1 -0
- package/dist/services/accounts/accounts.d.ts +18 -0
- package/dist/services/accounts/accounts.d.ts.map +1 -0
- package/dist/services/accounts/accounts.js +27 -0
- package/dist/services/accounts/accounts.js.map +1 -0
- package/dist/services/accounts/accounts.schemas.d.ts +20 -0
- package/dist/services/accounts/accounts.schemas.d.ts.map +1 -0
- package/dist/services/accounts/accounts.schemas.js +28 -0
- package/dist/services/accounts/accounts.schemas.js.map +1 -0
- package/dist/services/accounts/accounts.types.d.ts +2 -0
- package/dist/services/accounts/index.d.ts +3 -0
- package/dist/services/address-book/address-book.codecs.d.ts +1 -0
- package/dist/services/address-book/address-book.codecs.js +61 -0
- package/dist/services/address-book/address-book.codecs.js.map +1 -0
- package/dist/services/address-book/address-book.d.ts +95 -0
- package/dist/services/address-book/address-book.d.ts.map +1 -0
- package/dist/services/address-book/address-book.js +166 -0
- package/dist/services/address-book/address-book.js.map +1 -0
- package/dist/services/address-book/address-book.schemas.d.ts +1140 -0
- package/dist/services/address-book/address-book.schemas.d.ts.map +1 -0
- package/dist/services/address-book/address-book.schemas.js +343 -0
- package/dist/services/address-book/address-book.schemas.js.map +1 -0
- package/dist/services/address-book/address-book.types.d.ts +2 -0
- package/dist/services/address-book/index.d.ts +4 -0
- package/dist/services/api-keys/api-keys.codecs.js +24 -0
- package/dist/services/api-keys/api-keys.codecs.js.map +1 -0
- package/dist/services/api-keys/api-keys.d.ts +62 -0
- package/dist/services/api-keys/api-keys.d.ts.map +1 -0
- package/dist/services/api-keys/api-keys.js +104 -0
- package/dist/services/api-keys/api-keys.js.map +1 -0
- package/dist/services/api-keys/api-keys.schemas.d.ts +181 -0
- package/dist/services/api-keys/api-keys.schemas.d.ts.map +1 -0
- package/dist/services/api-keys/api-keys.schemas.js +111 -0
- package/dist/services/api-keys/api-keys.schemas.js.map +1 -0
- package/dist/services/api-keys/api-keys.types.d.ts +2 -0
- package/dist/services/api-keys/index.d.ts +3 -0
- package/dist/services/auth/account-signer-auth.d.ts +131 -0
- package/dist/services/auth/account-signer-auth.d.ts.map +1 -0
- package/dist/services/auth/account-signer-auth.js +337 -0
- package/dist/services/auth/account-signer-auth.js.map +1 -0
- package/dist/services/auth/auth.d.ts +91 -0
- package/dist/services/auth/auth.d.ts.map +1 -0
- package/dist/services/auth/auth.js +71 -0
- package/dist/services/auth/auth.js.map +1 -0
- package/dist/services/auth/auth.types.d.ts +3 -0
- package/dist/services/auth/cookie-constants.d.ts +6 -0
- package/dist/services/auth/cookie-constants.d.ts.map +1 -0
- package/dist/services/auth/cookie-constants.js +8 -0
- package/dist/services/auth/cookie-constants.js.map +1 -0
- package/dist/services/auth/profile/profile.d.ts +35 -0
- package/dist/services/auth/profile/profile.d.ts.map +1 -0
- package/dist/services/auth/profile/profile.js +61 -0
- package/dist/services/auth/profile/profile.js.map +1 -0
- package/dist/services/auth/profile/profile.schemas.d.ts +58 -0
- package/dist/services/auth/profile/profile.schemas.d.ts.map +1 -0
- package/dist/services/auth/profile/profile.schemas.js +39 -0
- package/dist/services/auth/profile/profile.schemas.js.map +1 -0
- package/dist/services/auth/profile/profile.types.d.ts +2 -0
- package/dist/services/auth/session-codec.js +22 -0
- package/dist/services/auth/session-codec.js.map +1 -0
- package/dist/services/auth/session.d.ts +51 -0
- package/dist/services/auth/session.d.ts.map +1 -0
- package/dist/services/auth/session.js +200 -0
- package/dist/services/auth/session.js.map +1 -0
- package/dist/services/auth/session.schemas.js +41 -0
- package/dist/services/auth/session.schemas.js.map +1 -0
- package/dist/services/auth/session.types.d.ts +70 -0
- package/dist/services/auth/session.types.d.ts.map +1 -0
- package/dist/services/auth/token-storage.d.ts +27 -0
- package/dist/services/auth/token-storage.d.ts.map +1 -0
- package/dist/services/auth/token-storage.js +61 -0
- package/dist/services/auth/token-storage.js.map +1 -0
- package/dist/services/balances/balances.codecs.js +29 -0
- package/dist/services/balances/balances.codecs.js.map +1 -0
- package/dist/services/balances/balances.d.ts +39 -0
- package/dist/services/balances/balances.d.ts.map +1 -0
- package/dist/services/balances/balances.js +85 -0
- package/dist/services/balances/balances.js.map +1 -0
- package/dist/services/balances/balances.merge.d.ts +9 -0
- package/dist/services/balances/balances.merge.d.ts.map +1 -0
- package/dist/services/balances/balances.merge.js +31 -0
- package/dist/services/balances/balances.merge.js.map +1 -0
- package/dist/services/balances/balances.schemas.d.ts +265 -0
- package/dist/services/balances/balances.schemas.d.ts.map +1 -0
- package/dist/services/balances/balances.schemas.js +167 -0
- package/dist/services/balances/balances.schemas.js.map +1 -0
- package/dist/services/balances/balances.types.d.ts +2 -0
- package/dist/services/balances/index.d.ts +4 -0
- package/dist/services/candles/candles.codecs.js +48 -0
- package/dist/services/candles/candles.codecs.js.map +1 -0
- package/dist/services/candles/candles.d.ts +45 -0
- package/dist/services/candles/candles.d.ts.map +1 -0
- package/dist/services/candles/candles.js +108 -0
- package/dist/services/candles/candles.js.map +1 -0
- package/dist/services/candles/candles.schemas.d.ts +182 -0
- package/dist/services/candles/candles.schemas.d.ts.map +1 -0
- package/dist/services/candles/candles.schemas.js +154 -0
- package/dist/services/candles/candles.schemas.js.map +1 -0
- package/dist/services/candles/candles.types.d.ts +2 -0
- package/dist/services/candles/index.d.ts +3 -0
- package/dist/services/chain-analytics/chain-analytics.codecs.d.ts +1 -0
- package/dist/services/chain-analytics/chain-analytics.codecs.js +33 -0
- package/dist/services/chain-analytics/chain-analytics.codecs.js.map +1 -0
- package/dist/services/chain-analytics/chain-analytics.d.ts +27 -0
- package/dist/services/chain-analytics/chain-analytics.d.ts.map +1 -0
- package/dist/services/chain-analytics/chain-analytics.js +48 -0
- package/dist/services/chain-analytics/chain-analytics.js.map +1 -0
- package/dist/services/chain-analytics/chain-analytics.schemas.d.ts +192 -0
- package/dist/services/chain-analytics/chain-analytics.schemas.d.ts.map +1 -0
- package/dist/services/chain-analytics/chain-analytics.schemas.js +100 -0
- package/dist/services/chain-analytics/chain-analytics.schemas.js.map +1 -0
- package/dist/services/chain-analytics/chain-analytics.types.d.ts +2 -0
- package/dist/services/chain-analytics/index.d.ts +4 -0
- package/dist/services/deposit/deposit.d.ts +23 -0
- package/dist/services/deposit/deposit.d.ts.map +1 -0
- package/dist/services/deposit/deposit.js +42 -0
- package/dist/services/deposit/deposit.js.map +1 -0
- package/dist/services/deposit/deposit.schemas.d.ts +40 -0
- package/dist/services/deposit/deposit.schemas.d.ts.map +1 -0
- package/dist/services/deposit/deposit.schemas.js +27 -0
- package/dist/services/deposit/deposit.schemas.js.map +1 -0
- package/dist/services/deposit/deposit.types.d.ts +2 -0
- package/dist/services/deposit/index.d.ts +3 -0
- package/dist/services/guard-signer/guard-signer.codecs.d.ts +1 -0
- package/dist/services/guard-signer/guard-signer.codecs.js +33 -0
- package/dist/services/guard-signer/guard-signer.codecs.js.map +1 -0
- package/dist/services/guard-signer/guard-signer.d.ts +40 -0
- package/dist/services/guard-signer/guard-signer.d.ts.map +1 -0
- package/dist/services/guard-signer/guard-signer.js +85 -0
- package/dist/services/guard-signer/guard-signer.js.map +1 -0
- package/dist/services/guard-signer/guard-signer.schemas.d.ts +269 -0
- package/dist/services/guard-signer/guard-signer.schemas.d.ts.map +1 -0
- package/dist/services/guard-signer/guard-signer.schemas.js +93 -0
- package/dist/services/guard-signer/guard-signer.schemas.js.map +1 -0
- package/dist/services/guard-signer/guard-signer.types.d.ts +2 -0
- package/dist/services/guard-signer/index.d.ts +4 -0
- package/dist/services/heatmap/heatmap.codecs.d.ts +11 -0
- package/dist/services/heatmap/heatmap.codecs.d.ts.map +1 -0
- package/dist/services/heatmap/heatmap.codecs.js +76 -0
- package/dist/services/heatmap/heatmap.codecs.js.map +1 -0
- package/dist/services/heatmap/heatmap.d.ts +33 -0
- package/dist/services/heatmap/heatmap.d.ts.map +1 -0
- package/dist/services/heatmap/heatmap.js +79 -0
- package/dist/services/heatmap/heatmap.js.map +1 -0
- package/dist/services/heatmap/heatmap.schemas.d.ts +412 -0
- package/dist/services/heatmap/heatmap.schemas.d.ts.map +1 -0
- package/dist/services/heatmap/heatmap.schemas.js +174 -0
- package/dist/services/heatmap/heatmap.schemas.js.map +1 -0
- package/dist/services/heatmap/heatmap.types.d.ts +3 -0
- package/dist/services/heatmap/index.d.ts +4 -0
- package/dist/services/internal-transfers/index.d.ts +3 -0
- package/dist/services/internal-transfers/internal-transfers.codecs.js +10 -0
- package/dist/services/internal-transfers/internal-transfers.codecs.js.map +1 -0
- package/dist/services/internal-transfers/internal-transfers.d.ts +20 -0
- package/dist/services/internal-transfers/internal-transfers.d.ts.map +1 -0
- package/dist/services/internal-transfers/internal-transfers.js +39 -0
- package/dist/services/internal-transfers/internal-transfers.js.map +1 -0
- package/dist/services/internal-transfers/internal-transfers.schemas.d.ts +174 -0
- package/dist/services/internal-transfers/internal-transfers.schemas.d.ts.map +1 -0
- package/dist/services/internal-transfers/internal-transfers.schemas.js +90 -0
- package/dist/services/internal-transfers/internal-transfers.schemas.js.map +1 -0
- package/dist/services/internal-transfers/internal-transfers.types.d.ts +2 -0
- package/dist/services/lifecycle/index.d.ts +4 -0
- package/dist/services/lifecycle/lifecycle.codecs.d.ts +23 -0
- package/dist/services/lifecycle/lifecycle.codecs.d.ts.map +1 -0
- package/dist/services/lifecycle/lifecycle.codecs.js +171 -0
- package/dist/services/lifecycle/lifecycle.codecs.js.map +1 -0
- package/dist/services/lifecycle/lifecycle.d.ts +42 -0
- package/dist/services/lifecycle/lifecycle.d.ts.map +1 -0
- package/dist/services/lifecycle/lifecycle.js +87 -0
- package/dist/services/lifecycle/lifecycle.js.map +1 -0
- package/dist/services/lifecycle/lifecycle.schemas.d.ts +2107 -0
- package/dist/services/lifecycle/lifecycle.schemas.d.ts.map +1 -0
- package/dist/services/lifecycle/lifecycle.schemas.js +282 -0
- package/dist/services/lifecycle/lifecycle.schemas.js.map +1 -0
- package/dist/services/lifecycle/lifecycle.types.d.ts +2 -0
- package/dist/services/market-data/index.d.ts +4 -0
- package/dist/services/market-data/market-data.codecs.js +18 -0
- package/dist/services/market-data/market-data.codecs.js.map +1 -0
- package/dist/services/market-data/market-data.d.ts +40 -0
- package/dist/services/market-data/market-data.d.ts.map +1 -0
- package/dist/services/market-data/market-data.js +75 -0
- package/dist/services/market-data/market-data.js.map +1 -0
- package/dist/services/market-data/market-data.schemas.d.ts +56 -0
- package/dist/services/market-data/market-data.schemas.d.ts.map +1 -0
- package/dist/services/market-data/market-data.schemas.js +178 -0
- package/dist/services/market-data/market-data.schemas.js.map +1 -0
- package/dist/services/market-data/market-data.types.d.ts +3 -0
- package/dist/services/market-overview/index.d.ts +4 -0
- package/dist/services/market-overview/market-overview.codecs.d.ts +1 -0
- package/dist/services/market-overview/market-overview.codecs.js +44 -0
- package/dist/services/market-overview/market-overview.codecs.js.map +1 -0
- package/dist/services/market-overview/market-overview.d.ts +32 -0
- package/dist/services/market-overview/market-overview.d.ts.map +1 -0
- package/dist/services/market-overview/market-overview.js +100 -0
- package/dist/services/market-overview/market-overview.js.map +1 -0
- package/dist/services/market-overview/market-overview.schemas.d.ts +85 -0
- package/dist/services/market-overview/market-overview.schemas.d.ts.map +1 -0
- package/dist/services/market-overview/market-overview.schemas.js +71 -0
- package/dist/services/market-overview/market-overview.schemas.js.map +1 -0
- package/dist/services/market-overview/market-overview.types.d.ts +2 -0
- package/dist/services/mfa/index.d.ts +4 -0
- package/dist/services/mfa/mfa.codecs.d.ts +1 -0
- package/dist/services/mfa/mfa.codecs.js +44 -0
- package/dist/services/mfa/mfa.codecs.js.map +1 -0
- package/dist/services/mfa/mfa.d.ts +74 -0
- package/dist/services/mfa/mfa.d.ts.map +1 -0
- package/dist/services/mfa/mfa.js +139 -0
- package/dist/services/mfa/mfa.js.map +1 -0
- package/dist/services/mfa/mfa.schemas.d.ts +392 -0
- package/dist/services/mfa/mfa.schemas.d.ts.map +1 -0
- package/dist/services/mfa/mfa.schemas.js +132 -0
- package/dist/services/mfa/mfa.schemas.js.map +1 -0
- package/dist/services/mfa/mfa.types.d.ts +2 -0
- package/dist/services/orderbook/index.d.ts +3 -0
- package/dist/services/orderbook/orderbook.codecs.js +45 -0
- package/dist/services/orderbook/orderbook.codecs.js.map +1 -0
- package/dist/services/orderbook/orderbook.d.ts +42 -0
- package/dist/services/orderbook/orderbook.d.ts.map +1 -0
- package/dist/services/orderbook/orderbook.js +193 -0
- package/dist/services/orderbook/orderbook.js.map +1 -0
- package/dist/services/orderbook/orderbook.schemas.d.ts +68 -0
- package/dist/services/orderbook/orderbook.schemas.d.ts.map +1 -0
- package/dist/services/orderbook/orderbook.schemas.js +43 -0
- package/dist/services/orderbook/orderbook.schemas.js.map +1 -0
- package/dist/services/orderbook/orderbook.types.d.ts +3 -0
- package/dist/services/orders/index.d.ts +9 -0
- package/dist/services/orders/order-enums.codecs.js +85 -0
- package/dist/services/orders/order-enums.codecs.js.map +1 -0
- package/dist/services/orders/order-errors.schemas.d.ts +7 -0
- package/dist/services/orders/order-errors.schemas.d.ts.map +1 -0
- package/dist/services/orders/order-errors.schemas.js +20 -0
- package/dist/services/orders/order-errors.schemas.js.map +1 -0
- package/dist/services/orders/orders-batch.schemas.d.ts +2979 -0
- package/dist/services/orders/orders-batch.schemas.d.ts.map +1 -0
- package/dist/services/orders/orders-batch.schemas.js +282 -0
- package/dist/services/orders/orders-batch.schemas.js.map +1 -0
- package/dist/services/orders/orders-identifiers.schemas.js +11 -0
- package/dist/services/orders/orders-identifiers.schemas.js.map +1 -0
- package/dist/services/orders/orders-input.schemas.d.ts +3738 -0
- package/dist/services/orders/orders-input.schemas.d.ts.map +1 -0
- package/dist/services/orders/orders-input.schemas.js +267 -0
- package/dist/services/orders/orders-input.schemas.js.map +1 -0
- package/dist/services/orders/orders-modify.schemas.d.ts +1774 -0
- package/dist/services/orders/orders-modify.schemas.d.ts.map +1 -0
- package/dist/services/orders/orders-modify.schemas.js +132 -0
- package/dist/services/orders/orders-modify.schemas.js.map +1 -0
- package/dist/services/orders/orders-output.schemas.d.ts +598 -0
- package/dist/services/orders/orders-output.schemas.d.ts.map +1 -0
- package/dist/services/orders/orders-output.schemas.js +139 -0
- package/dist/services/orders/orders-output.schemas.js.map +1 -0
- package/dist/services/orders/orders-risk.schemas.d.ts +1041 -0
- package/dist/services/orders/orders-risk.schemas.d.ts.map +1 -0
- package/dist/services/orders/orders-risk.schemas.js +251 -0
- package/dist/services/orders/orders-risk.schemas.js.map +1 -0
- package/dist/services/orders/orders.codecs.js +75 -0
- package/dist/services/orders/orders.codecs.js.map +1 -0
- package/dist/services/orders/orders.d.ts +88 -0
- package/dist/services/orders/orders.d.ts.map +1 -0
- package/dist/services/orders/orders.js +242 -0
- package/dist/services/orders/orders.js.map +1 -0
- package/dist/services/orders/orders.schemas.d.ts +7 -0
- package/dist/services/orders/orders.types.d.ts +8 -0
- package/dist/services/policies/api-key-policies/api-key-policies.d.ts +39 -0
- package/dist/services/policies/api-key-policies/api-key-policies.d.ts.map +1 -0
- package/dist/services/policies/api-key-policies/api-key-policies.js +74 -0
- package/dist/services/policies/api-key-policies/api-key-policies.js.map +1 -0
- package/dist/services/policies/api-key-policies/api-key-policies.schemas.d.ts +392 -0
- package/dist/services/policies/api-key-policies/api-key-policies.schemas.d.ts.map +1 -0
- package/dist/services/policies/api-key-policies/api-key-policies.schemas.js +169 -0
- package/dist/services/policies/api-key-policies/api-key-policies.schemas.js.map +1 -0
- package/dist/services/policies/api-key-policies/api-key-policies.types.d.ts +2 -0
- package/dist/services/policies/api-key-policies/index.d.ts +3 -0
- package/dist/services/policies/policies.types.d.ts +2 -0
- package/dist/services/policies/shared.codecs.js +61 -0
- package/dist/services/policies/shared.codecs.js.map +1 -0
- package/dist/services/policies/shared.d.ts +10 -0
- package/dist/services/policies/shared.d.ts.map +1 -0
- package/dist/services/policies/shared.js +33 -0
- package/dist/services/policies/shared.js.map +1 -0
- package/dist/services/policies/subaccount-policies/index.d.ts +3 -0
- package/dist/services/policies/subaccount-policies/subaccount-policies.d.ts +50 -0
- package/dist/services/policies/subaccount-policies/subaccount-policies.d.ts.map +1 -0
- package/dist/services/policies/subaccount-policies/subaccount-policies.js +93 -0
- package/dist/services/policies/subaccount-policies/subaccount-policies.js.map +1 -0
- package/dist/services/policies/subaccount-policies/subaccount-policies.schemas.d.ts +429 -0
- package/dist/services/policies/subaccount-policies/subaccount-policies.schemas.d.ts.map +1 -0
- package/dist/services/policies/subaccount-policies/subaccount-policies.schemas.js +300 -0
- package/dist/services/policies/subaccount-policies/subaccount-policies.schemas.js.map +1 -0
- package/dist/services/policies/subaccount-policies/subaccount-policies.types.d.ts +2 -0
- package/dist/services/shared.js +24 -0
- package/dist/services/shared.js.map +1 -0
- package/dist/services/social-verification/index.d.ts +3 -0
- package/dist/services/social-verification/social-verification.codecs.d.ts +1 -0
- package/dist/services/social-verification/social-verification.codecs.js +55 -0
- package/dist/services/social-verification/social-verification.codecs.js.map +1 -0
- package/dist/services/social-verification/social-verification.d.ts +27 -0
- package/dist/services/social-verification/social-verification.d.ts.map +1 -0
- package/dist/services/social-verification/social-verification.js +43 -0
- package/dist/services/social-verification/social-verification.js.map +1 -0
- package/dist/services/social-verification/social-verification.schemas.d.ts +96 -0
- package/dist/services/social-verification/social-verification.schemas.d.ts.map +1 -0
- package/dist/services/social-verification/social-verification.schemas.js +69 -0
- package/dist/services/social-verification/social-verification.schemas.js.map +1 -0
- package/dist/services/social-verification/social-verification.types.d.ts +2 -0
- package/dist/services/subaccount-resolver.d.ts +14 -0
- package/dist/services/subaccount-resolver.d.ts.map +1 -0
- package/dist/services/subaccount-resolver.js +33 -0
- package/dist/services/subaccount-resolver.js.map +1 -0
- package/dist/services/subaccounts/index.d.ts +3 -0
- package/dist/services/subaccounts/subaccounts.codecs.js +94 -0
- package/dist/services/subaccounts/subaccounts.codecs.js.map +1 -0
- package/dist/services/subaccounts/subaccounts.d.ts +102 -0
- package/dist/services/subaccounts/subaccounts.d.ts.map +1 -0
- package/dist/services/subaccounts/subaccounts.js +196 -0
- package/dist/services/subaccounts/subaccounts.js.map +1 -0
- package/dist/services/subaccounts/subaccounts.schemas.d.ts +257 -0
- package/dist/services/subaccounts/subaccounts.schemas.d.ts.map +1 -0
- package/dist/services/subaccounts/subaccounts.schemas.js +178 -0
- package/dist/services/subaccounts/subaccounts.schemas.js.map +1 -0
- package/dist/services/subaccounts/subaccounts.types.d.ts +2 -0
- package/dist/services/trades/index.d.ts +3 -0
- package/dist/services/trades/trades.codecs.js +10 -0
- package/dist/services/trades/trades.codecs.js.map +1 -0
- package/dist/services/trades/trades.d.ts +33 -0
- package/dist/services/trades/trades.d.ts.map +1 -0
- package/dist/services/trades/trades.js +64 -0
- package/dist/services/trades/trades.js.map +1 -0
- package/dist/services/trades/trades.schemas.d.ts +80 -0
- package/dist/services/trades/trades.schemas.d.ts.map +1 -0
- package/dist/services/trades/trades.schemas.js +66 -0
- package/dist/services/trades/trades.schemas.js.map +1 -0
- package/dist/services/trades/trades.types.d.ts +2 -0
- package/dist/services/trading-withdraws/index.d.ts +4 -0
- package/dist/services/trading-withdraws/trading-withdraws.codecs.d.ts +1 -0
- package/dist/services/trading-withdraws/trading-withdraws.codecs.js +10 -0
- package/dist/services/trading-withdraws/trading-withdraws.codecs.js.map +1 -0
- package/dist/services/trading-withdraws/trading-withdraws.d.ts +124 -0
- package/dist/services/trading-withdraws/trading-withdraws.d.ts.map +1 -0
- package/dist/services/trading-withdraws/trading-withdraws.js +218 -0
- package/dist/services/trading-withdraws/trading-withdraws.js.map +1 -0
- package/dist/services/trading-withdraws/trading-withdraws.schemas.d.ts +73 -0
- package/dist/services/trading-withdraws/trading-withdraws.schemas.d.ts.map +1 -0
- package/dist/services/trading-withdraws/trading-withdraws.schemas.js +95 -0
- package/dist/services/trading-withdraws/trading-withdraws.schemas.js.map +1 -0
- package/dist/services/trading-withdraws/trading-withdraws.types.d.ts +3 -0
- package/dist/services/trailing-oneof-inputs.js +49 -0
- package/dist/services/trailing-oneof-inputs.js.map +1 -0
- package/dist/services/transfers/index.d.ts +4 -0
- package/dist/services/transfers/transfers.codecs.d.ts +6 -0
- package/dist/services/transfers/transfers.codecs.d.ts.map +1 -0
- package/dist/services/transfers/transfers.codecs.js +15 -0
- package/dist/services/transfers/transfers.codecs.js.map +1 -0
- package/dist/services/transfers/transfers.d.ts +33 -0
- package/dist/services/transfers/transfers.d.ts.map +1 -0
- package/dist/services/transfers/transfers.js +63 -0
- package/dist/services/transfers/transfers.js.map +1 -0
- package/dist/services/transfers/transfers.schemas.d.ts +121 -0
- package/dist/services/transfers/transfers.schemas.d.ts.map +1 -0
- package/dist/services/transfers/transfers.schemas.js +77 -0
- package/dist/services/transfers/transfers.schemas.js.map +1 -0
- package/dist/services/transfers/transfers.types.d.ts +3 -0
- package/dist/services/triggers/index.d.ts +5 -0
- package/dist/services/triggers/trigger-child-order.schemas.js +89 -0
- package/dist/services/triggers/trigger-child-order.schemas.js.map +1 -0
- package/dist/services/triggers/trigger-input.schemas.d.ts +1009 -0
- package/dist/services/triggers/trigger-input.schemas.d.ts.map +1 -0
- package/dist/services/triggers/trigger-input.schemas.js +270 -0
- package/dist/services/triggers/trigger-input.schemas.js.map +1 -0
- package/dist/services/triggers/triggers-output.schemas.d.ts +688 -0
- package/dist/services/triggers/triggers-output.schemas.d.ts.map +1 -0
- package/dist/services/triggers/triggers-output.schemas.js +372 -0
- package/dist/services/triggers/triggers-output.schemas.js.map +1 -0
- package/dist/services/triggers/triggers.codecs.js +100 -0
- package/dist/services/triggers/triggers.codecs.js.map +1 -0
- package/dist/services/triggers/triggers.d.ts +71 -0
- package/dist/services/triggers/triggers.d.ts.map +1 -0
- package/dist/services/triggers/triggers.js +176 -0
- package/dist/services/triggers/triggers.js.map +1 -0
- package/dist/services/triggers/triggers.schemas.d.ts +3 -0
- package/dist/services/triggers/triggers.types.d.ts +5 -0
- package/dist/services/whiteboard/index.d.ts +3 -0
- package/dist/services/whiteboard/whiteboard.codecs.js +55 -0
- package/dist/services/whiteboard/whiteboard.codecs.js.map +1 -0
- package/dist/services/whiteboard/whiteboard.d.ts +42 -0
- package/dist/services/whiteboard/whiteboard.d.ts.map +1 -0
- package/dist/services/whiteboard/whiteboard.js +76 -0
- package/dist/services/whiteboard/whiteboard.js.map +1 -0
- package/dist/services/whiteboard/whiteboard.schemas.d.ts +771 -0
- package/dist/services/whiteboard/whiteboard.schemas.d.ts.map +1 -0
- package/dist/services/whiteboard/whiteboard.schemas.js +133 -0
- package/dist/services/whiteboard/whiteboard.schemas.js.map +1 -0
- package/dist/services/whiteboard/whiteboard.types.d.ts +2 -0
- package/dist/services/zipper/index.d.ts +4 -0
- package/dist/services/zipper/zipper.d.ts +28 -0
- package/dist/services/zipper/zipper.d.ts.map +1 -0
- package/dist/services/zipper/zipper.js +84 -0
- package/dist/services/zipper/zipper.js.map +1 -0
- package/dist/services/zipper/zipper.schemas.d.ts +13 -0
- package/dist/services/zipper/zipper.schemas.d.ts.map +1 -0
- package/dist/services/zipper/zipper.schemas.js +89 -0
- package/dist/services/zipper/zipper.schemas.js.map +1 -0
- package/dist/services/zipper/zipper.types.d.ts +4 -0
- package/dist/shared/account-scope.d.ts +17 -0
- package/dist/shared/account-scope.d.ts.map +1 -0
- package/dist/shared/account-scope.js +14 -0
- package/dist/shared/account-scope.js.map +1 -0
- package/dist/shared/catalog-config.d.ts +95 -0
- package/dist/shared/catalog-config.d.ts.map +1 -0
- package/dist/shared/catalog-config.js +12 -0
- package/dist/shared/catalog-config.js.map +1 -0
- package/dist/shared/connect-error-mapping.d.ts +23 -0
- package/dist/shared/connect-error-mapping.d.ts.map +1 -0
- package/dist/shared/connect-error-mapping.js +147 -0
- package/dist/shared/connect-error-mapping.js.map +1 -0
- package/dist/shared/decimal-surface.d.ts +18 -0
- package/dist/shared/decimal-surface.d.ts.map +1 -0
- package/dist/shared/decimal-surface.js +89 -0
- package/dist/shared/decimal-surface.js.map +1 -0
- package/dist/shared/errors.d.ts +242 -0
- package/dist/shared/errors.d.ts.map +1 -0
- package/dist/shared/errors.js +271 -0
- package/dist/shared/errors.js.map +1 -0
- package/dist/shared/ledger-codes.d.ts +9 -0
- package/dist/shared/ledger-codes.d.ts.map +1 -0
- package/dist/shared/ledger-codes.js +63 -0
- package/dist/shared/ledger-codes.js.map +1 -0
- package/dist/shared/proto-enum-codec.js +13 -0
- package/dist/shared/proto-enum-codec.js.map +1 -0
- package/dist/shared/reconciliation.d.ts +14 -0
- package/dist/shared/reconciliation.d.ts.map +1 -0
- package/dist/shared/reconciliation.js +30 -0
- package/dist/shared/reconciliation.js.map +1 -0
- package/dist/shared/request-options.d.ts +10 -0
- package/dist/shared/request-options.d.ts.map +1 -0
- package/dist/shared/request-options.js +22 -0
- package/dist/shared/request-options.js.map +1 -0
- package/dist/shared/schemas.js +65 -0
- package/dist/shared/schemas.js.map +1 -0
- package/dist/shared/subscription-errors.d.ts +14 -0
- package/dist/shared/subscription-errors.d.ts.map +1 -0
- package/dist/shared/subscription-errors.js +49 -0
- package/dist/shared/subscription-errors.js.map +1 -0
- package/dist/shared/transports.d.ts +28 -0
- package/dist/shared/transports.d.ts.map +1 -0
- package/dist/shared/transports.js +111 -0
- package/dist/shared/transports.js.map +1 -0
- package/dist/shared/types.d.ts +11 -0
- package/dist/shared/types.d.ts.map +1 -0
- package/dist/smart-account/index.d.ts +2 -0
- package/dist/smart-account/index.js +2 -0
- package/dist/smart-account/smart-account.d.ts +3093 -0
- package/dist/smart-account/smart-account.d.ts.map +1 -0
- package/dist/smart-account/smart-account.js +94 -0
- package/dist/smart-account/smart-account.js.map +1 -0
- package/dist/utils/base58-id.js +110 -0
- package/dist/utils/base58-id.js.map +1 -0
- package/dist/utils/columnar-time.d.ts +11 -0
- package/dist/utils/columnar-time.d.ts.map +1 -0
- package/dist/utils/columnar-time.js +30 -0
- package/dist/utils/columnar-time.js.map +1 -0
- package/dist/utils/connect-mfa-errors.d.ts +23 -0
- package/dist/utils/connect-mfa-errors.d.ts.map +1 -0
- package/dist/utils/connect-mfa-errors.js +34 -0
- package/dist/utils/connect-mfa-errors.js.map +1 -0
- package/dist/utils/connect-order-errors.d.ts +9 -0
- package/dist/utils/connect-order-errors.d.ts.map +1 -0
- package/dist/utils/connect-order-errors.js +20 -0
- package/dist/utils/connect-order-errors.js.map +1 -0
- package/dist/utils/cookie-es/_utils.js +41 -0
- package/dist/utils/cookie-es/_utils.js.map +1 -0
- package/dist/utils/cookie-es/cookie/parse.js +53 -0
- package/dist/utils/cookie-es/cookie/parse.js.map +1 -0
- package/dist/utils/cookie-es/cookie/serialize.js +145 -0
- package/dist/utils/cookie-es/cookie/serialize.js.map +1 -0
- package/dist/utils/cookies.d.ts +7 -0
- package/dist/utils/cookies.d.ts.map +1 -0
- package/dist/utils/cookies.js +110 -0
- package/dist/utils/cookies.js.map +1 -0
- package/dist/utils/errors.d.ts +36 -0
- package/dist/utils/errors.d.ts.map +1 -0
- package/dist/utils/errors.js +111 -0
- package/dist/utils/errors.js.map +1 -0
- package/dist/utils/event-emitter.d.ts +31 -0
- package/dist/utils/event-emitter.d.ts.map +1 -0
- package/dist/utils/event-emitter.js +51 -0
- package/dist/utils/event-emitter.js.map +1 -0
- package/dist/utils/evm.d.ts +33 -0
- package/dist/utils/evm.d.ts.map +1 -0
- package/dist/utils/evm.js +53 -0
- package/dist/utils/evm.js.map +1 -0
- package/dist/utils/is-dev.js +57 -0
- package/dist/utils/is-dev.js.map +1 -0
- package/dist/utils/jwt.d.ts +8 -0
- package/dist/utils/jwt.d.ts.map +1 -0
- package/dist/utils/jwt.js +74 -0
- package/dist/utils/jwt.js.map +1 -0
- package/dist/utils/numbers.js +60 -0
- package/dist/utils/numbers.js.map +1 -0
- package/dist/utils/proto-patch.js +29 -0
- package/dist/utils/proto-patch.js.map +1 -0
- package/dist/utils/remove-undefined.js +12 -0
- package/dist/utils/remove-undefined.js.map +1 -0
- package/dist/utils/streams.js +19 -0
- package/dist/utils/streams.js.map +1 -0
- package/dist/utils/time.d.ts +22 -0
- package/dist/utils/time.d.ts.map +1 -0
- package/dist/utils/time.js +71 -0
- package/dist/utils/time.js.map +1 -0
- package/dist/utils/timestamp.js +52 -0
- package/dist/utils/timestamp.js.map +1 -0
- package/dist/utils/types.d.ts +6 -0
- package/dist/utils/types.d.ts.map +1 -0
- package/dist/utils/u128.d.ts +8 -0
- package/dist/utils/u128.d.ts.map +1 -0
- package/dist/utils/u128.js +43 -0
- package/dist/utils/u128.js.map +1 -0
- package/dist/wired-services.d.ts +15 -0
- package/dist/wired-services.d.ts.map +1 -0
- package/dist/wired-services.js +67 -0
- package/dist/wired-services.js.map +1 -0
- package/package.json +117 -0
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
import { COOKIE_MAX_AGE_LIMIT } from "../_utils.js";
|
|
2
|
+
//#region src/utils/cookie-es/cookie/serialize.ts
|
|
3
|
+
/**
|
|
4
|
+
* RegExp to match cookie-name in RFC 6265bis sec 4.1.1
|
|
5
|
+
* This refers out to the obsoleted definition of token in RFC 2616 sec 2.2
|
|
6
|
+
* which has been replaced by the token definition in RFC 7230 appendix B.
|
|
7
|
+
*
|
|
8
|
+
* cookie-name = token
|
|
9
|
+
* token = 1*tchar
|
|
10
|
+
* tchar = "!" / "#" / "$" / "%" / "&" / "'" /
|
|
11
|
+
* "*" / "+" / "-" / "." / "^" / "_" /
|
|
12
|
+
* "`" / "|" / "~" / DIGIT / ALPHA
|
|
13
|
+
*
|
|
14
|
+
* Note: Allowing more characters - https://github.com/jshttp/cookie/issues/191
|
|
15
|
+
* Allow same range as cookie value, except `=`, which delimits end of name.
|
|
16
|
+
*/
|
|
17
|
+
const cookieNameRegExp = /^[\u0021-\u003A\u003C\u003E-\u007E]+$/;
|
|
18
|
+
/**
|
|
19
|
+
* RegExp to match cookie-value in RFC 6265bis sec 4.1.1
|
|
20
|
+
*
|
|
21
|
+
* cookie-value = *cookie-octet / ( DQUOTE *cookie-octet DQUOTE )
|
|
22
|
+
* cookie-octet = %x21 / %x23-2B / %x2D-3A / %x3C-5B / %x5D-7E
|
|
23
|
+
* ; US-ASCII characters excluding CTLs,
|
|
24
|
+
* ; whitespace DQUOTE, comma, semicolon,
|
|
25
|
+
* ; and backslash
|
|
26
|
+
*
|
|
27
|
+
* Allowing more characters: https://github.com/jshttp/cookie/issues/191
|
|
28
|
+
* Comma, backslash, and DQUOTE are not part of the parsing algorithm.
|
|
29
|
+
*/
|
|
30
|
+
const cookieValueRegExp = /^[\u0021-\u003A\u003C-\u007E]*$/;
|
|
31
|
+
/**
|
|
32
|
+
* RegExp to match domain-value in RFC 6265bis sec 4.1.1
|
|
33
|
+
*
|
|
34
|
+
* domain-value = <subdomain>
|
|
35
|
+
* ; defined in [RFC1034], Section 3.5, as
|
|
36
|
+
* ; enhanced by [RFC1123], Section 2.1
|
|
37
|
+
* <subdomain> = <label> | <subdomain> "." <label>
|
|
38
|
+
* <label> = <let-dig> [ [ <ldh-str> ] <let-dig> ]
|
|
39
|
+
* Labels must be 63 characters or less.
|
|
40
|
+
* 'let-dig' not 'letter' in the first char, per RFC1123
|
|
41
|
+
* <ldh-str> = <let-dig-hyp> | <let-dig-hyp> <ldh-str>
|
|
42
|
+
* <let-dig-hyp> = <let-dig> | "-"
|
|
43
|
+
* <let-dig> = <letter> | <digit>
|
|
44
|
+
* <letter> = any one of the 52 alphabetic characters A through Z in
|
|
45
|
+
* upper case and a through z in lower case
|
|
46
|
+
* <digit> = any one of the ten digits 0 through 9
|
|
47
|
+
*
|
|
48
|
+
* Keep support for leading dot: https://github.com/jshttp/cookie/issues/173
|
|
49
|
+
*
|
|
50
|
+
* > (Note that a leading %x2E ("."), if present, is ignored even though that
|
|
51
|
+
* character is not permitted, but a trailing %x2E ("."), if present, will
|
|
52
|
+
* cause the user agent to ignore the attribute.)
|
|
53
|
+
*/
|
|
54
|
+
const domainValueRegExp = /^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i;
|
|
55
|
+
/**
|
|
56
|
+
* RegExp to match path-value in RFC 6265bis sec 4.1.1
|
|
57
|
+
*
|
|
58
|
+
* path-value = <any CHAR except CTLs or ";">
|
|
59
|
+
* CHAR = %x01-7F
|
|
60
|
+
* ; defined in RFC 5234 appendix B.1
|
|
61
|
+
*/
|
|
62
|
+
const pathValueRegExp = /^[\u0020-\u003A\u003C-\u007E]*$/;
|
|
63
|
+
const __toString = Object.prototype.toString;
|
|
64
|
+
function serialize(_a0, _a1, _a2) {
|
|
65
|
+
const isObj = typeof _a0 === "object" && _a0 !== null;
|
|
66
|
+
const options = isObj ? _a1 : _a2;
|
|
67
|
+
const stringify = options?.stringify || JSON.stringify;
|
|
68
|
+
const cookie = isObj ? _a0 : {
|
|
69
|
+
..._a2,
|
|
70
|
+
name: _a0,
|
|
71
|
+
value: _a1 == void 0 ? "" : typeof _a1 === "string" ? _a1 : stringify(_a1)
|
|
72
|
+
};
|
|
73
|
+
const enc = options?.encode || encodeURIComponent;
|
|
74
|
+
if (!cookieNameRegExp.test(cookie.name)) throw new TypeError(`argument name is invalid: ${cookie.name}`);
|
|
75
|
+
const value = cookie.value ? enc(cookie.value) : "";
|
|
76
|
+
if (!cookieValueRegExp.test(value)) throw new TypeError(`argument val is invalid: ${cookie.value}`);
|
|
77
|
+
if (!cookie.secure) {
|
|
78
|
+
if (cookie.partitioned) throw new TypeError(`Partitioned cookies must have the Secure attribute`);
|
|
79
|
+
if (cookie.sameSite && String(cookie.sameSite).toLowerCase() === "none") throw new TypeError(`SameSite=None cookies must have the Secure attribute`);
|
|
80
|
+
if (cookie.name.length > 9 && cookie.name.charCodeAt(0) === 95 && cookie.name.charCodeAt(1) === 95) {
|
|
81
|
+
const nameLower = cookie.name.toLowerCase();
|
|
82
|
+
if (nameLower.startsWith("__secure-") || nameLower.startsWith("__host-")) throw new TypeError(`${cookie.name} cookies must have the Secure attribute`);
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
if (cookie.name.length > 7 && cookie.name.charCodeAt(0) === 95 && cookie.name.charCodeAt(1) === 95 && cookie.name.toLowerCase().startsWith("__host-")) {
|
|
86
|
+
if (cookie.path !== "/") throw new TypeError(`__Host- cookies must have Path=/`);
|
|
87
|
+
if (cookie.domain) throw new TypeError(`__Host- cookies must not have a Domain attribute`);
|
|
88
|
+
}
|
|
89
|
+
let str = cookie.name + "=" + value;
|
|
90
|
+
if (cookie.maxAge !== void 0) {
|
|
91
|
+
if (!Number.isInteger(cookie.maxAge)) throw new TypeError(`option maxAge is invalid: ${cookie.maxAge}`);
|
|
92
|
+
str += "; Max-Age=" + Math.max(0, Math.min(cookie.maxAge, COOKIE_MAX_AGE_LIMIT));
|
|
93
|
+
}
|
|
94
|
+
if (cookie.domain) {
|
|
95
|
+
if (!domainValueRegExp.test(cookie.domain)) throw new TypeError(`option domain is invalid: ${cookie.domain}`);
|
|
96
|
+
str += "; Domain=" + cookie.domain;
|
|
97
|
+
}
|
|
98
|
+
if (cookie.path) {
|
|
99
|
+
if (!pathValueRegExp.test(cookie.path)) throw new TypeError(`option path is invalid: ${cookie.path}`);
|
|
100
|
+
str += "; Path=" + cookie.path;
|
|
101
|
+
}
|
|
102
|
+
if (cookie.expires) {
|
|
103
|
+
if (!isDate(cookie.expires) || !Number.isFinite(cookie.expires.valueOf())) throw new TypeError(`option expires is invalid: ${cookie.expires}`);
|
|
104
|
+
str += "; Expires=" + cookie.expires.toUTCString();
|
|
105
|
+
}
|
|
106
|
+
if (cookie.httpOnly) str += "; HttpOnly";
|
|
107
|
+
if (cookie.secure) str += "; Secure";
|
|
108
|
+
if (cookie.partitioned) str += "; Partitioned";
|
|
109
|
+
if (cookie.priority) switch (typeof cookie.priority === "string" ? cookie.priority.toLowerCase() : void 0) {
|
|
110
|
+
case "low":
|
|
111
|
+
str += "; Priority=Low";
|
|
112
|
+
break;
|
|
113
|
+
case "medium":
|
|
114
|
+
str += "; Priority=Medium";
|
|
115
|
+
break;
|
|
116
|
+
case "high":
|
|
117
|
+
str += "; Priority=High";
|
|
118
|
+
break;
|
|
119
|
+
default: throw new TypeError(`option priority is invalid: ${cookie.priority}`);
|
|
120
|
+
}
|
|
121
|
+
if (cookie.sameSite) switch (typeof cookie.sameSite === "string" ? cookie.sameSite.toLowerCase() : cookie.sameSite) {
|
|
122
|
+
case true:
|
|
123
|
+
case "strict":
|
|
124
|
+
str += "; SameSite=Strict";
|
|
125
|
+
break;
|
|
126
|
+
case "lax":
|
|
127
|
+
str += "; SameSite=Lax";
|
|
128
|
+
break;
|
|
129
|
+
case "none":
|
|
130
|
+
str += "; SameSite=None";
|
|
131
|
+
break;
|
|
132
|
+
default: throw new TypeError(`option sameSite is invalid: ${cookie.sameSite}`);
|
|
133
|
+
}
|
|
134
|
+
return str;
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Determine if value is a Date.
|
|
138
|
+
*/
|
|
139
|
+
function isDate(val) {
|
|
140
|
+
return __toString.call(val) === "[object Date]";
|
|
141
|
+
}
|
|
142
|
+
//#endregion
|
|
143
|
+
export { serialize };
|
|
144
|
+
|
|
145
|
+
//# sourceMappingURL=serialize.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serialize.js","names":[],"sources":["../../../../src/utils/cookie-es/cookie/serialize.ts"],"sourcesContent":["// Based on https://github.com/jshttp/cookie (MIT)\n// Copyright (c) 2012-2014 Roman Shtylman <shtylman@gmail.com>\n// Copyright (c) 2015 Douglas Christopher Wilson <doug@somethingdoug.com>\n// Last sync: v1.1.1 (e264dfa)\n\nimport type {\n Cookies,\n SetCookie,\n CookieStringifyOptions,\n CookieSerializeOptions,\n} from \"./types.js\";\nimport { COOKIE_MAX_AGE_LIMIT } from \"../_utils.js\";\n\nexport type {\n CookieParseOptions,\n CookieSerializeOptions,\n CookieStringifyOptions,\n Cookies,\n SetCookie,\n} from \"./types.js\";\n\n/**\n * RegExp to match cookie-name in RFC 6265bis sec 4.1.1\n * This refers out to the obsoleted definition of token in RFC 2616 sec 2.2\n * which has been replaced by the token definition in RFC 7230 appendix B.\n *\n * cookie-name = token\n * token = 1*tchar\n * tchar = \"!\" / \"#\" / \"$\" / \"%\" / \"&\" / \"'\" /\n * \"*\" / \"+\" / \"-\" / \".\" / \"^\" / \"_\" /\n * \"`\" / \"|\" / \"~\" / DIGIT / ALPHA\n *\n * Note: Allowing more characters - https://github.com/jshttp/cookie/issues/191\n * Allow same range as cookie value, except `=`, which delimits end of name.\n */\nconst cookieNameRegExp = /^[\\u0021-\\u003A\\u003C\\u003E-\\u007E]+$/;\n\n/**\n * RegExp to match cookie-value in RFC 6265bis sec 4.1.1\n *\n * cookie-value = *cookie-octet / ( DQUOTE *cookie-octet DQUOTE )\n * cookie-octet = %x21 / %x23-2B / %x2D-3A / %x3C-5B / %x5D-7E\n * ; US-ASCII characters excluding CTLs,\n * ; whitespace DQUOTE, comma, semicolon,\n * ; and backslash\n *\n * Allowing more characters: https://github.com/jshttp/cookie/issues/191\n * Comma, backslash, and DQUOTE are not part of the parsing algorithm.\n */\nconst cookieValueRegExp = /^[\\u0021-\\u003A\\u003C-\\u007E]*$/;\n\n/**\n * RegExp to match domain-value in RFC 6265bis sec 4.1.1\n *\n * domain-value = <subdomain>\n * ; defined in [RFC1034], Section 3.5, as\n * ; enhanced by [RFC1123], Section 2.1\n * <subdomain> = <label> | <subdomain> \".\" <label>\n * <label> = <let-dig> [ [ <ldh-str> ] <let-dig> ]\n * Labels must be 63 characters or less.\n * 'let-dig' not 'letter' in the first char, per RFC1123\n * <ldh-str> = <let-dig-hyp> | <let-dig-hyp> <ldh-str>\n * <let-dig-hyp> = <let-dig> | \"-\"\n * <let-dig> = <letter> | <digit>\n * <letter> = any one of the 52 alphabetic characters A through Z in\n * upper case and a through z in lower case\n * <digit> = any one of the ten digits 0 through 9\n *\n * Keep support for leading dot: https://github.com/jshttp/cookie/issues/173\n *\n * > (Note that a leading %x2E (\".\"), if present, is ignored even though that\n * character is not permitted, but a trailing %x2E (\".\"), if present, will\n * cause the user agent to ignore the attribute.)\n */\nconst domainValueRegExp =\n /^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i;\n\n/**\n * RegExp to match path-value in RFC 6265bis sec 4.1.1\n *\n * path-value = <any CHAR except CTLs or \";\">\n * CHAR = %x01-7F\n * ; defined in RFC 5234 appendix B.1\n */\nconst pathValueRegExp = /^[\\u0020-\\u003A\\u003C-\\u007E]*$/;\n\nconst __toString = Object.prototype.toString;\n\n/**\n * Stringify a cookies object into an HTTP `Cookie` header string.\n *\n * @param cookie - An object of cookie name-value pairs.\n * @param options - Stringify options (`encode`).\n * @returns A `Cookie` header string (e.g. `\"foo=bar; baz=qux\"`).\n */\nexport function stringifyCookie(cookie: Cookies, options?: CookieStringifyOptions): string {\n const enc = options?.encode || encodeURIComponent;\n const keys = Object.keys(cookie);\n let str = \"\";\n\n for (const [i, name] of keys.entries()) {\n const val = cookie[name];\n if (val === undefined) continue;\n\n if (!cookieNameRegExp.test(name)) {\n throw new TypeError(`cookie name is invalid: ${name}`);\n }\n\n const value = enc(val);\n\n if (!cookieValueRegExp.test(value)) {\n throw new TypeError(`cookie val is invalid: ${val}`);\n }\n\n if (i > 0) str += \"; \";\n str += name + \"=\" + value;\n }\n\n return str;\n}\n\n/**\n * Serialize a cookie into a `Set-Cookie` header string.\n *\n * Accepts either a name-value pair with options or a `SetCookie` object.\n * Non-string values are coerced to strings. Validates name, value, domain,\n * and path against RFC 6265bis.\n *\n * @example\n * ```js\n * serialize(\"foo\", \"bar\", { httpOnly: true });\n * // => \"foo=bar; HttpOnly\"\n *\n * serialize({ name: \"foo\", value: \"bar\", secure: true });\n * // => \"foo=bar; Secure\"\n * ```\n */\nexport function serialize(cookie: SetCookie, options?: CookieStringifyOptions): string;\nexport function serialize(name: string, val: unknown, options?: CookieSerializeOptions): string;\nexport function serialize(\n _a0: string | SetCookie,\n _a1?: unknown,\n _a2?: CookieSerializeOptions,\n): string {\n const isObj = typeof _a0 === \"object\" && _a0 !== null;\n const options = isObj ? (_a1 as CookieStringifyOptions) : _a2;\n const stringify = options?.stringify || JSON.stringify;\n const cookie = isObj\n ? _a0\n : {\n ..._a2,\n name: _a0,\n value: _a1 == undefined ? \"\" : typeof _a1 === \"string\" ? _a1 : stringify(_a1),\n };\n\n const enc = options?.encode || encodeURIComponent;\n\n if (!cookieNameRegExp.test(cookie.name)) {\n throw new TypeError(`argument name is invalid: ${cookie.name}`);\n }\n\n const value = cookie.value ? enc(cookie.value) : \"\";\n\n if (!cookieValueRegExp.test(value)) {\n throw new TypeError(`argument val is invalid: ${cookie.value}`);\n }\n\n // RFC 6265bis: validate attributes requiring Secure\n if (!cookie.secure) {\n // CHIPS: Partitioned requires Secure\n if (cookie.partitioned) {\n throw new TypeError(`Partitioned cookies must have the Secure attribute`);\n }\n // RFC 6265bis sec 4.1.2.7: SameSite=None requires Secure\n if (cookie.sameSite && String(cookie.sameSite).toLowerCase() === \"none\") {\n throw new TypeError(`SameSite=None cookies must have the Secure attribute`);\n }\n // RFC 6265bis sec 4.1.3: __Secure- prefix requires Secure\n if (\n cookie.name.length > 9 &&\n cookie.name.charCodeAt(0) === 95 /* _ */ &&\n cookie.name.charCodeAt(1) === 95 /* _ */\n ) {\n const nameLower = cookie.name.toLowerCase();\n if (nameLower.startsWith(\"__secure-\") || nameLower.startsWith(\"__host-\")) {\n throw new TypeError(`${cookie.name} cookies must have the Secure attribute`);\n }\n }\n }\n\n // RFC 6265bis sec 4.1.3.2: __Host- prefix validation\n if (\n cookie.name.length > 7 &&\n cookie.name.charCodeAt(0) === 95 /* _ */ &&\n cookie.name.charCodeAt(1) === 95 /* _ */ &&\n cookie.name.toLowerCase().startsWith(\"__host-\")\n ) {\n if (cookie.path !== \"/\") {\n throw new TypeError(`__Host- cookies must have Path=/`);\n }\n if (cookie.domain) {\n throw new TypeError(`__Host- cookies must not have a Domain attribute`);\n }\n }\n\n let str = cookie.name + \"=\" + value;\n\n if (cookie.maxAge !== undefined) {\n if (!Number.isInteger(cookie.maxAge)) {\n throw new TypeError(`option maxAge is invalid: ${cookie.maxAge}`);\n }\n\n // RFC 6265bis: clamp negative to 0, cap to 400-day limit\n str += \"; Max-Age=\" + Math.max(0, Math.min(cookie.maxAge, COOKIE_MAX_AGE_LIMIT));\n }\n\n if (cookie.domain) {\n if (!domainValueRegExp.test(cookie.domain)) {\n throw new TypeError(`option domain is invalid: ${cookie.domain}`);\n }\n\n str += \"; Domain=\" + cookie.domain;\n }\n\n if (cookie.path) {\n if (!pathValueRegExp.test(cookie.path)) {\n throw new TypeError(`option path is invalid: ${cookie.path}`);\n }\n\n str += \"; Path=\" + cookie.path;\n }\n\n if (cookie.expires) {\n if (!isDate(cookie.expires) || !Number.isFinite(cookie.expires.valueOf())) {\n throw new TypeError(`option expires is invalid: ${cookie.expires}`);\n }\n\n str += \"; Expires=\" + cookie.expires.toUTCString();\n }\n\n if (cookie.httpOnly) {\n str += \"; HttpOnly\";\n }\n\n if (cookie.secure) {\n str += \"; Secure\";\n }\n\n if (cookie.partitioned) {\n str += \"; Partitioned\";\n }\n\n if (cookie.priority) {\n const priority =\n typeof cookie.priority === \"string\" ? cookie.priority.toLowerCase() : undefined;\n switch (priority) {\n case \"low\": {\n str += \"; Priority=Low\";\n break;\n }\n case \"medium\": {\n str += \"; Priority=Medium\";\n break;\n }\n case \"high\": {\n str += \"; Priority=High\";\n break;\n }\n default: {\n throw new TypeError(`option priority is invalid: ${cookie.priority}`);\n }\n }\n }\n\n if (cookie.sameSite) {\n const sameSite =\n typeof cookie.sameSite === \"string\" ? cookie.sameSite.toLowerCase() : cookie.sameSite;\n switch (sameSite) {\n case true:\n case \"strict\": {\n str += \"; SameSite=Strict\";\n break;\n }\n case \"lax\": {\n str += \"; SameSite=Lax\";\n break;\n }\n case \"none\": {\n str += \"; SameSite=None\";\n break;\n }\n default: {\n throw new TypeError(`option sameSite is invalid: ${cookie.sameSite}`);\n }\n }\n }\n\n return str;\n}\n\n// --- Internal Utils ---\n\n/**\n * Determine if value is a Date.\n */\nfunction isDate(val: unknown): val is Date {\n return __toString.call(val) === \"[object Date]\";\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAmCA,MAAM,mBAAmB;;;;;;;;;;;;;AAczB,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;AAyB1B,MAAM,oBACF;;;;;;;;AASJ,MAAM,kBAAkB;AAExB,MAAM,aAAa,OAAO,UAAU;AAqDpC,SAAgB,UACZ,KACA,KACA,KACM;CACN,MAAM,QAAQ,OAAO,QAAQ,YAAY,QAAQ;CACjD,MAAM,UAAU,QAAS,MAAiC;CAC1D,MAAM,YAAY,SAAS,aAAa,KAAK;CAC7C,MAAM,SAAS,QACT,MACA;EACI,GAAG;EACH,MAAM;EACN,OAAO,OAAO,KAAA,IAAY,KAAK,OAAO,QAAQ,WAAW,MAAM,UAAU,GAAG;CAChF;CAEN,MAAM,MAAM,SAAS,UAAU;CAE/B,IAAI,CAAC,iBAAiB,KAAK,OAAO,IAAI,GAClC,MAAM,IAAI,UAAU,6BAA6B,OAAO,MAAM;CAGlE,MAAM,QAAQ,OAAO,QAAQ,IAAI,OAAO,KAAK,IAAI;CAEjD,IAAI,CAAC,kBAAkB,KAAK,KAAK,GAC7B,MAAM,IAAI,UAAU,4BAA4B,OAAO,OAAO;CAIlE,IAAI,CAAC,OAAO,QAAQ;EAEhB,IAAI,OAAO,aACP,MAAM,IAAI,UAAU,oDAAoD;EAG5E,IAAI,OAAO,YAAY,OAAO,OAAO,QAAQ,CAAC,CAAC,YAAY,MAAM,QAC7D,MAAM,IAAI,UAAU,sDAAsD;EAG9E,IACI,OAAO,KAAK,SAAS,KACrB,OAAO,KAAK,WAAW,CAAC,MAAM,MAC9B,OAAO,KAAK,WAAW,CAAC,MAAM,IAChC;GACE,MAAM,YAAY,OAAO,KAAK,YAAY;GAC1C,IAAI,UAAU,WAAW,WAAW,KAAK,UAAU,WAAW,SAAS,GACnE,MAAM,IAAI,UAAU,GAAG,OAAO,KAAK,wCAAwC;EAEnF;CACJ;CAGA,IACI,OAAO,KAAK,SAAS,KACrB,OAAO,KAAK,WAAW,CAAC,MAAM,MAC9B,OAAO,KAAK,WAAW,CAAC,MAAM,MAC9B,OAAO,KAAK,YAAY,CAAC,CAAC,WAAW,SAAS,GAChD;EACE,IAAI,OAAO,SAAS,KAChB,MAAM,IAAI,UAAU,kCAAkC;EAE1D,IAAI,OAAO,QACP,MAAM,IAAI,UAAU,kDAAkD;CAE9E;CAEA,IAAI,MAAM,OAAO,OAAO,MAAM;CAE9B,IAAI,OAAO,WAAW,KAAA,GAAW;EAC7B,IAAI,CAAC,OAAO,UAAU,OAAO,MAAM,GAC/B,MAAM,IAAI,UAAU,6BAA6B,OAAO,QAAQ;EAIpE,OAAO,eAAe,KAAK,IAAI,GAAG,KAAK,IAAI,OAAO,QAAQ,oBAAoB,CAAC;CACnF;CAEA,IAAI,OAAO,QAAQ;EACf,IAAI,CAAC,kBAAkB,KAAK,OAAO,MAAM,GACrC,MAAM,IAAI,UAAU,6BAA6B,OAAO,QAAQ;EAGpE,OAAO,cAAc,OAAO;CAChC;CAEA,IAAI,OAAO,MAAM;EACb,IAAI,CAAC,gBAAgB,KAAK,OAAO,IAAI,GACjC,MAAM,IAAI,UAAU,2BAA2B,OAAO,MAAM;EAGhE,OAAO,YAAY,OAAO;CAC9B;CAEA,IAAI,OAAO,SAAS;EAChB,IAAI,CAAC,OAAO,OAAO,OAAO,KAAK,CAAC,OAAO,SAAS,OAAO,QAAQ,QAAQ,CAAC,GACpE,MAAM,IAAI,UAAU,8BAA8B,OAAO,SAAS;EAGtE,OAAO,eAAe,OAAO,QAAQ,YAAY;CACrD;CAEA,IAAI,OAAO,UACP,OAAO;CAGX,IAAI,OAAO,QACP,OAAO;CAGX,IAAI,OAAO,aACP,OAAO;CAGX,IAAI,OAAO,UAGP,QADI,OAAO,OAAO,aAAa,WAAW,OAAO,SAAS,YAAY,IAAI,KAAA,GAC1E;EACI,KAAK;GACD,OAAO;GACP;EAEJ,KAAK;GACD,OAAO;GACP;EAEJ,KAAK;GACD,OAAO;GACP;EAEJ,SACI,MAAM,IAAI,UAAU,+BAA+B,OAAO,UAAU;CAE5E;CAGJ,IAAI,OAAO,UAGP,QADI,OAAO,OAAO,aAAa,WAAW,OAAO,SAAS,YAAY,IAAI,OAAO,UACjF;EACI,KAAK;EACL,KAAK;GACD,OAAO;GACP;EAEJ,KAAK;GACD,OAAO;GACP;EAEJ,KAAK;GACD,OAAO;GACP;EAEJ,SACI,MAAM,IAAI,UAAU,+BAA+B,OAAO,UAAU;CAE5E;CAGJ,OAAO;AACX;;;;AAOA,SAAS,OAAO,KAA2B;CACvC,OAAO,WAAW,KAAK,GAAG,MAAM;AACpC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cookies.d.ts","names":[],"sources":["../../src/utils/cookies.ts"],"mappings":";KA6DY,eACN;EACE,IAAI;IACN"}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
import { isLocalNetworkHost } from "./is-dev.js";
|
|
2
|
+
import { parse } from "./cookie-es/cookie/parse.js";
|
|
3
|
+
import { serialize } from "./cookie-es/cookie/serialize.js";
|
|
4
|
+
//#region src/utils/cookies.ts
|
|
5
|
+
/**
|
|
6
|
+
* Whether auth cookies should carry the `Secure` attribute.
|
|
7
|
+
*
|
|
8
|
+
* On https pages: always Secure. On plaintext pages, browsers silently DROP
|
|
9
|
+
* Secure cookies (localhost excepted), so dev against a LAN IP — e.g. phone
|
|
10
|
+
* testing http://192.168.x.x — logged users out instantly because the freshly
|
|
11
|
+
* written session cookies never persisted. The downgrade is therefore allowed
|
|
12
|
+
* ONLY on local/private-network hosts; on a public hostname served over http
|
|
13
|
+
* (a misconfigured production deployment) cookies stay Secure so auth fails
|
|
14
|
+
* closed instead of shipping session cookies over plaintext.
|
|
15
|
+
*/
|
|
16
|
+
function shouldSecureCookies() {
|
|
17
|
+
if (typeof window === "undefined") return true;
|
|
18
|
+
if (window.location.protocol === "https:") return true;
|
|
19
|
+
return !isLocalNetworkHost(window.location.hostname);
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Writes a browser cookie.
|
|
23
|
+
*/
|
|
24
|
+
function setCookie({ name, value, options }) {
|
|
25
|
+
if (typeof document === "undefined") return;
|
|
26
|
+
document.cookie = serialize(name, value, options);
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Reads a browser cookie by name.
|
|
30
|
+
*/
|
|
31
|
+
function getCookie(name) {
|
|
32
|
+
if (typeof document === "undefined") return;
|
|
33
|
+
return parse(document.cookie)[name];
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Deletes a browser cookie by name.
|
|
37
|
+
*/
|
|
38
|
+
function deleteCookie(name, options) {
|
|
39
|
+
if (typeof document === "undefined") return;
|
|
40
|
+
document.cookie = serialize(name, "", {
|
|
41
|
+
path: options?.path ?? "/",
|
|
42
|
+
expires: /* @__PURE__ */ new Date("Thu, 01 Jan 1970 00:00:00 GMT")
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Parses cookies from a Request header.
|
|
47
|
+
*/
|
|
48
|
+
function parseCookiesFromRequest(request) {
|
|
49
|
+
const cookieHeader = request.headers.get("cookie");
|
|
50
|
+
if (!cookieHeader) return {};
|
|
51
|
+
return parse(cookieHeader);
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Reads a cookie value from either a cookie map or cookie getter.
|
|
55
|
+
*/
|
|
56
|
+
function getCookieValue(cookies, name) {
|
|
57
|
+
if (cookies instanceof Request) return parseCookiesFromRequest(cookies)[name];
|
|
58
|
+
if (typeof cookies.get === "function") return cookies.get(name);
|
|
59
|
+
return cookies[name];
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* A generic class for managing cookies on the client side.
|
|
63
|
+
* Provides a consistent interface for getting, setting, and deleting cookies.
|
|
64
|
+
*
|
|
65
|
+
* @example
|
|
66
|
+
* ```ts
|
|
67
|
+
* const cookieManager = new CookieManager({ name: "my-cookie" });
|
|
68
|
+
* cookieManager.get();
|
|
69
|
+
* cookieManager.set("my-value");
|
|
70
|
+
* cookieManager.clear();
|
|
71
|
+
* ```
|
|
72
|
+
*/
|
|
73
|
+
var CookieManager = class {
|
|
74
|
+
#name;
|
|
75
|
+
constructor(opts) {
|
|
76
|
+
this.#name = opts.name;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Reads the managed cookie value.
|
|
80
|
+
*/
|
|
81
|
+
get() {
|
|
82
|
+
return getCookie(this.#name) ?? null;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Writes the managed cookie value.
|
|
86
|
+
*/
|
|
87
|
+
set(token, options) {
|
|
88
|
+
setCookie({
|
|
89
|
+
name: this.#name,
|
|
90
|
+
value: token,
|
|
91
|
+
options: {
|
|
92
|
+
path: options?.path ?? "/",
|
|
93
|
+
sameSite: options?.sameSite ?? "lax",
|
|
94
|
+
secure: options?.secure ?? shouldSecureCookies(),
|
|
95
|
+
maxAge: options?.maxAge,
|
|
96
|
+
expires: options?.expires
|
|
97
|
+
}
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Clears the managed cookie value.
|
|
102
|
+
*/
|
|
103
|
+
clear(options) {
|
|
104
|
+
deleteCookie(this.#name, options);
|
|
105
|
+
}
|
|
106
|
+
};
|
|
107
|
+
//#endregion
|
|
108
|
+
export { CookieManager, deleteCookie, getCookie, getCookieValue, parseCookiesFromRequest, setCookie, shouldSecureCookies };
|
|
109
|
+
|
|
110
|
+
//# sourceMappingURL=cookies.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cookies.js","names":["serializeCookie","parseCookie","#name"],"sources":["../../src/utils/cookies.ts"],"sourcesContent":["import {\n type Cookies,\n type CookieSerializeOptions,\n parseCookie,\n serializeCookie,\n} from \"./cookie-es/index.js\";\nimport { isLocalNetworkHost } from \"./is-dev.js\";\n\n/**\n * Whether auth cookies should carry the `Secure` attribute.\n *\n * On https pages: always Secure. On plaintext pages, browsers silently DROP\n * Secure cookies (localhost excepted), so dev against a LAN IP — e.g. phone\n * testing http://192.168.x.x — logged users out instantly because the freshly\n * written session cookies never persisted. The downgrade is therefore allowed\n * ONLY on local/private-network hosts; on a public hostname served over http\n * (a misconfigured production deployment) cookies stay Secure so auth fails\n * closed instead of shipping session cookies over plaintext.\n */\nexport function shouldSecureCookies(): boolean {\n if (typeof window === \"undefined\") return true;\n if (window.location.protocol === \"https:\") return true;\n return !isLocalNetworkHost(window.location.hostname);\n}\n\ninterface SetCookieParams {\n name: string;\n value: string;\n options: CookieSerializeOptions;\n}\n\n/**\n * Writes a browser cookie.\n */\nexport function setCookie({ name, value, options }: SetCookieParams): void {\n if (typeof document === \"undefined\") return;\n\n document.cookie = serializeCookie(name, value, options);\n}\n\n/**\n * Reads a browser cookie by name.\n */\nexport function getCookie(name: string): string | undefined {\n if (typeof document === \"undefined\") return;\n\n return parseCookie(document.cookie)[name];\n}\n\n/**\n * Deletes a browser cookie by name.\n */\nexport function deleteCookie(name: string, options?: { path?: string }): void {\n if (typeof document === \"undefined\") return;\n\n document.cookie = serializeCookie(name, \"\", {\n path: options?.path ?? \"/\",\n expires: new Date(\"Thu, 01 Jan 1970 00:00:00 GMT\"),\n });\n}\n\nexport type CookieGetter =\n | Record<string, string>\n | { get(name: string): string | undefined }\n | Request;\n\n/**\n * Parses cookies from a Request header.\n */\nexport function parseCookiesFromRequest(request: Request): Cookies {\n const cookieHeader = request.headers.get(\"cookie\");\n if (!cookieHeader) return {};\n\n return parseCookie(cookieHeader);\n}\n\n/**\n * Reads a cookie value from either a cookie map or cookie getter.\n */\nexport function getCookieValue(cookies: CookieGetter, name: string): string | undefined {\n if (cookies instanceof Request) {\n const parsed = parseCookiesFromRequest(cookies);\n return parsed[name];\n }\n if (typeof cookies.get === \"function\") {\n return cookies.get(name);\n }\n return (cookies as Record<string, string>)[name];\n}\n\ninterface CookieManagerOptions {\n /**\n * The name of the cookie to manage.\n */\n name: string;\n}\n\n/**\n * A generic class for managing cookies on the client side.\n * Provides a consistent interface for getting, setting, and deleting cookies.\n *\n * @example\n * ```ts\n * const cookieManager = new CookieManager({ name: \"my-cookie\" });\n * cookieManager.get();\n * cookieManager.set(\"my-value\");\n * cookieManager.clear();\n * ```\n */\nexport class CookieManager {\n #name: string;\n constructor(opts: CookieManagerOptions) {\n this.#name = opts.name;\n }\n /**\n * Reads the managed cookie value.\n */\n get(): string | null {\n const token = getCookie(this.#name);\n return token ?? null;\n }\n\n /**\n * Writes the managed cookie value.\n */\n set(\n token: string,\n options?: {\n path?: string;\n secure?: boolean;\n sameSite?: \"lax\" | \"strict\" | \"none\";\n maxAge?: number;\n expires?: Date;\n },\n ): void {\n setCookie({\n name: this.#name,\n value: token,\n options: {\n path: options?.path ?? \"/\",\n sameSite: options?.sameSite ?? \"lax\",\n secure: options?.secure ?? shouldSecureCookies(),\n maxAge: options?.maxAge,\n expires: options?.expires,\n },\n });\n }\n\n /**\n * Clears the managed cookie value.\n */\n clear(options?: { path?: string }): void {\n deleteCookie(this.#name, options);\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;AAmBA,SAAgB,sBAA+B;CAC3C,IAAI,OAAO,WAAW,aAAa,OAAO;CAC1C,IAAI,OAAO,SAAS,aAAa,UAAU,OAAO;CAClD,OAAO,CAAC,mBAAmB,OAAO,SAAS,QAAQ;AACvD;;;;AAWA,SAAgB,UAAU,EAAE,MAAM,OAAO,WAAkC;CACvE,IAAI,OAAO,aAAa,aAAa;CAErC,SAAS,SAASA,UAAgB,MAAM,OAAO,OAAO;AAC1D;;;;AAKA,SAAgB,UAAU,MAAkC;CACxD,IAAI,OAAO,aAAa,aAAa;CAErC,OAAOC,MAAY,SAAS,MAAM,CAAC,CAAC;AACxC;;;;AAKA,SAAgB,aAAa,MAAc,SAAmC;CAC1E,IAAI,OAAO,aAAa,aAAa;CAErC,SAAS,SAASD,UAAgB,MAAM,IAAI;EACxC,MAAM,SAAS,QAAQ;EACvB,yBAAS,IAAI,KAAK,+BAA+B;CACrD,CAAC;AACL;;;;AAUA,SAAgB,wBAAwB,SAA2B;CAC/D,MAAM,eAAe,QAAQ,QAAQ,IAAI,QAAQ;CACjD,IAAI,CAAC,cAAc,OAAO,CAAC;CAE3B,OAAOC,MAAY,YAAY;AACnC;;;;AAKA,SAAgB,eAAe,SAAuB,MAAkC;CACpF,IAAI,mBAAmB,SAEnB,OADe,wBAAwB,OAC3B,CAAC,CAAC;CAElB,IAAI,OAAO,QAAQ,QAAQ,YACvB,OAAO,QAAQ,IAAI,IAAI;CAE3B,OAAQ,QAAmC;AAC/C;;;;;;;;;;;;;AAqBA,IAAa,gBAAb,MAA2B;CACvB;CACA,YAAY,MAA4B;EACpC,KAAKC,QAAQ,KAAK;CACtB;;;;CAIA,MAAqB;EAEjB,OADc,UAAU,KAAKA,KAClB,KAAK;CACpB;;;;CAKA,IACI,OACA,SAOI;EACJ,UAAU;GACN,MAAM,KAAKA;GACX,OAAO;GACP,SAAS;IACL,MAAM,SAAS,QAAQ;IACvB,UAAU,SAAS,YAAY;IAC/B,QAAQ,SAAS,UAAU,oBAAoB;IAC/C,QAAQ,SAAS;IACjB,SAAS,SAAS;GACtB;EACJ,CAAC;CACL;;;;CAKA,MAAM,SAAmC;EACrC,aAAa,KAAKA,OAAO,OAAO;CACpC;AACJ"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
//#region src/utils/errors.d.ts
|
|
2
|
+
/**
|
|
3
|
+
* Whether the backend signalled that the requested resource does not exist.
|
|
4
|
+
* Prefer `err instanceof ResourceNotFoundError`; this predicate also covers
|
|
5
|
+
* raw `ConnectError`s (NotFound or the auth resource-not-found detail).
|
|
6
|
+
*/
|
|
7
|
+
declare function isResourceNotFoundError(err: unknown): boolean;
|
|
8
|
+
/** Whether an optimistic-concurrency update used a stale resource revision. */
|
|
9
|
+
declare function isRevisionConflictError(err: unknown): boolean;
|
|
10
|
+
/** Whether a policy mutation failed because the policy is still attached to a resource. */
|
|
11
|
+
declare function isPolicyInUseError(err: unknown): boolean;
|
|
12
|
+
/** Whether a policy mutation failed because the policy is locked. */
|
|
13
|
+
declare function isPolicyLockedError(err: unknown): boolean;
|
|
14
|
+
/** Whether the policy and target account belong to different scopes. */
|
|
15
|
+
declare function isPolicyScopeMismatchError(err: unknown): boolean;
|
|
16
|
+
/**
|
|
17
|
+
* Whether an error is retryable (network/timeout) for idempotent operations.
|
|
18
|
+
* Uses same requestId on retry; backend dedupes within 2min.
|
|
19
|
+
* Prefer `err instanceof TransientError` or `err.retryable` on typed errors.
|
|
20
|
+
*/
|
|
21
|
+
declare function isRetryableError(err: unknown): boolean;
|
|
22
|
+
/**
|
|
23
|
+
* Diagnostic formatter for SDK and ConnectRPC errors.
|
|
24
|
+
* Typed SDK errors already carry normalized messages; for raw ConnectErrors
|
|
25
|
+
* this strips leading "[CODE]" prefixes. Falls back to a friendly default.
|
|
26
|
+
* The returned message may contain backend implementation details. Never render
|
|
27
|
+
* it to a user; use {@link formatUserFacingError} at presentation boundaries.
|
|
28
|
+
* @param err - The error to format.
|
|
29
|
+
* @param fallback - The fallback message when no message is available.
|
|
30
|
+
* @returns The formatted error message.
|
|
31
|
+
*/
|
|
32
|
+
declare function formatConnectError(err: unknown, fallback?: string): string;
|
|
33
|
+
declare function formatUserFacingError(error: unknown, fallback: string): string;
|
|
34
|
+
//#endregion
|
|
35
|
+
export { formatConnectError, formatUserFacingError, isPolicyInUseError, isPolicyLockedError, isPolicyScopeMismatchError, isResourceNotFoundError, isRetryableError, isRevisionConflictError };
|
|
36
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","names":[],"sources":["../../src/utils/errors.ts"],"mappings":";;;;;;iBAoCgB,wBAAwB;;iBAcxB,wBAAwB;;iBAsBxB,mBAAmB;;iBAKnB,oBAAoB;;iBAKpB,2BAA2B;;;;;;iBAS3B,iBAAiB;;;;;;;;;;;iBAiBjB,mBACZ,cACA;iBA0CY,sBAAsB,gBAAgB"}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
import { AuthErrorDetailSchema } from "../gen/auth/v1/auth_pb.js";
|
|
2
|
+
import { NetworkError, PolicyInUseError, PolicyLockedError, PolicyScopeMismatchError, PolyesterError, RateLimitError, ResourceNotFoundError, RevisionConflictError, ServiceUnavailableError, TimeoutError, isAbortError } from "../shared/errors.js";
|
|
3
|
+
import { getNormalizedConnectMessage, toPolyesterError } from "../shared/connect-error-mapping.js";
|
|
4
|
+
import { Code, ConnectError } from "@connectrpc/connect";
|
|
5
|
+
//#region src/utils/errors.ts
|
|
6
|
+
function hasAuthErrorCode(err, code) {
|
|
7
|
+
return ConnectError.from(err).findDetails(AuthErrorDetailSchema).some((detail) => detail.code === code);
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Unwraps a typed SDK error to the underlying `ConnectError` (kept as `cause`)
|
|
11
|
+
* so legacy heuristics keep working on raw backend details.
|
|
12
|
+
*/
|
|
13
|
+
function unwrapCause(err) {
|
|
14
|
+
return err instanceof PolyesterError && err.cause !== void 0 ? err.cause : err;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Whether the backend signalled that the requested resource does not exist.
|
|
18
|
+
* Prefer `err instanceof ResourceNotFoundError`; this predicate also covers
|
|
19
|
+
* raw `ConnectError`s (NotFound or the auth resource-not-found detail).
|
|
20
|
+
*/
|
|
21
|
+
function isResourceNotFoundError(err) {
|
|
22
|
+
const mapped = toPolyesterError(err);
|
|
23
|
+
if (mapped instanceof ResourceNotFoundError) return true;
|
|
24
|
+
if (mapped instanceof PolyesterError && mapped.cause === void 0) return false;
|
|
25
|
+
const target = unwrapCause(mapped);
|
|
26
|
+
return hasAuthErrorCode(target, 10) || ConnectError.from(target).code === Code.NotFound;
|
|
27
|
+
}
|
|
28
|
+
/** Whether an optimistic-concurrency update used a stale resource revision. */
|
|
29
|
+
function isRevisionConflictError(err) {
|
|
30
|
+
const seen = /* @__PURE__ */ new Set();
|
|
31
|
+
let current = err;
|
|
32
|
+
while (current !== void 0 && current !== null && !seen.has(current)) {
|
|
33
|
+
seen.add(current);
|
|
34
|
+
if (toPolyesterError(current) instanceof RevisionConflictError) return true;
|
|
35
|
+
const connectError = ConnectError.from(current);
|
|
36
|
+
if ((connectError.code === Code.Unknown || connectError.code === Code.Aborted) && /\brevision conflict\b/i.test(getNormalizedConnectMessage(connectError))) return true;
|
|
37
|
+
current = typeof current === "object" && "cause" in current ? current.cause : void 0;
|
|
38
|
+
}
|
|
39
|
+
return false;
|
|
40
|
+
}
|
|
41
|
+
/** Whether a policy mutation failed because the policy is still attached to a resource. */
|
|
42
|
+
function isPolicyInUseError(err) {
|
|
43
|
+
return toPolyesterError(err) instanceof PolicyInUseError;
|
|
44
|
+
}
|
|
45
|
+
/** Whether a policy mutation failed because the policy is locked. */
|
|
46
|
+
function isPolicyLockedError(err) {
|
|
47
|
+
return toPolyesterError(err) instanceof PolicyLockedError;
|
|
48
|
+
}
|
|
49
|
+
/** Whether the policy and target account belong to different scopes. */
|
|
50
|
+
function isPolicyScopeMismatchError(err) {
|
|
51
|
+
return toPolyesterError(err) instanceof PolicyScopeMismatchError;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Whether an error is retryable (network/timeout) for idempotent operations.
|
|
55
|
+
* Uses same requestId on retry; backend dedupes within 2min.
|
|
56
|
+
* Prefer `err instanceof TransientError` or `err.retryable` on typed errors.
|
|
57
|
+
*/
|
|
58
|
+
function isRetryableError(err) {
|
|
59
|
+
if (isAbortError(err)) return false;
|
|
60
|
+
if (err instanceof PolyesterError) return err.retryable;
|
|
61
|
+
const ce = ConnectError.from(err);
|
|
62
|
+
return ce.code === Code.Unavailable || ce.code === Code.DeadlineExceeded;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Diagnostic formatter for SDK and ConnectRPC errors.
|
|
66
|
+
* Typed SDK errors already carry normalized messages; for raw ConnectErrors
|
|
67
|
+
* this strips leading "[CODE]" prefixes. Falls back to a friendly default.
|
|
68
|
+
* The returned message may contain backend implementation details. Never render
|
|
69
|
+
* it to a user; use {@link formatUserFacingError} at presentation boundaries.
|
|
70
|
+
* @param err - The error to format.
|
|
71
|
+
* @param fallback - The fallback message when no message is available.
|
|
72
|
+
* @returns The formatted error message.
|
|
73
|
+
*/
|
|
74
|
+
function formatConnectError(err, fallback = "Request failed. Please try again.") {
|
|
75
|
+
if (err == null) return fallback;
|
|
76
|
+
if (err instanceof PolyesterError) return err.message || fallback;
|
|
77
|
+
return getNormalizedConnectMessage(err) || fallback;
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Formats an untrusted failure for direct display to a user.
|
|
81
|
+
*
|
|
82
|
+
* This function never returns an exception or backend message. A small allowlist
|
|
83
|
+
* of typed transport conditions receives SDK-owned copy; every other failure
|
|
84
|
+
* returns the caller-owned fallback.
|
|
85
|
+
*/
|
|
86
|
+
function userFacingTransportMessage(error) {
|
|
87
|
+
if (error instanceof RateLimitError) return "You've made too many requests. Wait a moment and try again.";
|
|
88
|
+
if (error instanceof TimeoutError) return "This is taking longer than expected. Try again.";
|
|
89
|
+
if (error instanceof ServiceUnavailableError) return "This service is temporarily unavailable. Try again in a few minutes.";
|
|
90
|
+
if (error instanceof NetworkError) return "We couldn't connect. Check your internet connection and try again.";
|
|
91
|
+
if (error instanceof ConnectError) {
|
|
92
|
+
if (error.code === Code.ResourceExhausted) return "You've made too many requests. Wait a moment and try again.";
|
|
93
|
+
if (error.code === Code.DeadlineExceeded) return "This is taking longer than expected. Try again.";
|
|
94
|
+
if (error.code === Code.Unavailable) return "This service is temporarily unavailable. Try again in a few minutes.";
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
function formatUserFacingError(error, fallback) {
|
|
98
|
+
let current = error;
|
|
99
|
+
for (let depth = 0; depth < 5 && current != null; depth++) {
|
|
100
|
+
const fromMapped = userFacingTransportMessage(toPolyesterError(current));
|
|
101
|
+
if (fromMapped !== void 0) return fromMapped;
|
|
102
|
+
const fromCurrent = userFacingTransportMessage(current);
|
|
103
|
+
if (fromCurrent !== void 0) return fromCurrent;
|
|
104
|
+
current = typeof current === "object" && current !== null && "cause" in current ? current.cause : void 0;
|
|
105
|
+
}
|
|
106
|
+
return fallback;
|
|
107
|
+
}
|
|
108
|
+
//#endregion
|
|
109
|
+
export { formatConnectError, formatUserFacingError, isPolicyInUseError, isPolicyLockedError, isPolicyScopeMismatchError, isResourceNotFoundError, isRetryableError, isRevisionConflictError };
|
|
110
|
+
|
|
111
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","names":[],"sources":["../../src/utils/errors.ts"],"sourcesContent":["import { Code, ConnectError } from \"@connectrpc/connect\";\nimport { AuthErrorCode, AuthErrorDetailSchema } from \"../gen/auth/v1/auth_pb.js\";\nimport { getNormalizedConnectMessage, toPolyesterError } from \"../shared/connect-error-mapping.js\";\nimport {\n isAbortError,\n NetworkError,\n PolicyInUseError,\n PolicyLockedError,\n PolicyScopeMismatchError,\n PolyesterError,\n RateLimitError,\n ResourceNotFoundError,\n RevisionConflictError,\n ServiceUnavailableError,\n TimeoutError,\n} from \"../shared/errors.js\";\n\nfunction hasAuthErrorCode(err: unknown, code: AuthErrorCode): boolean {\n return ConnectError.from(err)\n .findDetails(AuthErrorDetailSchema)\n .some((detail) => detail.code === code);\n}\n\n/**\n * Unwraps a typed SDK error to the underlying `ConnectError` (kept as `cause`)\n * so legacy heuristics keep working on raw backend details.\n */\nfunction unwrapCause(err: unknown): unknown {\n return err instanceof PolyesterError && err.cause !== undefined ? err.cause : err;\n}\n\n/**\n * Whether the backend signalled that the requested resource does not exist.\n * Prefer `err instanceof ResourceNotFoundError`; this predicate also covers\n * raw `ConnectError`s (NotFound or the auth resource-not-found detail).\n */\nexport function isResourceNotFoundError(err: unknown): boolean {\n // Connect can re-wrap interceptor errors as an Unknown ConnectError whose\n // cause is the typed SDK error. Normalize first to recover that cause.\n const mapped = toPolyesterError(err);\n if (mapped instanceof ResourceNotFoundError) return true;\n if (mapped instanceof PolyesterError && mapped.cause === undefined) return false;\n const target = unwrapCause(mapped);\n return (\n hasAuthErrorCode(target, AuthErrorCode.AUTH_RESOURCE_NOT_FOUND) ||\n ConnectError.from(target).code === Code.NotFound\n );\n}\n\n/** Whether an optimistic-concurrency update used a stale resource revision. */\nexport function isRevisionConflictError(err: unknown): boolean {\n const seen = new Set<unknown>();\n let current = err;\n while (current !== undefined && current !== null && !seen.has(current)) {\n seen.add(current);\n if (toPolyesterError(current) instanceof RevisionConflictError) return true;\n const connectError = ConnectError.from(current);\n if (\n (connectError.code === Code.Unknown || connectError.code === Code.Aborted) &&\n /\\brevision conflict\\b/i.test(getNormalizedConnectMessage(connectError))\n ) {\n return true;\n }\n current =\n typeof current === \"object\" && \"cause\" in current\n ? (current as { cause?: unknown }).cause\n : undefined;\n }\n return false;\n}\n\n/** Whether a policy mutation failed because the policy is still attached to a resource. */\nexport function isPolicyInUseError(err: unknown): boolean {\n return toPolyesterError(err) instanceof PolicyInUseError;\n}\n\n/** Whether a policy mutation failed because the policy is locked. */\nexport function isPolicyLockedError(err: unknown): boolean {\n return toPolyesterError(err) instanceof PolicyLockedError;\n}\n\n/** Whether the policy and target account belong to different scopes. */\nexport function isPolicyScopeMismatchError(err: unknown): boolean {\n return toPolyesterError(err) instanceof PolicyScopeMismatchError;\n}\n\n/**\n * Whether an error is retryable (network/timeout) for idempotent operations.\n * Uses same requestId on retry; backend dedupes within 2min.\n * Prefer `err instanceof TransientError` or `err.retryable` on typed errors.\n */\nexport function isRetryableError(err: unknown): boolean {\n if (isAbortError(err)) return false;\n if (err instanceof PolyesterError) return err.retryable;\n const ce = ConnectError.from(err);\n return ce.code === Code.Unavailable || ce.code === Code.DeadlineExceeded;\n}\n\n/**\n * Diagnostic formatter for SDK and ConnectRPC errors.\n * Typed SDK errors already carry normalized messages; for raw ConnectErrors\n * this strips leading \"[CODE]\" prefixes. Falls back to a friendly default.\n * The returned message may contain backend implementation details. Never render\n * it to a user; use {@link formatUserFacingError} at presentation boundaries.\n * @param err - The error to format.\n * @param fallback - The fallback message when no message is available.\n * @returns The formatted error message.\n */\nexport function formatConnectError(\n err: unknown,\n fallback = \"Request failed. Please try again.\",\n): string {\n if (err == null) return fallback;\n if (err instanceof PolyesterError) return err.message || fallback;\n const withoutCode = getNormalizedConnectMessage(err);\n return withoutCode || fallback;\n}\n\n/**\n * Formats an untrusted failure for direct display to a user.\n *\n * This function never returns an exception or backend message. A small allowlist\n * of typed transport conditions receives SDK-owned copy; every other failure\n * returns the caller-owned fallback.\n */\nfunction userFacingTransportMessage(error: unknown): string | undefined {\n if (error instanceof RateLimitError) {\n return \"You've made too many requests. Wait a moment and try again.\";\n }\n if (error instanceof TimeoutError) return \"This is taking longer than expected. Try again.\";\n if (error instanceof ServiceUnavailableError) {\n return \"This service is temporarily unavailable. Try again in a few minutes.\";\n }\n if (error instanceof NetworkError) {\n return \"We couldn't connect. Check your internet connection and try again.\";\n }\n\n if (error instanceof ConnectError) {\n if (error.code === Code.ResourceExhausted) {\n return \"You've made too many requests. Wait a moment and try again.\";\n }\n if (error.code === Code.DeadlineExceeded) {\n return \"This is taking longer than expected. Try again.\";\n }\n if (error.code === Code.Unavailable) {\n return \"This service is temporarily unavailable. Try again in a few minutes.\";\n }\n }\n\n return undefined;\n}\n\nexport function formatUserFacingError(error: unknown, fallback: string): string {\n // Walk the cause chain and normalize ConnectErrors so wrapped submit failures\n // (e.g. Error → ConnectError[unknown] \"Service temporarily unavailable.\")\n // still hit the transport allowlist.\n let current: unknown = error;\n for (let depth = 0; depth < 5 && current != null; depth++) {\n const mapped = toPolyesterError(current);\n const fromMapped = userFacingTransportMessage(mapped);\n if (fromMapped !== undefined) return fromMapped;\n const fromCurrent = userFacingTransportMessage(current);\n if (fromCurrent !== undefined) return fromCurrent;\n\n current =\n typeof current === \"object\" && current !== null && \"cause\" in current\n ? (current as { cause?: unknown }).cause\n : undefined;\n }\n\n return fallback;\n}\n"],"mappings":";;;;;AAiBA,SAAS,iBAAiB,KAAc,MAA8B;CAClE,OAAO,aAAa,KAAK,GAAG,CAAC,CACxB,YAAY,qBAAqB,CAAC,CAClC,MAAM,WAAW,OAAO,SAAS,IAAI;AAC9C;;;;;AAMA,SAAS,YAAY,KAAuB;CACxC,OAAO,eAAe,kBAAkB,IAAI,UAAU,KAAA,IAAY,IAAI,QAAQ;AAClF;;;;;;AAOA,SAAgB,wBAAwB,KAAuB;CAG3D,MAAM,SAAS,iBAAiB,GAAG;CACnC,IAAI,kBAAkB,uBAAuB,OAAO;CACpD,IAAI,kBAAkB,kBAAkB,OAAO,UAAU,KAAA,GAAW,OAAO;CAC3E,MAAM,SAAS,YAAY,MAAM;CACjC,OACI,iBAAiB,QAAA,EAA6C,KAC9D,aAAa,KAAK,MAAM,CAAC,CAAC,SAAS,KAAK;AAEhD;;AAGA,SAAgB,wBAAwB,KAAuB;CAC3D,MAAM,uBAAO,IAAI,IAAa;CAC9B,IAAI,UAAU;CACd,OAAO,YAAY,KAAA,KAAa,YAAY,QAAQ,CAAC,KAAK,IAAI,OAAO,GAAG;EACpE,KAAK,IAAI,OAAO;EAChB,IAAI,iBAAiB,OAAO,aAAa,uBAAuB,OAAO;EACvE,MAAM,eAAe,aAAa,KAAK,OAAO;EAC9C,KACK,aAAa,SAAS,KAAK,WAAW,aAAa,SAAS,KAAK,YAClE,yBAAyB,KAAK,4BAA4B,YAAY,CAAC,GAEvE,OAAO;EAEX,UACI,OAAO,YAAY,YAAY,WAAW,UACnC,QAAgC,QACjC,KAAA;CACd;CACA,OAAO;AACX;;AAGA,SAAgB,mBAAmB,KAAuB;CACtD,OAAO,iBAAiB,GAAG,aAAa;AAC5C;;AAGA,SAAgB,oBAAoB,KAAuB;CACvD,OAAO,iBAAiB,GAAG,aAAa;AAC5C;;AAGA,SAAgB,2BAA2B,KAAuB;CAC9D,OAAO,iBAAiB,GAAG,aAAa;AAC5C;;;;;;AAOA,SAAgB,iBAAiB,KAAuB;CACpD,IAAI,aAAa,GAAG,GAAG,OAAO;CAC9B,IAAI,eAAe,gBAAgB,OAAO,IAAI;CAC9C,MAAM,KAAK,aAAa,KAAK,GAAG;CAChC,OAAO,GAAG,SAAS,KAAK,eAAe,GAAG,SAAS,KAAK;AAC5D;;;;;;;;;;;AAYA,SAAgB,mBACZ,KACA,WAAW,qCACL;CACN,IAAI,OAAO,MAAM,OAAO;CACxB,IAAI,eAAe,gBAAgB,OAAO,IAAI,WAAW;CAEzD,OADoB,4BAA4B,GAC/B,KAAK;AAC1B;;;;;;;;AASA,SAAS,2BAA2B,OAAoC;CACpE,IAAI,iBAAiB,gBACjB,OAAO;CAEX,IAAI,iBAAiB,cAAc,OAAO;CAC1C,IAAI,iBAAiB,yBACjB,OAAO;CAEX,IAAI,iBAAiB,cACjB,OAAO;CAGX,IAAI,iBAAiB,cAAc;EAC/B,IAAI,MAAM,SAAS,KAAK,mBACpB,OAAO;EAEX,IAAI,MAAM,SAAS,KAAK,kBACpB,OAAO;EAEX,IAAI,MAAM,SAAS,KAAK,aACpB,OAAO;CAEf;AAGJ;AAEA,SAAgB,sBAAsB,OAAgB,UAA0B;CAI5E,IAAI,UAAmB;CACvB,KAAK,IAAI,QAAQ,GAAG,QAAQ,KAAK,WAAW,MAAM,SAAS;EAEvD,MAAM,aAAa,2BADJ,iBAAiB,OACmB,CAAC;EACpD,IAAI,eAAe,KAAA,GAAW,OAAO;EACrC,MAAM,cAAc,2BAA2B,OAAO;EACtD,IAAI,gBAAgB,KAAA,GAAW,OAAO;EAEtC,UACI,OAAO,YAAY,YAAY,YAAY,QAAQ,WAAW,UACvD,QAAgC,QACjC,KAAA;CACd;CAEA,OAAO;AACX"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
//#region src/utils/event-emitter.d.ts
|
|
2
|
+
type EventCallback<T = unknown> = (data: T) => void;
|
|
3
|
+
/**
|
|
4
|
+
* Minimal typed event emitter used by SDK services to publish auth and lifecycle state changes.
|
|
5
|
+
*/
|
|
6
|
+
declare class EventEmitter<TEvents extends { [K in keyof TEvents]: unknown; }> {
|
|
7
|
+
#private;
|
|
8
|
+
/**
|
|
9
|
+
* Registers an event listener and returns an unsubscribe function.
|
|
10
|
+
*/
|
|
11
|
+
on<K extends keyof TEvents>(event: K, callback: EventCallback<TEvents[K]>): () => void;
|
|
12
|
+
/**
|
|
13
|
+
* Registers an event listener that runs at most once.
|
|
14
|
+
*/
|
|
15
|
+
once<K extends keyof TEvents>(event: K, callback: EventCallback<TEvents[K]>): () => void;
|
|
16
|
+
/**
|
|
17
|
+
* Emits an event to all registered listeners.
|
|
18
|
+
*/
|
|
19
|
+
emit<K extends keyof TEvents>(event: K, data: TEvents[K]): void;
|
|
20
|
+
/**
|
|
21
|
+
* Removes a previously registered event listener.
|
|
22
|
+
*/
|
|
23
|
+
off<K extends keyof TEvents>(event: K, callback?: EventCallback<TEvents[K]>): void;
|
|
24
|
+
/**
|
|
25
|
+
* Removes every registered event listener.
|
|
26
|
+
*/
|
|
27
|
+
removeAllListeners(): void;
|
|
28
|
+
}
|
|
29
|
+
//#endregion
|
|
30
|
+
export { EventEmitter };
|
|
31
|
+
//# sourceMappingURL=event-emitter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"event-emitter.d.ts","names":[],"sources":["../../src/utils/event-emitter.ts"],"mappings":";KAAK,cAAc,gBAAgB,MAAM;;;;cAK5B,aAAa,mBAAmB,WAAW;;;;;EAMpD,GAAG,gBAAgB,SAAS,OAAO,GAAG,UAAU,cAAc,QAAQ;;;;EActE,KAAK,gBAAgB,SAAS,OAAO,GAAG,UAAU,cAAc,QAAQ;;;;EAWxE,KAAK,gBAAgB,SAAS,OAAO,GAAG,MAAM,QAAQ;;;;EAYtD,IAAI,gBAAgB,SAAS,OAAO,GAAG,WAAW,cAAc,QAAQ;;;;EAWxE"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
//#region src/utils/event-emitter.ts
|
|
2
|
+
/**
|
|
3
|
+
* Minimal typed event emitter used by SDK services to publish auth and lifecycle state changes.
|
|
4
|
+
*/
|
|
5
|
+
var EventEmitter = class {
|
|
6
|
+
#listeners = /* @__PURE__ */ new Map();
|
|
7
|
+
/**
|
|
8
|
+
* Registers an event listener and returns an unsubscribe function.
|
|
9
|
+
*/
|
|
10
|
+
on(event, callback) {
|
|
11
|
+
if (!this.#listeners.has(event)) this.#listeners.set(event, /* @__PURE__ */ new Set());
|
|
12
|
+
this.#listeners.get(event).add(callback);
|
|
13
|
+
return () => {
|
|
14
|
+
this.#listeners.get(event)?.delete(callback);
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Registers an event listener that runs at most once.
|
|
19
|
+
*/
|
|
20
|
+
once(event, callback) {
|
|
21
|
+
const unsubscribe = this.on(event, (data) => {
|
|
22
|
+
unsubscribe();
|
|
23
|
+
callback(data);
|
|
24
|
+
});
|
|
25
|
+
return unsubscribe;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Emits an event to all registered listeners.
|
|
29
|
+
*/
|
|
30
|
+
emit(event, data) {
|
|
31
|
+
const callbacks = this.#listeners.get(event);
|
|
32
|
+
if (callbacks) for (const callback of callbacks) callback(data);
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Removes a previously registered event listener.
|
|
36
|
+
*/
|
|
37
|
+
off(event, callback) {
|
|
38
|
+
if (callback) this.#listeners.get(event)?.delete(callback);
|
|
39
|
+
else this.#listeners.delete(event);
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Removes every registered event listener.
|
|
43
|
+
*/
|
|
44
|
+
removeAllListeners() {
|
|
45
|
+
this.#listeners.clear();
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
//#endregion
|
|
49
|
+
export { EventEmitter };
|
|
50
|
+
|
|
51
|
+
//# sourceMappingURL=event-emitter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"event-emitter.js","names":["#listeners"],"sources":["../../src/utils/event-emitter.ts"],"sourcesContent":["type EventCallback<T = unknown> = (data: T) => void;\n\n/**\n * Minimal typed event emitter used by SDK services to publish auth and lifecycle state changes.\n */\nexport class EventEmitter<TEvents extends { [K in keyof TEvents]: unknown }> {\n #listeners: Map<keyof TEvents, Set<EventCallback>> = new Map();\n\n /**\n * Registers an event listener and returns an unsubscribe function.\n */\n on<K extends keyof TEvents>(event: K, callback: EventCallback<TEvents[K]>): () => void {\n if (!this.#listeners.has(event)) {\n this.#listeners.set(event, new Set());\n }\n this.#listeners.get(event)!.add(callback as EventCallback);\n\n return () => {\n this.#listeners.get(event)?.delete(callback as EventCallback);\n };\n }\n\n /**\n * Registers an event listener that runs at most once.\n */\n once<K extends keyof TEvents>(event: K, callback: EventCallback<TEvents[K]>): () => void {\n const unsubscribe = this.on(event, (data) => {\n unsubscribe();\n callback(data);\n });\n return unsubscribe;\n }\n\n /**\n * Emits an event to all registered listeners.\n */\n emit<K extends keyof TEvents>(event: K, data: TEvents[K]): void {\n const callbacks = this.#listeners.get(event);\n if (callbacks) {\n for (const callback of callbacks) {\n callback(data);\n }\n }\n }\n\n /**\n * Removes a previously registered event listener.\n */\n off<K extends keyof TEvents>(event: K, callback?: EventCallback<TEvents[K]>): void {\n if (callback) {\n this.#listeners.get(event)?.delete(callback as EventCallback);\n } else {\n this.#listeners.delete(event);\n }\n }\n\n /**\n * Removes every registered event listener.\n */\n removeAllListeners(): void {\n this.#listeners.clear();\n }\n}\n"],"mappings":";;;;AAKA,IAAa,eAAb,MAA6E;CACzE,6BAAqD,IAAI,IAAI;;;;CAK7D,GAA4B,OAAU,UAAiD;EACnF,IAAI,CAAC,KAAKA,WAAW,IAAI,KAAK,GAC1B,KAAKA,WAAW,IAAI,uBAAO,IAAI,IAAI,CAAC;EAExC,KAAKA,WAAW,IAAI,KAAK,CAAC,CAAE,IAAI,QAAyB;EAEzD,aAAa;GACT,KAAKA,WAAW,IAAI,KAAK,CAAC,EAAE,OAAO,QAAyB;EAChE;CACJ;;;;CAKA,KAA8B,OAAU,UAAiD;EACrF,MAAM,cAAc,KAAK,GAAG,QAAQ,SAAS;GACzC,YAAY;GACZ,SAAS,IAAI;EACjB,CAAC;EACD,OAAO;CACX;;;;CAKA,KAA8B,OAAU,MAAwB;EAC5D,MAAM,YAAY,KAAKA,WAAW,IAAI,KAAK;EAC3C,IAAI,WACA,KAAK,MAAM,YAAY,WACnB,SAAS,IAAI;CAGzB;;;;CAKA,IAA6B,OAAU,UAA4C;EAC/E,IAAI,UACA,KAAKA,WAAW,IAAI,KAAK,CAAC,EAAE,OAAO,QAAyB;OAE5D,KAAKA,WAAW,OAAO,KAAK;CAEpC;;;;CAKA,qBAA2B;EACvB,KAAKA,WAAW,MAAM;CAC1B;AACJ"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
//#region src/utils/evm.d.ts
|
|
2
|
+
/**
|
|
3
|
+
* Minimal EVM helpers backed by @noble/hashes.
|
|
4
|
+
*
|
|
5
|
+
* The SDK core previously imported these five utilities from viem. Rolldown
|
|
6
|
+
* groups all shared viem modules into a single chunk, so those tiny static
|
|
7
|
+
* imports forced viem's entire abi/actions graph (~270 KB emitted) into the
|
|
8
|
+
* app shell and the server's eager exec path, even though everything heavy is
|
|
9
|
+
* loaded lazily. Semantics mirror the viem calls they replaced:
|
|
10
|
+
* `isAddress(x, { strict: false })`, `getAddress`, `keccak256`,
|
|
11
|
+
* `stringToBytes`, `hexToBytes`.
|
|
12
|
+
*/
|
|
13
|
+
type EvmHex = `0x${string}`;
|
|
14
|
+
/** Format-only address check (viem `isAddress(value, { strict: false })`). */
|
|
15
|
+
declare function isEvmAddress(value: string): value is EvmHex;
|
|
16
|
+
/**
|
|
17
|
+
* viem `isAddress(value)` default-mode parity: format check plus EIP-55
|
|
18
|
+
* checksum validation for any address that is not all-lowercase.
|
|
19
|
+
*/
|
|
20
|
+
declare function isEvmAddressStrict(value: string): value is EvmHex;
|
|
21
|
+
/** EIP-55 checksummed address (viem `getAddress`); throws on invalid input. */
|
|
22
|
+
declare function checksumEvmAddress(value: string): EvmHex;
|
|
23
|
+
/** keccak-256 of raw bytes, hex-encoded (viem `keccak256(bytes)`). */
|
|
24
|
+
declare function keccak256Hex(bytes: Uint8Array): EvmHex;
|
|
25
|
+
/** UTF-8 encode (viem `stringToBytes`). */
|
|
26
|
+
declare function evmUtf8ToBytes(value: string): Uint8Array;
|
|
27
|
+
/** UTF-8 string to 0x-prefixed hex (viem `stringToHex`). */
|
|
28
|
+
declare function evmUtf8ToHex(value: string): EvmHex;
|
|
29
|
+
/** 0x-prefixed hex to bytes (viem `hexToBytes`); throws on malformed input. */
|
|
30
|
+
declare function evmHexToBytes(value: string): Uint8Array;
|
|
31
|
+
//#endregion
|
|
32
|
+
export { EvmHex, checksumEvmAddress, evmHexToBytes, evmUtf8ToBytes, evmUtf8ToHex, isEvmAddress, isEvmAddressStrict, keccak256Hex };
|
|
33
|
+
//# sourceMappingURL=evm.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"evm.d.ts","names":[],"sources":["../../src/utils/evm.ts"],"mappings":";;;;;;;;;;;;KAgBY;;iBAKI,aAAa,gBAAgB,SAAS;;;;;iBAQtC,mBAAmB,gBAAgB,SAAS;;iBAS5C,mBAAmB,gBAAgB;;iBAiBnC,aAAa,OAAO,aAAa;;iBAKjC,eAAe,gBAAgB;;iBAK/B,aAAa,gBAAgB;;iBAK7B,cAAc,gBAAgB"}
|