Merge remote-tracking branch 'upstream/master' into feature/migrate-to-v5

This commit is contained in:
lonyele
2019-03-30 23:01:52 +09:00
2386 changed files with 56651 additions and 16307 deletions
+56 -73
View File
@@ -55,7 +55,6 @@
/types/aframe/ @devpaul @bertoritger @twastvedt
/types/agenda/ @meirgottlieb @princjef
/types/agent-base/ @Shinigami92
/types/aggregate-error/ @BendingBender
/types/agora-rtc-sdk/ @menthays
/types/airbnb-prop-types/ @milesj
/types/ajv-errors/ @afshawnlotfi
@@ -75,6 +74,8 @@
/types/almost-equal/ @cmaddalozzo
/types/alt/ @Shearerbeard
/types/amap-js-api/ @breeze9527
/types/amap-js-api-indoor-map/ @breeze9527
/types/amap-js-api-map3d/ @breeze9527
/types/amap-js-sdk/ @agasbzj
/types/amazon-cognito-auth-js/ @scottescue
/types/amazon-product-api/ @MattiLehtinen @alien35
@@ -268,7 +269,7 @@
/types/auto-bind/ @sseppola
/types/auto-launch/ @rhysd @unindented
/types/auto-sni/ @janwo
/types/autobahn/ @darkl @a904guy @valepu @glenroy37
/types/autobahn/ @darkl @a904guy @valepu @glenroy37 @spcfran
/types/autolinker/ @leonyu
/types/autoprefixer/ @odnamrataizem @murt
/types/autosize/ @kingdango @keika299 @NeekSandhu
@@ -387,7 +388,7 @@
/types/bl/ @Bartvds @reconbot
/types/blacklist/ @mhegazy
/types/blazy/ @julienpa
/types/blessed/ @brynbellomy @skellock
/types/blessed/ @brynbellomy @skellock @mamachanko
/types/blissfuljs/ @fskorzec
/types/blob-stream/ @erichillah
/types/blob-to-buffer/ @nrlquaker
@@ -462,6 +463,7 @@
/types/browserslist-useragent/ @nju33
/types/bs58/ @chrootsu @BendingBender
/types/bs58/v3/ @chrootsu
/types/bser/ @claasahl
/types/bson/ @horiuchi @CaselIT @justingrant
/types/btoa/ @johngeorgewright @bricka
/types/buble/ @Kocal
@@ -476,7 +478,7 @@
/types/bufferstream/ @Bartvds
/types/build-output-script/ @BendingBender
/types/builtin-modules/ @ajafff
/types/bull/ @bgrieder @JProgrammer @marshall007 @weeco @blaugold @iamolegga @koblas @bondz @wuha-team @aleccool213 @danmana @kjellmorten @pc-jedi
/types/bull/ @bgrieder @JProgrammer @marshall007 @weeco @blaugold @iamolegga @koblas @bondz @wuha-team @aleccool213 @danmana @kjellmorten @pc-jedi @lenovouser
/types/bull/v2/ @bgrieder @JProgrammer
/types/bump-regex/ @silkentrance
/types/bunnymq/ @cyrilschumacher
@@ -581,6 +583,7 @@
/types/cheerio/ @blittle @wmaurer @umarniz @LiJinyao @chennakrishna8 @AzSiAz @nwtgck
/types/chess.js/ @JacobFischer
/types/chessboardjs/ @sliverb @davidmpaz
/types/child-process-promise/ @TheDSCPL
/types/chmodr/ @BendingBender
/types/chordsheetjs/ @adamsbloom
/types/chosen-js/ @borisyankov @denisname
@@ -594,6 +597,7 @@
/types/chromedriver/ @pe8ter
/types/cipher-base/ @adamzerella
/types/circuit-breaker-js/ @DeTeam
/types/circular-dependency-plugin/ @jeremejevs
/types/circular-json/ @jpevarnek
/types/ckeditor/ @wittwert @stuartlong @viktorpegy
/types/ckeditor/v2/ @wittwert
@@ -642,6 +646,7 @@
/types/cloudflare-apps/ @MartynasZilinskas
/types/clovelced-plugin-audiomanagement/ @marckassay
/types/cls-hooked/ @aleung
/types/clui/ @farzadmf
/types/clusterize.js/ @Pr1st0n
/types/cmd-shim/ @cspotcode
/types/co/ @doniyor2109
@@ -949,7 +954,6 @@
/types/decode-entities/ @waspothegreat
/types/decode-uri-component/ @BendingBender
/types/decompress/ @plantain-00 @jbethke
/types/decompress-response/ @DanielRosenwasser
/types/decorum/ @dflor003
/types/dedent/ @douglasduteil
/types/deep-assign/ @souldreamer
@@ -1038,7 +1042,6 @@
/types/dom-clipboard-api/ @43081j
/types/dom-helpers/ @mctep
/types/dom-inputevent/ @diagramatics
/types/dom-loaded/ @ltetzlaff
/types/dom-mediacapture-record/ @eliasmeire
/types/dom-to-image/ @JipSterk
/types/dom4/ @adidahiya @giladgray
@@ -1144,12 +1147,12 @@
/types/electron-window-state/ @rhysd
/types/electron-winstaller/ @shiftkey @unindented
/types/elegant-spinner/ @danwbyrne
/types/element-ready/ @BendingBender
/types/element-resize-detector/ @saranshkataria @franklixuefei
/types/element-resize-event/ @rogierschouten @plgregoire
/types/elementtree/ @dwieeb
/types/elliptic/ @danwbyrne @Gilthoniel
/types/elm/ @thSoft
/types/elo-rank/ @apavlinovic
/types/email-templates/ @cyrilschumacher @gurisko @blankstar85
/types/ember/ @jedmao @bttf @dwickern @chriskrycho @theroncross @mfeckie @alexlafroscia @mike-north @BryanCrotaz
/types/ember/v2/ @jedmao @bttf @dwickern @chriskrycho @theroncross @mfeckie @alexlafroscia @mike-north
@@ -1300,7 +1303,7 @@
/types/express-brute-memcached/ @cyrilschumacher
/types/express-brute-mongo/ @cyrilschumacher
/types/express-brute-redis/ @scottharwell
/types/express-bunyan-logger/ @shreyjain1994
/types/express-bunyan-logger/ @shreyjain1994 @mastermatt
/types/express-busboy/ @pinguet62
/types/express-cluster/ @nenadalm
/types/express-correlation-id/ @natemara
@@ -1430,8 +1433,6 @@
/types/file-exists/ @BendingBender
/types/file-saver/ @cyrilschumacher @DaIgeb @chrismbarr
/types/file-url/ @coderslagoon
/types/filenamify/ @rokt33r
/types/filenamify-url/ @cprecioso
/types/filesize/ @GiedriusGrabauskas @renchap @Ky6uk @ffxsam
/types/fill-pdf/ @westy92
/types/filter-console/ @BendingBender
@@ -1464,13 +1465,12 @@
/types/first-run/ @BendingBender
/types/fixed-data-table/ @pepaar @stephenjelfs
/types/fixed-data-table-2/ @ilivit
/types/fkill/ @BendingBender
/types/flagged-respawn/ @BendingBender
/types/flat/ @chrootsu
/types/fleximap/ @DanielRose
/types/flexmonster/ @flexmonster
/types/flexslider/ @diullei
/types/flickity/ @clmcgrath @wagich
/types/flickity/ @clmcgrath @wagich @aheber
/types/flight/ @jonathanhedren
/types/flightplan/ @borislavjivkov
/types/flipsnap/ @kubosho @gsino @mayuki
@@ -1725,7 +1725,6 @@
/types/get-range/ @BendingBender
/types/get-res/ @satyarohith
/types/get-stdin/ @DanielRosenwasser
/types/get-stream/ @douglasduteil @BendingBender
/types/get-urls/ @BendingBender
/types/get-value/ @DanielRosenwasser
/types/getenv/ @impankratov
@@ -1796,6 +1795,7 @@
/types/google-cloud__kms/ @ben-tbotlabs
/types/google-cloud__pubsub/ @pheromonez @LunaPg @msiviero
/types/google-cloud__tasks/ @ifiokjr
/types/google-cloud__text-to-speech/ @benhjames
/types/google-earth/ @icholy
/types/google-images/ @dolanmiu
/types/google-libphonenumber/ @leonyu @winfinit
@@ -1962,11 +1962,9 @@
/types/harmony-proxy/ @remojansen
/types/has-ansi/ @BendingBender
/types/has-emoji/ @BendingBender
/types/has-yarn/ @BendgingBender
/types/hash-file/ @HiromiShikata
/types/hash-stream/ @BendingBender
/types/hash-sum/ @DanielRosenwasser
/types/hasha/ @BendgingBender
/types/hasher/ @flyfishMT
/types/hashids/ @pocesar
/types/hashmap/ @outring
@@ -1994,7 +1992,7 @@
/types/hexo-fs/ @segayuu
/types/hexo-log/ @segayuu
/types/hexo-util/ @segayuu
/types/highcharts/ @damianog @baltie @AlbertOzimek @hanssens @jgresham
/types/highcharts/ @damianog @baltie @AlbertOzimek @hanssens @jgresham @Arunkeshavareddy
/types/highcharts-ng/ @scatcher
/types/highland/ @Bartvds @hgwood @iwllyu @alvis @notbobthebuilder
/types/highlight.js/ @nikeee @sourrust @joshuakgoldberg
@@ -2121,6 +2119,7 @@
/types/iniparser/ @chrootsu
/types/init-package-json/ @kfarnung
/types/ink/ @cprecioso
/types/ink-select-input/ @lukostry
/types/ink-spinner/ @lukostry
/types/ink-table/ @lukostry
/types/ink-testing-library/ @MancunianSam
@@ -2128,7 +2127,7 @@
/types/inline-css/ @philipisapain
/types/inline-style-prefixer/ @ahz @dpetrezselyova @franklixuefei
/types/inputmask/ @dmester
/types/inquirer/ @tkQubo @ppathan @jouderianjr @bang88 @bitjson @synarque @jrockwood @kwkelly @Ailrun
/types/inquirer/ @tkQubo @ppathan @jouderianjr @bang88 @bitjson @synarque @jrockwood @kwkelly @Ailrun @chigix
/types/inquirer-npm-name/ @manuth
/types/insert-css/ @hvoecking
/types/insert-module-globals/ @leonard-thieu
@@ -2139,13 +2138,13 @@
/types/intercom-web/ @fongandrew @salbahra @onatm
/types/intercomjs/ @spencerwi
/types/interpret/ @BendingBender
/types/intersects/ @voxylu
/types/intl/ @RagibHasin
/types/intl-locales-supported/ @Slessi
/types/intl-messageformat/ @mhegazy
/types/intl-relativeformat/ @mohsen1
/types/intl-tel-input/ @fdnhkj @leonard-thieu @molnarm
/types/intl-tel-input/v13/ @fdnhkj @leonard-thieu
/types/into-stream/ @BendingBender
/types/intrinsic-scale/ @shalomdotnet
/types/intro.js/ @anahkiasen
/types/invariant/ @bennett000
@@ -2181,6 +2180,7 @@
/types/is-ci/ @atd-schubert
/types/is-color/ @VitorLuizC
/types/is-compressed/ @mhegazy
/types/is-date-object/ @adamzerella
/types/is-docker/ @YashdalfTheGray
/types/is-dotdir/ @BendingBender
/types/is-dotfile/ @BendingBender
@@ -2216,7 +2216,6 @@
/types/is-root/ @mhegazy
/types/is-root-path/ @mhegazy
/types/is-running/ @danwbyrne
/types/is-scoped/ @postcrafter
/types/is-stream/ @me
/types/is-text-path/ @mhegazy
/types/is-touch-device/ @screendriver
@@ -2561,6 +2560,7 @@
/types/k6/ @MajorBreakfast
/types/kafka-node/ @dansitu @bkim54 @sfrooster @amiram @insanehong
/types/kafkajs/ @michal-b-kaminski
/types/kamailio-kemi/ @bonan
/types/karma/ @tkrotoff @43081j @devoto13
/types/karma/v1/ @tkrotoff @43081j
/types/karma-chai/ @JayAndCatchFire
@@ -2598,7 +2598,6 @@
/types/klaw/v1/ @mceachen
/types/klaw-sync/ @shiftkey
/types/kms-json/ @sunnyone
/types/knex/ @tkQubo @MeLlamoPablo @mastermatt @micksatana @shreyjain1994 @joelshepherd
/types/knex-postgis/ @vesse
/types/knockback/ @borisyankov
/types/knockout/ @borisyankov @Igorbek @moonpyk @EnableSoftware @BenjaminEckardt @ffMathy @ltlombardi @Retsam
@@ -2693,7 +2692,6 @@
/types/lasso/ @darkwebdev
/types/later/ @jasond-s
/types/latest-semver/ @BendingBender
/types/latest-version/ @BendingBender
/types/latinize/ @GiedriusGrabauskas
/types/latlon-geohash/ @rimig
/types/launchpad/ @rictic
@@ -2749,14 +2747,13 @@
/types/leveldown/v1/ @tarruda @LinusU
/types/levelup/ @MeirionHughes @danwbyrne
/types/levelup/v1/ @blittle @tarruda
/types/leven/ @jmalonzo
/types/levenshtein/ @geoffreak
/types/libpq/ @Lodin
/types/libsodium-wrappers/ @ffflorian
/types/libsodium-wrappers-sumo/ @ffflorian
/types/libxmljs/ @fdecampredon @ComFreek
/types/libxslt/ @alejo90
/types/license-checker/ @rogierschouten @unindented
/types/license-checker/ @rogierschouten @unindented @alechemy
/types/liftoff/ @BendingBender
/types/lil-uri/ @wcarson
/types/lil-uuid/ @Pr1st0n
@@ -3220,7 +3217,6 @@
/types/media-typer/ @BendingBender
/types/medium-editor/ @keika299 @pascaliske
/types/megajs/ @danwbyrne
/types/mem/ @SamVerschueren
/types/mem-cache/ @MutterPedro
/types/mem-fs/ @MyFoodBag
/types/mem-fs-editor/ @MyFoodBag
@@ -3379,7 +3375,7 @@
/types/msgpack5/ @wokim @heycalmdown
/types/msnodesql/ @borisyankov @SomaticIT
/types/msportalfx-test/ @julioct
/types/mssql/ @jaminfarr @buzinas @mrrichar @elhaard @pkeuter @mcdado
/types/mssql/ @jaminfarr @buzinas @mrrichar @elhaard @pkeuter @mcdado @woodenconsulting
/types/mu2/ @jedigo
/types/mui-datatables/ @favna @ankithkonda
/types/muicss/ @samuelneff
@@ -3433,6 +3429,7 @@
/types/nconf/ @jedigo @jmthibault @ew73
/types/ncp/ @bartvds
/types/ndarray/ @pawsong @taoqf
/types/ndn-js/ @yoursunny
/types/nearley/ @deltaidea @BendingBender
/types/neat-csv/ @calamitizer
/types/nedb/ @reppners @anthonynichols @afharo
@@ -3515,9 +3512,9 @@
/types/node-dir/ @panuhorsmalahti
/types/node-dogstatsd/ @chrisbobo @xzyfer
/types/node-emoji/ @jonestristand @styu @rimiti
/types/node-fetch/ @torstenwerner @nikcorg @vinaybedre @kyranet
/types/node-fetch/ @torstenwerner @nikcorg @vinaybedre @kyranet @AndrewLeedham
/types/node-fibers/ @caryhaynie
/types/node-forge/ @westy92 @flynetworks @a-k-g @rafal2228 @beenotung @joeflateau @Apologiz @timhwang21 @supaiku0 @andersk
/types/node-forge/ @westy92 @flynetworks @a-k-g @rafal2228 @beenotung @joeflateau @Apologiz @timhwang21 @supaiku0 @andersk @saschazar21
/types/node-gcm/ @horiuchi
/types/node-geocoder/ @rosek86
/types/node-getopt/ @kcauchy
@@ -3577,6 +3574,7 @@
/types/nodeunit/ @jedigo
/types/noisejs/ @izmhr
/types/nomnom/ @panopticoncentral
/types/nonogram-solver/ @me
/types/nookies/ @andreasbergqvist
/types/nopt/ @jbondc
/types/normalize-package-data/ @jdxcode
@@ -3591,15 +3589,12 @@
/types/nouislider/v7/ @acoreyj
/types/novnc-core/ @smithkl42 @BendingBender
/types/npm/ @SomaticIT
/types/npm-email/ @BendingBender
/types/npm-keyword/ @BendingBender
/types/npm-license-crawler/ @ffflorian
/types/npm-list-author-packages/ @ffflorian
/types/npm-package-arg/ @mgroenhoff @OiYouYeahYou
/types/npm-packlist/ @ajafff
/types/npm-paths/ @BendingBender
/types/npm-registry-package-info/ @ffflorian
/types/npm-user/ @BendingBender
/types/npm-user-packages/ @BendingBender
/types/npmlog/ @DanielMSchmidt @littlepiggy03
/types/ns-api/ @Archcry
@@ -3668,7 +3663,7 @@
/types/onionoo/ @BendingBender
/types/onoff/ @marcel-ernst @Kallu609
/types/ontime/ @Hirse
/types/open/ @Bartvds
/types/open/ @shinnn @SomaticIT @tlent @ffflorian
/types/open-editor/ @BendingBender
/types/open-graph/ @ffflorian
/types/openapi-factory/ @runebaas
@@ -3684,9 +3679,8 @@
/types/openlayers/v2/ @bolhovsky
/types/openpgp/ @errietta @damonpam @po5i @ecamellini @SardineFish
/types/openstack-wrapper/ @sanjaymadane
/types/opentok/ @westy92 @CatGuardian
/types/opentok/ @westy92 @CatGuardian @pronebird
/types/opentype.js/ @danmarshall @edzis
/types/opn/ @shinnn @SomaticIT @tlent
/types/opossum/ @quinnlangille @merufm @lance @mastermatt
/types/optics-agent/ @crevil
/types/optimist/ @soywiz @chbrown
@@ -3712,34 +3706,16 @@
/types/owl.carousel/ @igorissen @KennethanCeyer
/types/owlcarousel/ @dpiatkowski
/types/p-all/ @BendingBender
/types/p-any/ @BendingBender
/types/p-cancelable/ @BendingBender
/types/p-catch-if/ @LinusU
/types/p-debounce/ @BendingBender
/types/p-defer/ @SamVerschueren @BendingBender
/types/p-do-whilst/ @BendingBender
/types/p-each-series/ @BendingBender
/types/p-every/ @BendingBender
/types/p-forever/ @BendingBender
/types/p-is-promise/ @BendingBender
/types/p-lazy/ @BendingBender
/types/p-loading/ @renjfk
/types/p-locate/ @BendingBender
/types/p-log/ @BendingBender
/types/p-map-series/ @BendingBender
/types/p-memoize/ @forabi
/types/p-min-delay/ @BendingBender
/types/p-one/ @BendingBender
/types/p-progress/ @icopp
/types/p-props/ @BendingBender
/types/p-reduce/ @BendingBender
/types/p-reflect/ @BendingBender
/types/p-retry/ @BendingBender
/types/p-series/ @BendingBender
/types/p-settle/ @natesilva
/types/p-tap/ @BendingBender
/types/p-time/ @BendingBender
/types/p-timeout/ @BendingBender
/types/p-times/ @BendingBender
/types/p-try/ @BendingBender @LinusU
/types/p-wait-for/ @BendingBender
@@ -3748,7 +3724,6 @@
/types/p-whilst/ @BendingBender
/types/p2/ @clark-stevenson @jramstedt
/types/p5/ @p5-types
/types/package-json/ @jinwoo @BendingBender
/types/packery/ @piraveen @hanssens
/types/pad/ @mhegazy
/types/page/ @43081j
@@ -3768,7 +3743,7 @@
/types/parity-pmr/ @leovujanic
/types/parity-poe/ @leovujanic
/types/park-miller/ @BendingBender
/types/parse/ @dpoetzsch @jaeggerr @flavionegrao @wesleygrimes @owsas @agoldis @AlexandreHetu
/types/parse/ @dpoetzsch @jaeggerr @flavionegrao @wesleygrimes @owsas @agoldis @AlexandreHetu @dplewis @yomybaby
/types/parse/v1/ @dpoetzsch @jaeggerr @flavionegrao @wesleygrimes @owsas
/types/parse-columns/ @BendingBender
/types/parse-filepath/ @BendingBender
@@ -3821,7 +3796,7 @@
/types/passport-oauth2/ @pasieronen @WangZishi @EduardoAC @ivan94
/types/passport-oauth2-client-password/ @akaNightmare
/types/passport-remember-me-extended/ @AylaJK
/types/passport-saml/ @cjbarth @dassennato @ksamborski
/types/passport-saml/ @cjbarth @dassennato @ksamborski @josecolella
/types/passport-steam/ @kzay
/types/passport-strategy/ @liorm
/types/passport-twitter/ @staticfunction
@@ -3835,7 +3810,6 @@
/types/path-is-absolute/ @mhegazy
/types/path-is-inside/ @aomarks
/types/path-regex/ @BendingBender
/types/path-type/ @BendingBender
/types/pathfinding/ @BNedry
/types/pathjs/ @lokeshpeta
/types/pathwatcher/ @GlenCFL
@@ -3907,9 +3881,7 @@
/types/piwik-tracker/ @lbguilherme
/types/pixelmatch/ @iamolegga
/types/pixi.js/ @clark-stevenson
/types/pkg-dir/ @NK-WEB-Git
/types/pkg-up/ @forivall
/types/pkg-versions/ @BendingBender
/types/pkgcloud/ @dantman
/types/pkijs/ @microshine
/types/platform/ @JakeH
@@ -3939,6 +3911,8 @@
/types/pollyjs__persister-fs/ @feinoujc
/types/pollyjs__utils/ @feinoujc
/types/polyfill-service/ @Alorel
/types/polygon/ @Nielio
/types/polygons-intersect/ @Nielio
/types/polylabel/ @DenisCarriere
/types/polyline/ @Kern0
/types/polymer/ @lgrignon @laco0416
@@ -3978,6 +3952,7 @@
/types/pouchdb-upsert/ @keithdmoore @hotforfeature @apolkingg8 @zamb3zi
/types/power-assert/ @vvakame
/types/power-assert-formatter/ @vvakame
/types/powerapps-component-framework/ @jopursle
/types/powerbi-visuals-tools/ @zBritva @Microsoft
/types/preact-i18n/ @ltetzlaff
/types/precise/ @codeanimal
@@ -4330,7 +4305,7 @@
/types/react-loader/ @artfuldev
/types/react-lottie/ @Kana00 @Ricki-BumbleDev
/types/react-mailchimp-subscribe/ @osdiab
/types/react-map-gl/ @rimig @fnberta
/types/react-map-gl/ @rimig @fnberta @sandersiim
/types/react-maskedinput/ @LKay @lavoaster @CarlosBonetti
/types/react-material-ui-form-validator/ @FrankBrullo
/types/react-mce/ @morphologue
@@ -4351,6 +4326,7 @@
/types/react-native-background-timer/ @chillkroeteTTS
/types/react-native-bluetooth-serial/ @RodrigoAWeber
/types/react-native-calendars/ @Tyler-Zhang @DavidNorena @FabianMeul
/types/react-native-canvas/ @hmajid2301
/types/react-native-communications/ @huhuanming @PaitoAnderson
/types/react-native-custom-tabs/ @philnova
/types/react-native-datepicker/ @jacobbaskin @nossbigg
@@ -4492,6 +4468,7 @@
/types/react-s-alert/ @mitsuruog
/types/react-scroll/ @sudoplz @GiedriusGrabauskas
/types/react-scroll-into-view-if-needed/ @angusfretwell @allanpope @jonathanly
/types/react-scrollable-anchor/ @AntoineDoubovetzky
/types/react-scrollbar/ @stephenjelfs
/types/react-scrollspy/ @ZhangYiJiang
/types/react-select/ @claasahl @jonfreedman
@@ -4524,7 +4501,7 @@
/types/react-svg-pan-zoom/ @huy-nguyen
/types/react-swf/ @stepancar
/types/react-swipe/ @DeividasBakanas @AAlakkad
/types/react-swipeable/ @GiedriusGrabauskas @mctep @horiuchi
/types/react-swipeable/ @GiedriusGrabauskas @mctep @horiuchi @adambowles
/types/react-swipeable-views/ @mxl @DeividasBakanas
/types/react-syntax-highlighter/ @NoHomey @ajgamble-milner
/types/react-table/ @royxue @psakalo @Havret @andys8 @Gelio
@@ -4539,6 +4516,7 @@
/types/react-test-renderer/v15/ @arvitaly @lochbrunner @lochbrunner @johnnyreilly
/types/react-tether/ @ryprice
/types/react-text-mask/ @guilhermehubner @cavarzan @needpower
/types/react-text-truncate/ @adriantoine
/types/react-textarea-autosize/ @asvetliakov @zry656565
/types/react-timeago/ @koss-lebedev
/types/react-timeout/ @kerwynrg
@@ -4565,7 +4543,7 @@
/types/react-weui/ @tairan
/types/react-widgets/ @rogierschouten @sanyatuning @frodehansen2 @r3nya @MBillemaz @georg94 @tzarger @vegtelenseg
/types/react-widgets-moment/ @dawnmist
/types/react-window/ @martynaskadisa @heyimalex
/types/react-window/ @martynaskadisa @heyimalex @jgoz
/types/react-window-size/ @jakejrichards
/types/react-wow/ @mikepthomas
/types/react-youtube/ @kgtkr @salguerooo
@@ -4576,7 +4554,7 @@
/types/reactstrap/v4/ @alihammad @mfal @danilobjr @fabiopaiva
/types/read/ @timjk
/types/read-package-tree/ @mgroenhoff
/types/read-pkg/ @jdxcode
/types/read-pkg/ @jdxcode @arichardsmith
/types/read-pkg-up/ @dudeofawesome @jdxcode
/types/readable-stream/ @TeamworkGuy2
/types/readdir-enhanced/ @mrmlnc
@@ -4610,11 +4588,11 @@
/types/reduce-reducers/ @huy-nguyen @daliusd
/types/redux-action/ @newraina
/types/redux-action-utils/ @tkqubo
/types/redux-actions/ @jaysoo @alexgorbatchev @alechill @alexey-pelykh @7hi4g0
/types/redux-actions/ @jaysoo @alexgorbatchev @alechill @alexey-pelykh @7hi4g0 @oddui
/types/redux-async-queue/ @andreiho
/types/redux-auth-wrapper/ @LKay
/types/redux-auth-wrapper/v1/ @LKay
/types/redux-batched-subscribe/ @mDibyo
/types/redux-batched-subscribe/ @mDibyo @azizhk
/types/redux-debounced/ @seansfkelley
/types/redux-devtools/ @mc-petry
/types/redux-devtools-dock-monitor/ @mc-petry
@@ -4624,7 +4602,7 @@
/types/redux-first-router-link/ @janb87
/types/redux-first-router-restore-scroll/ @icopp
/types/redux-first-routing/ @tlaziuk
/types/redux-form/ @carsonf @aikoven @LKay @bancek @alsiola @tehbi4 @huwmartin @ethanresnick @reggino @maddijoyce @smifun @mshaaban088 @esetnik @bwlt
/types/redux-form/ @carsonf @aikoven @LKay @bancek @alsiola @tehbi4 @huwmartin @ethanresnick @reggino @maddijoyce @smifun @mshaaban088 @esetnik @bwlt @mrsekut
/types/redux-form/v7/ @carsonf @aikoven @LKay @bancek @alsiola @tehbi4 @huwmartin @ethanresnick @reggino @maddijoyce @smifun @mshaaban088 @esetnik
/types/redux-form/v6/ @carsonf @aikoven @LKay @bancek @mshaaban088
/types/redux-form/v4/ @aikoven
@@ -4649,6 +4627,7 @@
/types/redux-recycle/ @LKay
/types/redux-router/ @stepancar
/types/redux-saga-tester/ @BenLorantfy @lawsumisu
/types/redux-seamless-immutable/ @SoaresMG
/types/redux-sentry-middleware/ @dolezel
/types/redux-shortcuts/ @tstirrat
/types/redux-socket.io/ @snakeego
@@ -4711,6 +4690,7 @@
/types/resolve-from/ @unional @BendingBender
/types/resolve-from/v2/ @unional
/types/resolve-global/ @BendingBender
/types/resolve-options/ @delprzemo
/types/resolve-pkg/ @mabels @BendingBender
/types/resourcejs/ @shaunluttin
/types/response-time/ @urossmolnik @TonyPythoneer @danmana
@@ -4857,13 +4837,12 @@
/types/schema-registry/ @bonzzy
/types/schwifty/ @ozum
/types/scoped-http-client/ @mattvperry @rianadon
/types/screenfull/ @icholy @lionelb @joelshepherd @BendingBender
/types/screenfull/v3/ @icholy @lionelb @joelshepherd
/types/screeps/ @MarkoSulamagi @NhanHo @bryanbecker @resir014 @Arcath @dmarcuse
/types/screeps-profiler/ @ramblurr
/types/script-ext-html-webpack-plugin/ @davecardwell
/types/scriptjs/ @ssttevee
/types/scroll-into-view/ @zivni
/types/scroll-to-element/ @kirillurgant
/types/scroller/ @haskellcamargo
/types/scrollparent/ @Sintifo
/types/scrollreveal/ @Davidblkx
@@ -5006,7 +4985,6 @@
/types/simplesmtp/ @rogierschouten
/types/simplestorage.js/ @axelcostaspena @mxl
/types/sindresorhus__class-names/ @BendingBender
/types/sindresorhus__df/ @whatknight
/types/sindresorhus__djb2a/ @BendingBender
/types/sindresorhus__fnv1a/ @BendingBender
/types/sindresorhus__string-hash/ @BendingBender
@@ -5046,6 +5024,7 @@
/types/slate-react/ @andykent @majelbstoat @JanLoebel @PatrickSachs @YangusKhan @isubasti @sgreav @Kornil @jackall3n
/types/sleep/ @rajarz
/types/slice-ansi/ @dwieeb
/types/slick-carousel/ @Kocal
/types/slickgrid/ @jbaldwin
/types/slideout/ @ToastHawaii
/types/slimerjs/ @alexwall
@@ -5227,7 +5206,7 @@
/types/stripe/ @wjohnsto @codeanimal @sampsonjoliver @LinusU @brannon @kkamperschroer @starhoshi @bruun @galtalmor @htunnicliff @squirly @tzarger @ifiokjr @SimonSchick @yultyyev @cpsoinos @adamduren @saranshkataria @0xJoKe @delianides
/types/stripe-checkout/ @cgwrench
/types/stripe-v2/ @ejsmith @amritk @adamcmiel @jleider @galuszkak
/types/stripe-v3/ @ejsmith @amritk @adamcmiel @jleider @galuszkak @slangeder
/types/stripe-v3/ @ejsmith @amritk @adamcmiel @jleider @galuszkak @slangeder @marlosin
/types/stripejs/ @RobinvanTienhoven @mattferderer
/types/strong-cluster-control/ @shuntksh
/types/strong-error-handler/ @blankstar85
@@ -5241,7 +5220,7 @@
/types/styled-react-modal/ @Lavoaster
/types/styled-system/ @maxdeviant @phobon @zephraph @damassi @alloy @maoueh @lavoaster @jschuler @adam187 @gretzky @chrislopresto
/types/styled-theming/ @ArjanJ
/types/stylelint/ @alan-agius4 @filipsalpe
/types/stylelint/ @alan-agius4 @filipsalpe @43081j
/types/stylelint/v7/ @alan-agius4
/types/stylelint-webpack-plugin/ @bahlo
/types/stylenames/ @bengry
@@ -5368,6 +5347,7 @@
/types/texzilla/ @m93a
/types/tgfancy/ @Dabolus
/types/theming/ @eps1lon
/types/then-eos/ @seangenabe
/types/theo/ @petekp @laitine
/types/thepiratebay/ @jsorrell
/types/three/ @gyohk @florentpoujol @omni360 @ivoisbelongtous @piranha771 @qszhusightp @nakakura @Pro @efokschaner @PsychoSTS @apurvaojas @NotWoods @Methuselah96 @Dukuo @JulianSSS @devilsparta @KonstantinLukaschenko @danyim @saranshkataria @psuter
@@ -5512,6 +5492,7 @@
/types/underscore.string/ @rygine
/types/undertaker/ @tkqubo @GiedriusGrabauskas
/types/undertaker-registry/ @GiedriusGrabauskas
/types/uni-app/ @dcloudio
/types/unidecode/ @vfernandestoptal
/types/uniq/ @hansrwindhoff
/types/uniqid/ @idchlife
@@ -5527,7 +5508,6 @@
/types/unorm/ @chbrown
/types/unsplash-js/ @markupcode
/types/untildify/ @BendingBender
/types/unused-filename/ @BendingBender
/types/unzip/ @coding2012
/types/unzipper/ @s73obrien @natemara @bartje321
/types/update-notifier/ @vvakame @nchen63 @bitjson @grinich
@@ -5588,9 +5568,11 @@
/types/validatorjs/ @LKay @danmana @MatiasOlivera
/types/vanilla-modal/ @samnau
/types/vanilla-tilt/ @BrunnerLivio
/types/vara/ @Chnapy
/types/varint/ @dbrockman
/types/vary/ @BendingBender
/types/vast-client/ @jgainfort @kobawan
/types/vec2/ @Nielio
/types/vec3/ @xstoudi
/types/vectorious/ @erikgerrits
/types/velocity-animate/ @smrq
@@ -5658,7 +5640,6 @@
/types/walk/ @poppa
/types/wallabyjs/ @andrewconnell
/types/wallop/ @leemcd56
/types/wallpaper/ @BendingBender
/types/wampy/ @KSDaemon
/types/warning/ @cvle
/types/watch/ @soywiz @Perlmint
@@ -5772,6 +5753,7 @@
/types/word-list-json/ @dovidm
/types/word2vector/ @renekeijzer
/types/wordcloud/ @joeskeen
/types/wordpress__jest-console/ @mistic100
/types/words-to-numbers/ @James-Frowen
/types/wordwrap/ @ark120202
/types/workbox-sw/ @wessberg
@@ -5801,7 +5783,7 @@
/types/xml-parser/ @mhfrantz
/types/xml2js/ @michelsalib @jasonrm @ccurrens @edwardhinkle @BehindTheMath @claasahl
/types/xml2json/ @dolanmiu
/types/xmlbuilder/ @wallymathieu
/types/xmlbuilder/ @wallymathieu @GaikwadPratik
/types/xmldoc/ @Xstoudi @ajsheehan @notlaforge
/types/xmldom/ @tkqubo
/types/xmlpoke/ @garthk
@@ -5834,7 +5816,7 @@
/types/ydn-db/ @yathit @gabrielmaldi
/types/year-days/ @BendingBender
/types/yeoman-assert/ @Toilal
/types/yeoman-generator/ @armorik83 @janslow @ikatyang @tasadar2 @haggen
/types/yeoman-generator/ @armorik83 @janslow @ikatyang @tasadar2 @haggen @chigix
/types/yeoman-test/ @ikatyang
/types/yesql/ @Sumolari
/types/yn/ @BendingBender
@@ -5850,6 +5832,7 @@
/types/yui/ @giabao
/types/yup/ @dhardtke @vtserman @MoretonBayRC @sseppola @YashdalfTheGray @vincentjames501 @robertbullen @sat0yu @dancrumb
/types/z-schema/ @pgonzal
/types/zeit__next-source-maps/ @ldthorne
/types/zeit__next-typescript/ @icopp
/types/zen-observable/ @aicest @JounQin @itomtom
/types/zen-push/ @daprahamian
-2
View File
@@ -332,5 +332,3 @@ Es más apropiado importar este módulo utilizando la sintaxis `import foo = req
Este proyecto es licenciado bajo la licencia MIT.
Los derechos de autor de cada archivo de definición son respectivos de cada contribuidor listado al comienzo de cada archivo de definición.
[![Analytics](https://ga-beacon.appspot.com/UA-47495295-4/borisyankov/DefinitelyTyped)](https://github.com/igrigorik/ga-beacon)
-2
View File
@@ -334,5 +334,3 @@ NPM 패키지의 경우, `node -p 'require("foo")'` 가 원하는 값이라면 `
이 프로젝트는 MIT license 가 적용되어 있습니다.
각 자료형 정의(Type definition) 파일들의 저작권은 각 기여자들에게 있으며, 기여자들은 해당 자료형 정의(Type definition) 파일들의 맨 위에 나열되어 있습니다.
[![Analytics](https://ga-beacon.appspot.com/UA-47495295-4/borisyankov/DefinitelyTyped)](https://github.com/igrigorik/ga-beacon)
-2
View File
@@ -452,5 +452,3 @@ GitHub doesn't [support](http://stackoverflow.com/questions/5646174/how-to-make-
This project is licensed under the MIT license.
Copyrights on the definition files are respective of each contributor listed at the beginning of each definition file.
[![Analytics](https://ga-beacon.appspot.com/UA-47495295-4/borisyankov/DefinitelyTyped)](https://github.com/igrigorik/ga-beacon)
-2
View File
@@ -346,8 +346,6 @@ GitHub не [поддерживает](http://stackoverflow.com/questions/564617
Авторские права на файлы определений принадлежат каждому участнику, указанному в начале каждого файла определения.
[![Analytics](https://ga-beacon.appspot.com/UA-47495295-4/borisyankov/DefinitelyTyped)](https://github.com/igrigorik/ga-beacon)
[![Build Status](https://typescript.visualstudio.com/TypeScript/_apis/build/status/sandersn.types-publisher-watchdog)](https://typescript.visualstudio.com/TypeScript/_build/latest?definitionId=13) В среднем пакеты публикуются на npm менее чем за 10000 секунд?
[![Build Status](https://typescript.visualstudio.com/TypeScript/_apis/build/status/sandersn.typescript-bot-watchdog)](https://typescript.visualstudio.com/TypeScript/_build/latest?definitionId=14) Был ли typescript-bot активным на DefinitelyTyped в последние два часа?
+24
View File
@@ -0,0 +1,24 @@
# Starter pipeline
# Start with a minimal pipeline that you can customize to build and deploy your code.
# Add steps that build, run tests, deploy, and more:
# https://aka.ms/yaml
jobs:
- job: npmRunTest
pool:
vmImage: 'Ubuntu 16.04'
demands: npm
timeoutInMinutes: 360
steps:
- task: Npm@1
displayName: 'npm install'
inputs:
verbose: false
- script: 'git checkout -- . && npm run test'
displayName: 'npm run test'
trigger:
- master
+30
View File
@@ -786,6 +786,12 @@
"sourceRepoURL": "https://github.com/manuelbieh/Geolib",
"asOfVersion": "2.0.23"
},
{
"libraryName": "get-port",
"typingsPackageName": "get-port",
"sourceRepoURL": "https://github.com/sindresorhus/get-port",
"asOfVersion": "4.2.0"
},
{
"libraryName": "get-stream",
"typingsPackageName": "get-stream",
@@ -1104,6 +1110,12 @@
"sourceRepoURL": "https://github.com/keycloak/keycloak",
"asOfVersion": "3.4.1"
},
{
"libraryName": "knex",
"typingsPackageName": "knex",
"sourceRepoURL": "https://github.com/tgriesser/knex",
"asOfVersion": "0.16.1"
},
{
"libraryName": "knockout-paging",
"typingsPackageName": "knockout-paging",
@@ -1404,6 +1416,12 @@
"sourceRepoURL": "http://onsen.io",
"asOfVersion": "2.0.0"
},
{
"libraryName": "opn",
"typingsPackageName": "opn",
"sourceRepoURL": "https://github.com/sindresorhus/opn",
"asOfVersion": "5.5.0"
},
{
"libraryName": "ora",
"typingsPackageName": "ora",
@@ -2004,6 +2022,12 @@
"sourceRepoURL": "https://github.com/Lellansin/node-scanf",
"asOfVersion": "0.7.3"
},
{
"libraryName": "screenfull",
"typingsPackageName": "screenfull",
"sourceRepoURL": "https://github.com/sindresorhus/screenfull.js",
"asOfVersion": "4.1.0"
},
{
"libraryName": "sendgrid",
"typingsPackageName": "sendgrid",
@@ -2112,6 +2136,12 @@
"sourceRepoURL": "https://servicestack.net/",
"asOfVersion": "0.1.5"
},
{
"libraryName": "@storybook/addon-notes",
"typingsPackageName": "storybook__addon-notes",
"sourceRepoURL": "https://github.com/storybooks/storybook",
"asOfVersion": "5.0.0"
},
{
"libraryName": "striptags",
"typingsPackageName": "striptags",
+1
View File
@@ -8,6 +8,7 @@
"callable-types": false,
"comment-format": false,
"dt-header": false,
"npm-naming": false,
"eofline": false,
"export-just-namespace": false,
"import-spacing": false,
+1
View File
@@ -8,6 +8,7 @@
"callable-types": false,
"comment-format": false,
"dt-header": false,
"npm-naming": false,
"eofline": false,
"export-just-namespace": false,
"import-spacing": false,
+1
View File
@@ -8,6 +8,7 @@
"callable-types": false,
"comment-format": false,
"dt-header": false,
"npm-naming": false,
"eofline": false,
"export-just-namespace": false,
"import-spacing": false,
+1
View File
@@ -8,6 +8,7 @@
"callable-types": false,
"comment-format": false,
"dt-header": false,
"npm-naming": false,
"eofline": false,
"export-just-namespace": false,
"import-spacing": false,
+1 -1
View File
@@ -13,7 +13,7 @@ export class DirectUpload {
file: File;
url: string;
constructor(file: File, url: string, delegate: DirectUploadDelegate)
constructor(file: File, url: string, delegate?: DirectUploadDelegate)
create(callback: (error: Error, blob: Blob) => void): void;
}
+1
View File
@@ -8,6 +8,7 @@
"callable-types": false,
"comment-format": false,
"dt-header": false,
"npm-naming": false,
"eofline": false,
"export-just-namespace": false,
"import-spacing": false,
+1
View File
@@ -8,6 +8,7 @@
"callable-types": false,
"comment-format": false,
"dt-header": false,
"npm-naming": false,
"eofline": false,
"export-just-namespace": false,
"import-spacing": false,
@@ -104,12 +104,13 @@ AirbnbPropTypes.forbidExtraProps<ForbidShape>({
// $ExpectType Requireable<number>
AirbnbPropTypes.integer();
// $ExpectType Requireable<{}>
AirbnbPropTypes.keysOf(PropTypes.number);
// $ExpectType Requireable<{}>
AirbnbPropTypes.keysOf(PropTypes.number, 'foo');
// $ExpectType Requireable<{}>
AirbnbPropTypes.keysOf(PropTypes.oneOf(['foo', 'bar']));
const top = (<T>(x?: T): T => x!)();
type Top = typeof top;
declare function validateRequireableTop(x: React.Requireable<Top>): void;
validateRequireableTop(AirbnbPropTypes.keysOf(PropTypes.number));
validateRequireableTop(AirbnbPropTypes.keysOf(PropTypes.number, 'foo'));
validateRequireableTop(AirbnbPropTypes.keysOf(PropTypes.oneOf(['foo', 'bar'])));
// $ExpectType Requireable<number>
AirbnbPropTypes.mutuallyExclusiveProps(PropTypes.number);
@@ -137,8 +138,8 @@ AirbnbPropTypes.nonNegativeNumber();
// $ExpectType Requireable<string>
AirbnbPropTypes.numericString();
// $ExpectType Requireable<{}>
AirbnbPropTypes.object();
// $ExpectType Requireable<object>
const props: PropTypes.Requireable<object> = AirbnbPropTypes.object();
// $ExpectType Requireable<{ foo: string; }>
AirbnbPropTypes.object<{ foo: string }>();
@@ -156,23 +157,17 @@ AirbnbPropTypes.requiredBy('foo', PropTypes.string);
// $ExpectType Validator<number>
AirbnbPropTypes.requiredBy('bar', PropTypes.number, 42).isRequired;
// $ExpectType Requireable<{}>
AirbnbPropTypes.restrictedProp();
// $ExpectType Requireable<{}>
AirbnbPropTypes.restrictedProp(() => 'Error');
// $ExpectType Requireable<{}>
AirbnbPropTypes.restrictedProp(() => new Error('Error'));
validateRequireableTop(AirbnbPropTypes.restrictedProp());
validateRequireableTop(AirbnbPropTypes.restrictedProp(() => 'Error'));
validateRequireableTop(AirbnbPropTypes.restrictedProp(() => new Error('Error')));
// $ExpectType Requireable<{}>
AirbnbPropTypes.sequenceOf({ validator: PropTypes.number });
// $ExpectType Requireable<{}>
AirbnbPropTypes.sequenceOf({ validator: PropTypes.number }, { validator: PropTypes.string });
// $ExpectType Requireable<{}>
AirbnbPropTypes.sequenceOf(
validateRequireableTop(AirbnbPropTypes.sequenceOf({ validator: PropTypes.number }));
validateRequireableTop(AirbnbPropTypes.sequenceOf({ validator: PropTypes.number }, { validator: PropTypes.string }));
validateRequireableTop(AirbnbPropTypes.sequenceOf(
{ validator: PropTypes.number, min: 0, max: 10 },
{ validator: PropTypes.string },
{ validator: PropTypes.bool },
);
));
interface ShapeShape {
foo: string;
+43
View File
@@ -0,0 +1,43 @@
import * as Airtable from 'airtable';
interface Row extends Airtable.FieldSet {
field1: string;
attachments: Airtable.Attachment[];
}
const airtable = new Airtable();
const base = airtable.base('app id');
const table = base('table name') as Airtable.Table<Row>;
async () => {
const query = table.select();
{
const rows = await query.all();
for (const row of rows) {
row.id; // $ExpectType string
row.fields.field1; // $ExpectType string
for (const attachment of row.fields.attachments) {
attachment.id; // $ExpectType string
attachment.filename; // $ExpectType string
attachment.size; // $ExpectType number
attachment.type; // $ExpectType string
attachment.url; // $ExpectType string
if (attachment.thumbnails) {
attachment.thumbnails.full.height; // $ExpectType number
attachment.thumbnails.full.width; // $ExpectType number
attachment.thumbnails.full.url; // $ExpectType string
attachment.thumbnails.large.height; // $ExpectType number
attachment.thumbnails.large.width; // $ExpectType number
attachment.thumbnails.large.url; // $ExpectType string
attachment.thumbnails.small.height; // $ExpectType number
attachment.thumbnails.small.width; // $ExpectType number
attachment.thumbnails.small.url; // $ExpectType string
}
}
}
}
};
+62
View File
@@ -0,0 +1,62 @@
// Type definitions for airtable 0.5
// Project: https://github.com/airtable/airtable.js
// Definitions by: Brandon Valosek <https://github.com/bvalosek>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
// TypeScript Version: 2.2
export = Airtable;
declare global {
class Airtable {
base(appId: string): Airtable.Base;
}
namespace Airtable {
interface FieldSet {
[ key: string ]: undefined | string | ReadonlyArray<Attachment>;
}
interface Base {
(tableName: string): Table<{}>;
}
interface Table<TFields extends FieldSet> {
select(opt?: SelectOptions): Query<TFields>;
}
interface SelectOptions {
view?: string;
}
interface Query<TFields extends object> {
all(): Promise<Response<TFields>>;
firstPage(): Promise<Response<TFields>>;
}
type Response<TFields> = ReadonlyArray<Row<TFields>>;
interface Row<TFields> {
id: string;
fields: TFields;
}
interface Attachment {
id: string;
url: string;
filename: string;
size: number;
type: string;
thumbnails?: {
small: Thumbnail;
large: Thumbnail;
full: Thumbnail;
};
}
interface Thumbnail {
url: string;
width: number;
height: number;
}
}
}
@@ -18,6 +18,6 @@
},
"files": [
"index.d.ts",
"get-port-tests.ts"
"airtable-tests.ts"
]
}
+1
View File
@@ -8,6 +8,7 @@
"callable-types": false,
"comment-format": false,
"dt-header": false,
"npm-naming": false,
"eofline": false,
"export-just-namespace": false,
"import-spacing": false,
+1
View File
@@ -8,6 +8,7 @@
"callable-types": false,
"comment-format": false,
"dt-header": false,
"npm-naming": false,
"eofline": false,
"export-just-namespace": false,
"import-spacing": false,
+37
View File
@@ -0,0 +1,37 @@
// Type definitions for align-text 1.0
// Project: https://github.com/jonschlinkert/align-text
// Definitions by: Claas Ahlrichs <https://github.com/claasahl>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
// TypeScript Version: 2.1
interface TransformResult {
/**
* the amount of indentation to use. Default is 0 when an object is returned.
*/
indent: number;
/**
* the character to use for indentation. Default is '' (empty string) when an object is returned.
*/
character: string;
/**
* leading characters to use at the beginning of each line. '' (empty string) when an object is returned.
*/
prefix: string;
}
interface Callback {
/**
* @param len the length of the "current" line
* @param longest the length of the longest line
* @param line the current line (string) being aligned
* @param lines the array of all lines
*/
(len: number, longest: number, line: string, lines: string[]):
| number
| TransformResult;
}
declare function align_text(text: string, fn: number | Callback): string;
declare function align_text(text: string[], fn: number | Callback): string[];
export = align_text;
+12
View File
@@ -0,0 +1,12 @@
import align from "align-text";
function centerAlign(len: number, longest: number) {
return {
character: "\t",
indent: Math.floor((longest - len) / 2),
prefix: "~ "
};
}
const text = ["abc", "abc", "abc"];
align(text, centerAlign);
+8
View File
@@ -0,0 +1,8 @@
import align from "align-text";
function centerAlign(len: number, longest: number) {
return Math.floor((longest - len) / 2);
}
const text = ["abc", "abc", "abc"];
align(text, centerAlign);
+6
View File
@@ -0,0 +1,6 @@
import align from "align-text";
const text = ["abc", "abc", "abc"];
align(text, 4);
align("abc", 2);
+22
View File
@@ -0,0 +1,22 @@
{
"compilerOptions": {
"module": "commonjs",
"lib": ["es6"],
"noImplicitAny": true,
"noImplicitThis": true,
"strictNullChecks": true,
"strictFunctionTypes": true,
"baseUrl": "../",
"typeRoots": ["../"],
"types": [],
"noEmit": true,
"forceConsistentCasingInFileNames": true,
"allowSyntheticDefaultImports": true
},
"files": [
"index.d.ts",
"test/simple.ts",
"test/center-simple.ts",
"test/center-complex.ts"
]
}
+1
View File
@@ -0,0 +1 @@
{ "extends": "dtslint/dt.json" }
+1
View File
@@ -8,6 +8,7 @@
"callable-types": false,
"comment-format": false,
"dt-header": false,
"npm-naming": false,
"eofline": false,
"export-just-namespace": false,
"import-spacing": false,
@@ -0,0 +1,114 @@
// $ExpectType IndoorMap
new AMap.IndoorMap();
// $ExpectType IndoorMap
new AMap.IndoorMap({});
// $ExpectType IndoorMap
const indoorMap = new AMap.IndoorMap({
zIndex: 1,
opacity: 0.5,
cursor: 'cursor',
hideFloorBar: false,
alaysShow: true
});
// $ExpectType void
indoorMap.showIndoorMap('indoorMapId');
// $ExpectType void
indoorMap.showIndoorMap('indoorMapId', (error, result) => {
// $ExpectType Error | null
error;
// $ExpectType SearchResult
result;
// $ExpectType string
result.id;
// $ExpectType 0 | 1
result.status;
if (result.status === 0) {
// $ExpectType Building
const building = result.building;
{
// $ExpectType number
building.floor;
// $ExpectType FloorDetails
const floorDetails = building.floor_details;
{
// $ExpectType number[]
floorDetails.floor_indexs;
// $ExpectType string[]
floorDetails.floor_names;
// $ExpectType string[]
floorDetails.floor_nonas;
}
// $ExpectType string
building.id;
// $ExpectType LngLat
building.lnglat;
// $ExpectType string
building.name;
}
} else {
// $ExpectType Error
result.error;
}
});
// $ExpectType void
indoorMap.showIndoorMap('indoorMapId', 1);
// $ExpectType void
indoorMap.showIndoorMap('indoorMapId', 1, () => { });
// $ExpectType void
indoorMap.showIndoorMap('indoorMapId', 1, 'shopId');
// $ExpectType void
indoorMap.showIndoorMap('indoorMapId', 1, 'shopId', () => { });
// $ExpectType void
indoorMap.showIndoorMap('indoorMapId', 1, 'shopId', true);
// $ExpectType void
indoorMap.showIndoorMap('indoorMapId', 1, 'shopId', true, () => { });
let floor: undefined | false;
floor = indoorMap.showFloor(1);
floor = indoorMap.showFloor(1, true);
// $ExpectType void
indoorMap.showFloorBar();
// $ExpectType void
indoorMap.hideFloorBar();
// $ExpectType void
indoorMap.hideLabels();
// $ExpectType string | null
indoorMap.getSelectedBuildingId();
// $ExpectType Building | null
const building = indoorMap.getSelectedBuilding();
if (building) {
// $ExpectType number
building.floor;
// $ExpectType FloorDetails
building.floor_details;
// $ExpectType string
building.id;
// $ExpectType LngLat
building.lnglat;
// $ExpectType string
building.name;
}
indoorMap.on('complete', (event: AMap.IndoorMap.EventMap['complete']) => {
// $ExpectType "complete"
event.type;
});
indoorMap.on('click', (event: AMap.IndoorMap.EventMap['click']) => {
// $ExpectType string
event.building_id;
// $ExpectType number
event.floor;
// $ExpectType LngLat
event.lnglat;
// $ExpectType Shop
event.shop;
// $ExpectType "click"
event.type;
});
+239
View File
@@ -0,0 +1,239 @@
// Type definitions for non-npm package amap-js-api-indoor-map 1.4
// Project: https://lbs.amap.com/api/javascript-api/reference/indoormap
// Definitions by: breeze9527 <https://github.com/breeze9527>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
// TypeScript Version: 2.8
/// <reference types="amap-js-api" />
declare namespace AMap {
namespace IndoorMap {
interface EventMap {
complete: Event<'complete'>;
click: MouseEvent<'click'>;
floor_complete: Event<'floor_complete', SearchResult>;
mouseover: MouseEvent<'mouseover'>;
mouseout: MouseEvent<'mouseout'>;
}
type MouseEvent<N extends string> = Event<N, {
/**
* 店铺所属楼宇信息
*/
building_id: string;
/**
* 经纬度
*/
lnglat: LngLat;
/**
* 楼层
*/
floor: number;
/**
* 商店
*/
shop: Shop;
}>;
interface Options extends Layer.Options {
/**
* 图层叠加的顺序值
*/
zIndex?: number;
/**
* 图层的透明度
*/
opacity?: number;
/**
* 鼠标悬停到店铺面时的鼠标样式
*/
cursor?: string;
/**
* 是否隐藏楼层切换控件
*/
hideFloorBar?: boolean;
/**
* 是否持续显示
*/
alaysShow?: boolean;
// internal
visible?: boolean;
featurezIndex?: number;
zooms?: [number, number];
disableIconRender?: boolean;
disableLabelRender?: boolean;
disableHoverMarker?: boolean;
autoLoadBuildingsInTile?: boolean;
}
interface FloorDetails {
/**
* 各楼层索引
*/
floor_indexs: number[];
/**
* 各楼层英文
*/
floor_nonas: string[];
/**
* 各楼层名字
*/
floor_names: string[];
}
type ShopCategory = 'public' | 'connection' | 'shop';
interface Shop {
/**
* 店铺的id
*/
id: string;
/**
* 兴趣点ID
*/
poiId: string;
/**
* 店铺所属楼宇ID
*/
building_id: string;
/**
* 店铺名称
*/
name: string;
/**
* 店铺的经纬度
*/
lnglat: LngLat;
/**
* 分类
*/
category: ShopCategory;
}
interface Building {
/**
* 所属楼宇ID
*/
id: string;
/**
* 楼层名称
*/
name: string;
/**
* 楼层的经纬度
*/
lnglat: LngLat;
/**
* 所在楼层
*/
floor: number;
floor_details: FloorDetails;
}
interface SearchSuccessResult {
/**
* 楼层的id
*/
id: string;
status: 0;
/**
* 建筑信息
*/
building: Building;
}
interface SearchErrorResult {
/**
* 楼宇id
*/
id: string;
status: 1;
error: Error;
}
type SearchResult = SearchSuccessResult | SearchErrorResult;
}
class IndoorMap extends Layer {
/**
* 室内地图
* @param options 选项
*/
constructor(options?: IndoorMap.Options);
/**
* 显示指定室内地图信息
* @param indoorId 建筑物ID
* @param callback 回调
*/
showIndoorMap(
indoorId: string,
callback?: (error: null | Error, result: IndoorMap.SearchResult) => void
): void;
/**
* 显示指定室内地图信息
* @param indoorId 建筑物ID
* @param floor 楼层
* @param callback 回调
*/
showIndoorMap(
indoorId: string,
floor?: number,
callback?: (error: null | Error, result: IndoorMap.SearchResult) => void
): void;
/**
* 显示指定室内地图信息
* @param indoorId 建筑物ID
* @param floor 楼层
* @param shopId 商铺ID
* @param callback 回调
*/
showIndoorMap(
indoorId: string,
floor?: number,
shopId?: string,
callback?: (error: null | Error, result: IndoorMap.SearchResult) => void
): void;
/**
* 显示指定室内地图信息
* @param indoorId 建筑物ID
* @param floor 楼层
* @param shopId 商铺ID
* @param noMove 阻止移动
* @param callback 回调
*/
showIndoorMap(
indoorId: string,
floor?: number,
shopId?: string,
noMove?: boolean,
callback?: (error: null | Error, result: IndoorMap.SearchResult) => void
): void;
/**
* 显示指定的楼层
* @param floor 楼层
* @param noMove 禁止移动
*/
showFloor(floor: number, noMove?: boolean): false | undefined;
/**
* 显示楼层切换控件
*/
showFloorBar(): void;
/**
* 隐藏楼层切换控件
*/
hideFloorBar(): void;
/**
* 显示室内地图标注
*/
showLabels(): void;
/**
* 隐藏室内地图标注
*/
hideLabels(): void;
/**
* 获取处于被选中状态的室内地图的ID
*/
getSelectedBuildingId(): string | null;
/**
* 获取处于被选中状态的室内地图的一些基本信息
*/
getSelectedBuilding(): IndoorMap.Building | null;
// internal
getFloorBar(): void;
setSelectedBuildingId(id: string): void;
}
}
@@ -5,20 +5,20 @@
"es6",
"dom"
],
"noEmit": true,
"noImplicitAny": true,
"noImplicitThis": false,
"strictNullChecks": false,
"noImplicitThis": true,
"strictNullChecks": true,
"strictFunctionTypes": true,
"baseUrl": "../",
"typeRoots": [
"../"
],
"types": [],
"noEmit": true,
"forceConsistentCasingInFileNames": true
},
"files": [
"index.d.ts",
"knex-tests.ts"
"amap-js-api-indoor-map-tests.ts"
]
}
}
@@ -0,0 +1,435 @@
declare const map: AMap.Map;
declare const div: HTMLElement;
declare const lnglat: AMap.LngLat;
declare const lnglatTuple: [number, number];
declare const bounds: AMap.Bounds;
declare const polygon: AMap.Polygon;
declare const lang: AMap.Lang;
// $ExpectType PlaceSearch
const placeSearch = new AMap.PlaceSearch();
// $ExpectType PlaceSearch
new AMap.PlaceSearch({});
// $ExpectType PlaceSearch
new AMap.PlaceSearch({
city: '深圳',
citylimit: true,
children: 1,
type: '餐饮服务',
lang: 'zh_cn',
pageSize: 10,
pageIndex: 10,
extensions: 'all',
map,
panel: div,
showCover: true,
renderStyle: 'newpc',
autoFitView: true
});
// $ExpectType void
placeSearch.search('keyword', (status, result) => {
const temp: 'error' | 'complete' | 'no_data' = status;
// $ExpectType string | SearchResult
result;
if (typeof result !== 'string') {
// $ExpectType string
result.info;
// $ExpectType PoiList
result.poiList;
// $ExpectType string[] | undefined
result.keywordList;
// $ExpectType CityInfo[] | undefined
result.cityList;
const poiList = result.poiList;
// $ExpectType number
poiList.pageIndex;
// $ExpectType number
poiList.pageSize;
// $ExpectType number
poiList.count;
const poi = poiList.pois[0];
// $ExpectType string
poi.address;
// $ExpectType number
poi.distance;
// $ExpectType string
poi.id;
// $ExpectType LngLat | null
poi.location;
// $ExpectType string
poi.name;
// $ExpectType string
poi.shopinfo;
// $ExpectType string
poi.tel;
// $ExpectType string
poi.type;
if ('website' in poi) {
// $ExpectType string
poi.adcode;
// $ExpectType string
poi.adname;
// $ExpectType string
poi.citycode;
// $ExpectType string
poi.cityname;
// $ExpectType boolean
poi.discount;
// $ExpectType string
poi.email;
// $ExpectType LngLat | null
poi.entr_location;
// $ExpectType LngLat | null
poi.exit_location;
// $ExpectType boolean
poi.groupbuy;
if (poi.indoor_map) {
const indoorData = poi.indoor_data;
// $ExpectType string
indoorData.cpid;
// $ExpectType string
indoorData.floor;
// $ExpectType string
indoorData.truefloor;
}
poi.pcode;
// $ExpectType PoiPhoto[]
poi.photos;
// $ExpectType string
poi.pname;
// $ExpectType string
poi.postcode;
// $ExpectType string
poi.website;
const photo = poi.photos[0];
// $ExpectType string
photo.title;
// $ExpectType string
photo.url;
// $ExpectType Groupbuy[] | undefined
poi.groupbuys;
if (poi.groupbuys) {
const groupbuy = poi.groupbuys[0];
// $ExpectType string
groupbuy.title;
// $ExpectType string
groupbuy.type_code;
// $ExpectType string
groupbuy.type;
// $ExpectType string
groupbuy.detail;
// $ExpectType string
groupbuy.stime;
// $ExpectType string
groupbuy.etime;
// $ExpectType number
groupbuy.count;
// $ExpectType number
groupbuy.sold_num;
// $ExpectType number
groupbuy.original_price;
// $ExpectType number
groupbuy.groupbuy_price;
// $ExpectType number
groupbuy.discount;
// $ExpectType string
groupbuy.ticket_address;
// $ExpectType string
groupbuy.ticket_tel;
// $ExpectType PoiPhoto[]
groupbuy.photos;
// $ExpectType string
groupbuy.url;
// $ExpectType string
groupbuy.provider;
}
// $ExpectType Discount[] | undefined
poi.discounts;
if (poi.discounts) {
const discount = poi.discounts[0];
// $ExpectType string
discount.title;
// $ExpectType string
discount.detail;
// $ExpectType string
discount.start_time;
// $ExpectType string
discount.end_time;
// $ExpectType number
discount.sold_num;
// $ExpectType PoiPhoto[]
discount.photos;
// $ExpectType string
discount.url;
// $ExpectType string
discount.provider;
}
if (poi.deep_type === 'CINEMA') {
// $ExpectType Cinema
const cinema = poi.cinema;
// $ExpectType string
cinema.intro;
// $ExpectType string
cinema.rating;
// $ExpectType string
cinema.deep_src;
// $ExpectType string
cinema.parking;
// $ExpectType string
cinema.opentime_GDF;
// $ExpectType string
cinema.opentime;
// $ExpectType PoiPhoto[]
cinema.photos;
}
if (poi.deep_type === 'DINING') {
// $ExpectType Dining
const dining = poi.dining;
// $ExpectType string
dining.cuisines;
// $ExpectType string
dining.tag;
// $ExpectType string
dining.intro;
// $ExpectType string
dining.rating;
// $ExpectType string
dining.cp_rating;
// $ExpectType string
dining.deep_src;
// $ExpectType string
dining.taste_rating;
// $ExpectType string
dining.environment_rating;
// $ExpectType string
dining.service_rating;
// $ExpectType string
dining.cost;
// $ExpectType string
dining.recommend;
// $ExpectType string
dining.atmosphere;
// $ExpectType string
dining.ordering_wap_url;
// $ExpectType string
dining.ordering_web_url;
// $ExpectType string
dining.ordering_app_url;
// $ExpectType string
dining.opentime_GDF;
// $ExpectType string
dining.opentime;
// $ExpectType string
dining.addition;
// $ExpectType PoiPhoto[]
dining.photos;
}
if (poi.deep_type === 'SCENIC') {
// $ExpectType Scenic
const scenic = poi.scenic;
// $ExpectType string
scenic.intro;
// $ExpectType string
scenic.rating;
// $ExpectType string
scenic.deep_src;
// $ExpectType string
scenic.level;
// $ExpectType string
scenic.price;
// $ExpectType string
scenic.season;
// $ExpectType string
scenic.recommend;
// $ExpectType string
scenic.theme;
// $ExpectType string
scenic.ordering_wap_url;
// $ExpectType string
scenic.ordering_web_url;
// $ExpectType string
scenic.opentime_GDF;
// $ExpectType string
scenic.opentime;
// $ExpectType PoiPhoto[]
scenic.photos;
}
if (poi.deep_type === 'HOTEL') {
// $ExpectType Hotel
const hotel = poi.hotel;
// $ExpectType string
hotel.rating;
// $ExpectType string
hotel.star;
// $ExpectType string
hotel.intro;
// $ExpectType string
hotel.lowest_price;
// $ExpectType string
hotel.faci_rating;
// $ExpectType string
hotel.health_rating;
// $ExpectType string
hotel.environment_rating;
// $ExpectType string
hotel.service_rating;
// $ExpectType string
hotel.traffic;
// $ExpectType string
hotel.addition;
// $ExpectType string
hotel.deep_src;
// $ExpectType PoiPhoto[]
hotel.photos;
}
}
if (result.cityList) {
const city = result.cityList[0];
// $ExpectType string
city.adcode;
// $ExpectType string
city.citycode;
// $ExpectType number
city.count;
// $ExpectType string
city.name;
}
} else {
// $ExpectType string
result;
}
});
// $ExpectType void
placeSearch.searchNearBy('keyword', lnglat, 10, (status, result) => {
const temp: 'error' | 'complete' | 'no_data' = status;
// $ExpectType string | SearchResult
result;
});
// $ExpectType void
placeSearch.searchNearBy('keyword', lnglatTuple, 10, () => { });
// $ExpectType void
placeSearch.searchInBounds('keyword', bounds, (status, result) => {
const temp: 'error' | 'complete' | 'no_data' = status;
// $ExpectType string | SearchResult
result;
});
// $ExpectType void
placeSearch.searchInBounds('keyword', polygon, () => { });
// $ExpectType void
placeSearch.getDetails('id', (status, result) => {
const temp: 'error' | 'complete' | 'no_data' = status;
// $ExpectType string | SearchResult
result;
});
// $ExpectType void
placeSearch.setType('type');
// $ExpectType void
placeSearch.setType();
// $ExpectType void
placeSearch.setCityLimit(true);
// $ExpectType void
placeSearch.setCityLimit();
// $ExpectType void
placeSearch.setPageIndex(1);
// $ExpectType void
placeSearch.setPageIndex();
// $ExpectType void
placeSearch.setPageSize(1);
// $ExpectType void
placeSearch.setPageSize();
// $ExpectType void
placeSearch.setCity('city');
// $ExpectType void
placeSearch.setCity();
// $ExpectType void
placeSearch.setLang(lang);
// $ExpectType void
placeSearch.setLang();
// $ExpectType "zh_cn" | "en" | "zh_en" | undefined
placeSearch.getLang();
// $ExpectType void
placeSearch.clear();
// $ExpectType void
placeSearch.poiOnAMAP({
id: 'id',
});
// $ExpectType void
placeSearch.poiOnAMAP({
location: lnglat,
id: 'id',
name: 'name'
});
// $ExpectType void
placeSearch.detailOnAMAP({
id: 'id',
});
// $ExpectType void
placeSearch.detailOnAMAP({
location: lnglat,
id: 'id',
name: 'name'
});
// $ExpectType void
placeSearch.open();
// $ExpectType void
placeSearch.close();
placeSearch.on('complete', (event: AMap.PlaceSearch.EventMap['complete']) => {
// $ExpectType "complete"
event.type;
// $ExpectType string
event.info;
// $ExpectType PoiList
event.poiList;
// $ExpectType string[] | undefined
event.keywordList;
// $ExpectType CityInfo[] | undefined
event.cityList;
});
placeSearch.on('listElementClick', (event: AMap.PlaceSearch.EventMap['listElementClick']) => {
// $ExpectType MouseEvent
event.event;
// $ExpectType string
event.id;
// $ExpectType number
event.index;
// $ExpectType Marker<any>
event.marker;
// $ExpectType HTMLLIElement
event.listElement;
});
placeSearch.on('markerClick', (event: AMap.PlaceSearch.EventMap['markerClick']) => {
const markerEvent = event.event;
// $ExpectType Marker<any>
markerEvent.target;
// $ExpectType string
event.id;
// $ExpectType number
event.index;
// $ExpectType Marker<any>
event.marker;
// $ExpectType HTMLLIElement
event.listElement;
});
+737
View File
@@ -0,0 +1,737 @@
// Type definitions for non-npm package amap-js-api-place-search 1.4
// Project: https://lbs.amap.com/api/javascript-api/reference/search#m_AMap.PlaceSearch
// Definitions by: breeze9527 <https://github.com/breeze9527>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
// TypeScript Version: 2.8
/// <reference types="amap-js-api" />
declare namespace AMap {
namespace PlaceSearch {
interface EventMap {
complete: Event<'complete', SearchResult>;
error: Event<'error', { info: string }>;
selectChanged: Event<'selectChanged', {
selected: SelectChangeEventData | EventMap['markerClick'] | EventMap['listElementClick'];
lastSelected: SelectChangeEventData | EventMap['markerClick'] | EventMap['listElementClick'] | null;
}>;
listElementClick: SelectChangeEvent<'listElementClick', MouseEvent>;
markerClick: SelectChangeEvent<'markerClick', Marker.EventMap['click']>;
// internal
renderComplete: Event<'renderComplete', {
result: SelectChangeEventData[];
markers: Marker[];
listElements: HTMLElement[];
}>;
infoWindowClick: Event<'infoWindowClick', SelectChangeEventData & {
event: MouseEvent;
infoWindow: InfoWindow;
infoWindowContentDom: HTMLDivElement;
}>;
willClear: Event<'willClear', {
id: string;
index: number;
data: Poi[];
}>;
markerDestoryed: Event<'markerDestoryed', SelectChangeEventData>; // typo in source code
listElementDetroyed: Event<'listElementDetroyed', SelectChangeEventData>; // typo too
}
interface SelectChangeEventData {
/**
* 当前选中的POI的ID
*/
id: string;
/**
* 索引
*/
index: number;
/**
* 当前选中的POI对应的在地图中的Marker对象
*/
marker: Marker;
/**
* 当前选中的POI在结果面板中对应的列表项
*/
listElement: HTMLLIElement;
/**
* 当前选中的POI的信息
*/
data: Poi[];
}
type SelectChangeEvent<N extends string, E> = Event<N, SelectChangeEventData & {
event: E;
}>;
interface PoiPhoto {
/**
* 图片名称
*/
title: string;
/**
* 图片url
*/
url: string;
}
interface PoiBase {
/**
* 全局唯一ID
*/
id: string;
/**
* 名称
*/
name: string;
/**
* 兴趣点类型
*/
type: string;
/**
* 兴趣点经纬度
*/
location: LngLat | null;
/**
* 地址
*/
address: string;
/**
* 离中心点距离
*/
distance: number;
/**
* 电话
*/
tel: string;
shopinfo: string;
children?: any[]; // TODO Array<{location: LngLat | null}>
}
interface Groupbuy {
/**
* 团购标题
*/
title: string;
/**
* 团购分类代码
*/
type_code: string;
/**
* 团购分类
*/
type: string;
/**
* 团购详情
*/
detail: string;
/**
* 团购开始时间
*/
stime: string;
/**
* 团购结束时间
*/
etime: string;
/**
* 团购总量
*/
count: number;
/**
* 已卖出数量
*/
sold_num: number;
/**
* 原价
*/
original_price: number;
/**
* 折扣价
*/
groupbuy_price: number;
/**
* 折扣
*/
discount: number;
/**
* 取票地址
*/
ticket_address: string;
/**
* 取票电话
*/
ticket_tel: string;
/**
* 图片信息
*/
photos: PoiPhoto[];
/**
* 来源url
*/
url: string;
/**
* 来源标识
*/
provider: string;
}
interface Discount {
/**
* 优惠标题
*/
title: string;
/**
* 优惠详情
*/
detail: string;
/**
* 开始时间
*/
start_time: string;
/**
* 结束时间
*/
end_time: string;
/**
* 已卖出数量
*/
sold_num: number;
/**
* 图片信息列表
*/
photos: PoiPhoto[];
/**
* 来源url
*/
url: string;
/**
* 来源标识
*/
provider: string;
}
interface Cinema {
/**
* 简介
*/
intro: string;
/**
* 综合评分
*/
rating: string;
/**
* 信息来源
*/
deep_src: string;
/**
* 停车场设施
*/
parking: string;
/**
* 规范格式的营业时间
*/
opentime_GDF: string;
/**
* 非规范格式的营业时间
*/
opentime: string;
/**
* 图片信息列表
*/
photos: PoiPhoto[];
}
interface Dining {
/**
* 菜系
*/
cuisines: string;
/**
* 标签
*/
tag: string;
/**
* 简介
*/
intro: string;
/**
* 综合评分
*/
rating: string;
/**
* 单数据源的评分
*/
cp_rating: string;
/**
* 信息来源
*/
deep_src: string;
/**
* 口味评分
*/
taste_rating: string;
/**
* 环境评分
*/
environment_rating: string;
/**
* 服务评分
*/
service_rating: string;
/**
* 人均消费
*/
cost: string;
/**
* 特色菜
*/
recommend: string;
/**
* 氛围
*/
atmosphere: string;
/**
* 订餐wap链接
*/
ordering_wap_url: string;
/**
* 订餐web链接
*/
ordering_web_url: string;
/**
* 订餐APP URL
*/
ordering_app_url: string;
/**
* 规范格式的营业时间
*/
opentime_GDF: string;
/**
* 非规范格式的营业时间
*/
opentime: string;
/**
* 餐厅特色
*/
addition: string;
/**
* 图片信息列表
*/
photos: PoiPhoto[];
}
interface Scenic {
/**
* 简介
*/
intro: string;
/**
* 综合评分
*/
rating: string;
/**
* 信息来源
*/
deep_src: string;
/**
* 景区国标级别
*/
level: string;
/**
* 门票价格
*/
price: string;
/**
* 适合游玩的季节
*/
season: string;
/**
* 推荐景点
*/
recommend: string;
/**
* 景区主题
*/
theme: string;
/**
* wap购票链接
*/
ordering_wap_url: string;
/**
* web购票链接
*/
ordering_web_url: string;
/**
* 规范格式的营业时间
*/
opentime_GDF: string;
/**
* 非规范格式的营业时间
*/
opentime: string;
/**
* 图片信息列表
*/
photos: PoiPhoto[];
}
interface Hotel {
/**
* 综合评分
*/
rating: string;
/**
* 星级
*/
star: string;
/**
* 简介
*/
intro: string;
/**
* 最低房价
*/
lowest_price: string;
/**
* 设施评分
*/
faci_rating: string;
/**
* 卫生评分
*/
health_rating: string;
/**
* 环境评分
*/
environment_rating: string;
/**
* 服务评分
*/
service_rating: string;
/**
* 交通提示
*/
traffic: string;
/**
* 特色服务
*/
addition: string;
/**
* 信息来源
*/
deep_src: string;
/**
* 图片信息列表
*/
photos: PoiPhoto[];
}
type PoiExt = PoiBase & {
/**
* 网址
*/
website: string;
/**
* 所在省份编码
*/
pcode: string;
/**
* 所在城市编码
*/
citycode: string;
/**
* 所在区域编码
*/
adcode: string;
/**
* 邮编
*/
postcode: string;
/**
* 所在省份
*/
pname: string;
/**
* 所在城市名称
*/
cityname: string;
/**
* 所在行政区名称
*/
adname: string;
/**
* 电子邮箱
*/
email: string;
/**
* 照片
*/
photos: PoiPhoto[];
/**
* 入口经纬度
*/
entr_location: LngLat | null;
/**
* 出口经纬度
*/
exit_location: LngLat | null;
/**
* @deprecated 是否有团购信息
*/
groupbuy: boolean;
/**
* @deprecated 是否有优惠信息
*/
discount: boolean;
} & ({
indoor_map: true;
indoor_data: {
cpid: string;
floor: string;
truefloor: string;
};
} | {
indoor_map: false;
}) & {
/**
* @deprecated 团购信息
*/
groupbuys?: Groupbuy[];
/**
* @deprecated 优惠信息
*/
discounts?: Discount[];
} & ({
deep_type: 'CINEMA';
/**
* @deprecated 影院类深度信息
*/
cinema: Cinema;
} | {
deep_type: 'DINING';
/**
* @deprecated 餐饮类深度信息
*/
dining: Dining;
} | {
deep_type: 'SCENIC';
/**
* @deprecated 景点类深度信息
*/
scenic: Scenic;
} | {
deep_type: 'HOTEL';
/**
* @deprecated 酒店类深度信息
*/
hotel: Hotel;
});
interface Options {
/**
* 兴趣点城市
*/
city?: string;
/**
* 是否强制限制在设置的城市内搜索
*/
citylimit?: boolean;
/**
* 是否按照层级展示子POI数据
* children=1,展示子节点POI数据,children=0,不展示子节点数据
*/
children?: number;
/**
* 兴趣点类别,多个类别用“|”分割
*/
type?: string;
/**
* 检索语言类型
*/
lang?: Lang;
/**
* 单页显示结果条数
*/
pageSize?: number;
/**
* 页码
*/
pageIndex?: number;
/**
* 是否返回详细信息
* base返回基本地址信息;all返回基本+详细信息
*/
extensions?: 'base' | 'all';
/**
* Map对象
*/
map?: Map;
/**
* 结果列表的HTML容器id或容器元素
*/
panel?: string | HTMLElement;
/**
* 是否在地图上显示周边搜索的圆或者范围搜索的多边形
*/
showCover?: boolean;
/**
* 绘制的UI风格
*/
renderStyle?: 'newpc' | 'default';
/**
* 是否自动调整地图视野使绘制的Marker点都处于视口的可见范围
*/
autoFitView?: boolean;
// internal
renderEngine?: string;
rankBy?: string;
}
interface PoiList {
/**
* Poi列表
*/
pois: Poi[]; // PlaceSearchPoiBase[] | PlaceSearchPoiExt[];
/**
* 页码
*/
pageIndex: number;
/**
* 单页结果数
*/
pageSize: number;
/**
* 查询结果总数
*/
count: number;
}
interface CityInfo {
/**
* 建议城市名称
*/
name: string;
/**
* 城市编码
*/
citycode: string;
/**
* 行政区编码
*/
adcode: string;
/**
* 该城市的建议结果数目
*/
count: number;
}
interface SearchResult {
/**
* 成功状态说明
*/
info: string;
/**
* 兴趣点列表
*/
poiList: PoiList;
/**
* 建议关键字列表
*/
keywordList?: string[];
/**
* 城市建议列表
*/
cityList?: CityInfo[];
}
type Poi = PoiBase | PoiExt;
type SearchStatus = 'complete' | 'error' | 'no_data';
}
class PlaceSearch extends EventEmitter {
/**
* 地点搜索服务
* @param options 选项
*/
constructor(options?: PlaceSearch.Options);
/**
* 根据关键字搜索
* @param keyword 根据关键字搜索
* @param callback 回调
*/
search(
keyword: string,
callback: (status: PlaceSearch.SearchStatus, result: string | PlaceSearch.SearchResult) => void
): void;
/**
* 周边查询
* @param keyword 关键字
* @param center 搜索中心
* @param radius 搜索半径
* @param callback 回调
*/
searchNearBy(
keyword: string,
center: LocationValue,
radius: number,
callback: (status: PlaceSearch.SearchStatus, result: string | PlaceSearch.SearchResult) => void
): void;
/**
* 根据范围和关键词进行范围查询
* @param keyword 关键字
* @param bounds 搜索范围
* @param callback 回调
*/
searchInBounds(
keyword: string,
bounds: Bounds | Polygon,
callback: (status: PlaceSearch.SearchStatus, result: string | PlaceSearch.SearchResult) => void
): void;
/**
* 根据POIID 查询POI 详细信息
* @param POIID POIID
* @param callback 搜索回调
*/
getDetails(
POIID: string,
callback: (status: PlaceSearch.SearchStatus, result: string | PlaceSearch.SearchResult) => void
): void;
/**
* 设置查询类别
* @param type 查询类别
*/
setType(type?: string): void;
/**
* 设置是否强制限制城市
* @param limit 是否强制限制城市
*/
setCityLimit(limit?: boolean): void;
/**
* 设置查询结果特定页数
* @param pageIndex 页码
*/
setPageIndex(pageIndex?: number): void;
/**
* 设置查询单页结果数
* @param pageSize 结果数
*/
setPageSize(pageSize?: number): void;
/**
* 设置查询城市
* @param city 城市
*/
setCity(city?: string): void;
/**
* 设置检索语言类型
* @param lang 语言类型
*/
setLang(lang?: Lang): void;
/**
* 获取检索语言类型
*/
getLang(): Lang | undefined;
/**
* 清除搜索结果
*/
clear(): void;
/**
* 唤起高德地图客户端marker页
* @param obj 唤起参数
*/
poiOnAMAP(obj: { location?: LocationValue; id: string; name?: string; }): void;
/**
* 唤起高德地图客户端POI详情页
* @param obj 唤起参数
*/
detailOnAMAP(obj: { location?: LocationValue; id: string; name?: string; }): void;
// internal
open(): void;
close(): void;
}
}
@@ -0,0 +1,24 @@
{
"compilerOptions": {
"module": "commonjs",
"lib": [
"es6",
"dom"
],
"noEmit": true,
"noImplicitAny": true,
"noImplicitThis": true,
"strictNullChecks": true,
"strictFunctionTypes": true,
"baseUrl": "../",
"typeRoots": [
"../"
],
"types": [],
"forceConsistentCasingInFileNames": true
},
"files": [
"index.d.ts",
"amap-js-api-place-search-tests.ts"
]
}
+46 -1
View File
@@ -2415,6 +2415,7 @@ const testInfoWindow = new AMap.InfoWindow<InfoWindowExtraData>({
closeWhenClickMap: false,
content: 'content',
size: [100, 100],
anchor: 'bottom-center',
offset: new AMap.Pixel(10, 10),
position: lnglat,
showShadow: true
@@ -2449,6 +2450,20 @@ testInfoWindow.setPosition(lnglatTuple);
// $ExpectType LngLat | undefined
testInfoWindow.getPosition();
const testInfoWindowAnchor = testInfoWindow.getAnchor();
if (testInfoWindowAnchor !== undefined) {
// $ExpectType Anchor
testInfoWindowAnchor;
} else {
// $ExpectType undefined
testInfoWindowAnchor;
}
// $ExpectType void
testInfoWindow.setAnchor();
// $ExpectType void
testInfoWindow.setAnchor(testInfoWindowAnchor);
// $ExpectType Size | undefined
testInfoWindow.getSize();
@@ -2491,6 +2506,7 @@ new AMap.Marker({});
export const testMarker = new AMap.Marker<MarkerExtraData>({
map,
position: lnglat,
anchor: 'bottom-center',
offset: pixel,
icon: 'iconUrl',
content: 'htmlString',
@@ -2526,6 +2542,20 @@ testMarker.markOnAMAP({
name: '123'
});
const testMarkerAnchor = testMarker.getAnchor();
if (testMarkerAnchor) {
// $ExpectType Anchor
testMarkerAnchor;
} else {
// $ExpectType undefined
testMarkerAnchor;
}
// $ExpectType void
testMarker.setAnchor(testMarkerAnchor);
// $ExpectType void
testMarker.setAnchor();
// $ExpectType Pixel
testMarker.getOffset();
@@ -3229,6 +3259,7 @@ const testText = new AMap.Text<TextExtraData>({
verticalAlign: 'top',
map,
position: lnglat,
anchor: 'bottom-center',
offset: pixel,
topWhenClick: true,
bubble: true,
@@ -3246,6 +3277,20 @@ const testText = new AMap.Text<TextExtraData>({
extData: { test: 1 }
});
const testTextAnchor = testText.getAnchor();
if (testTextAnchor) {
// $ExpectType Anchor
testTextAnchor;
} else {
// $ExpectType undefined
testTextAnchor;
}
// $ExpectType void
testText.setAnchor(testTextAnchor);
// $ExpectType void
testText.setAnchor();
// $ExpectType string
testText.getText();
@@ -3363,7 +3408,7 @@ testText.setShadow(icon);
testText.setShadow('shadow url');
// $ExpectType void
testText.setExtData({test: 1});
testText.setExtData({ test: 1 });
// $ExpectType {} | TextExtraData
testText.getExtData();
+5
View File
@@ -2,7 +2,12 @@ declare namespace AMap {
class ArrayBounds {
constructor(bounds: LocationValue[]);
bounds: LngLat[];
/**
* 判断传入的点是否在ArrayBounds内
* @param point 目标点
*/
contains(point: LocationValue): boolean;
// internal
toBounds(): Bounds;
getCenter(): LngLat;
+27
View File
@@ -1,12 +1,39 @@
declare namespace AMap {
class Bounds {
/**
* 地物对象的经纬度矩形范围。
* @param southWest 西南角经纬度
* @param northEast 东北角经纬度
*/
constructor(southWest: LngLat, northEast: LngLat);
/**
* 指定点坐标是否在矩形范围内
* @param point 制定坐标
*/
contains(point: LocationValue): boolean;
/**
* 获取当前Bounds的中心点经纬度坐标
*/
getCenter(): LngLat;
/**
* 获取西南角坐标
*/
getSouthWest(): LngLat;
/**
* 获取东南角坐标
*/
getSouthEast(): LngLat;
/**
* 获取东北角坐标
*/
getNorthEast(): LngLat;
/**
* 获取西北角坐标
*/
getNorthWest(): LngLat;
/**
* 以字符串形式返回地物对象的矩形范围
*/
toString(): string;
}
}
+141
View File
@@ -1,51 +1,192 @@
declare namespace AMap {
namespace Browser {
/**
* 当前浏览器userAgent
*/
const ua: string;
/**
* 是否移动设备
*/
const mobile: boolean;
/**
* 平台类型,如:'windows'、'mac'、'ios'、'android'、'other'
*/
const plat: 'android' | 'ios' | 'windows' | 'mac' | 'other';
/**
* 是否mac设备
*/
const mac: boolean;
/**
* 是否windows设备
*/
const windows: boolean;
/**
* 是否iOS设备
*/
const ios: boolean;
/**
* 是否iPad
*/
const iPad: boolean;
/**
* 是否iPhone
*/
const iPhone: boolean;
/**
* 是否安卓设备
*/
const android: boolean;
/**
* 是否安卓4以下系统
*/
const android23: boolean;
/**
* 是否Chrome浏览器
*/
const chrome: boolean;
/**
* 是否火狐浏览器
*/
const firefox: boolean;
/**
* 是否Safari浏览器
*/
const safari: boolean;
/**
* 是否微信
*/
const wechat: boolean;
/**
* 是否UC浏览器
*/
const uc: boolean;
/**
* 是否QQ或者QQ浏览器
*/
const qq: boolean;
/**
* 是否IE
*/
const ie: boolean;
/**
* 是否IE6
*/
const ie6: boolean;
/**
* 是否IE7
*/
const ie7: boolean;
/**
* 是否IE8
*/
const ie8: boolean;
/**
* 是否IE9
*/
const ie9: boolean;
/**
* 是否IE10
*/
const ie10: boolean;
/**
* 是否IE11
*/
const ie11: boolean;
/**
* 是否Edge浏览器
*/
const edge: boolean;
/**
* 是否IE9以下
*/
const ielt9: boolean;
/**
* 是否百度浏览器
*/
const baidu: boolean;
/**
* 是否支持LocaStorage
*/
const isLocalStorage: boolean;
/**
* 是否支持Geolocation
*/
const isGeolocation: boolean;
/**
* 是否Webkit移动浏览器
*/
const mobileWebkit: boolean;
/**
* 是否支持Css3D的Webkit移动端浏览器
*/
const mobileWebkit3d: boolean;
/**
* 是否Opera移动浏览器
*/
const mobileOpera: boolean;
/**
* 是否高清屏幕,devicePixelRatio>1
*/
const retina: boolean;
/**
* 是否触屏
*/
const touch: boolean;
/**
* 是否msPointer设备
*/
const msPointer: boolean;
/**
* 是否pointer设备
*/
const pointer: boolean;
/**
* 是否webkit浏览器
*/
const webkit: boolean;
/**
* 是否支持Css3D的ie浏览器
*/
const ie3d: boolean;
/**
* 是否支持Css3D的Webkit浏览器
*/
const webkit3d: boolean;
/**
* 是否支持Css3D的gecko浏览器
*/
const gecko3d: boolean;
/**
* 是否支持Css3D的opera浏览器
*/
const opera3d: boolean;
/**
* 是否支持Css3D的浏览器
*/
const any3d: boolean;
/**
* 是否支持canvas
*/
const isCanvas: boolean;
/**
* 是否支持svg
*/
const isSvg: boolean;
/**
* 是否支持vml
*/
const isVML: boolean;
/**
* 是否支持WebWorker
*/
const isWorker: boolean;
/**
* 是否支持WebSocket
*/
const isWebsocket: boolean;
/**
* 判断是否支持webgl
*/
function isWebGL(): boolean;
}
}
+9
View File
@@ -9,8 +9,17 @@ declare namespace AMap {
: V extends undefined ? {}
: { value: V });
type MapsEvent<N extends string, I> = Event<N, {
/**
* 经纬度坐标
*/
lnglat: LngLat;
/**
* 像素坐标
*/
pixel: Pixel;
/**
* 触发对象
*/
target: I
}>;
+12
View File
@@ -1,12 +1,24 @@
declare namespace AMap {
namespace convertFrom {
interface Result {
/**
* 成功状态文字描述
*/
info: string; // 'ok'
/**
* 高德坐标集合
*/
locations: LngLat[];
}
type Type = 'gps' | 'baidu' | 'mapbar';
type SearchStatus = 'complete' | 'error';
}
/**
* 为坐标转换类,支持将其他坐标系的坐标点转换为高德坐标系。
* @param lnglat 待转换坐标
* @param type 用于说明是哪个服务商的坐标
* @param callback 转换完成后的回调函数
*/
function convertFrom(
lnglat: LocationValue | LocationValue[],
type: convertFrom.Type | null,
+58 -11
View File
@@ -1,31 +1,78 @@
declare namespace AMap {
namespace DomUtil {
/**
* 获取DOM元素的大小
* @param dom DOM元素
*/
function getViewport(dom: HTMLElement): Size;
/**
* 获取DOM元素距离窗口左上角的距离
* @param dom DOM元素
*/
function getViewportOffset(dom: HTMLElement): Pixel;
/**
* 在parentNode内部创建一个className类名的tagName元素
* @param tagName 标签名称
* @param parent 父节点
* @param className 类名
*/
function create<K extends keyof HTMLElementTagNameMap>(
tagName: K,
parent?: HTMLElement,
className?: string
): HTMLElementTagNameMap[K];
/**
* 给DOM元素设置为className样式
* @param dom DOM元素
* @param className 类名
*/
function setClass(dom: HTMLElement, className?: string): void;
/**
* DOM元素是否包含className
* @param dom DOM元素
* @param className 类名
*/
function hasClass(dom: HTMLElement, className: string): boolean;
/**
* 给DOM元素添加一个className
* @param dom DOM元素
* @param className 类名
*/
function addClass(dom: HTMLElement, className: string): void;
/**
* 给DOM元素删除一个className
* @param dom DOM元素
* @param className 类名
*/
function removeClass(dom: HTMLElement, className: string): void;
/**
* 给DOM元素设定一个透明度
* @param dom DOM元素
* @param opacity 透明度(0-1)
*/
function setOpacity(dom: HTMLElement, opacity: number): void;
/**
* 给DOM元素旋转一个角度,以center为中心,center以元素左上角为坐标原点
* @param dom DOM元素
* @param deg 旋转角度
* @param origin 旋转中心
*/
function rotate(dom: HTMLElement, deg: number, origin?: { x: number, y: number }): void;
/**
* 给DOM元素删除一组样式,Object同样式表
* @param dom DOM元素
* @param style 样式
*/
function setCss(dom: HTMLElement | HTMLElement[], style: Partial<CSSStyleDeclaration>): typeof DomUtil; // this
/**
* 清空DOM元素
* @param dom DOM元素
*/
function empty(dom: HTMLElement): void;
/**
* 将DOM元素从父节点删除
* @param dom DOM元素
*/
function remove(dom: HTMLElement): void;
}
}
+50 -7
View File
@@ -1,5 +1,13 @@
declare namespace AMap {
abstract class EventEmitter {
/**
* 注册事件
* @param eventName 事件名称
* @param handler 事件回调函数
* @param context 事件回调中的上下文
* @param once 触发一次
* @param unshift 更改事件顺序
*/
on<E extends Event, C = this>(
eventName: string,
// tslint:disable-next-line:no-unnecessary-generics
@@ -8,14 +16,23 @@ declare namespace AMap {
once?: boolean,
unshift?: boolean
): this;
/**
* 移除事件绑定
* @param eventName 事件名称
* @param handler 事件功能函数
* @param context 事件上下文
*/
off<E extends Event, C = this>(
eventName: string,
// tslint:disable-next-line
handler: ((this: C, event: E) => void) | 'mv',
context?: C
): this;
/**
* 触发事件
* @param eventName 事件名称
* @param data 事件数据
*/
emit(eventName: string, data?: any): this;
}
@@ -23,7 +40,13 @@ declare namespace AMap {
interface EventListener<T extends 0 | 1> {
type: T;
}
/**
* 注册DOM对象事件
* @param instance 需注册事件的DOM对象
* @param eventName 事件名称
* @param handler 事件功能函数
* @param context 事件上下文
*/
function addDomListener<N extends keyof HTMLElementTagNameMap, E extends keyof HTMLElementEventMap, C = HTMLElementTagNameMap[N]>(
// tslint:disable-next-line: no-unnecessary-generics
instance: HTMLElementTagNameMap[N],
@@ -31,7 +54,13 @@ declare namespace AMap {
handler: (this: C, event: HTMLElementEventMap[E]) => void,
context?: C
): EventListener<0>;
/**
* 给对象注册事件
* @param instance 需注册事件的对象
* @param eventName 事件名称
* @param handler 事件功能函数
* @param context 事件上下文
*/
function addListener<I extends EventEmitter, E extends Event, C = I>(
// tslint:disable-next-line: no-unnecessary-generics
instance: I,
@@ -41,7 +70,13 @@ declare namespace AMap {
// tslint:disable-next-line: no-unnecessary-generics
context?: C
): EventListener<1>;
/**
* 给对象注册一次性事件
* @param instance 需注册事件的对象
* @param eventName 事件名称
* @param handler 事件功能函数
* @param context 事件上下文
*/
function addListenerOnce<I extends EventEmitter, E extends Event, C = I>(
// tslint:disable-next-line: no-unnecessary-generics
instance: I,
@@ -51,9 +86,17 @@ declare namespace AMap {
// tslint:disable-next-line: no-unnecessary-generics
context?: C
): EventListener<1>;
/**
* 删除事件
* @param listener 侦听器
*/
function removeListener(listener: EventListener<0 | 1>): void;
/**
* 触发非DOM事件
* @param instance 触发对象
* @param eventName 事件名称
* @param data 事件数据
*/
function trigger(instance: EventEmitter, eventName: string, data?: any): void;
}
}
+94 -24
View File
@@ -1,106 +1,176 @@
declare namespace AMap {
namespace GeometryUtil {
/**
* 计算两个经纬度点之间的实际距离
*/
function distance(
point1: LocationValue,
point2: LocationValue | LocationValue[]
): number;
/**
* 计算一个经纬度路径围成区域的实际面积
*/
function ringArea(ring: LocationValue[]): number;
/**
* 判断一个经纬度路径是否为顺时针
*/
function isClockwise(path: LocationValue[]): boolean;
/**
* 计算一个经纬度路径的实际长度
*/
function distanceOfLine(line: LocationValue[]): number;
/**
* 计算两个经纬度面的交叉区域
*/
function ringRingClip(
ring1: LocationValue[],
ring2: LocationValue[]
): Array<[number, number]>;
/**
* 判断两个经纬度面是否交叉
*/
function doesRingRingIntersect(
ring1: LocationValue[],
ring2: LocationValue[]
): boolean;
/**
* 判断经纬度路径和经纬度面是否交叉
*/
function doesLineRingIntersect(
line: LocationValue[],
ring: LocationValue[]
): boolean;
/**
* 判断两个经纬度路径是否相交
*/
function doesLineLineIntersect(
line1: LocationValue[],
line2: LocationValue[]
): boolean;
/**
* 判断线段和多个环是否相交
*/
function doesSegmentPolygonIntersect(
point1: LocationValue,
point2: LocationValue,
polygon: LocationValue[][]
): boolean;
/**
* 判断线段和一个环是否相交
*/
function doesSegmentRingIntersect(
point1: LocationValue,
point2: LocationValue,
ring: LocationValue[]
): boolean;
/**
* 判断线段和一个路径是否相交
*/
function doesSegmentLineIntersect(
point1: LocationValue,
point2: LocationValue,
line: LocationValue[]
): boolean;
/**
* 判断两个线段是否相交
*/
function doesSegmentsIntersect(
point1: LocationValue,
point2: LocationValue,
point3: LocationValue,
point4: LocationValue
): boolean;
/**
* 判断点是否在环内
*/
function isPointInRing(point: LocationValue, ring: LocationValue[]): boolean;
/**
* 判断环是否在另一个环内
*/
function isRingInRing(ring1: LocationValue[], ring2: LocationValue[]): boolean;
/**
* 判断点是否在多个环组成区域内
*/
function isPointInPolygon(point: LocationValue, polygon: LocationValue[][]): boolean;
/**
* 判断点是否在多个环组成区域内
*/
function makesureClockwise(path: Array<[number, number]>): Array<[number, number]>;
/**
* 将一个路径变为逆时针
*/
function makesureAntiClockwise(path: Array<[number, number]>): Array<[number, number]>;
/**
* 计算P2P3上距离P1最近的点
* @param point1 P1
* @param point2 P2
* @param point3 P3
*/
function closestOnSegment(
point1: LocationValue,
point2: LocationValue,
point3: LocationValue
): [number, number];
/**
* 计算line上距离P最近的点
*/
function closestOnLine(point: LocationValue, line: LocationValue[]): [number, number];
/**
* 计算P2P3到P1的距离
* @param point1 P1
* @param point2 P2
* @param point3 P3
*/
function distanceToSegment(
point1: LocationValue,
point2: LocationValue,
point3: LocationValue
): number;
/**
* 计算P到line的距离
*/
function distanceToLine(point: LocationValue, line: LocationValue[]): number;
/**
* 判断P1是否在P2P3上
* @param point1 P1
* @param point2 P2
* @param point3 P3
* @param tolerance 误差范围
*/
function isPointOnSegment(
point1: LocationValue,
point2: LocationValue,
point3: LocationValue,
tolerance?: number
): boolean;
/**
* 判断P是否在line上
* @param point 点P
* @param line 线
* @param tolerance 误差范围
*/
function isPointOnLine(
point: LocationValue,
line: LocationValue[],
tolerance?: number
): boolean;
/**
* 判断P是否在ring的边上
* @param point 点P
* @param ring 环
* @param tolerance 误差范围
*/
function isPointOnRing(
point: LocationValue,
ring: LocationValue[],
tolerance?: number
): boolean;
/**
* 判断P是否在多个ring的边上
* @param point 点P
* @param polygon 多边形
* @param tolerance 误差范围
*/
function isPointOnPolygon(
point: LocationValue,
polygon: LocationValue[][],
+24
View File
@@ -1,11 +1,27 @@
declare namespace AMap {
namespace Buildings {
interface Options extends Layer.Options {
/**
* 可见级别范围
*/
zooms?: [number, number];
/**
* 不透明度
*/
opacity?: number;
/**
* 高度比例系数,可控制3D视图下的楼块高度
*/
heightFactor?: number;
/**
* 是否可见
*/
visible?: boolean;
/**
* 层级
*/
zIndex?: number;
// inner
merge?: boolean;
sort?: boolean;
@@ -24,7 +40,15 @@ declare namespace AMap {
}
class Buildings extends Layer {
/**
* 楼块图层,单独展示矢量化的楼块图层
* @param opts 图层选项
*/
constructor(opts?: Buildings.Options);
/**
* 按区域设置楼块的颜色
* @param style 颜色设置
*/
setStyle(style: Buildings.Style): void;
}
}
+18
View File
@@ -2,6 +2,14 @@ declare namespace AMap {
namespace TileLayer {
namespace Flexible {
interface Options extends TileLayer.Options {
/**
* 创建切片回调
* @param x 横坐标
* @param y 纵坐标
* @param z 层级
* @param success 成功回调
* @param fail 失败回调
*/
createTile?(
x: number,
y: number,
@@ -9,11 +17,21 @@ declare namespace AMap {
success: (tile: HTMLImageElement | HTMLCanvasElement) => void,
fail: () => void
): void;
/**
* 内存中缓存的切片的数量上限
*/
cacheSize?: number;
/**
* 是否显示
*/
visible?: boolean;
}
}
class Flexible extends TileLayer {
/**
* 灵活切片图层
* @param options 图层选项
*/
constructor(options?: Flexible.Options);
}
}
+36
View File
@@ -1,20 +1,56 @@
declare namespace AMap {
namespace Layer {
interface Options {
/**
* 所属的地图对象
*/
map?: Map;
}
}
abstract class Layer extends EventEmitter {
/**
* 图层获取DOM节点
*/
getContainer(): HTMLDivElement | undefined;
/**
* 获取图层缩放范围
*/
getZooms(): [number, number];
/**
* 设置透明度
* @param alpha 透明度
*/
setOpacity(alpha: number): void;
/**
* 设置透明度
*/
getOpacity(): number;
/**
* 显示图层
*/
show(): void;
/**
* 隐藏图层
*/
hide(): void;
/**
* 设置图层所属地图
* @param map map对象
*/
setMap(map?: Map | null): void;
/**
* 获取图层所属地图
*/
getMap(): Map | null | undefined;
/**
* 设置图层的层级
* @param index 层级
*/
setzIndex(index: number): void;
/**
* 获取图层的层级
*/
getzIndex(): number;
}
}
+36 -1
View File
@@ -1,14 +1,49 @@
declare namespace AMap {
class LayerGroup<L = any> extends Layer {
/**
* 图层集合
* @param layers 集合中的图层
*/
constructor(layers: L | L[]);
/**
* 添加单个图层到集合中,不支持添加重复的图层
* @param layer 图层
*/
addLayer(layer: L | L[]): this;
/**
* 添加图层数组到集合中,不支持添加重复的图层
* @param layers 图层数组
*/
addLayers(layers: L | L[]): this;
/**
* 返回当前集合中所有的图层
*/
getLayers(): L[];
getLayer(finder: (this: null, item: L, index: number, list: L[]) => boolean): L | null;
/**
* 判断传入的图层实例是否在集合中
* @param layer 目标图层
*/
hasLayer(layer: L | ((this: null, item: L, index: number, list: L[]) => boolean)): boolean;
/**
* 从集合中删除传入的图层实例
* @param layer 图层
*/
removeLayer(layer: L | L[]): this;
removeLayers(layer: L | L[]): this;
/**
* 从集合中删除传入的图层实例数组
* @param layers 图层数组
*/
removeLayers(layers: L | L[]): this;
/**
* 清空集合
*/
clearLayers(): this;
/**
* 对集合中的图层做迭代操作
* @param iterator 迭代回调
* @param context 执行上下文
*/
eachLayer<C = L>(iterator: (this: C, layer: L, index: number, list: L[]) => void, context?: C): void;
// overwrite
+52
View File
@@ -12,21 +12,51 @@ declare namespace AMap {
}
interface Style {
/**
* 图标显示位置偏移量,以图标的左上角为基准点(0,0)点
*/
anchor: Pixel;
/**
* 图标的地址
*/
url: string;
/**
* 图标的尺寸
*/
size: Size;
/**
* 旋转角度
*/
rotation?: number;
}
type UIEvent<N extends string, I> = Event<N, {
/**
* 事件触发目标
*/
target: I;
/**
* 目标点的数据
*/
data: I extends MassMarks<infer D> ? D : Data;
}>;
interface Options extends Layer.Options {
/**
* 显示层级
*/
zIndex?: number;
/**
* 指针样式
*/
cursor?: string;
/**
* 是否在拖拽缩放过程中实时重绘
*/
alwayRender?: boolean;
/**
* 设置点的样式
*/
style: Style | Style[];
// rejectMapMask
}
@@ -37,11 +67,33 @@ declare namespace AMap {
}
class MassMarks<D extends MassMarks.Data = MassMarks.Data> extends Layer {
/**
* 海量点类,利用该类可同时在地图上展示万级别的点
* @param data 点对象数组或url
* @param opts 选项
*/
constructor(data: D[] | string, opts: MassMarks.Options);
/**
* 设置显示样式
* @param style 样式设置
*/
setStyle(style: MassMarks.Style | MassMarks.Style[]): void;
/**
* 获取显示样式
*/
getStyle(): MassMarks.Style | MassMarks.Style[];
/**
* 设置数据集
* @param data 数据集
*/
setData(data: D[] | string): void;
/**
* 获取数据集
*/
getData(): Array<Pick<D, Exclude<keyof D, 'lnglat'>> & { lnglat: LngLat }>;
/**
* 清除海量点
*/
clear(): void;
}
}
+59
View File
@@ -1,35 +1,94 @@
declare namespace AMap {
namespace MediaLayer {
interface Options extends Layer.Options {
/**
* 显示范围
*/
bounds?: Bounds;
/**
* 是否可见
*/
visible?: boolean;
/**
* 缩放范围
*/
zooms?: [number, number];
/**
* 透明度
*/
opacity?: number;
}
}
abstract class MediaLayer<E extends HTMLElement> extends Layer {
/**
* @param options 图层选项
*/
constructor(options?: MediaLayer.Options);
/**
* 设置显示范围
* @param bounds 显示范围
*/
setBounds(bounds: Bounds): void;
/**
* 获取显示的范围
*/
getBounds(): Bounds;
/**
* 设置图层选项
* @param options 图层选项
*/
setOptions(options: Partial<MediaLayer.Options>): void;
/**
* 获取图层选项
*/
getOptions(): Partial<MediaLayer.Options>;
/**
* 获取元素
*/
getElement(): E | null;
}
/**
* 图片图层
*/
class ImageLayer extends MediaLayer<HTMLImageElement> {
/**
* 修改Image的Url
* @param url url
*/
setImageUrl(url: string): void;
/**
* 返回Image的Url
*/
getImageUrl(): string | undefined;
}
class VideoLayer extends MediaLayer<HTMLVideoElement> {
/**
* 修改Video的Url
* @param source url
*/
setVideoUrl(source: string | string[]): void;
/**
* 返回Video的Url
*/
getVideoUrl(): string | string[] | undefined;
}
class CanvasLayer extends MediaLayer<HTMLCanvasElement> {
/**
* 修改显示的Canvas
* @param canvas Canvas对象
*/
setCanvas(canvas: HTMLCanvasElement): void;
/**
* 返回Canvas对象
*/
getCanvas(): HTMLCanvasElement | undefined;
/**
* 当canvas的内容发生改变是用于刷新图层
*/
reFresh(): void;
}
}
+54
View File
@@ -5,33 +5,87 @@ declare namespace AMap {
}
interface Options extends Layer.Options {
/**
* 切片大小
*/
tileSize?: number;
/**
* 切片取图地址(自1.3版本起,该属性与getTileUrl属性合并)
*/
tileUrl?: string;
/**
* 取图错误时的代替地址
*/
errorUrl?: string;
/**
* 获取图块取图地址
*/
getTileUrl?: string | ((x: number, y: number, level: number) => string);
/**
* 图层叠加的顺序值
*/
zIndex?: number;
/**
* 图层的透明度
*/
opacity?: number;
/**
* 支持的缩放级别范围
*/
zooms?: [number, number];
/**
* 是否在高清屏下进行清晰度适配
*/
detectRetina?: boolean;
}
/**
* 卫星图层
*/
class Satellite extends TileLayer { }
/**
* 路网图层
*/
class RoadNet extends TileLayer { }
namespace Traffic {
interface Options extends TileLayer.Options {
/**
* 是否设置可以自动刷新实时路况信息
*/
autoRefresh?: boolean;
/**
* 设置刷新间隔时长
*/
interval?: number;
}
}
class Traffic extends TileLayer {
/**
* 实时交通图层
* @param options 图层选项
*/
constructor(options?: Traffic.Options);
}
}
class TileLayer extends Layer {
/**
* 切片图层
* @param options 图层选项
*/
constructor(options?: TileLayer.Options);
/**
* 获取当前图层所有切片号
*/
getTiles(): string[];
/**
* 重新加载此图层
*/
reload(): void;
/**
* 设置图层的取图地址
* @param url 取图地址
*/
setTileUrl(url: string | ((x: number, y: number, level: number) => string)): void;
}
}
+27
View File
@@ -13,16 +13,43 @@ declare namespace AMap {
ELEVATION?: string;
}
interface Options extends Flexible.Options {
/**
* wms服务的url地址
*/
url: string;
/**
* OGC标准的WMS地图服务的GetMap接口的参数
*/
params: Params;
/**
* 地图级别切换时,不同级别的图片是否进行混合
*/
blend?: boolean;
}
}
class WMS extends Flexible {
/**
* WMS图层
* @param options 图层选项
*/
constructor(options: WMS.Options);
/**
* 设置wms服务地址
* @param url 服务地址
*/
setUrl(url: string): void;
/**
* 返回wms服务地址
*/
getUrl(): string;
/**
* 设置OGC标准的WMS getMap接口的参数
* @param params 接口参数
*/
setParams(params: WMS.Params): void;
/**
* 返回OGC标准的WMS getMap接口的参数
*/
getParams(): WMS.Params;
}
}
+27
View File
@@ -8,17 +8,44 @@ declare namespace AMap {
Format?: string;
}
interface Options extends Flexible.Options {
/**
* wmts服务的url地址
*/
url: string;
/**
* OGC标准的WMTS地图服务的GetTile接口的参数
*/
params: Params;
/**
* 地图级别切换时,不同级别的图片是否进行混合
*/
blend?: boolean;
}
}
class WMTS extends Flexible {
/**
* WMTS图层
* @param options 图层选项
*/
constructor(options: WMTS.Options);
/**
* 设置wmts服务地址
* @param url 服务地址
*/
setUrl(url: string): void;
/**
* 返回wmts服务地址
*/
getUrl(): string;
/**
* 设置OGC标准的WMTS getTile接口的参数
* @param params 接口参数
*/
setParams(params: WMTS.Params): void;
/**
* 返回OGC标准的WMTS getTile接口的参数
*/
getParams(): WMTS.Params;
}
}
+28
View File
@@ -1,11 +1,39 @@
declare namespace AMap {
class LngLat {
/**
* 构造一个地理坐标对象
* @param lng 经度
* @param lat 纬度
* @param noAutofix 是否自动修正
*/
constructor(lng: number, lat: number, noAutofix?: boolean);
/**
* 移动当前经纬度坐标得到新的坐标
* @param east 移动经度,向右为正值
* @param north 移动维度,向上为正值
*/
offset(east: number, north: number): LngLat;
/**
* 当前经纬度和传入经纬度或者经纬度数组连线之间的地面距离,单位为米
* @param lnglat 对比目标
*/
distance(lnglat: LngLat | LngLat[]): number;
/**
* 获取经度值
*/
getLng(): number;
/**
* 获取纬度值
*/
getLat(): number;
/**
* 判断当前坐标对象与传入坐标对象是否相等
* @param lnglat 判断目标
*/
equals(lnglat: LngLat): boolean;
/**
* 以字符串的形式返回
*/
toString(): string;
// internal
+381
View File
@@ -3,39 +3,145 @@ declare namespace AMap {
type Feature = 'bg' | 'point' | 'road' | 'building';
type ViewMode = '2D' | '3D';
interface Options {
/**
* 地图视口,用于控制影响地图静态显示的属性
*/
view?: View2D;
/**
* 地图图层数组,数组可以是图层 中的一个或多个,默认为普通二维地图
*/
layers?: Layer[];
/**
* 地图显示的缩放级别
*/
zoom?: number;
/**
* 地图中心点坐标值
*/
center?: LocationValue;
/**
* 地图标注显示顺序
*/
labelzIndex?: number;
/**
* 地图显示的缩放级别范围
*/
zooms?: [number, number];
/**
* 地图语言类型
*/
lang?: Lang;
/**
* 地图默认鼠标样式
*/
defaultCursor?: string;
/**
* 地图显示的参考坐标系
*/
crs?: 'EPSG3857' | 'EPSG3395' | 'EPSG4326';
/**
* 地图平移过程中是否使用动画
*/
animateEnable?: boolean;
/**
* 是否开启地图热点和标注的hover效果
*/
isHotspot?: boolean;
/**
* 当前地图中默认显示的图层
*/
defaultLayer?: TileLayer;
/**
* 地图是否可旋转
*/
rotateEnable?: boolean;
/**
* 是否监控地图容器尺寸变化
*/
resizeEnable?: boolean;
/**
* 是否在有矢量底图的时候自动展示室内地图
*/
showIndoorMap?: boolean;
/**
* 在展示矢量图的时候自动展示室内地图图层
*/
// indoorMap?: IndorMap
/**
* 是否支持可以扩展最大缩放级别
*/
expandZoomRange?: boolean;
/**
* 地图是否可通过鼠标拖拽平移
*/
dragEnable?: boolean;
/**
* 地图是否可缩放
*/
zoomEnable?: boolean;
/**
* 地图是否可通过双击鼠标放大地图
*/
doubleClickZoom?: boolean;
/**
* 地图是否可通过键盘控制
*/
keyboardEnable?: boolean;
/**
* 地图是否使用缓动效果
*/
jogEnable?: boolean;
/**
* 地图是否可通过鼠标滚轮缩放浏览
*/
scrollWheel?: boolean;
/**
* 地图在移动终端上是否可通过多点触控缩放浏览地图
*/
touchZoom?: boolean;
/**
* 当touchZoomCenter=1的时候,手机端双指缩放的以地图中心为中心,否则默认以双指中间点为中心
*/
touchZoomCenter?: number;
/**
* 设置地图的显示样式
*/
mapStyle?: string;
/**
* 设置地图上显示的元素种类
*/
features?: Feature[] | 'all' | Feature;
/**
* 设置地图显示3D楼块效果
*/
showBuildingBlock?: boolean;
/**
* 视图模式
*/
viewMode?: ViewMode;
/**
* 俯仰角度
*/
pitch?: number;
/**
* 是否允许设置俯仰角度
*/
pitchEnable?: boolean;
/**
* 楼块出现和消失的时候是否显示动画过程
*/
buildingAnimation?: boolean;
/**
* 调整天空颜色
*/
skyColor?: string;
/**
* 设置地图的预加载模式
*/
preloadMode?: boolean;
/**
* 为 Map 实例指定掩模的路径,各图层将只显示路径范围内图像
*/
mask?: Array<[number, number]> | Array<Array<[number, number]>> | Array<Array<Array<[number, number]>>>;
maxPitch?: number;
rotation?: number;
@@ -58,24 +164,67 @@ declare namespace AMap {
// detectRetina: number;
}
interface Status {
/**
* 是否开启动画
*/
animateEnable: boolean;
/**
* 是否双击缩放
*/
doubleClickZoom: boolean;
/**
* 是否支持拖拽
*/
dragEnable: boolean;
isHotspot: boolean;
/**
* 是否开启缓动效果
*/
jogEnable: boolean;
/**
* 是否支持键盘
*/
keyboardEnable: boolean;
/**
* 是否支持调整俯仰角
*/
pitchEnable: boolean;
resizeEnable: boolean;
/**
* 是否支持旋转
*/
rotateEnable: boolean;
/**
* 是否支持滚轮缩放
*/
scrollWheel: boolean;
/**
* 是否支持触摸缩放
*/
touchZoom: boolean;
/**
* 是否支持缩放
*/
zoomEnable: boolean;
}
type HotspotEvent<N extends string> = Event<N, {
/**
* 经纬度坐标
*/
lnglat: LngLat;
/**
* 热点名称
*/
name: string;
/**
* 热点id
*/
id: string;
// internal
/**
* 是否室内热点
*/
isIndoorPOI: boolean;
}>;
interface EventMap {
@@ -113,73 +262,305 @@ declare namespace AMap {
}
class Map extends EventEmitter {
/**
* 构造一个地图对象
* @param container 地图容器的id或者是DOM元素
* @param opts 选项
*/
constructor(container: string | HTMLElement, opts?: Map.Options);
/**
* 唤起高德地图客户端marker页
* @param obj 唤起参数
*/
poiOnAMAP(obj: { id: string; location?: LocationValue; name?: string }): void;
/**
* 唤起高德地图客户端marker详情页
* @param obj 唤起参数
*/
detailOnAMAP(obj: { id: string; location?: LocationValue; name?: string }): void;
/**
* 获取当前地图缩放级别
*/
getZoom(): number;
/**
* 获取地图图层数组
*/
getLayers(): Layer[];
/**
* 获取地图中心点经纬度坐标值
*/
getCenter(): LngLat;
/**
* 返回地图对象的容器
*/
getContainer(): HTMLElement | null;
/**
* 获取地图中心点所在区域
*/
getCity(callback: (cityData: {
/**
* 市名称
*/
city: string;
/**
* 市代码
*/
citycode: string;
/**
* 区名称
*/
district: string;
/**
* 省
*/
province: string | never[]; // province is empty array when getCity fail
}) => void): void;
/**
* 获取当前地图视图范围,获取当前可视区域
*/
getBounds(): Bounds;
/**
* 获取当前地图标注的显示顺序
*/
getLabelzIndex(): number;
/**
* 获取Map的限制区域
*/
getLimitBounds(): Bounds;
/**
* 获取地图语言类型
*/
getLang(): Lang;
/**
* 获取地图容器像素大小
*/
getSize(): Size;
/**
* 获取地图顺时针旋转角度
*/
getRotation(): number;
/**
* 获取当前地图状态信息
*/
getStatus(): Map.Status;
/**
* 获取地图默认鼠标指针样式
*/
getDefaultCursor(): string;
/**
* 获取指定位置的地图分辨率
* @param point 指定经纬度
*/
getResolution(point?: LocationValue): number;
/**
* 获取当前地图比例尺
* @param dpi dpi
*/
getScale(dpi?: number): number;
/**
* 设置地图显示的缩放级别
* @param level 缩放级别
*/
setZoom(level: number): void;
/**
* 设置地图标注显示的顺序
* @param index 显示顺序
*/
setLabelzIndex(index: number): void;
/**
* 设置地图图层数组
* @param layers 图层数组
*/
setLayers(layers: Layer[]): void;
/**
* 添加覆盖物/图层
* @param overlay 覆盖物/图层
*/
add(overlay: Overlay | Overlay[]): void;
/**
* 删除覆盖物/图层
* @param overlay 覆盖物/图层
*/
remove(overlay: Overlay | Overlay[]): void;
/**
* 返回添加的覆盖物对象
* @param type 覆盖物类型
*/
getAllOverlays(type?: 'marker' | 'circle' | 'polyline' | 'polygon'): Overlay[];
/**
* 设置地图显示的中心点
* @param center 中心点经纬度
*/
setCenter(center: LocationValue): void;
/**
* 地图缩放至指定级别并以指定点为地图显示中心点
* @param zoomLevel 缩放等级
* @param center 缩放中心
*/
setZoomAndCenter(zoomLevel: number, center: LocationValue): void;
/**
* 按照行政区名称或adcode来设置地图显示的中心点。
* @param city 城市名称或城市编码
* @param callback 回调
*/
setCity(city: string, callback: (this: this, coord: [string, string], zoom: number) => void): void;
/**
* 指定当前地图显示范围
* @param bound 显示范围
*/
setBounds(bound: Bounds): Bounds;
/**
* 设置Map的限制区域
* @param bound 限制区域
*/
setLimitBounds(bound: Bounds): void;
/**
* 清除限制区域
*/
clearLimitBounds(): void;
/**
* 设置地图语言类型
* @param lang 语言类型
*/
setLang(lang: Lang): void;
/**
* 设置地图顺时针旋转角度,旋转原点为地图容器中心点
* @param rotation 旋转角度
*/
setRotation(rotation: number): void;
/**
* 设置当前地图显示状态
* @param status 状态
*/
setStatus(status: Partial<Map.Status>): void;
/**
* 设置鼠标指针默认样式
* @param cursor 指针样式
*/
setDefaultCursor(cursor: string): void;
/**
* 地图放大一级显示
*/
zoomIn(): void;
/**
* 地图缩小一级显示
*/
zoomOut(): void;
/**
* 地图中心点平移至指定点位置
* @param position 目标位置经纬度
*/
panTo(position: LocationValue): void;
/**
* 以像素为单位,沿x方向和y方向移动地图
* @param x 横向移动像素,向右为正
* @param y 纵向移动像素,向下为正
*/
panBy(x: number, y: number): void;
/**
* 根据地图上添加的覆盖物分布情况,自动缩放地图到合适的视野级别
* @param overlayList 覆盖物数组
* @param immediately 是否需要动画过程
* @param avoid 上下左右的像素避让宽度
* @param maxZoom 最大缩放级别
*/
setFitView(
overlayList?: Overlay | Overlay[],
immediately?: boolean,
avoid?: [number, number, number, number],
maxZoom?: number
): Bounds | false | undefined;
/**
* 删除地图上所有的覆盖物
*/
clearMap(): void;
/**
* 注销地图对象,并清空地图容器
*/
destroy(): void;
/**
* 加载插件,
* tips: 插件的类型定义不在本类型定义中给出,需要另行安装例如
* 3d地图:@types/amap-js-api-map3d
* 地区搜索:@types/amap-js-api-place-search
* @param name 插件名称
* @param callback 插件加载完成后的回调函数
*/
plugin(name: string | string[], callback: () => void): this;
/**
* 添加控件
* @param control 控件
*/
addControl(control: {}): void; // TODO
/**
* 移除控件
* @param control 控件
*/
removeControl(control: {}): void; // TODO
/**
* 清除地图上的信息窗体。
*/
clearInfoWindow(): void;
/**
* 平面地图像素坐标转换为地图经纬度坐标
* @param pixel 像素坐标
* @param level 缩放等级
*/
pixelToLngLat(pixel: Pixel, level?: number): LngLat;
/**
* 地图经纬度坐标转换为平面地图像素坐标
* @param lnglat 经纬度坐标
* @param level 缩放等级
*/
lnglatToPixel(lnglat: LocationValue, level?: number): Pixel;
/**
* 地图容器像素坐标转为地图经纬度坐标
* @param pixel 地图像素坐标
*/
containerToLngLat(pixel: Pixel): LngLat;
/**
* 地图经纬度坐标转为地图容器像素坐标
* @param lnglat 经纬度坐标
*/
lngLatToContainer(lnglat: LocationValue): Pixel;
/**
* 地图经纬度坐标转为地图容器像素坐标
* @param lnglat 经纬度坐标
*/
lnglatTocontainer(lnglat: LocationValue): Pixel;
/**
* 设置地图的显示样式
* @param style 地图样式
*/
setMapStyle(style: string): void;
/**
* 获取地图显示样式
*/
getMapStyle(): string;
/**
* 设置地图上显示的元素种类
* @param feature 元素
*/
setFeatures(feature: Map.Feature | Map.Feature[] | 'all'): void;
/**
* 获取地图显示元素种类
*/
getFeatures(): Map.Feature | Map.Feature[] | 'all';
/**
* 修改底图图层
* @param layer 图层
*/
setDefaultLayer(layer: TileLayer): void;
/**
* 设置俯仰角
* @param pitch 俯仰角
*/
setPitch(pitch: number): void;
/**
* 获取俯仰角
*/
getPitch(): number;
getViewMode_(): Map.ViewMode;
lngLatToGeodeticCoord(lnglat: LocationValue): Pixel;
geodeticCoordToLngLat(pixel: Pixel): LngLat;
+14 -1
View File
@@ -2,18 +2,31 @@ declare namespace AMap {
namespace BezierCurve {
interface EventMap<I = BezierCurve> extends Polyline.EventMap<I> { }
type Options<ExtraData = any> = Merge<Polyline.Options<ExtraData>, {
// internal
/**
* 贝瑟尔曲线的路径
*/
path: Array<Array<number | string | Array<string | number>>>;
// internal
tolerance?: number;
interpolateNumLimit?: [number | number];
}>;
interface GetOptionsResult<ExtraData = any> extends Polyline.GetOptionsResult<ExtraData> {
/**
* 贝瑟尔曲线的路径
*/
path: Array<LngLat & { controlPoints: LngLat[] }>;
}
}
class BezierCurve<ExtraData = any> extends Polyline<ExtraData> {
/**
* 贝瑟尔曲线
* @param options 覆盖物选项
*/
constructor(options: BezierCurve.Options<ExtraData>);
/**
* 获取覆盖物选项
*/
getOptions(): Partial<BezierCurve.GetOptionsResult<ExtraData>>;
// internal
getInterpolateLngLats(): LngLat[];
+35
View File
@@ -34,15 +34,50 @@ declare namespace AMap {
}
class Circle<ExtraData = any> extends ShapeOverlay<ExtraData> {
/**
* 圆形覆盖物
* @param options 覆盖物选项
*/
constructor(options?: Circle.Options<ExtraData>);
/**
* 设置圆中心点
* @param center 中心点经纬度
* @param preventEvent 阻止触发事件
*/
setCenter(center: LocationValue, preventEvent?: boolean): void;
/**
* 获取圆中心点
*/
getCenter(): LngLat | undefined;
/**
* 获取圆外切矩形范围
*/
getBounds(): Bounds | null;
/**
* 设置圆形的半径
* @param radius 半径
* @param preventEvent 阻止触发事件
*/
setRadius(radius: number, preventEvent?: boolean): void;
/**
* 获取圆形的半径
*/
getRadius(): number;
/**
* 修改选项
* @param options 选项
*/
setOptions(options?: Circle.Options<ExtraData>): void;
/**
* 获取选项
*/
getOptions(): Partial<Circle.GetOptionsResult<ExtraData>>;
/**
* 判断指定点坐标是否在圆内
* @param point 坐标
*/
contains(point: LocationValue): boolean;
// internal
getPath(count?: number): LngLat[];
}
+3
View File
@@ -1,4 +1,7 @@
declare namespace AMap {
// tslint:disable-next-line;
/**
* 圆点标记
*/
class CircleMarker<ExtraData = any> extends Circle<ExtraData> {}
}
+28 -1
View File
@@ -1,7 +1,11 @@
declare namespace AMap {
namespace ContextMenu {
interface Options {
/**
* 右键菜单内容
*/
content?: string | HTMLElement;
// internal
visible?: boolean;
}
@@ -14,10 +18,33 @@ declare namespace AMap {
}
class ContextMenu<ExtraData = any> extends Overlay<ExtraData> {
/**
* 地图右键菜单
* @param options 选项
*/
constructor(options?: ContextMenu.Options);
/**
* 右键菜单中添加菜单项
* @param text 菜单显示内容
* @param fn 该菜单下需进行的操作
* @param num 当前菜单项在右键菜单中的排序位置,以0开始
*/
addItem(text: string, fn: (this: HTMLLIElement) => void, num?: number): void;
removeItem(test: string, fn: (this: HTMLLIElement) => void): void;
/**
* 删除一个菜单项
* @param text 菜单显示内容
* @param fn 该菜单下需进行的操作
*/
removeItem(text: string, fn: (this: HTMLLIElement) => void): void;
/**
* 在地图的指定位置打开右键菜单。
* @param map 目标地图
* @param position 打开位置经纬度
*/
open(map: Map, position: LocationValue): void;
/**
* 关闭右键菜单
*/
close(): void;
}
}
+22
View File
@@ -6,7 +6,13 @@ declare namespace AMap {
}
interface Options<ExtraData = any> extends Polygon.Options<ExtraData> {
/**
* 椭圆的中心
*/
center?: LocationValue;
/**
* 椭圆半径
*/
radius?: [number, number];
}
type GetOptionsResult<ExtraData = any> = Merge<Circle.GetOptionsResult<ExtraData>, {
@@ -15,9 +21,25 @@ declare namespace AMap {
}
class Ellipse<ExtraData = any> extends Polygon<ExtraData> {
/**
* 椭圆
* @param options 选项
*/
constructor(options?: Ellipse.Options<ExtraData>);
/**
* 获取椭圆的中心点
*/
getCenter(): LngLat | undefined;
/**
* 设置椭圆的中心点
* @param center 中心点
* @param preventEvent 阻止触发事件
*/
setCenter(center: LocationValue, preventEvent?: boolean): void;
/**
* 修改椭圆属性
* @param options 属性
*/
setOptions(options: Ellipse.Options<ExtraData>): void;
// internal
+29
View File
@@ -24,9 +24,27 @@ declare namespace AMap {
features: GeoJSONObject[];
};
interface Options {
/**
* 要加载的标准GeoJSON对象
*/
geoJSON?: GeoJSONObject | GeoJSONObject[];
/**
* 指定点要素的绘制方式
* @param obj GeoJSON对象
* @param lnglat 点的位置
*/
getMarker?(obj: GeoJSONObject, lnglat: LngLat): Marker;
/**
* 指定线要素的绘制方式
* @param obj GeoJSON对象
* @param lnglats 线的路径
*/
getPolyline?(obj: GeoJSONObject, lnglats: LngLat[]): Polyline;
/**
* 指定面要素的绘制方式
* @param obj GeoJSON对象
* @param lnglats 面的路径
*/
getPolygon?(obj: GeoJSONObject, lnglats: LngLat[]): Polygon;
coordsToLatLng?(lnglat: LngLat): LngLat;
@@ -36,8 +54,19 @@ declare namespace AMap {
}
class GeoJSON<ExtraData = any> extends OverlayGroup<Overlay, ExtraData> {
/**
* GeoJSON
* @param options 选项
*/
constructor(options?: GeoJSON.Options);
/**
* 加载新的GeoJSON对象,转化为覆盖物,旧的覆盖物将移除
* @param obj GeoJSON对象
*/
importData(obj: GeoJSON.GeoJSONObject | GeoJSON.GeoJSONObject[]): void;
/**
* 将当前对象包含的覆盖物转换为GeoJSON对象
*/
toGeoJSON(): GeoJSON.GeoJSONObject[];
}
}
+23
View File
@@ -1,16 +1,39 @@
declare namespace AMap {
namespace Icon {
interface Options {
/**
* 图标尺寸
*/
size?: SizeValue;
/**
* 图标取图偏移量
*/
imageOffset?: Pixel;
/**
* 图标的取图地址
*/
image?: string;
/**
* 图标所用图片大小
*/
imageSize?: SizeValue;
}
}
class Icon extends EventEmitter {
/**
* 点标记的图标
* @param options 选项
*/
constructor(options?: Icon.Options);
/**
* 设置图标图片大小
* @param size 大小
*/
setImageSize(size: SizeValue): void;
/**
* 获取图标图片大小
*/
getImageSize(): Size;
}
}
+76
View File
@@ -6,14 +6,44 @@ declare namespace AMap {
close: Event<'close', { target: I }>;
}
type Anchor = 'top-left' | 'top-center' | 'top-right' | 'middle-left' | 'center' | 'middle-right' | 'bottom-left' | 'bottom-center' | 'bottom-right';
interface Options<ExtraData = any> extends Overlay.Options<ExtraData> {
/**
* 是否自定义窗体
*/
isCustom?: boolean;
/**
* 是否自动调整窗体到视野内
*/
autoMove?: boolean;
/**
* 控制是否在鼠标点击地图后关闭信息窗体
*/
closeWhenClickMap?: boolean;
/**
* 显示内容
*/
content?: string | HTMLElement;
/**
* 信息窗体尺寸
*/
size?: SizeValue;
/**
* 信息窗体锚点
*/
anchor?: Anchor;
/**
* 信息窗体显示位置偏移量
*/
offset?: Pixel;
/**
* 信息窗体显示基点位置
*/
position?: LocationValue;
/**
* 是否显示信息窗体阴影
*/
showShadow?: boolean;
// internal
height?: number;
@@ -21,16 +51,62 @@ declare namespace AMap {
}
class InfoWindow<ExtraData = any> extends Overlay<ExtraData> {
/**
* 信息展示窗体
* @param options 选项
*/
constructor(options?: InfoWindow.Options);
/**
* 在地图的指定位置打开信息窗体
* @param map 地图
* @param position 打开的位置
*/
open(map: Map, position?: LocationValue): void;
/**
* 关闭信息窗体
*/
close(): void;
/**
* 获取信息窗体是否打开
*/
getIsOpen(): boolean;
/**
* 设置信息窗体内容
* @param content 窗体内容
*/
setContent(content: string | HTMLElement): void;
/**
* 获取信息窗体内容
*/
getContent(): string | HTMLElement | undefined;
/**
* 设置信息窗体显示基点位置
* @param lnglat 位置经纬度
*/
setPosition(lnglat: LocationValue): void;
/**
* 获取信息窗体显示基点位置
*/
getPosition(): LngLat | undefined;
/**
* 获取锚点
*/
getAnchor(): InfoWindow.Anchor | undefined;
/**
* 设置锚点
* @param anchor 锚点
*/
setAnchor(anchor?: InfoWindow.Anchor): void;
/**
* 设置信息窗体大小
* @param size 大小
*/
setSize(size: SizeValue): void;
/**
* 获取信息窗体大小
*/
getSize(): Size | undefined;
// internal
setOffset(offset: Pixel): void;
}
+206 -2
View File
@@ -25,79 +25,283 @@ declare namespace AMap {
offset?: Pixel;
}
type Anchor = 'top-left' | 'top-center' | 'top-right' | 'middle-left' | 'center' | 'middle-right' | 'bottom-left' | 'bottom-center' | 'bottom-right';
interface Options<ExtraData = any> extends Overlay.Options<ExtraData> {
/**
* 点标记在地图上显示的位置
*/
position?: LocationValue;
/**
* 标记锚点
*/
anchor?: Anchor;
/**
* 点标记显示位置偏移量
*/
offset?: Pixel;
/**
* 需在点标记中显示的图标
*/
icon?: string | Icon;
/**
* 点标记显示内容
*/
content?: string | HTMLElement;
/**
* 鼠标点击时marker是否置顶
*/
topWhenClick?: boolean;
/**
* 是否将覆盖物的鼠标或touch等事件冒泡到地图上
*/
bubble?: boolean;
/**
* 点标记是否可拖拽移动
*/
draggable?: boolean;
/**
* 拖拽点标记时是否开启点标记离开地图的效果
*/
raiseOnDrag?: boolean;
/**
* 鼠标悬停时的鼠标样式
*/
cursor?: string;
/**
* 点标记是否可见
*/
visible?: boolean;
/**
* 点标记的叠加顺序
*/
zIndex?: number;
/**
* 点标记的旋转角度
*/
angle?: number;
/**
* 是否自动旋转
*/
autoRotation?: boolean;
/**
* 点标记的动画效果
*/
animation?: AnimationName;
/**
* 点标记阴影
*/
shadow?: Icon | string;
/**
* 鼠标滑过点标记时的文字提示
*/
title?: string;
/**
* 可点击区域
*/
shape?: MarkerShape;
/**
* 文本标注
*/
label?: Label;
zooms?: [number, number];
// internal
zooms?: [number, number];
topWhenMouseOver?: boolean;
height?: number;
}
}
class Marker<ExtraData = any> extends Overlay<ExtraData> {
/**
* 点标记
* @param options 选项
*/
constructor(options?: Marker.Options<ExtraData>);
/**
* 唤起高德地图客户端标注页
* @param obj 唤起参数
*/
markOnAMAP(obj?: { name?: string, position?: LocationValue }): void;
/**
* 获取锚点
*/
getAnchor(): Marker.Anchor | undefined;
/**
* 设置锚点
*/
setAnchor(anchor?: Marker.Anchor): void;
/**
* 获取偏移量
*/
getOffset(): Pixel;
/**
* 设置偏移量
* @param offset 偏移量
*/
setOffset(offset: Pixel): void;
/**
* 设置点标记的动画效果
* @param animate 动画效果类型
*/
setAnimation(animate: AnimationName, prevent?: boolean): void;
/**
* 获取点标记的动画效果类型
*/
getAnimation(): AnimationName;
/**
* 设置点标记是支持鼠标单击事件
* @param cilckable 是否支持点击
*/
setClickable(cilckable: boolean): void;
/**
* 获取点标记是否支持鼠标单击事件
*/
getClickable(): boolean;
/**
* 获取点标记的位置
*/
getPosition(): LngLat | undefined;
/**
* 设置点标记位置
* @param position 位置经纬度
*/
setPosition(position: LocationValue): void;
/**
* 设置点标记的旋转角度
* @param angle 旋转角度
*/
setAngle(angle: number): void;
/**
* 设置点标记文本标签内容
* @param label 标签内容
*/
setLabel(label?: Marker.Label): void;
/**
* 获取点标记文本标签内容
*/
getLabel(): Marker.Label | undefined;
/**
* 获取点标记的旋转角度
*/
getAngle(): number;
/**
* 设置点标记的叠加顺序
* @param index 层级
*/
setzIndex(index: number): void;
/**
* 获取点标记的叠加顺序
*/
getzIndex(): number;
/**
* 设置点标记的显示图标
* @param content 图标
*/
setIcon(content: string | Icon): void;
/**
* 获取Icon内容
*/
getIcon(): string | Icon | undefined;
/**
* 设置点标记对象是否可拖拽移动
* @param draggable 是否可拖拽移动
*/
setDraggable(draggable: boolean): void;
/**
* 获取点标记对象是否可拖拽移动
*/
getDraggable(): boolean;
/**
* 设置鼠标悬停时的光标
* @param cursor 光标
*/
setCursor(cursor: string): void;
/**
* 设置点标记显示内容,可以是HTML要素字符串或者HTML DOM对象
* @param content 显示内容
*/
setContent(content: string | HTMLElement): void;
/**
* 获取点标记内容
*/
getContent(): string | HTMLElement;
/**
* 以指定的速度,点标记沿指定的路径移动
* @param path 移动轨迹
* @param speed 速度
* @param timingFunction 缓动函数
* @param circleable 是否循环
*/
moveAlong(
path: LngLat[],
speed: number,
timingFunction?: (t: number) => number,
circleable?: boolean
): void;
/**
* 以给定速度移动点标记到指定位置
* @param lnglat 目标位置
* @param speed 速度
* @param timingFunction 缓动函数
*/
moveTo(
path: LocationValue,
lnglat: LocationValue,
speed: number,
timingFunction?: (t: number) => number
): void;
/**
* 点标记停止动画
*/
stopMove(): void;
/**
* 暂定点标记的动画效果
*/
pauseMove(): boolean;
/**
* 重新开始点标记的动画效果
*/
resumeMove(): boolean;
/**
* 指定目标显示地图
* @param map 地图
*/
setMap(map: null | Map): void;
/**
* 鼠标滑过点标时的文字提示
* @param title 提示文字
*/
setTitle(title: string): void;
/**
* 获取点标记的文字提示
*/
getTitle(): string | undefined;
/**
* 设置是否展示在最顶层
* @param isTop 是否展示在最顶层
*/
setTop(isTop: boolean): void;
/**
* 获取是否展示在最顶层
*/
getTop(): boolean;
/**
* 设置阴影效果
* @param icon 阴影效果
*/
setShadow(icon?: Icon | string): void;
/**
* 获取阴影图标
*/
getShadow(): Icon | undefined | string;
/**
* 设置可点击区域
* @param shape 可点击区域
*/
setShape(shape?: MarkerShape): void;
/**
* 获取可点击区域
*/
getShape(): MarkerShape | undefined;
}
}
+4
View File
@@ -16,6 +16,10 @@ declare namespace AMap {
}
class MarkerShape extends EventEmitter {
/**
* Marker点击范围
* @param options 选项
*/
constructor(options: MarkerShape.Options);
}
}
+38
View File
@@ -13,21 +13,59 @@ declare namespace AMap {
mouseup: MapsEvent<'mouseup', I>;
}
interface Options<ExtraData = any> {
/**
* 所属地图
*/
map?: Map;
/**
* 鼠标悬停时的鼠标样式
*/
cursor?: string;
/**
* 自定义数据
*/
extData?: ExtraData;
/**
* 事件是否穿透到地图
*/
bubble?: boolean;
/**
* 是否支持点击
*/
clickable?: boolean;
/**
* 是否支持拖拽
*/
draggable?: boolean;
}
}
abstract class Overlay<ExtraData = any> extends EventEmitter {
constructor(options?: Overlay.Options);
/**
* 显示覆盖物
*/
show(): void;
/**
* 隐藏覆盖物
*/
hide(): void;
/**
* 获取所属地图
*/
getMap(): Map | null | undefined;
/**
* 设置所属地图
* @param map 地图
*/
setMap(map: Map | null): void;
/**
* 设置自定义数据
* @param extData 自定义数据
*/
setExtData(extData: ExtraData): void;
/**
* 获取自定义数据
*/
getExtData(): ExtraData | {};
// internal
+53 -1
View File
@@ -11,20 +11,72 @@ type ReferOverlayOptions<O> =
declare namespace AMap {
class OverlayGroup<O extends Overlay = Overlay, ExtraData = any> extends Overlay<ExtraData> {
/**
* 覆盖物集合
* @param overlays 覆盖物
*/
constructor(overlays?: O | O[]);
/**
* 添加单个覆盖物到集合中,不支持添加重复的覆盖物
* @param overlay 覆盖物
*/
addOverlay(overlay: O | O[]): this;
/**
* 添加覆盖物数组到集合中,不支持添加重复的覆盖物
* @param overlay 覆盖物数组
*/
addOverlays(overlay: O | O[]): this;
/**
* 返回当前集合中所有的覆盖物
*/
getOverlays(): O[];
/**
* 判断传入的覆盖物实例是否在集合中
* @param overlay 覆盖物
*/
hasOverlay(overlay: O | ((this: null, item: O, index: number, list: O[]) => boolean)): boolean;
/**
* 从集合中删除传入的覆盖物实例
* @param overlay 覆盖物
*/
removeOverlay(overlay: O | O[]): this;
/**
* 从集合中删除传入的覆盖物实例数组
* @param overlay 覆盖物数组
*/
removeOverlays(overlay: O | O[]): this;
/**
* 清空集合
*/
clearOverlays(): this;
/**
* 对集合中的覆盖物做迭代操作
* @param iterator 迭代回调
* @param context 执行上下文
*/
eachOverlay<C = O>(iterator: (this: C, overlay: O, index: number, overlays: O[]) => void, context?: C): this;
/**
* 指定集合中里覆盖物的显示地图
* @param map 地图
*/
setMap(map: null | Map): this;
/**
* 修改覆盖物属性
* @param options 属性
*/
setOptions(options: ReferOverlayOptions<O>): this;
/**
* 在地图上显示集合中覆盖物
*/
show(): this;
/**
* 在地图上隐藏集合中覆盖物
*/
hide(): this;
/**
* 查找集合中的覆盖物
* @param finder 查找回调
*/
getOverlay(finder: ((this: null, item: O, index: number, list: O[]) => boolean) | O): O | null;
}
}
+30
View File
@@ -2,19 +2,49 @@ declare namespace AMap {
namespace PathOverlay {
interface EventMap<I = PathOverlay> extends ShapeOverlay.EventMap<I> { }
interface Options<ExtraData = any> extends Overlay.Options<ExtraData> {
/**
* 是否可见
*/
visible?: boolean;
/**
* 覆盖物层级
*/
zIndex?: number;
/**
* 描边线条颜色
*/
strokeColor?: string;
/**
* 描边线条透明度
*/
strokeOpacity?: number;
/**
* 描边宽度
*/
strokeWeight?: number;
/**
* 描边样式
*/
strokeStyle?: StrokeStyle;
/**
* 虚线间隔
*/
strokeDasharray?: number[];
/**
* 折线拐点的绘制样式
*/
lineJoin?: StrokeLineJoin;
/**
* 折线两端线帽的绘制样式
*/
lineCap?: StrokeLineCap;
}
}
abstract class PathOverlay<ExtraData = any> extends ShapeOverlay<ExtraData> {
constructor(options?: PathOverlay.Options<ExtraData>);
/**
* 获取范围
*/
getBounds(): Bounds | (this extends Rectangle ? undefined : null);
}
}
+46
View File
@@ -2,31 +2,77 @@ declare namespace AMap {
namespace Polygon {
interface EventMap<I = Polygon> extends PathOverlay.EventMap<I> { }
interface Options<ExtraData = any> extends PathOverlay.Options<ExtraData> {
/**
* 多边形轮廓线的节点坐标数组
*/
path?: LocationValue[] | LocationValue[][];
/**
* 多边形填充颜色
*/
fillColor?: string;
/**
* 边形填充透明度
*/
fillOpacity?: number;
}
interface GetOptionsResult<ExtraData = any> extends ShapeOverlay.GetOptionsResult<ExtraData> {
/**
* 多边形填充颜色
*/
fillColor: string;
/**
* 边形填充透明度
*/
fillOpacity: number;
/**
* 多边形轮廓线的节点坐标数组
*/
path: LngLat[] | LngLat[][];
/**
* 折线拐点的绘制样式
*/
lineJoin: StrokeLineJoin;
texture: string;
}
}
class Polygon<ExtraData = any> extends PathOverlay<ExtraData> {
/**
* 多边形
* @param options 选项
*/
constructor(options?: Polygon.Options<ExtraData>);
/**
* 设置多边形轮廓线节点数组
* @param path 轮廓线节点
*/
setPath(path: LocationValue[] | LocationValue[][]): void;
/**
* 获取多边形轮廓线节点数组
*/
getPath(): LngLat[] | LngLat[][];
/**
* 修改多边形属性
* @param options 属性
*/
setOptions(options: Polygon.Options<ExtraData>): void;
/**
* 获取多边形的属性
*/
getOptions(): Partial<
this extends Omit<Ellipse, keyof Polygon> ? Ellipse.GetOptionsResult<ExtraData> :
this extends Omit<Rectangle, keyof Polygon> ? Rectangle.GetOptionsResult<ExtraData> :
Polygon.GetOptionsResult<ExtraData>
>;
/**
* 获取多边形的面积
*/
getArea(): number;
/**
* 判断指定点坐标是否在多边形范围内
* @param point 坐标
*/
contains(point: LocationValue): boolean;
}
}
+73
View File
@@ -2,45 +2,118 @@ declare namespace AMap {
namespace Polyline {
interface EventMap<I = Polyline> extends PathOverlay.EventMap<I> { }
interface GetOptionsResult<ExtraData = any> extends ShapeOverlay.GetOptionsResult<ExtraData> {
/**
* 线条是否带描边
*/
isOutline: boolean;
/**
* 线条描边颜色
*/
outlineColor: string;
/**
* 是否绘制成大地线
*/
geodesic: boolean;
/**
* 折线的节点数组
*/
path: LngLat[];
/**
* 折线拐点的绘制样式
*/
lineJoin: StrokeLineJoin;
/**
* 折线两端线帽的绘制样式
*/
lineCap: StrokeLineCap;
/**
* 描边的宽度
*/
borderWeight: number;
/**
* 是否延路径显示方向箭头
*/
showDir: boolean;
/**
* 方向箭头颜色
*/
dirColor: string;
/**
* 方向箭头图片
*/
dirImg: string;
}
interface Options<ExtraData = any> extends PathOverlay.Options<ExtraData> {
/**
* 线条是否带描边
*/
isOutline?: boolean;
/**
* 线条描边颜色
*/
outlineColor?: string;
/**
* 是否绘制成大地线
*/
geodesic?: boolean;
/**
* 方向箭头颜色
*/
dirColor?: string;
/**
* 描边的宽度
*/
borderWeight?: number;
/**
* 是否延路径显示方向箭头
*/
showDir?: boolean;
// internal
/**
* 折线的节点数组
*/
path?: LocationValue[];
}
}
class Polyline<ExtraData = any> extends PathOverlay<ExtraData> {
/**
* 折线
* @param options 选项
*/
constructor(options?: BezierCurve.Options<ExtraData> | Polyline.Options<ExtraData>);
/**
* 设置组成该折线的节点数组
* @param path 节点数组
*/
setPath(
path: this extends Omit<BezierCurve, keyof Polyline> ?
Array<Array<number | string | Array<string | number>>>
: LocationValue[]
): void;
/**
* 获取折线路径的节点数组
*/
getPath(): this extends Omit<BezierCurve, keyof Polyline> ?
Array<LngLat & { controlPoints: LngLat[] }>
: LngLat[];
/**
* 获取折线的总长度(单位:米)
*/
getLength(): number;
/**
* 设置线的属性
* @param options 属性
*/
setOptions(options: this extends Omit<BezierCurve, keyof Polyline> ?
Partial<BezierCurve.Options<ExtraData>>
: Polyline.Options<ExtraData>
): void;
/**
* 获取线的属性
*/
getOptions(): Partial<Polyline.GetOptionsResult<ExtraData>>;
}
}
+22
View File
@@ -5,17 +5,39 @@ declare namespace AMap {
}
interface Options<ExtraData = any> extends Polygon.Options<ExtraData> {
/**
* 矩形的范围
*/
bounds?: Bounds;
}
type GetOptionsResult<ExtraData = any> = Merge<Polygon.GetOptionsResult<ExtraData>, {
/**
* 路径节点数组
*/
path: LngLat[];
/**
* 矩形的范围
*/
bounds: Bounds;
texture: string;
}>;
}
class Rectangle<ExtraData = any> extends Polygon<ExtraData> {
/**
* 矩形
* @param options 选项
*/
constructor(options?: Rectangle.Options<ExtraData>);
/**
* 获取矩形范围
* @param bounds 矩形的范围
* @param preventEvent 阻止触发事件
*/
setBounds(bounds: Bounds, preventEvent?: boolean): void;
/**
* 修改矩形属性
* @param options 属性
*/
setOptions(options: Partial<Rectangle.Options>): void;
}
}
+50
View File
@@ -7,24 +7,74 @@ declare namespace AMap {
change: Event<'change', { target: I }>;
}
interface GetOptionsResult<ExtraData = any> {
/**
* 所属地图
*/
map: Map;
/**
* 层级
*/
zIndex: number;
/**
* 线条颜色
*/
strokeColor: string;
/**
* 线条透明度
*/
strokeOpacity: number;
/**
* 线条宽度
*/
strokeWeight: number;
/**
* 线条样式,虚线或者实线
*/
strokeStyle: StrokeStyle;
/**
* 虚线的分段
*/
strokeDasharray: number[];
/**
* 自定义属性
*/
extData: ExtraData | {};
/**
* 事件是否穿透到地图
*/
bubble: boolean;
/**
* 是否支持点击
*/
clickable: boolean;
}
}
abstract class ShapeOverlay<ExtraData = any> extends Overlay<ExtraData> {
/**
* 设置覆盖物属性
* @param options 属性
*/
abstract setOptions(options: {}): void;
/**
* 获得属性
*/
abstract getOptions(): {};
/**
* 获得层级
*/
getzIndex(): number;
/**
* 设置层级
* @param zIndex 层级
*/
setzIndex(zIndex: number): void;
/**
* 返回可见
*/
getVisible(): boolean;
/**
* 设置是否可以拖拽
*/
setDraggable(draggable: boolean): void;
}
}
+22
View File
@@ -4,16 +4,38 @@ declare namespace AMap {
type VerticalAlign = 'top' | 'middle' | 'bottom';
interface EventMap<I = Text> extends Marker.EventMap<I> { }
interface Options extends Marker.Options {
/**
* 文本内容
*/
text?: string;
/**
* 对齐方式
*/
textAlign?: TextAlign;
verticalAlign?: VerticalAlign;
}
}
class Text<ExtraData = any> extends Marker<ExtraData> {
/**
* 纯文本标记
* @param options 选项
*/
constructor(options?: Text.Options);
/**
* 标记显示的文本内容
*/
getText(): string;
/**
* 修改文本内容
* @param text 文本内容
*/
setText(text: string): void;
/**
* 设置文本样式
* @param style 文本样式
*/
setStyle(style: object): void;
}
}
+19
View File
@@ -1,9 +1,28 @@
declare namespace AMap {
class Pixel {
/**
* 像素坐标,确定地图上的一个像素点
* @param x 横轴坐标
* @param y 纵轴坐标
* @param round 是否四舍五入
*/
constructor(x: number, y: number, round?: boolean);
/**
* 获得X方向像素坐标
*/
getX(): number;
/**
* 获得Y方向像素坐标
*/
getY(): number;
/**
* 当前像素坐标与传入像素坐标是否相等
* @param point 目标像素坐标
*/
equals(point: Pixel): boolean;
/**
* 以字符串形式返回像素坐标对象
*/
toString(): string;
// internal
+15
View File
@@ -1,9 +1,24 @@
declare namespace AMap {
class Size {
/**
* 地物对象的像素尺寸
* @param width 宽度像素
* @param height 长度像素
*/
constructor(width: number, height: number);
/**
* 获得宽度
*/
getWidth(): number;
/**
* 获得高度
*/
getHeight(): number;
/**
* 以字符串形式返回尺寸大小对象
*/
toString(): string;
// internal
contains(size: { x: number; y: number }): boolean;
}
+49 -10
View File
@@ -1,25 +1,64 @@
declare namespace AMap {
namespace Util {
/**
* 将颜色名转换为16进制RGB颜色值
* @param colorName 颜色名
*/
function colorNameToHex(colorName: string): string;
/**
* 将16进制RGB转为rgba(R,G,B,A)
* @param hex 16进制RGB
*/
function rgbHex2Rgba(hex: string): string;
/**
* 将16进制RGBA转为rgba(R,G,B,A)
* @param hex 16进制RGBA
*/
function argbHex2Rgba(hex: string): string;
/**
* 判断一个对象是都为空
* @param obj 目标对象
*/
function isEmpty(obj: object): boolean;
/**
* 从数组删除元素
* @param array 数组
* @param item 元素
*/
function deleteItemFromArray<T = any>(array: T[], item: T): T[];
/**
* 按索引删除数组元素
* @param array 数组
* @param index 索引
*/
function deleteItemFromArrayByIndex<T = any>(array: T[], index: number): T[];
/**
* 返回元素索引
* @param array 数组
* @param item 元素
*/
function indexOf<T = any>(array: T[], item: T): number;
/**
* 保留小数点后指定位
* @param floatNumber 数值
* @param digits 小数点位数
*/
function format(floatNumber: number, digits?: number): number;
/**
* 判断是否数组
* @param data 判断对象
*/
function isArray(data: any): data is any[];
/**
* 判断参数是否为DOM元素
* @param data 判断对象
*/
function isDOM(data: any): data is HTMLElement;
/**
* 判断数组是否包含某个元素
* @param array 数组
* @param item 元素
*/
function includes<T = any>(array: T[], item: T): boolean;
function requestIdleCallback(callback: (...args: any[]) => any, options?: { timeout?: number }): number;
+16
View File
@@ -1,13 +1,29 @@
declare namespace AMap {
namespace View2D {
interface Options {
/**
* 地图中心点坐标值
*/
center?: LocationValue;
/**
* 地图顺时针旋转角度
*/
rotation?: number;
/**
* 地图显示的缩放级别
*/
zoom?: number;
/**
* 地图显示的参考坐标系
*/
crs?: 'EPGS3857' | 'EPGS3395' | 'EPGS4326';
}
}
class View2D extends EventEmitter {
/**
* 二维地图显示视口,用于定义二维地图静态显示属性
* @param options 选项
*/
constructor(options?: View2D.Options);
}
}
+1
View File
@@ -8,6 +8,7 @@
"callable-types": false,
"comment-format": false,
"dt-header": false,
"npm-naming": false,
"eofline": false,
"export-just-namespace": false,
"import-spacing": false,
+1
View File
@@ -8,6 +8,7 @@
"callable-types": false,
"comment-format": false,
"dt-header": false,
"npm-naming": false,
"eofline": false,
"export-just-namespace": false,
"import-spacing": false,
+1
View File
@@ -8,6 +8,7 @@
"callable-types": false,
"comment-format": false,
"dt-header": false,
"npm-naming": false,
"eofline": false,
"export-just-namespace": false,
"import-spacing": false,
+1
View File
@@ -8,6 +8,7 @@
"callable-types": false,
"comment-format": false,
"dt-header": false,
"npm-naming": false,
"eofline": false,
"export-just-namespace": false,
"import-spacing": false,
+1
View File
@@ -8,6 +8,7 @@
"callable-types": false,
"comment-format": false,
"dt-header": false,
"npm-naming": false,
"eofline": false,
"export-just-namespace": false,
"import-spacing": false,
@@ -8,6 +8,7 @@
"callable-types": false,
"comment-format": false,
"dt-header": false,
"npm-naming": false,
"eofline": false,
"export-just-namespace": false,
"import-spacing": false,
@@ -8,6 +8,7 @@
"callable-types": false,
"comment-format": false,
"dt-header": false,
"npm-naming": false,
"eofline": false,
"export-just-namespace": false,
"import-spacing": false,
+1
View File
@@ -8,6 +8,7 @@
"callable-types": false,
"comment-format": false,
"dt-header": false,
"npm-naming": false,
"eofline": false,
"export-just-namespace": false,
"import-spacing": false,
+1
View File
@@ -8,6 +8,7 @@
"callable-types": false,
"comment-format": false,
"dt-header": false,
"npm-naming": false,
"eofline": false,
"export-just-namespace": false,
"import-spacing": false,
+1
View File
@@ -8,6 +8,7 @@
"callable-types": false,
"comment-format": false,
"dt-header": false,
"npm-naming": false,
"eofline": false,
"export-just-namespace": false,
"import-spacing": false,
+1
View File
@@ -8,6 +8,7 @@
"callable-types": false,
"comment-format": false,
"dt-header": false,
"npm-naming": false,
"eofline": false,
"export-just-namespace": false,
"import-spacing": false,
@@ -8,6 +8,7 @@
"callable-types": false,
"comment-format": false,
"dt-header": false,
"npm-naming": false,
"eofline": false,
"export-just-namespace": false,
"import-spacing": false,
+1
View File
@@ -8,6 +8,7 @@
"callable-types": false,
"comment-format": false,
"dt-header": false,
"npm-naming": false,
"eofline": false,
"export-just-namespace": false,
"import-spacing": false,
+1
View File
@@ -8,6 +8,7 @@
"callable-types": false,
"comment-format": false,
"dt-header": false,
"npm-naming": false,
"eofline": false,
"export-just-namespace": false,
"import-spacing": false,
+1
View File
@@ -8,6 +8,7 @@
"callable-types": false,
"comment-format": false,
"dt-header": false,
"npm-naming": false,
"eofline": false,
"export-just-namespace": false,
"import-spacing": false,
+1
View File
@@ -8,6 +8,7 @@
"callable-types": false,
"comment-format": false,
"dt-header": false,
"npm-naming": false,
"eofline": false,
"export-just-namespace": false,
"import-spacing": false,
+1
View File
@@ -8,6 +8,7 @@
"callable-types": false,
"comment-format": false,
"dt-header": false,
"npm-naming": false,
"eofline": false,
"export-just-namespace": false,
"import-spacing": false,
+1
View File
@@ -8,6 +8,7 @@
"callable-types": false,
"comment-format": false,
"dt-header": false,
"npm-naming": false,
"eofline": false,
"export-just-namespace": false,
"import-spacing": false,
+1
View File
@@ -8,6 +8,7 @@
"callable-types": false,
"comment-format": false,
"dt-header": false,
"npm-naming": false,
"eofline": false,
"export-just-namespace": false,
"import-spacing": false,
+1
View File
@@ -8,6 +8,7 @@
"callable-types": false,
"comment-format": false,
"dt-header": false,
"npm-naming": false,
"eofline": false,
"export-just-namespace": false,
"import-spacing": false,
+1
View File
@@ -8,6 +8,7 @@
"callable-types": false,
"comment-format": false,
"dt-header": false,
"npm-naming": false,
"eofline": false,
"export-just-namespace": false,
"import-spacing": false,
@@ -8,6 +8,7 @@
"callable-types": false,
"comment-format": false,
"dt-header": false,
"npm-naming": false,
"eofline": false,
"export-just-namespace": false,
"import-spacing": false,

Some files were not shown because too many files have changed in this diff Show More