diff --git a/asset-manifest.json b/asset-manifest.json index 639b572c4..13900539f 100644 --- a/asset-manifest.json +++ b/asset-manifest.json @@ -59,8 +59,8 @@ "./static/js/41.6427f704.chunk.js": "/react/build/./static/js/41.6427f704.chunk.js", "static/css/42.47cd6ad7.chunk.css": "/react/build/static/css/42.47cd6ad7.chunk.css", "./static/js/42.0e40a2dc.chunk.js": "/react/build/./static/js/42.0e40a2dc.chunk.js", - "static/css/43.b0cddf05.chunk.css": "/react/build/static/css/43.b0cddf05.chunk.css", - "./static/js/43.7fbe3e23.chunk.js": "/react/build/./static/js/43.7fbe3e23.chunk.js", + "static/css/43.f5436beb.chunk.css": "/react/build/static/css/43.f5436beb.chunk.css", + "./static/js/43.698d409b.chunk.js": "/react/build/./static/js/43.698d409b.chunk.js", "static/css/44.28662e9a.chunk.css": "/react/build/static/css/44.28662e9a.chunk.css", "./static/js/44.0eebc44e.chunk.js": "/react/build/./static/js/44.0eebc44e.chunk.js", "static/css/45.78a1ba5d.chunk.css": "/react/build/static/css/45.78a1ba5d.chunk.css", @@ -96,8 +96,8 @@ "./static/js/60.f9784bd0.chunk.js": "/react/build/./static/js/60.f9784bd0.chunk.js", "static/css/61.deeb1b7c.chunk.css": "/react/build/static/css/61.deeb1b7c.chunk.css", "./static/js/61.f5e8aa96.chunk.js": "/react/build/./static/js/61.f5e8aa96.chunk.js", - "static/css/62.e3756a3a.chunk.css": "/react/build/static/css/62.e3756a3a.chunk.css", - "./static/js/62.25e1a6dd.chunk.js": "/react/build/./static/js/62.25e1a6dd.chunk.js", + "static/css/62.94519a29.chunk.css": "/react/build/static/css/62.94519a29.chunk.css", + "./static/js/62.f7b22724.chunk.js": "/react/build/./static/js/62.f7b22724.chunk.js", "static/css/63.6b9ba3cb.chunk.css": "/react/build/static/css/63.6b9ba3cb.chunk.css", "./static/js/63.f0327998.chunk.js": "/react/build/./static/js/63.f0327998.chunk.js", "./static/js/64.7db77deb.chunk.js": "/react/build/./static/js/64.7db77deb.chunk.js", @@ -107,8 +107,8 @@ "./static/js/66.17aebbd2.chunk.js": "/react/build/./static/js/66.17aebbd2.chunk.js", "static/css/67.98146c40.chunk.css": "/react/build/static/css/67.98146c40.chunk.css", "./static/js/67.0ba7b63d.chunk.js": "/react/build/./static/js/67.0ba7b63d.chunk.js", - "static/css/68.2461e310.chunk.css": "/react/build/static/css/68.2461e310.chunk.css", - "./static/js/68.78c47495.chunk.js": "/react/build/./static/js/68.78c47495.chunk.js", + "static/css/68.d4544d53.chunk.css": "/react/build/static/css/68.d4544d53.chunk.css", + "./static/js/68.93bfa3e5.chunk.js": "/react/build/./static/js/68.93bfa3e5.chunk.js", "./static/js/69.6e7a6faf.chunk.js": "/react/build/./static/js/69.6e7a6faf.chunk.js", "static/css/70.f61a22e7.chunk.css": "/react/build/static/css/70.f61a22e7.chunk.css", "./static/js/70.8cea9471.chunk.js": "/react/build/./static/js/70.8cea9471.chunk.js", @@ -339,7 +339,7 @@ "./static/js/231.b53914ca.chunk.js": "/react/build/./static/js/231.b53914ca.chunk.js", "main.css": "/react/build/static/css/main.4296b0ba.chunk.css", "main.js": "/react/build/./static/js/main.161e032b.chunk.js", - "runtime~main.js": "/react/build/./static/js/runtime~main.228c3127.js", + "runtime~main.js": "/react/build/./static/js/runtime~main.016fd9e2.js", "./static/js/14.16d9d702.chunk.js.LICENSE.txt": "/react/build/./static/js/14.16d9d702.chunk.js.LICENSE.txt", "./static/js/151.24817661.chunk.js.LICENSE.txt": "/react/build/./static/js/151.24817661.chunk.js.LICENSE.txt", "./static/js/18.8b804743.chunk.js.LICENSE.txt": "/react/build/./static/js/18.8b804743.chunk.js.LICENSE.txt", diff --git a/index.html b/index.html index 810ac98e8..eee2f60bc 100644 --- a/index.html +++ b/index.html @@ -1 +1 @@ -
\ No newline at end of file +
\ No newline at end of file diff --git a/service-worker.js b/service-worker.js index 38feb10bc..7eed5f72c 100644 --- a/service-worker.js +++ b/service-worker.js @@ -1 +1 @@ -"use strict";var precacheConfig=[["/react/build/css.worker.js","8a6b96bc806b0753dfb68cd49935b45b"],["/react/build/editor.worker.js","28d7a4ffd9e954cd878c277b96a4d36a"],["/react/build/html.worker.js","4864df51f2b1f38ab67906fff9c6b367"],["/react/build/index.html","b9e553ec48e010166d9878fd02466f7a"],["/react/build/json.worker.js","e193633b3f48dcd8cbb1a96b5b5b4719"],["/react/build/static/css/100.5ab3c82c.chunk.css","87b7c09bc9bd86d8562f94b5dc161d2d"],["/react/build/static/css/101.56158b92.chunk.css","8db41d890ee6bb6de851661591daf557"],["/react/build/static/css/102.53c7d49b.chunk.css","04461cc92a569076e0f012a8d67734e5"],["/react/build/static/css/103.59500253.chunk.css","08727dcc716788b9207e6965eabd0c8a"],["/react/build/static/css/104.3edde0c7.chunk.css","fdec91b854d997a2d04e3cab3c33a778"],["/react/build/static/css/105.78d24cb4.chunk.css","73dc1567cf66ea89cfa27454bc5a1571"],["/react/build/static/css/107.4054f41b.chunk.css","df7b038f8f1a0e16793b24bc950b9b22"],["/react/build/static/css/109.15253a67.chunk.css","cc03c8bd582e5fb3cf3cb57075905fe6"],["/react/build/static/css/110.1283d09d.chunk.css","98e6c38fc17dc5ba7981210181a8296f"],["/react/build/static/css/111.7998362a.chunk.css","bca1d7d24c7d1f1d482fb4b385159f08"],["/react/build/static/css/113.6b9ba3cb.chunk.css","450ecb015daa7d9179fefac0ad10879e"],["/react/build/static/css/114.fd083902.chunk.css","6f65bae71f11e62309c73d5b818f30f3"],["/react/build/static/css/115.77c696ba.chunk.css","5314e7f6ff601345e2cc90fc691e3729"],["/react/build/static/css/116.77c696ba.chunk.css","5314e7f6ff601345e2cc90fc691e3729"],["/react/build/static/css/118.fd3fa2e9.chunk.css","97c0f9c3d8d16c05584bec1ce645cda0"],["/react/build/static/css/12.3634cedd.chunk.css","5d39578b91b84e925bd702d0d56a0ea2"],["/react/build/static/css/120.9d206204.chunk.css","e363ea281af9e616a0d144154b88c8f8"],["/react/build/static/css/121.82ba8135.chunk.css","0acc1e50ec8c2e46063adff1b6974d7f"],["/react/build/static/css/122.f57601bb.chunk.css","2af360f0fa6ae40fae7b3fcb44b24126"],["/react/build/static/css/123.2646da34.chunk.css","fd35f6d45b8f2b74b2b2fc747da42787"],["/react/build/static/css/125.080d6958.chunk.css","d9b5ca9cb767438bb42a4167d8c9141b"],["/react/build/static/css/126.71fa167b.chunk.css","e0ae2d8af498e04d4b844ed54a567632"],["/react/build/static/css/129.f4d0dbc5.chunk.css","65ff755faaf716eed68dc683cf871379"],["/react/build/static/css/130.45b01965.chunk.css","77fa112f88ec292afdccc6b114817509"],["/react/build/static/css/133.9d206204.chunk.css","e363ea281af9e616a0d144154b88c8f8"],["/react/build/static/css/134.9d206204.chunk.css","e363ea281af9e616a0d144154b88c8f8"],["/react/build/static/css/135.cdd78914.chunk.css","c8fa03c8951406a0c6dedbc44275a66c"],["/react/build/static/css/136.142cff28.chunk.css","e2d1282e7d68f47cc9a754940877e251"],["/react/build/static/css/138.7b8a6eb0.chunk.css","e5a078261e06b47655db2e7181c7d7d6"],["/react/build/static/css/142.15253a67.chunk.css","cc03c8bd582e5fb3cf3cb57075905fe6"],["/react/build/static/css/143.8a2a0d50.chunk.css","3c152d150d71ca1d782cbce74e83545a"],["/react/build/static/css/146.adba6539.chunk.css","2a7331558acec08d91f6776ad403e5a1"],["/react/build/static/css/149.fd5c069f.chunk.css","dc736ebb1d70ad8f92c50296bc5c21c2"],["/react/build/static/css/150.cbc5dafa.chunk.css","0d00c4a2d6cc383c8b2a40a24378d281"],["/react/build/static/css/151.2f409942.chunk.css","6f1d0eaeed7a282caf0ce33adaef0898"],["/react/build/static/css/155.c0242127.chunk.css","3de2e94ba931d38eb377530c8ea1be89"],["/react/build/static/css/156.6bd3e203.chunk.css","faf2a11e1ff39b79b20c16f8dc422206"],["/react/build/static/css/157.c1dd3d9c.chunk.css","c5a389ca9beec021b082b8e1f62d7526"],["/react/build/static/css/158.f50a3cf0.chunk.css","22b88329969af9de3db1674e68f8d93c"],["/react/build/static/css/159.9df86194.chunk.css","dae2a89b8b4b9577d529ccdc67b2bd1b"],["/react/build/static/css/16.d00c3b40.chunk.css","8f0768612bc7511ef59e202eac390e94"],["/react/build/static/css/160.6b9ba3cb.chunk.css","450ecb015daa7d9179fefac0ad10879e"],["/react/build/static/css/161.f2060fe7.chunk.css","3dc3569f98f0d43324c3871cc5623426"],["/react/build/static/css/162.f9d1b577.chunk.css","f9b149d2ed650f6b4ec24b09d29f3e4e"],["/react/build/static/css/165.afe8c942.chunk.css","a3452dea4f6b7a262f3427f28351739a"],["/react/build/static/css/166.9d206204.chunk.css","e363ea281af9e616a0d144154b88c8f8"],["/react/build/static/css/18.77b6c67e.chunk.css","fe9f480ee5f65c9406ddf1bc3ea2b97e"],["/react/build/static/css/20.e9a6b828.chunk.css","78bde0953bda71d3e1aa88983d3058ee"],["/react/build/static/css/22.b974e0fe.chunk.css","21c7446e5eeade6c5a700477671eaa50"],["/react/build/static/css/29.79de1193.chunk.css","8cd34974bd4e6d29643ed7f0a50b5926"],["/react/build/static/css/31.80778523.chunk.css","3decda123858f1522565bb25c6371656"],["/react/build/static/css/32.f8d5bf59.chunk.css","32bc63ca28f6af2a0255140ebb882246"],["/react/build/static/css/34.83d1a87f.chunk.css","aeed16beaeef226bff61678e8c3cef12"],["/react/build/static/css/35.b8ba4177.chunk.css","4403e1c78e9b0e67ec30e52f69b91b81"],["/react/build/static/css/36.ffdf4f5b.chunk.css","8068e29b9ef9e8fc2ad441a3c67aa7b6"],["/react/build/static/css/37.078a4c60.chunk.css","cca4888f719bbe27332c8c7b7adf8b85"],["/react/build/static/css/38.350a3b73.chunk.css","37dce675a2709225c047150bb93768e2"],["/react/build/static/css/39.98146c40.chunk.css","a74a31166d5a23b14907921a272f7c5e"],["/react/build/static/css/41.695e8901.chunk.css","43cf49ebe25eb4ac18335b6f440db87d"],["/react/build/static/css/42.47cd6ad7.chunk.css","7e085ec117d7d0fcb9e1df5b16dfb0e2"],["/react/build/static/css/43.b0cddf05.chunk.css","8bee5a28d3f43127622570ceef7b6e1d"],["/react/build/static/css/44.28662e9a.chunk.css","fe9f480ee5f65c9406ddf1bc3ea2b97e"],["/react/build/static/css/45.78a1ba5d.chunk.css","83a2ab1e5c6be84e927fda72b983d73e"],["/react/build/static/css/46.b96984b7.chunk.css","ad64c0eede853274fe7737a65d66d18b"],["/react/build/static/css/47.4bfee9b9.chunk.css","bf2ddeae5e3de9dd0c042ff3d22e9d78"],["/react/build/static/css/48.77b6c67e.chunk.css","fe9f480ee5f65c9406ddf1bc3ea2b97e"],["/react/build/static/css/49.77b6c67e.chunk.css","fe9f480ee5f65c9406ddf1bc3ea2b97e"],["/react/build/static/css/50.77b6c67e.chunk.css","fe9f480ee5f65c9406ddf1bc3ea2b97e"],["/react/build/static/css/51.77b6c67e.chunk.css","fe9f480ee5f65c9406ddf1bc3ea2b97e"],["/react/build/static/css/52.77b6c67e.chunk.css","fe9f480ee5f65c9406ddf1bc3ea2b97e"],["/react/build/static/css/53.77b6c67e.chunk.css","fe9f480ee5f65c9406ddf1bc3ea2b97e"],["/react/build/static/css/54.23e457c6.chunk.css","b7ea9928083ea35acce72ee289c77941"],["/react/build/static/css/55.77c696ba.chunk.css","5314e7f6ff601345e2cc90fc691e3729"],["/react/build/static/css/57.722d55e5.chunk.css","076b5016aa283a7814db746c8e3e4d0c"],["/react/build/static/css/58.fd3fa2e9.chunk.css","97c0f9c3d8d16c05584bec1ce645cda0"],["/react/build/static/css/59.f8ce57b7.chunk.css","d6d7a13f06f71440a953ce2798887469"],["/react/build/static/css/60.58e88442.chunk.css","4c607decefc5223e114b0c81b2a06a37"],["/react/build/static/css/61.deeb1b7c.chunk.css","b6e1fd2b19634acde723739bdf5e18b3"],["/react/build/static/css/62.e3756a3a.chunk.css","7f2d81d07fd951086f62fc87a5e5a601"],["/react/build/static/css/63.6b9ba3cb.chunk.css","450ecb015daa7d9179fefac0ad10879e"],["/react/build/static/css/65.35b1feac.chunk.css","0b43c1534cd52029318ecc64bc16cd82"],["/react/build/static/css/66.4237b849.chunk.css","8ad4b4af55c33813134fec04080b8ca6"],["/react/build/static/css/67.98146c40.chunk.css","07951aa858a17bc48c660e2ffd24451d"],["/react/build/static/css/68.2461e310.chunk.css","a4a20ca68f93c1763f72e8946f9612e9"],["/react/build/static/css/70.f61a22e7.chunk.css","a1d2c344617b8c90536aa0afbed3dad3"],["/react/build/static/css/72.98146c40.chunk.css","07951aa858a17bc48c660e2ffd24451d"],["/react/build/static/css/74.211cfcc2.chunk.css","ad77adccc863fd4f0b83a7e8235425ab"],["/react/build/static/css/75.6978aa87.chunk.css","8aa211784112df8129b5f3f0fea8190a"],["/react/build/static/css/77.45f2c69d.chunk.css","311388c729e0e94e12f092f8a4671ebb"],["/react/build/static/css/78.632d7855.chunk.css","226acc64dfa2fad8420e5eadf2d7b32d"],["/react/build/static/css/79.052117ca.chunk.css","8887d10a0949d7784ffe4690484087ae"],["/react/build/static/css/8.4580c46d.chunk.css","8d16c1c5c5e4eaa8353e5b73aa97767e"],["/react/build/static/css/80.b75266bc.chunk.css","306d531ac3c90d3516b15dcd711fd658"],["/react/build/static/css/81.1283d09d.chunk.css","98e6c38fc17dc5ba7981210181a8296f"],["/react/build/static/css/83.adba6539.chunk.css","2a7331558acec08d91f6776ad403e5a1"],["/react/build/static/css/84.4304a9d9.chunk.css","2e140b39ca87fb19bdb264111265be77"],["/react/build/static/css/85.11a04942.chunk.css","1373d0214c811e25b7c1763ef9cf3287"],["/react/build/static/css/86.541803c4.chunk.css","56302d54d1a174818f1c3446779e2ec9"],["/react/build/static/css/87.d788cda5.chunk.css","284a1d6f6ade0991c377d0752d9c27f9"],["/react/build/static/css/88.9d206204.chunk.css","e363ea281af9e616a0d144154b88c8f8"],["/react/build/static/css/91.33abeff1.chunk.css","07181be567bdb103c3b473c97021176e"],["/react/build/static/css/92.e024cd73.chunk.css","c3e67bef07a8c5003c67e484eb25a24b"],["/react/build/static/css/94.a1534f12.chunk.css","7029ba679d8c3aa833641d7fb83a5db1"],["/react/build/static/css/95.7aa996e6.chunk.css","95a8691b6fb80e3c0cba1da3107371f2"],["/react/build/static/css/96.ea97577b.chunk.css","1211ec54a5dbd129cf63cacdc130ca13"],["/react/build/static/css/97.9474d52b.chunk.css","5cc3d979713402fd252f57cb92382a9d"],["/react/build/static/css/main.4296b0ba.chunk.css","7d3fb49c9fa520e02128e5fb9a3245ae"],["/react/build/static/js/0.1e823640.chunk.js","45721da2d7201aaf43a33829b7a49ca3"],["/react/build/static/js/1.a3f49b75.chunk.js","18bdf1b43ddc40f3bfbdf6beff141f69"],["/react/build/static/js/10.4a6b4ca9.chunk.js","70726f291764b49aeb7b2c9beb374866"],["/react/build/static/js/100.0fcbf818.chunk.js","804ad1b96bbbc6b7a2c2f1cf007452c5"],["/react/build/static/js/101.4f44f3db.chunk.js","60bfe78d275ae519580efc3ffff0b005"],["/react/build/static/js/102.8dd22174.chunk.js","f5058b736276b57d82649d94da5481d0"],["/react/build/static/js/103.5ff11a99.chunk.js","08c654196f255707d167d4721bd246fa"],["/react/build/static/js/104.a7fa3f5d.chunk.js","7f5f7dc089a31a6503068adff6d2d431"],["/react/build/static/js/105.925c448f.chunk.js","e8a0d7175b1bd3c01cff822ddca263fb"],["/react/build/static/js/106.762db912.chunk.js","a0b28d57034815836e5f873a701f1d91"],["/react/build/static/js/107.edeae8bb.chunk.js","da3b0fd1dc194f2cd6276f80dff35d7b"],["/react/build/static/js/108.bc8046b4.chunk.js","87287cd875df66698ca4f655c73ceae9"],["/react/build/static/js/109.9f1e8f45.chunk.js","84297c880c206cad044508928e9a6556"],["/react/build/static/js/11.1f5ac62f.chunk.js","021caa6c0798f23e952b4d71fc14481e"],["/react/build/static/js/110.beff70fd.chunk.js","0c0888704f42191305f075176361d71c"],["/react/build/static/js/111.2658e3dc.chunk.js","b916b1def22539ef4aaa22a346d444f8"],["/react/build/static/js/112.2ccaf84f.chunk.js","02d057b8c26b1c5db331a4377dfe4575"],["/react/build/static/js/113.ffcf6821.chunk.js","587204882b2675b5622369a418689d91"],["/react/build/static/js/114.401aba8a.chunk.js","6b69c640b9bb684181dbff8ef2d4a788"],["/react/build/static/js/115.f56b4055.chunk.js","0d1f74454b3ef640f7e3b595f5f8a0dc"],["/react/build/static/js/116.9aa4cbda.chunk.js","5c0d6280ae9f6ea25ee168a22e8f53c6"],["/react/build/static/js/117.71383f92.chunk.js","a8dc6b5d1ab0f8c2e00368f38833d3e0"],["/react/build/static/js/118.5bd73dc4.chunk.js","7d4f0d133718bc6ac79bd88f1642defb"],["/react/build/static/js/119.e408aeee.chunk.js","7fda1cfd0939a36e83e258ce44d94907"],["/react/build/static/js/12.13c3c69d.chunk.js","29226c74b49d0af1e2d7a6e70cba1389"],["/react/build/static/js/120.5898ea83.chunk.js","704f92aeab4f432c8454fb078c733c2b"],["/react/build/static/js/121.639da53f.chunk.js","aae85d801f965c4b69c2271f4932a58e"],["/react/build/static/js/122.5e5a7072.chunk.js","0e249c6608742d73fd6416893f5b980f"],["/react/build/static/js/123.c5896065.chunk.js","54b1620c343e1be370d797ac6fd9f04c"],["/react/build/static/js/124.ceb3db43.chunk.js","b11147960825b4d7545473c359b06d97"],["/react/build/static/js/125.87befa9f.chunk.js","b2a62e034f140f55bfb197aed8b3cd62"],["/react/build/static/js/126.89f71a41.chunk.js","dbd68d60ed0ad1b06a1b9d9895d7fe84"],["/react/build/static/js/127.ff1c63c5.chunk.js","57848d7d3d70ce6e48e46dce97226d8c"],["/react/build/static/js/128.bd2a7675.chunk.js","4ced72b56ba01e744bba6dd7584ba4d8"],["/react/build/static/js/129.19807eee.chunk.js","34e91415ce31f67ed0dd87b2ebc5e771"],["/react/build/static/js/13.9c975527.chunk.js","65e48488e485895fa44c7c3c501cf145"],["/react/build/static/js/130.26cc70cd.chunk.js","e419bd58a6e0f5eb0023fae19a4506a3"],["/react/build/static/js/131.9762921c.chunk.js","8121d34e176891bd127cc3fc826b324f"],["/react/build/static/js/132.844ad64f.chunk.js","65573f7e06c4f2584c4b9043b3b31bb5"],["/react/build/static/js/133.073567f3.chunk.js","b06d6b7c2df4de3738230ad2081811ab"],["/react/build/static/js/134.13eb5cca.chunk.js","78c683581e57a171b7f2f50ec32b6906"],["/react/build/static/js/135.1488ac3c.chunk.js","d68a053f8e1d48fffd3964245ba6e622"],["/react/build/static/js/136.84a6c670.chunk.js","ac9d03745fb67218dae98bbb3ca745ee"],["/react/build/static/js/137.753992ce.chunk.js","fad8b3ab0a62e92b393dcfc81799bb68"],["/react/build/static/js/138.99aa17bf.chunk.js","da271a472509c86c090e319464e2385b"],["/react/build/static/js/139.5d009026.chunk.js","9c3632136b5eec3d055db3817b43415b"],["/react/build/static/js/14.16d9d702.chunk.js","d0b903ed96b32e08b4cb86610374ee69"],["/react/build/static/js/14.16d9d702.chunk.js.LICENSE.txt","3f38febb7ec0853370afd7711e190f17"],["/react/build/static/js/140.d01d758b.chunk.js","dcebafca4c007baac07d13afa0303972"],["/react/build/static/js/141.199380af.chunk.js","a43f5c0bd80bde3d137aff49c9b43489"],["/react/build/static/js/142.5d77b495.chunk.js","98fea7bf2efba37ceb7820b3c2028189"],["/react/build/static/js/143.3340dfd3.chunk.js","98c7c2eca3ee388669d33739d5761c82"],["/react/build/static/js/144.40d51006.chunk.js","431a17d2185e1060450d6dc29dfb033b"],["/react/build/static/js/145.a59ee296.chunk.js","f2df9bc23a082c2129528f928786ae6b"],["/react/build/static/js/146.013c4f95.chunk.js","8f4472655b33a6325d2b0c649bb2ceac"],["/react/build/static/js/147.0f0492e1.chunk.js","9293eb6863a91e40a4e35a2f209fbc48"],["/react/build/static/js/148.a574dde1.chunk.js","9246dd8cf42c573590227b5e52eafb31"],["/react/build/static/js/149.db660102.chunk.js","0c3e92d2dd4778b6dfc5a0a28d065354"],["/react/build/static/js/15.3bbc0d09.chunk.js","5e5a7069c17314d59c2ab4cb11ac04df"],["/react/build/static/js/150.04275370.chunk.js","ddea77f50879be18eea8bfe9b0ad4a0a"],["/react/build/static/js/151.24817661.chunk.js","a668eb86971484a4173d544529fca193"],["/react/build/static/js/151.24817661.chunk.js.LICENSE.txt","428e3a3c97db78cd6ad7d81dbaa9bd83"],["/react/build/static/js/152.d8052561.chunk.js","30009883667a106edd0e6c3e26d95ffa"],["/react/build/static/js/153.436ad3f5.chunk.js","92738c11580c5ff347e9367433972597"],["/react/build/static/js/154.646f3b9b.chunk.js","dcf3e50b2604a6830c19e0c0e48045c7"],["/react/build/static/js/155.aac89e1c.chunk.js","5503f4cb4e6d23ea6b6235b91cff29f9"],["/react/build/static/js/156.7fddafd6.chunk.js","b51233d3f8e85cf2ee40d4f555386537"],["/react/build/static/js/157.f3d100fe.chunk.js","7283511c4f2a9b3adf5382e8ddc759c4"],["/react/build/static/js/158.5e079d51.chunk.js","3f0afffda13fa42b2b418087197bee6d"],["/react/build/static/js/159.0650e3cb.chunk.js","47dca5e68e646f3aa2c8c867feca9f5c"],["/react/build/static/js/16.166d65c9.chunk.js","57342d2ee3a19a64789b2ed32adbeb33"],["/react/build/static/js/160.4c96abd6.chunk.js","f5dfb55cce24b45a41755c3871de4bee"],["/react/build/static/js/161.8a5ac2e9.chunk.js","c9c118002bda2e427fb155040b9b2e71"],["/react/build/static/js/162.9bd267c3.chunk.js","19a0343b22cbe29b2d4e91dab4418e02"],["/react/build/static/js/163.e7010fc7.chunk.js","7cf615ec37e7825bde5823abac10b14b"],["/react/build/static/js/164.91940939.chunk.js","5627f91e18dc79eec75072c4b826f393"],["/react/build/static/js/165.74aaaabb.chunk.js","c226f57eca658c47d14ef0a2d0a43661"],["/react/build/static/js/166.f678b767.chunk.js","a926a419ffcbf83eb19c4b34fce393b2"],["/react/build/static/js/167.5029b3f3.chunk.js","008de3a955fb76f851f4edcaec17f613"],["/react/build/static/js/168.5c7665f9.chunk.js","4fe74b7e38f9efd3d1d6d750785415ec"],["/react/build/static/js/169.9096d7d9.chunk.js","47ecd84ea75428be0f6388a167cdaca3"],["/react/build/static/js/17.53ff74d4.chunk.js","44165c6280f566040527c83d7b268df8"],["/react/build/static/js/170.d35fb1a0.chunk.js","2ed2f2943a58d1c623b6bf0dab477027"],["/react/build/static/js/171.4e1eea5c.chunk.js","3475f405564836a4f37418c9de474024"],["/react/build/static/js/172.48a98e16.chunk.js","b05ac6b848a22b00cf2db63a77a0d915"],["/react/build/static/js/173.d523abff.chunk.js","d45c75a7739ff3bdd5b5b20988f9a0dc"],["/react/build/static/js/174.164bf156.chunk.js","7757877a966d61702eaf01393767870f"],["/react/build/static/js/175.4f58c9b4.chunk.js","c1b5f0d46b077560dcbf3154e33162a6"],["/react/build/static/js/176.07bba299.chunk.js","57ad6b36e7d4ce2e49e649f57f00cba4"],["/react/build/static/js/177.bdfbb39d.chunk.js","6827088d970dbe41a7cab858888b581c"],["/react/build/static/js/178.6e387996.chunk.js","0cf1a5f49f173a4ff3160109ae43a830"],["/react/build/static/js/179.587e829d.chunk.js","0ba119e774091dba3758a1f9f8b60403"],["/react/build/static/js/18.8b804743.chunk.js","6c64fd693bb257e4c96becd0d287f528"],["/react/build/static/js/18.8b804743.chunk.js.LICENSE.txt","940e4d7a48dab36a58d58efe87ab5b70"],["/react/build/static/js/180.5fe9e90d.chunk.js","d5b9a5fd1ca7d754303b80e07c6902ee"],["/react/build/static/js/181.6abb3190.chunk.js","001ea3a3b27030355ae78b0ef97c9e46"],["/react/build/static/js/182.4b316617.chunk.js","c3835f5c242d1b5f9193b11fd1e40edc"],["/react/build/static/js/183.2238201a.chunk.js","3119f1d72136a94ab66d0dc9e3211abc"],["/react/build/static/js/183.2238201a.chunk.js.LICENSE.txt","512174074f4d9cdfad9b3a42274074a5"],["/react/build/static/js/184.fb1eac32.chunk.js","39bf4635216e3c1eb8eb6c75951e0870"],["/react/build/static/js/185.8d139e7b.chunk.js","fa131c8c9980ea4a9fd46fc0e1f2e554"],["/react/build/static/js/186.abdc874f.chunk.js","a55d03a4f576003fd3479923b542265c"],["/react/build/static/js/187.015059dd.chunk.js","5bf4828f4f7a409480e281034baed337"],["/react/build/static/js/188.ac1dba9a.chunk.js","493498334ffad11cae7bca861092c551"],["/react/build/static/js/189.ac7a0f68.chunk.js","970c3c5b25ded54c80fb6f2346d1eaa4"],["/react/build/static/js/19.777a7f26.chunk.js","d44a6f29450f3535e25b8fb3d9980b6d"],["/react/build/static/js/190.f9d3fd17.chunk.js","2bf37d9168d5c8e1fb3c43faa432d5ec"],["/react/build/static/js/191.447c9fab.chunk.js","d9cb97bb4dff997a4854b992ea2d9ba7"],["/react/build/static/js/192.fbd31473.chunk.js","6a65146bb08d95604af8441755f9d4d2"],["/react/build/static/js/193.b7e18695.chunk.js","5240d664a4c475dccf861bd5d83d4a09"],["/react/build/static/js/194.1d1f9673.chunk.js","3451d03a00828456776ef8146041c4dc"],["/react/build/static/js/195.9b9f4927.chunk.js","7b7033067f1ed2be1f30e5b527640242"],["/react/build/static/js/196.527a836d.chunk.js","7e60f5f0679be77c6cf6b9a92f9cbd42"],["/react/build/static/js/197.ac910ac1.chunk.js","31452223250c0881fdbe265e4e68ec5a"],["/react/build/static/js/198.80a980fe.chunk.js","fa5fa329c5a30f23950c26af8cf6587d"],["/react/build/static/js/199.f90f851b.chunk.js","e22ca39981c24dbd787ef294e15268a9"],["/react/build/static/js/2.3d5eefb9.chunk.js","658a4f4f5ba3b7f6a28a3f005a406462"],["/react/build/static/js/2.3d5eefb9.chunk.js.LICENSE.txt","ae2739cdb90c51c3ecb75f6b7d4c351e"],["/react/build/static/js/20.01852e1f.chunk.js","1cd8a3875a4eb56422b643590ad45710"],["/react/build/static/js/200.fbc54deb.chunk.js","d9a51998f5550a46360fda1295ca155d"],["/react/build/static/js/201.48cc340b.chunk.js","e2617c8cecd8db588378e7984df22d9c"],["/react/build/static/js/202.5adca3ea.chunk.js","2eda2edd8251cde1036da43f208b4443"],["/react/build/static/js/203.88d21111.chunk.js","af6de0eef5394795cbb4cb3395ff3af2"],["/react/build/static/js/204.7238f5f0.chunk.js","4dbf0a002b4583e6d125c4a96549e2ce"],["/react/build/static/js/205.5cf6f28f.chunk.js","c58097e0469adcb0f3ffd61443eee83e"],["/react/build/static/js/206.f0b7518f.chunk.js","ce9976eb7b38a3b26a276134b54f7f4e"],["/react/build/static/js/207.c8f02f31.chunk.js","db759b767ab7a7872d7d85b7430867fa"],["/react/build/static/js/208.0c450993.chunk.js","c589193fca9ba10333b5f75018312065"],["/react/build/static/js/209.9ad28722.chunk.js","00d91dd774476d59babcf745297ffbd3"],["/react/build/static/js/21.4da09c32.chunk.js","f853bbb303c8835c9ad34311fae9727f"],["/react/build/static/js/210.dc875cfe.chunk.js","66652dea3ffbba653a19bb5eb1c5a103"],["/react/build/static/js/211.c96f7945.chunk.js","2c4a44c9709b24ae3755f59a69ac1e49"],["/react/build/static/js/212.081a162c.chunk.js","7847530c84487bd67836ee2d427042a2"],["/react/build/static/js/213.f14b7ebb.chunk.js","1e37a5f2c9199c7c70951c6def6ecee2"],["/react/build/static/js/214.9a39df45.chunk.js","501d528a4113faa30abeb111842673a6"],["/react/build/static/js/215.802294bf.chunk.js","7bfa29e9346b2df45fbf80b30635ad28"],["/react/build/static/js/216.d8d82637.chunk.js","8e8a4fe610b0c10981dc191c4a8af59d"],["/react/build/static/js/217.34707399.chunk.js","790d3e0b0b3a80339b56e7140f3ff801"],["/react/build/static/js/218.8a758f86.chunk.js","0890c75fdd845c111ac6380b3c416e88"],["/react/build/static/js/219.910fbd0b.chunk.js","f2f6ae6db21eed1be6e7f628b01d7810"],["/react/build/static/js/22.a3d623fe.chunk.js","ee36bb49f95160e96b8fb05738894d39"],["/react/build/static/js/220.04a374f7.chunk.js","f1742ab024c99f9c144a3423b49bff70"],["/react/build/static/js/221.9ada310d.chunk.js","2c24c2e864d1eb1bc2289d7ac3ea3c12"],["/react/build/static/js/222.698ed954.chunk.js","9c4c1a2aef3dd78b3e4790d27b3ab091"],["/react/build/static/js/223.b2eba6c9.chunk.js","c35896e00fba4fc4e8b5a3ae902b4a4e"],["/react/build/static/js/224.c091bd34.chunk.js","ff58b84d0e1f1296b83b8d687a0190ec"],["/react/build/static/js/225.0b60f580.chunk.js","877f91b080fcacb763dbd0548a01519e"],["/react/build/static/js/226.2bbe453b.chunk.js","585f20b7a275b13d7b7de77e3a15f13d"],["/react/build/static/js/226.2bbe453b.chunk.js.LICENSE.txt","d2c9b2bca031a8cbe13a0a4ca7845b00"],["/react/build/static/js/227.371bedaf.chunk.js","c3803b154111ed325978a41a19fe26c0"],["/react/build/static/js/228.1bb75bb3.chunk.js","f790439726e244f122269187d9565e68"],["/react/build/static/js/229.dc1b13e7.chunk.js","141e59c2b4a397970657d3f8e8b0631c"],["/react/build/static/js/23.2b9d0712.chunk.js","b158a1fe85e39915f2010cea5d61bfe8"],["/react/build/static/js/230.aa0cce17.chunk.js","309d2026e8afb60dc6b221ebf9969d18"],["/react/build/static/js/231.b53914ca.chunk.js","bde488904c7032433425a237585183a0"],["/react/build/static/js/24.6f430769.chunk.js","85bab35d2c4b8117af29e01d6c56606f"],["/react/build/static/js/25.53f0b2ce.chunk.js","397ea23e4e9deed93801538bbb1ca828"],["/react/build/static/js/26.f8a6c74a.chunk.js","14ea1a1a60c960bc134afa2de4cf7118"],["/react/build/static/js/27.7227cea0.chunk.js","abcd4512c55fb27f77392dc4ad7db9e1"],["/react/build/static/js/28.df666a32.chunk.js","1db12c83753891e230851ec0963c973d"],["/react/build/static/js/29.a3e9f69e.chunk.js","0f966d0965ed58938c28af3084cec3b5"],["/react/build/static/js/3.9bfb237a.chunk.js","76d5a1bdae942c8d74f108daa2da56e3"],["/react/build/static/js/30.36072913.chunk.js","ca54858b4d458f6eb29f52832c3024c0"],["/react/build/static/js/31.b5c0149f.chunk.js","865dd374ac040dd0ab2523ac82cab7d1"],["/react/build/static/js/31.b5c0149f.chunk.js.LICENSE.txt","3b50de9720afcb8c1cd67ab9d4d65cd0"],["/react/build/static/js/32.a986ef56.chunk.js","0c62878adef4ec44c2f0bf0c19a49e35"],["/react/build/static/js/33.3e1314d7.chunk.js","d8f0eab6905e2ab546cf0604a4335b00"],["/react/build/static/js/34.7d84847c.chunk.js","1b811dc244278f89e3815bc9ba8c8876"],["/react/build/static/js/34.7d84847c.chunk.js.LICENSE.txt","76eb1d063a6bb075a783e9e8cae8c22f"],["/react/build/static/js/35.4eda7744.chunk.js","3e74af54114ad40a3f1d9dc88746491c"],["/react/build/static/js/35.4eda7744.chunk.js.LICENSE.txt","b95cf3f2288d26cbee7d50e9f07183ce"],["/react/build/static/js/36.fcaab9da.chunk.js","2bffca8ccda9e6e7c6e2155f9037507a"],["/react/build/static/js/36.fcaab9da.chunk.js.LICENSE.txt","4602f6c97b627abd1ecacab909185b3e"],["/react/build/static/js/37.93f4ffae.chunk.js","175d8b8cfdddadac5053e89f3896f7d3"],["/react/build/static/js/37.93f4ffae.chunk.js.LICENSE.txt","1188ec7130c6418ee4fa660bab4a1ffc"],["/react/build/static/js/38.5994af06.chunk.js","ae4cd47749546e7b22941e32fd65817a"],["/react/build/static/js/39.6ffd9277.chunk.js","6c5ee1f6bc2422c746ea534bfd018bee"],["/react/build/static/js/4.4acb3572.chunk.js","b6a85ca1dc83c48c287263fef99028da"],["/react/build/static/js/40.5ae24769.chunk.js","f03da515138c985f5f94e917c378e340"],["/react/build/static/js/41.6427f704.chunk.js","99256061a1ef993f626d705d40ee8f16"],["/react/build/static/js/41.6427f704.chunk.js.LICENSE.txt","dd839ee6c4ff6f284259611eb8fe9d26"],["/react/build/static/js/42.0e40a2dc.chunk.js","76350a7f3b54304072d30473f81ae052"],["/react/build/static/js/42.0e40a2dc.chunk.js.LICENSE.txt","f59564efe6ec7b9118922251603afa5a"],["/react/build/static/js/43.7fbe3e23.chunk.js","e96f4bdea5af6e45b1c7e7b5d1d0401e"],["/react/build/static/js/44.0eebc44e.chunk.js","403690106afcb76b12908c376a10edd3"],["/react/build/static/js/44.0eebc44e.chunk.js.LICENSE.txt","0c1a085a6bd6f1a79ce29ed144ea7e35"],["/react/build/static/js/45.0bbbbae4.chunk.js","9e7c1309d97f5038169ca2c6ad63a1de"],["/react/build/static/js/46.a709ffbd.chunk.js","74ebefbb5f7970148d9987257ec0f3fd"],["/react/build/static/js/47.e0c7eab0.chunk.js","dfe8cf70acc04be6cb08b28d6b40aa59"],["/react/build/static/js/47.e0c7eab0.chunk.js.LICENSE.txt","cfad1e4982bdd5ad2c2f3f1046ae4486"],["/react/build/static/js/48.123ba649.chunk.js","652af9c9c71c94a03ec1fa8df851f58f"],["/react/build/static/js/48.123ba649.chunk.js.LICENSE.txt","b7100e7f73f03f9ce3c952ab849ead1f"],["/react/build/static/js/49.78cfef06.chunk.js","55f1bcf73508185069656ee8ed0e95e1"],["/react/build/static/js/49.78cfef06.chunk.js.LICENSE.txt","47c37605ad4445fdea8bba95e38e9ccf"],["/react/build/static/js/5.0501e3e4.chunk.js","29e5d996584a6b994f65c888825b2afe"],["/react/build/static/js/50.3c30a173.chunk.js","b27600009e35fb422a0906eff1641b39"],["/react/build/static/js/50.3c30a173.chunk.js.LICENSE.txt","2adc01fbcf75b9019ab54e3c67ed663d"],["/react/build/static/js/51.f66d5bef.chunk.js","5173c80c51c4459fc4c9fc84961412ae"],["/react/build/static/js/51.f66d5bef.chunk.js.LICENSE.txt","fa2b1ee2ede9a474dccd561fe654d246"],["/react/build/static/js/52.824c706b.chunk.js","696c26e5582a59252b9f226f9933b52e"],["/react/build/static/js/52.824c706b.chunk.js.LICENSE.txt","71edb0cbe2efdcc1f9646e5cf59677c1"],["/react/build/static/js/53.3659709d.chunk.js","6ac43e3df5061cf20a5991e3997c5a6e"],["/react/build/static/js/53.3659709d.chunk.js.LICENSE.txt","8c8c77581aa93984a96c42bbb8603b8a"],["/react/build/static/js/54.1f388e0c.chunk.js","c877fed5b407794547cad68b95ca020f"],["/react/build/static/js/55.a32219df.chunk.js","5ad5ef807f2102a82d74dc2ff3657fa3"],["/react/build/static/js/56.3fa24f3b.chunk.js","d4964164d3bc732759ff08be224d5e61"],["/react/build/static/js/57.1aa04d7e.chunk.js","8239615a42f5f35f4410b175612816b9"],["/react/build/static/js/58.9e6ec52f.chunk.js","b823ec0c423f7ba0019ab2895ed81144"],["/react/build/static/js/59.3c9b0401.chunk.js","94f46f02474c7abe54c6f3de55166be9"],["/react/build/static/js/6.1bb61954.chunk.js","87ec45dc564c5a4f24e49b3802cc3842"],["/react/build/static/js/60.f9784bd0.chunk.js","304e57a18bc6bc3134c29e3764ae89ef"],["/react/build/static/js/61.f5e8aa96.chunk.js","2f1f62fd8ee7cf7c8dc32b4f7742332f"],["/react/build/static/js/62.25e1a6dd.chunk.js","4580c8dd4e96fe9e01d49abc7242e0b8"],["/react/build/static/js/63.f0327998.chunk.js","2f6759166c76961396c471e84f405565"],["/react/build/static/js/64.7db77deb.chunk.js","c9bc753ab61b8fa74641ee98173062f3"],["/react/build/static/js/65.74bb6b01.chunk.js","266f9214df4dacf9914bb9c1afbcd982"],["/react/build/static/js/66.17aebbd2.chunk.js","4e2857f3bbdaa4619b67b48ac0d511b2"],["/react/build/static/js/67.0ba7b63d.chunk.js","ba77ac30f2d328f364b57c5ba56f5be8"],["/react/build/static/js/68.78c47495.chunk.js","71615e590cd4154e14000f7a5b10f25b"],["/react/build/static/js/69.6e7a6faf.chunk.js","26df19bf48db2e8e2f8f9938391ff590"],["/react/build/static/js/7.159f777a.chunk.js","f03f3bf8c19cfa2f680cb66b91acbd67"],["/react/build/static/js/70.8cea9471.chunk.js","a488218cb75bcc49749baf6efba22e2b"],["/react/build/static/js/71.aec3c03c.chunk.js","a528a6bdff3493b653044d59a09833c2"],["/react/build/static/js/72.b10790d4.chunk.js","c67bfbcdbfb401651814f758ea3c0f4d"],["/react/build/static/js/73.5cd7e1a5.chunk.js","e01ed3a8e690554ca8490ad6a4fd92a6"],["/react/build/static/js/74.b9237dfa.chunk.js","b24707cf72c4ef747cc193cd55a2fc46"],["/react/build/static/js/75.5396b306.chunk.js","56f9d33dbbedd8176f3888000019cd41"],["/react/build/static/js/76.1f46a80d.chunk.js","c46d49b1434395f852cee38f54106271"],["/react/build/static/js/77.3f17e893.chunk.js","2baf5c78d0f2d35d341f5f5cf8ad85de"],["/react/build/static/js/78.bad755d6.chunk.js","c511f46483ea6ce51bb6c4ed7ff76212"],["/react/build/static/js/79.561c2f0b.chunk.js","a00310d004be24df2b6b65cb49e0908d"],["/react/build/static/js/8.eccc3ccc.chunk.js","8c62879652332275cb077acf57dd77cd"],["/react/build/static/js/8.eccc3ccc.chunk.js.LICENSE.txt","389e142e8c238054d4afdd18f2290222"],["/react/build/static/js/80.fb4e5e1f.chunk.js","4cdb01df297b49b7a075bd234d579663"],["/react/build/static/js/81.0139a526.chunk.js","601f628c974aae06bee7231db223fcc8"],["/react/build/static/js/82.583a22f6.chunk.js","6e5da49e33c60887920a4c9d492144eb"],["/react/build/static/js/83.70e6957b.chunk.js","8f55bc5b96a036e353c80d1460afb7a8"],["/react/build/static/js/84.ec8f5250.chunk.js","eadc03cf8ed2340aa08d416b5c1b8fc6"],["/react/build/static/js/85.9ea56489.chunk.js","1d3fc4a14fe6ad2cf30d9b3657e432c3"],["/react/build/static/js/86.8766a414.chunk.js","906ad45478eb3abedd8b630ec93a5749"],["/react/build/static/js/87.407dd9d9.chunk.js","a40fcda53af7ee0ff9aad5d22c8b5439"],["/react/build/static/js/88.eb91d2f8.chunk.js","3c6db1234c0b41e97ccecd5f5783292d"],["/react/build/static/js/89.2c1760f4.chunk.js","6b0c0328712474a4419171e6108a66a9"],["/react/build/static/js/9.350602ff.chunk.js","02756cf5e4714a125180d7a2337c58b0"],["/react/build/static/js/90.4fb53141.chunk.js","10bf06b2694f53a29aa3b383dd0df0fb"],["/react/build/static/js/91.301e4aa2.chunk.js","999cec7224f0d481712ab7a1fde4bd84"],["/react/build/static/js/92.6e473148.chunk.js","ad0199626ab2d3b25cecbf1ccc1d1aa9"],["/react/build/static/js/93.2fc023f6.chunk.js","8f808aa0eb68995cbbbf0560d6401682"],["/react/build/static/js/94.edc70396.chunk.js","33c88f40d236d0ddaba7f3d20eed18e0"],["/react/build/static/js/95.5202c85e.chunk.js","8ad27048d7a0381aa96ac3574319596c"],["/react/build/static/js/96.20303b0f.chunk.js","49b422c79b6ed946482518a4248a1363"],["/react/build/static/js/97.901d4013.chunk.js","d39650ebb07b2c2fc61f650cf4f5939c"],["/react/build/static/js/98.560055cd.chunk.js","329b54ae68d334d022965997ec2073d0"],["/react/build/static/js/99.8733d82e.chunk.js","b88526e36a14537c3dd8dbe950cc8b7b"],["/react/build/static/js/main.161e032b.chunk.js.LICENSE.txt","4a465b278efdc70f65ecf4ebb0784d77"],["/react/build/static/js/runtime~main.228c3127.js","cc68bedf6280ec6f26c32868ada2877f"],["/react/build/static/media/2-1bg.d22a63b9.png","ba2b4a272d5ca00d9400b4cd1fd573d6"],["/react/build/static/media/2-2-1.afd0f2f5.png","63de0e927282052b4b7a3a4a4e06c004"],["/react/build/static/media/2-2-2.26bc3301.png","09350b2fc63799fbbbed880ee86c54dc"],["/react/build/static/media/2-2-3.6d6ce99c.png","04c46e92f6c6dbc3f354c7d12f41efdf"],["/react/build/static/media/2-2-head.5e69dbb2.png","1ed02c446d34cd67de8d1685ffd16181"],["/react/build/static/media/2-3-1.bcb33d47.png","6309aee1c5b0f1906cf8224c70a2954d"],["/react/build/static/media/2-3-2.57ef08ae.png","13d71726e3c0f7ba20318b57eece054f"],["/react/build/static/media/2-3-3.52733627.png","284814681a0af3e1c41bf547a189de86"],["/react/build/static/media/2-3-4.339b2f1c.png","9ec275ef1b19daa2a2194674dfb106ad"],["/react/build/static/media/2-3bg.deef1b07.png","5b8e2e8dd995ea94a13247eb5ed7ca9e"],["/react/build/static/media/2-4-1.802eb322.png","d3950f1555e0210dd70a374600f83aae"],["/react/build/static/media/2-4bg.45478d20.png","f28c71d7b533b10dc5c1c33ddc7e028d"],["/react/build/static/media/2-5bg.9cca3de1.png","7d7c0003e780841147d31243f7c305ad"],["/react/build/static/media/2-6-1.302b729e.png","cd88cc40364a0dacde3fa5af91cb8407"],["/react/build/static/media/2-6-2.b262b91e.png","50b143930101e1b295683ba0099f9ab9"],["/react/build/static/media/3-1.9fdda521.png","f6add2be652f2989e8b5c8ebc319f44d"],["/react/build/static/media/3-2.47050941.png","b3ad137b32270db1b9fc4aa08c8e0451"],["/react/build/static/media/3-3.c767aae7.png","5d79fb69eee45493a7555b6414c739c0"],["/react/build/static/media/3-4.92820cbc.png","5d26624685fca97de2721a718a5209eb"],["/react/build/static/media/3-bg.4f22fe34.png","28b762cb9f96c8122b700f54e3c914b4"],["/react/build/static/media/34@2x.ed8e5910.png","174665edd0ab7f03fa9e60353417cbaa"],["/react/build/static/media/35@2x.33462edc.png","8cfe5ce0a0d51e3b6d9af2a5ccb2784a"],["/react/build/static/media/36@2x.8f54f5ba.png","0dd97091f3e6be410d8d5ef8df634ce8"],["/react/build/static/media/37@2x.97a40a2a.png","54b6a5ad4cdecb5d722bb1509e5e0216"],["/react/build/static/media/38@2x.f072fe68.png","e890bdfa45d996910aad3597b0a24c09"],["/react/build/static/media/39@2x.ee1af05a.png","cef1223f2f0ce7cc451c982e2f7dc6dd"],["/react/build/static/media/4-1.79fa159d.png","2bea356c9736a2f3787b03d69b72c733"],["/react/build/static/media/4-2.9c066e75.png","88eada7dcd52a5d211ee86aacd523616"],["/react/build/static/media/4-3.a1487a5b.png","da4afd909ef92b84e7a90043e96504d1"],["/react/build/static/media/4-4.5eb40734.png","d3f20f10c4de4cf438ac376516763db9"],["/react/build/static/media/4-bg.214b12ef.png","bb353b3cf7d527c4c052a5462e5f2209"],["/react/build/static/media/40@2x.f10a55e2.png","603a7113eda7af6d3d908b8b7bed4e1a"],["/react/build/static/media/42@2x.25d6b5fd.png","b17ffff59b4673910f125e208e448757"],["/react/build/static/media/44@2x.1374baf9.png","0f150a0e7cf098056300667f82d986f4"],["/react/build/static/media/46@2x.e272d43e.png","06d55da5cb08016c1d1561e111e41c29"],["/react/build/static/media/48@2x.3bde4de9.png","46fe84acf4e9b0c974d28785a76d416d"],["/react/build/static/media/49.b03e6efe.png","b084f468520ae3ea313839228035ed41"],["/react/build/static/media/50@2x.69b76634.png","59d8c56b75d5833bcaa4ca40c24e0282"],["/react/build/static/media/52@2x.41805cbb.png","9e64828acb8840429063f19df28f6262"],["/react/build/static/media/55@2x.83486b73.png","1f3a3cec5959e66b7e32acb3974c30b2"],["/react/build/static/media/57@2x.8dc6b0b8.png","e9e9efcca4a99b81aeaa2b3d5f3d8149"],["/react/build/static/media/59@2x.b0884ef0.png","076b0a99ff2dfa32cf88da927fd5bdde"],["/react/build/static/media/61@2x.99d3cc3e.png","0899a86bb440717a21f3692383ebf49d"],["/react/build/static/media/63@2x.49f389b9.png","74d7a6b844adc2bac1f21d47f3878a78"],["/react/build/static/media/65@2x.ef33e2f9.png","82a58ddca2302ee7b12b0c38b8df9a4b"],["/react/build/static/media/67@2x.4a4f4b6c.png","7f37bcee2e2be94ddef7ef4feaf6b8a9"],["/react/build/static/media/69@2x.379c6a82.png","b0fbdb5e689fc6ac05bc029ed150c556"],["/react/build/static/media/BJHKHT.f065403a.png","7e59d4b496c81f75d5c11c5166f030a4"],["/react/build/static/media/CEC.3b748059.png","064eea41dfa53645eb0134012b9e7f2e"],["/react/build/static/media/GFKJ.eb30c414.png","a60603b90e7b35d31753400f56be7770"],["/react/build/static/media/HSKY.2e76ba44.png","390849e1165e584772959baecaafb55b"],["/react/build/static/media/ISCAS.851fcfda.png","6a2b57a38c79d3c48a5aa238a113d165"],["/react/build/static/media/KYRJLM.2d659e5c.png","8d92960a37abe7deb48e25b7ea72a2e5"],["/react/build/static/media/KaTeX_AMS-Regular.b1489df1.woff","7f06b4e30317f784d61d26686aed0ab2"],["/react/build/static/media/KaTeX_AMS-Regular.d4531cf7.woff2","e78e28b4834954df047e4925e9dbf354"],["/react/build/static/media/KaTeX_AMS-Regular.f80d9eaf.ttf","aaf4eee9fba9907d61c3935e0b6a54ae"],["/react/build/static/media/KaTeX_Caligraphic-Bold.0c96bc8f.ttf","021dd4dc61ee5f5cdf315f43b48c094b"],["/react/build/static/media/KaTeX_Caligraphic-Bold.7ce7636b.woff","1e802ca9dedc4ed4e3c6f645e4316128"],["/react/build/static/media/KaTeX_Caligraphic-Bold.f046a374.woff2","4ec58befa687e9752c3c91cd9bcf1bcb"],["/react/build/static/media/KaTeX_Caligraphic-Regular.35f3c951.ttf","d49f2d55ce4f40f982d8ba63d746fbf9"],["/react/build/static/media/KaTeX_Caligraphic-Regular.4519ba4c.woff2","7edb53b6693d75b8a2232481eea1a52c"],["/react/build/static/media/KaTeX_Caligraphic-Regular.4a559f36.woff","d3b46c3a530116933081d9d74e3e9fe8"],["/react/build/static/media/KaTeX_Fraktur-Bold.069514d4.ttf","a31e7cba7b7221ebf1a2ae545fb306b2"],["/react/build/static/media/KaTeX_Fraktur-Bold.2ea3916b.woff","c4c8cab7d5be97b2bb283e531c077355"],["/react/build/static/media/KaTeX_Fraktur-Bold.5b8749ee.woff2","d5b59ec9764e10f4a82369ae29f3ac58"],["/react/build/static/media/KaTeX_Fraktur-Regular.0d90113d.woff","b7d9c46bff5d51da6209e355cc4a235d"],["/react/build/static/media/KaTeX_Fraktur-Regular.2c629b06.woff2","32a5339eb809f381a7357ba56f82aab3"],["/react/build/static/media/KaTeX_Fraktur-Regular.96556db6.ttf","a48dad4f58c82e38a10da0ceebb86370"],["/react/build/static/media/KaTeX_Main-Bold.07e762d0.ttf","9ceff51b3cb7ce6eb4e8efa8163a1472"],["/react/build/static/media/KaTeX_Main-Bold.20b90c20.woff2","8e1e01c4b1207c0a383d9a2b4f86e637"],["/react/build/static/media/KaTeX_Main-Bold.a9cdbc85.woff","22086eb5d97009c3e99bcc1d16ce6865"],["/react/build/static/media/KaTeX_Main-BoldItalic.7649d52f.woff","4c57dbc44bfff1fdf08a59cf556fdab3"],["/react/build/static/media/KaTeX_Main-BoldItalic.b345de5b.woff2","284a17fe5baf72ff8217d4c7e70c0f82"],["/react/build/static/media/KaTeX_Main-BoldItalic.bc8d96e9.ttf","e8b44b990516dab7937bf240fde8b46a"],["/react/build/static/media/KaTeX_Main-Italic.44a32ae6.ttf","29c86397e75cdcb3135af8295f1c2e28"],["/react/build/static/media/KaTeX_Main-Italic.ab751a9e.woff2","e533d5a2506cf053cd671b335ec04dde"],["/react/build/static/media/KaTeX_Main-Italic.e3954fe9.woff","99be0e10c38cd42466e6fe1665ef9536"],["/react/build/static/media/KaTeX_Main-Regular.13b3f852.woff2","5c734d78610fa35282f3379f866707f2"],["/react/build/static/media/KaTeX_Main-Regular.9e75cd60.woff","b741441f6d71014d0453ca3ebc884dd4"],["/react/build/static/media/KaTeX_Main-Regular.af7fc7b3.ttf","5c94aef490324b0925dbe5f643e8fd04"],["/react/build/static/media/KaTeX_Math-BoldItalic.4d6241be.ttf","9a2834a9ff8ab411153571e0e55ac693"],["/react/build/static/media/KaTeX_Math-BoldItalic.94810ff6.woff","b13731ef4e2bfc3d8d859271e39550fc"],["/react/build/static/media/KaTeX_Math-BoldItalic.d5d35e84.woff2","d747bd1e7a6a43864285edd73dcde253"],["/react/build/static/media/KaTeX_Math-Italic.11278d36.woff","f0303906c2a67ac63bf1e8ccd638a89e"],["/react/build/static/media/KaTeX_Math-Italic.cae7ea26.ttf","291e76b8871b84560701bd29f9d1dcc7"],["/react/build/static/media/KaTeX_Math-Italic.ffda8803.woff2","4ad08b826b8065e1eab85324d726538c"],["/react/build/static/media/KaTeX_SansSerif-Bold.2946bdb5.woff","3fb419559955e3ce75619f1a5e8c6c84"],["/react/build/static/media/KaTeX_SansSerif-Bold.5a20a475.woff2","6e0830bee40435e72165345e0682fbfc"],["/react/build/static/media/KaTeX_SansSerif-Bold.f0ad0abc.ttf","7dc027cba9f7b11ec92af4a311372a85"],["/react/build/static/media/KaTeX_SansSerif-Italic.c7feacd5.ttf","4059868e460d2d2e6be18e180d20c43d"],["/react/build/static/media/KaTeX_SansSerif-Italic.c834ba6d.woff","727a9b0d97d72d2fc0228fe4e07fb4d8"],["/react/build/static/media/KaTeX_SansSerif-Italic.e5fc2aef.woff2","fba01c9c6fb2866a0f95bcacb2c187a5"],["/react/build/static/media/KaTeX_SansSerif-Regular.5af9e1cf.ttf","5c58d168c0b66d2c32234a6718e74dfb"],["/react/build/static/media/KaTeX_SansSerif-Regular.5bf28900.woff2","d929cd671b19f0cfea55b6200fb47461"],["/react/build/static/media/KaTeX_SansSerif-Regular.a4fd0563.woff","2555754a67062cac3a0913b715ab982f"],["/react/build/static/media/KaTeX_Script-Regular.a1c15978.woff2","755e2491f13b5269f0afd5a56f7aa692"],["/react/build/static/media/KaTeX_Script-Regular.cd3b0634.woff","d524c9a5b62a17f98f4a97af37fea735"],["/react/build/static/media/KaTeX_Script-Regular.dd0db7ae.ttf","d12ea9efb375f9dc331f562e69892638"],["/react/build/static/media/KaTeX_Size1-Regular.1876361f.woff2","048c39cba4dfb0460682a45e84548e4b"],["/react/build/static/media/KaTeX_Size1-Regular.bbd9552c.ttf","7342d45b052c3a2abc21049959fbab7f"],["/react/build/static/media/KaTeX_Size1-Regular.c4ae0d25.woff","08b5f00e7140f7a10e62c8e2484dfa5a"],["/react/build/static/media/KaTeX_Size2-Regular.635e9324.woff","af24b0e4b7e52656ca77914695c99930"],["/react/build/static/media/KaTeX_Size2-Regular.d1e8ff17.ttf","eb130dcc661de766c999c60ba1525a88"],["/react/build/static/media/KaTeX_Size2-Regular.f516b73c.woff2","81d6b8d5ca77d63d5033d6991549a659"],["/react/build/static/media/KaTeX_Size3-Regular.1ef7adae.woff2","b311ca09df2c89a10fbb914b5a053805"],["/react/build/static/media/KaTeX_Size3-Regular.5d632274.ttf","7e02a40c41e52dc3b2b6b197bbdf05ea"],["/react/build/static/media/KaTeX_Size3-Regular.f32a9fde.woff","0d8926405d832a4b065e516bd385d812"],["/react/build/static/media/KaTeX_Size4-Regular.1d132596.ttf","ad7672524b64b730dfd176140a8945cb"],["/react/build/static/media/KaTeX_Size4-Regular.4f012d6a.woff2","6a3255dfc1ba41c46e7e807f8ab16c49"],["/react/build/static/media/KaTeX_Size4-Regular.f668d566.woff","68895bb880a61a7fc019dbfaa5121bb4"],["/react/build/static/media/KaTeX_Typewriter-Regular.4f31d033.woff2","6cc31ea5c223c88705a13727a71417fa"],["/react/build/static/media/KaTeX_Typewriter-Regular.b1d1af1a.ttf","257023560753aeb0b89b7e434d3da17f"],["/react/build/static/media/KaTeX_Typewriter-Regular.d3c8e68f.woff","3fe216d2a5f736c560cde71984554b64"],["/react/build/static/media/LC.f247fdb8.png","3e02cbcebad7837bf48da07b33a10bf5"],["/react/build/static/media/LSLM.99387946.png","41c202edbdb8a04e0cff8dca05fcc3de"],["/react/build/static/media/ML.08d278e2.png","9f958c18dbce14eafeed88a2fff5ec30"],["/react/build/static/media/NJDX.bb34b326.png","48e32a4eb948d5d618f7234210cd111d"],["/react/build/static/media/QH.b57a0131.png","45efbad10af2600ac575f17c7f1c6f25"],["/react/build/static/media/SHJT.426bf0c7.png","93cf5b16ef9208cb5bf1da99eebde8fb"],["/react/build/static/media/TX.b703476c.png","47cf36954b1fbb684e346d72dd890b14"],["/react/build/static/media/WXYJY.21e40191.png","e080df4c7b430301c9f741d432afa8ad"],["/react/build/static/media/XH.a0a88f17.png","a621d3a4f230af8107e727f60ed4c8f0"],["/react/build/static/media/XJY.b4c57bf1.png","e41c17ce768fcf94a03339a71c30d6f3"],["/react/build/static/media/YKD.4f7e2766.png","fa37d44fd25bcf449ec35efe68de61c5"],["/react/build/static/media/ZC.ad056aa5.png","c51f75c3c4c469809acda5c394c02adf"],["/react/build/static/media/achievements.f20b7e39.png","6a9f5aef5cc32d04d0a7a2f7acc38b11"],["/react/build/static/media/award-bg.f71628f1.png","c5dd065eaa235efd1c330b41d27f3370"],["/react/build/static/media/award-tit.4c48185a.png","5dec871e9bf24ad08589bf24da7d56c9"],["/react/build/static/media/ball.24214b6e.png","4600b466befba451dd38df26879cf299"],["/react/build/static/media/banner-interim.c50ff667.png","afee978cdb229c29525a3b28d3f411a2"],["/react/build/static/media/banner.40f1ff0c.png","196a855ae4a95a04943211925b34b83b"],["/react/build/static/media/banner.598a8076.png","1e538e70165e458ca1662f937d1264dd"],["/react/build/static/media/banner.84187e6e.png","ecf9fdcd304fa1e37310d49755e2f009"],["/react/build/static/media/banner.c3c2eb57.png","917f62f518c37b814260765ba69918e3"],["/react/build/static/media/banner.f7da2db1.png","23523c6657f4a1abe198837d0316a162"],["/react/build/static/media/banner_list.e02c5e16.jpg","bc53dcd5b0731ce2ac28c3ea02a01c97"],["/react/build/static/media/beijing.bfcd5b0e.png","518931a330ddf9dd7348d702c82c033c"],["/react/build/static/media/bg.29bcbc89.png","b94abc65627e9b2908f39eb0eee370bf"],["/react/build/static/media/bg.401bf2cf.png","228280fae26c66cbfd718f680d16ce7f"],["/react/build/static/media/bg.9688532b.png","c1f86769f7e46442052e59452f01f9d9"],["/react/build/static/media/bg.a51f2ffd.png","10085e3dfd86fd912dd2df5855fdd7b0"],["/react/build/static/media/bg1.8fea5c5f.png","9908ca0a39c6288aeb6e6753c95f7ca6"],["/react/build/static/media/bgPng.ed010245.png","9c63690dae3e5e96cc49a08ff24cf230"],["/react/build/static/media/botOneBg.4fb56df5.png","674a61ccd29c392bed8827e1772f534c"],["/react/build/static/media/box.548a8c8b.png","d86432e2f3b9c9e605b14855d40c4c1f"],["/react/build/static/media/ccf_logo.a54fdc70.png","99678a58665cdb049736919636983ee3"],["/react/build/static/media/ccf_logo1.be10ead7.png","e2e6fef345151e132fdcce161cc87525"],["/react/build/static/media/check_tabs.dc02b037.png","3cd1dc6de8c94ea0b139f837fc00abdf"],["/react/build/static/media/codeafter.c3088c74.png","49ed3ae6c715b4f312f9a4af582ef2a8"],["/react/build/static/media/computer.4fe86b12.png","902233a9dd36c8a274324382e7f693b3"],["/react/build/static/media/contact_bg.ad2cf7be.png","be9e8358ae98671c686db10d24a2a81b"],["/react/build/static/media/detectionBG.6759a755.png","a8244f19972a05a30815da7c25d5abd1"],["/react/build/static/media/devops.39983f5b.png","6fab3d0ca745ca5b57c7923030ff0db7"],["/react/build/static/media/earth.050b1435.png","bdc488cfc8356fbe92e2c5e85f38d3a9"],["/react/build/static/media/emp.35f6c709.png","ab4edd69519dcd864dae83950032e73f"],["/react/build/static/media/fun1.c99ffa49.png","0821dbab48751cec64b2bb3c795796ef"],["/react/build/static/media/fun2.12f22bca.png","54a5d7faf4b9ddb2e82d7b5207089a6c"],["/react/build/static/media/fun3.75c280e6.png","5c69ce2307b9e074af5ce82d88ef8582"],["/react/build/static/media/fun4.f499794e.png","253ae97d5ce8d7de5fd987d0ac9cc51b"],["/react/build/static/media/fun5.96b44942.png","e8afdfd77e8ea57ed9945cde3bcf7b98"],["/react/build/static/media/funBg.410c4305.png","d6f1410497fc1f2ed6acdbc525857fc6"],["/react/build/static/media/funBg3.d1c7d094.png","3e38083b0ae65fdcb3e237ee1caa0e6f"],["/react/build/static/media/funBg4.68c5f49e.png","4387caf6448bde780eccac5072aba145"],["/react/build/static/media/gitee1.0c13ef7b.svg","e901b31c05db2687384f2ec438d8102a"],["/react/build/static/media/github2.7d5cc0ba.svg","14ac06d35d1de63b1d0cb69d347510c8"],["/react/build/static/media/gitlink1.4bf0ed96.png","74f1d8c84848fb0b81ee404552ef7427"],["/react/build/static/media/gitlink2.0ec0ec22.png","8f753495bab62a461ee0cb63eb0ee889"],["/react/build/static/media/head.52aa3fc8.png","3a5b86995f4e5b03deb387dd013e58b4"],["/react/build/static/media/help.0bfb2587.png","ed85504ae3ea434b5dca53dc3a666dea"],["/react/build/static/media/help_bg.d2bb4c18.png","4558c0fafe9b751957f47d510d3faf92"],["/react/build/static/media/huake.63b6a34d.png","adbad39e4b3344c8dac6fa02807eb9e5"],["/react/build/static/media/huawei.73ec7c22.png","64d20728102a750c9ce500eb424f1de5"],["/react/build/static/media/ideLogo.0dca8d76.svg","42d6121571a45e6466dc8151da3ee900"],["/react/build/static/media/image20.31c2c65b.svg","e460558d48a47bfda068f0fbae063204"],["/react/build/static/media/image21.01d0caf7.svg","e5f5f0c37759e488a96306eea799569a"],["/react/build/static/media/image22.d4d77f6c.svg","1abe104b8da60da858be6b21f2d0c62a"],["/react/build/static/media/img1.8560258f.png","1a039a78776399d0eee98e6ad7a07ce5"],["/react/build/static/media/img1.e0beda57.png","37963219e6ca5c4144ba62693c52c31f"],["/react/build/static/media/img1.fc155528.png","2aa17810adc47741e9f26238cbe7dba7"],["/react/build/static/media/img10.64149a3d.png","44f29fca2b72ab9726d3413cd75c763e"],["/react/build/static/media/img15.87a3556c.png","caf5daf4b8834cf0c40a93f32616e2f6"],["/react/build/static/media/img16.32badab9.png","e20c519658bc608e7b432ea7557cf618"],["/react/build/static/media/img17.c25d5edc.png","2b82779b3b1f36aa80495153b68f3d3a"],["/react/build/static/media/img18.4963efc1.png","df5029d95eef15daf5a7326e88399d6d"],["/react/build/static/media/img2.789fbbfe.png","f7ef7805e3cd8e94a431def695bd886d"],["/react/build/static/media/img2.ae303051.png","51bd149911e029ebf15ad8838b05c674"],["/react/build/static/media/img3.cee3ac5b.png","eafb9519b0ba2dd31e768fa8c751ea49"],["/react/build/static/media/img4.53c937cb.png","d79d2611f2cfbc03316fff2204ba0b90"],["/react/build/static/media/img5.ca3a2287.png","a55ff2eecc025d68b5f7a6f1f8a9ed85"],["/react/build/static/media/img6.8f81bf78.png","f64772292e6a90fc1da0dbdca501cd11"],["/react/build/static/media/img7.e4a68e6e.png","4c472d65efdbd4517ada8ee751228890"],["/react/build/static/media/img8.10500e00.png","aea38e49166c86c63b177f3145a0b064"],["/react/build/static/media/img9.d25372ba.png","aa259ddd863027c59146b33666f57c2c"],["/react/build/static/media/introduce.30b50cda.png","b3ccb50edadf6c46d3b4bbe1c0dc4eb5"],["/react/build/static/media/jijinhui.041fb524.png","827c1f894afb783870599d02cb5c4c3f"],["/react/build/static/media/joinUs.26ec28cd.png","9cd5fee199af626730ee25a37f118eb3"],["/react/build/static/media/lightspot-bg.87ad53a9.png","d0ab18b0b4f74eab6b2bfe3aa3a2b88c"],["/react/build/static/media/lightspot1.9214f0ae.png","ac3bd597543bcfb1a17a039b9f955c50"],["/react/build/static/media/lightspot2.b7053786.png","5d91f7f67c0f69fb68d40416c15dc9eb"],["/react/build/static/media/lightspot3.2f8af8da.png","b6a4577e53a6ca085671ffd9a8b62ce0"],["/react/build/static/media/lightspot4.93769763.png","f9f2f6654b165d72d9780e101e19e845"],["/react/build/static/media/loginBg.1cddcbff.png","86ec58b9f8f3f50140770546cf840257"],["/react/build/static/media/logo.62af9fee.png","bdb086d84a720bfb0c7a3bef50cc6422"],["/react/build/static/media/logo.f0d4927b.svg","9ee4b6d239cf05d9118b4a863ca4bfa3"],["/react/build/static/media/logo1.77949f0b.png","c55c1cd504df9c1e180610117d52b26c"],["/react/build/static/media/logo1.ec3c2e67.png","1b63bf1709328011dd17013bd4999fd3"],["/react/build/static/media/logo2.b04c07f2.png","82f448805e0380b391c77943d02b1d46"],["/react/build/static/media/mulan.690d2289.png","b9d8b87a75927dc097d45280c2ca0f4b"],["/react/build/static/media/newIcon.6ce5faf2.svg","47650e72fa1a06001e80def6f101b6af"],["/react/build/static/media/news-item.c2aef644.png","fd090d94d0fe94b8f12a9e68ac872c4d"],["/react/build/static/media/news-main.731a5143.png","40d592ac03be023dd1fd67a60a97df57"],["/react/build/static/media/news-main1.d438d3c7.png","f9c1445528c719c33464b6b9d5be8883"],["/react/build/static/media/nodata.298b1c41.png","e2c9a76d2b30ac889eab422a36851b15"],["/react/build/static/media/nps1.b2849b06.png","a22d69867a2d0871e69fe18ceb7a8201"],["/react/build/static/media/nps2.d5d0b666.png","9b14ce3c332a63d95d62716030398ee3"],["/react/build/static/media/partner_bg.88388216.png","eac2e2ad3b1a25d605ed746409b530ef"],["/react/build/static/media/personalInfo1.13c2500e.png","813da468a7e7472edbdf3de5516049f3"],["/react/build/static/media/personalInfo2.f01447c8.png","5176f62523dc034a2977c61065b2e101"],["/react/build/static/media/phone.8973db9e.svg","ac92ccc6336d53cf0e5d53a386eadd78"],["/react/build/static/media/projectBg.774764d7.png","916780acccd06591f270420affece47c"],["/react/build/static/media/projectDetailTaskBg.66b1fb2d.png","161c7fee542a59bdf4cb8a5a94086831"],["/react/build/static/media/qqChat.9e56cc22.png","fc97e294a452fcfae783dc73d1f24ff6"],["/react/build/static/media/registerBg.e14e89f4.png","5ca168f423644e195c7fe270cc728873"],["/react/build/static/media/resetPasswordBg.df9a6167.png","13b9a18d3a09d34b1320713d38fbd04f"],["/react/build/static/media/resultBanner.152068bc.png","f94f4227d3825fa32615af9bf12b45f9"],["/react/build/static/media/resultBanner2.c3095c5d.png","e7a33f637c22dbd6e7703ab7c56cf9aa"],["/react/build/static/media/resultBanner3.e11193de.png","2d21f1a2ad794f632b733ab4ba3ed4aa"],["/react/build/static/media/rightBg.55f14f0c.png","f38c59f756ada99c3eafd76ab2333925"],["/react/build/static/media/sexange.b3665539.png","fe580c3386c0dac7aa9480dbe1c26b9d"],["/react/build/static/media/slick.2630a3e3.svg","f97e3bbf73254b0112091d0192f17aec"],["/react/build/static/media/slick.29518378.woff","b7c9e1e479de3b53f1e4e30ebac2403a"],["/react/build/static/media/slick.a4e97f5a.eot","ced611daf7709cc778da928fec876475"],["/react/build/static/media/slick.c94f7671.ttf","d41f55a78e6f49a5512878df1737e58a"],["/react/build/static/media/softDetailHeadBg.b2bae10a.png","6b1379c5abf77af7fecbabb1368f1d96"],["/react/build/static/media/sponsor11.5e9da48d.png","0cc78d9e2df9b816f79923244d807999"],["/react/build/static/media/sponsor21.8a655acc.png","86d7c2304bf3f60d923bdc6f25951f33"],["/react/build/static/media/sponsor22.96e2b643.png","c26b18460bdc7959b7baddc5bf8e9a8c"],["/react/build/static/media/sponsor31.0fd95bcb.png","099a8680be13f97915df39f8247fe2d9"],["/react/build/static/media/sponsor33.27be3b2d.png","11f04aa6ba51b6ba1ae2e09cdabaff8e"],["/react/build/static/media/studentProject.cd6d6c4f.png","b09a0e1f08910aac316f2aeed243fb76"],["/react/build/static/media/subtitle.5019e086.png","b2d9c74c02d4de483f79085596d0064b"],["/react/build/static/media/tab.12ed44f1.png","581200ee4543ddb99f2eeb0c6df7d4f6"],["/react/build/static/media/tabBackground.18febe91.png","d55a8d32e7d0303ebf04cf4ff42b470a"],["/react/build/static/media/taskbar.49a40f3a.png","80443aacad0a26162d838d4f71af128a"],["/react/build/static/media/teacher-img.e0e2a9bf.png","dae1295a05fabc82382c0116d8f3e5c8"],["/react/build/static/media/teacher1.ee492a9b.png","b995335297dd994485a4855aea43ff27"],["/react/build/static/media/teacher10.9298db29.png","b081bd10fc70f320e0f4448fd1c69da6"],["/react/build/static/media/teacher11.8a0d8669.png","3a3db3db638f5426e7bda4bef24a2484"],["/react/build/static/media/teacher12.47e02224.png","0635d72f566d9365bda9d8d88d80defd"],["/react/build/static/media/teacher13.f7886e36.png","f903bba276231fd009dfa6fc32c8b1b6"],["/react/build/static/media/teacher14.83b48396.png","5b3290eacd871568046c9b5591591d7b"],["/react/build/static/media/teacher15.5d777604.png","2e7eb1c34f389f025d84e13c54ca8297"],["/react/build/static/media/teacher2.b2b9919d.png","7279b7ba87a86ca7d46dfa6d0c9df088"],["/react/build/static/media/teacher3.20cb800b.png","e8277cbe9f532bccc0266be07afb402b"],["/react/build/static/media/teacher4.c15a0bda.png","9a0016c1a46ce39fa8e415bcd9ae72b4"],["/react/build/static/media/teacher5.9397d078.png","51a49c0ea258d928438153cfbd399be4"],["/react/build/static/media/teacher6.06b6f465.png","f1b92d0ac115f75b438f05a31fd0b551"],["/react/build/static/media/teacher7.4102dcc1.png","6e4e9fff991f8cc1f88479706ab55a37"],["/react/build/static/media/teacher8.5d3f117e.png","be6bfe0c206b2089065b0313c07e7eb0"],["/react/build/static/media/teacher9.69b0adae.png","e0666a81294a17768829744aa117ea24"],["/react/build/static/media/time-bg.f61a7e5f.png","ebb56fbe31fc6fc51fb81da23fdfcdf8"],["/react/build/static/media/top-1.54a95b91.png","3d2bbe827191450fb82fc04b7ba925c9"],["/react/build/static/media/top-2.2a21b300.png","7cddde07beac784e8edd065bf3c5f4e2"],["/react/build/static/media/top-3.48ab81a2.png","702e62391cc8148d3f6f405720527121"],["/react/build/static/media/top-bg.7b89cf7e.png","1cf27750ff50673346a49beeab0c3bb9"],["/react/build/static/media/typebg.b2b0ea32.png","c02c413fdc8fbcb9bd4a042ff9f0ea5a"],["/react/build/static/media/xigongye.d51231d3.png","751514079a6e7d1cfd19af4527749e53"],["/react/build/static/media/xiuos.67682257.png","6fd484b0615e89cb2a2fcde1e6e261a1"],["/react/build/static/media/xjy.6e62f4d6.png","6542ba49c3e8515e8cada3f15f7ab094"],["/react/build/static/media/浙江大学.3c545e69.png","b305afeded0784578319d459a6d71cc7"],["/react/build/ts.worker.js.LICENSE.txt","27424a6e40c70ed4c68b96c0215841f1"]],cacheName="sw-precache-v3-sw-precache-webpack-plugin-"+(self.registration?self.registration.scope:""),ignoreUrlParametersMatching=[/^utm_/],addDirectoryIndex=function(c,a){c=new URL(c);return"/"===c.pathname.slice(-1)&&(c.pathname+=a),c.toString()},cleanResponse=function(a){return a.redirected?("body"in a?Promise.resolve(a.body):a.blob()).then(function(c){return new Response(c,{headers:a.headers,status:a.status,statusText:a.statusText})}):Promise.resolve(a)},createCacheKey=function(c,a,e,d){c=new URL(c);return d&&c.pathname.match(d)||(c.search+=(c.search?"&":"")+encodeURIComponent(a)+"="+encodeURIComponent(e)),c.toString()},isPathWhitelisted=function(c,a){if(0===c.length)return!0;var e=new URL(a).pathname;return c.some(function(c){return e.match(c)})},stripIgnoredUrlParameters=function(c,e){c=new URL(c);return c.hash="",c.search=c.search.slice(1).split("&").map(function(c){return c.split("=")}).filter(function(a){return e.every(function(c){return!c.test(a[0])})}).map(function(c){return c.join("=")}).join("&"),c.toString()},hashParamName="_sw-precache",urlsToCacheKeys=new Map(precacheConfig.map(function(c){var a=c[0],c=c[1],a=new URL(a,self.location),c=createCacheKey(a,hashParamName,c,/\.\w{8}\./);return[a.toString(),c]}));function setOfCachedUrls(c){return c.keys().then(function(c){return c.map(function(c){return c.url})}).then(function(c){return new Set(c)})}self.addEventListener("install",function(c){c.waitUntil(caches.open(cacheName).then(function(d){return setOfCachedUrls(d).then(function(e){return Promise.all(Array.from(urlsToCacheKeys.values()).map(function(a){if(!e.has(a)){var c=new Request(a,{credentials:"same-origin"});return fetch(c).then(function(c){if(!c.ok)throw new Error("Request for "+a+" returned a response with status "+c.status);return cleanResponse(c).then(function(c){return d.put(a,c)})})}}))})}).then(function(){return self.skipWaiting()}))}),self.addEventListener("activate",function(c){var e=new Set(urlsToCacheKeys.values());c.waitUntil(caches.open(cacheName).then(function(a){return a.keys().then(function(c){return Promise.all(c.map(function(c){if(!e.has(c.url))return a.delete(c)}))})}).then(function(){return self.clients.claim()}))}),self.addEventListener("fetch",function(a){var e,c,d;"GET"===a.request.method&&(e=stripIgnoredUrlParameters(a.request.url,ignoreUrlParametersMatching),d="index.html",(c=urlsToCacheKeys.has(e))||(e=addDirectoryIndex(e,d),c=urlsToCacheKeys.has(e)),d="/react/build/index.html",!c&&"navigate"===a.request.mode&&isPathWhitelisted(["^(?!\\/__).*"],a.request.url)&&(e=new URL(d,self.location).toString(),c=urlsToCacheKeys.has(e)),c&&a.respondWith(caches.open(cacheName).then(function(c){return c.match(urlsToCacheKeys.get(e)).then(function(c){if(c)return c;throw Error("The cached response that was expected is missing.")})}).catch(function(c){return console.warn('Couldn\'t serve response for "%s" from cache: %O',a.request.url,c),fetch(a.request)})))}); \ No newline at end of file +"use strict";var precacheConfig=[["/react/build/css.worker.js","8a6b96bc806b0753dfb68cd49935b45b"],["/react/build/editor.worker.js","28d7a4ffd9e954cd878c277b96a4d36a"],["/react/build/html.worker.js","4864df51f2b1f38ab67906fff9c6b367"],["/react/build/index.html","06027cfa4be7226608059485f62d37da"],["/react/build/json.worker.js","e193633b3f48dcd8cbb1a96b5b5b4719"],["/react/build/static/css/100.5ab3c82c.chunk.css","87b7c09bc9bd86d8562f94b5dc161d2d"],["/react/build/static/css/101.56158b92.chunk.css","8db41d890ee6bb6de851661591daf557"],["/react/build/static/css/102.53c7d49b.chunk.css","04461cc92a569076e0f012a8d67734e5"],["/react/build/static/css/103.59500253.chunk.css","08727dcc716788b9207e6965eabd0c8a"],["/react/build/static/css/104.3edde0c7.chunk.css","fdec91b854d997a2d04e3cab3c33a778"],["/react/build/static/css/105.78d24cb4.chunk.css","73dc1567cf66ea89cfa27454bc5a1571"],["/react/build/static/css/107.4054f41b.chunk.css","df7b038f8f1a0e16793b24bc950b9b22"],["/react/build/static/css/109.15253a67.chunk.css","cc03c8bd582e5fb3cf3cb57075905fe6"],["/react/build/static/css/110.1283d09d.chunk.css","98e6c38fc17dc5ba7981210181a8296f"],["/react/build/static/css/111.7998362a.chunk.css","bca1d7d24c7d1f1d482fb4b385159f08"],["/react/build/static/css/113.6b9ba3cb.chunk.css","450ecb015daa7d9179fefac0ad10879e"],["/react/build/static/css/114.fd083902.chunk.css","6f65bae71f11e62309c73d5b818f30f3"],["/react/build/static/css/115.77c696ba.chunk.css","5314e7f6ff601345e2cc90fc691e3729"],["/react/build/static/css/116.77c696ba.chunk.css","5314e7f6ff601345e2cc90fc691e3729"],["/react/build/static/css/118.fd3fa2e9.chunk.css","97c0f9c3d8d16c05584bec1ce645cda0"],["/react/build/static/css/12.3634cedd.chunk.css","5d39578b91b84e925bd702d0d56a0ea2"],["/react/build/static/css/120.9d206204.chunk.css","e363ea281af9e616a0d144154b88c8f8"],["/react/build/static/css/121.82ba8135.chunk.css","0acc1e50ec8c2e46063adff1b6974d7f"],["/react/build/static/css/122.f57601bb.chunk.css","2af360f0fa6ae40fae7b3fcb44b24126"],["/react/build/static/css/123.2646da34.chunk.css","fd35f6d45b8f2b74b2b2fc747da42787"],["/react/build/static/css/125.080d6958.chunk.css","d9b5ca9cb767438bb42a4167d8c9141b"],["/react/build/static/css/126.71fa167b.chunk.css","e0ae2d8af498e04d4b844ed54a567632"],["/react/build/static/css/129.f4d0dbc5.chunk.css","65ff755faaf716eed68dc683cf871379"],["/react/build/static/css/130.45b01965.chunk.css","77fa112f88ec292afdccc6b114817509"],["/react/build/static/css/133.9d206204.chunk.css","e363ea281af9e616a0d144154b88c8f8"],["/react/build/static/css/134.9d206204.chunk.css","e363ea281af9e616a0d144154b88c8f8"],["/react/build/static/css/135.cdd78914.chunk.css","c8fa03c8951406a0c6dedbc44275a66c"],["/react/build/static/css/136.142cff28.chunk.css","e2d1282e7d68f47cc9a754940877e251"],["/react/build/static/css/138.7b8a6eb0.chunk.css","e5a078261e06b47655db2e7181c7d7d6"],["/react/build/static/css/142.15253a67.chunk.css","cc03c8bd582e5fb3cf3cb57075905fe6"],["/react/build/static/css/143.8a2a0d50.chunk.css","3c152d150d71ca1d782cbce74e83545a"],["/react/build/static/css/146.adba6539.chunk.css","2a7331558acec08d91f6776ad403e5a1"],["/react/build/static/css/149.fd5c069f.chunk.css","dc736ebb1d70ad8f92c50296bc5c21c2"],["/react/build/static/css/150.cbc5dafa.chunk.css","0d00c4a2d6cc383c8b2a40a24378d281"],["/react/build/static/css/151.2f409942.chunk.css","6f1d0eaeed7a282caf0ce33adaef0898"],["/react/build/static/css/155.c0242127.chunk.css","3de2e94ba931d38eb377530c8ea1be89"],["/react/build/static/css/156.6bd3e203.chunk.css","faf2a11e1ff39b79b20c16f8dc422206"],["/react/build/static/css/157.c1dd3d9c.chunk.css","c5a389ca9beec021b082b8e1f62d7526"],["/react/build/static/css/158.f50a3cf0.chunk.css","22b88329969af9de3db1674e68f8d93c"],["/react/build/static/css/159.9df86194.chunk.css","dae2a89b8b4b9577d529ccdc67b2bd1b"],["/react/build/static/css/16.d00c3b40.chunk.css","8f0768612bc7511ef59e202eac390e94"],["/react/build/static/css/160.6b9ba3cb.chunk.css","450ecb015daa7d9179fefac0ad10879e"],["/react/build/static/css/161.f2060fe7.chunk.css","3dc3569f98f0d43324c3871cc5623426"],["/react/build/static/css/162.f9d1b577.chunk.css","f9b149d2ed650f6b4ec24b09d29f3e4e"],["/react/build/static/css/165.afe8c942.chunk.css","a3452dea4f6b7a262f3427f28351739a"],["/react/build/static/css/166.9d206204.chunk.css","e363ea281af9e616a0d144154b88c8f8"],["/react/build/static/css/18.77b6c67e.chunk.css","fe9f480ee5f65c9406ddf1bc3ea2b97e"],["/react/build/static/css/20.e9a6b828.chunk.css","78bde0953bda71d3e1aa88983d3058ee"],["/react/build/static/css/22.b974e0fe.chunk.css","21c7446e5eeade6c5a700477671eaa50"],["/react/build/static/css/29.79de1193.chunk.css","8cd34974bd4e6d29643ed7f0a50b5926"],["/react/build/static/css/31.80778523.chunk.css","3decda123858f1522565bb25c6371656"],["/react/build/static/css/32.f8d5bf59.chunk.css","32bc63ca28f6af2a0255140ebb882246"],["/react/build/static/css/34.83d1a87f.chunk.css","aeed16beaeef226bff61678e8c3cef12"],["/react/build/static/css/35.b8ba4177.chunk.css","4403e1c78e9b0e67ec30e52f69b91b81"],["/react/build/static/css/36.ffdf4f5b.chunk.css","8068e29b9ef9e8fc2ad441a3c67aa7b6"],["/react/build/static/css/37.078a4c60.chunk.css","cca4888f719bbe27332c8c7b7adf8b85"],["/react/build/static/css/38.350a3b73.chunk.css","37dce675a2709225c047150bb93768e2"],["/react/build/static/css/39.98146c40.chunk.css","a74a31166d5a23b14907921a272f7c5e"],["/react/build/static/css/41.695e8901.chunk.css","43cf49ebe25eb4ac18335b6f440db87d"],["/react/build/static/css/42.47cd6ad7.chunk.css","7e085ec117d7d0fcb9e1df5b16dfb0e2"],["/react/build/static/css/43.f5436beb.chunk.css","bfbbea8796cf846a28858a7e175da63e"],["/react/build/static/css/44.28662e9a.chunk.css","fe9f480ee5f65c9406ddf1bc3ea2b97e"],["/react/build/static/css/45.78a1ba5d.chunk.css","83a2ab1e5c6be84e927fda72b983d73e"],["/react/build/static/css/46.b96984b7.chunk.css","ad64c0eede853274fe7737a65d66d18b"],["/react/build/static/css/47.4bfee9b9.chunk.css","bf2ddeae5e3de9dd0c042ff3d22e9d78"],["/react/build/static/css/48.77b6c67e.chunk.css","fe9f480ee5f65c9406ddf1bc3ea2b97e"],["/react/build/static/css/49.77b6c67e.chunk.css","fe9f480ee5f65c9406ddf1bc3ea2b97e"],["/react/build/static/css/50.77b6c67e.chunk.css","fe9f480ee5f65c9406ddf1bc3ea2b97e"],["/react/build/static/css/51.77b6c67e.chunk.css","fe9f480ee5f65c9406ddf1bc3ea2b97e"],["/react/build/static/css/52.77b6c67e.chunk.css","fe9f480ee5f65c9406ddf1bc3ea2b97e"],["/react/build/static/css/53.77b6c67e.chunk.css","fe9f480ee5f65c9406ddf1bc3ea2b97e"],["/react/build/static/css/54.23e457c6.chunk.css","b7ea9928083ea35acce72ee289c77941"],["/react/build/static/css/55.77c696ba.chunk.css","5314e7f6ff601345e2cc90fc691e3729"],["/react/build/static/css/57.722d55e5.chunk.css","076b5016aa283a7814db746c8e3e4d0c"],["/react/build/static/css/58.fd3fa2e9.chunk.css","97c0f9c3d8d16c05584bec1ce645cda0"],["/react/build/static/css/59.f8ce57b7.chunk.css","d6d7a13f06f71440a953ce2798887469"],["/react/build/static/css/60.58e88442.chunk.css","4c607decefc5223e114b0c81b2a06a37"],["/react/build/static/css/61.deeb1b7c.chunk.css","b6e1fd2b19634acde723739bdf5e18b3"],["/react/build/static/css/62.94519a29.chunk.css","388dd0b31093c2366934f518e4fe5678"],["/react/build/static/css/63.6b9ba3cb.chunk.css","450ecb015daa7d9179fefac0ad10879e"],["/react/build/static/css/65.35b1feac.chunk.css","0b43c1534cd52029318ecc64bc16cd82"],["/react/build/static/css/66.4237b849.chunk.css","8ad4b4af55c33813134fec04080b8ca6"],["/react/build/static/css/67.98146c40.chunk.css","07951aa858a17bc48c660e2ffd24451d"],["/react/build/static/css/68.d4544d53.chunk.css","1fee3b4f3a1a11ed58c2c2f40ff08f58"],["/react/build/static/css/70.f61a22e7.chunk.css","a1d2c344617b8c90536aa0afbed3dad3"],["/react/build/static/css/72.98146c40.chunk.css","07951aa858a17bc48c660e2ffd24451d"],["/react/build/static/css/74.211cfcc2.chunk.css","ad77adccc863fd4f0b83a7e8235425ab"],["/react/build/static/css/75.6978aa87.chunk.css","8aa211784112df8129b5f3f0fea8190a"],["/react/build/static/css/77.45f2c69d.chunk.css","311388c729e0e94e12f092f8a4671ebb"],["/react/build/static/css/78.632d7855.chunk.css","226acc64dfa2fad8420e5eadf2d7b32d"],["/react/build/static/css/79.052117ca.chunk.css","8887d10a0949d7784ffe4690484087ae"],["/react/build/static/css/8.4580c46d.chunk.css","8d16c1c5c5e4eaa8353e5b73aa97767e"],["/react/build/static/css/80.b75266bc.chunk.css","306d531ac3c90d3516b15dcd711fd658"],["/react/build/static/css/81.1283d09d.chunk.css","98e6c38fc17dc5ba7981210181a8296f"],["/react/build/static/css/83.adba6539.chunk.css","2a7331558acec08d91f6776ad403e5a1"],["/react/build/static/css/84.4304a9d9.chunk.css","2e140b39ca87fb19bdb264111265be77"],["/react/build/static/css/85.11a04942.chunk.css","1373d0214c811e25b7c1763ef9cf3287"],["/react/build/static/css/86.541803c4.chunk.css","56302d54d1a174818f1c3446779e2ec9"],["/react/build/static/css/87.d788cda5.chunk.css","284a1d6f6ade0991c377d0752d9c27f9"],["/react/build/static/css/88.9d206204.chunk.css","e363ea281af9e616a0d144154b88c8f8"],["/react/build/static/css/91.33abeff1.chunk.css","07181be567bdb103c3b473c97021176e"],["/react/build/static/css/92.e024cd73.chunk.css","c3e67bef07a8c5003c67e484eb25a24b"],["/react/build/static/css/94.a1534f12.chunk.css","7029ba679d8c3aa833641d7fb83a5db1"],["/react/build/static/css/95.7aa996e6.chunk.css","95a8691b6fb80e3c0cba1da3107371f2"],["/react/build/static/css/96.ea97577b.chunk.css","1211ec54a5dbd129cf63cacdc130ca13"],["/react/build/static/css/97.9474d52b.chunk.css","5cc3d979713402fd252f57cb92382a9d"],["/react/build/static/css/main.4296b0ba.chunk.css","7d3fb49c9fa520e02128e5fb9a3245ae"],["/react/build/static/js/0.1e823640.chunk.js","45721da2d7201aaf43a33829b7a49ca3"],["/react/build/static/js/1.a3f49b75.chunk.js","18bdf1b43ddc40f3bfbdf6beff141f69"],["/react/build/static/js/10.4a6b4ca9.chunk.js","70726f291764b49aeb7b2c9beb374866"],["/react/build/static/js/100.0fcbf818.chunk.js","804ad1b96bbbc6b7a2c2f1cf007452c5"],["/react/build/static/js/101.4f44f3db.chunk.js","60bfe78d275ae519580efc3ffff0b005"],["/react/build/static/js/102.8dd22174.chunk.js","f5058b736276b57d82649d94da5481d0"],["/react/build/static/js/103.5ff11a99.chunk.js","08c654196f255707d167d4721bd246fa"],["/react/build/static/js/104.a7fa3f5d.chunk.js","7f5f7dc089a31a6503068adff6d2d431"],["/react/build/static/js/105.925c448f.chunk.js","e8a0d7175b1bd3c01cff822ddca263fb"],["/react/build/static/js/106.762db912.chunk.js","a0b28d57034815836e5f873a701f1d91"],["/react/build/static/js/107.edeae8bb.chunk.js","da3b0fd1dc194f2cd6276f80dff35d7b"],["/react/build/static/js/108.bc8046b4.chunk.js","87287cd875df66698ca4f655c73ceae9"],["/react/build/static/js/109.9f1e8f45.chunk.js","84297c880c206cad044508928e9a6556"],["/react/build/static/js/11.1f5ac62f.chunk.js","021caa6c0798f23e952b4d71fc14481e"],["/react/build/static/js/110.beff70fd.chunk.js","0c0888704f42191305f075176361d71c"],["/react/build/static/js/111.2658e3dc.chunk.js","b916b1def22539ef4aaa22a346d444f8"],["/react/build/static/js/112.2ccaf84f.chunk.js","02d057b8c26b1c5db331a4377dfe4575"],["/react/build/static/js/113.ffcf6821.chunk.js","587204882b2675b5622369a418689d91"],["/react/build/static/js/114.401aba8a.chunk.js","6b69c640b9bb684181dbff8ef2d4a788"],["/react/build/static/js/115.f56b4055.chunk.js","0d1f74454b3ef640f7e3b595f5f8a0dc"],["/react/build/static/js/116.9aa4cbda.chunk.js","5c0d6280ae9f6ea25ee168a22e8f53c6"],["/react/build/static/js/117.71383f92.chunk.js","a8dc6b5d1ab0f8c2e00368f38833d3e0"],["/react/build/static/js/118.5bd73dc4.chunk.js","7d4f0d133718bc6ac79bd88f1642defb"],["/react/build/static/js/119.e408aeee.chunk.js","7fda1cfd0939a36e83e258ce44d94907"],["/react/build/static/js/12.13c3c69d.chunk.js","29226c74b49d0af1e2d7a6e70cba1389"],["/react/build/static/js/120.5898ea83.chunk.js","704f92aeab4f432c8454fb078c733c2b"],["/react/build/static/js/121.639da53f.chunk.js","aae85d801f965c4b69c2271f4932a58e"],["/react/build/static/js/122.5e5a7072.chunk.js","0e249c6608742d73fd6416893f5b980f"],["/react/build/static/js/123.c5896065.chunk.js","54b1620c343e1be370d797ac6fd9f04c"],["/react/build/static/js/124.ceb3db43.chunk.js","b11147960825b4d7545473c359b06d97"],["/react/build/static/js/125.87befa9f.chunk.js","b2a62e034f140f55bfb197aed8b3cd62"],["/react/build/static/js/126.89f71a41.chunk.js","dbd68d60ed0ad1b06a1b9d9895d7fe84"],["/react/build/static/js/127.ff1c63c5.chunk.js","57848d7d3d70ce6e48e46dce97226d8c"],["/react/build/static/js/128.bd2a7675.chunk.js","4ced72b56ba01e744bba6dd7584ba4d8"],["/react/build/static/js/129.19807eee.chunk.js","34e91415ce31f67ed0dd87b2ebc5e771"],["/react/build/static/js/13.9c975527.chunk.js","65e48488e485895fa44c7c3c501cf145"],["/react/build/static/js/130.26cc70cd.chunk.js","e419bd58a6e0f5eb0023fae19a4506a3"],["/react/build/static/js/131.9762921c.chunk.js","8121d34e176891bd127cc3fc826b324f"],["/react/build/static/js/132.844ad64f.chunk.js","65573f7e06c4f2584c4b9043b3b31bb5"],["/react/build/static/js/133.073567f3.chunk.js","b06d6b7c2df4de3738230ad2081811ab"],["/react/build/static/js/134.13eb5cca.chunk.js","78c683581e57a171b7f2f50ec32b6906"],["/react/build/static/js/135.1488ac3c.chunk.js","d68a053f8e1d48fffd3964245ba6e622"],["/react/build/static/js/136.84a6c670.chunk.js","ac9d03745fb67218dae98bbb3ca745ee"],["/react/build/static/js/137.753992ce.chunk.js","fad8b3ab0a62e92b393dcfc81799bb68"],["/react/build/static/js/138.99aa17bf.chunk.js","da271a472509c86c090e319464e2385b"],["/react/build/static/js/139.5d009026.chunk.js","9c3632136b5eec3d055db3817b43415b"],["/react/build/static/js/14.16d9d702.chunk.js","d0b903ed96b32e08b4cb86610374ee69"],["/react/build/static/js/14.16d9d702.chunk.js.LICENSE.txt","3f38febb7ec0853370afd7711e190f17"],["/react/build/static/js/140.d01d758b.chunk.js","dcebafca4c007baac07d13afa0303972"],["/react/build/static/js/141.199380af.chunk.js","a43f5c0bd80bde3d137aff49c9b43489"],["/react/build/static/js/142.5d77b495.chunk.js","98fea7bf2efba37ceb7820b3c2028189"],["/react/build/static/js/143.3340dfd3.chunk.js","98c7c2eca3ee388669d33739d5761c82"],["/react/build/static/js/144.40d51006.chunk.js","431a17d2185e1060450d6dc29dfb033b"],["/react/build/static/js/145.a59ee296.chunk.js","f2df9bc23a082c2129528f928786ae6b"],["/react/build/static/js/146.013c4f95.chunk.js","8f4472655b33a6325d2b0c649bb2ceac"],["/react/build/static/js/147.0f0492e1.chunk.js","9293eb6863a91e40a4e35a2f209fbc48"],["/react/build/static/js/148.a574dde1.chunk.js","9246dd8cf42c573590227b5e52eafb31"],["/react/build/static/js/149.db660102.chunk.js","0c3e92d2dd4778b6dfc5a0a28d065354"],["/react/build/static/js/15.3bbc0d09.chunk.js","5e5a7069c17314d59c2ab4cb11ac04df"],["/react/build/static/js/150.04275370.chunk.js","ddea77f50879be18eea8bfe9b0ad4a0a"],["/react/build/static/js/151.24817661.chunk.js","a668eb86971484a4173d544529fca193"],["/react/build/static/js/151.24817661.chunk.js.LICENSE.txt","428e3a3c97db78cd6ad7d81dbaa9bd83"],["/react/build/static/js/152.d8052561.chunk.js","30009883667a106edd0e6c3e26d95ffa"],["/react/build/static/js/153.436ad3f5.chunk.js","92738c11580c5ff347e9367433972597"],["/react/build/static/js/154.646f3b9b.chunk.js","dcf3e50b2604a6830c19e0c0e48045c7"],["/react/build/static/js/155.aac89e1c.chunk.js","5503f4cb4e6d23ea6b6235b91cff29f9"],["/react/build/static/js/156.7fddafd6.chunk.js","b51233d3f8e85cf2ee40d4f555386537"],["/react/build/static/js/157.f3d100fe.chunk.js","7283511c4f2a9b3adf5382e8ddc759c4"],["/react/build/static/js/158.5e079d51.chunk.js","3f0afffda13fa42b2b418087197bee6d"],["/react/build/static/js/159.0650e3cb.chunk.js","47dca5e68e646f3aa2c8c867feca9f5c"],["/react/build/static/js/16.166d65c9.chunk.js","57342d2ee3a19a64789b2ed32adbeb33"],["/react/build/static/js/160.4c96abd6.chunk.js","f5dfb55cce24b45a41755c3871de4bee"],["/react/build/static/js/161.8a5ac2e9.chunk.js","c9c118002bda2e427fb155040b9b2e71"],["/react/build/static/js/162.9bd267c3.chunk.js","19a0343b22cbe29b2d4e91dab4418e02"],["/react/build/static/js/163.e7010fc7.chunk.js","7cf615ec37e7825bde5823abac10b14b"],["/react/build/static/js/164.91940939.chunk.js","5627f91e18dc79eec75072c4b826f393"],["/react/build/static/js/165.74aaaabb.chunk.js","c226f57eca658c47d14ef0a2d0a43661"],["/react/build/static/js/166.f678b767.chunk.js","a926a419ffcbf83eb19c4b34fce393b2"],["/react/build/static/js/167.5029b3f3.chunk.js","008de3a955fb76f851f4edcaec17f613"],["/react/build/static/js/168.5c7665f9.chunk.js","4fe74b7e38f9efd3d1d6d750785415ec"],["/react/build/static/js/169.9096d7d9.chunk.js","47ecd84ea75428be0f6388a167cdaca3"],["/react/build/static/js/17.53ff74d4.chunk.js","44165c6280f566040527c83d7b268df8"],["/react/build/static/js/170.d35fb1a0.chunk.js","2ed2f2943a58d1c623b6bf0dab477027"],["/react/build/static/js/171.4e1eea5c.chunk.js","3475f405564836a4f37418c9de474024"],["/react/build/static/js/172.48a98e16.chunk.js","b05ac6b848a22b00cf2db63a77a0d915"],["/react/build/static/js/173.d523abff.chunk.js","d45c75a7739ff3bdd5b5b20988f9a0dc"],["/react/build/static/js/174.164bf156.chunk.js","7757877a966d61702eaf01393767870f"],["/react/build/static/js/175.4f58c9b4.chunk.js","c1b5f0d46b077560dcbf3154e33162a6"],["/react/build/static/js/176.07bba299.chunk.js","57ad6b36e7d4ce2e49e649f57f00cba4"],["/react/build/static/js/177.bdfbb39d.chunk.js","6827088d970dbe41a7cab858888b581c"],["/react/build/static/js/178.6e387996.chunk.js","0cf1a5f49f173a4ff3160109ae43a830"],["/react/build/static/js/179.587e829d.chunk.js","0ba119e774091dba3758a1f9f8b60403"],["/react/build/static/js/18.8b804743.chunk.js","6c64fd693bb257e4c96becd0d287f528"],["/react/build/static/js/18.8b804743.chunk.js.LICENSE.txt","940e4d7a48dab36a58d58efe87ab5b70"],["/react/build/static/js/180.5fe9e90d.chunk.js","d5b9a5fd1ca7d754303b80e07c6902ee"],["/react/build/static/js/181.6abb3190.chunk.js","001ea3a3b27030355ae78b0ef97c9e46"],["/react/build/static/js/182.4b316617.chunk.js","c3835f5c242d1b5f9193b11fd1e40edc"],["/react/build/static/js/183.2238201a.chunk.js","3119f1d72136a94ab66d0dc9e3211abc"],["/react/build/static/js/183.2238201a.chunk.js.LICENSE.txt","512174074f4d9cdfad9b3a42274074a5"],["/react/build/static/js/184.fb1eac32.chunk.js","39bf4635216e3c1eb8eb6c75951e0870"],["/react/build/static/js/185.8d139e7b.chunk.js","fa131c8c9980ea4a9fd46fc0e1f2e554"],["/react/build/static/js/186.abdc874f.chunk.js","a55d03a4f576003fd3479923b542265c"],["/react/build/static/js/187.015059dd.chunk.js","5bf4828f4f7a409480e281034baed337"],["/react/build/static/js/188.ac1dba9a.chunk.js","493498334ffad11cae7bca861092c551"],["/react/build/static/js/189.ac7a0f68.chunk.js","970c3c5b25ded54c80fb6f2346d1eaa4"],["/react/build/static/js/19.777a7f26.chunk.js","d44a6f29450f3535e25b8fb3d9980b6d"],["/react/build/static/js/190.f9d3fd17.chunk.js","2bf37d9168d5c8e1fb3c43faa432d5ec"],["/react/build/static/js/191.447c9fab.chunk.js","d9cb97bb4dff997a4854b992ea2d9ba7"],["/react/build/static/js/192.fbd31473.chunk.js","6a65146bb08d95604af8441755f9d4d2"],["/react/build/static/js/193.b7e18695.chunk.js","5240d664a4c475dccf861bd5d83d4a09"],["/react/build/static/js/194.1d1f9673.chunk.js","3451d03a00828456776ef8146041c4dc"],["/react/build/static/js/195.9b9f4927.chunk.js","7b7033067f1ed2be1f30e5b527640242"],["/react/build/static/js/196.527a836d.chunk.js","7e60f5f0679be77c6cf6b9a92f9cbd42"],["/react/build/static/js/197.ac910ac1.chunk.js","31452223250c0881fdbe265e4e68ec5a"],["/react/build/static/js/198.80a980fe.chunk.js","fa5fa329c5a30f23950c26af8cf6587d"],["/react/build/static/js/199.f90f851b.chunk.js","e22ca39981c24dbd787ef294e15268a9"],["/react/build/static/js/2.3d5eefb9.chunk.js","658a4f4f5ba3b7f6a28a3f005a406462"],["/react/build/static/js/2.3d5eefb9.chunk.js.LICENSE.txt","ae2739cdb90c51c3ecb75f6b7d4c351e"],["/react/build/static/js/20.01852e1f.chunk.js","1cd8a3875a4eb56422b643590ad45710"],["/react/build/static/js/200.fbc54deb.chunk.js","d9a51998f5550a46360fda1295ca155d"],["/react/build/static/js/201.48cc340b.chunk.js","e2617c8cecd8db588378e7984df22d9c"],["/react/build/static/js/202.5adca3ea.chunk.js","2eda2edd8251cde1036da43f208b4443"],["/react/build/static/js/203.88d21111.chunk.js","af6de0eef5394795cbb4cb3395ff3af2"],["/react/build/static/js/204.7238f5f0.chunk.js","4dbf0a002b4583e6d125c4a96549e2ce"],["/react/build/static/js/205.5cf6f28f.chunk.js","c58097e0469adcb0f3ffd61443eee83e"],["/react/build/static/js/206.f0b7518f.chunk.js","ce9976eb7b38a3b26a276134b54f7f4e"],["/react/build/static/js/207.c8f02f31.chunk.js","db759b767ab7a7872d7d85b7430867fa"],["/react/build/static/js/208.0c450993.chunk.js","c589193fca9ba10333b5f75018312065"],["/react/build/static/js/209.9ad28722.chunk.js","00d91dd774476d59babcf745297ffbd3"],["/react/build/static/js/21.4da09c32.chunk.js","f853bbb303c8835c9ad34311fae9727f"],["/react/build/static/js/210.dc875cfe.chunk.js","66652dea3ffbba653a19bb5eb1c5a103"],["/react/build/static/js/211.c96f7945.chunk.js","2c4a44c9709b24ae3755f59a69ac1e49"],["/react/build/static/js/212.081a162c.chunk.js","7847530c84487bd67836ee2d427042a2"],["/react/build/static/js/213.f14b7ebb.chunk.js","1e37a5f2c9199c7c70951c6def6ecee2"],["/react/build/static/js/214.9a39df45.chunk.js","501d528a4113faa30abeb111842673a6"],["/react/build/static/js/215.802294bf.chunk.js","7bfa29e9346b2df45fbf80b30635ad28"],["/react/build/static/js/216.d8d82637.chunk.js","8e8a4fe610b0c10981dc191c4a8af59d"],["/react/build/static/js/217.34707399.chunk.js","790d3e0b0b3a80339b56e7140f3ff801"],["/react/build/static/js/218.8a758f86.chunk.js","0890c75fdd845c111ac6380b3c416e88"],["/react/build/static/js/219.910fbd0b.chunk.js","f2f6ae6db21eed1be6e7f628b01d7810"],["/react/build/static/js/22.a3d623fe.chunk.js","ee36bb49f95160e96b8fb05738894d39"],["/react/build/static/js/220.04a374f7.chunk.js","f1742ab024c99f9c144a3423b49bff70"],["/react/build/static/js/221.9ada310d.chunk.js","2c24c2e864d1eb1bc2289d7ac3ea3c12"],["/react/build/static/js/222.698ed954.chunk.js","9c4c1a2aef3dd78b3e4790d27b3ab091"],["/react/build/static/js/223.b2eba6c9.chunk.js","c35896e00fba4fc4e8b5a3ae902b4a4e"],["/react/build/static/js/224.c091bd34.chunk.js","ff58b84d0e1f1296b83b8d687a0190ec"],["/react/build/static/js/225.0b60f580.chunk.js","877f91b080fcacb763dbd0548a01519e"],["/react/build/static/js/226.2bbe453b.chunk.js","585f20b7a275b13d7b7de77e3a15f13d"],["/react/build/static/js/226.2bbe453b.chunk.js.LICENSE.txt","d2c9b2bca031a8cbe13a0a4ca7845b00"],["/react/build/static/js/227.371bedaf.chunk.js","c3803b154111ed325978a41a19fe26c0"],["/react/build/static/js/228.1bb75bb3.chunk.js","f790439726e244f122269187d9565e68"],["/react/build/static/js/229.dc1b13e7.chunk.js","141e59c2b4a397970657d3f8e8b0631c"],["/react/build/static/js/23.2b9d0712.chunk.js","b158a1fe85e39915f2010cea5d61bfe8"],["/react/build/static/js/230.aa0cce17.chunk.js","309d2026e8afb60dc6b221ebf9969d18"],["/react/build/static/js/231.b53914ca.chunk.js","bde488904c7032433425a237585183a0"],["/react/build/static/js/24.6f430769.chunk.js","85bab35d2c4b8117af29e01d6c56606f"],["/react/build/static/js/25.53f0b2ce.chunk.js","397ea23e4e9deed93801538bbb1ca828"],["/react/build/static/js/26.f8a6c74a.chunk.js","14ea1a1a60c960bc134afa2de4cf7118"],["/react/build/static/js/27.7227cea0.chunk.js","abcd4512c55fb27f77392dc4ad7db9e1"],["/react/build/static/js/28.df666a32.chunk.js","1db12c83753891e230851ec0963c973d"],["/react/build/static/js/29.a3e9f69e.chunk.js","0f966d0965ed58938c28af3084cec3b5"],["/react/build/static/js/3.9bfb237a.chunk.js","76d5a1bdae942c8d74f108daa2da56e3"],["/react/build/static/js/30.36072913.chunk.js","ca54858b4d458f6eb29f52832c3024c0"],["/react/build/static/js/31.b5c0149f.chunk.js","865dd374ac040dd0ab2523ac82cab7d1"],["/react/build/static/js/31.b5c0149f.chunk.js.LICENSE.txt","3b50de9720afcb8c1cd67ab9d4d65cd0"],["/react/build/static/js/32.a986ef56.chunk.js","0c62878adef4ec44c2f0bf0c19a49e35"],["/react/build/static/js/33.3e1314d7.chunk.js","d8f0eab6905e2ab546cf0604a4335b00"],["/react/build/static/js/34.7d84847c.chunk.js","1b811dc244278f89e3815bc9ba8c8876"],["/react/build/static/js/34.7d84847c.chunk.js.LICENSE.txt","76eb1d063a6bb075a783e9e8cae8c22f"],["/react/build/static/js/35.4eda7744.chunk.js","3e74af54114ad40a3f1d9dc88746491c"],["/react/build/static/js/35.4eda7744.chunk.js.LICENSE.txt","b95cf3f2288d26cbee7d50e9f07183ce"],["/react/build/static/js/36.fcaab9da.chunk.js","2bffca8ccda9e6e7c6e2155f9037507a"],["/react/build/static/js/36.fcaab9da.chunk.js.LICENSE.txt","4602f6c97b627abd1ecacab909185b3e"],["/react/build/static/js/37.93f4ffae.chunk.js","175d8b8cfdddadac5053e89f3896f7d3"],["/react/build/static/js/37.93f4ffae.chunk.js.LICENSE.txt","1188ec7130c6418ee4fa660bab4a1ffc"],["/react/build/static/js/38.5994af06.chunk.js","ae4cd47749546e7b22941e32fd65817a"],["/react/build/static/js/39.6ffd9277.chunk.js","6c5ee1f6bc2422c746ea534bfd018bee"],["/react/build/static/js/4.4acb3572.chunk.js","b6a85ca1dc83c48c287263fef99028da"],["/react/build/static/js/40.5ae24769.chunk.js","f03da515138c985f5f94e917c378e340"],["/react/build/static/js/41.6427f704.chunk.js","99256061a1ef993f626d705d40ee8f16"],["/react/build/static/js/41.6427f704.chunk.js.LICENSE.txt","dd839ee6c4ff6f284259611eb8fe9d26"],["/react/build/static/js/42.0e40a2dc.chunk.js","76350a7f3b54304072d30473f81ae052"],["/react/build/static/js/42.0e40a2dc.chunk.js.LICENSE.txt","f59564efe6ec7b9118922251603afa5a"],["/react/build/static/js/43.698d409b.chunk.js","4d75934a0afc457f91dcc948ed6b71e3"],["/react/build/static/js/44.0eebc44e.chunk.js","403690106afcb76b12908c376a10edd3"],["/react/build/static/js/44.0eebc44e.chunk.js.LICENSE.txt","0c1a085a6bd6f1a79ce29ed144ea7e35"],["/react/build/static/js/45.0bbbbae4.chunk.js","9e7c1309d97f5038169ca2c6ad63a1de"],["/react/build/static/js/46.a709ffbd.chunk.js","74ebefbb5f7970148d9987257ec0f3fd"],["/react/build/static/js/47.e0c7eab0.chunk.js","dfe8cf70acc04be6cb08b28d6b40aa59"],["/react/build/static/js/47.e0c7eab0.chunk.js.LICENSE.txt","cfad1e4982bdd5ad2c2f3f1046ae4486"],["/react/build/static/js/48.123ba649.chunk.js","652af9c9c71c94a03ec1fa8df851f58f"],["/react/build/static/js/48.123ba649.chunk.js.LICENSE.txt","b7100e7f73f03f9ce3c952ab849ead1f"],["/react/build/static/js/49.78cfef06.chunk.js","55f1bcf73508185069656ee8ed0e95e1"],["/react/build/static/js/49.78cfef06.chunk.js.LICENSE.txt","47c37605ad4445fdea8bba95e38e9ccf"],["/react/build/static/js/5.0501e3e4.chunk.js","29e5d996584a6b994f65c888825b2afe"],["/react/build/static/js/50.3c30a173.chunk.js","b27600009e35fb422a0906eff1641b39"],["/react/build/static/js/50.3c30a173.chunk.js.LICENSE.txt","2adc01fbcf75b9019ab54e3c67ed663d"],["/react/build/static/js/51.f66d5bef.chunk.js","5173c80c51c4459fc4c9fc84961412ae"],["/react/build/static/js/51.f66d5bef.chunk.js.LICENSE.txt","fa2b1ee2ede9a474dccd561fe654d246"],["/react/build/static/js/52.824c706b.chunk.js","696c26e5582a59252b9f226f9933b52e"],["/react/build/static/js/52.824c706b.chunk.js.LICENSE.txt","71edb0cbe2efdcc1f9646e5cf59677c1"],["/react/build/static/js/53.3659709d.chunk.js","6ac43e3df5061cf20a5991e3997c5a6e"],["/react/build/static/js/53.3659709d.chunk.js.LICENSE.txt","8c8c77581aa93984a96c42bbb8603b8a"],["/react/build/static/js/54.1f388e0c.chunk.js","c877fed5b407794547cad68b95ca020f"],["/react/build/static/js/55.a32219df.chunk.js","5ad5ef807f2102a82d74dc2ff3657fa3"],["/react/build/static/js/56.3fa24f3b.chunk.js","d4964164d3bc732759ff08be224d5e61"],["/react/build/static/js/57.1aa04d7e.chunk.js","8239615a42f5f35f4410b175612816b9"],["/react/build/static/js/58.9e6ec52f.chunk.js","b823ec0c423f7ba0019ab2895ed81144"],["/react/build/static/js/59.3c9b0401.chunk.js","94f46f02474c7abe54c6f3de55166be9"],["/react/build/static/js/6.1bb61954.chunk.js","87ec45dc564c5a4f24e49b3802cc3842"],["/react/build/static/js/60.f9784bd0.chunk.js","304e57a18bc6bc3134c29e3764ae89ef"],["/react/build/static/js/61.f5e8aa96.chunk.js","2f1f62fd8ee7cf7c8dc32b4f7742332f"],["/react/build/static/js/62.f7b22724.chunk.js","ed05a645fcba4bc239892bcd6878c0d8"],["/react/build/static/js/63.f0327998.chunk.js","2f6759166c76961396c471e84f405565"],["/react/build/static/js/64.7db77deb.chunk.js","c9bc753ab61b8fa74641ee98173062f3"],["/react/build/static/js/65.74bb6b01.chunk.js","266f9214df4dacf9914bb9c1afbcd982"],["/react/build/static/js/66.17aebbd2.chunk.js","4e2857f3bbdaa4619b67b48ac0d511b2"],["/react/build/static/js/67.0ba7b63d.chunk.js","ba77ac30f2d328f364b57c5ba56f5be8"],["/react/build/static/js/68.93bfa3e5.chunk.js","0385531f957605f94f801b1aab3f5fbb"],["/react/build/static/js/69.6e7a6faf.chunk.js","26df19bf48db2e8e2f8f9938391ff590"],["/react/build/static/js/7.159f777a.chunk.js","f03f3bf8c19cfa2f680cb66b91acbd67"],["/react/build/static/js/70.8cea9471.chunk.js","a488218cb75bcc49749baf6efba22e2b"],["/react/build/static/js/71.aec3c03c.chunk.js","a528a6bdff3493b653044d59a09833c2"],["/react/build/static/js/72.b10790d4.chunk.js","c67bfbcdbfb401651814f758ea3c0f4d"],["/react/build/static/js/73.5cd7e1a5.chunk.js","e01ed3a8e690554ca8490ad6a4fd92a6"],["/react/build/static/js/74.b9237dfa.chunk.js","b24707cf72c4ef747cc193cd55a2fc46"],["/react/build/static/js/75.5396b306.chunk.js","56f9d33dbbedd8176f3888000019cd41"],["/react/build/static/js/76.1f46a80d.chunk.js","c46d49b1434395f852cee38f54106271"],["/react/build/static/js/77.3f17e893.chunk.js","2baf5c78d0f2d35d341f5f5cf8ad85de"],["/react/build/static/js/78.bad755d6.chunk.js","c511f46483ea6ce51bb6c4ed7ff76212"],["/react/build/static/js/79.561c2f0b.chunk.js","a00310d004be24df2b6b65cb49e0908d"],["/react/build/static/js/8.eccc3ccc.chunk.js","8c62879652332275cb077acf57dd77cd"],["/react/build/static/js/8.eccc3ccc.chunk.js.LICENSE.txt","389e142e8c238054d4afdd18f2290222"],["/react/build/static/js/80.fb4e5e1f.chunk.js","4cdb01df297b49b7a075bd234d579663"],["/react/build/static/js/81.0139a526.chunk.js","601f628c974aae06bee7231db223fcc8"],["/react/build/static/js/82.583a22f6.chunk.js","6e5da49e33c60887920a4c9d492144eb"],["/react/build/static/js/83.70e6957b.chunk.js","8f55bc5b96a036e353c80d1460afb7a8"],["/react/build/static/js/84.ec8f5250.chunk.js","eadc03cf8ed2340aa08d416b5c1b8fc6"],["/react/build/static/js/85.9ea56489.chunk.js","1d3fc4a14fe6ad2cf30d9b3657e432c3"],["/react/build/static/js/86.8766a414.chunk.js","906ad45478eb3abedd8b630ec93a5749"],["/react/build/static/js/87.407dd9d9.chunk.js","a40fcda53af7ee0ff9aad5d22c8b5439"],["/react/build/static/js/88.eb91d2f8.chunk.js","3c6db1234c0b41e97ccecd5f5783292d"],["/react/build/static/js/89.2c1760f4.chunk.js","6b0c0328712474a4419171e6108a66a9"],["/react/build/static/js/9.350602ff.chunk.js","02756cf5e4714a125180d7a2337c58b0"],["/react/build/static/js/90.4fb53141.chunk.js","10bf06b2694f53a29aa3b383dd0df0fb"],["/react/build/static/js/91.301e4aa2.chunk.js","999cec7224f0d481712ab7a1fde4bd84"],["/react/build/static/js/92.6e473148.chunk.js","ad0199626ab2d3b25cecbf1ccc1d1aa9"],["/react/build/static/js/93.2fc023f6.chunk.js","8f808aa0eb68995cbbbf0560d6401682"],["/react/build/static/js/94.edc70396.chunk.js","33c88f40d236d0ddaba7f3d20eed18e0"],["/react/build/static/js/95.5202c85e.chunk.js","8ad27048d7a0381aa96ac3574319596c"],["/react/build/static/js/96.20303b0f.chunk.js","49b422c79b6ed946482518a4248a1363"],["/react/build/static/js/97.901d4013.chunk.js","d39650ebb07b2c2fc61f650cf4f5939c"],["/react/build/static/js/98.560055cd.chunk.js","329b54ae68d334d022965997ec2073d0"],["/react/build/static/js/99.8733d82e.chunk.js","b88526e36a14537c3dd8dbe950cc8b7b"],["/react/build/static/js/main.161e032b.chunk.js.LICENSE.txt","4a465b278efdc70f65ecf4ebb0784d77"],["/react/build/static/js/runtime~main.016fd9e2.js","344e14e6cc876166abeb9dbd2de3f140"],["/react/build/static/media/2-1bg.d22a63b9.png","ba2b4a272d5ca00d9400b4cd1fd573d6"],["/react/build/static/media/2-2-1.afd0f2f5.png","63de0e927282052b4b7a3a4a4e06c004"],["/react/build/static/media/2-2-2.26bc3301.png","09350b2fc63799fbbbed880ee86c54dc"],["/react/build/static/media/2-2-3.6d6ce99c.png","04c46e92f6c6dbc3f354c7d12f41efdf"],["/react/build/static/media/2-2-head.5e69dbb2.png","1ed02c446d34cd67de8d1685ffd16181"],["/react/build/static/media/2-3-1.bcb33d47.png","6309aee1c5b0f1906cf8224c70a2954d"],["/react/build/static/media/2-3-2.57ef08ae.png","13d71726e3c0f7ba20318b57eece054f"],["/react/build/static/media/2-3-3.52733627.png","284814681a0af3e1c41bf547a189de86"],["/react/build/static/media/2-3-4.339b2f1c.png","9ec275ef1b19daa2a2194674dfb106ad"],["/react/build/static/media/2-3bg.deef1b07.png","5b8e2e8dd995ea94a13247eb5ed7ca9e"],["/react/build/static/media/2-4-1.802eb322.png","d3950f1555e0210dd70a374600f83aae"],["/react/build/static/media/2-4bg.45478d20.png","f28c71d7b533b10dc5c1c33ddc7e028d"],["/react/build/static/media/2-5bg.9cca3de1.png","7d7c0003e780841147d31243f7c305ad"],["/react/build/static/media/2-6-1.302b729e.png","cd88cc40364a0dacde3fa5af91cb8407"],["/react/build/static/media/2-6-2.b262b91e.png","50b143930101e1b295683ba0099f9ab9"],["/react/build/static/media/3-1.9fdda521.png","f6add2be652f2989e8b5c8ebc319f44d"],["/react/build/static/media/3-2.47050941.png","b3ad137b32270db1b9fc4aa08c8e0451"],["/react/build/static/media/3-3.c767aae7.png","5d79fb69eee45493a7555b6414c739c0"],["/react/build/static/media/3-4.92820cbc.png","5d26624685fca97de2721a718a5209eb"],["/react/build/static/media/3-bg.4f22fe34.png","28b762cb9f96c8122b700f54e3c914b4"],["/react/build/static/media/34@2x.ed8e5910.png","174665edd0ab7f03fa9e60353417cbaa"],["/react/build/static/media/35@2x.33462edc.png","8cfe5ce0a0d51e3b6d9af2a5ccb2784a"],["/react/build/static/media/36@2x.8f54f5ba.png","0dd97091f3e6be410d8d5ef8df634ce8"],["/react/build/static/media/37@2x.97a40a2a.png","54b6a5ad4cdecb5d722bb1509e5e0216"],["/react/build/static/media/38@2x.f072fe68.png","e890bdfa45d996910aad3597b0a24c09"],["/react/build/static/media/39@2x.ee1af05a.png","cef1223f2f0ce7cc451c982e2f7dc6dd"],["/react/build/static/media/4-1.79fa159d.png","2bea356c9736a2f3787b03d69b72c733"],["/react/build/static/media/4-2.9c066e75.png","88eada7dcd52a5d211ee86aacd523616"],["/react/build/static/media/4-3.a1487a5b.png","da4afd909ef92b84e7a90043e96504d1"],["/react/build/static/media/4-4.5eb40734.png","d3f20f10c4de4cf438ac376516763db9"],["/react/build/static/media/4-bg.214b12ef.png","bb353b3cf7d527c4c052a5462e5f2209"],["/react/build/static/media/40@2x.f10a55e2.png","603a7113eda7af6d3d908b8b7bed4e1a"],["/react/build/static/media/42@2x.25d6b5fd.png","b17ffff59b4673910f125e208e448757"],["/react/build/static/media/44@2x.1374baf9.png","0f150a0e7cf098056300667f82d986f4"],["/react/build/static/media/46@2x.e272d43e.png","06d55da5cb08016c1d1561e111e41c29"],["/react/build/static/media/48@2x.3bde4de9.png","46fe84acf4e9b0c974d28785a76d416d"],["/react/build/static/media/49.b03e6efe.png","b084f468520ae3ea313839228035ed41"],["/react/build/static/media/50@2x.69b76634.png","59d8c56b75d5833bcaa4ca40c24e0282"],["/react/build/static/media/52@2x.41805cbb.png","9e64828acb8840429063f19df28f6262"],["/react/build/static/media/55@2x.83486b73.png","1f3a3cec5959e66b7e32acb3974c30b2"],["/react/build/static/media/57@2x.8dc6b0b8.png","e9e9efcca4a99b81aeaa2b3d5f3d8149"],["/react/build/static/media/59@2x.b0884ef0.png","076b0a99ff2dfa32cf88da927fd5bdde"],["/react/build/static/media/61@2x.99d3cc3e.png","0899a86bb440717a21f3692383ebf49d"],["/react/build/static/media/63@2x.49f389b9.png","74d7a6b844adc2bac1f21d47f3878a78"],["/react/build/static/media/65@2x.ef33e2f9.png","82a58ddca2302ee7b12b0c38b8df9a4b"],["/react/build/static/media/67@2x.4a4f4b6c.png","7f37bcee2e2be94ddef7ef4feaf6b8a9"],["/react/build/static/media/69@2x.379c6a82.png","b0fbdb5e689fc6ac05bc029ed150c556"],["/react/build/static/media/BJHKHT.f065403a.png","7e59d4b496c81f75d5c11c5166f030a4"],["/react/build/static/media/CEC.3b748059.png","064eea41dfa53645eb0134012b9e7f2e"],["/react/build/static/media/GFKJ.eb30c414.png","a60603b90e7b35d31753400f56be7770"],["/react/build/static/media/HSKY.2e76ba44.png","390849e1165e584772959baecaafb55b"],["/react/build/static/media/ISCAS.851fcfda.png","6a2b57a38c79d3c48a5aa238a113d165"],["/react/build/static/media/KYRJLM.2d659e5c.png","8d92960a37abe7deb48e25b7ea72a2e5"],["/react/build/static/media/KaTeX_AMS-Regular.b1489df1.woff","7f06b4e30317f784d61d26686aed0ab2"],["/react/build/static/media/KaTeX_AMS-Regular.d4531cf7.woff2","e78e28b4834954df047e4925e9dbf354"],["/react/build/static/media/KaTeX_AMS-Regular.f80d9eaf.ttf","aaf4eee9fba9907d61c3935e0b6a54ae"],["/react/build/static/media/KaTeX_Caligraphic-Bold.0c96bc8f.ttf","021dd4dc61ee5f5cdf315f43b48c094b"],["/react/build/static/media/KaTeX_Caligraphic-Bold.7ce7636b.woff","1e802ca9dedc4ed4e3c6f645e4316128"],["/react/build/static/media/KaTeX_Caligraphic-Bold.f046a374.woff2","4ec58befa687e9752c3c91cd9bcf1bcb"],["/react/build/static/media/KaTeX_Caligraphic-Regular.35f3c951.ttf","d49f2d55ce4f40f982d8ba63d746fbf9"],["/react/build/static/media/KaTeX_Caligraphic-Regular.4519ba4c.woff2","7edb53b6693d75b8a2232481eea1a52c"],["/react/build/static/media/KaTeX_Caligraphic-Regular.4a559f36.woff","d3b46c3a530116933081d9d74e3e9fe8"],["/react/build/static/media/KaTeX_Fraktur-Bold.069514d4.ttf","a31e7cba7b7221ebf1a2ae545fb306b2"],["/react/build/static/media/KaTeX_Fraktur-Bold.2ea3916b.woff","c4c8cab7d5be97b2bb283e531c077355"],["/react/build/static/media/KaTeX_Fraktur-Bold.5b8749ee.woff2","d5b59ec9764e10f4a82369ae29f3ac58"],["/react/build/static/media/KaTeX_Fraktur-Regular.0d90113d.woff","b7d9c46bff5d51da6209e355cc4a235d"],["/react/build/static/media/KaTeX_Fraktur-Regular.2c629b06.woff2","32a5339eb809f381a7357ba56f82aab3"],["/react/build/static/media/KaTeX_Fraktur-Regular.96556db6.ttf","a48dad4f58c82e38a10da0ceebb86370"],["/react/build/static/media/KaTeX_Main-Bold.07e762d0.ttf","9ceff51b3cb7ce6eb4e8efa8163a1472"],["/react/build/static/media/KaTeX_Main-Bold.20b90c20.woff2","8e1e01c4b1207c0a383d9a2b4f86e637"],["/react/build/static/media/KaTeX_Main-Bold.a9cdbc85.woff","22086eb5d97009c3e99bcc1d16ce6865"],["/react/build/static/media/KaTeX_Main-BoldItalic.7649d52f.woff","4c57dbc44bfff1fdf08a59cf556fdab3"],["/react/build/static/media/KaTeX_Main-BoldItalic.b345de5b.woff2","284a17fe5baf72ff8217d4c7e70c0f82"],["/react/build/static/media/KaTeX_Main-BoldItalic.bc8d96e9.ttf","e8b44b990516dab7937bf240fde8b46a"],["/react/build/static/media/KaTeX_Main-Italic.44a32ae6.ttf","29c86397e75cdcb3135af8295f1c2e28"],["/react/build/static/media/KaTeX_Main-Italic.ab751a9e.woff2","e533d5a2506cf053cd671b335ec04dde"],["/react/build/static/media/KaTeX_Main-Italic.e3954fe9.woff","99be0e10c38cd42466e6fe1665ef9536"],["/react/build/static/media/KaTeX_Main-Regular.13b3f852.woff2","5c734d78610fa35282f3379f866707f2"],["/react/build/static/media/KaTeX_Main-Regular.9e75cd60.woff","b741441f6d71014d0453ca3ebc884dd4"],["/react/build/static/media/KaTeX_Main-Regular.af7fc7b3.ttf","5c94aef490324b0925dbe5f643e8fd04"],["/react/build/static/media/KaTeX_Math-BoldItalic.4d6241be.ttf","9a2834a9ff8ab411153571e0e55ac693"],["/react/build/static/media/KaTeX_Math-BoldItalic.94810ff6.woff","b13731ef4e2bfc3d8d859271e39550fc"],["/react/build/static/media/KaTeX_Math-BoldItalic.d5d35e84.woff2","d747bd1e7a6a43864285edd73dcde253"],["/react/build/static/media/KaTeX_Math-Italic.11278d36.woff","f0303906c2a67ac63bf1e8ccd638a89e"],["/react/build/static/media/KaTeX_Math-Italic.cae7ea26.ttf","291e76b8871b84560701bd29f9d1dcc7"],["/react/build/static/media/KaTeX_Math-Italic.ffda8803.woff2","4ad08b826b8065e1eab85324d726538c"],["/react/build/static/media/KaTeX_SansSerif-Bold.2946bdb5.woff","3fb419559955e3ce75619f1a5e8c6c84"],["/react/build/static/media/KaTeX_SansSerif-Bold.5a20a475.woff2","6e0830bee40435e72165345e0682fbfc"],["/react/build/static/media/KaTeX_SansSerif-Bold.f0ad0abc.ttf","7dc027cba9f7b11ec92af4a311372a85"],["/react/build/static/media/KaTeX_SansSerif-Italic.c7feacd5.ttf","4059868e460d2d2e6be18e180d20c43d"],["/react/build/static/media/KaTeX_SansSerif-Italic.c834ba6d.woff","727a9b0d97d72d2fc0228fe4e07fb4d8"],["/react/build/static/media/KaTeX_SansSerif-Italic.e5fc2aef.woff2","fba01c9c6fb2866a0f95bcacb2c187a5"],["/react/build/static/media/KaTeX_SansSerif-Regular.5af9e1cf.ttf","5c58d168c0b66d2c32234a6718e74dfb"],["/react/build/static/media/KaTeX_SansSerif-Regular.5bf28900.woff2","d929cd671b19f0cfea55b6200fb47461"],["/react/build/static/media/KaTeX_SansSerif-Regular.a4fd0563.woff","2555754a67062cac3a0913b715ab982f"],["/react/build/static/media/KaTeX_Script-Regular.a1c15978.woff2","755e2491f13b5269f0afd5a56f7aa692"],["/react/build/static/media/KaTeX_Script-Regular.cd3b0634.woff","d524c9a5b62a17f98f4a97af37fea735"],["/react/build/static/media/KaTeX_Script-Regular.dd0db7ae.ttf","d12ea9efb375f9dc331f562e69892638"],["/react/build/static/media/KaTeX_Size1-Regular.1876361f.woff2","048c39cba4dfb0460682a45e84548e4b"],["/react/build/static/media/KaTeX_Size1-Regular.bbd9552c.ttf","7342d45b052c3a2abc21049959fbab7f"],["/react/build/static/media/KaTeX_Size1-Regular.c4ae0d25.woff","08b5f00e7140f7a10e62c8e2484dfa5a"],["/react/build/static/media/KaTeX_Size2-Regular.635e9324.woff","af24b0e4b7e52656ca77914695c99930"],["/react/build/static/media/KaTeX_Size2-Regular.d1e8ff17.ttf","eb130dcc661de766c999c60ba1525a88"],["/react/build/static/media/KaTeX_Size2-Regular.f516b73c.woff2","81d6b8d5ca77d63d5033d6991549a659"],["/react/build/static/media/KaTeX_Size3-Regular.1ef7adae.woff2","b311ca09df2c89a10fbb914b5a053805"],["/react/build/static/media/KaTeX_Size3-Regular.5d632274.ttf","7e02a40c41e52dc3b2b6b197bbdf05ea"],["/react/build/static/media/KaTeX_Size3-Regular.f32a9fde.woff","0d8926405d832a4b065e516bd385d812"],["/react/build/static/media/KaTeX_Size4-Regular.1d132596.ttf","ad7672524b64b730dfd176140a8945cb"],["/react/build/static/media/KaTeX_Size4-Regular.4f012d6a.woff2","6a3255dfc1ba41c46e7e807f8ab16c49"],["/react/build/static/media/KaTeX_Size4-Regular.f668d566.woff","68895bb880a61a7fc019dbfaa5121bb4"],["/react/build/static/media/KaTeX_Typewriter-Regular.4f31d033.woff2","6cc31ea5c223c88705a13727a71417fa"],["/react/build/static/media/KaTeX_Typewriter-Regular.b1d1af1a.ttf","257023560753aeb0b89b7e434d3da17f"],["/react/build/static/media/KaTeX_Typewriter-Regular.d3c8e68f.woff","3fe216d2a5f736c560cde71984554b64"],["/react/build/static/media/LC.f247fdb8.png","3e02cbcebad7837bf48da07b33a10bf5"],["/react/build/static/media/LSLM.99387946.png","41c202edbdb8a04e0cff8dca05fcc3de"],["/react/build/static/media/ML.08d278e2.png","9f958c18dbce14eafeed88a2fff5ec30"],["/react/build/static/media/NJDX.bb34b326.png","48e32a4eb948d5d618f7234210cd111d"],["/react/build/static/media/QH.b57a0131.png","45efbad10af2600ac575f17c7f1c6f25"],["/react/build/static/media/SHJT.426bf0c7.png","93cf5b16ef9208cb5bf1da99eebde8fb"],["/react/build/static/media/TX.b703476c.png","47cf36954b1fbb684e346d72dd890b14"],["/react/build/static/media/WXYJY.21e40191.png","e080df4c7b430301c9f741d432afa8ad"],["/react/build/static/media/XH.a0a88f17.png","a621d3a4f230af8107e727f60ed4c8f0"],["/react/build/static/media/XJY.b4c57bf1.png","e41c17ce768fcf94a03339a71c30d6f3"],["/react/build/static/media/YKD.4f7e2766.png","fa37d44fd25bcf449ec35efe68de61c5"],["/react/build/static/media/ZC.ad056aa5.png","c51f75c3c4c469809acda5c394c02adf"],["/react/build/static/media/achievements.f20b7e39.png","6a9f5aef5cc32d04d0a7a2f7acc38b11"],["/react/build/static/media/award-bg.f71628f1.png","c5dd065eaa235efd1c330b41d27f3370"],["/react/build/static/media/award-tit.4c48185a.png","5dec871e9bf24ad08589bf24da7d56c9"],["/react/build/static/media/ball.24214b6e.png","4600b466befba451dd38df26879cf299"],["/react/build/static/media/banner-interim.c50ff667.png","afee978cdb229c29525a3b28d3f411a2"],["/react/build/static/media/banner.40f1ff0c.png","196a855ae4a95a04943211925b34b83b"],["/react/build/static/media/banner.598a8076.png","1e538e70165e458ca1662f937d1264dd"],["/react/build/static/media/banner.84187e6e.png","ecf9fdcd304fa1e37310d49755e2f009"],["/react/build/static/media/banner.c3c2eb57.png","917f62f518c37b814260765ba69918e3"],["/react/build/static/media/banner.f7da2db1.png","23523c6657f4a1abe198837d0316a162"],["/react/build/static/media/banner_list.e02c5e16.jpg","bc53dcd5b0731ce2ac28c3ea02a01c97"],["/react/build/static/media/beijing.bfcd5b0e.png","518931a330ddf9dd7348d702c82c033c"],["/react/build/static/media/bg.29bcbc89.png","b94abc65627e9b2908f39eb0eee370bf"],["/react/build/static/media/bg.401bf2cf.png","228280fae26c66cbfd718f680d16ce7f"],["/react/build/static/media/bg.9688532b.png","c1f86769f7e46442052e59452f01f9d9"],["/react/build/static/media/bg.a51f2ffd.png","10085e3dfd86fd912dd2df5855fdd7b0"],["/react/build/static/media/bg1.8fea5c5f.png","9908ca0a39c6288aeb6e6753c95f7ca6"],["/react/build/static/media/bgPng.ed010245.png","9c63690dae3e5e96cc49a08ff24cf230"],["/react/build/static/media/botOneBg.4fb56df5.png","674a61ccd29c392bed8827e1772f534c"],["/react/build/static/media/box.548a8c8b.png","d86432e2f3b9c9e605b14855d40c4c1f"],["/react/build/static/media/ccf_logo.a54fdc70.png","99678a58665cdb049736919636983ee3"],["/react/build/static/media/ccf_logo1.be10ead7.png","e2e6fef345151e132fdcce161cc87525"],["/react/build/static/media/check_tabs.dc02b037.png","3cd1dc6de8c94ea0b139f837fc00abdf"],["/react/build/static/media/codeafter.c3088c74.png","49ed3ae6c715b4f312f9a4af582ef2a8"],["/react/build/static/media/computer.4fe86b12.png","902233a9dd36c8a274324382e7f693b3"],["/react/build/static/media/contact_bg.ad2cf7be.png","be9e8358ae98671c686db10d24a2a81b"],["/react/build/static/media/detectionBG.6759a755.png","a8244f19972a05a30815da7c25d5abd1"],["/react/build/static/media/devops.39983f5b.png","6fab3d0ca745ca5b57c7923030ff0db7"],["/react/build/static/media/earth.050b1435.png","bdc488cfc8356fbe92e2c5e85f38d3a9"],["/react/build/static/media/emp.35f6c709.png","ab4edd69519dcd864dae83950032e73f"],["/react/build/static/media/fun1.c99ffa49.png","0821dbab48751cec64b2bb3c795796ef"],["/react/build/static/media/fun2.12f22bca.png","54a5d7faf4b9ddb2e82d7b5207089a6c"],["/react/build/static/media/fun3.75c280e6.png","5c69ce2307b9e074af5ce82d88ef8582"],["/react/build/static/media/fun4.f499794e.png","253ae97d5ce8d7de5fd987d0ac9cc51b"],["/react/build/static/media/fun5.96b44942.png","e8afdfd77e8ea57ed9945cde3bcf7b98"],["/react/build/static/media/funBg.410c4305.png","d6f1410497fc1f2ed6acdbc525857fc6"],["/react/build/static/media/funBg3.d1c7d094.png","3e38083b0ae65fdcb3e237ee1caa0e6f"],["/react/build/static/media/funBg4.68c5f49e.png","4387caf6448bde780eccac5072aba145"],["/react/build/static/media/gitee1.0c13ef7b.svg","e901b31c05db2687384f2ec438d8102a"],["/react/build/static/media/github2.7d5cc0ba.svg","14ac06d35d1de63b1d0cb69d347510c8"],["/react/build/static/media/gitlink1.4bf0ed96.png","74f1d8c84848fb0b81ee404552ef7427"],["/react/build/static/media/gitlink2.0ec0ec22.png","8f753495bab62a461ee0cb63eb0ee889"],["/react/build/static/media/head.52aa3fc8.png","3a5b86995f4e5b03deb387dd013e58b4"],["/react/build/static/media/help.0bfb2587.png","ed85504ae3ea434b5dca53dc3a666dea"],["/react/build/static/media/help_bg.d2bb4c18.png","4558c0fafe9b751957f47d510d3faf92"],["/react/build/static/media/huake.63b6a34d.png","adbad39e4b3344c8dac6fa02807eb9e5"],["/react/build/static/media/huawei.73ec7c22.png","64d20728102a750c9ce500eb424f1de5"],["/react/build/static/media/ideLogo.0dca8d76.svg","42d6121571a45e6466dc8151da3ee900"],["/react/build/static/media/image20.31c2c65b.svg","e460558d48a47bfda068f0fbae063204"],["/react/build/static/media/image21.01d0caf7.svg","e5f5f0c37759e488a96306eea799569a"],["/react/build/static/media/image22.d4d77f6c.svg","1abe104b8da60da858be6b21f2d0c62a"],["/react/build/static/media/img1.8560258f.png","1a039a78776399d0eee98e6ad7a07ce5"],["/react/build/static/media/img1.e0beda57.png","37963219e6ca5c4144ba62693c52c31f"],["/react/build/static/media/img1.fc155528.png","2aa17810adc47741e9f26238cbe7dba7"],["/react/build/static/media/img10.64149a3d.png","44f29fca2b72ab9726d3413cd75c763e"],["/react/build/static/media/img15.87a3556c.png","caf5daf4b8834cf0c40a93f32616e2f6"],["/react/build/static/media/img16.32badab9.png","e20c519658bc608e7b432ea7557cf618"],["/react/build/static/media/img17.c25d5edc.png","2b82779b3b1f36aa80495153b68f3d3a"],["/react/build/static/media/img18.4963efc1.png","df5029d95eef15daf5a7326e88399d6d"],["/react/build/static/media/img2.789fbbfe.png","f7ef7805e3cd8e94a431def695bd886d"],["/react/build/static/media/img2.ae303051.png","51bd149911e029ebf15ad8838b05c674"],["/react/build/static/media/img3.cee3ac5b.png","eafb9519b0ba2dd31e768fa8c751ea49"],["/react/build/static/media/img4.53c937cb.png","d79d2611f2cfbc03316fff2204ba0b90"],["/react/build/static/media/img5.ca3a2287.png","a55ff2eecc025d68b5f7a6f1f8a9ed85"],["/react/build/static/media/img6.8f81bf78.png","f64772292e6a90fc1da0dbdca501cd11"],["/react/build/static/media/img7.e4a68e6e.png","4c472d65efdbd4517ada8ee751228890"],["/react/build/static/media/img8.10500e00.png","aea38e49166c86c63b177f3145a0b064"],["/react/build/static/media/img9.d25372ba.png","aa259ddd863027c59146b33666f57c2c"],["/react/build/static/media/introduce.30b50cda.png","b3ccb50edadf6c46d3b4bbe1c0dc4eb5"],["/react/build/static/media/jijinhui.041fb524.png","827c1f894afb783870599d02cb5c4c3f"],["/react/build/static/media/joinUs.26ec28cd.png","9cd5fee199af626730ee25a37f118eb3"],["/react/build/static/media/lightspot-bg.87ad53a9.png","d0ab18b0b4f74eab6b2bfe3aa3a2b88c"],["/react/build/static/media/lightspot1.9214f0ae.png","ac3bd597543bcfb1a17a039b9f955c50"],["/react/build/static/media/lightspot2.b7053786.png","5d91f7f67c0f69fb68d40416c15dc9eb"],["/react/build/static/media/lightspot3.2f8af8da.png","b6a4577e53a6ca085671ffd9a8b62ce0"],["/react/build/static/media/lightspot4.93769763.png","f9f2f6654b165d72d9780e101e19e845"],["/react/build/static/media/loginBg.1cddcbff.png","86ec58b9f8f3f50140770546cf840257"],["/react/build/static/media/logo.62af9fee.png","bdb086d84a720bfb0c7a3bef50cc6422"],["/react/build/static/media/logo.f0d4927b.svg","9ee4b6d239cf05d9118b4a863ca4bfa3"],["/react/build/static/media/logo1.77949f0b.png","c55c1cd504df9c1e180610117d52b26c"],["/react/build/static/media/logo1.ec3c2e67.png","1b63bf1709328011dd17013bd4999fd3"],["/react/build/static/media/logo2.b04c07f2.png","82f448805e0380b391c77943d02b1d46"],["/react/build/static/media/mulan.690d2289.png","b9d8b87a75927dc097d45280c2ca0f4b"],["/react/build/static/media/newIcon.6ce5faf2.svg","47650e72fa1a06001e80def6f101b6af"],["/react/build/static/media/news-item.c2aef644.png","fd090d94d0fe94b8f12a9e68ac872c4d"],["/react/build/static/media/news-main.731a5143.png","40d592ac03be023dd1fd67a60a97df57"],["/react/build/static/media/news-main1.d438d3c7.png","f9c1445528c719c33464b6b9d5be8883"],["/react/build/static/media/nodata.298b1c41.png","e2c9a76d2b30ac889eab422a36851b15"],["/react/build/static/media/nps1.b2849b06.png","a22d69867a2d0871e69fe18ceb7a8201"],["/react/build/static/media/nps2.d5d0b666.png","9b14ce3c332a63d95d62716030398ee3"],["/react/build/static/media/partner_bg.88388216.png","eac2e2ad3b1a25d605ed746409b530ef"],["/react/build/static/media/personalInfo1.13c2500e.png","813da468a7e7472edbdf3de5516049f3"],["/react/build/static/media/personalInfo2.f01447c8.png","5176f62523dc034a2977c61065b2e101"],["/react/build/static/media/phone.8973db9e.svg","ac92ccc6336d53cf0e5d53a386eadd78"],["/react/build/static/media/projectBg.774764d7.png","916780acccd06591f270420affece47c"],["/react/build/static/media/projectDetailTaskBg.66b1fb2d.png","161c7fee542a59bdf4cb8a5a94086831"],["/react/build/static/media/qqChat.9e56cc22.png","fc97e294a452fcfae783dc73d1f24ff6"],["/react/build/static/media/registerBg.e14e89f4.png","5ca168f423644e195c7fe270cc728873"],["/react/build/static/media/resetPasswordBg.df9a6167.png","13b9a18d3a09d34b1320713d38fbd04f"],["/react/build/static/media/resultBanner.152068bc.png","f94f4227d3825fa32615af9bf12b45f9"],["/react/build/static/media/resultBanner2.c3095c5d.png","e7a33f637c22dbd6e7703ab7c56cf9aa"],["/react/build/static/media/resultBanner3.e11193de.png","2d21f1a2ad794f632b733ab4ba3ed4aa"],["/react/build/static/media/rightBg.55f14f0c.png","f38c59f756ada99c3eafd76ab2333925"],["/react/build/static/media/sexange.b3665539.png","fe580c3386c0dac7aa9480dbe1c26b9d"],["/react/build/static/media/slick.2630a3e3.svg","f97e3bbf73254b0112091d0192f17aec"],["/react/build/static/media/slick.29518378.woff","b7c9e1e479de3b53f1e4e30ebac2403a"],["/react/build/static/media/slick.a4e97f5a.eot","ced611daf7709cc778da928fec876475"],["/react/build/static/media/slick.c94f7671.ttf","d41f55a78e6f49a5512878df1737e58a"],["/react/build/static/media/softDetailHeadBg.b2bae10a.png","6b1379c5abf77af7fecbabb1368f1d96"],["/react/build/static/media/sponsor11.5e9da48d.png","0cc78d9e2df9b816f79923244d807999"],["/react/build/static/media/sponsor21.8a655acc.png","86d7c2304bf3f60d923bdc6f25951f33"],["/react/build/static/media/sponsor22.96e2b643.png","c26b18460bdc7959b7baddc5bf8e9a8c"],["/react/build/static/media/sponsor31.0fd95bcb.png","099a8680be13f97915df39f8247fe2d9"],["/react/build/static/media/sponsor33.27be3b2d.png","11f04aa6ba51b6ba1ae2e09cdabaff8e"],["/react/build/static/media/studentProject.cd6d6c4f.png","b09a0e1f08910aac316f2aeed243fb76"],["/react/build/static/media/subtitle.5019e086.png","b2d9c74c02d4de483f79085596d0064b"],["/react/build/static/media/tab.12ed44f1.png","581200ee4543ddb99f2eeb0c6df7d4f6"],["/react/build/static/media/tabBackground.18febe91.png","d55a8d32e7d0303ebf04cf4ff42b470a"],["/react/build/static/media/taskbar.49a40f3a.png","80443aacad0a26162d838d4f71af128a"],["/react/build/static/media/teacher-img.e0e2a9bf.png","dae1295a05fabc82382c0116d8f3e5c8"],["/react/build/static/media/teacher1.ee492a9b.png","b995335297dd994485a4855aea43ff27"],["/react/build/static/media/teacher10.9298db29.png","b081bd10fc70f320e0f4448fd1c69da6"],["/react/build/static/media/teacher11.8a0d8669.png","3a3db3db638f5426e7bda4bef24a2484"],["/react/build/static/media/teacher12.47e02224.png","0635d72f566d9365bda9d8d88d80defd"],["/react/build/static/media/teacher13.f7886e36.png","f903bba276231fd009dfa6fc32c8b1b6"],["/react/build/static/media/teacher14.83b48396.png","5b3290eacd871568046c9b5591591d7b"],["/react/build/static/media/teacher15.5d777604.png","2e7eb1c34f389f025d84e13c54ca8297"],["/react/build/static/media/teacher2.b2b9919d.png","7279b7ba87a86ca7d46dfa6d0c9df088"],["/react/build/static/media/teacher3.20cb800b.png","e8277cbe9f532bccc0266be07afb402b"],["/react/build/static/media/teacher4.c15a0bda.png","9a0016c1a46ce39fa8e415bcd9ae72b4"],["/react/build/static/media/teacher5.9397d078.png","51a49c0ea258d928438153cfbd399be4"],["/react/build/static/media/teacher6.06b6f465.png","f1b92d0ac115f75b438f05a31fd0b551"],["/react/build/static/media/teacher7.4102dcc1.png","6e4e9fff991f8cc1f88479706ab55a37"],["/react/build/static/media/teacher8.5d3f117e.png","be6bfe0c206b2089065b0313c07e7eb0"],["/react/build/static/media/teacher9.69b0adae.png","e0666a81294a17768829744aa117ea24"],["/react/build/static/media/time-bg.f61a7e5f.png","ebb56fbe31fc6fc51fb81da23fdfcdf8"],["/react/build/static/media/top-1.54a95b91.png","3d2bbe827191450fb82fc04b7ba925c9"],["/react/build/static/media/top-2.2a21b300.png","7cddde07beac784e8edd065bf3c5f4e2"],["/react/build/static/media/top-3.48ab81a2.png","702e62391cc8148d3f6f405720527121"],["/react/build/static/media/top-bg.7b89cf7e.png","1cf27750ff50673346a49beeab0c3bb9"],["/react/build/static/media/typebg.b2b0ea32.png","c02c413fdc8fbcb9bd4a042ff9f0ea5a"],["/react/build/static/media/xigongye.d51231d3.png","751514079a6e7d1cfd19af4527749e53"],["/react/build/static/media/xiuos.67682257.png","6fd484b0615e89cb2a2fcde1e6e261a1"],["/react/build/static/media/xjy.6e62f4d6.png","6542ba49c3e8515e8cada3f15f7ab094"],["/react/build/static/media/浙江大学.3c545e69.png","b305afeded0784578319d459a6d71cc7"],["/react/build/ts.worker.js.LICENSE.txt","27424a6e40c70ed4c68b96c0215841f1"]],cacheName="sw-precache-v3-sw-precache-webpack-plugin-"+(self.registration?self.registration.scope:""),ignoreUrlParametersMatching=[/^utm_/],addDirectoryIndex=function(c,a){c=new URL(c);return"/"===c.pathname.slice(-1)&&(c.pathname+=a),c.toString()},cleanResponse=function(a){return a.redirected?("body"in a?Promise.resolve(a.body):a.blob()).then(function(c){return new Response(c,{headers:a.headers,status:a.status,statusText:a.statusText})}):Promise.resolve(a)},createCacheKey=function(c,a,e,d){c=new URL(c);return d&&c.pathname.match(d)||(c.search+=(c.search?"&":"")+encodeURIComponent(a)+"="+encodeURIComponent(e)),c.toString()},isPathWhitelisted=function(c,a){if(0===c.length)return!0;var e=new URL(a).pathname;return c.some(function(c){return e.match(c)})},stripIgnoredUrlParameters=function(c,e){c=new URL(c);return c.hash="",c.search=c.search.slice(1).split("&").map(function(c){return c.split("=")}).filter(function(a){return e.every(function(c){return!c.test(a[0])})}).map(function(c){return c.join("=")}).join("&"),c.toString()},hashParamName="_sw-precache",urlsToCacheKeys=new Map(precacheConfig.map(function(c){var a=c[0],c=c[1],a=new URL(a,self.location),c=createCacheKey(a,hashParamName,c,/\.\w{8}\./);return[a.toString(),c]}));function setOfCachedUrls(c){return c.keys().then(function(c){return c.map(function(c){return c.url})}).then(function(c){return new Set(c)})}self.addEventListener("install",function(c){c.waitUntil(caches.open(cacheName).then(function(d){return setOfCachedUrls(d).then(function(e){return Promise.all(Array.from(urlsToCacheKeys.values()).map(function(a){if(!e.has(a)){var c=new Request(a,{credentials:"same-origin"});return fetch(c).then(function(c){if(!c.ok)throw new Error("Request for "+a+" returned a response with status "+c.status);return cleanResponse(c).then(function(c){return d.put(a,c)})})}}))})}).then(function(){return self.skipWaiting()}))}),self.addEventListener("activate",function(c){var e=new Set(urlsToCacheKeys.values());c.waitUntil(caches.open(cacheName).then(function(a){return a.keys().then(function(c){return Promise.all(c.map(function(c){if(!e.has(c.url))return a.delete(c)}))})}).then(function(){return self.clients.claim()}))}),self.addEventListener("fetch",function(a){var e,c,d;"GET"===a.request.method&&(e=stripIgnoredUrlParameters(a.request.url,ignoreUrlParametersMatching),d="index.html",(c=urlsToCacheKeys.has(e))||(e=addDirectoryIndex(e,d),c=urlsToCacheKeys.has(e)),d="/react/build/index.html",!c&&"navigate"===a.request.mode&&isPathWhitelisted(["^(?!\\/__).*"],a.request.url)&&(e=new URL(d,self.location).toString(),c=urlsToCacheKeys.has(e)),c&&a.respondWith(caches.open(cacheName).then(function(c){return c.match(urlsToCacheKeys.get(e)).then(function(c){if(c)return c;throw Error("The cached response that was expected is missing.")})}).catch(function(c){return console.warn('Couldn\'t serve response for "%s" from cache: %O',a.request.url,c),fetch(a.request)})))}); \ No newline at end of file diff --git a/static/css/43.f5436beb.chunk.css b/static/css/43.f5436beb.chunk.css new file mode 100644 index 000000000..c718822fd --- /dev/null +++ b/static/css/43.f5436beb.chunk.css @@ -0,0 +1 @@ +.branchDropdown{border:1px solid #eee;border-radius:4px;display:flex;justify-content:center;height:40px;line-height:40px;min-width:220px}.branchDropdown .ant-dropdown-trigger{width:100%;padding:0 15px;display:flex;justify-content:space-between;align-items:center;cursor:pointer}.branchOptions{width:220px;box-shadow:0 0 3px 1px hsla(0,0%,52.5%,.4);border-radius:3px;background:#fff;max-height:300px}.OptionsUl{min-height:50px;max-height:220px;overflow-y:auto}.OptionsUl li{height:30px;line-height:30px;cursor:pointer;padding:0 20px;margin:5px 0}.OptionsUl li:hover{background-color:#f0f0f0}.OptionsUl li a{display:block}.OptionsInput{height:32px;padding-left:4px;line-height:32px;width:100%}.branch-tagBox{border:1px solid #d0d0d0;border-radius:3px;height:32px;display:flex;align-items:center;cursor:pointer;min-width:104px}.branch-tagBox:hover{background-color:#f3f4f6}.branch-tagBox-list{background:#fff;box-shadow:0 4px 8px 2px hsla(0,0%,83.1%,.5);border-radius:4px}.branch-tagBox-list .ant-popover-arrow{display:none}.branch-tagBox-list.ant-popover.ant-popover-placement-bottom{padding-top:0}.branch-tagBox-list .branch-tagBox .ant-dropdown-link{display:block;flex:1;max-width:105px}.branch-tagBox-list .ant-popover-inner-content{padding:0}.overlayBranch{width:325px}.overlayBranch .navUl{margin-top:8px;height:30px;line-height:30px}.overlayBranch .navUl li{height:30px;line-height:30px;padding:0 5px;margin-left:20px!important}.overlayBranch .navUl li.ant-menu-item-selected{border-color:#466aff!important;color:#466aff!important}.overlayBranch .navUl li.ant-menu-item-active{border-color:transparent}.listTips{padding:20px 0;text-align:center}.urlMenu{line-height:30px;margin-bottom:10px;padding:15px 20px 0;border-bottom:none}.urlMenu li.ant-menu-item{height:30px;line-height:30px;padding:0 5px;margin-right:20px!important}.urlMenu li.ant-menu-item.ant-menu-item-active,.urlMenu li.ant-menu-item.ant-menu-item-selected{color:#333}.urlMenu li.ant-menu-item.ant-menu-item-selected{border-color:#466aff!important}.urlMenu li.ant-menu-item.ant-menu-item-active{border-color:transparent}.copytool{margin:0 10px}.boxPanel{width:1200px;margin:20px auto;border-radius:4px;border:1px solid #eee;min-height:500px}.boxPanel .contrbuteList{display:flex;flex-wrap:wrap;padding:20px;align-items:flex-start}.boxPanel .contrbuteList>div{width:20%}.descmodal .ant-row.ant-form-item{margin-bottom:10px}.descmodal .ant-col.ant-form-item-label{height:20px;line-height:20px}.descmodal .ant-select-selection--multiple{padding:0 0 5px!important}.descmodal .ant-select-selection--multiple .ant-select-selection__choice{color:#466aff;background-color:#eff2ff}.descmodal .ant-select-selection--multiple .ant-select-selection__choice .ant-select-selection__choice__remove{color:#466aff}.menuslist{z-index:100;width:297px;background:#fff;box-shadow:0 4px 8px 2px hsla(0,0%,83.1%,.5);border-radius:4px}.menuslist .searchBox{padding:15px;border-bottom:1px solid #eee}.menuslist .ant-anchor{padding-left:0!important}.menuslist .ant-anchor .ant-anchor-ink:before{width:0}.menuslist .ant-anchor-wrapper{margin-left:0;padding:5px 0;max-height:255px!important;padding-left:0!important}.menuslist .ant-anchor-wrapper .items{border-radius:4px;margin-bottom:5px;cursor:pointer}.menuslist .ant-anchor-wrapper .items .ant-anchor-link-title{color:#333!important}.menuslist .ant-anchor-wrapper .items:hover{background-color:#f3f4f6}.menuslist .ant-anchor-wrapper .items.active{background-color:#2a61ff}.menuslist .ant-anchor-wrapper .items.active .ant-anchor-link-title{color:#fff!important}.menuslist .ant-anchor-wrapper .ant-anchor-link{padding:0;height:30px;line-height:30px}.menuslist .ant-anchor-wrapper .ant-anchor-ink:before{background-color:#fff}.subMenu{display:flex;padding-top:30px}.subMenu a{width:83px;font-weight:500;line-height:30px;height:32px;color:#333!important;text-align:center;border:1px solid #d0d0d0;border-radius:0 4px 4px 0;background:rgba(250,251,252,0)}.subMenu a:first-child{border-right:none;border-radius:4px 0 0 4px}.subMenu a.active{background-color:#466aff;color:#fff!important;border-color:#466aff}.editorBorderBox .CodeMirror{height:unset}.editorBorderBox .CodeMirror .CodeMirror-scroll{min-height:300px}.setInputAddon{width:350px;margin-right:20px;position:relative}.setInputAddon .ant-input-group-addon{height:30px;line-height:30px;border:1px solid #d9d9d9!important;border-right:none!important}.setInputAddon.red .ant-input-group-addon{border-color:red!important}.setInputAddon.red .ant-input-group>.ant-input:last-child{border-color:red red red #d9d9d9!important}.editorBorder .editorBorderBox{border-radius:2px;border:1px solid #d0d0d0;border-bottom:none}.editorBorder .editorBorderSubmitBox{padding:20px 0!important}.editorBorderSubmitBox{border-top:1px solid #d0d0d0}.userScrew{margin:20px 0;border:1px solid #f4f4f4;border-radius:5px;display:-ms-flexbox;display:flex;padding:20px;position:relative}.userScrew:before{content:"";position:absolute;left:110px;top:-20px;border:10px solid transparent;border-bottom-color:#f4f4f4}.userScrew:after{content:"";position:absolute;left:111px;top:-18px;border:9px solid transparent;border-bottom-color:#fff;z-index:1}.ant-input-group .ant-input:focus{border-right:1px solid #466aff!important}.ant-btn-primary.grey{border:1px solid #bbb;background-color:#bbb}.userScrew .ant-row{margin-bottom:15px}.screwImg{width:34px;height:34px;border-radius:50%;margin-right:10px}.screwPanel{-ms-flex:1 1;flex:1 1}.screwPanel .ant-radio-wrapper{display:block}.branchTable .margin-view-overlays{border-right:1px solid #eaeaea;background-color:#fbfbfb}@media screen and (max-width:400px){.setInputAddon{width:100%;margin-right:0}}.grid-item{display:grid;-ms-flex-align:center;align-items:center;grid-template-columns:-webkit-max-content 1fr;grid-template-columns:max-content 1fr}.text-right{text-align:right}.upload-file-repo{height:200px;padding-bottom:20px;width:100%;display:inline-block}.upload-file-repo.red .ant-upload{border-color:red}.fileName{display:flex;align-items:center}.monaco-editor .view-overlays .current-line{border:none!important;background-color:rgba(48,232,132,.15)}.monaco-editor .margin-view-overlays .current-line{background-color:rgba(48,232,132,.15)}.branchTable .margin-view-overlays{border-right:none!important;background-color:#fcfcfc!important}.editorBorderBox{position:relative}.ide-tool-bar{position:absolute;z-index:10;right:114px;top:-37px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.ant-switch-checked{background-color:#466aff}.read-more{font-size:18px;margin:0 10px 0 15px;color:#666}.recommandOri.slick-slider{width:1300px;margin:20px auto 40px}.recommandOri.slick-slider .slick-track{margin-left:0}.recommandOri.slick-slider .slick-slide li>a{display:flex;align-items:center;justify-content:center}.iconBtn i{color:#666}.iconBtn span{margin-left:4px;color:#333!important}.iconBtn span:last-child{font-weight:500}.iconBtn:hover i,.iconBtn:hover span{color:#466aff!important}.recommandProjects.slick-slider{width:1230px;margin:20px auto 40px}.recommandProjects.slick-slider .slick-track{margin-left:0}.recommandProjects.slick-slider .slick-arrow.slick-next:before,.recommandProjects.slick-slider .slick-arrow.slick-next li.slick-active button:before,.recommandProjects.slick-slider .slick-arrow.slick-prev:before,.recommandProjects.slick-slider .slick-arrow.slick-prev li.slick-active button:before{color:#999}.recommandProjects.slick-slider .slick-dots{bottom:-29px}.recommandProjects.slick-slider .slick-dots li button:before{color:#909090}.recommandProjects.slick-slider .slick-slide{padding:0 15px;box-sizing:border-box}.recommandProjects.slick-slider .slick-slide>div{background-color:#fff;border-radius:10px;width:100%;cursor:pointer;border:1px solid #eee}.recommandProjects.slick-slider .slick-slide>div:hover{box-shadow:0 2px 20px 0 rgba(0,0,0,.1)}.recommandProjects.slick-slider .baseInfo{padding:18px 15px;display:flex;font-size:12px;color:#888}.recommandProjects.slick-slider .baseInfo .look{margin-right:10px}.recommandProjects.slick-slider .baseInfo .look i{margin-right:5px}.recommandProjects.slick-slider .baseInfo .type{flex:1;width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;text-align:right}.recommandProjects.slick-slider .mainInfo{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:160px;border-bottom:1px solid #eee;padding:20px;box-sizing:border-box}.recommandProjects.slick-slider .mainInfo img{height:50px;width:50px;border-radius:50%}.recommandProjects.slick-slider .mainInfo .name{font-size:13px;color:#666;height:18px;line-height:18px;margin-top:12px}.recommandProjects.slick-slider .mainInfo .school{margin-top:12px;color:#333;font-size:16px;height:22px;line-height:22px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:100%}.Panels{max-width:1200px;margin:0 auto}.Panels .panelmenu{padding-top:20px}.Panels .panelmenu .depotBtn .mr-5{margin-right:-5px}.Panels .panelmenu .depotBtn .ant-btn{height:32px;line-height:32px;width:83px;text-align:center;padding:0;font-weight:500;font-size:14px}.Panels .panelmenu .depotBtn .ant-btn-default{color:#333;border-color:#d0d0d0}.Panels .panelmenu .depotBtn .ant-btn-default:hover{background:#f3f4f6}.Panels .panelmenu .depotBtn .ant-btn-primary{color:#fff;background-color:#466aff;border:none}.Panels .panelmenu .depotBtn .ant-btn-primary:hover{background-color:rgba(70,106,255,.85)}.Panels .addOptionBtn,.Panels .depotBtn{display:flex}.Panels .addOptionBtn a,.Panels .depotBtn a{color:#333!important;font-weight:500!important;border-radius:5px;width:83px;height:32px;line-height:30px;background:#fff;border:1px solid #d0d0d0;margin-right:14px;text-align:center}.Panels .addOptionBtn a:active,.Panels .addOptionBtn a:hover,.Panels .depotBtn a:active,.Panels .depotBtn a:hover{background:#f3f4f6}.Panels .infoCount{display:inline-block;width:24px;text-align:center;height:24px;line-height:24px;background-color:hsla(0,0%,60%,.13);color:#666;border-radius:12px;margin-left:6px;font-size:12px}.Panels .attrPerson{padding-top:12px;display:flex;flex-wrap:wrap;padding-bottom:2px}.Panels .attrPerson a{margin:0 17px 10px 0}.Panels .attrPerson a img{border-radius:50%;width:40px;height:40px}.Panels .attrPerson a:nth-child(5n){margin-right:0}.Panels .progress{display:flex;border-radius:2px;height:11px;margin-top:12px}.Panels .progress span:first-child{border-radius:2px 0 0 2px}.Panels .progress span:last-child{border-radius:0 2px 2px 0}.Panels .progresstip{margin-top:15px;flex-wrap:wrap}.Panels .progresstip i.zero{position:absolute;display:block;border-radius:50%;height:8px;width:8px;left:0;top:8px}.Panels .progresstip>span{padding-left:15px;position:relative;min-width:33.5%;font-size:12px;font-weight:400;color:#666}.Panels .progresstip>span span:last-child{margin-left:5px}.Panels .listtable{margin-top:20px}.Panels .listtable .listtablehead{display:flex;justify-content:space-between;align-items:flex-start;padding:12px 20px 11px;border-radius:4px 4px 0 0;border:1px solid rgba(42,97,255,.23);border-bottom:none;background-color:#fafcff}.Panels .listtable .listtablehead+.listtablebody{border-top-color:rgba(42,97,255,.23)}.Panels .listtable .listtablehead .ellipsistxt{margin-top:2px;margin-left:13px;line-height:18px;flex:1;width:0;color:#666}.Panels .listtable .listtablehead .ellipsistxt:hover .markdown-body,.Panels .listtable .listtablehead .ellipsistxt:hover .markdown-body a{color:#466aff}.Panels .listtable .listtablehead .ellipsistxt li{line-height:15px}.Panels .listtable .listtablehead .ellipsistxt #ptxt{margin-bottom:0;word-break:break-all;overflow:unset;white-space:pre-wrap;white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;word-wrap:break-word}.Panels .listtable .listtablehead .ellipsistxt #ptxt .markdown-body{line-height:10px;font-size:14px}.Panels .listtable .listtablehead .ellipsistxt #ptxt .markdown-body p{margin:1px 0 0!important;font-size:14px!important}.Panels .listtable .listtablehead .ellipsistxt #ptxt .markdown-body ol,.Panels .listtable .listtablehead .ellipsistxt #ptxt .markdown-body ul{padding-bottom:3px}.Panels .listtable .listtablehead .ellipsistxt #ptxt .markdown-body ol li,.Panels .listtable .listtablehead .ellipsistxt #ptxt .markdown-body ul li{min-height:18px}.Panels .listtable .listtablehead .ellipsistxt #ptxt .markdown-body table{line-height:1;background:#fafcff}.Panels .listtable .listtablehead .ellipsistxt #ptxt .markdown-body:first-child{margin-top:-1px!important}.Panels .listtable .listtablehead .ellipsistxt.hidetxt{height:24px;overflow:hidden;position:relative;padding-right:8px}.Panels .listtable .listtablehead .ellipsis{margin-left:8px;cursor:pointer;height:16px;background:hsla(0,0%,60%,.2);border-radius:2px;padding:0 4px;height:14px;line-height:14px;margin-top:9px}.Panels .listtable .listtablehead .ellipsis i{font-size:15px!important;color:#333;height:14px;line-height:14px}.Panels .listtable .listtablebody{border-radius:0 0 4px 4px;border:1px solid #d0d0d0}.Panels .listtable .listtablebody li a{color:#05101a}.Panels .listtable .listtablebody li a:hover{color:#466aff}.Panels .listtable .listtablebody li.listtablepath a{color:#40a9ff}.Panels .listtable .listtablebody li.listtablepath p{margin-bottom:0!important}.Panels .listtable .listtablebody>li{height:38px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #d9d9d9;padding:0 20px 0 24px}.Panels .listtable .listtablebody>li:hover{background-color:#f3f4f6}.Panels .listtable .listtablebody>li>span:first-child{width:30%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.Panels .listtable .listtablebody>li>span:nth-child(2){width:60%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.Panels .listtable .listtablebody>li>span:nth-child(3){width:10%;text-align:right}.Panels .listtable .listtablebody>li:last-child{border-bottom:none}.drawerBtn{position:fixed;left:-13px;width:33px;background:#fff;border:1px solid #666;border-radius:0 12px 12px 0;height:70px;top:50%;margin-top:-35px;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;padding-left:7px}.drawerBtn,.drawerBtn:hover{box-shadow:0 0 8px 3px rgba(0,0,0,.09)}.drawerBtn span{writing-mode:vertical-lr;color:#333;width:25px;font-size:14px}.drawerBtn i{color:#333;height:14px;line-height:14px;width:14px;margin-left:2px;margin-bottom:3px}.downMenu{width:329px;background-color:#fff;box-shadow:0 1px 8px 1px hsla(0,0%,83.1%,.5);padding-bottom:14px}.downMenu .ant-menu-item{height:50px;line-height:50px}.fileMenu{width:83px}.fileMenu li{padding:6px 0!important;text-align:center;width:100%}.catelogue{cursor:pointer;background:#fafbfc;border-radius:4px;border:1px solid #d0d0d0;font-size:15px;font-weight:400;margin-right:12px;padding:0 10px;height:30px;line-height:30px;color:#666!important;display:flex;align-items:center}.catelogue .ant-dropdown-menu-item{border-radius:8px;text-align:left!important}.catelogue .ant-dropdown-menu-item a{width:350px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.catelogue:hover{background-color:#f3f4f6}.catelogue span{margin-top:1px}.submoduleStyle,.submoduleStyle i{cursor:default}.submoduleStyle:hover{color:#05101a}.pinfos a,.pinfos i{color:#666}.pinfos:hover a,.pinfos:hover i{color:#2a61ff!important}.graph{flex:1;margin:0 12px}.graph .ant-typography{white-space:pre-wrap;margin-bottom:0}.ant-anchor-wrapper{padding-left:2px!important}.ant-anchor-wrapper .ant-anchor-ink:before{background-color:#fff}.coderSubPage{width:1200px;margin:0 auto}.griditemAnchor{margin-left:0!important;padding:0!important;border-bottom:1px solid #ddd}.griditemAnchor .ant-anchor{display:flex;align-items:center;justify-content:space-between;padding:10px 20px}.griditemAnchor .griditemCate{color:#333;font-size:16px;display:flex;align-items:center}.griditemAnchor .griditemCate .catelogue{margin-left:0}.readmeFile{overflow:inherit}.readmeFile p[align=center]{white-space:normal}.projectHomeTopics{display:flex;flex-wrap:wrap}.projectHomeTopics.myProList .proHomeTopic{background-color:#f3f8ff;color:#4c5b76}.projectHomeTopics .proHomeTopic{background-color:#eff2ff;border-radius:4px;max-width:158px;padding:0 10px;height:24px;line-height:24px;color:#466aff} \ No newline at end of file diff --git a/static/css/62.94519a29.chunk.css b/static/css/62.94519a29.chunk.css new file mode 100644 index 000000000..83e0e03a0 --- /dev/null +++ b/static/css/62.94519a29.chunk.css @@ -0,0 +1 @@ +.editorBorderBox .CodeMirror{height:unset}.editorBorderBox .CodeMirror .CodeMirror-scroll{min-height:300px}.setInputAddon{width:350px;margin-right:20px;position:relative}.setInputAddon .ant-input-group-addon{height:30px;line-height:30px;border:1px solid #d9d9d9!important;border-right:none!important}.setInputAddon.red .ant-input-group-addon{border-color:red!important}.setInputAddon.red .ant-input-group>.ant-input:last-child{border-color:red red red #d9d9d9!important}.editorBorder .editorBorderBox{border-radius:2px;border:1px solid #d0d0d0;border-bottom:none}.editorBorder .editorBorderSubmitBox{padding:20px 0!important}.editorBorderSubmitBox{border-top:1px solid #d0d0d0}.userScrew{margin:20px 0;border:1px solid #f4f4f4;border-radius:5px;display:-ms-flexbox;display:flex;padding:20px;position:relative}.userScrew:before{content:"";position:absolute;left:110px;top:-20px;border:10px solid transparent;border-bottom-color:#f4f4f4}.userScrew:after{content:"";position:absolute;left:111px;top:-18px;border:9px solid transparent;border-bottom-color:#fff;z-index:1}.ant-input-group .ant-input:focus{border-right:1px solid #466aff!important}.ant-btn-primary.grey{border:1px solid #bbb;background-color:#bbb}.userScrew .ant-row{margin-bottom:15px}.screwImg{width:34px;height:34px;border-radius:50%;margin-right:10px}.screwPanel{-ms-flex:1 1;flex:1 1}.screwPanel .ant-radio-wrapper{display:block}.branchTable .margin-view-overlays{border-right:1px solid #eaeaea;background-color:#fbfbfb}@media screen and (max-width:400px){.setInputAddon{width:100%;margin-right:0}}.grid-item{display:grid;-ms-flex-align:center;align-items:center;grid-template-columns:-webkit-max-content 1fr;grid-template-columns:max-content 1fr}.text-right{text-align:right}.upload-file-repo{height:200px;padding-bottom:20px;width:100%;display:inline-block}.upload-file-repo.red .ant-upload{border-color:red}.fileName{display:flex;align-items:center} \ No newline at end of file diff --git a/static/css/68.d4544d53.chunk.css b/static/css/68.d4544d53.chunk.css new file mode 100644 index 000000000..1e2ca4ad4 --- /dev/null +++ b/static/css/68.d4544d53.chunk.css @@ -0,0 +1 @@ +.editorBorderBox .CodeMirror{height:unset}.editorBorderBox .CodeMirror .CodeMirror-scroll{min-height:300px}.setInputAddon{width:350px;margin-right:20px;position:relative}.setInputAddon .ant-input-group-addon{height:30px;line-height:30px;border:1px solid #d9d9d9!important;border-right:none!important}.setInputAddon.red .ant-input-group-addon{border-color:red!important}.setInputAddon.red .ant-input-group>.ant-input:last-child{border-color:red red red #d9d9d9!important}.editorBorder .editorBorderBox{border-radius:2px;border:1px solid #d0d0d0;border-bottom:none}.editorBorder .editorBorderSubmitBox{padding:20px 0!important}.editorBorderSubmitBox{border-top:1px solid #d0d0d0}.userScrew{margin:20px 0;border:1px solid #f4f4f4;border-radius:5px;display:-ms-flexbox;display:flex;padding:20px;position:relative}.userScrew:before{content:"";position:absolute;left:110px;top:-20px;border:10px solid transparent;border-bottom-color:#f4f4f4}.userScrew:after{content:"";position:absolute;left:111px;top:-18px;border:9px solid transparent;border-bottom-color:#fff;z-index:1}.ant-input-group .ant-input:focus{border-right:1px solid #466aff!important}.ant-btn-primary.grey{border:1px solid #bbb;background-color:#bbb}.userScrew .ant-row{margin-bottom:15px}.screwImg{width:34px;height:34px;border-radius:50%;margin-right:10px}.screwPanel{-ms-flex:1 1;flex:1 1}.screwPanel .ant-radio-wrapper{display:block}.branchTable .margin-view-overlays{border-right:1px solid #eaeaea;background-color:#fbfbfb}@media screen and (max-width:400px){.setInputAddon{width:100%;margin-right:0}}.grid-item{display:grid;-ms-flex-align:center;align-items:center;grid-template-columns:-webkit-max-content 1fr;grid-template-columns:max-content 1fr}.text-right{text-align:right}.upload-file-repo{height:200px;padding-bottom:20px;width:100%;display:inline-block}.upload-file-repo.red .ant-upload{border-color:red}.fileName{display:flex;align-items:center}.monaco-editor .view-overlays .current-line{border:none!important;background-color:rgba(48,232,132,.15)}.monaco-editor .margin-view-overlays .current-line{background-color:rgba(48,232,132,.15)}.branchTable .margin-view-overlays{border-right:none!important;background-color:#fcfcfc!important}.editorBorderBox{position:relative}.ide-tool-bar{position:absolute;z-index:10;right:114px;top:-37px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.ant-switch-checked{background-color:#466aff}.read-more{font-size:18px;margin:0 10px 0 15px;color:#666} \ No newline at end of file diff --git a/static/js/43.698d409b.chunk.js b/static/js/43.698d409b.chunk.js new file mode 100644 index 000000000..db256b277 --- /dev/null +++ b/static/js/43.698d409b.chunk.js @@ -0,0 +1 @@ +(this.webpackJsonp=this.webpackJsonp||[]).push([[43,24],{"/oTB":function(e,t,n){},"/wGt":function(e,t,n){"use strict";n.r(t);var r=n("cDcd"),a=n("1W/9"),i=n("VCL8"),o=n("TSYQ"),s=n.n(o),l=n("qx4F"),c=n("4IlW"),d={transition:"transitionend",WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend"},u=Object.keys(d).filter((function(e){if("undefined"==typeof document)return!1;var t=document.getElementsByTagName("html")[0];return e in(t?t.style:{})}))[0],p=d[u];function m(e,t,n,r){e.addEventListener?e.addEventListener(t,n,r):e.attachEvent&&e.attachEvent("on".concat(t),n)}function f(e,t,n,r){e.removeEventListener?e.removeEventListener(t,n,r):e.attachEvent&&e.detachEvent("on".concat(t),n)}var _=function(e){return!isNaN(parseFloat(e))&&isFinite(e)},g=!("undefined"!=typeof window&&window.document&&window.document.createElement);function h(e){return(h="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function w(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function b(e,t){for(var n=0;n1||(n.startPos={x:e.touches[0].clientX,y:e.touches[0].clientY})},n.removeMoveHandler=function(e){if(!(e.changedTouches.length>1)){var t=e.currentTarget,r=e.changedTouches[0].clientX-n.startPos.x,a=e.changedTouches[0].clientY-n.startPos.y;(t===n.maskDom||t===n.handlerDom||t===n.contentDom&&function e(t,n,r,a){if(!n||n===document||n instanceof Document)return!1;if(n===t.parentNode)return!0;var i=Math.max(Math.abs(r),Math.abs(a))===Math.abs(a),o=Math.max(Math.abs(r),Math.abs(a))===Math.abs(r),s=n.scrollHeight-n.clientHeight,l=n.scrollWidth-n.clientWidth,c=document.defaultView.getComputedStyle(n),d="auto"===c.overflowY||"scroll"===c.overflowY,u="auto"===c.overflowX||"scroll"===c.overflowX,p=s&&d,m=l&&u;return!!(i&&(!p||p&&(n.scrollTop>=s&&a<0||n.scrollTop<=0&&a>0))||o&&(!m||m&&(n.scrollLeft>=l&&l<0||n.scrollLeft<=0&&l>0)))&&e(t,n.parentNode,r,a)}(t,e.target,r,a))&&e.preventDefault()}},n.transitionEnd=function(e){var t=e.target;f(t,p,n.transitionEnd),t.style.transition=""},n.onKeyDown=function(e){if(e.keyCode===c.a.ESC){var t=n.props.onClose;e.stopPropagation(),t&&t(e)}},n.onWrapperTransitionEnd=function(e){var t=n.props,r=t.open,a=t.afterVisibleChange;e.target===n.contentWrapper&&e.propertyName.match(/transform$/)&&(n.dom.style.transition="",!r&&n.getCurrentDrawerSome()&&(document.body.style.overflowX="",n.maskDom&&(n.maskDom.style.left="",n.maskDom.style.width="")),a&&a(!!r))},n.openLevelTransition=function(){var e=n.props,t=e.open,r=e.width,a=e.height,i=n.getHorizontalBoolAndPlacementName(),o=i.isHorizontal,s=i.placementName,l=n.contentDom?n.contentDom.getBoundingClientRect()[o?"width":"height"]:0,c=(o?r:a)||l;n.setLevelAndScrolling(t,s,c)},n.setLevelTransform=function(e,t,r,a){var i=n.props,o=i.placement,s=i.levelMove,l=i.duration,c=i.ease,d=i.showMask;n.levelDom.forEach((function(i){i.style.transition="transform ".concat(l," ").concat(c),m(i,p,n.transitionEnd);var u,f,_=e?r:0;if(s){var g=(f="function"==typeof(u=s)?u({target:i,open:e}):u,Array.isArray(f)?2===f.length?f:[f[0],f[1]]:[f]);_=e?g[0]:g[1]||0}var h="number"==typeof _?"".concat(_,"px"):_,w="left"===o||"top"===o?h:"-".concat(h);w=d&&"right"===o&&a?"calc(".concat(w," + ").concat(a,"px)"):w,i.style.transform=_?"".concat(t,"(").concat(w,")"):""}))},n.setLevelAndScrolling=function(e,t,r){var a=n.props.onChange;if(!g){var i=document.body.scrollHeight>(window.innerHeight||document.documentElement.clientHeight)&&window.innerWidth>document.body.offsetWidth?Object(l.a)(!0):0;n.setLevelTransform(e,t,r,i),n.toggleScrollingToDrawerAndBody(i)}a&&a(e)},n.toggleScrollingToDrawerAndBody=function(e){var t=n.props,r=t.getOpenCount,a=t.getContainer,i=t.showMask,o=t.open,s=a&&a(),l=r&&r();if(s&&s.parentNode===document.body&&i){var c=["touchstart"],d=[document.body,n.maskDom,n.handlerDom,n.contentDom];o&&"hidden"!==document.body.style.overflow?(e&&n.addScrollingEffect(e),1===l&&(document.body.style.overflow="hidden"),document.body.style.touchAction="none",d.forEach((function(e,t){e&&m(e,c[t]||"touchmove",t?n.removeMoveHandler:n.removeStartHandler,n.passive)}))):n.getCurrentDrawerSome()&&(l||(document.body.style.overflow=""),document.body.style.touchAction="",e&&n.remScrollingEffect(e),d.forEach((function(e,t){e&&f(e,c[t]||"touchmove",t?n.removeMoveHandler:n.removeStartHandler,n.passive)})))}},n.addScrollingEffect=function(e){var t=n.props,r=t.placement,a=t.duration,i=t.ease,o=t.getOpenCount,s=t.switchScrollingEffect;1===(o&&o())&&s();var l="width ".concat(a," ").concat(i),c="transform ".concat(a," ").concat(i);switch(n.dom.style.transition="none",r){case"right":n.dom.style.transform="translateX(-".concat(e,"px)");break;case"top":case"bottom":n.dom.style.width="calc(100% - ".concat(e,"px)"),n.dom.style.transform="translateZ(0)"}clearTimeout(n.timeout),n.timeout=setTimeout((function(){n.dom&&(n.dom.style.transition="".concat(c,",").concat(l),n.dom.style.width="",n.dom.style.transform="")}))},n.remScrollingEffect=function(e){var t,r=n.props,a=r.placement,i=r.duration,o=r.ease,s=r.getOpenCount,l=r.switchScrollingEffect;s&&s()||l(!0),u&&(document.body.style.overflowX="hidden"),n.dom.style.transition="none";var c="width ".concat(i," ").concat(o),d="transform ".concat(i," ").concat(o);switch(a){case"left":n.dom.style.width="100%",c="width 0s ".concat(o," ").concat(i);break;case"right":n.dom.style.transform="translateX(".concat(e,"px)"),n.dom.style.width="100%",c="width 0s ".concat(o," ").concat(i),n.maskDom&&(n.maskDom.style.left="-".concat(e,"px"),n.maskDom.style.width="calc(100% + ".concat(e,"px)"));break;case"top":case"bottom":n.dom.style.width="calc(100% + ".concat(e,"px)"),n.dom.style.height="100%",n.dom.style.transform="translateZ(0)",t="height 0s ".concat(o," ").concat(i)}clearTimeout(n.timeout),n.timeout=setTimeout((function(){n.dom&&(n.dom.style.transition="".concat(d,",").concat(t?"".concat(t,","):"").concat(c),n.dom.style.transform="",n.dom.style.width="",n.dom.style.height="")}))},n.getCurrentDrawerSome=function(){return!Object.keys(x).some((function(e){return x[e]}))},n.getLevelDom=function(e){var t=e.level,r=e.getContainer;if(!g){var a,i=r&&r(),o=i?i.parentNode:null;n.levelDom=[],"all"===t?(o?Array.prototype.slice.call(o.children):[]).forEach((function(e){"SCRIPT"!==e.nodeName&&"STYLE"!==e.nodeName&&"LINK"!==e.nodeName&&e!==i&&n.levelDom.push(e)})):t&&(a=t,Array.isArray(a)?a:[a]).forEach((function(e){document.querySelectorAll(e).forEach((function(e){n.levelDom.push(e)}))}))}},n.getHorizontalBoolAndPlacementName=function(){var e=n.props.placement,t="left"===e||"right"===e;return{isHorizontal:t,placementName:"translate".concat(t?"X":"Y")}},n.state={_self:v(n)},n}var n,a,i;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&k(e,t)}(t,e),n=t,i=[{key:"getDerivedStateFromProps",value:function(e,t){var n=t.prevProps,r=t._self,a={prevProps:e};if(void 0!==n){var i=e.placement,o=e.level;i!==n.placement&&(r.contentDom=null),o!==n.level&&r.getLevelDom(e)}return a}}],(a=[{key:"componentDidMount",value:function(){var e=this;if(!g){var t=!1;try{window.addEventListener("test",null,Object.defineProperty({},"passive",{get:function(){return t=!0,null}}))}catch(e){}this.passive=!!t&&{passive:!1}}var n=this.props.open;this.drawerId="drawer_id_".concat(Number((Date.now()+Math.random()).toString().replace(".",Math.round(9*Math.random()).toString())).toString(16)),this.getLevelDom(this.props),n&&(x[this.drawerId]=n,this.openLevelTransition(),this.forceUpdate((function(){e.domFocus()})))}},{key:"componentDidUpdate",value:function(e){var t=this.props.open;t!==e.open&&(t&&this.domFocus(),x[this.drawerId]=!!t,this.openLevelTransition())}},{key:"componentWillUnmount",value:function(){var e=this.props,t=e.getOpenCount,n=e.open,r=e.switchScrollingEffect,a="function"==typeof t&&t();delete x[this.drawerId],n&&(this.setLevelTransform(!1),document.body.style.touchAction=""),a||(document.body.style.overflow="",r(!0))}},{key:"render",value:function(){var e,t=this,n=this.props,a=n.className,i=n.children,o=n.style,l=n.width,c=n.height,d=(n.defaultOpen,n.open),u=n.prefixCls,p=n.placement,m=(n.level,n.levelMove,n.ease,n.duration,n.getContainer,n.handler),f=(n.onChange,n.afterVisibleChange,n.showMask),g=n.maskClosable,h=n.maskStyle,b=n.onClose,y=n.onHandleClick,v=n.keyboard,k=(n.getOpenCount,n.switchScrollingEffect,function(e,t){if(null==e)return{};var n,r,a=function(e,t){if(null==e)return{};var n,r,a={},i=Object.keys(e);for(r=0;r=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}(n,["className","children","style","width","height","defaultOpen","open","prefixCls","placement","level","levelMove","ease","duration","getContainer","handler","onChange","afterVisibleChange","showMask","maskClosable","maskStyle","onClose","onHandleClick","keyboard","getOpenCount","switchScrollingEffect"])),x=!!this.dom&&d,E=s()(u,(w(e={},"".concat(u,"-").concat(p),!0),w(e,"".concat(u,"-open"),x),w(e,a||"",!!a),w(e,"no-mask",!f),e)),T=this.getHorizontalBoolAndPlacementName().placementName,j="left"===p||"top"===p?"-100%":"100%",S=x?"":"".concat(T,"(").concat(j,")"),C=m&&r.cloneElement(m,{onClick:function(e){m.props.onClick&&m.props.onClick(),y&&y(e)},ref:function(e){t.handlerDom=e}});return r.createElement("div",Object.assign({},k,{tabIndex:-1,className:E,style:o,ref:function(e){t.dom=e},onKeyDown:x&&v?this.onKeyDown:void 0,onTransitionEnd:this.onWrapperTransitionEnd}),f&&r.createElement("div",{className:"".concat(u,"-mask"),onClick:g?b:void 0,style:h,ref:function(e){t.maskDom=e}}),r.createElement("div",{className:"".concat(u,"-content-wrapper"),style:{transform:S,msTransform:S,width:_(l)?"".concat(l,"px"):l,height:_(c)?"".concat(c,"px"):c},ref:function(e){t.contentWrapper=e}},r.createElement("div",{className:"".concat(u,"-content"),ref:function(e){t.contentDom=e},onTouchStart:x&&f?this.removeStartHandler:void 0,onTouchMove:x&&f?this.removeMoveHandler:void 0},i),C))}}])&&b(n.prototype,a),i&&b(n,i),t}(r.Component);E.defaultProps={switchScrollingEffect:function(){}};var T=Object(i.polyfill)(E);function j(e){return(j="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function S(e,t){if(null==e)return{};var n,r,a=function(e,t){if(null==e)return{};var n,r,a={},i=Object.keys(e);for(r=0;r=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}function C(e,t){for(var n=0;n for newlines inside paragraphs.","markdown.preview.linkify":"Enable or disable conversion of URL-like text to links in the markdown preview.","markdown.preview.doubleClickToSwitchToEditor.desc":"Double click in the markdown preview to switch to the editor.","markdown.preview.fontFamily.desc":"Controls the font family used in the markdown preview.","markdown.preview.fontSize.desc":"Controls the font size in pixels used in the markdown preview.","markdown.preview.lineHeight.desc":"Controls the line height used in the markdown preview. This number is relative to the font size.","markdown.preview.markEditorSelection.desc":"Mark the current editor selection in the markdown preview.","markdown.preview.scrollEditorWithPreview.desc":"When a markdown preview is scrolled, update the view of the editor.","markdown.preview.scrollPreviewWithEditor.desc":"When a markdown editor is scrolled, update the view of the preview.","markdown.preview.title":"Open Preview","markdown.previewSide.title":"Open Preview to the Side","markdown.showLockedPreviewToSide.title":"Open Locked Preview to the Side","markdown.showSource.title":"Show Source","markdown.styles.dec":"A list of URLs or local paths to CSS style sheets to use from the markdown preview. Relative paths are interpreted relative to the folder open in the explorer. If there is no open folder, they are interpreted relative to the location of the markdown file. All '\\' need to be written as '\\\\'.","markdown.showPreviewSecuritySelector.title":"Change Preview Security Settings","markdown.trace.desc":"Enable debug logging for the markdown extension.","markdown.preview.refresh.title":"Refresh Preview","markdown.preview.toggleLock.title":"Toggle Preview Locking","configuration.markdown.preview.openMarkdownLinks.description":"Controls how links to other markdown files in the markdown preview should be opened.","configuration.markdown.preview.openMarkdownLinks.inEditor":"Try to open links in the editor","configuration.markdown.preview.openMarkdownLinks.inPreview":"Try to open links in the markdown preview","configuration.markdown.links.openLocation.description":"Controls where links in markdown files should be opened.","configuration.markdown.links.openLocation.currentGroup":"Open links in the active editor group.","configuration.markdown.links.openLocation.beside":"Open links beside the active editor."},pkgNlsJSON:{},nlsList:[],extendConfig:{},webAssets:["package.json","media/highlight.css","media/index.js","media/markdown.css","media/pre.js","media/preview-dark.svg","media/preview-light.svg","README.md","icon.png","schemas/package.schema.json","dist/browser/extension.js"],mode:"public"}},"3Diz":function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=d(n("jsC+")),a=function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,t){var n=[],r=!0,a=!1,i=void 0;try{for(var o,s=e[Symbol.iterator]();!(r=(o=s.next()).done)&&(n.push(o.value),!t||n.length!==t);r=!0);}catch(e){a=!0,i=e}finally{try{!r&&s.return&&s.return()}finally{if(a)throw i}}return n}(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")};n("qVdP");var i=n("cDcd"),o=d(i);n("MN5C");var s=d(n("cJAJ")),l=n("faye"),c=n("sYIF");function d(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){var t=e.projectsId,n=e.branch,d=e.owner,u=e.changeBranch,p=e.branchList,m=e.tagflag,f=void 0===m||m,_=(0,i.useState)(n),g=a(_,2),h=g[0],w=g[1],b=(0,i.useState)(!1),y=a(b,2),v=y[0],k=y[1],x=(0,i.useRef)(null),E=(0,i.useRef)(null);(0,i.useEffect)((function(){document.addEventListener("click",T,!1)}),[]);var T=function(e){var t=e.target,n=(0,l.findDOMNode)(x.current),r=(0,l.findDOMNode)(E.current);if(n&&r){var a=n.contains(t),i=r.contains(t);a||i||k(!1)}};(0,i.useEffect)((function(){w(n)}),[n]);var j=o.default.createElement("div",{ref:x},o.default.createElement(s.default,{visible:v,changeBranch:function(e){k(!1);var t=(0,c.turnbar)(e);u(t)},tagflag:f,projectsId:t,owner:d,branchList:p}));return o.default.createElement(r.default,{placement:"bottomLeft",visible:v,overlay:j,overlayClassName:"branch-tagBox-list",trigger:["click"]},o.default.createElement("div",{className:"branch-tagBox",ref:E,onClick:function(){return k(!v)}},o.default.createElement("span",{className:"color-grey-9 mr3 ml8"},o.default.createElement("i",{className:"iconfont icon-fenzhi2 font-18"})),o.default.createElement("span",{className:"ant-dropdown-link task-hide",style:{fontWeight:"500",minWidth:"45px",maxWidth:"180px"}},h),o.default.createElement("i",{className:"showtag iconfont icon-sanjiaoxing-down font-15 color-grey-9 mr5 ml5 mt1"})))}},"5GOC":function(e,t,n){"use strict";n.r(t),n("cIOH"),n("b56q"),n("15/o")},"760K":function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r,a=(r=n("cDcd"))&&r.__esModule?r:{default:r},i=n("sYIF");t.default=function(e){var t=e.treeValuePath,n=e.returnUlr,r=e.returnMain,o=e.getPathUrl,s=e.identifier;return a.default.createElement("li",{className:"listtablepath"},a.default.createElement("p",null,a.default.createElement("a",{onClick:r,className:"color-blue"},s),t.map((function(e,r){return a.default.createElement(a.default.Fragment,{key:r},r===t.length-1?a.default.createElement("span",{className:"color-grey-6 subFileName",key:r},(0,i.returnbar)(e)):a.default.createElement("a",{onClick:function(){return n(""+o(t,r+1))},className:"color-blue subFileName"},(0,i.returnbar)(e)))}))))}},"7uw7":function(e,t,n){(t=n("JPst")(!1)).push([e.i,"/* stylelint-disable at-rule-empty-line-before,at-rule-name-space-after,at-rule-no-unknown */\n/* stylelint-disable no-duplicate-selectors */\n/* stylelint-disable */\n/* stylelint-disable declaration-bang-space-before,no-duplicate-selectors,string-no-newline */\n.ant-divider {\n box-sizing: border-box;\n margin: 0;\n padding: 0;\n color: rgba(0, 0, 0, 0.65);\n font-size: 14px;\n font-variant: tabular-nums;\n line-height: 1.5;\n list-style: none;\n font-feature-settings: 'tnum';\n background: #e8e8e8;\n}\n.ant-divider,\n.ant-divider-vertical {\n position: relative;\n top: -0.06em;\n display: inline-block;\n width: 1px;\n height: 0.9em;\n margin: 0 8px;\n vertical-align: middle;\n}\n.ant-divider-horizontal {\n display: block;\n clear: both;\n width: 100%;\n min-width: 100%;\n height: 1px;\n margin: 24px 0;\n}\n.ant-divider-horizontal.ant-divider-with-text-center,\n.ant-divider-horizontal.ant-divider-with-text-left,\n.ant-divider-horizontal.ant-divider-with-text-right {\n display: table;\n margin: 16px 0;\n color: rgba(0, 0, 0, 0.85);\n font-weight: 500;\n font-size: 16px;\n white-space: nowrap;\n text-align: center;\n background: transparent;\n}\n.ant-divider-horizontal.ant-divider-with-text-center::before,\n.ant-divider-horizontal.ant-divider-with-text-left::before,\n.ant-divider-horizontal.ant-divider-with-text-right::before,\n.ant-divider-horizontal.ant-divider-with-text-center::after,\n.ant-divider-horizontal.ant-divider-with-text-left::after,\n.ant-divider-horizontal.ant-divider-with-text-right::after {\n position: relative;\n top: 50%;\n display: table-cell;\n width: 50%;\n border-top: 1px solid #e8e8e8;\n transform: translateY(50%);\n content: '';\n}\n.ant-divider-horizontal.ant-divider-with-text-left .ant-divider-inner-text,\n.ant-divider-horizontal.ant-divider-with-text-right .ant-divider-inner-text {\n display: inline-block;\n padding: 0 10px;\n}\n.ant-divider-horizontal.ant-divider-with-text-left::before {\n top: 50%;\n width: 5%;\n}\n.ant-divider-horizontal.ant-divider-with-text-left::after {\n top: 50%;\n width: 95%;\n}\n.ant-divider-horizontal.ant-divider-with-text-right::before {\n top: 50%;\n width: 95%;\n}\n.ant-divider-horizontal.ant-divider-with-text-right::after {\n top: 50%;\n width: 5%;\n}\n.ant-divider-inner-text {\n display: inline-block;\n padding: 0 24px;\n}\n.ant-divider-dashed {\n background: none;\n border-color: #e8e8e8;\n border-style: dashed;\n border-width: 1px 0 0;\n}\n.ant-divider-horizontal.ant-divider-with-text-center.ant-divider-dashed,\n.ant-divider-horizontal.ant-divider-with-text-left.ant-divider-dashed,\n.ant-divider-horizontal.ant-divider-with-text-right.ant-divider-dashed {\n border-top: 0;\n}\n.ant-divider-horizontal.ant-divider-with-text-center.ant-divider-dashed::before,\n.ant-divider-horizontal.ant-divider-with-text-left.ant-divider-dashed::before,\n.ant-divider-horizontal.ant-divider-with-text-right.ant-divider-dashed::before,\n.ant-divider-horizontal.ant-divider-with-text-center.ant-divider-dashed::after,\n.ant-divider-horizontal.ant-divider-with-text-left.ant-divider-dashed::after,\n.ant-divider-horizontal.ant-divider-with-text-right.ant-divider-dashed::after {\n border-style: dashed none none;\n}\n.ant-divider-vertical.ant-divider-dashed {\n border-width: 0 0 0 1px;\n}\n",""]),e.exports=t},BTkp:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(){function e(e,t){for(var n=0;n-1)return void n(u.default.createElement("span",null,"分支名不能包含下列任何字符:^*\\/"))}n()},n.onChangeFile=function(e){var t=n.props.changeName;n.setState({filename:e}),t&&t(e)},n.state={submitType:"0",filename:"",isSpin:!1,empty:!1},n}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,e),c(t,[{key:"render",value:function(){var e=this,t=this.state,n=t.submitType,c=(t.filename,t.isSpin),d=t.empty,f=this.props.form.getFieldDecorator,g=this.props.match.params,h=g.branch,b=g.projectsId,y=g.owner,v=this.props,k=v.current_user,x=v.filepath,E=v.projectDetail,T=v.currentBranch,j=v.loadName,S=this.props.editor_type,C=T||h;return u.default.createElement("div",null,u.default.createElement("span",{className:"df",style:{alignItems:"center"}},u.default.createElement(m.Link,{to:"/"+(k&&k.login),className:"show-user-link"},u.default.createElement("img",{src:(0,p.getImageUrl)("/"+(k&&k.image_url)),alt:"",className:"screwImg"}),u.default.createElement("span",{className:"color-grey-3 ver-middle"},k&&k.username,":")),u.default.createElement("span",{className:"color-grey-8"},"提交变更")),u.default.createElement(r.default,{spinning:c},u.default.createElement("div",{className:"userScrew"},u.default.createElement("div",{className:"screwPanel"},u.default.createElement(s.default,null,u.default.createElement("div",{className:"mb20",style:{display:"upload"===S?"block":"none"}},u.default.createElement(_.default,{addonBefore:""+(E&&E.identifier)+(0,p.returnbar)(x),onChangeFile:this.onChangeFile,empty:d,name:j,onEmpty:function(t){return e.onEmpty(t)}})),u.default.createElement(s.default.Item,null,f("desc",{rules:[{required:!0,message:"请添加描述信息"}]})(u.default.createElement(w,{placeholder:"必填,描述主要修改类型和内容",authSize:{minRows:3,maxRows:5}}))),u.default.createElement(o.default.Group,{value:n,onChange:this.changeSubmittype},u.default.createElement(o.default,{value:"0",className:"mb10"},u.default.createElement("i",{className:"iconfont icon-banbenku font-16 mr5"}),"直接提交至",u.default.createElement("span",{className:"color-orange"},(0,p.returnbar)(C)),"分支"),u.default.createElement(o.default,{value:"1"},u.default.createElement(i.default,{type:"pull-request",className:"mr5"}),"为此提交创建一个",u.default.createElement("span",{className:"font-bd"},"新的分支"),"并发起合并请求")),"1"===n?u.default.createElement("div",{className:"mt15"},u.default.createElement(s.default.Item,{style:{paddingLeft:"24px"}},f("branchname",{rules:[{required:!0,message:"请输入分支名称"},{validator:this.checkBranchName}]})(u.default.createElement(l.default,{placeholder:"请输入分支名称",style:{width:"220px"},maxLength:100})))):""))),u.default.createElement("div",{className:"mt20"},u.default.createElement(a.default,{type:"primary",onClick:"update"===S?this.UpdateFile:this.subMitFrom,className:"mr30"},"提交变更"),u.default.createElement(a.default,{type:"primary grey",onClick:function(){e.props.history.push("/"+y+"/"+b),window.scrollTo(0,0)},className:"mr20"},"取消"))))}}]),t}(d.Component),y=s.default.create({name:"UserSubmitForm"})(b);t.default=y},"CWI+":function(e,t,n){var r=n("Eqp/");"string"==typeof r&&(r=[[e.i,r,""]]);n("aET+")(r,{hmr:!0,transform:void 0}),r.locals&&(e.exports=r.locals)},Eitf:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=h(n("JsLm")),a=h(n("NJEC")),i=h(n("jsC+")),o=h(n("2fM7")),s=h(n("W9HT")),l=Object.assign||function(e){for(var t=1;t0?u.default.createElement(_.default,{menuList:e,hash:n.props.history.location.hash}):u.default.createElement(s.default,null)},n.state={value:void 0,language:void 0,languages:void 0,description:e.detail.replace_content,menuList:void 0},n}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,e),c(t,[{key:"updateDocumentTitle",value:function(){var e=this.props,t=e.projectDetail,n=e.treeValuePath,r=e.location,a=r&&-1===r.search.indexOf("edit");if(t&&n){var i=t.author,o=t.name;document.title=(a?n.join("/"):"编辑"+n[n.length-1])+"-"+i.name+"/"+o}}},{key:"render",value:function(){var e=this,t=this.props,n=t.detail,s=t.current_user,c=t.isManager,d=t.isDeveloper,p=t.currentBranch,_=t.platform,g=t.md,h=t.type,w=-1===this.props.history.location.search.indexOf("edit"),b=this.state,y=b.language,v=b.languages,k=b.description,x=s&&s.login&&(c||d),E=o.default.Option;return u.default.createElement(u.default.Fragment,null,u.default.createElement(r.default,{className:"griditemAnchor",offsetTop:58},u.default.createElement("div",{className:"griditemCate"},g&&w&&u.default.createElement(i.default,{overlay:this.menu(),trigger:["hover"],overlayClassName:"menuslist"},u.default.createElement("span",{className:"catelogue mr20"},u.default.createElement("i",{className:"iconfont icon-muluicon font-12 mr5"}),u.default.createElement("span",null,"目录"))),u.default.createElement("span",{className:"color-grey-6 font-16"},function(e){if(0===e)return"0 B";var t=Math.floor(Math.log(e)/Math.log(1024));return(e/Math.pow(1024,t)).toFixed(2)+" "+["B","KB","MB","GB","TB","PB","EB","ZB","YB"][t]}(n&&n.size))),u.default.createElement("p",{className:"text-right"},x&&_&&u.default.createElement("div",null,w?u.default.createElement("span",null,n.direct_download?"":u.default.createElement("span",null,u.default.createElement("a",{onClick:function(){return e.DownLoadFile(n.download_url)},className:"ml20"},u.default.createElement("i",{className:"iconfont icon-xiazai1 font-15 color-grey-6"})),2!==h&&u.default.createElement("a",{onClick:function(){return e.EditFile(!1)},className:"ml20"},u.default.createElement("i",{className:"iconfont icon-bianji1 font-15 color-grey-6"})))):u.default.createElement(u.default.Fragment,null,u.default.createElement(o.default,{showSearch:!0,placeholder:"请选择文本语言",style:{width:200},value:y,onChange:this.select_language},u.default.createElement(E,{value:void 0},"请选择文本语言"),v&&v.map((function(e,t){return u.default.createElement(E,{value:e,key:t},e)}))),u.default.createElement("button",{type:"button",className:"ant-btn ant-btn-sm ml20",onClick:function(){return e.EditFile(!0)}},u.default.createElement("span",null,"取 消"))),2!==h&&u.default.createElement(a.default,{title:"确认删除这个文件?",className:"ml20",okText:"确定",cancelText:"取消",onConfirm:this.deleteFile},u.default.createElement("a",null,u.default.createElement("i",{className:"iconfont icon-shanchu font-15 color-grey-6"})))))),u.default.createElement("div",null,n.image_type?u.default.createElement("div",{className:"edu-txt-center pt20 pb20"},u.default.createElement("img",{alt:"",src:n.download_url,style:{maxWidth:"80%"}})):n.direct_download?u.default.createElement("div",{className:"mt20 text-center"},u.default.createElement("a",{href:n.download_url,className:"color-blue font-15"},"下载原始文件")):g&&w?u.default.createElement("div",{className:"files-md",id:"files-md"},u.default.createElement(f.default,{className:"file-md imageLayerParent",value:k,url:this.props.history.location})):u.default.createElement(m.default,l({},this.props,this.state,{language:y||"javascript",filepath:"/"+n.path,content:n.content,readOnly:w,editorType:"update",currentBranch:p,descName:n&&"Update "+n.name}))))}}]),t}(d.Component);t.default=b},"Eqp/":function(e,t,n){(t=n("JPst")(!1)).push([e.i,"/* stylelint-disable at-rule-empty-line-before,at-rule-name-space-after,at-rule-no-unknown */\n/* stylelint-disable no-duplicate-selectors */\n/* stylelint-disable */\n/* stylelint-disable declaration-bang-space-before,no-duplicate-selectors,string-no-newline */\n.ant-drawer {\n position: fixed;\n z-index: 1000;\n width: 0%;\n height: 100%;\n transition: transform 0.3s cubic-bezier(0.7, 0.3, 0.1, 1), height 0s ease 0.3s, width 0s ease 0.3s;\n}\n.ant-drawer > * {\n transition: transform 0.3s cubic-bezier(0.7, 0.3, 0.1, 1), box-shadow 0.3s cubic-bezier(0.7, 0.3, 0.1, 1);\n}\n.ant-drawer-content-wrapper {\n position: absolute;\n}\n.ant-drawer .ant-drawer-content {\n width: 100%;\n height: 100%;\n}\n.ant-drawer-left,\n.ant-drawer-right {\n top: 0;\n width: 0%;\n height: 100%;\n}\n.ant-drawer-left .ant-drawer-content-wrapper,\n.ant-drawer-right .ant-drawer-content-wrapper {\n height: 100%;\n}\n.ant-drawer-left.ant-drawer-open,\n.ant-drawer-right.ant-drawer-open {\n width: 100%;\n transition: transform 0.3s cubic-bezier(0.7, 0.3, 0.1, 1);\n}\n.ant-drawer-left.ant-drawer-open.no-mask,\n.ant-drawer-right.ant-drawer-open.no-mask {\n width: 0%;\n}\n.ant-drawer-left.ant-drawer-open .ant-drawer-content-wrapper {\n box-shadow: 2px 0 8px rgba(0, 0, 0, 0.15);\n}\n.ant-drawer-right {\n right: 0;\n}\n.ant-drawer-right .ant-drawer-content-wrapper {\n right: 0;\n}\n.ant-drawer-right.ant-drawer-open .ant-drawer-content-wrapper {\n box-shadow: -2px 0 8px rgba(0, 0, 0, 0.15);\n}\n.ant-drawer-right.ant-drawer-open.no-mask {\n right: 1px;\n transform: translateX(1px);\n}\n.ant-drawer-top,\n.ant-drawer-bottom {\n left: 0;\n width: 100%;\n height: 0%;\n}\n.ant-drawer-top .ant-drawer-content-wrapper,\n.ant-drawer-bottom .ant-drawer-content-wrapper {\n width: 100%;\n}\n.ant-drawer-top.ant-drawer-open,\n.ant-drawer-bottom.ant-drawer-open {\n height: 100%;\n transition: transform 0.3s cubic-bezier(0.7, 0.3, 0.1, 1);\n}\n.ant-drawer-top.ant-drawer-open.no-mask,\n.ant-drawer-bottom.ant-drawer-open.no-mask {\n height: 0%;\n}\n.ant-drawer-top {\n top: 0;\n}\n.ant-drawer-top.ant-drawer-open .ant-drawer-content-wrapper {\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);\n}\n.ant-drawer-bottom {\n bottom: 0;\n}\n.ant-drawer-bottom .ant-drawer-content-wrapper {\n bottom: 0;\n}\n.ant-drawer-bottom.ant-drawer-open .ant-drawer-content-wrapper {\n box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.15);\n}\n.ant-drawer-bottom.ant-drawer-open.no-mask {\n bottom: 1px;\n transform: translateY(1px);\n}\n.ant-drawer.ant-drawer-open .ant-drawer-mask {\n height: 100%;\n opacity: 1;\n transition: none;\n animation: antdDrawerFadeIn 0.3s cubic-bezier(0.7, 0.3, 0.1, 1);\n}\n.ant-drawer-title {\n margin: 0;\n color: rgba(0, 0, 0, 0.85);\n font-weight: 500;\n font-size: 16px;\n line-height: 22px;\n}\n.ant-drawer-content {\n position: relative;\n z-index: 1;\n overflow: auto;\n background-color: #fff;\n background-clip: padding-box;\n border: 0;\n}\n.ant-drawer-close {\n position: absolute;\n top: 0;\n right: 0;\n z-index: 10;\n display: block;\n width: 56px;\n height: 56px;\n padding: 0;\n color: rgba(0, 0, 0, 0.45);\n font-weight: 700;\n font-size: 16px;\n font-style: normal;\n line-height: 56px;\n text-align: center;\n text-transform: none;\n text-decoration: none;\n background: transparent;\n border: 0;\n outline: 0;\n cursor: pointer;\n transition: color 0.3s;\n text-rendering: auto;\n}\n.ant-drawer-close:focus,\n.ant-drawer-close:hover {\n color: rgba(0, 0, 0, 0.75);\n text-decoration: none;\n}\n.ant-drawer-header {\n position: relative;\n padding: 16px 24px;\n color: rgba(0, 0, 0, 0.65);\n background: #fff;\n border-bottom: 1px solid #e8e8e8;\n border-radius: 4px 4px 0 0;\n}\n.ant-drawer-header-no-title {\n color: rgba(0, 0, 0, 0.65);\n background: #fff;\n}\n.ant-drawer-body {\n padding: 24px;\n font-size: 14px;\n line-height: 1.5;\n word-wrap: break-word;\n}\n.ant-drawer-wrapper-body {\n height: 100%;\n overflow: auto;\n}\n.ant-drawer-mask {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 0;\n background-color: rgba(0, 0, 0, 0.45);\n opacity: 0;\n filter: alpha(opacity=45);\n transition: opacity 0.3s linear, height 0s ease 0.3s;\n}\n.ant-drawer-open-content {\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);\n}\n@keyframes antdDrawerFadeIn {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n}\n",""]),e.exports=t},F5EJ:function(e,t,n){(t=n("JPst")(!1)).push([e.i,"/* stylelint-disable at-rule-empty-line-before,at-rule-name-space-after,at-rule-no-unknown */\n/* stylelint-disable no-duplicate-selectors */\n/* stylelint-disable */\n/* stylelint-disable declaration-bang-space-before,no-duplicate-selectors,string-no-newline */\n.ant-affix {\n position: fixed;\n z-index: 10;\n}\n",""]),e.exports=t},FRFo:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=o(n("3S7+"));n("5Dmo");var a=n("cDcd"),i=o(a);function o(e){return e&&e.__esModule?e:{default:e}}function s(e){var t=e.beforeText,n=e.afterText,o=e.className,s=e.inputId,l=e.timeOut,c=function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,t){var n=[],r=!0,a=!1,i=void 0;try{for(var o,s=e[Symbol.iterator]();!(r=(o=s.next()).done)&&(n.push(o.value),!t||n.length!==t);r=!0);}catch(e){a=!0,i=e}finally{try{!r&&s.return&&s.return()}finally{if(a)throw i}}return n}(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")}((0,a.useState)((function(){return t})),2),d=c[0],u=c[1],p=(0,a.useCallback)((function(){var e=document.querySelector("#"+s);e&&(e.select(),document.execCommand("copy")&&document.execCommand("copy"),document.getSelection().removeAllRanges(),u(n),l&&setTimeout((function(){u(t)}),1500))}),[]);return i.default.createElement(r.default,{placement:"top",title:d,onVisibleChange:function(){u(t)}},i.default.createElement("i",{className:"iconfont icon-fuzhiicon cursor "+o,style:{color:"#466aff"},onClick:p}))}s.defaultProps={beforeText:"复制链接",afterText:"复制成功",className:"",inputId:"copyText",timeOut:!0},t.default=(0,a.memo)(s)},IEkG:function(e,t,n){"use strict";e.exports={extension:{publisher:"alex-ext-public",name:"json-language-features-worker",version:"1.53.0-patch.1"},packageJSON:{name:"json-language-features-worker",publisher:"alex",version:"1.53.0-patch.1",displayName:"%displayName%",description:"%description%",icon:"icons/json.png",activationEvents:["onLanguage:json","onLanguage:jsonc"],kaitianContributes:{workerMain:"client/dist/browser/jsonClientMain.js"},contributes:{configuration:{id:"json",order:20,type:"object",title:"JSON",properties:{"json.schemas":{type:"array",scope:"resource",description:"%json.schemas.desc%",items:{type:"object",default:{fileMatch:["/myfile"],url:"schemaURL"},properties:{url:{type:"string",default:"/user.schema.json",description:"%json.schemas.url.desc%"},fileMatch:{type:"array",items:{type:"string",default:"MyFile.json",description:"%json.schemas.fileMatch.item.desc%"},minItems:1,description:"%json.schemas.fileMatch.desc%"},schema:{$ref:"http://json-schema.org/draft-07/schema#",description:"%json.schemas.schema.desc%"}}}},"json.format.enable":{type:"boolean",scope:"window",default:!0,description:"%json.format.enable.desc%"},"json.trace.server":{type:"string",scope:"window",enum:["off","messages","verbose"],default:"off",description:"%json.tracing.desc%"},"json.colorDecorators.enable":{type:"boolean",scope:"window",default:!0,description:"%json.colorDecorators.enable.desc%",deprecationMessage:"%json.colorDecorators.enable.deprecationMessage%"},"json.maxItemsComputed":{type:"number",default:5e3,description:"%json.maxItemsComputed.desc%"},"json.schemaDownload.enable":{type:"boolean",default:!0,description:"%json.enableSchemaDownload.desc%",tags:["usesOnlineServices"]}}},configurationDefaults:{"[json]":{"editor.quickSuggestions":{strings:!0},"editor.suggest.insertMode":"replace"},"[jsonc]":{"editor.quickSuggestions":{strings:!0},"editor.suggest.insertMode":"replace"}},jsonValidation:[{fileMatch:"*.schema.json",url:"http://json-schema.org/draft-07/schema#"}],workerMain:"client/dist/browser/jsonClientMain.js"},browser:"./client/dist/browser/jsonClientMain"},defaultPkgNlsJSON:{displayName:"JSON Language Features",description:"Provides rich language support for JSON files.","json.schemas.desc":"Associate schemas to JSON files in the current project","json.schemas.url.desc":"A URL to a schema or a relative path to a schema in the current directory","json.schemas.fileMatch.desc":"An array of file patterns to match against when resolving JSON files to schemas. `*` can be used as a wildcard. Exclusion patterns can also be defined and start with '!'. A file matches when there is at least one matching pattern and the last matching pattern is not an exclusion pattern.","json.schemas.fileMatch.item.desc":"A file pattern that can contain '*' to match against when resolving JSON files to schemas.","json.schemas.schema.desc":"The schema definition for the given URL. The schema only needs to be provided to avoid accesses to the schema URL.","json.format.enable.desc":"Enable/disable default JSON formatter","json.tracing.desc":"Traces the communication between VS Code and the JSON language server.","json.colorDecorators.enable.desc":"Enables or disables color decorators","json.colorDecorators.enable.deprecationMessage":"The setting `json.colorDecorators.enable` has been deprecated in favor of `editor.colorDecorators`.","json.schemaResolutionErrorMessage":"Unable to resolve schema.","json.clickToRetry":"Click to retry.","json.maxItemsComputed.desc":"The maximum number of outline symbols and folding regions computed (limited for performance reasons).","json.maxItemsExceededInformation.desc":"Show notification when exceeding the maximum number of outline symbols and folding regions.","json.enableSchemaDownload.desc":"When enabled, JSON schemas can be fetched from http and https locations."},pkgNlsJSON:{},nlsList:[],extendConfig:{},webAssets:["package.json","server/dist/browser/jsonServerMain.js","README.md","icons/json.png","http://json-schema.org/draft-07/schema#","client/dist/browser/jsonClientMain.js"],mode:"public"}},IxBv:function(e,t,n){"use strict";e.exports={extension:{publisher:"alex-ext-public",name:"html-language-features-worker",version:"1.53.0-patch.1"},packageJSON:{name:"html-language-features-worker",publisher:"alex",version:"1.53.0-patch.1",displayName:"%displayName%",description:"%description%",icon:"icons/html.png",activationEvents:["onLanguage:html","onLanguage:handlebars"],kaitianContributes:{workerMain:"client/dist/browser/htmlClientMain.js"},contributes:{configuration:{id:"html",order:20,type:"object",title:"HTML",properties:{"html.customData":{type:"array",markdownDescription:"%html.customData.desc%",default:[],items:{type:"string"},scope:"resource"},"html.format.enable":{type:"boolean",scope:"window",default:!0,description:"%html.format.enable.desc%"},"html.format.wrapLineLength":{type:"integer",scope:"resource",default:120,description:"%html.format.wrapLineLength.desc%"},"html.format.unformatted":{type:["string","null"],scope:"resource",default:"wbr",markdownDescription:"%html.format.unformatted.desc%"},"html.format.contentUnformatted":{type:["string","null"],scope:"resource",default:"pre,code,textarea",markdownDescription:"%html.format.contentUnformatted.desc%"},"html.format.indentInnerHtml":{type:"boolean",scope:"resource",default:!1,markdownDescription:"%html.format.indentInnerHtml.desc%"},"html.format.preserveNewLines":{type:"boolean",scope:"resource",default:!0,description:"%html.format.preserveNewLines.desc%"},"html.format.maxPreserveNewLines":{type:["number","null"],scope:"resource",default:null,markdownDescription:"%html.format.maxPreserveNewLines.desc%"},"html.format.indentHandlebars":{type:"boolean",scope:"resource",default:!1,markdownDescription:"%html.format.indentHandlebars.desc%"},"html.format.endWithNewline":{type:"boolean",scope:"resource",default:!1,description:"%html.format.endWithNewline.desc%"},"html.format.extraLiners":{type:["string","null"],scope:"resource",default:"head, body, /html",markdownDescription:"%html.format.extraLiners.desc%"},"html.format.wrapAttributes":{type:"string",scope:"resource",default:"auto",enum:["auto","force","force-aligned","force-expand-multiline","aligned-multiple","preserve","preserve-aligned"],enumDescriptions:["%html.format.wrapAttributes.auto%","%html.format.wrapAttributes.force%","%html.format.wrapAttributes.forcealign%","%html.format.wrapAttributes.forcemultiline%","%html.format.wrapAttributes.alignedmultiple%","%html.format.wrapAttributes.preserve%","%html.format.wrapAttributes.preservealigned%"],description:"%html.format.wrapAttributes.desc%"},"html.format.wrapAttributesIndentSize":{type:["number","null"],scope:"resource",default:null,description:"%html.format.wrapAttributesIndentSize.desc%"},"html.format.templating":{type:["boolean"],scope:"resource",default:!1,description:"%html.format.templating.desc%"},"html.format.unformattedContentDelimiter":{type:["string"],scope:"resource",default:"",markdownDescription:"%html.format.unformattedContentDelimiter.desc%"},"html.suggest.html5":{type:"boolean",scope:"resource",default:!0,description:"%html.suggest.html5.desc%"},"html.validate.scripts":{type:"boolean",scope:"resource",default:!0,description:"%html.validate.scripts%"},"html.validate.styles":{type:"boolean",scope:"resource",default:!0,description:"%html.validate.styles%"},"html.autoClosingTags":{type:"boolean",scope:"resource",default:!0,description:"%html.autoClosingTags%"},"html.hover.documentation":{type:"boolean",scope:"resource",default:!0,description:"%html.hover.documentation%"},"html.hover.references":{type:"boolean",scope:"resource",default:!0,description:"%html.hover.references%"},"html.mirrorCursorOnMatchingTag":{type:"boolean",scope:"resource",default:!1,description:"%html.mirrorCursorOnMatchingTag%",deprecationMessage:"%html.mirrorCursorOnMatchingTagDeprecationMessage%"},"html.trace.server":{type:"string",scope:"window",enum:["off","messages","verbose"],default:"off",description:"%html.trace.server.desc%"}}},configurationDefaults:{"[html]":{"editor.suggest.insertMode":"replace"},"[handlebars]":{"editor.suggest.insertMode":"replace"}},jsonValidation:[{fileMatch:"*.html-data.json",url:"https://raw.githubusercontent.com/microsoft/vscode-html-languageservice/master/docs/customData.schema.json"},{fileMatch:"package.json",url:"./schemas/package.schema.json"}],workerMain:"client/dist/browser/htmlClientMain.js"},browser:"./client/dist/browser/htmlClientMain"},defaultPkgNlsJSON:{displayName:"HTML Language Features",description:"Provides rich language support for HTML and Handlebar files","html.customData.desc":"A list of relative file paths pointing to JSON files following the [custom data format](https://github.com/microsoft/vscode-html-languageservice/blob/master/docs/customData.md).\n\nVS Code loads custom data on startup to enhance its HTML support for the custom HTML tags, attributes and attribute values you specify in the JSON files.\n\nThe file paths are relative to workspace and only workspace folder settings are considered.","html.format.enable.desc":"Enable/disable default HTML formatter.","html.format.wrapLineLength.desc":"Maximum amount of characters per line (0 = disable).","html.format.unformatted.desc":"List of tags, comma separated, that shouldn't be reformatted. `null` defaults to all tags listed at https://www.w3.org/TR/html5/dom.html#phrasing-content.","html.format.contentUnformatted.desc":"List of tags, comma separated, where the content shouldn't be reformatted. `null` defaults to the `pre` tag.","html.format.indentInnerHtml.desc":"Indent `` and `` sections.","html.format.preserveNewLines.desc":"Controls whether existing line breaks before elements should be preserved. Only works before elements, not inside tags or for text.","html.format.maxPreserveNewLines.desc":"Maximum number of line breaks to be preserved in one chunk. Use `null` for unlimited.","html.format.indentHandlebars.desc":"Format and indent `{{#foo}}` and `{{/foo}}`.","html.format.endWithNewline.desc":"End with a newline.","html.format.extraLiners.desc":'List of tags, comma separated, that should have an extra newline before them. `null` defaults to `"head, body, /html"`.',"html.format.wrapAttributes.desc":"Wrap attributes.","html.format.wrapAttributes.auto":"Wrap attributes only when line length is exceeded.","html.format.wrapAttributes.force":"Wrap each attribute except first.","html.format.wrapAttributes.forcealign":"Wrap each attribute except first and keep aligned.","html.format.wrapAttributes.forcemultiline":"Wrap each attribute.","html.format.wrapAttributes.alignedmultiple":"Wrap when line length is exceeded, align attributes vertically.","html.format.wrapAttributes.preserve":"Preserve wrapping of attributes","html.format.wrapAttributes.preservealigned":"Preserve wrapping of attributes but align.","html.format.templating.desc":"Honor django, erb, handlebars and php templating language tags.","html.format.unformattedContentDelimiter.desc":"Keep text content together between this string.","html.format.wrapAttributesIndentSize.desc":"Alignment size when using 'force aligned' and 'aligned multiple' in `#html.format.wrapAttributes#` or `null` to use the default indent size.","html.suggest.html5.desc":"Controls whether the built-in HTML language support suggests HTML5 tags, properties and values.","html.trace.server.desc":"Traces the communication between VS Code and the HTML language server.","html.validate.scripts":"Controls whether the built-in HTML language support validates embedded scripts.","html.validate.styles":"Controls whether the built-in HTML language support validates embedded styles.","html.autoClosingTags":"Enable/disable autoclosing of HTML tags.","html.mirrorCursorOnMatchingTag":"Enable/disable mirroring cursor on matching HTML tag.","html.mirrorCursorOnMatchingTagDeprecationMessage":"Deprecated in favor of `editor.linkedEditing`","html.hover.documentation":"Show tag and attribute documentation in hover.","html.hover.references":"Show references to MDN in hover."},pkgNlsJSON:{},nlsList:[],extendConfig:{},webAssets:["package.json","server/dist/browser/htmlServerMain.js","README.md","icons/html.png","https://raw.githubusercontent.com/microsoft/vscode-html-languageservice/master/docs/customData.schema.json","schemas/package.schema.json","client/dist/browser/htmlClientMain.js"],mode:"public"}},JsLm:function(e,t,n){"use strict";n.r(t);var r=n("cDcd"),a=n("faye"),i=n("17x9"),o=n("eHJ2"),s=n.n(o),l=n("zT1h"),c=n("VCL8"),d=n("BGR+"),u=n("t23M"),p=n.n(u),m=n("H84U"),f=n("61SU"),_=n.n(f);function g(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);ne.top-n)return n+t.top}function v(e,t,n){if(void 0!==n&&t.bottom=0;s--)(a=e[s])&&(o=(i<3?a(o):i>3?a(t,n,o):a(t,n))||o);return i>3&&o&&Object.defineProperty(t,n,o),o};!function(e){e[e.None=0]="None",e[e.Prepare=1]="Prepare"}(D||(D={}));var A=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&q(e,t)}(i,e);var t,n,a=function(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}();return function(){var n,r=N(e);if(t){var a=N(this).constructor;n=Reflect.construct(r,arguments,a)}else n=r.apply(this,arguments);return O(this,n)}}(i);function i(){var e;return C(this,i),(e=a.apply(this,arguments)).state={status:D.None,lastAffix:!1,prevTarget:null},e.getOffsetTop=function(){var t=e.props,n=t.offset,r=t.offsetBottom,a=e.props.offsetTop;return void 0===a&&(a=n,Object(w.a)(void 0===n,"Affix","`offset` is deprecated. Please use `offsetTop` instead.")),void 0===r&&void 0===a&&(a=0),a},e.getOffsetBottom=function(){return e.props.offsetBottom},e.savePlaceholderNode=function(t){e.placeholderNode=t},e.saveFixedNode=function(t){e.fixedNode=t},e.measure=function(){var t=e.state,n=t.status,r=t.lastAffix,a=e.props,i=a.target,o=a.onChange;if(n===D.Prepare&&e.fixedNode&&e.placeholderNode&&i){var s=e.getOffsetTop(),l=e.getOffsetBottom(),c=i();if(c){var d={status:D.None},u=b(c),p=b(e.placeholderNode),m=y(p,u,s),f=v(p,u,l);void 0!==m?(d.affixStyle={position:"fixed",top:m,width:p.width,height:p.height},d.placeholderStyle={width:p.width,height:p.height}):void 0!==f&&(d.affixStyle={position:"fixed",bottom:f,width:p.width,height:p.height},d.placeholderStyle={width:p.width,height:p.height}),d.lastAffix=!!d.affixStyle,o&&r!==d.lastAffix&&o(d.lastAffix),e.setState(d)}}},e.prepareMeasure=function(){e.setState({status:D.Prepare,affixStyle:void 0,placeholderStyle:void 0})},e.renderAffix=function(t){var n=t.getPrefixCls,a=e.state,i=a.affixStyle,o=a.placeholderStyle,l=e.props,c=l.prefixCls,u=l.children,m=s()(S({},n("affix",c),i)),f=Object(d.default)(e.props,["prefixCls","offsetTop","offsetBottom","target","onChange"]);return r.createElement(p.a,{onResize:function(){e.updatePosition()}},r.createElement("div",j({},f,{ref:e.savePlaceholderNode}),i&&r.createElement("div",{style:o,"aria-hidden":"true"}),r.createElement("div",{className:m,ref:e.saveFixedNode,style:i},r.createElement(p.a,{onResize:function(){e.updatePosition()}},u))))},e}return t=i,(n=[{key:"componentDidMount",value:function(){var e=this,t=this.props.target;t&&(this.timeout=setTimeout((function(){E(t(),e),e.updatePosition()})))}},{key:"componentDidUpdate",value:function(e){var t=this.state.prevTarget,n=this.props.target,r=null;n&&(r=n()||null),t!==r&&(T(this),r&&(E(r,this),this.updatePosition()),this.setState({prevTarget:r})),e.offsetTop===this.props.offsetTop&&e.offsetBottom===this.props.offsetBottom||this.updatePosition(),this.measure()}},{key:"componentWillUnmount",value:function(){clearTimeout(this.timeout),T(this),this.updatePosition.cancel(),this.lazyUpdatePosition.cancel()}},{key:"updatePosition",value:function(){this.prepareMeasure()}},{key:"lazyUpdatePosition",value:function(){var e=this.props.target,t=this.state.affixStyle;if(e&&t){var n=this.getOffsetTop(),r=this.getOffsetBottom(),a=e();if(a&&this.placeholderNode){var i=b(a),o=b(this.placeholderNode),s=y(o,i,n),l=v(o,i,r);if(void 0!==s&&t.top===s||void 0!==l&&t.bottom===l)return}}this.prepareMeasure()}},{key:"render",value:function(){return r.createElement(m.a,null,this.renderAffix)}}])&&P(t.prototype,n),i}(r.Component);A.defaultProps={target:function(){return"undefined"!=typeof window?window:null}},M([h()],A.prototype,"updatePosition",null),M([h()],A.prototype,"lazyUpdatePosition",null),Object(c.polyfill)(A);var F=A,L=n("zAh6"),U=n("i6bk");function I(e){return(I="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function J(){return(J=Object.assign||function(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:5,n=this.props.getCurrentAnchor;if("function"==typeof n)return n();var r="";if("undefined"==typeof document)return r;var a=[],i=this.props.getContainer,o=i();if(this.links.forEach((function(n){var r=K.exec(n.toString());if(r){var i=document.getElementById(r[1]);if(i){var s=V(i,o);se.top?t:e}));return s.link}return""}},{key:"render",value:function(){return r.createElement(m.a,null,this.renderAnchor)}}])&&W(t.prototype,n),o}(r.Component);function G(e){return(G="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function X(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function $(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function ee(e,t){for(var n=0;n0?setTimeout((function(){v(void 0)}),200):v(void 0),c&&c(!0)}(0,i.useEffect)((function(){if(s){var e="";if(s.indexOf("/")>-1){var n=s.split("/");e=n[n.length-1],v(e)}else e=s,v(s);var r=g&&g.length>0?g.join("/")+"/"+e:e;t(r)}else v(void 0)}),[s]),(0,i.useEffect)((function(){n&&m(n.split("/"))}),[n]);var x=function(e){return o.default.createElement("div",null,e.map((function(e,t){return e&&o.default.createElement("span",null,e,o.default.createElement("span",{className:"ml2 mr3"},"/"))})))};return o.default.createElement("div",{className:"fileName"},p&&p.length>0?x(p):"",g&&g.length>0?x(g):"",o.default.createElement(r.default,{placeholder:"命名文件名称或文件路径",value:y,onKeyUp:function(e){if(8===e.keyCode&&void 0===y&&g&&g.length>0){var t=g[g.length-1],n=g;n.splice(n.length-1,1),h(n),v(t)}},onChange:function(e){var n=e.target.value;if(n)if("/"===n)v(void 0);else if(n.indexOf("/")>-1){var r=n.split("/"),a=g.concat(r[0]);h(a);var i=r[r.length-1];v(i),i?(t(a&&a.length>0?a.join("/")+"/"+i:i),c&&c(!1)):k()}else{var o=g&&g.length>0?g.join("/")+"/"+n:n;t(o),v(n),c&&c(!1)}else k()},style:{width:"220px",borderColor:!0===l?"red":"grey"}}),l&&o.default.createElement("p",{className:"color-red ml20"},"请输入文件名称"))}},KhU6:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=u(n("/wGt")),a=u(n("W9HT")),i=u(n("MJZm")),o=function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,t){var n=[],r=!0,a=!1,i=void 0;try{for(var o,s=e[Symbol.iterator]();!(r=(o=s.next()).done)&&(n.push(o.value),!t||n.length!==t);r=!0);}catch(e){a=!0,i=e}finally{try{!r&&s.return&&s.return()}finally{if(a)throw i}}return n}(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")};n("bbsP"),n("T2oS"),n("ozfa");var s=n("cDcd"),l=u(s),c=n("sYIF");n("KkuB");var d=u(n("vDqi"));function u(e){return e&&e.__esModule?e:{default:e}}var p=i.default.TreeNode,m=i.default.DirectoryTree;t.default=function(e){var t=e.visible,n=e.onClose,i=e.branch,u=e.owner,f=e.projectsId,_=e.history,g=e.name,h=e.list,w=(0,s.useState)(void 0),b=o(w,2),y=b[0],v=b[1],k=(0,s.useState)(!0),x=o(k,2),E=x[0],T=x[1],j=(0,s.useState)(!0),S=o(j,2),C=S[0],P=S[1];return(0,s.useEffect)((function(){var e;t&&C&&(h?(v(h),T(!1)):(e="/"+u+"/"+f+"/entries.json",d.default.get(e,{params:{ref:i}}).then((function(e){e&&v(e.data.entries),T(!1)})).catch((function(e){}))),P(!1))}),[t]),l.default.createElement(r.default,{placement:"left",visible:t,closable:!1,onClose:n,width:"320px",maskStyle:{backgroundColor:"rgba(0,0,0,0.09)"}},l.default.createElement(a.default,{spinning:E},l.default.createElement("div",{className:"drawerHead"},l.default.createElement("p",{className:"font-20"},g),l.default.createElement("p",null,l.default.createElement("i",{class:"iconfont icon-fenzhi2 font-18 color-grey-9 mr3"}),i)),l.default.createElement(m,{loadData:function(e){return new Promise((function(t){if(e.props.children)t();else{var n=[],r="/"+u+"/"+f+"/sub_entries.json";d.default.get(r,{params:{filepath:e.props.dataRef.path,ref:i,type:"dir"}}).then((function(e){e&&(n=e.data.entries)})).catch((function(e){})),setTimeout((function(){e.props.dataRef.children=n,v([].concat(function(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t0&&t.map((function(t){return l.default.createElement(p,{title:t.name,key:t.key,dataRef:t,isLeaf:"file"===t.type},e(t.children))}))}(y))))}},KusB:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r,a=(r=n("cDcd"))&&r.__esModule?r:{default:r},i=n("eO8H"),o=n("PhNK"),s=n("QuzT"),l={submodule:"icon-file-submodule font-17",file:"icon-wenjian6 font-15 color-blue-file",dir:"icon-wenjianjia4 font-15 color-blue_4C"};t.default=function(e){var t=e.item,n=e.goToSubRoot,r=e.owner,c=e.projectsId,d=e.platform;return a.default.createElement("li",null,a.default.createElement("span",null,!d&&t.image_type?a.default.createElement("span",null,a.default.createElement("i",{className:"iconfont "+l[""+t.type]+" mr8"}),t.name):"submodule"===t.type?t.submodule_git_url?a.default.createElement(a.default.Fragment,null,a.default.createElement("a",{href:""+t.submodule_git_url.slice(0,t.submodule_git_url.length-4),onClick:function(){window.scrollTo(0,0)},target:"_self"},a.default.createElement("i",{className:"iconfont "+l[""+t.type]+" mr8"}),t.name),a.default.createElement("span",{className:"ml2"},"@"),a.default.createElement("a",{href:t.submodule_git_url.slice(0,t.submodule_git_url.length-4)+"/commits/"+(0,o.truncateCommitId)(t.sha),onClick:function(){window.scrollTo(0,0)},title:t.sha},(0,o.truncateCommitId)(t.sha))):a.default.createElement(a.default.Fragment,null,a.default.createElement("i",{className:"iconfont "+l[""+t.type]+" mr8"}),t.name,a.default.createElement("span",{className:"ml2"},"@"),a.default.createElement("span",{title:t.sha},(0,o.truncateCommitId)(t.sha))):a.default.createElement("a",{onClick:function(){return n(t.path,t.type,t.name)}},a.default.createElement("i",{className:"iconfont "+l[""+t.type]+" mr8"}),t.name)),a.default.createElement("span",{title:"init project"},a.default.createElement(i.Link,{to:"/"+r+"/"+c+"/commits/"+(0,o.truncateCommitId)(""+(t.commit&&t.commit.sha)),title:t.commit&&t.commit.message},(0,s.getEmoji)(function(e){var t=e.match(/:([a-zA-Z_]+):/g);if(t&&t.length>0)for(var n=0;n20})),a=t.filter((function(e){return!/^(?![-])[a-zA-Z0-9\u4e00-\u9fa5\\-]+$/.test(e)}));t.length>5?n("最多创建5个标签"):r.length?n("每个标签最多支持20个汉字"):a.length&&n("标签名只允许包含中文、字母、数字或者中划线(-), 不能以中划线开头"),n()}}],initialValue:g&&g.map((function(e){return e.name}))})(l.default.createElement(a.default,{mode:"tags",placeholder:"请输入标签名称",getPopupContainer:function(e){return e.parentNode},maxLength:2},v&&v.map((function(e){return l.default.createElement(a.default.Option,{key:e.name},e.name)}))))),l.default.createElement(i.default.Item,{label:"website"},h("website",{rules:[]})(l.default.createElement(o.default,{placeholder:"website链接",maxLength:200}))),l.default.createElement(i.default.Item,{label:"实践课程"},h("lesson_url",{rules:[]})(l.default.createElement(o.default,{placeholder:"实践课程链接",maxLength:200})))))})))},NJEC:function(e,t,n){"use strict";n.r(t);var r=n("cDcd"),a=n("VCL8"),i=n("3S7+"),o=n("CtXQ"),s=n("2/Rp"),l=n("YMnH"),c=n("ZvpZ"),d=n("H84U");function u(e){return(u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function p(){return(p=Object.assign||function(e){for(var t=1;t0?l.default.createElement(u.default,{menuList:h,hash:n.location.hash}):l.default.createElement(i.default,null),trigger:["hover"],overlayClassName:"menuslist"},l.default.createElement("span",{className:"catelogue"},l.default.createElement("i",{className:"iconfont icon-muluicon font-12 mr5"}),l.default.createElement("span",null,"目录"))),l.default.createElement("span",{className:"commonBox-title-read"},l.default.createElement("a",{href:"#readme "},p.name))),t?l.default.createElement("a",{className:"ml20 pull-right",onClick:function(){return f(p&&p.path,!1)}},l.default.createElement("i",{className:"iconfont icon-a-bianji font-17 color-grey-6"})):"")),v&&l.default.createElement("div",{className:"commonBox-info"},l.default.createElement(c.default,{className:"break_word_comments imageLayerParent readmeFile",value:v,url:n.location})))}},P2fV:function(e,t,n){"use strict";n.r(t),n("cIOH"),n("Q9mQ"),n("+L6B")},PArb:function(e,t,n){"use strict";n.r(t);var r=n("cDcd"),a=n("eHJ2"),i=n.n(a),o=n("H84U");function s(){return(s=Object.assign||function(e){for(var t=1;t0?"-".concat(p):p,b=i()(m,h,"".concat(h,"-").concat(d),(l(n={},"".concat(h,"-with-text").concat(w),f),l(n,"".concat(h,"-dashed"),!!_),n));return r.createElement("div",s({className:b},g,{role:"separator"}),f&&r.createElement("span",{className:"".concat(h,"-inner-text")},f))}))}},PhNK:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.truncateCommitId=function(e){return e&&e.length>11?e.substring(0,10):e},t.timeFormat=function(e){var t=new Date(1e3*e),n=t.getHours()<10?"0".concat(t.getHours()):t.getHours(),r=t.getMinutes()<10?"0".concat(t.getMinutes()):t.getMinutes();return t.getFullYear()+"-"+(t.getMonth()+1)+"-"+t.getDate()+" "+n+":"+r}},"R/Rt":function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=Object.assign||function(e){for(var t=1;t0&&a.default.createElement("span",{className:"infoCount"},r.total_count)),r&&r.total_count>0?r.list.map((function(e,r){return 0===r&&a.default.createElement(i.AlignTop,{className:"mt10"},a.default.createElement("div",null,a.default.createElement("p",{className:"font-16 color-grey-6",style:{display:"flex",alignItems:"center"}},a.default.createElement(o.Link,{to:{pathname:"/"+t+"/"+n+"/releases",query:{turnFromNew:!0}},style:{maxWidth:"200px",overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis"}},e.name),a.default.createElement("span",{className:"font-12 laterest ml5"},"最新")),a.default.createElement("p",{className:"color-grey-3 font-12"},e.created_at)))})):a.default.createElement("div",{className:"mt8"},"您暂未发布任何版本",s&&a.default.createElement(o.Link,{className:"color-blue ml20",to:{pathname:"/"+t+"/"+n+"/releases/new",state:{stable:!0}}},"创建新版本")))}},YIv0:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=l(n("PArb"));n("/zsF");var a=n("cDcd"),i=l(a),o=n("spEH"),s=l(n("vDqi"));function l(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){var t=e.owner,n=e.projectsId,l=function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,t){var n=[],r=!0,a=!1,i=void 0;try{for(var o,s=e[Symbol.iterator]();!(r=(o=s.next()).done)&&(n.push(o.value),!t||n.length!==t);r=!0);}catch(e){a=!0,i=e}finally{try{!r&&s.return&&s.return()}finally{if(a)throw i}}return n}(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")}((0,a.useState)(void 0),2),c=l[0],d=l[1];function u(){for(var e="#",t=["1","2","3","4","4","5","6","7","8","9","a","b","c","d","e","f"],n=0;n<6;n++)e+=t[parseInt(16*Math.random())];return e}return(0,a.useEffect)((function(){var e;e="/"+t+"/"+n+"/languages.json",s.default.get(e).then((function(e){if(e){var t=e.data;if(t){var n=[];Object.keys(t).map((function(e,r){n.push({name:e,percent:t[e],color:u()})})),d(n)}}})).catch((function(e){}))}),[]),c&&c.length>0?i.default.createElement("div",null,i.default.createElement(r.default,null),i.default.createElement("p",{className:"font-16 color-ooo aboutSubTitle"},"开发语言"),i.default.createElement("div",{className:"progress"},c&&c.map((function(e,t){return i.default.createElement("span",{key:e.id||t,style:{width:e.percent,backgroundColor:e.color}})}))),c&&c.length>0&&i.default.createElement(o.FlexAJ,{className:"progresstip"},c.map((function(e,t){return i.default.createElement("span",{key:e.id||t},i.default.createElement("i",{className:"zero",style:{backgroundColor:""+e.color}}),i.default.createElement("span",null,e.name),i.default.createElement("span",null,e.percent))})))):""}},YXVS:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};t.underscoreToCamelcase=function e(t){if(Array.isArray(t))return t.map((function(t){return e(t)}));if("object"!==(void 0===t?"undefined":r(t))||null==t)return t;var n={};for(var a in t)if(!t.hasOwnProperty||t.hasOwnProperty(a)){n[a.replace(/_([a-z])/g,(function(e){return e[1].toUpperCase()}))]=e(t[a])}return n},t.camelcaseToUnderscore=function e(t){if(Array.isArray(t))return t.map((function(t){return e(t)}));if("object"!==(void 0===t?"undefined":r(t))||null==t)return t;var n={};for(var a in t)if(!t.hasOwnProperty||t.hasOwnProperty(a)){n[a.replace(/([a-z][A-Z])/g,(function(e){return e[0]+"_"+e[1].toLowerCase()}))]=e(t[a])}return n}},b56q:function(e,t,n){var r=n("kQ9K");"string"==typeof r&&(r=[[e.i,r,""]]);n("aET+")(r,{hmr:!0,transform:void 0}),r.locals&&(e.exports=r.locals)},bE4E:function(e,t,n){var r=n("7uw7");"string"==typeof r&&(r=[[e.i,r,""]]);n("aET+")(r,{hmr:!0,transform:void 0}),r.locals&&(e.exports=r.locals)},bbsP:function(e,t,n){"use strict";n.r(t),n("cIOH"),n("CWI+")},cJAJ:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=u(n("W9HT")),a=u(n("BvKs")),i=u(n("5rEg")),o=u(n("14Xm")),s=function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,t){var n=[],r=!0,a=!1,i=void 0;try{for(var o,s=e[Symbol.iterator]();!(r=(o=s.next()).done)&&(n.push(o.value),!t||n.length!==t);r=!0);}catch(e){a=!0,i=e}finally{try{!r&&s.return&&s.return()}finally{if(a)throw i}}return n}(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")};n("T2oS"),n("lUTK"),n("5NDa");var l=n("cDcd"),c=u(l),d=n("tnhM");function u(e){return e&&e.__esModule?e:{default:e}}function p(e){return function(){var t=e.apply(this,arguments);return new Promise((function(e,n){return function r(a,i){try{var o=t[a](i),s=o.value}catch(e){return void n(e)}if(!o.done)return Promise.resolve(s).then((function(e){r("next",e)}),(function(e){r("throw",e)}));e(s)}("next")}))}}t.default=function(e){var t,n,u=(t=p(o.default.mark((function e(t,n){var r;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,d.getBranch)(t,n);case 2:r=e.sent,D(r),L(r),q(!1);case 6:case"end":return e.stop()}}),e,this)}))),function(e,n){return t.apply(this,arguments)}),m=(n=p(o.default.mark((function e(t,n){var r;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,d.getTag)(t,n);case 2:r=e.sent,D(r),L(r),q(!1);case 6:case"end":return e.stop()}}),e,this)}))),function(e,t){return n.apply(this,arguments)}),f=e.changeBranch,_=e.tagflag,g=e.projectsId,h=e.owner,w=e.visible,b=(0,l.useState)(void 0),y=s(b,2),v=y[0],k=y[1],x=(0,l.useState)(0),E=s(x,2),T=E[0],j=E[1],S=(0,l.useState)(!0),C=s(S,2),P=C[0],q=C[1],O=(0,l.useState)(void 0),N=s(O,2),R=N[0],D=N[1],M=(0,l.useState)(void 0),A=s(M,2),F=A[0],L=A[1],U=(0,l.useState)("branch"),I=s(U,2),J=I[0],z=I[1];return(0,l.useEffect)((function(){w&&(z("branch"),u(g,h),q(!0))}),[w]),c.default.createElement("div",{className:"overlayBranch"},c.default.createElement("div",{className:"padding15",style:{paddingBottom:"0px"}},c.default.createElement(i.default,{prefix:c.default.createElement("i",{className:"iconfont icon-sousuo_icon1 font-14"}),placeholder:"请输入分支"+(_?"或标签":"")+"名称搜索",autocomplete:"off",className:"OptionsInput",value:v,onChange:function(e){k(e.target.value);var t=e.target.value?R&&R.length>0&&R.filter((function(t){return t.name.indexOf(e.target.value)>-1})):R;L(t)}})),c.default.createElement(a.default,{mode:"horizontal",className:"navUl",selectedKeys:[J],onClick:function(e){z(e.key),q(!0),"branch"===e.key?(u(g,h),j(0)):(m(g,h),j(1))}},c.default.createElement(a.default.Item,{key:"branch"},"分支"),_&&c.default.createElement(a.default.Item,{key:"tag"},"标签")),c.default.createElement(r.default,{spinning:P},c.default.createElement("ul",{className:"OptionsUl",id:"ul-btn"},F&&F.length>0&&F.map((function(e,t){return c.default.createElement("li",{key:t,onClick:function(){return t=e.name,void f(t);var t}},c.default.createElement("a",{className:"task-hide ulALink"},e.name))})),F&&0===F.length&&c.default.createElement("p",{className:"listTips"},"暂无",v,0===T?"分支":"标签","~"))))}},dEUZ:function(e,t,n){},eIPa:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=g(n("diRs")),a=g(n("W9HT")),i=g(n("2/Rp")),o=g(n("14Xm")),s=Object.assign||function(e){for(var t=1;t0&&d.default.createElement("p",{className:"task-hide",style:{maxWidth:"215px"}},"所属组织:",function(e){var t="";return e.map((function(e){t=t+e.name+"、"})),t&&t.substr(0,t.length-1)}(e.organizations))))),d.default.createElement(u.AlignCenter,{className:"menuinfos"},d.default.createElement(p.Link,{to:"/"+e.login+"/projects"},d.default.createElement("span",null,e.projects_count),d.default.createElement("span",null,"项目数")),d.default.createElement(p.Link,{to:"/"+e.login+"/followers"},d.default.createElement("span",null,e.followers_count),d.default.createElement("span",null,"粉丝数")),d.default.createElement(p.Link,{to:"/"+e.login+"/following"},d.default.createElement("span",null,e.following_count),d.default.createElement("span",null,"关注数")),B(e.login)&&d.default.createElement("a",null,d.default.createElement("span",null,B(e.login)),d.default.createElement("span",null,"贡献度"))),d.default.createElement("div",{className:"pb20",style:{display:"flex",justifyContent:"center"}},b&&b===e.login?d.default.createElement(i.default,{className:"currentBtn"},"当前用户"):e.is_watch?d.default.createElement(i.default,{type:"default",onClick:function(){return Q(!1,e.login)}},"已关注"):d.default.createElement(i.default,{type:"primary",onClick:function(){return Q(!0,e.login)}},"关注TA")));M(t)}}function Q(e,t){(0,_.default)({method:e?"post":"delete",url:"/watchers/"+(e?"follow":"unfollow")+".json",params:{target_type:"user",id:t}}).then((function(n){if(n&&(0===n.data.status||2===n.data.status)){var r=k&&k.filter((function(e){return e.login===t}));r&&(r[0].is_watch=e),Z(r[0])}})).catch((function(e){}))}function H(e,t,n){t!==L&&U(t);var r=j.concat();r.map((function(e){return e.visible=!1})),e&&(r[n].visible=e),r.splice(),S(r)}return(0,c.useEffect)((function(){var e;e="/"+h+"/"+w+"/contributors.json",_.default.get(e).then((function(e){e&&(O(e.data.total_count),S(e.data.list))})).catch((function(e){}))}),[]),(0,c.useEffect)((function(){L?g(L):M(void 0)}),[L]),q>0?d.default.createElement("div",{className:"halfs"},d.default.createElement(p.Link,{to:"/"+h+"/"+w+"/contribute",onClick:function(){window.scrollTo(0,0)},className:"font-16 color-ooo hoverA"},d.default.createElement("span",null,"贡献者"),q>0&&d.default.createElement("span",{className:"infoCount"},q)),d.default.createElement("div",{className:"attrPerson",onMouseLeave:function(){return H(!1)}},j&&j.length>0&&j.map((function(e,t){return e.login?d.default.createElement(r.default,{content:D,visible:e.visible,overlayClassName:"menuPanels",placement:"top"},d.default.createElement("a",{key:t,href:"/"+e.login},d.default.createElement("img",{src:(0,m.getImageUrl)("/"+e.image_url),alt:"",onMouseOver:function(){return H(!0,e.login,t)}}))):d.default.createElement("a",{key:t,href:"mailto:"+e.email},d.default.createElement("img",{src:(0,m.getImageUrl)("/"+e.image_url),alt:"",onMouseOver:function(){return H(!0,e.login,t)}}))})))):""}},ewr9:function(e,t,n){},gUMM:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=R(n("W9HT")),a=R(n("PArb")),i=R(n("2/Rp")),o=R(n("jsC+")),s=R(n("BvKs")),l=Object.assign||function(e){for(var t=1;t0){var e=Qt.filter((function(e){return"pulls"===e.menu_name})),t=Qt.filter((function(e){return"issues"===e.menu_name}));e&&0===e.length&&qt(!1),t&&0===t.length&&Dt(!1)}}),[Qt]),(0,d.useEffect)((function(){zt&&(D(zt),ft(zt.topics),nt(zt.description),ot(zt.website),dt(zt.lesson_url),kt(zt.default_branch),L(zt.invite_code))}),[zt]),(0,d.useEffect)((function(){if(zt){var e=zt.author,t=zt.name,n=zt.description,r=zt.default_branch;document.title=Jt&&Jt!==r?e.name+"/"+t+"-"+Jt+"-for gitlink;for git":e.name+"/"+t+(n?": "+n:"")+"-for gitlink;for git"}}),[Z,zt,Jt]),(0,d.useEffect)((function(){Q(J?decodeURIComponent(J).split("/"):void 0)}),[J]),(0,d.useEffect)((function(){if(It&&Ut&&vt){var e=(0,m.turnbar)(Jt);if(Wt.indexOf("/"+Ut+"/"+It)>-1&&Wt.indexOf("/tree/"+e+"/")>-1){var t=Wt.split("/tree/"+e+"/")[1];z(t),function(e,t){Ie(!0);var n="/"+Ut+"/"+It+"/sub_entries.json";b.default.get(n,{params:{filepath:(0,m.returnbar)(e),ref:t||Jt,type:re}}).then((function(t){if(t){var n=t.data.entries;n.type?(ye(void 0),Ee(n),ae(n.type),wt(void 0)):(Ee(void 0),ye(n),ae("dir"),Ht(e,Jt||vt));var r=t.data.last_commit;Y(r&&r.commit),ee(r&&r.author),Ve(!1),Ae(!0),Ae(!Tt),le(!0)}setTimeout((function(){Ie(!1)}),500)})).catch((function(e){Ie(!1)}))}(t,Jt),ae("file")}else z(void 0),function(e){Ie(!0);var t="/"+Ut+"/"+It+"/entries.json";b.default.get(t,{params:{ref:e}}).then((function(e){if(e){ge(e.data.commits_count),ye(e.data.entries),Ee(void 0),Ne(e.data.tar_url),Ce(e.data.zip_url);var t=e.data.last_commit;Y(t&&t.commit),ee(t&&t.author),Ve(!0),Ae(!0),jt(!1),le(!0),Ht("",Jt||vt)}setTimeout((function(){Ie(!1)}),500)})).catch((function(e){Ie(!1)}))}(Jt||vt),ae("dir")}}),[It,Ut,Wt,vt]),(0,d.useEffect)((function(){Bt&&(Ae(-1!==e.history.location.search.indexOf("edit")),b.default.get("/"+Ut+"/"+It+"/releases.json").then((function(e){if(e&&e.data){var t={list:e.data.releases,total_count:e.data.releases&&e.data.releases.length};Lt(t)}})))}),[Bt]),(0,d.useEffect)((function(){if(R&&K){var e=document.getElementById("ptxt");e&&e.offsetHeight>36&&pe(!0)}}),[R,K]);var Yt,Gt,Xt=u.default.createElement(g.default,{http_url:R&&R.clone_url,ssh_url:R&&e&&e.platform&&R.ssh_url,zip_url:e&&e.platform&&Se,tar_url:e&&e.platform&&Oe,showNotification:e.showNotification}),$t=xe&&xe.name,en=$t&&".md"===$t.substring($t.length-3,$t.length),tn=e.current_user,nn=e.checkIfLogin,rn=e.showLoginDialog,an=tn&&tn.login&&Rt,on=R&&R.permission&&"Reporter"!==R.permission&&2!==R.type&&Pt&&e.platform,sn="dir"===re&&R&&2!==R.type&&(R.permission&&"Reporter"!==R.permission||tn&&tn.admin);return u.default.createElement(p.WhiteBack,null,u.default.createElement(C.default,{desc:tt,website:it,lesson_url:ct,topicsInfo:mt,visible:Ge,onCancel:function(){return Xe(!1)},onOk:function(e,t,n,r){var a="/"+Ut+"/"+It+".json";b.default.put(a,{description:e,website:t||"",lesson_url:n||"",project_topic_names:r}).then((function(e){e&&e.data&&e.data.id&&(nt(e.data.description),ot(e.data.website),dt(e.data.lesson_url),ft(e.data.topics))}))}}),u.default.createElement(r.default,{spinning:Ue},(be||xe)&&u.default.createElement(u.default.Fragment,null,u.default.createElement(S.default,{history:e.history,owner:Ut,projectsId:It,name:R&&R.name,branch:Jt||vt,visible:We,onClose:function(){return Be(!1)},list:He?be:void 0}),u.default.createElement("div",{className:"drawerBtn",onClick:function(){return Be(!0)}},u.default.createElement("i",{className:"iconfont icon-zuohuaicon font-14"}),u.default.createElement("span",null,"目录"))),u.default.createElement("div",{style:{minHeight:"500px"}},R&&u.default.createElement(p.Box,{className:"Panels"},u.default.createElement(p.LongWidth,null,u.default.createElement("div",{className:"panelmenu"},u.default.createElement(p.FlexAJ,null,u.default.createElement(p.AlignCenter,null,u.default.createElement("div",{className:"mr30"},e&&e.platform?u.default.createElement(h.default,{repo_id:R&&R.repo_id,projectsId:It,branch:Jt||vt,changeBranch:function(t){var n="/"+Ut+"/"+It+(t&&"/tree/"+t)+(J?"/"+J:"");e.history.push(n)},owner:Ut,history:e.history,branchList:R&&R.branches&&R.branches.list}):u.default.createElement("span",null,"分支:",u.default.createElement("span",{className:"color-grey-6"},Jt||vt))),Z&&Z.length>0?u.default.createElement(y.default,{identifier:R&&R.identifier,treeValuePath:Z,returnUlr:function(t){var n=(0,m.turnbar)(Jt);ae("dir"),e.history.push("/"+Ut+"/"+It+"/tree"+(n?"/"+n:"")+"/"+t)},returnMain:function(){z(void 0);var t=Jt||vt,n=(0,m.turnbar)(t);e.history.push("/"+Ut+"/"+It+"/tree/"+n)},getPathUrl:function(e,t){if(e&&e.length>0&&t){for(var n="",r=0;r0||xe?u.default.createElement("div",{className:"listtable"},(K&&K.message||$)&&u.default.createElement("div",{className:"listtablehead"},$&&u.default.createElement(w.default,{url:(0,m.getImageUrl)("/"+$.image_url),name:$.name,id:$.id,login:$.login}),K.message&&u.default.createElement("div",{className:ue&&se?"ellipsistxt hidetxt":"ellipsistxt"},u.default.createElement("pre",{id:"ptxt"},u.default.createElement(f.Link,{to:"/"+Ut+"/"+It+"/commits/"+(0,_.truncateCommitId)(K.sha)},u.default.createElement(N.default,{value:K.message})))),ue&&u.default.createElement("span",{className:"ellipsis",onClick:function(){return function(e){le(!e)}(se)}},u.default.createElement("i",{className:"iconfont icon-shenglvehao"})),u.default.createElement("span",{className:"ml20 color-grey-6 font-12 mt3"},K.time_from_now),_e?u.default.createElement(f.Link,{to:"/"+Ut+"/"+It+"/commits/branch/"+(0,m.turnbar)(Jt||vt),className:"ml20 color-grey-3",style:{height:"28px",lineHeight:"28px"}},u.default.createElement("i",{className:"iconfont icon-tijiaoicon mr3 font-16"}),u.default.createElement("span",{style:{fontWeight:"500"}},_e,"次提交")):""),u.default.createElement("ul",{className:"listtablebody"},be&&be.length>0&&be.map((function(t,n){return u.default.createElement(v.default,{key:t.id||n,owner:Ut,item:t,projectsId:It,goToSubRoot:Vt,platform:e.platform})})),xe&&u.default.createElement(x.default,l({},e,{detail:xe,readOnly:Me,md:en,onEdit:function(t){Ae(t),jt(!1);var n=e.history;t?n.push(n.location.pathname):n.push(n.location.pathname+"?edit")},currentBranch:Jt||vt,branch:Jt||vt,type:R.type,treeValuePath:Z})))):"",be&&0===be.length&&!xe?u.default.createElement(P.default,{_html:"暂未发现文件"}):"",ht&&ht.replace_content?u.default.createElement(k.default,{ChangeFile:function(t,n){var r=Jt||vt,a=(0,m.turnbar)(r);e.history.push("/"+Ut+"/"+It+"/tree/"+a+"/"+t+"?edit"),ae("file"),jt(!0)},readme:ht,operate:e&&(e.isManager||e.isDeveloper)&&2!==R.type,history:e.history}):"")),!(Z&&Z.length>0)&&!xe&&u.default.createElement(p.ShortWidth,null,u.default.createElement(p.Gap,{style:{paddingLeft:"30px"}},u.default.createElement("div",{className:"panelmenu"},u.default.createElement(p.FlexAJ,{className:"font-18 color-ooo mb20",style:{lineHeight:"28px"}},"关于",R.permission&&("Admin"===R.permission||"Owner"===R.permission||"Manager"===R.permission)&&u.default.createElement("i",{onClick:function(){return Xe(!0)},className:"iconfont icon-a-shezhi color-grey-9 font-15 pointer"})),tt&&u.default.createElement("p",{className:"font-14 color-grey-3 mb15 task-hide-2",style:{lineHeight:"24px",WebkitLineClamp:"4",textAlign:"justify",wordBreak:"break-all"},title:tt},tt),mt&&u.default.createElement("div",{className:"projectHomeTopics"},mt.map((function(e){return u.default.createElement(f.Link,{to:"/explore/topic/"+e.id+"/"+encodeURIComponent(e.name),className:"proHomeTopic mr15 mb10 font-13 task-hide"},e.name)}))),it&&u.default.createElement("div",{className:"color-grey-6 df pinfos mb5"},u.default.createElement("i",{className:"iconfont icon-lianjie2 font-15 mr10"}),u.default.createElement("a",{href:it,target:"_blank",style:{wordBreak:"break-all",lineHeight:"20px",marginTop:"5px",textDecoration:"underline"}},it)),u.default.createElement("div",{className:"pinfos mb5"},u.default.createElement("i",{className:"iconfont icon-zishuwenjian_icon font-15 mr10"}),u.default.createElement("a",{href:"#readme"},"README.md")),u.default.createElement("div",{className:"color-grey-6 mb5"},u.default.createElement("i",{className:"iconfont icon-neicunicon font-15 mr10"}),u.default.createElement("span",null,R&&R.size)),R&&R.license_name&&u.default.createElement("div",{className:"pinfos"},u.default.createElement("i",{className:"iconfont icon-xieyiicon font-16 mr10"}),u.default.createElement(f.Link,{to:"/"+Ut+"/"+It+"/tree/"+(0,m.turnbar)(Jt||vt)+"/LICENSE",className:"color-grey-6"},R.license_name))),F&&u.default.createElement("div",null,u.default.createElement(a.default,null),u.default.createElement(q.default,{code:F})),ct&&u.default.createElement("div",null,u.default.createElement(a.default,null),u.default.createElement("p",{className:"font-16 color-ooo"},"实践课程"),u.default.createElement("a",{href:ct,target:"_blank",className:"color-grey-6",style:{textDecoration:"underline",wordBreak:"break-all"}},ct)),Ft&&u.default.createElement(u.default.Fragment,null,u.default.createElement(a.default,null),u.default.createElement(E.default,{owner:Ut,projectsId:It,releaseVersions:Ft,history:e.history,distribution:Zt})),u.default.createElement(T.default,{owner:Ut,projectsId:It}),u.default.createElement(j.default,{owner:Ut,projectsId:It})))))))}},i6bk:function(e,t,n){"use strict";function r(e,t){if("undefined"==typeof window)return 0;var n=t?"scrollTop":"scrollLeft",r=e===window,a=r?e[t?"pageYOffset":"pageXOffset"]:e[n];return r&&"number"!=typeof a&&(a=document.documentElement[n]),a}n.d(t,"a",(function(){return r}))},j5x1:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(){function e(e,t){for(var n=0;n .ant-anchor-link-title {\n color: #466aff;\n}\n.ant-anchor-link .ant-anchor-link {\n padding-top: 5px;\n padding-bottom: 5px;\n}\n",""]),e.exports=t},kg56:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.request=void 0;var r,a,i,o=(r=n("14Xm"))&&r.__esModule?r:{default:r},s=(t.request=(a=o.default.mark((function e(t,n,r){var a;return o.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!(a=(0,l.underscoreToCamelcase)(s.mockService[t]))){e.next=7;break}return e.abrupt("return",a);case 7:return e.abrupt("return","文件展示内容只mock了 aaa/package.json");case 8:case"end":return e.stop()}}),e,this)})),i=function(){var e=a.apply(this,arguments);return new Promise((function(t,n){return function r(a,i){try{var o=e[a](i),s=o.value}catch(e){return void n(e)}if(!o.done)return Promise.resolve(s).then((function(e){r("next",e)}),(function(e){r("throw",e)}));t(s)}("next")}))},function(e,t,n){return i.apply(this,arguments)}),n("zdCV")),l=n("YXVS")},kjft:function(e,t,n){"use strict";e.exports={extension:{publisher:"alex-ext-public",name:"typescript-language-features-worker",version:"1.53.0-patch.3"},packageJSON:{name:"typescript-language-features-worker",publisher:"alex",version:"1.53.0-patch.3",displayName:"%displayName%",description:"%description%",icon:"icon.png",activationEvents:["onLanguage:javascript","onLanguage:javascriptreact","onLanguage:typescript","onLanguage:typescriptreact","onLanguage:jsx-tags","onCommand:typescript.reloadProjects","onCommand:javascript.reloadProjects","onCommand:typescript.selectTypeScriptVersion","onCommand:javascript.goToProjectConfig","onCommand:typescript.goToProjectConfig","onCommand:typescript.openTsServerLog","onCommand:workbench.action.tasks.runTask","onCommand:_typescript.configurePlugin","onCommand:_typescript.learnMoreAboutRefactorings","onLanguage:jsonc"],kaitianContributes:{workerMain:"./dist/browser/extension.js"},contributes:{jsonValidation:[{fileMatch:"package.json",url:"./schemas/package.schema.json"},{fileMatch:"tsconfig.json",url:"https://json.schemastore.org/tsconfig"},{fileMatch:"tsconfig.json",url:"./schemas/tsconfig.schema.json"},{fileMatch:"tsconfig.*.json",url:"https://json.schemastore.org/tsconfig"},{fileMatch:"tsconfig-*.json",url:"./schemas/tsconfig.schema.json"},{fileMatch:"tsconfig-*.json",url:"https://json.schemastore.org/tsconfig"},{fileMatch:"tsconfig.*.json",url:"./schemas/tsconfig.schema.json"},{fileMatch:"typings.json",url:"https://json.schemastore.org/typings"},{fileMatch:".bowerrc",url:"https://json.schemastore.org/bowerrc"},{fileMatch:".babelrc",url:"https://json.schemastore.org/babelrc"},{fileMatch:".babelrc.json",url:"https://json.schemastore.org/babelrc"},{fileMatch:"babel.config.json",url:"https://json.schemastore.org/babelrc"},{fileMatch:"jsconfig.json",url:"https://json.schemastore.org/jsconfig"},{fileMatch:"jsconfig.json",url:"./schemas/jsconfig.schema.json"},{fileMatch:"jsconfig.*.json",url:"https://json.schemastore.org/jsconfig"},{fileMatch:"jsconfig.*.json",url:"./schemas/jsconfig.schema.json"}],configuration:{type:"object",title:"%configuration.typescript%",order:20,properties:{"typescript.tsdk":{type:["string","null"],default:null,markdownDescription:"%typescript.tsdk.desc%",scope:"window"},"typescript.disableAutomaticTypeAcquisition":{type:"boolean",default:!1,description:"%typescript.disableAutomaticTypeAcquisition%",scope:"window",tags:["usesOnlineServices"]},"typescript.enablePromptUseWorkspaceTsdk":{type:"boolean",default:!1,description:"%typescript.enablePromptUseWorkspaceTsdk%",scope:"window"},"typescript.npm":{type:["string","null"],default:null,description:"%typescript.npm%",scope:"machine"},"typescript.check.npmIsInstalled":{type:"boolean",default:!0,description:"%typescript.check.npmIsInstalled%",scope:"window"},"javascript.referencesCodeLens.enabled":{type:"boolean",default:!1,description:"%javascript.referencesCodeLens.enabled%",scope:"window"},"javascript.referencesCodeLens.showOnAllFunctions":{type:"boolean",default:!1,description:"%javascript.referencesCodeLens.showOnAllFunctions%",scope:"window"},"typescript.referencesCodeLens.enabled":{type:"boolean",default:!1,description:"%typescript.referencesCodeLens.enabled%",scope:"window"},"typescript.referencesCodeLens.showOnAllFunctions":{type:"boolean",default:!1,description:"%typescript.referencesCodeLens.showOnAllFunctions%",scope:"window"},"typescript.implementationsCodeLens.enabled":{type:"boolean",default:!1,description:"%typescript.implementationsCodeLens.enabled%",scope:"window"},"typescript.tsserver.enableTracing":{type:"boolean",default:!1,description:"%typescript.tsserver.enableTracing%",scope:"window"},"typescript.tsserver.log":{type:"string",enum:["off","terse","normal","verbose"],default:"off",description:"%typescript.tsserver.log%",scope:"window"},"typescript.tsserver.pluginPaths":{type:"array",items:{type:"string",description:"%typescript.tsserver.pluginPaths.item%"},default:[],description:"%typescript.tsserver.pluginPaths%",scope:"machine"},"typescript.tsserver.trace":{type:"string",enum:["off","messages","verbose"],default:"off",description:"%typescript.tsserver.trace%",scope:"window"},"javascript.suggest.completeFunctionCalls":{type:"boolean",default:!1,description:"%configuration.suggest.completeFunctionCalls%",scope:"resource"},"typescript.suggest.completeFunctionCalls":{type:"boolean",default:!1,description:"%configuration.suggest.completeFunctionCalls%",scope:"resource"},"javascript.suggest.includeAutomaticOptionalChainCompletions":{type:"boolean",default:!0,description:"%configuration.suggest.includeAutomaticOptionalChainCompletions%",scope:"resource"},"typescript.suggest.includeAutomaticOptionalChainCompletions":{type:"boolean",default:!0,description:"%configuration.suggest.includeAutomaticOptionalChainCompletions%",scope:"resource"},"typescript.reportStyleChecksAsWarnings":{type:"boolean",default:!0,description:"%typescript.reportStyleChecksAsWarnings%",scope:"window"},"typescript.validate.enable":{type:"boolean",default:!0,description:"%typescript.validate.enable%",scope:"window"},"typescript.format.enable":{type:"boolean",default:!0,description:"%typescript.format.enable%",scope:"window"},"typescript.format.insertSpaceAfterCommaDelimiter":{type:"boolean",default:!0,description:"%format.insertSpaceAfterCommaDelimiter%",scope:"resource"},"typescript.format.insertSpaceAfterConstructor":{type:"boolean",default:!1,description:"%format.insertSpaceAfterConstructor%",scope:"resource"},"typescript.format.insertSpaceAfterSemicolonInForStatements":{type:"boolean",default:!0,description:"%format.insertSpaceAfterSemicolonInForStatements%",scope:"resource"},"typescript.format.insertSpaceBeforeAndAfterBinaryOperators":{type:"boolean",default:!0,description:"%format.insertSpaceBeforeAndAfterBinaryOperators%",scope:"resource"},"typescript.format.insertSpaceAfterKeywordsInControlFlowStatements":{type:"boolean",default:!0,description:"%format.insertSpaceAfterKeywordsInControlFlowStatements%",scope:"resource"},"typescript.format.insertSpaceAfterFunctionKeywordForAnonymousFunctions":{type:"boolean",default:!0,description:"%format.insertSpaceAfterFunctionKeywordForAnonymousFunctions%",scope:"resource"},"typescript.format.insertSpaceBeforeFunctionParenthesis":{type:"boolean",default:!1,description:"%format.insertSpaceBeforeFunctionParenthesis%",scope:"resource"},"typescript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis":{type:"boolean",default:!1,description:"%format.insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis%",scope:"resource"},"typescript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets":{type:"boolean",default:!1,description:"%format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets%",scope:"resource"},"typescript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces":{type:"boolean",default:!0,description:"%format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces%",scope:"resource"},"typescript.format.insertSpaceAfterOpeningAndBeforeClosingEmptyBraces":{type:"boolean",default:!0,description:"%format.insertSpaceAfterOpeningAndBeforeClosingEmptyBraces%",scope:"resource"},"typescript.format.insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces":{type:"boolean",default:!1,description:"%format.insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces%",scope:"resource"},"typescript.format.insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces":{type:"boolean",default:!1,description:"%format.insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces%",scope:"resource"},"typescript.format.insertSpaceAfterTypeAssertion":{type:"boolean",default:!1,description:"%format.insertSpaceAfterTypeAssertion%",scope:"resource"},"typescript.format.placeOpenBraceOnNewLineForFunctions":{type:"boolean",default:!1,description:"%format.placeOpenBraceOnNewLineForFunctions%",scope:"resource"},"typescript.format.placeOpenBraceOnNewLineForControlBlocks":{type:"boolean",default:!1,description:"%format.placeOpenBraceOnNewLineForControlBlocks%",scope:"resource"},"typescript.format.semicolons":{type:"string",default:"ignore",description:"%format.semicolons%",scope:"resource",enum:["ignore","insert","remove"],enumDescriptions:["%format.semicolons.ignore%","%format.semicolons.insert%","%format.semicolons.remove%"]},"javascript.validate.enable":{type:"boolean",default:!0,description:"%javascript.validate.enable%",scope:"window"},"javascript.format.enable":{type:"boolean",default:!0,description:"%javascript.format.enable%",scope:"window"},"javascript.format.insertSpaceAfterCommaDelimiter":{type:"boolean",default:!0,description:"%format.insertSpaceAfterCommaDelimiter%",scope:"resource"},"javascript.format.insertSpaceAfterConstructor":{type:"boolean",default:!1,description:"%format.insertSpaceAfterConstructor%",scope:"resource"},"javascript.format.insertSpaceAfterSemicolonInForStatements":{type:"boolean",default:!0,description:"%format.insertSpaceAfterSemicolonInForStatements%",scope:"resource"},"javascript.format.insertSpaceBeforeAndAfterBinaryOperators":{type:"boolean",default:!0,description:"%format.insertSpaceBeforeAndAfterBinaryOperators%",scope:"resource"},"javascript.format.insertSpaceAfterKeywordsInControlFlowStatements":{type:"boolean",default:!0,description:"%format.insertSpaceAfterKeywordsInControlFlowStatements%",scope:"resource"},"javascript.format.insertSpaceAfterFunctionKeywordForAnonymousFunctions":{type:"boolean",default:!0,description:"%format.insertSpaceAfterFunctionKeywordForAnonymousFunctions%",scope:"resource"},"javascript.format.insertSpaceBeforeFunctionParenthesis":{type:"boolean",default:!1,description:"%format.insertSpaceBeforeFunctionParenthesis%",scope:"resource"},"javascript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis":{type:"boolean",default:!1,description:"%format.insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis%",scope:"resource"},"javascript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets":{type:"boolean",default:!1,description:"%format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets%",scope:"resource"},"javascript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces":{type:"boolean",default:!0,description:"%format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces%",scope:"resource"},"javascript.format.insertSpaceAfterOpeningAndBeforeClosingEmptyBraces":{type:"boolean",default:!0,description:"%format.insertSpaceAfterOpeningAndBeforeClosingEmptyBraces%",scope:"resource"},"javascript.format.insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces":{type:"boolean",default:!1,description:"%format.insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces%",scope:"resource"},"javascript.format.insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces":{type:"boolean",default:!1,description:"%format.insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces%",scope:"resource"},"javascript.format.placeOpenBraceOnNewLineForFunctions":{type:"boolean",default:!1,description:"%format.placeOpenBraceOnNewLineForFunctions%",scope:"resource"},"javascript.format.placeOpenBraceOnNewLineForControlBlocks":{type:"boolean",default:!1,description:"%format.placeOpenBraceOnNewLineForControlBlocks%",scope:"resource"},"javascript.format.semicolons":{type:"string",default:"ignore",description:"%format.semicolons%",scope:"resource",enum:["ignore","insert","remove"],enumDescriptions:["%format.semicolons.ignore%","%format.semicolons.insert%","%format.semicolons.remove%"]},"javascript.implicitProjectConfig.checkJs":{type:"boolean",default:!1,markdownDescription:"%configuration.implicitProjectConfig.checkJs%",markdownDeprecationMessage:"%configuration.javascript.checkJs.checkJs.deprecation%",scope:"window"},"js/ts.implicitProjectConfig.checkJs":{type:"boolean",default:!1,markdownDescription:"%configuration.implicitProjectConfig.checkJs%",scope:"window"},"javascript.implicitProjectConfig.experimentalDecorators":{type:"boolean",default:!1,markdownDescription:"%configuration.implicitProjectConfig.experimentalDecorators%",markdownDeprecationMessage:"%configuration.javascript.checkJs.experimentalDecorators.deprecation%",scope:"window"},"js/ts.implicitProjectConfig.experimentalDecorators":{type:"boolean",default:!1,markdownDescription:"%configuration.implicitProjectConfig.experimentalDecorators%",scope:"window"},"js/ts.implicitProjectConfig.strictNullChecks":{type:"boolean",default:!1,markdownDescription:"%configuration.implicitProjectConfig.strictNullChecks%",scope:"window"},"js/ts.implicitProjectConfig.strictFunctionTypes":{type:"boolean",default:!0,markdownDescription:"%configuration.implicitProjectConfig.strictFunctionTypes%",scope:"window"},"javascript.suggest.names":{type:"boolean",default:!0,markdownDescription:"%configuration.suggest.names%",scope:"resource"},"typescript.tsc.autoDetect":{type:"string",default:"on",enum:["on","off","build","watch"],markdownEnumDescriptions:["%typescript.tsc.autoDetect.on%","%typescript.tsc.autoDetect.off%","%typescript.tsc.autoDetect.build%","%typescript.tsc.autoDetect.watch%"],description:"%typescript.tsc.autoDetect%",scope:"window"},"javascript.suggest.paths":{type:"boolean",default:!0,description:"%configuration.suggest.paths%",scope:"resource"},"typescript.suggest.paths":{type:"boolean",default:!0,description:"%configuration.suggest.paths%",scope:"resource"},"javascript.suggest.autoImports":{type:"boolean",default:!0,description:"%configuration.suggest.autoImports%",scope:"resource"},"typescript.suggest.autoImports":{type:"boolean",default:!0,description:"%configuration.suggest.autoImports%",scope:"resource"},"javascript.suggest.completeJSDocs":{type:"boolean",default:!0,description:"%configuration.suggest.completeJSDocs%",scope:"resource"},"typescript.suggest.completeJSDocs":{type:"boolean",default:!0,description:"%configuration.suggest.completeJSDocs%",scope:"resource"},"typescript.locale":{type:["string","null"],enum:["de","es","en","fr","it","ja","ko","ru","zh-CN","zh-TW",null],default:null,markdownDescription:"%typescript.locale%",scope:"window"},"javascript.suggestionActions.enabled":{type:"boolean",default:!0,description:"%javascript.suggestionActions.enabled%",scope:"resource"},"typescript.suggestionActions.enabled":{type:"boolean",default:!0,description:"%typescript.suggestionActions.enabled%",scope:"resource"},"javascript.preferences.quoteStyle":{type:"string",enum:["auto","single","double"],default:"auto",markdownDescription:"%typescript.preferences.quoteStyle%",scope:"resource"},"typescript.preferences.quoteStyle":{type:"string",enum:["auto","single","double"],default:"auto",markdownDescription:"%typescript.preferences.quoteStyle%",scope:"resource"},"javascript.preferences.importModuleSpecifier":{type:"string",enum:["shortest","relative","non-relative","project-relative"],markdownEnumDescriptions:["%typescript.preferences.importModuleSpecifier.shortest%","%typescript.preferences.importModuleSpecifier.relative%","%typescript.preferences.importModuleSpecifier.nonRelative%","%typescript.preferences.importModuleSpecifier.projectRelative%"],default:"shortest",description:"%typescript.preferences.importModuleSpecifier%",scope:"resource"},"typescript.preferences.importModuleSpecifier":{type:"string",enum:["shortest","relative","non-relative","project-relative"],markdownEnumDescriptions:["%typescript.preferences.importModuleSpecifier.shortest%","%typescript.preferences.importModuleSpecifier.relative%","%typescript.preferences.importModuleSpecifier.nonRelative%","%typescript.preferences.importModuleSpecifier.projectRelative%"],default:"shortest",description:"%typescript.preferences.importModuleSpecifier%",scope:"resource"},"javascript.preferences.importModuleSpecifierEnding":{type:"string",enum:["auto","minimal","index","js"],markdownEnumDescriptions:["%typescript.preferences.importModuleSpecifierEnding.auto%","%typescript.preferences.importModuleSpecifierEnding.minimal%","%typescript.preferences.importModuleSpecifierEnding.index%","%typescript.preferences.importModuleSpecifierEnding.js%"],default:"auto",description:"%typescript.preferences.importModuleSpecifierEnding%",scope:"resource"},"typescript.preferences.importModuleSpecifierEnding":{type:"string",enum:["auto","minimal","index","js"],markdownEnumDescriptions:["%typescript.preferences.importModuleSpecifierEnding.auto%","%typescript.preferences.importModuleSpecifierEnding.minimal%","%typescript.preferences.importModuleSpecifierEnding.index%","%typescript.preferences.importModuleSpecifierEnding.js%"],default:"auto",description:"%typescript.preferences.importModuleSpecifierEnding%",scope:"resource"},"typescript.preferences.includePackageJsonAutoImports":{type:"string",enum:["auto","on","off"],enumDescriptions:["%typescript.preferences.includePackageJsonAutoImports.auto%","%typescript.preferences.includePackageJsonAutoImports.on%","%typescript.preferences.includePackageJsonAutoImports.off%"],default:"auto",markdownDescription:"%typescript.preferences.includePackageJsonAutoImports%",scope:"window"},"javascript.preferences.renameShorthandProperties":{type:"boolean",default:!0,description:"%typescript.preferences.useAliasesForRenames%",deprecationMessage:"%typescript.preferences.renameShorthandProperties.deprecationMessage%",scope:"resource"},"typescript.preferences.renameShorthandProperties":{type:"boolean",default:!0,description:"%typescript.preferences.useAliasesForRenames%",deprecationMessage:"%typescript.preferences.renameShorthandProperties.deprecationMessage%",scope:"resource"},"javascript.preferences.useAliasesForRenames":{type:"boolean",default:!0,description:"%typescript.preferences.useAliasesForRenames%",scope:"resource"},"typescript.preferences.useAliasesForRenames":{type:"boolean",default:!0,description:"%typescript.preferences.useAliasesForRenames%",scope:"resource"},"typescript.updateImportsOnFileMove.enabled":{type:"string",enum:["prompt","always","never"],markdownEnumDescriptions:["%typescript.updateImportsOnFileMove.enabled.prompt%","%typescript.updateImportsOnFileMove.enabled.always%","%typescript.updateImportsOnFileMove.enabled.never%"],default:"prompt",description:"%typescript.updateImportsOnFileMove.enabled%",scope:"resource"},"javascript.updateImportsOnFileMove.enabled":{type:"string",enum:["prompt","always","never"],markdownEnumDescriptions:["%typescript.updateImportsOnFileMove.enabled.prompt%","%typescript.updateImportsOnFileMove.enabled.always%","%typescript.updateImportsOnFileMove.enabled.never%"],default:"prompt",description:"%typescript.updateImportsOnFileMove.enabled%",scope:"resource"},"typescript.autoClosingTags":{type:"boolean",default:!0,description:"%typescript.autoClosingTags%"},"javascript.autoClosingTags":{type:"boolean",default:!0,description:"%typescript.autoClosingTags%"},"javascript.suggest.enabled":{type:"boolean",default:!0,description:"%typescript.suggest.enabled%",scope:"resource"},"typescript.suggest.enabled":{type:"boolean",default:!0,description:"%typescript.suggest.enabled%",scope:"resource"},"typescript.surveys.enabled":{type:"boolean",default:!0,description:"%configuration.surveys.enabled%",scope:"window"},"typescript.tsserver.useSeparateSyntaxServer":{type:"boolean",default:!0,description:"%configuration.tsserver.useSeparateSyntaxServer%",scope:"window"},"typescript.tsserver.maxTsServerMemory":{type:"number",default:3072,description:"%configuration.tsserver.maxTsServerMemory%",scope:"window"},"typescript.tsserver.experimental.enableProjectDiagnostics":{type:"boolean",default:!1,description:"%configuration.tsserver.experimental.enableProjectDiagnostics%",scope:"window"},"typescript.tsserver.watchOptions":{type:"object",description:"%configuration.tsserver.watchOptions%",scope:"window",properties:{watchFile:{type:"string",description:"%configuration.tsserver.watchOptions.watchFile%",enum:["fixedPollingInterval","priorityPollingInterval","dynamicPriorityPolling","useFsEvents","useFsEventsOnParentDirectory"],enumDescriptions:["%configuration.tsserver.watchOptions.watchFile.fixedPollingInterval%","%configuration.tsserver.watchOptions.watchFile.priorityPollingInterval%","%configuration.tsserver.watchOptions.watchFile.dynamicPriorityPolling%","%configuration.tsserver.watchOptions.watchFile.useFsEvents%","%configuration.tsserver.watchOptions.watchFile.useFsEventsOnParentDirectory%"],default:"useFsEvents"},watchDirectory:{type:"string",description:"%configuration.tsserver.watchOptions.watchDirectory%",enum:["fixedPollingInterval","dynamicPriorityPolling","useFsEvents"],enumDescriptions:["%configuration.tsserver.watchOptions.watchDirectory.fixedPollingInterval%","%configuration.tsserver.watchOptions.watchDirectory.dynamicPriorityPolling%","%configuration.tsserver.watchOptions.watchDirectory.useFsEvents%"],default:"useFsEvents"},fallbackPolling:{type:"string",description:"%configuration.tsserver.watchOptions.fallbackPolling%",enum:["fixedPollingInterval","priorityPollingInterval","dynamicPriorityPolling"],enumDescriptions:["configuration.tsserver.watchOptions.fallbackPolling.fixedPollingInterval","configuration.tsserver.watchOptions.fallbackPolling.priorityPollingInterval","configuration.tsserver.watchOptions.fallbackPolling.dynamicPriorityPolling"]},synchronousWatchDirectory:{type:"boolean",description:"%configuration.tsserver.watchOptions.synchronousWatchDirectory%"}}},"typescript.workspaceSymbols.scope":{type:"string",enum:["allOpenProjects","currentProject"],enumDescriptions:["%typescript.workspaceSymbols.scope.allOpenProjects%","%typescript.workspaceSymbols.scope.currentProject%"],default:"allOpenProjects",markdownDescription:"%typescript.workspaceSymbols.scope%",scope:"window"}}},commands:[{command:"typescript.reloadProjects",title:"%reloadProjects.title%",category:"TypeScript"},{command:"javascript.reloadProjects",title:"%reloadProjects.title%",category:"JavaScript"},{command:"typescript.selectTypeScriptVersion",title:"%typescript.selectTypeScriptVersion.title%",category:"TypeScript"},{command:"typescript.goToProjectConfig",title:"%goToProjectConfig.title%",category:"TypeScript"},{command:"javascript.goToProjectConfig",title:"%goToProjectConfig.title%",category:"JavaScript"},{command:"typescript.openTsServerLog",title:"%typescript.openTsServerLog.title%",category:"TypeScript"},{command:"typescript.restartTsServer",title:"%typescript.restartTsServer%",category:"TypeScript"}],menus:{commandPalette:[{command:"typescript.reloadProjects",when:"editorLangId == typescript && typescript.isManagedFile"},{command:"typescript.reloadProjects",when:"editorLangId == typescriptreact && typescript.isManagedFile"},{command:"javascript.reloadProjects",when:"editorLangId == javascript && typescript.isManagedFile"},{command:"javascript.reloadProjects",when:"editorLangId == javascriptreact && typescript.isManagedFile"},{command:"typescript.goToProjectConfig",when:"editorLangId == typescript && typescript.isManagedFile"},{command:"typescript.goToProjectConfig",when:"editorLangId == typescriptreact"},{command:"javascript.goToProjectConfig",when:"editorLangId == javascript && typescript.isManagedFile"},{command:"javascript.goToProjectConfig",when:"editorLangId == javascriptreact && typescript.isManagedFile"},{command:"typescript.selectTypeScriptVersion",when:"typescript.isManagedFile"},{command:"typescript.openTsServerLog",when:"typescript.isManagedFile"},{command:"typescript.restartTsServer",when:"typescript.isManagedFile"}]},breakpoints:[{language:"typescript"},{language:"typescriptreact"}],taskDefinitions:[{type:"typescript",required:["tsconfig"],properties:{tsconfig:{type:"string",description:"%taskDefinition.tsconfig.description%"},option:{type:"string"}}}],problemPatterns:[{name:"tsc",regexp:"^([^\\s].*)[\\(:](\\d+)[,:](\\d+)(?:\\):\\s+|\\s+-\\s+)(error|warning|info)\\s+TS(\\d+)\\s*:\\s*(.*)$",file:1,line:2,column:3,severity:4,code:5,message:6}],problemMatchers:[{name:"tsc",label:"%typescript.problemMatchers.tsc.label%",owner:"typescript",source:"ts",applyTo:"closedDocuments",fileLocation:["relative","${cwd}"],pattern:"$tsc"},{name:"tsc-watch",label:"%typescript.problemMatchers.tscWatch.label%",owner:"typescript",source:"ts",applyTo:"closedDocuments",fileLocation:["relative","${cwd}"],pattern:"$tsc",background:{activeOnStart:!0,beginsPattern:{regexp:"^\\s*(?:message TS6032:|\\[?\\D*\\d{1,2}[:.]\\d{1,2}[:.]\\d{1,2}\\D*(├\\D*\\d{1,2}\\D+┤)?(?:\\]| -)) File change detected\\. Starting incremental compilation\\.\\.\\."},endsPattern:{regexp:"^\\s*(?:message TS6042:|\\[?\\D*\\d{1,2}[:.]\\d{1,2}[:.]\\d{1,2}\\D*(├\\D*\\d{1,2}\\D+┤)?(?:\\]| -)) (?:Compilation complete\\.|Found \\d+ errors?\\.) Watching for file changes\\."}}}],codeActions:[{languages:["javascript","javascriptreact","typescript","typescriptreact"],actions:[{kind:"refactor.extract.constant",title:"%codeActions.refactor.extract.constant.title%",description:"%codeActions.refactor.extract.constant.description%"},{kind:"refactor.extract.function",title:"%codeActions.refactor.extract.function.title%",description:"%codeActions.refactor.extract.function.description%"},{kind:"refactor.extract.interface",title:"%codeActions.refactor.extract.interface.title%",description:"%codeActions.refactor.extract.interface.description%"},{kind:"refactor.extract.type",title:"%codeActions.refactor.extract.type.title%",description:"%codeActions.refactor.extract.type.description%"},{kind:"refactor.rewrite.import",title:"%codeActions.refactor.rewrite.import.title%",description:"%codeActions.refactor.rewrite.import.description%"},{kind:"refactor.rewrite.export",title:"%codeActions.refactor.rewrite.export.title%",description:"%codeActions.refactor.rewrite.export.description%"},{kind:"refactor.rewrite.arrow.braces",title:"%codeActions.refactor.rewrite.arrow.braces.title%",description:"%codeActions.refactor.rewrite.arrow.braces.description%"},{kind:"refactor.rewrite.parameters.toDestructured",title:"%codeActions.refactor.rewrite.parameters.toDestructured.title%"},{kind:"refactor.rewrite.property.generateAccessors",title:"%codeActions.refactor.rewrite.property.generateAccessors.title%",description:"%codeActions.refactor.rewrite.property.generateAccessors.description%"},{kind:"refactor.move.newFile",title:"%codeActions.refactor.move.newFile.title%",description:"%codeActions.refactor.move.newFile.description%"},{kind:"source.organizeImports",title:"%codeActions.source.organizeImports.title%"}]}],typescriptServerPlugins:[{name:"typescript-vscode-sh-plugin",enableForWorkspaceTypeScriptVersions:!0}],workerMain:"./dist/browser/extension.js"},browser:"./dist/browser/extension"},defaultPkgNlsJSON:{displayName:"TypeScript and JavaScript Language Features",description:"Provides rich language support for JavaScript and TypeScript.","reloadProjects.title":"Reload Project","configuration.typescript":"TypeScript","configuration.suggest.completeFunctionCalls":"Complete functions with their parameter signature.","configuration.suggest.includeAutomaticOptionalChainCompletions":"Enable/disable showing completions on potentially undefined values that insert an optional chain call. Requires TS 3.7+ and strict null checks to be enabled.","typescript.tsdk.desc":"Specifies the folder path to the tsserver and lib*.d.ts files under a TypeScript install to use for IntelliSense, for example: `./node_modules/typescript/lib`.\n\n- When specified as a user setting, the TypeScript version from `typescript.tsdk` automatically replaces the built-in TypeScript version.\n- When specified as a workspace setting, `typescript.tsdk` allows you to switch to use that workspace version of TypeScript for IntelliSense with the `TypeScript: Select TypeScript version` command.\n\nSee the [TypeScript documentation](https://code.visualstudio.com/docs/typescript/typescript-compiling#_using-newer-typescript-versions) for more detail about managing TypeScript versions.","typescript.disableAutomaticTypeAcquisition":"Disables automatic type acquisition. Automatic type acquisition fetches `@types` packages from npm to improve IntelliSense for external libraries.","typescript.enablePromptUseWorkspaceTsdk":"Enables prompting of users to use the TypeScript version configured in the workspace for Intellisense.","typescript.tsserver.enableTracing":"Enables tracing TS server performance to a directory. These trace files can be used to diagnose TS Server performance issues. The log may contain file paths, source code, and other potentially sensitive information from your project.","typescript.tsserver.log":"Enables logging of the TS server to a file. This log can be used to diagnose TS Server issues. The log may contain file paths, source code, and other potentially sensitive information from your project.","typescript.tsserver.pluginPaths":"Additional paths to discover TypeScript Language Service plugins.","typescript.tsserver.pluginPaths.item":"Either an absolute or relative path. Relative path will be resolved against workspace folder(s).","typescript.tsserver.trace":"Enables tracing of messages sent to the TS server. This trace can be used to diagnose TS Server issues. The trace may contain file paths, source code, and other potentially sensitive information from your project.","typescript.validate.enable":"Enable/disable TypeScript validation.","typescript.format.enable":"Enable/disable default TypeScript formatter.","javascript.format.enable":"Enable/disable default JavaScript formatter.","format.insertSpaceAfterCommaDelimiter":"Defines space handling after a comma delimiter.","format.insertSpaceAfterConstructor":"Defines space handling after the constructor keyword.","format.insertSpaceAfterSemicolonInForStatements":"Defines space handling after a semicolon in a for statement.","format.insertSpaceBeforeAndAfterBinaryOperators":"Defines space handling after a binary operator.","format.insertSpaceAfterKeywordsInControlFlowStatements":"Defines space handling after keywords in a control flow statement.","format.insertSpaceAfterFunctionKeywordForAnonymousFunctions":"Defines space handling after function keyword for anonymous functions.","format.insertSpaceBeforeFunctionParenthesis":"Defines space handling before function argument parentheses.","format.insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis":"Defines space handling after opening and before closing non-empty parenthesis.","format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets":"Defines space handling after opening and before closing non-empty brackets.","format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces":"Defines space handling after opening and before closing non-empty braces.","format.insertSpaceAfterOpeningAndBeforeClosingEmptyBraces":"Defines space handling after opening and before closing empty braces.","format.insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces":"Defines space handling after opening and before closing template string braces.","format.insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces":"Defines space handling after opening and before closing JSX expression braces.","format.insertSpaceAfterTypeAssertion":"Defines space handling after type assertions in TypeScript.","format.placeOpenBraceOnNewLineForFunctions":"Defines whether an open brace is put onto a new line for functions or not.","format.placeOpenBraceOnNewLineForControlBlocks":"Defines whether an open brace is put onto a new line for control blocks or not.","format.semicolons":"Defines handling of optional semicolons. Requires using TypeScript 3.7 or newer in the workspace.","format.semicolons.ignore":"Don't insert or remove any semicolons.","format.semicolons.insert":"Insert semicolons at statement ends.","format.semicolons.remove":"Remove unnecessary semicolons.","javascript.validate.enable":"Enable/disable JavaScript validation.","goToProjectConfig.title":"Go to Project Configuration","javascript.referencesCodeLens.enabled":"Enable/disable references CodeLens in JavaScript files.","javascript.referencesCodeLens.showOnAllFunctions":"Enable/disable references CodeLens on all functions in JavaScript files.","typescript.referencesCodeLens.enabled":"Enable/disable references CodeLens in TypeScript files.","typescript.referencesCodeLens.showOnAllFunctions":"Enable/disable references CodeLens on all functions in TypeScript files.","typescript.implementationsCodeLens.enabled":"Enable/disable implementations CodeLens. This CodeLens shows the implementers of an interface.","typescript.openTsServerLog.title":"Open TS Server log","typescript.restartTsServer":"Restart TS server","typescript.selectTypeScriptVersion.title":"Select TypeScript Version...","typescript.reportStyleChecksAsWarnings":"Report style checks as warnings.","typescript.npm":"Specifies the path to the npm executable used for Automatic Type Acquisition.","typescript.check.npmIsInstalled":"Check if npm is installed for Automatic Type Acquisition.","configuration.suggest.names":"Enable/disable including unique names from the file in JavaScript suggestions. Note that name suggestions are always disabled in JavaScript code that is semantically checked using `@ts-check` or `checkJs`.","typescript.tsc.autoDetect":"Controls auto detection of tsc tasks.","typescript.tsc.autoDetect.off":"Disable this feature.","typescript.tsc.autoDetect.on":"Create both build and watch tasks.","typescript.tsc.autoDetect.build":"Only create single run compile tasks.","typescript.tsc.autoDetect.watch":"Only create compile and watch tasks.","typescript.problemMatchers.tsc.label":"TypeScript problems","typescript.problemMatchers.tscWatch.label":"TypeScript problems (watch mode)","configuration.suggest.paths":"Enable/disable suggestions for paths in import statements and require calls.","configuration.tsserver.useSeparateSyntaxServer":"Enable/disable spawning a separate TypeScript server that can more quickly respond to syntax related operations, such as calculating folding or computing document symbols. Requires using TypeScript 3.4.0 or newer in the workspace.","configuration.tsserver.maxTsServerMemory":"Set the maximum amount of memory (in MB) to allocate to the TypeScript server process","configuration.tsserver.experimental.enableProjectDiagnostics":"(Experimental) Enables project wide error reporting.","typescript.locale":"Sets the locale used to report JavaScript and TypeScript errors. Default of `null` uses VS Code's locale.","configuration.implicitProjectConfig.checkJs":"Enable/disable semantic checking of JavaScript files. Existing `jsconfig.json` or `tsconfig.json` files override this setting.","configuration.javascript.checkJs.checkJs.deprecation":"This setting has been deprecated in favor of `#js/ts.implicitProjectConfig.checkJs#`.","configuration.implicitProjectConfig.experimentalDecorators":"Enable/disable `experimentalDecorators` in JavaScript files that are not part of a project. Existing `jsconfig.json` or `tsconfig.json` files override this setting.","configuration.javascript.checkJs.experimentalDecorators.deprecation":"This setting has been deprecated in favor of `#js/ts.implicitProjectConfig.experimentalDecorators#`.","configuration.implicitProjectConfig.strictNullChecks":"Enable/disable [strict null checks](https://www.typescriptlang.org/tsconfig#strictNullChecks) in JavaScript and TypeScript files that are not part of a project. Existing `jsconfig.json` or `tsconfig.json` files override this setting.","configuration.implicitProjectConfig.strictFunctionTypes":"Enable/disable [strict function types](https://www.typescriptlang.org/tsconfig#strictFunctionTypes) in JavaScript and TypeScript files that are not part of a project. Existing `jsconfig.json` or `tsconfig.json` files override this setting.","configuration.suggest.autoImports":"Enable/disable auto import suggestions.","taskDefinition.tsconfig.description":"The tsconfig file that defines the TS build.","javascript.suggestionActions.enabled":"Enable/disable suggestion diagnostics for JavaScript files in the editor.","typescript.suggestionActions.enabled":"Enable/disable suggestion diagnostics for TypeScript files in the editor.","typescript.preferences.quoteStyle":"Preferred quote style to use for quick fixes: `single` quotes, `double` quotes, or `auto` infer quote type from existing imports.","typescript.preferences.importModuleSpecifier":"Preferred path style for auto imports.","typescript.preferences.importModuleSpecifier.shortest":"Prefers a non-relative import only if one is available that has fewer path segments than a relative import.","typescript.preferences.importModuleSpecifier.relative":"Prefers a relative path to the imported file location.","typescript.preferences.importModuleSpecifier.nonRelative":"Prefers a non-relative import based on the `baseUrl` or `paths` configured in your `jsconfig.json` / `tsconfig.json`.","typescript.preferences.importModuleSpecifier.projectRelative":"Prefers a non-relative import only if the relative import path would leave the package or project directory. Requires using TypeScript 4.2+ in the workspace.","typescript.preferences.importModuleSpecifierEnding":"Preferred path ending for auto imports.","typescript.preferences.importModuleSpecifierEnding.auto":"Use project settings to select a default.","typescript.preferences.importModuleSpecifierEnding.minimal":"Shorten `./component/index.js` to `./component`.","typescript.preferences.importModuleSpecifierEnding.index":"Shorten `./component/index.js` to `./component/index`.","typescript.preferences.importModuleSpecifierEnding.js":"Do not shorten path endings; include the `.js` extension.","typescript.preferences.includePackageJsonAutoImports":"Enable/disable searching `package.json` dependencies for available auto imports.","typescript.preferences.includePackageJsonAutoImports.auto":"Search dependencies based on estimated performance impact.","typescript.preferences.includePackageJsonAutoImports.on":"Always search dependencies.","typescript.preferences.includePackageJsonAutoImports.off":"Never search dependencies.","typescript.updateImportsOnFileMove.enabled":"Enable/disable automatic updating of import paths when you rename or move a file in VS Code.","typescript.updateImportsOnFileMove.enabled.prompt":"Prompt on each rename.","typescript.updateImportsOnFileMove.enabled.always":"Always update paths automatically.","typescript.updateImportsOnFileMove.enabled.never":"Never rename paths and don't prompt.","typescript.autoClosingTags":"Enable/disable automatic closing of JSX tags.","typescript.suggest.enabled":"Enabled/disable autocomplete suggestions.","configuration.surveys.enabled":"Enabled/disable occasional surveys that help us improve VS Code's JavaScript and TypeScript support.","configuration.suggest.completeJSDocs":"Enable/disable suggestion to complete JSDoc comments.","configuration.tsserver.watchOptions":"Configure which watching strategies should be used to keep track of files and directories. Requires using TypeScript 3.8+ in the workspace.","configuration.tsserver.watchOptions.watchFile":"Strategy for how individual files are watched.","configuration.tsserver.watchOptions.watchFile.fixedPollingInterval":"Check every file for changes several times a second at a fixed interval.","configuration.tsserver.watchOptions.watchFile.priorityPollingInterval":"Check every file for changes several times a second, but use heuristics to check certain types of files less frequently than others.","configuration.tsserver.watchOptions.watchFile.dynamicPriorityPolling":"Use a dynamic queue where less-frequently modified files will be checked less often.","configuration.tsserver.watchOptions.watchFile.useFsEvents":"Attempt to use the operating system/file system’s native events for file changes.","configuration.tsserver.watchOptions.watchFile.useFsEventsOnParentDirectory":"Attempt to use the operating system/file system’s native events to listen for changes on a file’s containing directories. This can use fewer file watchers, but might be less accurate.","configuration.tsserver.watchOptions.watchDirectory":"Strategy for how entire directory trees are watched under systems that lack recursive file-watching functionality.","configuration.tsserver.watchOptions.watchDirectory.fixedPollingInterval":"Check every directory for changes several times a second at a fixed interval.","configuration.tsserver.watchOptions.watchDirectory.dynamicPriorityPolling":"Use a dynamic queue where less-frequently modified directories will be checked less often.","configuration.tsserver.watchOptions.watchDirectory.useFsEvents":"Attempt to use the operating system/file system’s native events for directory changes.","configuration.tsserver.watchOptions.fallbackPolling":"When using file system events, this option specifies the polling strategy that gets used when the system runs out of native file watchers and/or doesn’t support native file watchers.","configuration.tsserver.watchOptions.fallbackPolling.fixedPollingInterval":"Check every file for changes several times a second at a fixed interval.","configuration.tsserver.watchOptions.fallbackPolling.priorityPollingInterval":"Check every file for changes several times a second, but use heuristics to check certain types of files less frequently than others.","configuration.tsserver.watchOptions.fallbackPolling.dynamicPriorityPolling ":"Use a dynamic queue where less-frequently modified files will be checked less often.","configuration.tsserver.watchOptions.synchronousWatchDirectory":"Disable deferred watching on directories. Deferred watching is useful when lots of file changes might occur at once (e.g. a change in node_modules from running npm install), but you might want to disable it with this flag for some less-common setups.","typescript.preferences.renameShorthandProperties.deprecationMessage":"The setting 'typescript.preferences.renameShorthandProperties' has been deprecated in favor of 'typescript.preferences.useAliasesForRenames'","typescript.preferences.useAliasesForRenames":"Enable/disable introducing aliases for object shorthand properties during renames. Requires using TypeScript 3.4 or newer in the workspace.","typescript.workspaceSymbols.scope":"Controls which files are searched by [go to symbol in workspace](https://code.visualstudio.com/docs/editor/editingevolved#_open-symbol-by-name).","typescript.workspaceSymbols.scope.allOpenProjects":"Search all open JavaScript or TypeScript projects for symbols. Requires using TypeScript 3.9 or newer in the workspace.","typescript.workspaceSymbols.scope.currentProject":"Only search for symbols in the current JavaScript or TypeScript project.","codeActions.refactor.extract.constant.title":"Extract constant","codeActions.refactor.extract.constant.description":"Extract expression to constant.","codeActions.refactor.extract.function.title":"Extract function","codeActions.refactor.extract.function.description":"Extract expression to method or function.","codeActions.refactor.extract.type.title":"Extract type","codeActions.refactor.extract.type.description":"Extract type to a type alias.","codeActions.refactor.extract.interface.title":"Extract interface","codeActions.refactor.extract.interface.description":"Extract type to an interface.","codeActions.refactor.rewrite.import.title":"Convert import","codeActions.refactor.rewrite.import.description":"Convert between named imports and namespace imports.","codeActions.refactor.rewrite.export.title":"Convert export","codeActions.refactor.rewrite.export.description":"Convert between default export and named export.","codeActions.refactor.move.newFile.title":"Move to a new file","codeActions.refactor.move.newFile.description":"Move the expression to a new file.","codeActions.refactor.rewrite.arrow.braces.title":"Rewrite arrow braces","codeActions.refactor.rewrite.arrow.braces.description":"Add or remove braces in an arrow function.","codeActions.refactor.rewrite.parameters.toDestructured.title":"Convert parameters to destructured object","codeActions.refactor.rewrite.property.generateAccessors.title":"Generate accessors","codeActions.refactor.rewrite.property.generateAccessors.description":"Generate 'get' and 'set' accessors","codeActions.source.organizeImports.title":"Organize imports"},pkgNlsJSON:{},nlsList:[],extendConfig:{},webAssets:["package.json","dist/browser/typescript-web/cancellationToken.js","dist/browser/typescript-web/lib.d.ts","dist/browser/typescript-web/lib.dom.d.ts","dist/browser/typescript-web/lib.dom.iterable.d.ts","dist/browser/typescript-web/lib.es2015.collection.d.ts","dist/browser/typescript-web/lib.es2015.core.d.ts","dist/browser/typescript-web/lib.es2015.d.ts","dist/browser/typescript-web/lib.es2015.generator.d.ts","dist/browser/typescript-web/lib.es2015.iterable.d.ts","dist/browser/typescript-web/lib.es2015.promise.d.ts","dist/browser/typescript-web/lib.es2015.proxy.d.ts","dist/browser/typescript-web/lib.es2015.reflect.d.ts","dist/browser/typescript-web/lib.es2015.symbol.d.ts","dist/browser/typescript-web/lib.es2015.symbol.wellknown.d.ts","dist/browser/typescript-web/lib.es2016.array.include.d.ts","dist/browser/typescript-web/lib.es2016.d.ts","dist/browser/typescript-web/lib.es2016.full.d.ts","dist/browser/typescript-web/lib.es2017.d.ts","dist/browser/typescript-web/lib.es2017.full.d.ts","dist/browser/typescript-web/lib.es2017.intl.d.ts","dist/browser/typescript-web/lib.es2017.object.d.ts","dist/browser/typescript-web/lib.es2017.sharedmemory.d.ts","dist/browser/typescript-web/lib.es2017.string.d.ts","dist/browser/typescript-web/lib.es2017.typedarrays.d.ts","dist/browser/typescript-web/lib.es2018.asyncgenerator.d.ts","dist/browser/typescript-web/lib.es2018.asynciterable.d.ts","dist/browser/typescript-web/lib.es2018.d.ts","dist/browser/typescript-web/lib.es2018.full.d.ts","dist/browser/typescript-web/lib.es2018.intl.d.ts","dist/browser/typescript-web/lib.es2018.promise.d.ts","dist/browser/typescript-web/lib.es2018.regexp.d.ts","dist/browser/typescript-web/lib.es2019.array.d.ts","dist/browser/typescript-web/lib.es2019.d.ts","dist/browser/typescript-web/lib.es2019.full.d.ts","dist/browser/typescript-web/lib.es2019.object.d.ts","dist/browser/typescript-web/lib.es2019.string.d.ts","dist/browser/typescript-web/lib.es2019.symbol.d.ts","dist/browser/typescript-web/lib.es2020.bigint.d.ts","dist/browser/typescript-web/lib.es2020.d.ts","dist/browser/typescript-web/lib.es2020.full.d.ts","dist/browser/typescript-web/lib.es2020.intl.d.ts","dist/browser/typescript-web/lib.es2020.promise.d.ts","dist/browser/typescript-web/lib.es2020.sharedmemory.d.ts","dist/browser/typescript-web/lib.es2020.string.d.ts","dist/browser/typescript-web/lib.es2020.symbol.wellknown.d.ts","dist/browser/typescript-web/lib.es5.d.ts","dist/browser/typescript-web/lib.es6.d.ts","dist/browser/typescript-web/lib.esnext.d.ts","dist/browser/typescript-web/lib.esnext.full.d.ts","dist/browser/typescript-web/lib.esnext.intl.d.ts","dist/browser/typescript-web/lib.esnext.promise.d.ts","dist/browser/typescript-web/lib.esnext.string.d.ts","dist/browser/typescript-web/lib.esnext.weakref.d.ts","dist/browser/typescript-web/lib.scripthost.d.ts","dist/browser/typescript-web/lib.webworker.d.ts","dist/browser/typescript-web/lib.webworker.importscripts.d.ts","dist/browser/typescript-web/lib.webworker.iterable.d.ts","dist/browser/typescript-web/protocol.d.ts","dist/browser/typescript-web/tsc.js","dist/browser/typescript-web/tsserver.js","dist/browser/typescript-web/tsserver.web.js","dist/browser/typescript-web/tsserverlibrary.d.ts","dist/browser/typescript-web/tsserverlibrary.js","dist/browser/typescript-web/typesMap.json","dist/browser/typescript-web/typescript.d.ts","dist/browser/typescript-web/typescript.js","dist/browser/typescript-web/typescriptServices.d.ts","dist/browser/typescript-web/typescriptServices.js","dist/browser/typescript-web/typingsInstaller.js","dist/browser/typescript-web/watchGuard.js","README.md","icon.png","schemas/package.schema.json","https://json.schemastore.org/tsconfig","schemas/tsconfig.schema.json","https://json.schemastore.org/typings","https://json.schemastore.org/bowerrc","https://json.schemastore.org/babelrc","https://json.schemastore.org/jsconfig","schemas/jsconfig.schema.json","dist/browser/extension.js"],mode:"public"}},l78w:function(e,t,n){"use strict";e.exports={extension:{publisher:"alex-ext-public",name:"css-language-features-worker",version:"1.53.0-patch.1"},packageJSON:{name:"css-language-features-worker",publisher:"alex",version:"1.53.0-patch.1",displayName:"%displayName%",description:"%description%",icon:"icons/css.png",activationEvents:["onLanguage:css","onLanguage:less","onLanguage:scss","onCommand:_css.applyCodeAction"],kaitianContributes:{workerMain:"client/dist/browser/cssClientMain.js"},contributes:{configuration:[{order:22,id:"css",title:"%css.title%",properties:{"css.customData":{type:"array",markdownDescription:"%css.customData.desc%",default:[],items:{type:"string"},scope:"resource"},"css.completion.triggerPropertyValueCompletion":{type:"boolean",scope:"resource",default:!0,description:"%css.completion.triggerPropertyValueCompletion.desc%"},"css.completion.completePropertyWithSemicolon":{type:"boolean",scope:"resource",default:!0,description:"%css.completion.completePropertyWithSemicolon.desc%"},"css.validate":{type:"boolean",scope:"resource",default:!0,description:"%css.validate.desc%"},"css.lint.compatibleVendorPrefixes":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"ignore",description:"%css.lint.compatibleVendorPrefixes.desc%"},"css.lint.vendorPrefix":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"warning",description:"%css.lint.vendorPrefix.desc%"},"css.lint.duplicateProperties":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"ignore",description:"%css.lint.duplicateProperties.desc%"},"css.lint.emptyRules":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"warning",description:"%css.lint.emptyRules.desc%"},"css.lint.importStatement":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"ignore",description:"%css.lint.importStatement.desc%"},"css.lint.boxModel":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"ignore",markdownDescription:"%css.lint.boxModel.desc%"},"css.lint.universalSelector":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"ignore",markdownDescription:"%css.lint.universalSelector.desc%"},"css.lint.zeroUnits":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"ignore",description:"%css.lint.zeroUnits.desc%"},"css.lint.fontFaceProperties":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"warning",markdownDescription:"%css.lint.fontFaceProperties.desc%"},"css.lint.hexColorLength":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"error",description:"%css.lint.hexColorLength.desc%"},"css.lint.argumentsInColorFunction":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"error",description:"%css.lint.argumentsInColorFunction.desc%"},"css.lint.unknownProperties":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"warning",description:"%css.lint.unknownProperties.desc%"},"css.lint.validProperties":{type:"array",uniqueItems:!0,items:{type:"string"},scope:"resource",default:[],description:"%css.lint.validProperties.desc%"},"css.lint.ieHack":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"ignore",description:"%css.lint.ieHack.desc%"},"css.lint.unknownVendorSpecificProperties":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"ignore",description:"%css.lint.unknownVendorSpecificProperties.desc%"},"css.lint.propertyIgnoredDueToDisplay":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"warning",markdownDescription:"%css.lint.propertyIgnoredDueToDisplay.desc%"},"css.lint.important":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"ignore",markdownDescription:"%css.lint.important.desc%"},"css.lint.float":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"ignore",markdownDescription:"%css.lint.float.desc%"},"css.lint.idSelector":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"ignore",description:"%css.lint.idSelector.desc%"},"css.lint.unknownAtRules":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"warning",description:"%css.lint.unknownAtRules.desc%"},"css.trace.server":{type:"string",scope:"window",enum:["off","messages","verbose"],default:"off",description:"%css.trace.server.desc%"}}},{id:"scss",order:24,title:"%scss.title%",properties:{"scss.completion.triggerPropertyValueCompletion":{type:"boolean",scope:"resource",default:!0,description:"%scss.completion.triggerPropertyValueCompletion.desc%"},"scss.completion.completePropertyWithSemicolon":{type:"boolean",scope:"resource",default:!0,description:"%scss.completion.completePropertyWithSemicolon.desc%"},"scss.validate":{type:"boolean",scope:"resource",default:!0,description:"%scss.validate.desc%"},"scss.lint.compatibleVendorPrefixes":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"ignore",description:"%scss.lint.compatibleVendorPrefixes.desc%"},"scss.lint.vendorPrefix":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"warning",description:"%scss.lint.vendorPrefix.desc%"},"scss.lint.duplicateProperties":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"ignore",description:"%scss.lint.duplicateProperties.desc%"},"scss.lint.emptyRules":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"warning",description:"%scss.lint.emptyRules.desc%"},"scss.lint.importStatement":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"ignore",description:"%scss.lint.importStatement.desc%"},"scss.lint.boxModel":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"ignore",markdownDescription:"%scss.lint.boxModel.desc%"},"scss.lint.universalSelector":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"ignore",markdownDescription:"%scss.lint.universalSelector.desc%"},"scss.lint.zeroUnits":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"ignore",description:"%scss.lint.zeroUnits.desc%"},"scss.lint.fontFaceProperties":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"warning",markdownDescription:"%scss.lint.fontFaceProperties.desc%"},"scss.lint.hexColorLength":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"error",description:"%scss.lint.hexColorLength.desc%"},"scss.lint.argumentsInColorFunction":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"error",description:"%scss.lint.argumentsInColorFunction.desc%"},"scss.lint.unknownProperties":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"warning",description:"%scss.lint.unknownProperties.desc%"},"scss.lint.validProperties":{type:"array",uniqueItems:!0,items:{type:"string"},scope:"resource",default:[],description:"%scss.lint.validProperties.desc%"},"scss.lint.ieHack":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"ignore",description:"%scss.lint.ieHack.desc%"},"scss.lint.unknownVendorSpecificProperties":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"ignore",description:"%scss.lint.unknownVendorSpecificProperties.desc%"},"scss.lint.propertyIgnoredDueToDisplay":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"warning",markdownDescription:"%scss.lint.propertyIgnoredDueToDisplay.desc%"},"scss.lint.important":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"ignore",markdownDescription:"%scss.lint.important.desc%"},"scss.lint.float":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"ignore",markdownDescription:"%scss.lint.float.desc%"},"scss.lint.idSelector":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"ignore",description:"%scss.lint.idSelector.desc%"},"scss.lint.unknownAtRules":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"warning",description:"%scss.lint.unknownAtRules.desc%"}}},{id:"less",order:23,type:"object",title:"%less.title%",properties:{"less.completion.triggerPropertyValueCompletion":{type:"boolean",scope:"resource",default:!0,description:"%less.completion.triggerPropertyValueCompletion.desc%"},"less.completion.completePropertyWithSemicolon":{type:"boolean",scope:"resource",default:!0,description:"%less.completion.completePropertyWithSemicolon.desc%"},"less.validate":{type:"boolean",scope:"resource",default:!0,description:"%less.validate.desc%"},"less.lint.compatibleVendorPrefixes":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"ignore",description:"%less.lint.compatibleVendorPrefixes.desc%"},"less.lint.vendorPrefix":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"warning",description:"%less.lint.vendorPrefix.desc%"},"less.lint.duplicateProperties":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"ignore",description:"%less.lint.duplicateProperties.desc%"},"less.lint.emptyRules":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"warning",description:"%less.lint.emptyRules.desc%"},"less.lint.importStatement":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"ignore",description:"%less.lint.importStatement.desc%"},"less.lint.boxModel":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"ignore",markdownDescription:"%less.lint.boxModel.desc%"},"less.lint.universalSelector":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"ignore",markdownDescription:"%less.lint.universalSelector.desc%"},"less.lint.zeroUnits":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"ignore",description:"%less.lint.zeroUnits.desc%"},"less.lint.fontFaceProperties":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"warning",markdownDescription:"%less.lint.fontFaceProperties.desc%"},"less.lint.hexColorLength":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"error",description:"%less.lint.hexColorLength.desc%"},"less.lint.argumentsInColorFunction":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"error",description:"%less.lint.argumentsInColorFunction.desc%"},"less.lint.unknownProperties":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"warning",description:"%less.lint.unknownProperties.desc%"},"less.lint.validProperties":{type:"array",uniqueItems:!0,items:{type:"string"},scope:"resource",default:[],description:"%less.lint.validProperties.desc%"},"less.lint.ieHack":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"ignore",description:"%less.lint.ieHack.desc%"},"less.lint.unknownVendorSpecificProperties":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"ignore",description:"%less.lint.unknownVendorSpecificProperties.desc%"},"less.lint.propertyIgnoredDueToDisplay":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"warning",markdownDescription:"%less.lint.propertyIgnoredDueToDisplay.desc%"},"less.lint.important":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"ignore",markdownDescription:"%less.lint.important.desc%"},"less.lint.float":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"ignore",markdownDescription:"%less.lint.float.desc%"},"less.lint.idSelector":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"ignore",description:"%less.lint.idSelector.desc%"},"less.lint.unknownAtRules":{type:"string",scope:"resource",enum:["ignore","warning","error"],default:"warning",description:"%less.lint.unknownAtRules.desc%"}}}],configurationDefaults:{"[css]":{"editor.suggest.insertMode":"replace"},"[scss]":{"editor.suggest.insertMode":"replace"},"[less]":{"editor.suggest.insertMode":"replace"}},jsonValidation:[{fileMatch:"*.css-data.json",url:"https://raw.githubusercontent.com/microsoft/vscode-css-languageservice/master/docs/customData.schema.json"},{fileMatch:"package.json",url:"./schemas/package.schema.json"}],workerMain:"client/dist/browser/cssClientMain.js"},browser:"./client/dist/browser/cssClientMain"},defaultPkgNlsJSON:{displayName:"CSS Language Features",description:"Provides rich language support for CSS, LESS and SCSS files.","css.title":"CSS","css.customData.desc":"A list of relative file paths pointing to JSON files following the [custom data format](https://github.com/microsoft/vscode-css-languageservice/blob/master/docs/customData.md).\n\nVS Code loads custom data on startup to enhance its CSS support for the custom CSS properties, at directives, pseudo classes and pseudo elements you specify in the JSON files.\n\nThe file paths are relative to workspace and only workspace folder settings are considered.","css.completion.triggerPropertyValueCompletion.desc":"By default, VS Code triggers property value completion after selecting a CSS property. Use this setting to disable this behavior.","css.completion.completePropertyWithSemicolon.desc":"Insert semicolon at end of line when completing CSS properties","css.lint.argumentsInColorFunction.desc":"Invalid number of parameters.","css.lint.boxModel.desc":"Do not use `width` or `height` when using `padding` or `border`.","css.lint.compatibleVendorPrefixes.desc":"When using a vendor-specific prefix make sure to also include all other vendor-specific properties.","css.lint.duplicateProperties.desc":"Do not use duplicate style definitions.","css.lint.emptyRules.desc":"Do not use empty rulesets.","css.lint.float.desc":"Avoid using `float`. Floats lead to fragile CSS that is easy to break if one aspect of the layout changes.","css.lint.fontFaceProperties.desc":"`@font-face` rule must define `src` and `font-family` properties.","css.lint.hexColorLength.desc":"Hex colors must consist of three or six hex numbers.","css.lint.idSelector.desc":"Selectors should not contain IDs because these rules are too tightly coupled with the HTML.","css.lint.ieHack.desc":"IE hacks are only necessary when supporting IE7 and older.","css.lint.important.desc":"Avoid using `!important`. It is an indication that the specificity of the entire CSS has gotten out of control and needs to be refactored.","css.lint.importStatement.desc":"Import statements do not load in parallel.","css.lint.propertyIgnoredDueToDisplay.desc":"Property is ignored due to the display. E.g. with `display: inline`, the `width`, `height`, `margin-top`, `margin-bottom`, and `float` properties have no effect.","css.lint.universalSelector.desc":"The universal selector (`*`) is known to be slow.","css.lint.unknownAtRules.desc":"Unknown at-rule.","css.lint.unknownProperties.desc":"Unknown property.","css.lint.validProperties.desc":"A list of properties that are not validated against the `unknownProperties` rule.","css.lint.unknownVendorSpecificProperties.desc":"Unknown vendor specific property.","css.lint.vendorPrefix.desc":"When using a vendor-specific prefix, also include the standard property.","css.lint.zeroUnits.desc":"No unit for zero needed.","css.trace.server.desc":"Traces the communication between VS Code and the CSS language server.","css.validate.title":"Controls CSS validation and problem severities.","css.validate.desc":"Enables or disables all validations.","less.title":"LESS","less.completion.triggerPropertyValueCompletion.desc":"By default, VS Code triggers property value completion after selecting a CSS property. Use this setting to disable this behavior.","less.completion.completePropertyWithSemicolon.desc":"Insert semicolon at end of line when completing CSS properties","less.lint.argumentsInColorFunction.desc":"Invalid number of parameters.","less.lint.boxModel.desc":"Do not use `width` or `height` when using `padding` or `border`.","less.lint.compatibleVendorPrefixes.desc":"When using a vendor-specific prefix make sure to also include all other vendor-specific properties.","less.lint.duplicateProperties.desc":"Do not use duplicate style definitions.","less.lint.emptyRules.desc":"Do not use empty rulesets.","less.lint.float.desc":"Avoid using `float`. Floats lead to fragile CSS that is easy to break if one aspect of the layout changes.","less.lint.fontFaceProperties.desc":"`@font-face` rule must define `src` and `font-family` properties.","less.lint.hexColorLength.desc":"Hex colors must consist of three or six hex numbers.","less.lint.idSelector.desc":"Selectors should not contain IDs because these rules are too tightly coupled with the HTML.","less.lint.ieHack.desc":"IE hacks are only necessary when supporting IE7 and older.","less.lint.important.desc":"Avoid using `!important`. It is an indication that the specificity of the entire CSS has gotten out of control and needs to be refactored.","less.lint.importStatement.desc":"Import statements do not load in parallel.","less.lint.propertyIgnoredDueToDisplay.desc":"Property is ignored due to the display. E.g. with `display: inline`, the `width`, `height`, `margin-top`, `margin-bottom`, and `float` properties have no effect.","less.lint.universalSelector.desc":"The universal selector (`*`) is known to be slow.","less.lint.unknownAtRules.desc":"Unknown at-rule.","less.lint.unknownProperties.desc":"Unknown property.","less.lint.validProperties.desc":"A list of properties that are not validated against the `unknownProperties` rule.","less.lint.unknownVendorSpecificProperties.desc":"Unknown vendor specific property.","less.lint.vendorPrefix.desc":"When using a vendor-specific prefix, also include the standard property.","less.lint.zeroUnits.desc":"No unit for zero needed.","less.validate.title":"Controls LESS validation and problem severities.","less.validate.desc":"Enables or disables all validations.","scss.title":"SCSS (Sass)","scss.completion.triggerPropertyValueCompletion.desc":"By default, VS Code triggers property value completion after selecting a CSS property. Use this setting to disable this behavior.","scss.completion.completePropertyWithSemicolon.desc":"Insert semicolon at end of line when completing CSS properties","scss.lint.argumentsInColorFunction.desc":"Invalid number of parameters.","scss.lint.boxModel.desc":"Do not use `width` or `height` when using `padding` or `border`.","scss.lint.compatibleVendorPrefixes.desc":"When using a vendor-specific prefix make sure to also include all other vendor-specific properties.","scss.lint.duplicateProperties.desc":"Do not use duplicate style definitions.","scss.lint.emptyRules.desc":"Do not use empty rulesets.","scss.lint.float.desc":"Avoid using `float`. Floats lead to fragile CSS that is easy to break if one aspect of the layout changes.","scss.lint.fontFaceProperties.desc":"`@font-face` rule must define `src` and `font-family` properties.","scss.lint.hexColorLength.desc":"Hex colors must consist of three or six hex numbers.","scss.lint.idSelector.desc":"Selectors should not contain IDs because these rules are too tightly coupled with the HTML.","scss.lint.ieHack.desc":"IE hacks are only necessary when supporting IE7 and older.","scss.lint.important.desc":"Avoid using `!important`. It is an indication that the specificity of the entire CSS has gotten out of control and needs to be refactored.","scss.lint.importStatement.desc":"Import statements do not load in parallel.","scss.lint.propertyIgnoredDueToDisplay.desc":"Property is ignored due to the display. E.g. with `display: inline`, the `width`, `height`, `margin-top`, `margin-bottom`, and `float` properties have no effect.","scss.lint.universalSelector.desc":"The universal selector (`*`) is known to be slow.","scss.lint.unknownAtRules.desc":"Unknown at-rule.","scss.lint.unknownProperties.desc":"Unknown property.","scss.lint.validProperties.desc":"A list of properties that are not validated against the `unknownProperties` rule.","scss.lint.unknownVendorSpecificProperties.desc":"Unknown vendor specific property.","scss.lint.vendorPrefix.desc":"When using a vendor-specific prefix, also include the standard property.","scss.lint.zeroUnits.desc":"No unit for zero needed.","scss.validate.title":"Controls SCSS validation and problem severities.","scss.validate.desc":"Enables or disables all validations.","css.colorDecorators.enable.deprecationMessage":"The setting `css.colorDecorators.enable` has been deprecated in favor of `editor.colorDecorators`.","scss.colorDecorators.enable.deprecationMessage":"The setting `scss.colorDecorators.enable` has been deprecated in favor of `editor.colorDecorators`.","less.colorDecorators.enable.deprecationMessage":"The setting `less.colorDecorators.enable` has been deprecated in favor of `editor.colorDecorators`."},pkgNlsJSON:{},nlsList:[],extendConfig:{},webAssets:["package.json","server/dist/browser/cssServerMain.js","README.md","icons/css.png","https://raw.githubusercontent.com/microsoft/vscode-css-languageservice/master/docs/customData.schema.json","schemas/package.schema.json","client/dist/browser/cssClientMain.js"],mode:"public"}},lH0x:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=s(n("BvKs"));n("lUTK");var a=n("cDcd"),i=s(a);n("MN5C");var o=s(n("FRFo"));function s(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){var t=e.http_url,n=e.ssh_url,s=e.zip_url,l=e.tar_url,c=function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,t){var n=[],r=!0,a=!1,i=void 0;try{for(var o,s=e[Symbol.iterator]();!(r=(o=s.next()).done)&&(n.push(o.value),!t||n.length!==t);r=!0);}catch(e){a=!0,i=e}finally{try{!r&&s.return&&s.return()}finally{if(a)throw i}}return n}(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")}((0,a.useState)("HTTP"),2),d=c[0],u=c[1];return i.default.createElement("div",{className:"downMenu"},i.default.createElement("div",null,i.default.createElement(r.default,{className:"urlMenu",selectedKeys:[d],mode:"horizontal"},i.default.createElement(r.default.Item,{key:"HTTP",onClick:function(e){u(e.key)}},"HTTP"),n&&i.default.createElement(r.default.Item,{key:"SSH",onClick:function(e){u(e.key)}},"SSH")),i.default.createElement("div",{className:"gitAddressClone"},i.default.createElement("input",{type:"text",id:"copy_rep_content",value:"HTTP"===d?t:n}),i.default.createElement(o.default,{inputId:"copy_rep_content",className:"copytool"}))),i.default.createElement(r.default,{className:"edu-txt-center"},s&&i.default.createElement(r.default.Item,{style:{borderTop:"1px solid #eee"}},i.default.createElement("a",{href:s},"下载 ZIP")),l&&i.default.createElement(r.default.Item,null,i.default.createElement("a",{href:l},"下载 TAR.GZ"))))}},lr0e:function(e,t,n){},m50d:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=S(n("3S7+")),a=S(n("diRs")),i=S(n("CtXQ")),o=S(n("Sdc0")),s=S(n("kaz8")),l=S(n("9yH6")),c=S(n("14Xm")),d=function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,t){var n=[],r=!0,a=!1,i=void 0;try{for(var o,s=e[Symbol.iterator]();!(r=(o=s.next()).done)&&(n.push(o.value),!t||n.length!==t);r=!0);}catch(e){a=!0,i=e}finally{try{!r&&s.return&&s.return()}finally{if(a)throw i}}return n}(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")};n("5Dmo"),n("Q9mQ"),n("Pwec"),n("BoS7"),n("sRBo"),n("7Kak");var u=n("cDcd"),p=S(u),m=n("3ocl"),f=n("9XV7"),_=S(n("IxBv")),g=S(n("l78w")),h=S(n("kjft")),w=S(n("IEkG")),b=S(n("1xfW")),y=S(n("w9N6")),v=S(n("BePR")),k=n("sYIF"),x=S(n("BTkp")),E=n("j5x1"),T=S(E),j=n("O4Oc");function S(e){return e&&e.__esModule?e:{default:e}}function C(e){return function(){var t=e.apply(this,arguments);return new Promise((function(e,n){return function r(a,i){try{var o=t[a](i),s=o.value}catch(e){return void n(e)}if(!o.done)return Promise.resolve(s).then((function(e){r("next",e)}),(function(e){r("throw",e)}));e(s)}("next")}))}}t.default=function(e){var t,n=this,S=(t=C(c.default.mark((function e(t){var n;return c.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!(n=x.default.commands)){e.next=4;break}return e.next=4,n.executeCommand("ChangeThemePlugin.changeTheme",t?"opensumi-light":"opensumi-dark");case 4:case"end":return e.stop()}}),e,this)}))),function(e){return t.apply(this,arguments)}),P=e.download_url,q=e.params,O=q.owner,N=q.projectsId,R=q.branchName,D=e.filepath,M=function(){var e=(0,u.useState)(!0),t=d(e,2),n=t[0],r=t[1],a=(0,u.useState)(!1),i=d(a,2),o=i[0],s=i[1],l=(0,u.useState)("0"),c=d(l,2),p=c[0],m=c[1],f=(0,u.useState)(""),_=d(f,2);return{loading:n,setLoading:r,showIde:o,setShowIde:s,fileSize:p,setFileSize:m,fileName:_[0],setFileName:_[1]}}(),A=(M.fileSize,M.fileName),F=new Map,L=(0,f.useLocalStorageState)("code.file.operation.tip",!0),U=d(L,2),I=U[0],J=U[1],z=(0,u.useState)(0),W=d(z,2),B=(W[0],W[1]),Z=(0,u.useState)(0),Q=d(Z,2),H=(Q[0],Q[1]),V=(0,u.useState)("UTF-8"),K=d(V,2),Y=K[0],G=K[1],X=(0,u.useState)(""),$=d(X,2),ee=($[0],$[1]),te=(0,u.useMemo)((function(){}),[R,A]),ne=(0,u.useState)(!1),re=d(ne,2),ae=re[0],ie=re[1];(0,u.useEffect)((function(){ie(!1);var e=R+"-"+te,t=F.get(e);t&&(ee(t.fileString),B(t.lines),H(t.sloc))}),[te]);var oe,se,le=(0,u.useState)(!1),ce=d(le,2),de=(ce[0],ce[1]),ue=(0,u.useRef)(new T.default((function(){return de(!0)}),(function(e){return window.open("/"+O+"/"+N+"/commits/"+e)}))),pe=(oe=C(c.default.mark((function e(t){var r;return c.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(ie(t.target.checked),t.target.checked){e.next=6;break}ue.current.commands.executeCommand(E.ExtensionCommand.toggleBlame),e.next=10;break;case 6:return e.next=8,j.repoService.getCodeBlame(N,O,{sha:decodeURIComponent(R),filepath:D});case 8:r=e.sent,ue.current.commands.executeCommand(E.ExtensionCommand.toggleBlame,r);case 10:case"end":return e.stop()}}),e,n)}))),function(e){return oe.apply(this,arguments)}),me=(0,u.useState)(!1),fe=d(me,2),_e=fe[0],ge=fe[1],he=function(e){var t=e?"on":"off";localStorage.setItem("code.file.viewer.worlWrap",t),ue.current.setPerference("editor.wordWrap",t,!0),ge(e)},we=p.default.createElement(u.Fragment,null,p.default.createElement("div",{className:"flex align-center"},p.default.createElement("span",{className:"c-65"},"编码方式",":"),p.default.createElement("span",null,p.default.createElement(l.default.Group,{onChange:function(e){G(e.target.value)},value:Y,size:"small"},p.default.createElement(l.default,{value:"UTF-8"},"UTF-8"),p.default.createElement(l.default,{value:"GBK"},"GBK")))),p.default.createElement("div",{className:"flex align-center"},p.default.createElement("span",{className:"c-65"},"自动换行",":"),p.default.createElement("span",null,p.default.createElement(l.default.Group,{onChange:function(e){he(e.target.value)},value:_e,size:"small"},p.default.createElement(l.default,{value:!1},"不自动换行"),p.default.createElement(l.default,{value:!0},"自动换行")))));return p.default.createElement(u.Fragment,null,p.default.createElement("div",{className:"ide-tool-bar"},pe?p.default.createElement(s.default,{onChange:pe,checked:!!ae},"Blame"):null,p.default.createElement(o.default,{checkedChildren:"light",unCheckedChildren:"dark",defaultChecked:!0,onChange:S}),p.default.createElement(r.default,{title:"更改阅读设置",defaultVisible:I,onVisibleChange:J},p.default.createElement(a.default,{content:we,title:null,trigger:"click",placement:"bottomRight",arrowPointAtCenter:!0},p.default.createElement(i.default,{className:"read-more",type:"read"})))),p.default.createElement(m.EditorRenderer,{appConfig:{plugins:[x.default,ue.current],workspaceDir:O+"/"+N,defaultPreferences:{"general.theme":"opensumi-light","editor.forceReadOnly":!0,"editor.scrollBeyondLastLine":!1},extensionMetadata:[_.default,g.default,h.default,w.default,b.default,y.default,v.default]},runtimeConfig:{biz:"gitlink",scenario:null,startupEditor:"none",hideEditorTab:!0},editorConfig:{stretchHeight:!0,disableEditorSearch:!0},documentModel:{type:"code",ref:R,owner:O,name:N,filepath:D,readFile:(se=C(c.default.mark((function e(t){var r;return c.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t){e.next=2;break}return e.abrupt("return");case 2:return e.next=4,fetch((0,k.getUrl)()+"/attachments/entries/get_file?download_url="+P);case 4:return r=e.sent,setTimeout((function(){he("on"===localStorage.getItem("code.file.viewer.worlWrap"))}),5e3),e.abrupt("return",r.arrayBuffer());case 7:case"end":return e.stop()}}),e,n)}))),function(e){return se.apply(this,arguments)}),encoding:Y,onFilepathChange:function(e){},onLineNumberChange:function(e){}}}))}},mJXK:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=l(n("5rEg")),a=l(n("JsLm")),i=function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,t){var n=[],r=!0,a=!1,i=void 0;try{for(var o,s=e[Symbol.iterator]();!(r=(o=s.next()).done)&&(n.push(o.value),!t||n.length!==t);r=!0);}catch(e){a=!0,i=e}finally{try{!r&&s.return&&s.return()}finally{if(a)throw i}}return n}(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")};n("5NDa"),n("5GOC");var o=n("cDcd"),s=l(o);function l(e){return e&&e.__esModule?e:{default:e}}n("dEUZ");var c=a.default.Link;t.default=function(e){var t=e.menuList,n=(e.hash,(0,o.useState)("")),l=i(n,2),d=l[0],u=l[1],p=(0,o.useState)(""),m=i(p,2),f=m[0],_=m[1],g=(0,o.useState)(t),h=i(g,2),w=h[0],b=h[1];return s.default.createElement("div",null,s.default.createElement("div",{className:"searchBox"},s.default.createElement(r.default,{placeholder:"请输入关键字",value:f,onChange:function(e){if(_(e.target.value),e.target.value){var n=t.filter((function(t){return t.text.toLowerCase().indexOf(e.target.value.toLowerCase())>-1}));b(n)}else b(t)},prefix:s.default.createElement("i",{className:"iconfont icon-sousuo_icon1 font-14"})})),w&&w.length>0?s.default.createElement("div",{className:"anchorBox"},s.default.createElement(a.default,{affix:!1,onChange:function(e){u(e)},offsetTop:140},w.map((function(e,t){return s.default.createElement("div",{style:{paddingLeft:15*e.level+"px"},className:d===e.href?"items active":"items"},s.default.createElement(c,{href:""+e.href,title:e.text}))})))):"")}},tnhM:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getUser=t.getSubEntries=t.getHooks=t.getTag=t.getBranch=void 0;var r,a,i,o,s,l=d(n("14Xm")),c=d(n("vDqi"));function d(e){return e&&e.__esModule?e:{default:e}}function u(e){return function(){var t=e.apply(this,arguments);return new Promise((function(e,n){return function r(a,i){try{var o=t[a](i),s=o.value}catch(e){return void n(e)}if(!o.done)return Promise.resolve(s).then((function(e){r("next",e)}),(function(e){r("throw",e)}));e(s)}("next")}))}}t.getBranch=(r=u(l.default.mark((function e(t,n){var r;return l.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,c.default.get("/"+n+"/"+t+"/branches.json");case 2:return r=e.sent,e.abrupt("return",r&&r.data);case 4:case"end":return e.stop()}}),e,void 0)}))),function(e,t){return r.apply(this,arguments)}),t.getTag=(a=u(l.default.mark((function e(t,n){return l.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,c.default.get("/"+n+"/"+t+"/tags.json",{params:{only_name:!0}});case 2:return e.abrupt("return",e.sent.data.tags);case 3:case"end":return e.stop()}}),e,void 0)}))),function(e,t){return a.apply(this,arguments)}),t.getHooks=(i=u(l.default.mark((function e(t,n){return l.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,c.default.get("/projects/"+t+"/hooks.json",{params:n});case 2:return e.abrupt("return",e.sent.data);case 3:case"end":return e.stop()}}),e,void 0)}))),function(e,t){return i.apply(this,arguments)}),t.getSubEntries=(o=u(l.default.mark((function e(t,n,r){return l.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,c.default.get("/"+t+"/"+n+"/sub_entries.json",{params:r});case 2:return e.abrupt("return",e.sent.data);case 3:case"end":return e.stop()}}),e,void 0)}))),function(e,t,n){return o.apply(this,arguments)}),t.getUser=(s=u(l.default.mark((function e(t){return l.default.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,c.default.get("/users/"+t+"/hovercard.json");case 2:return e.abrupt("return",e.sent.data);case 3:case"end":return e.stop()}}),e,void 0)}))),function(e){return s.apply(this,arguments)})},w9N6:function(e,t,n){"use strict";e.exports={extension:{publisher:"alex-ext-public",name:"ide-dark-theme",version:"2.4.0"},packageJSON:{publisher:"kaitian",name:"ide-dark-theme",version:"2.4.0",displayName:"IDE UI Theme",description:"IDE UI Theme",contributes:{themes:[{id:"opensumi-dark",label:"OpenSumi Dark",uiTheme:"vs-dark",path:"./themes/dark/plus.json"},{id:"opensumi-light",label:"OpenSumi Light",uiTheme:"vs",path:"./themes/light/plus.json"}]}},pkgNlsJSON:{},nlsList:[],extendConfig:{},webAssets:[],mode:"public"}},yEiv:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.apiService=void 0;var r=n("kg56");t.apiService={get:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return(0,r.request)(e,{method:"GET",params:t},n)},post:function(e,t,n){var a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return(0,r.request)(e,{method:"POST",params:t,data:n},a)},put:function(e,t,n){var a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return(0,r.request)(e,{method:"PUT",params:t,data:n},a)},delete:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return(0,r.request)(e,{method:"DELETE",params:t},n)}}},z2sw:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=i(n("cDcd"));n("dEUZ");var a=i(n("FRFo"));function i(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){var t=e.code,n=e.className;return r.default.createElement("div",{className:n},r.default.createElement("span",{className:"font-16 color-ooo"},"邀请码"),r.default.createElement("div",null,r.default.createElement("input",{value:t,id:"devitecode",style:{width:"62px",border:"none",cursor:"default"},readOnly:!0}),r.default.createElement(a.default,{timeOut:!0,beforeText:r.default.createElement("p",{className:"edu-txt-center"},"可以通过邀请码邀请成员加入项目",r.default.createElement("br",null),"点击复制邀请码。"),className:"ml8 font-16",inputId:"devitecode"})))}},zAh6:function(e,t,n){"use strict";n.d(t,"a",(function(){return s}));var r=n("61SU"),a=n.n(r),i=n("i6bk");function o(e,t,n,r){var a=n-t;return(e/=r/2)<1?a/2*e*e*e+t:a/2*((e-=2)*e*e+2)+t}function s(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.getContainer,r=void 0===n?function(){return window}:n,s=t.callback,l=t.duration,c=void 0===l?450:l,d=r(),u=Object(i.a)(d,!0),p=Date.now(),m=function t(){var n=Date.now()-p,r=o(n>c?c:n,u,e,c);d===window?window.scrollTo(window.pageXOffset,r):d.scrollTop=r,n {\n * Create a new local account.\n */\n export const postSignup = async (req: Request, res: Response, next: NextFunction) => {\n- await check("email", "Email is not valid").isEmail().run(req);\n- await check("password", "Password must be at least 4 characters long").isLength({ min: 4 }).run(req);\n- await check("confirmPassword", "Passwords do not match").equals(req.body.password).run(req);\n- // eslint-disable-next-line @typescript-eslint/camelcase\n- await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n-\n- const errors = validationResult(req);\n-\n- if (!errors.isEmpty()) {\n- req.flash("errors", errors.array());\n- return res.redirect("/signup");\n+ await check("email", "Email is not valid").isEmail().run(req);\n+ await check("password", "Password must be at least 4 characters long").isLength({ min: 4 }).run(req);\n+ await check("confirmPassword", "Passwords do not match").equals(req.body.password).run(req);\n+ // eslint-disable-next-line @typescript-eslint/camelcase\n+ await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n+\n+ const errors = validationResult(req);\n+\n+ if (!errors.isEmpty()) {\n+ req.flash("errors", errors.array());\n+ return res.redirect("/signup");\n+ }\n+\n+ const user = new User({\n+ email: req.body.email,\n+ password: req.body.password\n+ });\n+\n+ User.findOne({ email: req.body.email }, (err, existingUser) => {\n+ if (err) { return next(err); }\n+ if (existingUser) {\n+ req.flash("errors", { msg: "Account with that email address already exists." });\n+ return res.redirect("/signup");\n }\n',id:1088,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},line_code:"c17950853d6b9677e9822cf07f2616db7ca02797_94_101",line_type:"old",note:"111",noteable_id:1644,noteable_type:"ReviewComment",outdated:!1,path:"src/controllers/user.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:17641,del_line_num:265,deleted_file:!1,diff:'@@ -80,40 +80,40 @@ export const getSignup = (req: Request, res: Response) => {\n * Create a new local account.\n */\n export const postSignup = async (req: Request, res: Response, next: NextFunction) => {\n- await check("email", "Email is not valid").isEmail().run(req);\n- await check("password", "Password must be at least 4 characters long").isLength({ min: 4 }).run(req);\n- await check("confirmPassword", "Passwords do not match").equals(req.body.password).run(req);\n- // eslint-disable-next-line @typescript-eslint/camelcase\n- await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n-\n- const errors = validationResult(req);\n-\n- if (!errors.isEmpty()) {\n- req.flash("errors", errors.array());\n- return res.redirect("/signup");\n+ await check("email", "Email is not valid").isEmail().run(req);\n+ await check("password", "Password must be at least 4 characters long").isLength({ min: 4 }).run(req);\n+ await check("confirmPassword", "Passwords do not match").equals(req.body.password).run(req);\n+ // eslint-disable-next-line @typescript-eslint/camelcase\n+ await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n+\n+ const errors = validationResult(req);\n+\n+ if (!errors.isEmpty()) {\n+ req.flash("errors", errors.array());\n+ return res.redirect("/signup");\n+ }\n+\n+ const user = new User({\n+ email: req.body.email,\n+ password: req.body.password\n+ });\n+\n+ User.findOne({ email: req.body.email }, (err, existingUser) => {\n+ if (err) { return next(err); }\n+ if (existingUser) {\n+ req.flash("errors", { msg: "Account with that email address already exists." });\n+ return res.redirect("/signup");\n }\n',id:47,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"}],updated_at:"2020-09-09T14:21:12+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"liuya.zmn@test.com",extern_uid:"208698",id:14920,name:"六牙",state:"active",username:"liuya.zmn",web_url:"https://test.com.com/nwpipe/u/208698"},body:null,created_at:"2020-09-09T14:21:25+08:00",id:1645,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"liuya.zmn@test.com",extern_uid:"208698",id:14920,name:"六牙",state:"active",username:"liuya.zmn",web_url:"https://test.com.com/nwpipe/u/208698"},commit_id:null,created_at:"2020-09-09T14:21:26+0800",discussion_id:null,id:64,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:265,deleted_file:!1,diff:'@@ -80,40 +80,40 @@ export const getSignup = (req: Request, res: Response) => {\n * Create a new local account.\n */\n export const postSignup = async (req: Request, res: Response, next: NextFunction) => {\n- await check("email", "Email is not valid").isEmail().run(req);\n- await check("password", "Password must be at least 4 characters long").isLength({ min: 4 }).run(req);\n- await check("confirmPassword", "Passwords do not match").equals(req.body.password).run(req);\n- // eslint-disable-next-line @typescript-eslint/camelcase\n- await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n-\n- const errors = validationResult(req);\n-\n- if (!errors.isEmpty()) {\n- req.flash("errors", errors.array());\n- return res.redirect("/signup");\n+ await check("email", "Email is not valid").isEmail().run(req);\n+ await check("password", "Password must be at least 4 characters long").isLength({ min: 4 }).run(req);\n+ await check("confirmPassword", "Passwords do not match").equals(req.body.password).run(req);\n+ // eslint-disable-next-line @typescript-eslint/camelcase\n+ await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n+\n+ const errors = validationResult(req);\n+\n+ if (!errors.isEmpty()) {\n+ req.flash("errors", errors.array());\n+ return res.redirect("/signup");\n+ }\n+\n+ const user = new User({\n+ email: req.body.email,\n+ password: req.body.password\n+ });\n+\n+ User.findOne({ email: req.body.email }, (err, existingUser) => {\n+ if (err) { return next(err); }\n+ if (existingUser) {\n+ req.flash("errors", { msg: "Account with that email address already exists." });\n+ return res.redirect("/signup");\n }\n',id:1088,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},line_code:"c17950853d6b9677e9822cf07f2616db7ca02797_94_92",line_type:"old",note:"222",noteable_id:1645,noteable_type:"ReviewComment",outdated:!1,path:"src/controllers/user.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:17641,del_line_num:265,deleted_file:!1,diff:'@@ -80,40 +80,40 @@ export const getSignup = (req: Request, res: Response) => {\n * Create a new local account.\n */\n export const postSignup = async (req: Request, res: Response, next: NextFunction) => {\n- await check("email", "Email is not valid").isEmail().run(req);\n- await check("password", "Password must be at least 4 characters long").isLength({ min: 4 }).run(req);\n- await check("confirmPassword", "Passwords do not match").equals(req.body.password).run(req);\n- // eslint-disable-next-line @typescript-eslint/camelcase\n- await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n-\n- const errors = validationResult(req);\n-\n- if (!errors.isEmpty()) {\n- req.flash("errors", errors.array());\n- return res.redirect("/signup");\n+ await check("email", "Email is not valid").isEmail().run(req);\n+ await check("password", "Password must be at least 4 characters long").isLength({ min: 4 }).run(req);\n+ await check("confirmPassword", "Passwords do not match").equals(req.body.password).run(req);\n+ // eslint-disable-next-line @typescript-eslint/camelcase\n+ await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n+\n+ const errors = validationResult(req);\n+\n+ if (!errors.isEmpty()) {\n+ req.flash("errors", errors.array());\n+ return res.redirect("/signup");\n+ }\n+\n+ const user = new User({\n+ email: req.body.email,\n+ password: req.body.password\n+ });\n+\n+ User.findOne({ email: req.body.email }, (err, existingUser) => {\n+ if (err) { return next(err); }\n+ if (existingUser) {\n+ req.flash("errors", { msg: "Account with that email address already exists." });\n+ return res.redirect("/signup");\n }\n',id:47,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"}],updated_at:"2020-09-09T14:21:41+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"taian.lta@test.com",extern_uid:"146194",id:15165,name:"伊北",state:"active",username:"taian.lta",web_url:"https://test.com.com/nwpipe/u/146194"},body:null,created_at:"2020-08-06T11:35:40+08:00",id:1483,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"taian.lta@test.com",extern_uid:"146194",id:15165,name:"伊北",state:"active",username:"taian.lta",web_url:"https://test.com.com/nwpipe/u/146194"},commit_id:null,created_at:"2020-08-11T16:36:49+0800",discussion_id:null,id:8,is_award:!1,labels:[],latest_st_diff:{a_mode:"0",add_line_num:228,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:0,deleted_file:!1,diff:'@@ -0,0 +1,228 @@\n+import { PullRequestChange } from \'../../../submodules/api-server/app/web/module/common/model/antcode\';\n+\n+export const mockChanges: PullRequestChange[] = [\n+ {\n+ "a_mode": "100644",\n+ "add_line_num": 3,\n+ "b_mode": "100644",\n+ "binary_file": false,\n+ "del_line_num": 0,\n+ "deleted_file": false,\n+ "id": 139517,\n+ "mark_as_read": false,\n+ "new_file": false,\n+ "new_path": "app/web/locales/en-us/codeReview.ts",\n+ "old_path": "app/web/locales/en-us/codeReview.ts",\n+ "renamed_file": false,\n+ "too_large": false,\n+ "updated_after_read": false\n+ },\n+ {\n+ "a_mode": "100644",\n+ "add_line_num": 3,\n+ "b_mode": "100644",\n+ "binary_file": false,\n+ "del_line_num": 0,\n+ "deleted_file": false,\n+ "id": 139518,\n+ "mark_as_read": false,\n+ "new_file": false,\n+ "new_path": "app/web/locales/zh-cn/codeReview.ts",\n+ "old_path": "app/web/locales/zh-cn/codeReview.ts",\n+ "renamed_file": false,\n+ "too_large": false,\n+ "updated_after_read": false\n+ },\n+ {\n+ "a_mode": "100644",\n+ "add_line_num": 2,\n+ "b_mode": "100644",\n+ "binary_file": false,\n+ "del_line_num": 6,\n+ "deleted_file": false,\n+ "id": 139519,\n+ "mark_as_read": false,\n+ "new_file": false,\n+ "new_path": "app/web/module/browser/index.ts",\n+ "old_path": "app/web/module/browser/index.ts",\n+ "renamed_file": false,\n+ "too_large": false,\n+ "updated_after_read": false\n+ },\n+ {\n+ "a_mode": "0",\n+ "add_line_num": 298,\n+ "b_mode": "100644",\n+ "binary_file": false,\n',id:1077,new_file:!0,new_path:"a.ts",old_path:"a.ts",renamed_file:!1,too_large:!1},line_code:"02699cd6ca65aa6819d7e387678d8ea5359b5e59_0_56",line_type:"new",note:"123123123",noteable_id:1483,noteable_type:"ReviewComment",outdated:!1,path:"a.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"0",add_line_num:228,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:15929,del_line_num:0,deleted_file:!1,diff:'@@ -0,0 +1,228 @@\n+import { PullRequestChange } from \'../../../submodules/api-server/app/web/module/common/model/antcode\';\n+\n+export const mockChanges: PullRequestChange[] = [\n+ {\n+ "a_mode": "100644",\n+ "add_line_num": 3,\n+ "b_mode": "100644",\n+ "binary_file": false,\n+ "del_line_num": 0,\n+ "deleted_file": false,\n+ "id": 139517,\n+ "mark_as_read": false,\n+ "new_file": false,\n+ "new_path": "app/web/locales/en-us/codeReview.ts",\n+ "old_path": "app/web/locales/en-us/codeReview.ts",\n+ "renamed_file": false,\n+ "too_large": false,\n+ "updated_after_read": false\n+ },\n+ {\n+ "a_mode": "100644",\n+ "add_line_num": 3,\n+ "b_mode": "100644",\n+ "binary_file": false,\n+ "del_line_num": 0,\n+ "deleted_file": false,\n+ "id": 139518,\n+ "mark_as_read": false,\n+ "new_file": false,\n+ "new_path": "app/web/locales/zh-cn/codeReview.ts",\n+ "old_path": "app/web/locales/zh-cn/codeReview.ts",\n+ "renamed_file": false,\n+ "too_large": false,\n+ "updated_after_read": false\n+ },\n+ {\n+ "a_mode": "100644",\n+ "add_line_num": 2,\n+ "b_mode": "100644",\n+ "binary_file": false,\n+ "del_line_num": 6,\n+ "deleted_file": false,\n+ "id": 139519,\n+ "mark_as_read": false,\n+ "new_file": false,\n+ "new_path": "app/web/module/browser/index.ts",\n+ "old_path": "app/web/module/browser/index.ts",\n+ "renamed_file": false,\n+ "too_large": false,\n+ "updated_after_read": false\n+ },\n+ {\n+ "a_mode": "0",\n+ "add_line_num": 298,\n+ "b_mode": "100644",\n+ "binary_file": false,\n',id:43,new_file:!0,new_path:"a.ts",old_path:"a.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"}],updated_at:"2020-08-11T16:36:53+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"taian.lta@test.com",extern_uid:"146194",id:15165,name:"伊北",state:"active",username:"taian.lta",web_url:"https://test.com.com/nwpipe/u/146194"},body:null,created_at:"2020-08-11T16:36:54+08:00",id:1530,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"taian.lta@test.com",extern_uid:"146194",id:15165,name:"伊北",state:"active",username:"taian.lta",web_url:"https://test.com.com/nwpipe/u/146194"},commit_id:null,created_at:"2020-08-11T20:56:08+0800",discussion_id:null,id:9,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:265,deleted_file:!1,diff:'@@ -27,30 +27,30 @@ export const getLogin = (req: Request, res: Response) => {\n * Sign in using email and password.\n */\n export const postLogin = async (req: Request, res: Response, next: NextFunction) => {\n- await check("email", "Email is not valid").isEmail().run(req);\n- await check("password", "Password cannot be blank").isLength({min: 1}).run(req);\n- // eslint-disable-next-line @typescript-eslint/camelcase\n- await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n-\n- const errors = validationResult(req);\n-\n- if (!errors.isEmpty()) {\n- req.flash("errors", errors.array());\n- return res.redirect("/login");\n+ await check("email", "Email is not valid").isEmail().run(req);\n+ await check("password", "Password cannot be blank").isLength({ min: 1 }).run(req);\n+ // eslint-disable-next-line @typescript-eslint/camelcase\n+ await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n+\n+ const errors = validationResult(req);\n+\n+ if (!errors.isEmpty()) {\n+ req.flash("errors", errors.array());\n+ return res.redirect("/login");\n+ }\n+\n+ passport.authenticate("local", (err: Error, user: UserDocument, info: IVerifyOptions) => {\n+ if (err) { return next(err); }\n+ if (!user) {\n+ req.flash("errors", { msg: info.message });\n+ return res.redirect("/login");\n }\n-\n- passport.authenticate("local", (err: Error, user: UserDocument, info: IVerifyOptions) => {\n- if (err) { return next(err); }\n- if (!user) {\n- req.flash("errors", {msg: info.message});\n- return res.redirect("/login");\n- }\n- req.logIn(user, (err) => {\n- if (err) { return next(err); }\n- req.flash("success", { msg: "Success! You are logged in." });\n- res.redirect(req.session.returnTo || "/");\n- });\n- })(req, res, next);\n+ req.logIn(user, (err) => {\n',id:1088,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},line_code:"c17950853d6b9677e9822cf07f2616db7ca02797_49_48",line_type:"old",note:"@taian.lta(伊北) 测试一下咔咔咔咔咔咔",noteable_id:1530,noteable_type:"ReviewComment",outdated:!1,path:"src/controllers/user.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:15929,del_line_num:265,deleted_file:!1,diff:'@@ -27,30 +27,30 @@ export const getLogin = (req: Request, res: Response) => {\n * Sign in using email and password.\n */\n export const postLogin = async (req: Request, res: Response, next: NextFunction) => {\n- await check("email", "Email is not valid").isEmail().run(req);\n- await check("password", "Password cannot be blank").isLength({min: 1}).run(req);\n- // eslint-disable-next-line @typescript-eslint/camelcase\n- await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n-\n- const errors = validationResult(req);\n-\n- if (!errors.isEmpty()) {\n- req.flash("errors", errors.array());\n- return res.redirect("/login");\n+ await check("email", "Email is not valid").isEmail().run(req);\n+ await check("password", "Password cannot be blank").isLength({ min: 1 }).run(req);\n+ // eslint-disable-next-line @typescript-eslint/camelcase\n+ await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n+\n+ const errors = validationResult(req);\n+\n+ if (!errors.isEmpty()) {\n+ req.flash("errors", errors.array());\n+ return res.redirect("/login");\n+ }\n+\n+ passport.authenticate("local", (err: Error, user: UserDocument, info: IVerifyOptions) => {\n+ if (err) { return next(err); }\n+ if (!user) {\n+ req.flash("errors", { msg: info.message });\n+ return res.redirect("/login");\n }\n-\n- passport.authenticate("local", (err: Error, user: UserDocument, info: IVerifyOptions) => {\n- if (err) { return next(err); }\n- if (!user) {\n- req.flash("errors", {msg: info.message});\n- return res.redirect("/login");\n- }\n- req.logIn(user, (err) => {\n- if (err) { return next(err); }\n- req.flash("success", { msg: "Success! You are logged in." });\n- res.redirect(req.session.returnTo || "/");\n- });\n- })(req, res, next);\n+ req.logIn(user, (err) => {\n',id:45,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"}],updated_at:"2020-08-11T20:56:31+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"taian.lta@test.com",extern_uid:"146194",id:15165,name:"伊北",state:"active",username:"taian.lta",web_url:"https://test.com.com/nwpipe/u/146194"},body:null,created_at:"2020-08-11T20:56:32+08:00",id:1537,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"taian.lta@test.com",extern_uid:"146194",id:15165,name:"伊北",state:"active",username:"taian.lta",web_url:"https://test.com.com/nwpipe/u/146194"},commit_id:null,created_at:"2020-08-13T15:13:13+0800",discussion_id:null,id:12,is_award:!1,labels:[],latest_st_diff:{a_mode:"0",add_line_num:228,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:0,deleted_file:!1,diff:'@@ -0,0 +1,228 @@\n+import { PullRequestChange } from \'../../../submodules/api-server/app/web/module/common/model/antcode\';\n+\n+export const mockChanges: PullRequestChange[] = [\n+ {\n+ "a_mode": "100644",\n+ "add_line_num": 3,\n+ "b_mode": "100644",\n+ "binary_file": false,\n+ "del_line_num": 0,\n+ "deleted_file": false,\n+ "id": 139517,\n+ "mark_as_read": false,\n+ "new_file": false,\n+ "new_path": "app/web/locales/en-us/codeReview.ts",\n+ "old_path": "app/web/locales/en-us/codeReview.ts",\n+ "renamed_file": false,\n+ "too_large": false,\n+ "updated_after_read": false\n+ },\n+ {\n+ "a_mode": "100644",\n+ "add_line_num": 3,\n+ "b_mode": "100644",\n+ "binary_file": false,\n+ "del_line_num": 0,\n+ "deleted_file": false,\n+ "id": 139518,\n+ "mark_as_read": false,\n+ "new_file": false,\n+ "new_path": "app/web/locales/zh-cn/codeReview.ts",\n+ "old_path": "app/web/locales/zh-cn/codeReview.ts",\n+ "renamed_file": false,\n+ "too_large": false,\n+ "updated_after_read": false\n+ },\n+ {\n+ "a_mode": "100644",\n+ "add_line_num": 2,\n+ "b_mode": "100644",\n+ "binary_file": false,\n+ "del_line_num": 6,\n+ "deleted_file": false,\n+ "id": 139519,\n+ "mark_as_read": false,\n+ "new_file": false,\n+ "new_path": "app/web/module/browser/index.ts",\n+ "old_path": "app/web/module/browser/index.ts",\n+ "renamed_file": false,\n+ "too_large": false,\n+ "updated_after_read": false\n+ },\n+ {\n+ "a_mode": "0",\n+ "add_line_num": 298,\n+ "b_mode": "100644",\n+ "binary_file": false,\n+ "del_line_num": 0,\n+ "deleted_file": false,\n+ "id": 139520,\n+ "mark_as_read": false,\n+ "new_file": true,\n+ "new_path": "app/web/module/code-review/browser/code-fold.contribution.tsx",\n+ "old_path": "app/web/module/code-review/browser/code-fold.contribution.tsx",\n+ "renamed_file": false,\n+ "too_large": false,\n+ "updated_after_read": false\n+ },\n+ {\n+ "a_mode": "100644",\n+ "add_line_num": 47,\n+ "b_mode": "100644",\n+ "binary_file": false,\n+ "del_line_num": 0,\n+ "deleted_file": false,\n+ "id": 139521,\n+ "mark_as_read": false,\n+ "new_file": false,\n+ "new_path": "app/web/module/code-review/browser/comment-common.service.ts",\n+ "old_path": "app/web/module/code-review/browser/comment-common.service.ts",\n+ "renamed_file": false,\n+ "too_large": false,\n+ "updated_after_read": false\n+ },\n+ {\n+ "a_mode": "100644",\n+ "add_line_num": 15,\n+ "b_mode": "100644",\n+ "binary_file": false,\n+ "del_line_num": 16,\n+ "deleted_file": false,\n+ "id": 139522,\n+ "mark_as_read": false,\n+ "new_file": false,\n+ "new_path": "app/web/module/code-review/browser/comment-write.contribution.ts",\n+ "old_path": "app/web/module/code-review/browser/comment-write.contribution.ts",\n',id:1077,new_file:!0,new_path:"a.ts",old_path:"a.ts",renamed_file:!1,too_large:!1},line_code:"02699cd6ca65aa6819d7e387678d8ea5359b5e59_0_95",line_type:"new",note:"123",noteable_id:1537,noteable_type:"ReviewComment",outdated:!1,path:"a.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"0",add_line_num:228,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:15929,del_line_num:0,deleted_file:!1,diff:'@@ -0,0 +1,228 @@\n+import { PullRequestChange } from \'../../../submodules/api-server/app/web/module/common/model/antcode\';\n+\n+export const mockChanges: PullRequestChange[] = [\n+ {\n+ "a_mode": "100644",\n+ "add_line_num": 3,\n+ "b_mode": "100644",\n+ "binary_file": false,\n+ "del_line_num": 0,\n+ "deleted_file": false,\n+ "id": 139517,\n+ "mark_as_read": false,\n+ "new_file": false,\n+ "new_path": "app/web/locales/en-us/codeReview.ts",\n+ "old_path": "app/web/locales/en-us/codeReview.ts",\n+ "renamed_file": false,\n+ "too_large": false,\n+ "updated_after_read": false\n+ },\n+ {\n+ "a_mode": "100644",\n+ "add_line_num": 3,\n+ "b_mode": "100644",\n+ "binary_file": false,\n+ "del_line_num": 0,\n+ "deleted_file": false,\n+ "id": 139518,\n+ "mark_as_read": false,\n+ "new_file": false,\n+ "new_path": "app/web/locales/zh-cn/codeReview.ts",\n+ "old_path": "app/web/locales/zh-cn/codeReview.ts",\n+ "renamed_file": false,\n+ "too_large": false,\n+ "updated_after_read": false\n+ },\n+ {\n+ "a_mode": "100644",\n+ "add_line_num": 2,\n+ "b_mode": "100644",\n+ "binary_file": false,\n+ "del_line_num": 6,\n+ "deleted_file": false,\n+ "id": 139519,\n+ "mark_as_read": false,\n+ "new_file": false,\n+ "new_path": "app/web/module/browser/index.ts",\n+ "old_path": "app/web/module/browser/index.ts",\n+ "renamed_file": false,\n+ "too_large": false,\n+ "updated_after_read": false\n+ },\n+ {\n+ "a_mode": "0",\n+ "add_line_num": 298,\n+ "b_mode": "100644",\n+ "binary_file": false,\n+ "del_line_num": 0,\n+ "deleted_file": false,\n+ "id": 139520,\n+ "mark_as_read": false,\n+ "new_file": true,\n+ "new_path": "app/web/module/code-review/browser/code-fold.contribution.tsx",\n+ "old_path": "app/web/module/code-review/browser/code-fold.contribution.tsx",\n+ "renamed_file": false,\n+ "too_large": false,\n+ "updated_after_read": false\n+ },\n+ {\n+ "a_mode": "100644",\n+ "add_line_num": 47,\n+ "b_mode": "100644",\n+ "binary_file": false,\n+ "del_line_num": 0,\n+ "deleted_file": false,\n+ "id": 139521,\n+ "mark_as_read": false,\n+ "new_file": false,\n+ "new_path": "app/web/module/code-review/browser/comment-common.service.ts",\n+ "old_path": "app/web/module/code-review/browser/comment-common.service.ts",\n+ "renamed_file": false,\n+ "too_large": false,\n+ "updated_after_read": false\n+ },\n+ {\n+ "a_mode": "100644",\n+ "add_line_num": 15,\n+ "b_mode": "100644",\n+ "binary_file": false,\n+ "del_line_num": 16,\n+ "deleted_file": false,\n+ "id": 139522,\n+ "mark_as_read": false,\n+ "new_file": false,\n+ "new_path": "app/web/module/code-review/browser/comment-write.contribution.ts",\n+ "old_path": "app/web/module/code-review/browser/comment-write.contribution.ts",\n',id:43,new_file:!0,new_path:"a.ts",old_path:"a.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"taian.lta@test.com",extern_uid:"146194",id:15165,name:"伊北",state:"active",username:"taian.lta",web_url:"https://test.com.com/nwpipe/u/146194"},commit_id:null,created_at:"2020-08-13T15:11:06+0800",discussion_id:null,id:11,is_award:!1,labels:["中间件规约"],latest_st_diff:{a_mode:"0",add_line_num:228,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:0,deleted_file:!1,diff:'@@ -0,0 +1,228 @@\n+import { PullRequestChange } from \'../../../submodules/api-server/app/web/module/common/model/antcode\';\n+\n+export const mockChanges: PullRequestChange[] = [\n+ {\n+ "a_mode": "100644",\n+ "add_line_num": 3,\n+ "b_mode": "100644",\n+ "binary_file": false,\n+ "del_line_num": 0,\n',id:1077,new_file:!0,new_path:"a.ts",old_path:"a.ts",renamed_file:!1,too_large:!1},line_code:"02699cd6ca65aa6819d7e387678d8ea5359b5e59_0_9",line_type:"new",note:"123123",noteable_id:1537,noteable_type:"ReviewComment",outdated:!1,path:"a.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"0",add_line_num:228,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:15929,del_line_num:0,deleted_file:!1,diff:'@@ -0,0 +1,228 @@\n+import { PullRequestChange } from \'../../../submodules/api-server/app/web/module/common/model/antcode\';\n+\n+export const mockChanges: PullRequestChange[] = [\n+ {\n+ "a_mode": "100644",\n+ "add_line_num": 3,\n+ "b_mode": "100644",\n+ "binary_file": false,\n+ "del_line_num": 0,\n',id:43,new_file:!0,new_path:"a.ts",old_path:"a.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"}],updated_at:"2020-08-18T10:24:50+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"taian.lta@test.com",extern_uid:"146194",id:15165,name:"伊北",state:"active",username:"taian.lta",web_url:"https://test.com.com/nwpipe/u/146194"},body:null,created_at:"2020-09-03T22:18:43+08:00",id:1629,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"taian.lta@test.com",extern_uid:"146194",id:15165,name:"伊北",state:"active",username:"taian.lta",web_url:"https://test.com.com/nwpipe/u/146194"},commit_id:null,created_at:"2020-09-03T22:18:43+0800",discussion_id:13,id:36,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:null,note:"测试一条评论看看能不能生效呢",noteable_id:1629,noteable_type:"ReviewComment",outdated:!1,path:null,resolved_at:null,resolved_by:null,st_diff:null,state:null,system:!1,type:"Comment",updated_at:"2020-09-03T22:18:43+0800"}],updated_at:"2020-09-03T22:18:48+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"taian.lta@test.com",extern_uid:"146194",id:15165,name:"伊北",state:"active",username:"taian.lta",web_url:"https://test.com.com/nwpipe/u/146194"},body:null,created_at:"2020-09-04T10:52:12+08:00",id:1630,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"taian.lta@test.com",extern_uid:"146194",id:15165,name:"伊北",state:"active",username:"taian.lta",web_url:"https://test.com.com/nwpipe/u/146194"},commit_id:null,created_at:"2020-09-04T16:20:22+0800",discussion_id:null,id:38,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:265,deleted_file:!1,diff:'@@ -27,30 +27,30 @@ export const getLogin = (req: Request, res: Response) => {\n * Sign in using email and password.\n */\n export const postLogin = async (req: Request, res: Response, next: NextFunction) => {\n- await check("email", "Email is not valid").isEmail().run(req);\n- await check("password", "Password cannot be blank").isLength({min: 1}).run(req);\n- // eslint-disable-next-line @typescript-eslint/camelcase\n- await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n-\n- const errors = validationResult(req);\n-\n- if (!errors.isEmpty()) {\n- req.flash("errors", errors.array());\n- return res.redirect("/login");\n+ await check("email", "Email is not valid").isEmail().run(req);\n+ await check("password", "Password cannot be blank").isLength({ min: 1 }).run(req);\n+ // eslint-disable-next-line @typescript-eslint/camelcase\n+ await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n+\n+ const errors = validationResult(req);\n+\n+ if (!errors.isEmpty()) {\n+ req.flash("errors", errors.array());\n+ return res.redirect("/login");\n+ }\n+\n+ passport.authenticate("local", (err: Error, user: UserDocument, info: IVerifyOptions) => {\n+ if (err) { return next(err); }\n+ if (!user) {\n+ req.flash("errors", { msg: info.message });\n+ return res.redirect("/login");\n }\n',id:1088,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},line_code:"c17950853d6b9677e9822cf07f2616db7ca02797_40_37",line_type:"old",note:"测试",noteable_id:1630,noteable_type:"ReviewComment",outdated:!1,path:"src/controllers/user.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:17174,del_line_num:265,deleted_file:!1,diff:'@@ -27,30 +27,30 @@ export const getLogin = (req: Request, res: Response) => {\n * Sign in using email and password.\n */\n export const postLogin = async (req: Request, res: Response, next: NextFunction) => {\n- await check("email", "Email is not valid").isEmail().run(req);\n- await check("password", "Password cannot be blank").isLength({min: 1}).run(req);\n- // eslint-disable-next-line @typescript-eslint/camelcase\n- await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n-\n- const errors = validationResult(req);\n-\n- if (!errors.isEmpty()) {\n- req.flash("errors", errors.array());\n- return res.redirect("/login");\n+ await check("email", "Email is not valid").isEmail().run(req);\n+ await check("password", "Password cannot be blank").isLength({ min: 1 }).run(req);\n+ // eslint-disable-next-line @typescript-eslint/camelcase\n+ await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n+\n+ const errors = validationResult(req);\n+\n+ if (!errors.isEmpty()) {\n+ req.flash("errors", errors.array());\n+ return res.redirect("/login");\n+ }\n+\n+ passport.authenticate("local", (err: Error, user: UserDocument, info: IVerifyOptions) => {\n+ if (err) { return next(err); }\n+ if (!user) {\n+ req.flash("errors", { msg: info.message });\n+ return res.redirect("/login");\n }\n',id:311,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"taian.lta@test.com",extern_uid:"146194",id:15165,name:"伊北",state:"active",username:"taian.lta",web_url:"https://test.com.com/nwpipe/u/146194"},commit_id:null,created_at:"2020-09-04T10:52:12+0800",discussion_id:null,id:37,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:265,deleted_file:!1,diff:'@@ -14,12 +14,12 @@ import "../config/passport";\n * Login page.\n',id:1088,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},line_code:"c17950853d6b9677e9822cf07f2616db7ca02797_0_3",line_type:"old",note:"哈哈哈",noteable_id:1630,noteable_type:"ReviewComment",outdated:!1,path:"src/controllers/user.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:17174,del_line_num:265,deleted_file:!1,diff:'@@ -14,12 +14,12 @@ import "../config/passport";\n * Login page.\n',id:311,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"}],updated_at:"2020-09-04T16:20:30+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"taian.lta@test.com",extern_uid:"146194",id:15165,name:"伊北",state:"active",username:"taian.lta",web_url:"https://test.com.com/nwpipe/u/146194"},body:null,created_at:"2020-09-04T16:20:38+08:00",id:1633,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"taian.lta@test.com",extern_uid:"146194",id:15165,name:"伊北",state:"active",username:"taian.lta",web_url:"https://test.com.com/nwpipe/u/146194"},commit_id:null,created_at:"2020-09-04T16:20:39+0800",discussion_id:null,id:40,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:265,deleted_file:!1,diff:'@@ -27,30 +27,30 @@ export const getLogin = (req: Request, res: Response) => {\n * Sign in using email and password.\n */\n export const postLogin = async (req: Request, res: Response, next: NextFunction) => {\n- await check("email", "Email is not valid").isEmail().run(req);\n- await check("password", "Password cannot be blank").isLength({min: 1}).run(req);\n- // eslint-disable-next-line @typescript-eslint/camelcase\n- await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n-\n- const errors = validationResult(req);\n-\n- if (!errors.isEmpty()) {\n- req.flash("errors", errors.array());\n- return res.redirect("/login");\n+ await check("email", "Email is not valid").isEmail().run(req);\n+ await check("password", "Password cannot be blank").isLength({ min: 1 }).run(req);\n+ // eslint-disable-next-line @typescript-eslint/camelcase\n+ await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n+\n+ const errors = validationResult(req);\n+\n+ if (!errors.isEmpty()) {\n+ req.flash("errors", errors.array());\n+ return res.redirect("/login");\n+ }\n+\n+ passport.authenticate("local", (err: Error, user: UserDocument, info: IVerifyOptions) => {\n+ if (err) { return next(err); }\n+ if (!user) {\n+ req.flash("errors", { msg: info.message });\n+ return res.redirect("/login");\n }\n',id:1088,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},line_code:"c17950853d6b9677e9822cf07f2616db7ca02797_40_35",line_type:"old",note:"123",noteable_id:1633,noteable_type:"ReviewComment",outdated:!1,path:"src/controllers/user.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:17174,del_line_num:265,deleted_file:!1,diff:'@@ -27,30 +27,30 @@ export const getLogin = (req: Request, res: Response) => {\n * Sign in using email and password.\n */\n export const postLogin = async (req: Request, res: Response, next: NextFunction) => {\n- await check("email", "Email is not valid").isEmail().run(req);\n- await check("password", "Password cannot be blank").isLength({min: 1}).run(req);\n- // eslint-disable-next-line @typescript-eslint/camelcase\n- await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n-\n- const errors = validationResult(req);\n-\n- if (!errors.isEmpty()) {\n- req.flash("errors", errors.array());\n- return res.redirect("/login");\n+ await check("email", "Email is not valid").isEmail().run(req);\n+ await check("password", "Password cannot be blank").isLength({ min: 1 }).run(req);\n+ // eslint-disable-next-line @typescript-eslint/camelcase\n+ await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n+\n+ const errors = validationResult(req);\n+\n+ if (!errors.isEmpty()) {\n+ req.flash("errors", errors.array());\n+ return res.redirect("/login");\n+ }\n+\n+ passport.authenticate("local", (err: Error, user: UserDocument, info: IVerifyOptions) => {\n+ if (err) { return next(err); }\n+ if (!user) {\n+ req.flash("errors", { msg: info.message });\n+ return res.redirect("/login");\n }\n',id:311,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"}],updated_at:"2020-09-04T16:20:43+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"taian.lta@test.com",extern_uid:"146194",id:15165,name:"伊北",state:"active",username:"taian.lta",web_url:"https://test.com.com/nwpipe/u/146194"},body:null,created_at:"2020-09-08T19:47:16+08:00",id:1639,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"taian.lta@test.com",extern_uid:"146194",id:15165,name:"伊北",state:"active",username:"taian.lta",web_url:"https://test.com.com/nwpipe/u/146194"},commit_id:null,created_at:"2020-09-08T19:47:16+0800",discussion_id:null,id:59,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:null,note:"v1.16.2-snapshot-3a71cb12",noteable_id:1639,noteable_type:"ReviewComment",outdated:!1,path:null,resolved_at:null,resolved_by:null,st_diff:null,state:null,system:!1,type:"Comment",updated_at:"2020-09-08T19:47:16+0800"}],updated_at:"2020-09-08T19:47:16+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"taian.lta@test.com",extern_uid:"146194",id:15165,name:"伊北",state:"active",username:"taian.lta",web_url:"https://test.com.com/nwpipe/u/146194"},body:null,created_at:"2020-09-10T12:04:45+08:00",id:1652,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"taian.lta@test.com",extern_uid:"146194",id:15165,name:"伊北",state:"active",username:"taian.lta",web_url:"https://test.com.com/nwpipe/u/146194"},commit_id:null,created_at:"2020-09-10T12:04:45+0800",discussion_id:null,id:69,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:1,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:1,deleted_file:!1,diff:'@@ -16,7 +16,7 @@ const server = app.listen(app.get("port"), () => {\n app.get("port"),\n',id:1091,new_file:!1,new_path:"src/server.ts",old_path:"src/server.ts",renamed_file:!1,too_large:!1},line_code:"bcc09dcb20cae54f483679309f0403fdcbd98121_15_0",line_type:"old",note:"测试发布一条评论",noteable_id:1652,noteable_type:"ReviewComment",outdated:!1,path:"src/server.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:1,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:17921,del_line_num:1,deleted_file:!1,diff:'@@ -16,7 +16,7 @@ const server = app.listen(app.get("port"), () => {\n app.get("port"),\n',id:79,new_file:!1,new_path:"src/server.ts",old_path:"src/server.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"}],updated_at:"2020-09-10T12:04:49+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"taian.lta@test.com",extern_uid:"146194",id:15165,name:"伊北",state:"active",username:"taian.lta",web_url:"https://test.com.com/nwpipe/u/146194"},body:null,created_at:"2020-09-13T22:47:59+08:00",id:1659,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"taian.lta@test.com",extern_uid:"146194",id:15165,name:"伊北",state:"active",username:"taian.lta",web_url:"https://test.com.com/nwpipe/u/146194"},commit_id:null,created_at:"2020-09-17T23:03:22+0800",discussion_id:60,id:84,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:null,note:"123123",noteable_id:1659,noteable_type:"ReviewComment",outdated:!1,path:null,resolved_at:null,resolved_by:null,st_diff:null,state:null,system:!1,type:"Comment",updated_at:"2020-09-17T23:03:22+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"taian.lta@test.com",extern_uid:"146194",id:15165,name:"伊北",state:"active",username:"taian.lta",web_url:"https://test.com.com/nwpipe/u/146194"},commit_id:null,created_at:"2020-09-13T22:47:59+0800",discussion_id:null,id:73,is_award:!1,labels:["内存泄露","日志规约","中间件规约","基础编码规约","安全规约","并发&幂等"],latest_st_diff:{a_mode:"100644",add_line_num:7,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:7,deleted_file:!1,diff:'@@ -1,18 +1,18 @@\n import winston from "winston";\n \n const options: winston.LoggerOptions = {\n- transports: [\n- new winston.transports.Console({\n- level: process.env.NODE_ENV === "production" ? "error" : "debug"\n- }),\n- new winston.transports.File({ filename: "debug.log", level: "debug" })\n- ]\n+ transports: [\n',id:1092,new_file:!1,new_path:"src/util/logger.ts",old_path:"src/util/logger.ts",renamed_file:!1,too_large:!1},line_code:"bd5630fadbfeb531e34aa7539e6a12a247f8b0c6_9_4",line_type:"old",note:"123",noteable_id:1659,noteable_type:"ReviewComment",outdated:!1,path:"src/util/logger.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:7,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:17959,del_line_num:7,deleted_file:!1,diff:'@@ -1,18 +1,18 @@\n import winston from "winston";\n \n const options: winston.LoggerOptions = {\n- transports: [\n- new winston.transports.Console({\n- level: process.env.NODE_ENV === "production" ? "error" : "debug"\n- }),\n- new winston.transports.File({ filename: "debug.log", level: "debug" })\n- ]\n+ transports: [\n',id:275,new_file:!1,new_path:"src/util/logger.ts",old_path:"src/util/logger.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"}],updated_at:"2020-09-17T23:03:28+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"taian.lta@test.com",extern_uid:"146194",id:15165,name:"伊北",state:"active",username:"taian.lta",web_url:"https://test.com.com/nwpipe/u/146194"},body:null,created_at:"2020-09-19T22:39:00+08:00",id:1662,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"taian.lta@test.com",extern_uid:"146194",id:15165,name:"伊北",state:"active",username:"taian.lta",web_url:"https://test.com.com/nwpipe/u/146194"},commit_id:null,created_at:"2020-09-19T22:39:35+0800",discussion_id:11,id:87,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:null,note:"test123",noteable_id:1662,noteable_type:"ReviewComment",outdated:!1,path:null,resolved_at:null,resolved_by:null,st_diff:null,state:null,system:!1,type:"Comment",updated_at:"2020-09-19T22:39:35+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"taian.lta@test.com",extern_uid:"146194",id:15165,name:"伊北",state:"active",username:"taian.lta",web_url:"https://test.com.com/nwpipe/u/146194"},commit_id:null,created_at:"2020-09-19T22:39:00+0800",discussion_id:78,id:86,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:null,note:"123123123",noteable_id:1662,noteable_type:"ReviewComment",outdated:!1,path:null,resolved_at:null,resolved_by:null,st_diff:null,state:null,system:!1,type:"Comment",updated_at:"2020-09-19T22:39:00+0800"}],updated_at:"2020-09-19T22:40:05+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"taian.lta@test.com",extern_uid:"146194",id:15165,name:"伊北",state:"active",username:"taian.lta",web_url:"https://test.com.com/nwpipe/u/146194"},body:null,created_at:"2020-10-28T11:42:13+08:00",id:1737,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"taian.lta@test.com",extern_uid:"146194",id:15165,name:"伊北",state:"active",username:"taian.lta",web_url:"https://test.com.com/nwpipe/u/146194"},commit_id:null,created_at:"2020-11-16T19:52:35+0800",discussion_id:78,id:180,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:null,note:"*\n*",noteable_id:1737,noteable_type:"ReviewComment",outdated:!1,path:null,resolved_at:null,resolved_by:null,st_diff:null,state:null,system:!1,type:"Comment",updated_at:"2020-11-16T19:52:35+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"taian.lta@test.com",extern_uid:"146194",id:15165,name:"伊北",state:"active",username:"taian.lta",web_url:"https://test.com.com/nwpipe/u/146194"},commit_id:null,created_at:"2020-11-11T13:28:08+0800",discussion_id:null,id:170,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:49,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:49,deleted_file:!1,diff:'@@ -3,73 +3,73 @@ import crypto from "crypto";\n import mongoose from "mongoose";\n \n export type UserDocument = mongoose.Document & {\n- email: string;\n- password: string;\n- passwordResetToken: string;\n- passwordResetExpires: Date;\n+ email: string;\n',id:1089,new_file:!1,new_path:"src/models/User.ts",old_path:"src/models/User.ts",renamed_file:!1,too_large:!1},line_code:"e9bf216a20e84ee797b9402193000e41dad21aa6_6_6",line_type:"old",note:"123",noteable_id:1737,noteable_type:"ReviewComment",outdated:!1,path:"src/models/User.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:49,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:49,deleted_file:!1,diff:'@@ -3,73 +3,73 @@ import crypto from "crypto";\n import mongoose from "mongoose";\n \n export type UserDocument = mongoose.Document & {\n- email: string;\n- password: string;\n- passwordResetToken: string;\n- passwordResetExpires: Date;\n+ email: string;\n',id:1089,new_file:!1,new_path:"src/models/User.ts",old_path:"src/models/User.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2020-11-11T13:28:08+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"taian.lta@test.com",extern_uid:"146194",id:15165,name:"伊北",state:"active",username:"taian.lta",web_url:"https://test.com.com/nwpipe/u/146194"},commit_id:null,created_at:"2020-11-11T13:27:56+0800",discussion_id:null,id:169,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:49,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:49,deleted_file:!1,diff:'@@ -3,73 +3,73 @@ import crypto from "crypto";\n import mongoose from "mongoose";\n \n export type UserDocument = mongoose.Document & {\n- email: string;\n- password: string;\n- passwordResetToken: string;\n- passwordResetExpires: Date;\n+ email: string;\n+ password: string;\n+ passwordResetToken: string;\n+ passwordResetExpires: Date;\n \n',id:1089,new_file:!1,new_path:"src/models/User.ts",old_path:"src/models/User.ts",renamed_file:!1,too_large:!1},line_code:"e9bf216a20e84ee797b9402193000e41dad21aa6_10_7",line_type:"old",note:"123",noteable_id:1737,noteable_type:"ReviewComment",outdated:!1,path:"src/models/User.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:49,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:49,deleted_file:!1,diff:'@@ -3,73 +3,73 @@ import crypto from "crypto";\n import mongoose from "mongoose";\n \n export type UserDocument = mongoose.Document & {\n- email: string;\n- password: string;\n- passwordResetToken: string;\n- passwordResetExpires: Date;\n+ email: string;\n+ password: string;\n+ passwordResetToken: string;\n+ passwordResetExpires: Date;\n \n',id:1089,new_file:!1,new_path:"src/models/User.ts",old_path:"src/models/User.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2020-11-11T13:27:56+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"taian.lta@test.com",extern_uid:"146194",id:15165,name:"伊北",state:"active",username:"taian.lta",web_url:"https://test.com.com/nwpipe/u/146194"},commit_id:null,created_at:"2020-10-28T11:42:13+0800",discussion_id:52,id:166,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:null,note:"123123",noteable_id:1737,noteable_type:"ReviewComment",outdated:!1,path:null,resolved_at:null,resolved_by:null,st_diff:null,state:null,system:!1,type:"Comment",updated_at:"2020-10-28T11:42:13+0800"}],updated_at:"2022-01-25T15:55:52+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},body:null,created_at:"2020-08-18T10:23:46+08:00",id:1563,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},commit_id:null,created_at:"2020-08-25T20:31:20+0800",discussion_id:null,id:27,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:265,deleted_file:!1,diff:'@@ -27,30 +27,30 @@ export const getLogin = (req: Request, res: Response) => {\n * Sign in using email and password.\n */\n export const postLogin = async (req: Request, res: Response, next: NextFunction) => {\n- await check("email", "Email is not valid").isEmail().run(req);\n- await check("password", "Password cannot be blank").isLength({min: 1}).run(req);\n- // eslint-disable-next-line @typescript-eslint/camelcase\n- await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n-\n- const errors = validationResult(req);\n-\n- if (!errors.isEmpty()) {\n- req.flash("errors", errors.array());\n- return res.redirect("/login");\n+ await check("email", "Email is not valid").isEmail().run(req);\n+ await check("password", "Password cannot be blank").isLength({ min: 1 }).run(req);\n+ // eslint-disable-next-line @typescript-eslint/camelcase\n+ await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n+\n+ const errors = validationResult(req);\n+\n+ if (!errors.isEmpty()) {\n+ req.flash("errors", errors.array());\n+ return res.redirect("/login");\n+ }\n+\n+ passport.authenticate("local", (err: Error, user: UserDocument, info: IVerifyOptions) => {\n+ if (err) { return next(err); }\n+ if (!user) {\n+ req.flash("errors", { msg: info.message });\n+ return res.redirect("/login");\n }\n',id:1088,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},line_code:"c17950853d6b9677e9822cf07f2616db7ca02797_40_31",line_type:"old",note:"右侧",noteable_id:1563,noteable_type:"ReviewComment",outdated:!1,path:"src/controllers/user.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:16382,del_line_num:265,deleted_file:!1,diff:'@@ -27,30 +27,30 @@ export const getLogin = (req: Request, res: Response) => {\n * Sign in using email and password.\n */\n export const postLogin = async (req: Request, res: Response, next: NextFunction) => {\n- await check("email", "Email is not valid").isEmail().run(req);\n- await check("password", "Password cannot be blank").isLength({min: 1}).run(req);\n- // eslint-disable-next-line @typescript-eslint/camelcase\n- await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n-\n- const errors = validationResult(req);\n-\n- if (!errors.isEmpty()) {\n- req.flash("errors", errors.array());\n- return res.redirect("/login");\n+ await check("email", "Email is not valid").isEmail().run(req);\n+ await check("password", "Password cannot be blank").isLength({ min: 1 }).run(req);\n+ // eslint-disable-next-line @typescript-eslint/camelcase\n+ await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n+\n+ const errors = validationResult(req);\n+\n+ if (!errors.isEmpty()) {\n+ req.flash("errors", errors.array());\n+ return res.redirect("/login");\n+ }\n+\n+ passport.authenticate("local", (err: Error, user: UserDocument, info: IVerifyOptions) => {\n+ if (err) { return next(err); }\n+ if (!user) {\n+ req.flash("errors", { msg: info.message });\n+ return res.redirect("/login");\n }\n',id:34,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},commit_id:null,created_at:"2020-08-21T15:34:22+0800",discussion_id:20,id:26,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:null,note:"撒大声地阿斯顿撒",noteable_id:1563,noteable_type:"ReviewComment",outdated:!1,path:null,resolved_at:null,resolved_by:null,st_diff:null,state:null,system:!1,type:"Comment",updated_at:"2020-08-21T15:34:22+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},commit_id:null,created_at:"2020-08-21T15:33:34+0800",discussion_id:23,id:25,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:null,note:"sad",noteable_id:1563,noteable_type:"ReviewComment",outdated:!1,path:null,resolved_at:null,resolved_by:null,st_diff:null,state:null,system:!1,type:"Comment",updated_at:"2020-08-21T15:33:34+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},commit_id:null,created_at:"2020-08-21T11:30:27+0800",discussion_id:9,id:16,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:null,note:"asdsadsa",noteable_id:1563,noteable_type:"ReviewComment",outdated:!1,path:null,resolved_at:null,resolved_by:null,st_diff:null,state:null,system:!1,type:"Comment",updated_at:"2020-08-21T11:30:27+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},commit_id:null,created_at:"2020-08-21T11:30:21+0800",discussion_id:9,id:15,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:null,note:"asdasd",noteable_id:1563,noteable_type:"ReviewComment",outdated:!1,path:null,resolved_at:null,resolved_by:null,st_diff:null,state:null,system:!1,type:"Comment",updated_at:"2020-08-21T11:30:21+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},commit_id:null,created_at:"2020-08-18T10:23:46+0800",discussion_id:null,id:13,is_award:!1,labels:[],latest_st_diff:{a_mode:"0",add_line_num:228,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:0,deleted_file:!1,diff:'@@ -0,0 +1,228 @@\n+import { PullRequestChange } from \'../../../submodules/api-server/app/web/module/common/model/antcode\';\n+\n+export const mockChanges: PullRequestChange[] = [\n+ {\n+ "a_mode": "100644",\n+ "add_line_num": 3,\n+ "b_mode": "100644",\n+ "binary_file": false,\n+ "del_line_num": 0,\n+ "deleted_file": false,\n',id:1077,new_file:!0,new_path:"a.ts",old_path:"a.ts",renamed_file:!1,too_large:!1},line_code:"02699cd6ca65aa6819d7e387678d8ea5359b5e59_0_10",line_type:"new",note:"1111",noteable_id:1563,noteable_type:"ReviewComment",outdated:!1,path:"a.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"0",add_line_num:228,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:15929,del_line_num:0,deleted_file:!1,diff:'@@ -0,0 +1,228 @@\n+import { PullRequestChange } from \'../../../submodules/api-server/app/web/module/common/model/antcode\';\n+\n+export const mockChanges: PullRequestChange[] = [\n+ {\n+ "a_mode": "100644",\n+ "add_line_num": 3,\n+ "b_mode": "100644",\n+ "binary_file": false,\n+ "del_line_num": 0,\n+ "deleted_file": false,\n',id:43,new_file:!0,new_path:"a.ts",old_path:"a.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"}],updated_at:"2020-08-25T20:31:24+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},body:null,created_at:"2020-08-28T10:27:38+08:00",id:1609,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},commit_id:null,created_at:"2020-08-28T11:29:51+0800",discussion_id:null,id:30,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:265,deleted_file:!1,diff:'@@ -14,12 +14,12 @@ import "../config/passport";\n * Login page.\n */\n export const getLogin = (req: Request, res: Response) => {\n- if (req.user) {\n- return res.redirect("/");\n- }\n- res.render("account/login", {\n- title: "Login"\n- });\n+ if (req.user) {\n+ return res.redirect("/");\n+ }\n+ res.render("account/login", {\n+ title: "Login"\n+ });\n };\n',id:1088,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},line_code:"c17950853d6b9677e9822cf07f2616db7ca02797_23_17",line_type:"old",note:"大迭代",noteable_id:1609,noteable_type:"ReviewComment",outdated:!1,path:"src/controllers/user.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:16382,del_line_num:265,deleted_file:!1,diff:'@@ -14,12 +14,12 @@ import "../config/passport";\n * Login page.\n */\n export const getLogin = (req: Request, res: Response) => {\n- if (req.user) {\n- return res.redirect("/");\n- }\n- res.render("account/login", {\n- title: "Login"\n- });\n+ if (req.user) {\n+ return res.redirect("/");\n+ }\n+ res.render("account/login", {\n+ title: "Login"\n+ });\n };\n',id:34,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},commit_id:null,created_at:"2020-08-28T11:29:43+0800",discussion_id:null,id:29,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:265,deleted_file:!1,diff:'@@ -14,12 +14,12 @@ import "../config/passport";\n * Login page.\n',id:1088,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},line_code:"c17950853d6b9677e9822cf07f2616db7ca02797_9_0",line_type:"old",note:"撒大声地",noteable_id:1609,noteable_type:"ReviewComment",outdated:!1,path:"src/controllers/user.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:16382,del_line_num:265,deleted_file:!1,diff:'@@ -14,12 +14,12 @@ import "../config/passport";\n * Login page.\n',id:34,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},commit_id:null,created_at:"2020-08-28T10:27:39+0800",discussion_id:22,id:28,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:null,note:"ffff",noteable_id:1609,noteable_type:"ReviewComment",outdated:!1,path:null,resolved_at:null,resolved_by:null,st_diff:null,state:null,system:!1,type:"Comment",updated_at:"2020-08-28T10:27:39+0800"}],updated_at:"2020-08-28T11:30:02+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},body:null,created_at:"2020-08-28T11:30:22+08:00",id:1610,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},commit_id:null,created_at:"2020-08-28T11:30:22+0800",discussion_id:null,id:31,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:265,deleted_file:!1,diff:'@@ -14,12 +14,12 @@ import "../config/passport";\n * Login page.\n',id:1088,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},line_code:"c17950853d6b9677e9822cf07f2616db7ca02797_3_0",line_type:"old",note:"333333",noteable_id:1610,noteable_type:"ReviewComment",outdated:!1,path:"src/controllers/user.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:16382,del_line_num:265,deleted_file:!1,diff:'@@ -14,12 +14,12 @@ import "../config/passport";\n * Login page.\n',id:34,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"}],updated_at:"2020-08-28T11:30:27+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},body:null,created_at:"2020-08-28T11:30:58+08:00",id:1611,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},commit_id:null,created_at:"2020-08-28T11:30:58+0800",discussion_id:null,id:32,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:265,deleted_file:!1,diff:'@@ -27,30 +27,30 @@ export const getLogin = (req: Request, res: Response) => {\n * Sign in using email and password.\n */\n export const postLogin = async (req: Request, res: Response, next: NextFunction) => {\n- await check("email", "Email is not valid").isEmail().run(req);\n- await check("password", "Password cannot be blank").isLength({min: 1}).run(req);\n- // eslint-disable-next-line @typescript-eslint/camelcase\n- await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n-\n- const errors = validationResult(req);\n-\n- if (!errors.isEmpty()) {\n- req.flash("errors", errors.array());\n- return res.redirect("/login");\n+ await check("email", "Email is not valid").isEmail().run(req);\n',id:1088,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},line_code:"c17950853d6b9677e9822cf07f2616db7ca02797_37_30",line_type:"old",note:"啊大大",noteable_id:1611,noteable_type:"ReviewComment",outdated:!1,path:"src/controllers/user.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:16382,del_line_num:265,deleted_file:!1,diff:'@@ -27,30 +27,30 @@ export const getLogin = (req: Request, res: Response) => {\n * Sign in using email and password.\n */\n export const postLogin = async (req: Request, res: Response, next: NextFunction) => {\n- await check("email", "Email is not valid").isEmail().run(req);\n- await check("password", "Password cannot be blank").isLength({min: 1}).run(req);\n- // eslint-disable-next-line @typescript-eslint/camelcase\n- await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n-\n- const errors = validationResult(req);\n-\n- if (!errors.isEmpty()) {\n- req.flash("errors", errors.array());\n- return res.redirect("/login");\n+ await check("email", "Email is not valid").isEmail().run(req);\n',id:34,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"}],updated_at:"2020-08-28T11:31:04+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},body:null,created_at:"2020-09-07T11:12:17+08:00",id:1635,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},commit_id:null,created_at:"2020-09-07T11:12:18+0800",discussion_id:null,id:43,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:265,deleted_file:!1,diff:'@@ -14,12 +14,12 @@ import "../config/passport";\n * Login page.\n',id:1088,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},line_code:"c17950853d6b9677e9822cf07f2616db7ca02797_9_0",line_type:"old",note:"ddd",noteable_id:1635,noteable_type:"ReviewComment",outdated:!1,path:"src/controllers/user.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:17598,del_line_num:265,deleted_file:!1,diff:'@@ -14,12 +14,12 @@ import "../config/passport";\n * Login page.\n',id:752,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"}],updated_at:"2020-09-07T11:19:37+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},body:null,created_at:"2020-09-07T11:58:28+08:00",id:1637,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},commit_id:null,created_at:"2020-09-07T15:44:32+0800",discussion_id:null,id:50,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:265,deleted_file:!1,diff:'@@ -252,61 +252,61 @@ export const getReset = (req: Request, res: Response, next: NextFunction) => {\n * Process the reset password request.\n */\n export const postReset = async (req: Request, res: Response, next: NextFunction) => {\n- await check("password", "Password must be at least 4 characters long.").isLength({ min: 4 }).run(req);\n- await check("confirm", "Passwords must match.").equals(req.body.password).run(req);\n+ await check("password", "Password must be at least 4 characters long.").isLength({ min: 4 }).run(req);\n',id:1088,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},line_code:"c17950853d6b9677e9822cf07f2616db7ca02797_255_255",line_type:"old",note:"asdsadas",noteable_id:1637,noteable_type:"ReviewComment",outdated:!1,path:"src/controllers/user.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:17605,del_line_num:265,deleted_file:!1,diff:'@@ -252,61 +252,61 @@ export const getReset = (req: Request, res: Response, next: NextFunction) => {\n * Process the reset password request.\n */\n export const postReset = async (req: Request, res: Response, next: NextFunction) => {\n- await check("password", "Password must be at least 4 characters long.").isLength({ min: 4 }).run(req);\n- await check("confirm", "Passwords must match.").equals(req.body.password).run(req);\n+ await check("password", "Password must be at least 4 characters long.").isLength({ min: 4 }).run(req);\n',id:490,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},commit_id:null,created_at:"2020-09-07T15:44:18+0800",discussion_id:null,id:49,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:265,deleted_file:!1,diff:'@@ -252,61 +252,61 @@ export const getReset = (req: Request, res: Response, next: NextFunction) => {\n * Process the reset password request.\n */\n export const postReset = async (req: Request, res: Response, next: NextFunction) => {\n- await check("password", "Password must be at least 4 characters long.").isLength({ min: 4 }).run(req);\n- await check("confirm", "Passwords must match.").equals(req.body.password).run(req);\n+ await check("password", "Password must be at least 4 characters long.").isLength({ min: 4 }).run(req);\n',id:1088,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},line_code:"c17950853d6b9677e9822cf07f2616db7ca02797_255_255",line_type:"old",note:"dddd",noteable_id:1637,noteable_type:"ReviewComment",outdated:!1,path:"src/controllers/user.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:17605,del_line_num:265,deleted_file:!1,diff:'@@ -252,61 +252,61 @@ export const getReset = (req: Request, res: Response, next: NextFunction) => {\n * Process the reset password request.\n */\n export const postReset = async (req: Request, res: Response, next: NextFunction) => {\n- await check("password", "Password must be at least 4 characters long.").isLength({ min: 4 }).run(req);\n- await check("confirm", "Passwords must match.").equals(req.body.password).run(req);\n+ await check("password", "Password must be at least 4 characters long.").isLength({ min: 4 }).run(req);\n',id:490,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},commit_id:null,created_at:"2020-09-07T15:43:49+0800",discussion_id:29,id:48,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:null,note:"ddd",noteable_id:1637,noteable_type:"ReviewComment",outdated:!1,path:null,resolved_at:null,resolved_by:null,st_diff:null,state:null,system:!1,type:"Comment",updated_at:"2020-09-07T15:43:49+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},commit_id:null,created_at:"2020-09-07T11:58:29+0800",discussion_id:null,id:46,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:265,deleted_file:!1,diff:'@@ -27,30 +27,30 @@ export const getLogin = (req: Request, res: Response) => {\n * Sign in using email and password.\n */\n export const postLogin = async (req: Request, res: Response, next: NextFunction) => {\n- await check("email", "Email is not valid").isEmail().run(req);\n- await check("password", "Password cannot be blank").isLength({min: 1}).run(req);\n- // eslint-disable-next-line @typescript-eslint/camelcase\n- await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n-\n- const errors = validationResult(req);\n-\n- if (!errors.isEmpty()) {\n- req.flash("errors", errors.array());\n- return res.redirect("/login");\n+ await check("email", "Email is not valid").isEmail().run(req);\n',id:1088,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},line_code:"c17950853d6b9677e9822cf07f2616db7ca02797_37_30",line_type:"old",note:"十点多",noteable_id:1637,noteable_type:"ReviewComment",outdated:!1,path:"src/controllers/user.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:17598,del_line_num:265,deleted_file:!1,diff:'@@ -27,30 +27,30 @@ export const getLogin = (req: Request, res: Response) => {\n * Sign in using email and password.\n */\n export const postLogin = async (req: Request, res: Response, next: NextFunction) => {\n- await check("email", "Email is not valid").isEmail().run(req);\n- await check("password", "Password cannot be blank").isLength({min: 1}).run(req);\n- // eslint-disable-next-line @typescript-eslint/camelcase\n- await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n-\n- const errors = validationResult(req);\n-\n- if (!errors.isEmpty()) {\n- req.flash("errors", errors.array());\n- return res.redirect("/login");\n+ await check("email", "Email is not valid").isEmail().run(req);\n',id:752,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"}],updated_at:"2020-09-07T15:44:42+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},body:null,created_at:"2020-09-07T15:47:40+08:00",id:1638,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},commit_id:null,created_at:"2020-09-07T16:39:19+0800",discussion_id:null,id:53,is_award:!1,labels:["内存泄露","中间件规约"],latest_st_diff:{a_mode:"100644",add_line_num:4,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:4,deleted_file:!1,diff:'@@ -4,7 +4,7 @@ import passportFacebook from "passport-facebook";\n import _ from "lodash";\n \n // import { User, UserType } from \'../models/User\';\n-import { User, UserDocument } from "../models/User";\n+import { User, UserDocument } from "../models/User"\n',id:1087,new_file:!1,new_path:"src/config/passport.ts",old_path:"src/config/passport.ts",renamed_file:!1,too_large:!1},line_code:"761e3f18c863ddeee900bf74ddd8fed56a4aa2c9_7_7",line_type:"old",note:"test",noteable_id:1638,noteable_type:"ReviewComment",outdated:!1,path:"src/config/passport.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:4,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:17605,del_line_num:4,deleted_file:!1,diff:'@@ -4,7 +4,7 @@ import passportFacebook from "passport-facebook";\n import _ from "lodash";\n \n // import { User, UserType } from \'../models/User\';\n-import { User, UserDocument } from "../models/User";\n+import { User, UserDocument } from "../models/User"\n',id:489,new_file:!1,new_path:"src/config/passport.ts",old_path:"src/config/passport.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},commit_id:null,created_at:"2020-09-07T15:47:40+0800",discussion_id:null,id:51,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:265,deleted_file:!1,diff:'@@ -14,12 +14,12 @@ import "../config/passport";\n * Login page.\n',id:1088,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},line_code:"c17950853d6b9677e9822cf07f2616db7ca02797_3_0",line_type:"old",note:"asdasd",noteable_id:1638,noteable_type:"ReviewComment",outdated:!1,path:"src/controllers/user.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:17605,del_line_num:265,deleted_file:!1,diff:'@@ -14,12 +14,12 @@ import "../config/passport";\n * Login page.\n',id:490,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"}],updated_at:"2020-09-16T15:19:24+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},body:null,created_at:"2020-09-22T10:13:52+08:00",id:1663,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},commit_id:null,created_at:"2020-10-27T11:38:24+0800",discussion_id:null,id:159,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:0,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:1,deleted_file:!1,diff:"@@ -1,4 +1,3 @@\n-# TypeScript Node Starter\n > hello world typescript\n \n The main purpose of this repository is to show a working Node.js API Server + front-end project and workflow for writing Node code in TypeScript.\n",id:1075,new_file:!1,new_path:"README.md",old_path:"README.md",renamed_file:!1,too_large:!1},line_code:"8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d_0_24",line_type:"old",note:"![stack.png](/ide-s/TypeScript-Node-Starter/uploads/f0320521d707466988b87cc04ec2c7a4/stack.png)",noteable_id:1663,noteable_type:"ReviewComment",outdated:!0,path:"README.md",resolved_at:"2022-01-25T15:10:39+08:00",resolved_by:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"guqiankun.gqk@test.com",extern_uid:"354626",id:5600024,name:"轻游",state:"active",username:"guqiankun.gqk",web_url:"https://test.com.com/nwpipe/u/354626"},st_diff:{a_mode:"100644",add_line_num:0,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"604ed58cc40ed8ed6581d1c10e265da6f8b23496",compare_diff_id:19988,del_line_num:1,deleted_file:!1,diff:"@@ -1,4 +1,3 @@\n-# TypeScript Node Starter\n > hello world typescript\n \n The main purpose of this repository is to show a working Node.js API Server + front-end project and workflow for writing Node code in TypeScript.\n",id:144,new_file:!1,new_path:"README.md",old_path:"README.md",renamed_file:!1,too_large:!1},state:"opened",system:!1,type:"Problem",updated_at:"2021-05-20T14:27:46+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},commit_id:null,created_at:"2020-09-22T10:13:53+0800",discussion_id:null,id:88,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:0,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:1,deleted_file:!1,diff:"@@ -24,7 +24,6 @@ footer {\n \n // Input Fields\n // -------------------------\n-\n textarea {\n resize: vertical;\n",id:1090,new_file:!1,new_path:"src/public/css/main.scss",old_path:"src/public/css/main.scss",renamed_file:!1,too_large:!1},line_code:"4c32a30db22da868cde702e26a724b6a2408a33c_29_27",line_type:"old",note:"右边",noteable_id:1663,noteable_type:"ReviewComment",outdated:!0,path:"src/public/css/main.scss",resolved_at:"2022-01-20T20:10:37+08:00",resolved_by:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"guqiankun.gqk@test.com",extern_uid:"354626",id:5600024,name:"轻游",state:"active",username:"guqiankun.gqk",web_url:"https://test.com.com/nwpipe/u/354626"},st_diff:{a_mode:"100644",add_line_num:0,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:18810,del_line_num:1,deleted_file:!1,diff:"@@ -24,7 +24,6 @@ footer {\n \n // Input Fields\n // -------------------------\n-\n textarea {\n resize: vertical;\n",id:117,new_file:!1,new_path:"src/public/css/main.scss",old_path:"src/public/css/main.scss",renamed_file:!1,too_large:!1},state:"opened",system:!1,type:"Problem",updated_at:"2021-05-20T14:27:46+0800"}],updated_at:"2020-10-27T11:38:42+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},body:null,created_at:"2020-10-27T11:39:26+08:00",id:1731,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"guqiankun.gqk@test.com",extern_uid:"354626",id:5600024,name:"轻游",state:"active",username:"guqiankun.gqk",web_url:"https://test.com.com/nwpipe/u/354626"},commit_id:null,created_at:"2022-01-25T15:16:48+0800",discussion_id:182,id:500022,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:null,note:"Problem status changed to opened",noteable_id:1731,noteable_type:"ReviewComment",outdated:!1,path:null,resolved_at:null,resolved_by:null,st_diff:null,state:null,system:!0,type:"Comment",updated_at:"2022-01-25T15:16:48+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"guqiankun.gqk@test.com",extern_uid:"354626",id:5600024,name:"轻游",state:"active",username:"guqiankun.gqk",web_url:"https://test.com.com/nwpipe/u/354626"},commit_id:null,created_at:"2022-01-25T15:16:07+0800",discussion_id:182,id:500021,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:null,note:"Problem status changed to resolved",noteable_id:1731,noteable_type:"ReviewComment",outdated:!1,path:null,resolved_at:null,resolved_by:null,st_diff:null,state:null,system:!0,type:"Comment",updated_at:"2022-01-25T15:16:07+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},commit_id:null,created_at:"2020-11-19T15:19:18+0800",discussion_id:null,id:182,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:0,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:0,deleted_file:!1,diff:"",id:1096,new_file:!1,new_path:"views/partials/footer-renamed.pug",old_path:"views/partials/footer.pug",renamed_file:!0,too_large:!1},line_code:"cdba7b9c4edb14d31053cfb58047d4183fe1830d_2_2",line_type:"old",note:"2222",noteable_id:1731,noteable_type:"ReviewComment",outdated:!0,path:"views/partials/footer-renamed.pug",resolved_at:"2022-01-25T15:16:07+08:00",resolved_by:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"guqiankun.gqk@test.com",extern_uid:"354626",id:5600024,name:"轻游",state:"active",username:"guqiankun.gqk",web_url:"https://test.com.com/nwpipe/u/354626"},st_diff:{a_mode:"100644",add_line_num:0,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"ac55c77aa72d49280058ed6054610f454ee694b1",compare_diff_id:20699,del_line_num:0,deleted_file:!1,diff:"",id:570,new_file:!1,new_path:"views/partials/footer-renamed.pug",old_path:"views/partials/footer.pug",renamed_file:!0,too_large:!1},state:"opened",system:!1,type:"Problem",updated_at:"2021-05-20T14:27:46+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},commit_id:null,created_at:"2020-11-19T14:50:02+0800",discussion_id:null,id:181,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:"old",note:"111",noteable_id:1731,noteable_type:"ReviewComment",outdated:!1,path:"views/partials/footer-renamed.pug",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:0,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"ac55c77aa72d49280058ed6054610f454ee694b1",compare_diff_id:20699,del_line_num:0,deleted_file:!1,diff:"",id:570,new_file:!1,new_path:"views/partials/footer-renamed.pug",old_path:"views/partials/footer.pug",renamed_file:!0,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2020-11-19T14:50:02+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},commit_id:null,created_at:"2020-10-27T11:39:26+0800",discussion_id:159,id:160,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:null,note:"![](https://test.com/cloud-ide/api-server/uploads/96a89b8b059d4dd0896c5a01fe3ed68d/stack.png)",noteable_id:1731,noteable_type:"ReviewComment",outdated:!1,path:null,resolved_at:null,resolved_by:null,st_diff:null,state:null,system:!1,type:"Comment",updated_at:"2020-10-27T11:39:26+0800"}],updated_at:"2020-11-19T15:19:37+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},body:null,created_at:"2020-11-19T15:20:10+08:00",id:1769,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},commit_id:null,created_at:"2020-11-19T15:20:10+0800",discussion_id:null,id:183,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:0,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:0,deleted_file:!1,diff:"",id:1096,new_file:!1,new_path:"views/partials/footer-renamed.pug",old_path:"views/partials/footer.pug",renamed_file:!0,too_large:!1},line_code:"cdba7b9c4edb14d31053cfb58047d4183fe1830d_5_5",line_type:"old",note:"555",noteable_id:1769,noteable_type:"ReviewComment",outdated:!0,path:"views/partials/footer-renamed.pug",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:0,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"ac55c77aa72d49280058ed6054610f454ee694b1",compare_diff_id:20699,del_line_num:0,deleted_file:!1,diff:"",id:570,new_file:!1,new_path:"views/partials/footer-renamed.pug",old_path:"views/partials/footer.pug",renamed_file:!0,too_large:!1},state:"opened",system:!1,type:"Problem",updated_at:"2021-05-20T14:27:46+0800"}],updated_at:"2020-11-19T15:20:14+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},body:null,created_at:"2020-11-19T15:20:34+08:00",id:1770,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},commit_id:null,created_at:"2020-11-19T15:20:34+0800",discussion_id:null,id:184,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:2,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:2,deleted_file:!1,diff:"@@ -14,11 +14,11 @@ block content\n .form-group.row.justify-content-md-center\n",id:1094,new_file:!1,new_path:"views/contact123.pug",old_path:"views/contact.pug",renamed_file:!0,too_large:!1},line_code:"01c01633c13afa3e0580e14dbcd3c26e289c5281_0_4",line_type:"old",note:"4444",noteable_id:1770,noteable_type:"ReviewComment",outdated:!0,path:"views/contact123.pug",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:2,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"ac55c77aa72d49280058ed6054610f454ee694b1",compare_diff_id:20699,del_line_num:2,deleted_file:!1,diff:"@@ -14,11 +14,11 @@ block content\n .form-group.row.justify-content-md-center\n",id:568,new_file:!1,new_path:"views/contact123.pug",old_path:"views/contact.pug",renamed_file:!0,too_large:!1},state:"opened",system:!1,type:"Problem",updated_at:"2021-05-20T14:27:46+0800"}],updated_at:"2020-11-19T15:20:49+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},body:null,created_at:"2021-05-28T16:28:46+08:00",id:2106,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"guqiankun.gqk@test.com",extern_uid:"354626",id:5600024,name:"轻游",state:"active",username:"guqiankun.gqk",web_url:"https://test.com.com/nwpipe/u/354626"},commit_id:null,created_at:"2022-01-25T20:10:21+0800",discussion_id:205,id:500027,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:null,note:"Problem status changed to opened",noteable_id:2106,noteable_type:"ReviewComment",outdated:!1,path:null,resolved_at:null,resolved_by:null,st_diff:null,state:null,system:!0,type:"Comment",updated_at:"2022-01-25T20:10:21+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"guqiankun.gqk@test.com",extern_uid:"354626",id:5600024,name:"轻游",state:"active",username:"guqiankun.gqk",web_url:"https://test.com.com/nwpipe/u/354626"},commit_id:null,created_at:"2022-01-25T20:10:07+0800",discussion_id:205,id:500026,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:null,note:"Problem status changed to resolved",noteable_id:2106,noteable_type:"ReviewComment",outdated:!1,path:null,resolved_at:null,resolved_by:null,st_diff:null,state:null,system:!0,type:"Comment",updated_at:"2022-01-25T20:10:07+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"guqiankun.gqk@test.com",extern_uid:"354626",id:5600024,name:"轻游",state:"active",username:"guqiankun.gqk",web_url:"https://test.com.com/nwpipe/u/354626"},commit_id:null,created_at:"2022-01-25T16:06:08+0800",discussion_id:206,id:500024,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:null,note:"Problem status changed to resolved",noteable_id:2106,noteable_type:"ReviewComment",outdated:!1,path:null,resolved_at:null,resolved_by:null,st_diff:null,state:null,system:!0,type:"Comment",updated_at:"2022-01-25T16:06:08+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},commit_id:null,created_at:"2021-05-28T16:31:57+0800",discussion_id:null,id:206,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:1,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:1,deleted_file:!1,diff:'@@ -16,7 +16,7 @@ const server = app.listen(app.get("port"), () => {\n app.get("port"),\n app.get("env")\n',id:1091,new_file:!1,new_path:"src/server.ts",old_path:"src/server.ts",renamed_file:!1,too_large:!1},line_code:"bcc09dcb20cae54f483679309f0403fdcbd98121_17_16",line_type:"old",note:"1111",noteable_id:2106,noteable_type:"ReviewComment",outdated:!0,path:"src/server.ts",resolved_at:"2022-01-25T16:06:08+08:00",resolved_by:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"guqiankun.gqk@test.com",extern_uid:"354626",id:5600024,name:"轻游",state:"active",username:"guqiankun.gqk",web_url:"https://test.com.com/nwpipe/u/354626"},st_diff:{a_mode:"100644",add_line_num:1,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:1,deleted_file:!1,diff:'@@ -16,7 +16,7 @@ const server = app.listen(app.get("port"), () => {\n app.get("port"),\n app.get("env")\n',id:1091,new_file:!1,new_path:"src/server.ts",old_path:"src/server.ts",renamed_file:!1,too_large:!1},state:"opened",system:!1,type:"Problem",updated_at:"2021-05-28T16:31:57+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},commit_id:null,created_at:"2021-05-28T16:28:46+0800",discussion_id:null,id:205,is_award:!1,labels:["测试"],latest_st_diff:{a_mode:"100644",add_line_num:4,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:4,deleted_file:!1,diff:"@@ -14,7 +14,7 @@ passport.serializeUser((user, done) => {\n done(undefined, user.id);\n });\n \n-passport.deserializeUser((id, done) => {\n+passport.deserializeUser((id: string, done) => {\n User.findById(id, (err, user) => {\n",id:1087,new_file:!1,new_path:"src/config/passport.ts",old_path:"src/config/passport.ts",renamed_file:!1,too_large:!1},line_code:"761e3f18c863ddeee900bf74ddd8fed56a4aa2c9_18_17",line_type:"old",note:"这是啥",noteable_id:2106,noteable_type:"ReviewComment",outdated:!1,path:"src/config/passport.ts",resolved_at:"2022-01-25T20:10:07+08:00",resolved_by:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"guqiankun.gqk@test.com",extern_uid:"354626",id:5600024,name:"轻游",state:"active",username:"guqiankun.gqk",web_url:"https://test.com.com/nwpipe/u/354626"},st_diff:{a_mode:"100644",add_line_num:4,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:4,deleted_file:!1,diff:"@@ -14,7 +14,7 @@ passport.serializeUser((user, done) => {\n done(undefined, user.id);\n });\n \n-passport.deserializeUser((id, done) => {\n+passport.deserializeUser((id: string, done) => {\n User.findById(id, (err, user) => {\n",id:1087,new_file:!1,new_path:"src/config/passport.ts",old_path:"src/config/passport.ts",renamed_file:!1,too_large:!1},state:"opened",system:!1,type:"Problem",updated_at:"2021-05-28T16:28:46+0800"}],updated_at:"2021-05-28T16:32:04+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},body:null,created_at:"2021-11-04T15:07:06+08:00",id:4200243,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},commit_id:null,created_at:"2021-11-04T15:07:07+0800",discussion_id:null,id:400002,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:265,deleted_file:!1,diff:'@@ -27,30 +27,30 @@ export const getLogin = (req: Request, res: Response) => {\n * Sign in using email and password.\n */\n export const postLogin = async (req: Request, res: Response, next: NextFunction) => {\n- await check("email", "Email is not valid").isEmail().run(req);\n- await check("password", "Password cannot be blank").isLength({min: 1}).run(req);\n- // eslint-disable-next-line @typescript-eslint/camelcase\n- await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n-\n- const errors = validationResult(req);\n-\n- if (!errors.isEmpty()) {\n- req.flash("errors", errors.array());\n- return res.redirect("/login");\n+ await check("email", "Email is not valid").isEmail().run(req);\n+ await check("password", "Password cannot be blank").isLength({ min: 1 }).run(req);\n+ // eslint-disable-next-line @typescript-eslint/camelcase\n+ await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n+\n+ const errors = validationResult(req);\n+\n+ if (!errors.isEmpty()) {\n+ req.flash("errors", errors.array());\n+ return res.redirect("/login");\n+ }\n+\n+ passport.authenticate("local", (err: Error, user: UserDocument, info: IVerifyOptions) => {\n+ if (err) { return next(err); }\n+ if (!user) {\n+ req.flash("errors", { msg: info.message });\n+ return res.redirect("/login");\n }\n',id:1088,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},line_code:"c17950853d6b9677e9822cf07f2616db7ca02797_40_47",line_type:"old",note:"这是一个带图评论\n\n\n![image.png](/ide-s/TypeScript-Node-Starter/uploads/45f6e1865078460aa15f2799225d956c/image.png)\n",noteable_id:4200243,noteable_type:"ReviewComment",outdated:!1,path:"src/controllers/user.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:265,deleted_file:!1,diff:'@@ -27,30 +27,30 @@ export const getLogin = (req: Request, res: Response) => {\n * Sign in using email and password.\n */\n export const postLogin = async (req: Request, res: Response, next: NextFunction) => {\n- await check("email", "Email is not valid").isEmail().run(req);\n- await check("password", "Password cannot be blank").isLength({min: 1}).run(req);\n- // eslint-disable-next-line @typescript-eslint/camelcase\n- await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n-\n- const errors = validationResult(req);\n-\n- if (!errors.isEmpty()) {\n- req.flash("errors", errors.array());\n- return res.redirect("/login");\n+ await check("email", "Email is not valid").isEmail().run(req);\n+ await check("password", "Password cannot be blank").isLength({ min: 1 }).run(req);\n+ // eslint-disable-next-line @typescript-eslint/camelcase\n+ await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n+\n+ const errors = validationResult(req);\n+\n+ if (!errors.isEmpty()) {\n+ req.flash("errors", errors.array());\n+ return res.redirect("/login");\n+ }\n+\n+ passport.authenticate("local", (err: Error, user: UserDocument, info: IVerifyOptions) => {\n+ if (err) { return next(err); }\n+ if (!user) {\n+ req.flash("errors", { msg: info.message });\n+ return res.redirect("/login");\n }\n',id:1088,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},state:"opened",system:!1,type:"Problem",updated_at:"2021-11-04T15:07:07+0800"}],updated_at:"2021-11-04T15:07:16+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},body:null,created_at:"2021-11-04T15:08:12+08:00",id:4200244,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"guqiankun.gqk@test.com",extern_uid:"354626",id:5600024,name:"轻游",state:"active",username:"guqiankun.gqk",web_url:"https://test.com.com/nwpipe/u/354626"},commit_id:null,created_at:"2022-01-24T11:08:09+0800",discussion_id:400003,id:500014,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:null,note:"Problem status changed to opened",noteable_id:4200244,noteable_type:"ReviewComment",outdated:!1,path:null,resolved_at:null,resolved_by:null,st_diff:null,state:null,system:!0,type:"Comment",updated_at:"2022-01-24T11:08:09+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"guqiankun.gqk@test.com",extern_uid:"354626",id:5600024,name:"轻游",state:"active",username:"guqiankun.gqk",web_url:"https://test.com.com/nwpipe/u/354626"},commit_id:null,created_at:"2022-01-24T11:07:54+0800",discussion_id:400003,id:500013,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:null,note:"Problem status changed to resolved",noteable_id:4200244,noteable_type:"ReviewComment",outdated:!1,path:null,resolved_at:null,resolved_by:null,st_diff:null,state:null,system:!0,type:"Comment",updated_at:"2022-01-24T11:07:54+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"xinglong.wangwxl@test.com",extern_uid:"80222",id:15168,name:"蛋总",state:"active",username:"xinglong.wangwxl",web_url:"https://test.com.com/nwpipe/u/80222"},commit_id:null,created_at:"2021-11-04T15:08:12+0800",discussion_id:null,id:400003,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:265,deleted_file:!1,diff:'@@ -327,62 +327,62 @@ export const getForgot = (req: Request, res: Response) => {\n * Create a random token, then the send user an email with a reset link.\n */\n export const postForgot = async (req: Request, res: Response, next: NextFunction) => {\n- await check("email", "Please enter a valid email address.").isEmail().run(req);\n- // eslint-disable-next-line @typescript-eslint/camelcase\n- await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n-\n- const errors = validationResult(req);\n-\n- if (!errors.isEmpty()) {\n- req.flash("errors", errors.array());\n- return res.redirect("/forgot");\n- }\n-\n- async.waterfall([\n- function createRandomToken(done: Function) {\n- crypto.randomBytes(16, (err, buf) => {\n- const token = buf.toString("hex");\n- done(err, token);\n- });\n- },\n- function setRandomToken(token: AuthToken, done: Function) {\n- User.findOne({ email: req.body.email }, (err, user: any) => {\n- if (err) { return done(err); }\n- if (!user) {\n- req.flash("errors", { msg: "Account with that email address does not exist." });\n- return res.redirect("/forgot");\n- }\n- user.passwordResetToken = token;\n- user.passwordResetExpires = Date.now() + 3600000; // 1 hour\n- user.save((err: WriteError) => {\n- done(err, token, user);\n- });\n- });\n- },\n- function sendForgotPasswordEmail(token: AuthToken, user: UserDocument, done: Function) {\n- const transporter = nodemailer.createTransport({\n- service: "SendGrid",\n- auth: {\n- user: process.env.SENDGRID_USER,\n- pass: process.env.SENDGRID_PASSWORD\n- }\n- });\n- const mailOptions = {\n- to: user.email,\n- from: "hackathon@starter.com",\n- subject: "Reset your password on Hackathon Starter",\n- text: `You are receiving this email because you (or someone else) have requested the reset of the password for your account.\\n\\n\n+ await check("email", "Please enter a valid email address.").isEmail().run(req);\n+ // eslint-disable-next-line @typescript-eslint/camelcase\n+ await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n+\n+ const errors = validationResult(req);\n+\n+ if (!errors.isEmpty()) {\n+ req.flash("errors", errors.array());\n+ return res.redirect("/forgot");\n+ }\n+\n+ async.waterfall([\n+ function createRandomToken(done: Function) {\n+ crypto.randomBytes(16, (err, buf) => {\n+ const token = buf.toString("hex");\n+ done(err, token);\n+ });\n+ },\n+ function setRandomToken(token: AuthToken, done: Function) {\n+ User.findOne({ email: req.body.email }, (err, user: any) => {\n+ if (err) { return done(err); }\n+ if (!user) {\n+ req.flash("errors", { msg: "Account with that email address does not exist." });\n+ return res.redirect("/forgot");\n+ }\n+ user.passwordResetToken = token;\n+ user.passwordResetExpires = Date.now() + 3600000; // 1 hour\n+ user.save((err: WriteError) => {\n+ done(err, token, user);\n+ });\n+ });\n+ },\n+ function sendForgotPasswordEmail(token: AuthToken, user: UserDocument, done: Function) {\n+ const transporter = nodemailer.createTransport({\n+ service: "SendGrid",\n+ auth: {\n+ user: process.env.SENDGRID_USER,\n+ pass: process.env.SENDGRID_PASSWORD\n+ }\n+ });\n+ const mailOptions = {\n+ to: user.email,\n+ from: "hackathon@starter.com",\n+ subject: "Reset your password on Hackathon Starter",\n+ text: `You are receiving this email because you (or someone else) have requested the reset of the password for your account.\\n\\n\n Please click on the following link, or paste this into your browser to complete the process:\\n\\n\n http://${req.headers.host}/reset/${token}\\n\\n\n If you did not request this, please ignore this email and your password will remain unchanged.\\n`\n- };\n- transporter.sendMail(mailOptions, (err) => {\n- req.flash("info", { msg: `An e-mail has been sent to ${user.email} with further instructions.` });\n- done(err);\n- });\n- }\n- ], (err) => {\n- if (err) { return next(err); }\n- res.redirect("/forgot");\n- });\n+ };\n+ transporter.sendMail(mailOptions, (err) => {\n+ req.flash("info", { msg: `An e-mail has been sent to ${user.email} with further instructions.` });\n+ done(err);\n+ });\n+ }\n+ ], (err) => {\n+ if (err) { return next(err); }\n+ res.redirect("/forgot");\n+ });\n };\n',id:1088,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},line_code:"c17950853d6b9677e9822cf07f2616db7ca02797_388_384",line_type:"old",note:"111 \n\n\n![image.png](/ide-s/TypeScript-Node-Starter/uploads/cd8f399b2c994d01b4afe179c26e5a4f/image.png)\n",noteable_id:4200244,noteable_type:"ReviewComment",outdated:!1,path:"src/controllers/user.ts",resolved_at:"2022-01-24T11:07:54+08:00",resolved_by:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"guqiankun.gqk@test.com",extern_uid:"354626",id:5600024,name:"轻游",state:"active",username:"guqiankun.gqk",web_url:"https://test.com.com/nwpipe/u/354626"},st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:265,deleted_file:!1,diff:'@@ -327,62 +327,62 @@ export const getForgot = (req: Request, res: Response) => {\n * Create a random token, then the send user an email with a reset link.\n */\n export const postForgot = async (req: Request, res: Response, next: NextFunction) => {\n- await check("email", "Please enter a valid email address.").isEmail().run(req);\n- // eslint-disable-next-line @typescript-eslint/camelcase\n- await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n-\n- const errors = validationResult(req);\n-\n- if (!errors.isEmpty()) {\n- req.flash("errors", errors.array());\n- return res.redirect("/forgot");\n- }\n-\n- async.waterfall([\n- function createRandomToken(done: Function) {\n- crypto.randomBytes(16, (err, buf) => {\n- const token = buf.toString("hex");\n- done(err, token);\n- });\n- },\n- function setRandomToken(token: AuthToken, done: Function) {\n- User.findOne({ email: req.body.email }, (err, user: any) => {\n- if (err) { return done(err); }\n- if (!user) {\n- req.flash("errors", { msg: "Account with that email address does not exist." });\n- return res.redirect("/forgot");\n- }\n- user.passwordResetToken = token;\n- user.passwordResetExpires = Date.now() + 3600000; // 1 hour\n- user.save((err: WriteError) => {\n- done(err, token, user);\n- });\n- });\n- },\n- function sendForgotPasswordEmail(token: AuthToken, user: UserDocument, done: Function) {\n- const transporter = nodemailer.createTransport({\n- service: "SendGrid",\n- auth: {\n- user: process.env.SENDGRID_USER,\n- pass: process.env.SENDGRID_PASSWORD\n- }\n- });\n- const mailOptions = {\n- to: user.email,\n- from: "hackathon@starter.com",\n- subject: "Reset your password on Hackathon Starter",\n- text: `You are receiving this email because you (or someone else) have requested the reset of the password for your account.\\n\\n\n+ await check("email", "Please enter a valid email address.").isEmail().run(req);\n+ // eslint-disable-next-line @typescript-eslint/camelcase\n+ await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n+\n+ const errors = validationResult(req);\n+\n+ if (!errors.isEmpty()) {\n+ req.flash("errors", errors.array());\n+ return res.redirect("/forgot");\n+ }\n+\n+ async.waterfall([\n+ function createRandomToken(done: Function) {\n+ crypto.randomBytes(16, (err, buf) => {\n+ const token = buf.toString("hex");\n+ done(err, token);\n+ });\n+ },\n+ function setRandomToken(token: AuthToken, done: Function) {\n+ User.findOne({ email: req.body.email }, (err, user: any) => {\n+ if (err) { return done(err); }\n+ if (!user) {\n+ req.flash("errors", { msg: "Account with that email address does not exist." });\n+ return res.redirect("/forgot");\n+ }\n+ user.passwordResetToken = token;\n+ user.passwordResetExpires = Date.now() + 3600000; // 1 hour\n+ user.save((err: WriteError) => {\n+ done(err, token, user);\n+ });\n+ });\n+ },\n+ function sendForgotPasswordEmail(token: AuthToken, user: UserDocument, done: Function) {\n+ const transporter = nodemailer.createTransport({\n+ service: "SendGrid",\n+ auth: {\n+ user: process.env.SENDGRID_USER,\n+ pass: process.env.SENDGRID_PASSWORD\n+ }\n+ });\n+ const mailOptions = {\n+ to: user.email,\n+ from: "hackathon@starter.com",\n+ subject: "Reset your password on Hackathon Starter",\n+ text: `You are receiving this email because you (or someone else) have requested the reset of the password for your account.\\n\\n\n Please click on the following link, or paste this into your browser to complete the process:\\n\\n\n http://${req.headers.host}/reset/${token}\\n\\n\n If you did not request this, please ignore this email and your password will remain unchanged.\\n`\n- };\n- transporter.sendMail(mailOptions, (err) => {\n- req.flash("info", { msg: `An e-mail has been sent to ${user.email} with further instructions.` });\n- done(err);\n- });\n- }\n- ], (err) => {\n- if (err) { return next(err); }\n- res.redirect("/forgot");\n- });\n+ };\n+ transporter.sendMail(mailOptions, (err) => {\n+ req.flash("info", { msg: `An e-mail has been sent to ${user.email} with further instructions.` });\n+ done(err);\n+ });\n+ }\n+ ], (err) => {\n+ if (err) { return next(err); }\n+ res.redirect("/forgot");\n+ });\n };\n',id:1088,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},state:"opened",system:!1,type:"Problem",updated_at:"2021-11-04T15:08:12+0800"}],updated_at:"2021-11-04T15:08:18+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"jiankan.hjk@test.com",extern_uid:"130095",id:15319,name:"剑侃",state:"active",username:"jiankan.hjk",web_url:"https://test.com.com/nwpipe/u/130095"},body:null,created_at:"2020-08-21T15:20:06+08:00",id:1585,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"jiankan.hjk@test.com",extern_uid:"130095",id:15319,name:"剑侃",state:"active",username:"jiankan.hjk",web_url:"https://test.com.com/nwpipe/u/130095"},commit_id:null,created_at:"2020-08-21T15:20:25+0800",discussion_id:null,id:18,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:265,deleted_file:!1,diff:'@@ -27,30 +27,30 @@ export const getLogin = (req: Request, res: Response) => {\n * Sign in using email and password.\n */\n export const postLogin = async (req: Request, res: Response, next: NextFunction) => {\n- await check("email", "Email is not valid").isEmail().run(req);\n- await check("password", "Password cannot be blank").isLength({min: 1}).run(req);\n- // eslint-disable-next-line @typescript-eslint/camelcase\n- await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n-\n- const errors = validationResult(req);\n-\n- if (!errors.isEmpty()) {\n- req.flash("errors", errors.array());\n- return res.redirect("/login");\n+ await check("email", "Email is not valid").isEmail().run(req);\n+ await check("password", "Password cannot be blank").isLength({ min: 1 }).run(req);\n+ // eslint-disable-next-line @typescript-eslint/camelcase\n+ await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n+\n+ const errors = validationResult(req);\n+\n+ if (!errors.isEmpty()) {\n+ req.flash("errors", errors.array());\n+ return res.redirect("/login");\n+ }\n+\n+ passport.authenticate("local", (err: Error, user: UserDocument, info: IVerifyOptions) => {\n+ if (err) { return next(err); }\n+ if (!user) {\n+ req.flash("errors", { msg: info.message });\n+ return res.redirect("/login");\n }\n-\n- passport.authenticate("local", (err: Error, user: UserDocument, info: IVerifyOptions) => {\n- if (err) { return next(err); }\n- if (!user) {\n- req.flash("errors", {msg: info.message});\n- return res.redirect("/login");\n- }\n- req.logIn(user, (err) => {\n- if (err) { return next(err); }\n- req.flash("success", { msg: "Success! You are logged in." });\n- res.redirect(req.session.returnTo || "/");\n- });\n- })(req, res, next);\n+ req.logIn(user, (err) => {\n',id:1088,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},line_code:"c17950853d6b9677e9822cf07f2616db7ca02797_41_48",line_type:"old",note:"第二次测试",noteable_id:1585,noteable_type:"ReviewComment",outdated:!1,path:"src/controllers/user.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:16382,del_line_num:265,deleted_file:!1,diff:'@@ -27,30 +27,30 @@ export const getLogin = (req: Request, res: Response) => {\n * Sign in using email and password.\n */\n export const postLogin = async (req: Request, res: Response, next: NextFunction) => {\n- await check("email", "Email is not valid").isEmail().run(req);\n- await check("password", "Password cannot be blank").isLength({min: 1}).run(req);\n- // eslint-disable-next-line @typescript-eslint/camelcase\n- await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n-\n- const errors = validationResult(req);\n-\n- if (!errors.isEmpty()) {\n- req.flash("errors", errors.array());\n- return res.redirect("/login");\n+ await check("email", "Email is not valid").isEmail().run(req);\n+ await check("password", "Password cannot be blank").isLength({ min: 1 }).run(req);\n+ // eslint-disable-next-line @typescript-eslint/camelcase\n+ await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n+\n+ const errors = validationResult(req);\n+\n+ if (!errors.isEmpty()) {\n+ req.flash("errors", errors.array());\n+ return res.redirect("/login");\n+ }\n+\n+ passport.authenticate("local", (err: Error, user: UserDocument, info: IVerifyOptions) => {\n+ if (err) { return next(err); }\n+ if (!user) {\n+ req.flash("errors", { msg: info.message });\n+ return res.redirect("/login");\n }\n-\n- passport.authenticate("local", (err: Error, user: UserDocument, info: IVerifyOptions) => {\n- if (err) { return next(err); }\n- if (!user) {\n- req.flash("errors", {msg: info.message});\n- return res.redirect("/login");\n- }\n- req.logIn(user, (err) => {\n- if (err) { return next(err); }\n- req.flash("success", { msg: "Success! You are logged in." });\n- res.redirect(req.session.returnTo || "/");\n- });\n- })(req, res, next);\n+ req.logIn(user, (err) => {\n',id:34,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"jiankan.hjk@test.com",extern_uid:"130095",id:15319,name:"剑侃",state:"active",username:"jiankan.hjk",web_url:"https://test.com.com/nwpipe/u/130095"},commit_id:null,created_at:"2020-08-21T15:20:06+0800",discussion_id:null,id:17,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:265,deleted_file:!1,diff:'@@ -27,30 +27,30 @@ export const getLogin = (req: Request, res: Response) => {\n * Sign in using email and password.\n */\n export const postLogin = async (req: Request, res: Response, next: NextFunction) => {\n- await check("email", "Email is not valid").isEmail().run(req);\n- await check("password", "Password cannot be blank").isLength({min: 1}).run(req);\n- // eslint-disable-next-line @typescript-eslint/camelcase\n- await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n-\n- const errors = validationResult(req);\n-\n- if (!errors.isEmpty()) {\n- req.flash("errors", errors.array());\n- return res.redirect("/login");\n+ await check("email", "Email is not valid").isEmail().run(req);\n+ await check("password", "Password cannot be blank").isLength({ min: 1 }).run(req);\n+ // eslint-disable-next-line @typescript-eslint/camelcase\n+ await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n+\n+ const errors = validationResult(req);\n+\n+ if (!errors.isEmpty()) {\n+ req.flash("errors", errors.array());\n+ return res.redirect("/login");\n+ }\n+\n+ passport.authenticate("local", (err: Error, user: UserDocument, info: IVerifyOptions) => {\n+ if (err) { return next(err); }\n+ if (!user) {\n+ req.flash("errors", { msg: info.message });\n+ return res.redirect("/login");\n }\n-\n- passport.authenticate("local", (err: Error, user: UserDocument, info: IVerifyOptions) => {\n- if (err) { return next(err); }\n- if (!user) {\n- req.flash("errors", {msg: info.message});\n- return res.redirect("/login");\n- }\n- req.logIn(user, (err) => {\n- if (err) { return next(err); }\n- req.flash("success", { msg: "Success! You are logged in." });\n- res.redirect(req.session.returnTo || "/");\n- });\n- })(req, res, next);\n+ req.logIn(user, (err) => {\n',id:1088,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},line_code:"c17950853d6b9677e9822cf07f2616db7ca02797_43_48",line_type:"old",note:"太好了",noteable_id:1585,noteable_type:"ReviewComment",outdated:!1,path:"src/controllers/user.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:16382,del_line_num:265,deleted_file:!1,diff:'@@ -27,30 +27,30 @@ export const getLogin = (req: Request, res: Response) => {\n * Sign in using email and password.\n */\n export const postLogin = async (req: Request, res: Response, next: NextFunction) => {\n- await check("email", "Email is not valid").isEmail().run(req);\n- await check("password", "Password cannot be blank").isLength({min: 1}).run(req);\n- // eslint-disable-next-line @typescript-eslint/camelcase\n- await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n-\n- const errors = validationResult(req);\n-\n- if (!errors.isEmpty()) {\n- req.flash("errors", errors.array());\n- return res.redirect("/login");\n+ await check("email", "Email is not valid").isEmail().run(req);\n+ await check("password", "Password cannot be blank").isLength({ min: 1 }).run(req);\n+ // eslint-disable-next-line @typescript-eslint/camelcase\n+ await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n+\n+ const errors = validationResult(req);\n+\n+ if (!errors.isEmpty()) {\n+ req.flash("errors", errors.array());\n+ return res.redirect("/login");\n+ }\n+\n+ passport.authenticate("local", (err: Error, user: UserDocument, info: IVerifyOptions) => {\n+ if (err) { return next(err); }\n+ if (!user) {\n+ req.flash("errors", { msg: info.message });\n+ return res.redirect("/login");\n }\n-\n- passport.authenticate("local", (err: Error, user: UserDocument, info: IVerifyOptions) => {\n- if (err) { return next(err); }\n- if (!user) {\n- req.flash("errors", {msg: info.message});\n- return res.redirect("/login");\n- }\n- req.logIn(user, (err) => {\n- if (err) { return next(err); }\n- req.flash("success", { msg: "Success! You are logged in." });\n- res.redirect(req.session.returnTo || "/");\n- });\n- })(req, res, next);\n+ req.logIn(user, (err) => {\n',id:34,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"}],updated_at:"2020-08-21T15:20:32+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"jiankan.hjk@test.com",extern_uid:"130095",id:15319,name:"剑侃",state:"active",username:"jiankan.hjk",web_url:"https://test.com.com/nwpipe/u/130095"},body:null,created_at:"2020-08-21T15:28:36+08:00",id:1586,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"jiankan.hjk@test.com",extern_uid:"130095",id:15319,name:"剑侃",state:"active",username:"jiankan.hjk",web_url:"https://test.com.com/nwpipe/u/130095"},commit_id:null,created_at:"2020-08-21T15:28:36+0800",discussion_id:null,id:19,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:265,deleted_file:!1,diff:'@@ -27,30 +27,30 @@ export const getLogin = (req: Request, res: Response) => {\n * Sign in using email and password.\n */\n export const postLogin = async (req: Request, res: Response, next: NextFunction) => {\n- await check("email", "Email is not valid").isEmail().run(req);\n- await check("password", "Password cannot be blank").isLength({min: 1}).run(req);\n- // eslint-disable-next-line @typescript-eslint/camelcase\n- await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n-\n- const errors = validationResult(req);\n-\n- if (!errors.isEmpty()) {\n- req.flash("errors", errors.array());\n- return res.redirect("/login");\n+ await check("email", "Email is not valid").isEmail().run(req);\n',id:1088,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},line_code:"c17950853d6b9677e9822cf07f2616db7ca02797_30_30",line_type:"old",note:"第三次测试",noteable_id:1586,noteable_type:"ReviewComment",outdated:!1,path:"src/controllers/user.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:16382,del_line_num:265,deleted_file:!1,diff:'@@ -27,30 +27,30 @@ export const getLogin = (req: Request, res: Response) => {\n * Sign in using email and password.\n */\n export const postLogin = async (req: Request, res: Response, next: NextFunction) => {\n- await check("email", "Email is not valid").isEmail().run(req);\n- await check("password", "Password cannot be blank").isLength({min: 1}).run(req);\n- // eslint-disable-next-line @typescript-eslint/camelcase\n- await sanitize("email").normalizeEmail({ gmail_remove_dots: false }).run(req);\n-\n- const errors = validationResult(req);\n-\n- if (!errors.isEmpty()) {\n- req.flash("errors", errors.array());\n- return res.redirect("/login");\n+ await check("email", "Email is not valid").isEmail().run(req);\n',id:34,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"}],updated_at:"2020-08-21T15:28:39+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"jiankan.hjk@test.com",extern_uid:"130095",id:15319,name:"剑侃",state:"active",username:"jiankan.hjk",web_url:"https://test.com.com/nwpipe/u/130095"},body:null,created_at:"2020-08-21T15:29:04+08:00",id:1587,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"jiankan.hjk@test.com",extern_uid:"130095",id:15319,name:"剑侃",state:"active",username:"jiankan.hjk",web_url:"https://test.com.com/nwpipe/u/130095"},commit_id:null,created_at:"2020-08-21T15:29:04+0800",discussion_id:null,id:20,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:265,deleted_file:!1,diff:'@@ -14,12 +14,12 @@ import "../config/passport";\n * Login page.\n */\n export const getLogin = (req: Request, res: Response) => {\n- if (req.user) {\n- return res.redirect("/");\n- }\n- res.render("account/login", {\n- title: "Login"\n- });\n+ if (req.user) {\n',id:1088,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},line_code:"c17950853d6b9677e9822cf07f2616db7ca02797_21_17",line_type:"old",note:"第四次测试",noteable_id:1587,noteable_type:"ReviewComment",outdated:!1,path:"src/controllers/user.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:16382,del_line_num:265,deleted_file:!1,diff:'@@ -14,12 +14,12 @@ import "../config/passport";\n * Login page.\n */\n export const getLogin = (req: Request, res: Response) => {\n- if (req.user) {\n- return res.redirect("/");\n- }\n- res.render("account/login", {\n- title: "Login"\n- });\n+ if (req.user) {\n',id:34,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"}],updated_at:"2020-08-21T15:29:07+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"jiankan.hjk@test.com",extern_uid:"130095",id:15319,name:"剑侃",state:"active",username:"jiankan.hjk",web_url:"https://test.com.com/nwpipe/u/130095"},body:null,created_at:"2020-08-21T15:30:06+08:00",id:1588,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"jiankan.hjk@test.com",extern_uid:"130095",id:15319,name:"剑侃",state:"active",username:"jiankan.hjk",web_url:"https://test.com.com/nwpipe/u/130095"},commit_id:null,created_at:"2020-08-21T15:30:07+0800",discussion_id:null,id:21,is_award:!1,labels:["dadada","dada","dadad","LackOfProfessionalField","BusinessArchitectureDesignDefect","DesignPatternDefect","NotFamilierBasicFrame","LackOfJavaBase","CodeStandardsIssue","并发&幂等","基础编码规约","中间件规约"],latest_st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:265,deleted_file:!1,diff:'@@ -14,12 +14,12 @@ import "../config/passport";\n * Login page.\n */\n export const getLogin = (req: Request, res: Response) => {\n- if (req.user) {\n- return res.redirect("/");\n- }\n- res.render("account/login", {\n- title: "Login"\n- });\n+ if (req.user) {\n',id:1088,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},line_code:"c17950853d6b9677e9822cf07f2616db7ca02797_21_17",line_type:"old",note:"第五次测试",noteable_id:1588,noteable_type:"ReviewComment",outdated:!1,path:"src/controllers/user.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:16382,del_line_num:265,deleted_file:!1,diff:'@@ -14,12 +14,12 @@ import "../config/passport";\n * Login page.\n */\n export const getLogin = (req: Request, res: Response) => {\n- if (req.user) {\n- return res.redirect("/");\n- }\n- res.render("account/login", {\n- title: "Login"\n- });\n+ if (req.user) {\n',id:34,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"}],updated_at:"2020-08-21T15:30:10+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"jiankan.hjk@test.com",extern_uid:"130095",id:15319,name:"剑侃",state:"active",username:"jiankan.hjk",web_url:"https://test.com.com/nwpipe/u/130095"},body:null,created_at:"2020-08-21T15:30:28+08:00",id:1589,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"jiankan.hjk@test.com",extern_uid:"130095",id:15319,name:"剑侃",state:"active",username:"jiankan.hjk",web_url:"https://test.com.com/nwpipe/u/130095"},commit_id:null,created_at:"2020-08-21T15:30:28+0800",discussion_id:null,id:22,is_award:!1,labels:["内存泄露","日志规约"],latest_st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:265,deleted_file:!1,diff:'@@ -14,12 +14,12 @@ import "../config/passport";\n * Login page.\n */\n export const getLogin = (req: Request, res: Response) => {\n- if (req.user) {\n- return res.redirect("/");\n- }\n- res.render("account/login", {\n- title: "Login"\n- });\n+ if (req.user) {\n+ return res.redirect("/");\n+ }\n+ res.render("account/login", {\n+ title: "Login"\n+ });\n };\n',id:1088,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},line_code:"c17950853d6b9677e9822cf07f2616db7ca02797_23_17",line_type:"old",note:"第六次测试",noteable_id:1589,noteable_type:"ReviewComment",outdated:!1,path:"src/controllers/user.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:16382,del_line_num:265,deleted_file:!1,diff:'@@ -14,12 +14,12 @@ import "../config/passport";\n * Login page.\n */\n export const getLogin = (req: Request, res: Response) => {\n- if (req.user) {\n- return res.redirect("/");\n- }\n- res.render("account/login", {\n- title: "Login"\n- });\n+ if (req.user) {\n+ return res.redirect("/");\n+ }\n+ res.render("account/login", {\n+ title: "Login"\n+ });\n };\n',id:34,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"}],updated_at:"2020-08-21T15:30:32+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"jiankan.hjk@test.com",extern_uid:"130095",id:15319,name:"剑侃",state:"active",username:"jiankan.hjk",web_url:"https://test.com.com/nwpipe/u/130095"},body:null,created_at:"2020-08-21T15:31:09+08:00",id:1590,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"jiankan.hjk@test.com",extern_uid:"130095",id:15319,name:"剑侃",state:"active",username:"jiankan.hjk",web_url:"https://test.com.com/nwpipe/u/130095"},commit_id:null,created_at:"2020-08-21T15:31:09+0800",discussion_id:null,id:23,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:265,deleted_file:!1,diff:'@@ -14,12 +14,12 @@ import "../config/passport";\n * Login page.\n */\n export const getLogin = (req: Request, res: Response) => {\n- if (req.user) {\n- return res.redirect("/");\n- }\n- res.render("account/login", {\n- title: "Login"\n- });\n+ if (req.user) {\n+ return res.redirect("/");\n+ }\n+ res.render("account/login", {\n+ title: "Login"\n+ });\n };\n',id:1088,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},line_code:"c17950853d6b9677e9822cf07f2616db7ca02797_23_18",line_type:"old",note:"第七次测试",noteable_id:1590,noteable_type:"ReviewComment",outdated:!1,path:"src/controllers/user.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:16382,del_line_num:265,deleted_file:!1,diff:'@@ -14,12 +14,12 @@ import "../config/passport";\n * Login page.\n */\n export const getLogin = (req: Request, res: Response) => {\n- if (req.user) {\n- return res.redirect("/");\n- }\n- res.render("account/login", {\n- title: "Login"\n- });\n+ if (req.user) {\n+ return res.redirect("/");\n+ }\n+ res.render("account/login", {\n+ title: "Login"\n+ });\n };\n',id:34,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"}],updated_at:"2020-08-21T15:31:15+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"jiankan.hjk@test.com",extern_uid:"130095",id:15319,name:"剑侃",state:"active",username:"jiankan.hjk",web_url:"https://test.com.com/nwpipe/u/130095"},body:null,created_at:"2020-08-21T15:32:38+08:00",id:1591,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"jiankan.hjk@test.com",extern_uid:"130095",id:15319,name:"剑侃",state:"active",username:"jiankan.hjk",web_url:"https://test.com.com/nwpipe/u/130095"},commit_id:null,created_at:"2020-08-21T15:32:38+0800",discussion_id:null,id:24,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:265,deleted_file:!1,diff:'@@ -14,12 +14,12 @@ import "../config/passport";\n * Login page.\n */\n export const getLogin = (req: Request, res: Response) => {\n- if (req.user) {\n- return res.redirect("/");\n- }\n- res.render("account/login", {\n- title: "Login"\n- });\n+ if (req.user) {\n+ return res.redirect("/");\n+ }\n+ res.render("account/login", {\n+ title: "Login"\n+ });\n };\n',id:1088,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},line_code:"c17950853d6b9677e9822cf07f2616db7ca02797_23_20",line_type:"old",note:"第八次测试",noteable_id:1591,noteable_type:"ReviewComment",outdated:!1,path:"src/controllers/user.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:16382,del_line_num:265,deleted_file:!1,diff:'@@ -14,12 +14,12 @@ import "../config/passport";\n * Login page.\n */\n export const getLogin = (req: Request, res: Response) => {\n- if (req.user) {\n- return res.redirect("/");\n- }\n- res.render("account/login", {\n- title: "Login"\n- });\n+ if (req.user) {\n+ return res.redirect("/");\n+ }\n+ res.render("account/login", {\n+ title: "Login"\n+ });\n };\n',id:34,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"}],updated_at:"2020-08-21T15:32:41+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"jiankan.hjk@test.com",extern_uid:"130095",id:15319,name:"剑侃",state:"active",username:"jiankan.hjk",web_url:"https://test.com.com/nwpipe/u/130095"},body:null,created_at:"2020-09-04T16:20:30+08:00",id:1632,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"jiankan.hjk@test.com",extern_uid:"130095",id:15319,name:"剑侃",state:"active",username:"jiankan.hjk",web_url:"https://test.com.com/nwpipe/u/130095"},commit_id:null,created_at:"2020-11-16T19:42:40+0800",discussion_id:78,id:179,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:null,note:"Problem status changed to resolved",noteable_id:1632,noteable_type:"ReviewComment",outdated:!1,path:null,resolved_at:null,resolved_by:null,st_diff:null,state:null,system:!0,type:"Comment",updated_at:"2020-11-16T19:42:40+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"jiankan.hjk@test.com",extern_uid:"130095",id:15319,name:"剑侃",state:"active",username:"jiankan.hjk",web_url:"https://test.com.com/nwpipe/u/130095"},commit_id:null,created_at:"2020-11-16T19:42:37+0800",discussion_id:78,id:178,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:null,note:"Problem status changed to invalid",noteable_id:1632,noteable_type:"ReviewComment",outdated:!1,path:null,resolved_at:null,resolved_by:null,st_diff:null,state:null,system:!0,type:"Comment",updated_at:"2020-11-16T19:42:37+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"taian.lta@test.com",extern_uid:"146194",id:15165,name:"伊北",state:"active",username:"taian.lta",web_url:"https://test.com.com/nwpipe/u/146194"},commit_id:null,created_at:"2020-09-16T11:54:11+0800",discussion_id:78,id:81,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:null,note:"Problem status changed to resolved",noteable_id:1632,noteable_type:"ReviewComment",outdated:!1,path:null,resolved_at:null,resolved_by:null,st_diff:null,state:null,system:!0,type:"Comment",updated_at:"2020-09-16T11:54:11+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"jiankan.hjk@test.com",extern_uid:"130095",id:15319,name:"剑侃",state:"active",username:"jiankan.hjk",web_url:"https://test.com.com/nwpipe/u/130095"},commit_id:null,created_at:"2020-09-16T11:52:42+0800",discussion_id:null,id:78,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:0,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:1,deleted_file:!1,diff:"@@ -1,4 +1,3 @@\n-# TypeScript Node Starter\n > hello world typescript\n \n The main purpose of this repository is to show a working Node.js API Server + front-end project and workflow for writing Node code in TypeScript.\n",id:1075,new_file:!1,new_path:"README.md",old_path:"README.md",renamed_file:!1,too_large:!1},line_code:"8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d_8_0",line_type:"old",note:"测试",noteable_id:1632,noteable_type:"ReviewComment",outdated:!1,path:"README.md",resolved_at:"2020-11-16T19:42:40+08:00",resolved_by:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"jiankan.hjk@test.com",extern_uid:"130095",id:15319,name:"剑侃",state:"active",username:"jiankan.hjk",web_url:"https://test.com.com/nwpipe/u/130095"},st_diff:{a_mode:"100644",add_line_num:0,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:17959,del_line_num:1,deleted_file:!1,diff:"@@ -1,4 +1,3 @@\n-# TypeScript Node Starter\n > hello world typescript\n \n The main purpose of this repository is to show a working Node.js API Server + front-end project and workflow for writing Node code in TypeScript.\n",id:267,new_file:!1,new_path:"README.md",old_path:"README.md",renamed_file:!1,too_large:!1},state:"resolved",system:!1,type:"Problem",updated_at:"2021-05-20T14:27:46+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"jiankan.hjk@test.com",extern_uid:"130095",id:15319,name:"剑侃",state:"active",username:"jiankan.hjk",web_url:"https://test.com.com/nwpipe/u/130095"},commit_id:null,created_at:"2020-09-14T12:10:59+0800",discussion_id:20,id:76,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:null,note:"对对对\n对对对\n对对对\n对对对对对对\n\n\n\n\n\n\n对对对",noteable_id:1632,noteable_type:"ReviewComment",outdated:!1,path:null,resolved_at:null,resolved_by:null,st_diff:null,state:null,system:!1,type:"Comment",updated_at:"2020-09-14T12:10:59+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"jiankan.hjk@test.com",extern_uid:"130095",id:15319,name:"剑侃",state:"active",username:"jiankan.hjk",web_url:"https://test.com.com/nwpipe/u/130095"},commit_id:null,created_at:"2020-09-14T12:10:40+0800",discussion_id:20,id:75,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:null,note:"@jiankan.hjk(剑侃) ",noteable_id:1632,noteable_type:"ReviewComment",outdated:!1,path:null,resolved_at:null,resolved_by:null,st_diff:null,state:null,system:!1,type:"Comment",updated_at:"2020-09-14T12:10:40+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"jiankan.hjk@test.com",extern_uid:"130095",id:15319,name:"剑侃",state:"active",username:"jiankan.hjk",web_url:"https://test.com.com/nwpipe/u/130095"},commit_id:null,created_at:"2020-09-09T11:22:29+0800",discussion_id:null,id:61,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:49,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:49,deleted_file:!1,diff:'@@ -3,73 +3,73 @@ import crypto from "crypto";\n import mongoose from "mongoose";\n \n',id:1089,new_file:!1,new_path:"src/models/User.ts",old_path:"src/models/User.ts",renamed_file:!1,too_large:!1},line_code:"e9bf216a20e84ee797b9402193000e41dad21aa6_4_4",line_type:"old",note:"test",noteable_id:1632,noteable_type:"ReviewComment",outdated:!1,path:"src/models/User.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:49,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:17641,del_line_num:49,deleted_file:!1,diff:'@@ -3,73 +3,73 @@ import crypto from "crypto";\n import mongoose from "mongoose";\n \n',id:48,new_file:!1,new_path:"src/models/User.ts",old_path:"src/models/User.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"jiankan.hjk@test.com",extern_uid:"130095",id:15319,name:"剑侃",state:"active",username:"jiankan.hjk",web_url:"https://test.com.com/nwpipe/u/130095"},commit_id:null,created_at:"2020-09-09T10:12:09+0800",discussion_id:null,id:60,is_award:!1,labels:[],latest_st_diff:{a_mode:"0",add_line_num:12,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:0,deleted_file:!1,diff:'@@ -0,0 +1,12 @@\n+{\n+ "name": "aaa",\n',id:1079,new_file:!0,new_path:"aaa/package.json",old_path:"aaa/package.json",renamed_file:!1,too_large:!1},line_code:"a1cd6d42683feafb8bafa3c3c68369f59d3013e6_0_2",line_type:"new",note:"测试",noteable_id:1632,noteable_type:"ReviewComment",outdated:!1,path:"aaa/package.json",resolved_at:null,resolved_by:null,st_diff:{a_mode:"0",add_line_num:12,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:17641,del_line_num:0,deleted_file:!1,diff:'@@ -0,0 +1,12 @@\n+{\n+ "name": "aaa",\n',id:45,new_file:!0,new_path:"aaa/package.json",old_path:"aaa/package.json",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"jiankan.hjk@test.com",extern_uid:"130095",id:15319,name:"剑侃",state:"active",username:"jiankan.hjk",web_url:"https://test.com.com/nwpipe/u/130095"},commit_id:null,created_at:"2020-09-08T10:21:29+0800",discussion_id:null,id:57,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:49,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:49,deleted_file:!1,diff:'@@ -3,73 +3,73 @@ import crypto from "crypto";\n import mongoose from "mongoose";\n \n export type UserDocument = mongoose.Document & {\n- email: string;\n- password: string;\n- passwordResetToken: string;\n- passwordResetExpires: Date;\n+ email: string;\n',id:1089,new_file:!1,new_path:"src/models/User.ts",old_path:"src/models/User.ts",renamed_file:!1,too_large:!1},line_code:"e9bf216a20e84ee797b9402193000e41dad21aa6_7_6",line_type:"old",note:"# test\n# test\n# test\n# test\n# test\n# test\n# test\n# test\n# test\n# test\n# test",noteable_id:1632,noteable_type:"ReviewComment",outdated:!1,path:"src/models/User.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:49,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:17605,del_line_num:49,deleted_file:!1,diff:'@@ -3,73 +3,73 @@ import crypto from "crypto";\n import mongoose from "mongoose";\n \n export type UserDocument = mongoose.Document & {\n- email: string;\n- password: string;\n- passwordResetToken: string;\n- passwordResetExpires: Date;\n+ email: string;\n',id:491,new_file:!1,new_path:"src/models/User.ts",old_path:"src/models/User.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"jiankan.hjk@test.com",extern_uid:"130095",id:15319,name:"剑侃",state:"active",username:"jiankan.hjk",web_url:"https://test.com.com/nwpipe/u/130095"},commit_id:null,created_at:"2020-09-08T00:32:18+0800",discussion_id:null,id:56,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:7,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:7,deleted_file:!1,diff:'@@ -1,18 +1,18 @@\n import winston from "winston";\n \n const options: winston.LoggerOptions = {\n- transports: [\n- new winston.transports.Console({\n- level: process.env.NODE_ENV === "production" ? "error" : "debug"\n- }),\n- new winston.transports.File({ filename: "debug.log", level: "debug" })\n- ]\n+ transports: [\n',id:1092,new_file:!1,new_path:"src/util/logger.ts",old_path:"src/util/logger.ts",renamed_file:!1,too_large:!1},line_code:"bd5630fadbfeb531e34aa7539e6a12a247f8b0c6_9_4",line_type:"old",note:"第二条",noteable_id:1632,noteable_type:"ReviewComment",outdated:!1,path:"src/util/logger.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:7,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:17605,del_line_num:7,deleted_file:!1,diff:'@@ -1,18 +1,18 @@\n import winston from "winston";\n \n const options: winston.LoggerOptions = {\n- transports: [\n- new winston.transports.Console({\n- level: process.env.NODE_ENV === "production" ? "error" : "debug"\n- }),\n- new winston.transports.File({ filename: "debug.log", level: "debug" })\n- ]\n+ transports: [\n',id:494,new_file:!1,new_path:"src/util/logger.ts",old_path:"src/util/logger.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"jiankan.hjk@test.com",extern_uid:"130095",id:15319,name:"剑侃",state:"active",username:"jiankan.hjk",web_url:"https://test.com.com/nwpipe/u/130095"},commit_id:null,created_at:"2020-09-08T00:15:45+0800",discussion_id:null,id:55,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:7,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:7,deleted_file:!1,diff:'@@ -1,18 +1,18 @@\n import winston from "winston";\n \n const options: winston.LoggerOptions = {\n- transports: [\n- new winston.transports.Console({\n- level: process.env.NODE_ENV === "production" ? "error" : "debug"\n- }),\n- new winston.transports.File({ filename: "debug.log", level: "debug" })\n- ]\n+ transports: [\n',id:1092,new_file:!1,new_path:"src/util/logger.ts",old_path:"src/util/logger.ts",renamed_file:!1,too_large:!1},line_code:"bd5630fadbfeb531e34aa7539e6a12a247f8b0c6_9_4",line_type:"old",note:"> h\n# test\n## test\n### test\n#### test\ntest\n @huaqiao.lhq(常浅) ",noteable_id:1632,noteable_type:"ReviewComment",outdated:!1,path:"src/util/logger.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:7,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:17605,del_line_num:7,deleted_file:!1,diff:'@@ -1,18 +1,18 @@\n import winston from "winston";\n \n const options: winston.LoggerOptions = {\n- transports: [\n- new winston.transports.Console({\n- level: process.env.NODE_ENV === "production" ? "error" : "debug"\n- }),\n- new winston.transports.File({ filename: "debug.log", level: "debug" })\n- ]\n+ transports: [\n',id:494,new_file:!1,new_path:"src/util/logger.ts",old_path:"src/util/logger.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"jiankan.hjk@test.com",extern_uid:"130095",id:15319,name:"剑侃",state:"active",username:"jiankan.hjk",web_url:"https://test.com.com/nwpipe/u/130095"},commit_id:null,created_at:"2020-09-07T17:01:37+0800",discussion_id:null,id:54,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:49,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:49,deleted_file:!1,diff:'@@ -3,73 +3,73 @@ import crypto from "crypto";\n import mongoose from "mongoose";\n \n export type UserDocument = mongoose.Document & {\n- email: string;\n- password: string;\n- passwordResetToken: string;\n- passwordResetExpires: Date;\n+ email: string;\n+ password: string;\n+ passwordResetToken: string;\n+ passwordResetExpires: Date;\n \n- facebook: string;\n- tokens: AuthToken[];\n+ facebook: string;\n+ tokens: AuthToken[];\n \n- profile: {\n- name: string;\n- gender: string;\n- location: string;\n- website: string;\n- picture: string;\n- };\n+ profile: {\n+ name: string;\n+ gender: string;\n+ location: string;\n+ website: string;\n+ picture: string;\n+ };\n \n- comparePassword: comparePasswordFunction;\n- gravatar: (size: number) => string;\n+ comparePassword: comparePasswordFunction;\n+ gravatar: (size: number) => string;\n };\n \n type comparePasswordFunction = (candidatePassword: string, cb: (err: any, isMatch: any) => {}) => void;\n \n export interface AuthToken {\n- accessToken: string;\n- kind: string;\n+ accessToken: string;\n+ kind: string;\n }\n \n const userSchema = new mongoose.Schema({\n- email: { type: String, unique: true },\n- password: String,\n- passwordResetToken: String,\n- passwordResetExpires: Date,\n+ email: { type: String, unique: true },\n+ password: String,\n+ passwordResetToken: String,\n+ passwordResetExpires: Date,\n \n- facebook: String,\n- twitter: String,\n- google: String,\n- tokens: Array,\n+ facebook: String,\n+ twitter: String,\n+ google: String,\n+ tokens: Array,\n \n- profile: {\n- name: String,\n- gender: String,\n- location: String,\n- website: String,\n- picture: String\n- }\n+ profile: {\n+ name: String,\n+ gender: String,\n+ location: String,\n+ website: String,\n+ picture: String\n+ }\n }, { timestamps: true });\n \n /**\n * Password hash middleware.\n */\n userSchema.pre("save", function save(next) {\n- const user = this as UserDocument;\n- if (!user.isModified("password")) { return next(); }\n- bcrypt.genSalt(10, (err, salt) => {\n- if (err) { return next(err); }\n- bcrypt.hash(user.password, salt, undefined, (err: mongoose.Error, hash) => {\n- if (err) { return next(err); }\n- user.password = hash;\n- next();\n- });\n+ const user = this as UserDocument;\n',id:1089,new_file:!1,new_path:"src/models/User.ts",old_path:"src/models/User.ts",renamed_file:!1,too_large:!1},line_code:"e9bf216a20e84ee797b9402193000e41dad21aa6_57_57",line_type:"old",note:"测试一下",noteable_id:1632,noteable_type:"ReviewComment",outdated:!1,path:"src/models/User.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:49,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:17605,del_line_num:49,deleted_file:!1,diff:'@@ -3,73 +3,73 @@ import crypto from "crypto";\n import mongoose from "mongoose";\n \n export type UserDocument = mongoose.Document & {\n- email: string;\n- password: string;\n- passwordResetToken: string;\n- passwordResetExpires: Date;\n+ email: string;\n+ password: string;\n+ passwordResetToken: string;\n+ passwordResetExpires: Date;\n \n- facebook: string;\n- tokens: AuthToken[];\n+ facebook: string;\n+ tokens: AuthToken[];\n \n- profile: {\n- name: string;\n- gender: string;\n- location: string;\n- website: string;\n- picture: string;\n- };\n+ profile: {\n+ name: string;\n+ gender: string;\n+ location: string;\n+ website: string;\n+ picture: string;\n+ };\n \n- comparePassword: comparePasswordFunction;\n- gravatar: (size: number) => string;\n+ comparePassword: comparePasswordFunction;\n+ gravatar: (size: number) => string;\n };\n \n type comparePasswordFunction = (candidatePassword: string, cb: (err: any, isMatch: any) => {}) => void;\n \n export interface AuthToken {\n- accessToken: string;\n- kind: string;\n+ accessToken: string;\n+ kind: string;\n }\n \n const userSchema = new mongoose.Schema({\n- email: { type: String, unique: true },\n- password: String,\n- passwordResetToken: String,\n- passwordResetExpires: Date,\n+ email: { type: String, unique: true },\n+ password: String,\n+ passwordResetToken: String,\n+ passwordResetExpires: Date,\n \n- facebook: String,\n- twitter: String,\n- google: String,\n- tokens: Array,\n+ facebook: String,\n+ twitter: String,\n+ google: String,\n+ tokens: Array,\n \n- profile: {\n- name: String,\n- gender: String,\n- location: String,\n- website: String,\n- picture: String\n- }\n+ profile: {\n+ name: String,\n+ gender: String,\n+ location: String,\n+ website: String,\n+ picture: String\n+ }\n }, { timestamps: true });\n \n /**\n * Password hash middleware.\n */\n userSchema.pre("save", function save(next) {\n- const user = this as UserDocument;\n- if (!user.isModified("password")) { return next(); }\n- bcrypt.genSalt(10, (err, salt) => {\n- if (err) { return next(err); }\n- bcrypt.hash(user.password, salt, undefined, (err: mongoose.Error, hash) => {\n- if (err) { return next(err); }\n- user.password = hash;\n- next();\n- });\n+ const user = this as UserDocument;\n',id:491,new_file:!1,new_path:"src/models/User.ts",old_path:"src/models/User.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"jiankan.hjk@test.com",extern_uid:"130095",id:15319,name:"剑侃",state:"active",username:"jiankan.hjk",web_url:"https://test.com.com/nwpipe/u/130095"},commit_id:null,created_at:"2020-09-07T16:18:00+0800",discussion_id:null,id:52,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:4,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:4,deleted_file:!1,diff:'@@ -66,7 +66,7 @@ passport.use(new FacebookStrategy({\n callbackURL: "/auth/facebook/callback",\n',id:1087,new_file:!1,new_path:"src/config/passport.ts",old_path:"src/config/passport.ts",renamed_file:!1,too_large:!1},line_code:"761e3f18c863ddeee900bf74ddd8fed56a4aa2c9_0_38",line_type:"old",note:"测试",noteable_id:1632,noteable_type:"ReviewComment",outdated:!1,path:"src/config/passport.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:4,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:17605,del_line_num:4,deleted_file:!1,diff:'@@ -66,7 +66,7 @@ passport.use(new FacebookStrategy({\n callbackURL: "/auth/facebook/callback",\n',id:489,new_file:!1,new_path:"src/config/passport.ts",old_path:"src/config/passport.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-05-20T14:27:46+0800"}],updated_at:"2020-09-16T11:52:52+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"jiankan.hjk@test.com",extern_uid:"130095",id:15319,name:"剑侃",state:"active",username:"jiankan.hjk",web_url:"https://test.com.com/nwpipe/u/130095"},body:null,created_at:"2020-11-16T19:37:52+08:00",id:1765,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"guqiankun.gqk@test.com",extern_uid:"354626",id:5600024,name:"轻游",state:"active",username:"guqiankun.gqk",web_url:"https://test.com.com/nwpipe/u/354626"},commit_id:null,created_at:"2022-01-26T11:01:53+0800",discussion_id:176,id:500030,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:null,note:"Problem status changed to resolved",noteable_id:1765,noteable_type:"ReviewComment",outdated:!1,path:null,resolved_at:null,resolved_by:null,st_diff:null,state:null,system:!0,type:"Comment",updated_at:"2022-01-26T11:01:53+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"guqiankun.gqk@test.com",extern_uid:"354626",id:5600024,name:"轻游",state:"active",username:"guqiankun.gqk",web_url:"https://test.com.com/nwpipe/u/354626"},commit_id:null,created_at:"2022-01-25T15:52:22+0800",discussion_id:176,id:500023,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:null,note:"Problem status changed to opened",noteable_id:1765,noteable_type:"ReviewComment",outdated:!1,path:null,resolved_at:null,resolved_by:null,st_diff:null,state:null,system:!0,type:"Comment",updated_at:"2022-01-25T15:52:22+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"taian.lta@test.com",extern_uid:"146194",id:15165,name:"伊北",state:"active",username:"taian.lta",web_url:"https://test.com.com/nwpipe/u/146194"},commit_id:null,created_at:"2020-11-26T11:23:06+0800",discussion_id:176,id:185,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:null,note:"Problem status changed to resolved",noteable_id:1765,noteable_type:"ReviewComment",outdated:!1,path:null,resolved_at:null,resolved_by:null,st_diff:null,state:null,system:!0,type:"Comment",updated_at:"2020-11-26T11:23:06+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"jiankan.hjk@test.com",extern_uid:"130095",id:15319,name:"剑侃",state:"active",username:"jiankan.hjk",web_url:"https://test.com.com/nwpipe/u/130095"},commit_id:null,created_at:"2020-11-16T19:37:53+0800",discussion_id:null,id:176,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:0,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:1,deleted_file:!1,diff:"@@ -1,4 +1,3 @@\n-# TypeScript Node Starter\n > hello world typescript\n \n The main purpose of this repository is to show a working Node.js API Server + front-end project and workflow for writing Node code in TypeScript.\n",id:1075,new_file:!1,new_path:"README.md",old_path:"README.md",renamed_file:!1,too_large:!1},line_code:"8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d_5_4",line_type:"old",note:"测试",noteable_id:1765,noteable_type:"ReviewComment",outdated:!1,path:"README.md",resolved_at:"2022-01-26T11:01:53+08:00",resolved_by:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"guqiankun.gqk@test.com",extern_uid:"354626",id:5600024,name:"轻游",state:"active",username:"guqiankun.gqk",web_url:"https://test.com.com/nwpipe/u/354626"},st_diff:{a_mode:"100644",add_line_num:0,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:1,deleted_file:!1,diff:"@@ -1,4 +1,3 @@\n-# TypeScript Node Starter\n > hello world typescript\n \n The main purpose of this repository is to show a working Node.js API Server + front-end project and workflow for writing Node code in TypeScript.\n",id:1075,new_file:!1,new_path:"README.md",old_path:"README.md",renamed_file:!1,too_large:!1},state:"resolved",system:!1,type:"Problem",updated_at:"2021-05-20T14:27:46+0800"}],updated_at:"2020-11-17T10:31:07+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"winjo.gwj@test.com",extern_uid:"190046",id:15346,name:"彦熹",state:"active",username:"winjo.gwj",web_url:"https://test.com.com/nwpipe/u/190046"},body:null,created_at:"2020-11-12T15:29:34+08:00",id:1759,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"winjo.gwj@test.com",extern_uid:"190046",id:15346,name:"彦熹",state:"active",username:"winjo.gwj",web_url:"https://test.com.com/nwpipe/u/190046"},commit_id:null,created_at:"2021-07-22T17:21:21+0800",discussion_id:null,id:200002,is_award:!1,labels:[],latest_st_diff:{a_mode:"0",add_line_num:12,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:0,deleted_file:!1,diff:'@@ -0,0 +1,12 @@\n+{\n+ "name": "aaa",\n+ "version": "1.0.0",\n+ "description": "",\n+ "main": "index.js",\n',id:1079,new_file:!0,new_path:"aaa/package.json",old_path:"aaa/package.json",renamed_file:!1,too_large:!1},line_code:"a1cd6d42683feafb8bafa3c3c68369f59d3013e6_0_5",line_type:"new",note:"测试下",noteable_id:1759,noteable_type:"ReviewComment",outdated:!1,path:"aaa/package.json",resolved_at:null,resolved_by:null,st_diff:{a_mode:"0",add_line_num:12,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:0,deleted_file:!1,diff:'@@ -0,0 +1,12 @@\n+{\n+ "name": "aaa",\n+ "version": "1.0.0",\n+ "description": "",\n+ "main": "index.js",\n',id:1079,new_file:!0,new_path:"aaa/package.json",old_path:"aaa/package.json",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-07-22T17:21:21+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"winjo.gwj@test.com",extern_uid:"190046",id:15346,name:"彦熹",state:"active",username:"winjo.gwj",web_url:"https://test.com.com/nwpipe/u/190046"},commit_id:null,created_at:"2020-11-12T15:29:34+0800",discussion_id:null,id:171,is_award:!1,labels:[],latest_st_diff:{a_mode:"100644",add_line_num:0,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:1,deleted_file:!1,diff:"@@ -1,4 +1,3 @@\n-# TypeScript Node Starter\n > hello world typescript\n \n The main purpose of this repository is to show a working Node.js API Server + front-end project and workflow for writing Node code in TypeScript.\n",id:1075,new_file:!1,new_path:"README.md",old_path:"README.md",renamed_file:!1,too_large:!1},line_code:"8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d_6_4",line_type:"old",note:"test",noteable_id:1759,noteable_type:"ReviewComment",outdated:!0,path:"README.md",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:0,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"ac55c77aa72d49280058ed6054610f454ee694b1",compare_diff_id:20699,del_line_num:1,deleted_file:!1,diff:"@@ -1,4 +1,3 @@\n-# TypeScript Node Starter\n > hello world typescript\n \n The main purpose of this repository is to show a working Node.js API Server + front-end project and workflow for writing Node code in TypeScript.\n",id:550,new_file:!1,new_path:"README.md",old_path:"README.md",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2020-11-12T15:29:34+0800"}],updated_at:"2021-07-22T17:21:24+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"winjo.gwj@test.com",extern_uid:"190046",id:15346,name:"彦熹",state:"active",username:"winjo.gwj",web_url:"https://test.com.com/nwpipe/u/190046"},body:null,created_at:"2021-07-22T17:21:53+08:00",id:2100002,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"winjo.gwj@test.com",extern_uid:"190046",id:15346,name:"彦熹",state:"active",username:"winjo.gwj",web_url:"https://test.com.com/nwpipe/u/190046"},commit_id:null,created_at:"2021-07-23T16:22:54+0800",discussion_id:null,id:300003,is_award:!1,labels:["LackOfJavaBase"],latest_st_diff:{a_mode:"100644",add_line_num:4,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:4,deleted_file:!1,diff:'@@ -4,7 +4,7 @@ import passportFacebook from "passport-facebook";\n import _ from "lodash";\n \n // import { User, UserType } from \'../models/User\';\n-import { User, UserDocument } from "../models/User";\n+import { User, UserDocument } from "../models/User"\n import { Request, Response, NextFunction } from "express";\n \n const LocalStrategy = passportLocal.Strategy;\n',id:1087,new_file:!1,new_path:"src/config/passport.ts",old_path:"src/config/passport.ts",renamed_file:!1,too_large:!1},line_code:"761e3f18c863ddeee900bf74ddd8fed56a4aa2c9_10_10",line_type:"old",note:"test",noteable_id:2100002,noteable_type:"ReviewComment",outdated:!1,path:"src/config/passport.ts",resolved_at:null,resolved_by:null,st_diff:{a_mode:"100644",add_line_num:4,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:4,deleted_file:!1,diff:'@@ -4,7 +4,7 @@ import passportFacebook from "passport-facebook";\n import _ from "lodash";\n \n // import { User, UserType } from \'../models/User\';\n-import { User, UserDocument } from "../models/User";\n+import { User, UserDocument } from "../models/User"\n import { Request, Response, NextFunction } from "express";\n \n const LocalStrategy = passportLocal.Strategy;\n',id:1087,new_file:!1,new_path:"src/config/passport.ts",old_path:"src/config/passport.ts",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2021-07-23T16:22:54+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"winjo.gwj@test.com",extern_uid:"190046",id:15346,name:"彦熹",state:"active",username:"winjo.gwj",web_url:"https://test.com.com/nwpipe/u/190046"},commit_id:null,created_at:"2021-07-23T16:22:44+0800",discussion_id:60,id:300002,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:null,note:"666",noteable_id:2100002,noteable_type:"ReviewComment",outdated:!1,path:null,resolved_at:null,resolved_by:null,st_diff:null,state:null,system:!1,type:"Comment",updated_at:"2021-07-23T16:22:44+0800"}],updated_at:"2021-07-23T16:23:01+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"guqiankun.gqk@test.com",extern_uid:"354626",id:5600024,name:"轻游",state:"active",username:"guqiankun.gqk",web_url:"https://test.com.com/nwpipe/u/354626"},body:null,created_at:"2022-01-19T15:20:27+08:00",id:4700002,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"guqiankun.gqk@test.com",extern_uid:"354626",id:5600024,name:"轻游",state:"active",username:"guqiankun.gqk",web_url:"https://test.com.com/nwpipe/u/354626"},commit_id:null,created_at:"2022-01-19T15:21:02+0800",discussion_id:null,id:500004,is_award:!1,labels:[],latest_st_diff:{a_mode:"0",add_line_num:12,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:0,deleted_file:!1,diff:'@@ -0,0 +1,12 @@\n+{\n+ "name": "aaa",\n+ "version": "1.0.0",\n+ "description": "",\n+ "main": "index.js",\n+ "scripts": {\n+ "test": "echo \\"Error: no test specified\\" && exit 1"\n+ },\n+ "keywords": [],\n',id:1079,new_file:!0,new_path:"aaa/package.json",old_path:"aaa/package.json",renamed_file:!1,too_large:!1},line_code:"a1cd6d42683feafb8bafa3c3c68369f59d3013e6_0_9",line_type:"new",note:"333",noteable_id:4700002,noteable_type:"ReviewComment",outdated:!1,path:"aaa/package.json",resolved_at:null,resolved_by:null,st_diff:{a_mode:"0",add_line_num:12,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:0,deleted_file:!1,diff:'@@ -0,0 +1,12 @@\n+{\n+ "name": "aaa",\n+ "version": "1.0.0",\n+ "description": "",\n+ "main": "index.js",\n+ "scripts": {\n+ "test": "echo \\"Error: no test specified\\" && exit 1"\n+ },\n+ "keywords": [],\n',id:1079,new_file:!0,new_path:"aaa/package.json",old_path:"aaa/package.json",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2022-01-19T15:21:02+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"guqiankun.gqk@test.com",extern_uid:"354626",id:5600024,name:"轻游",state:"active",username:"guqiankun.gqk",web_url:"https://test.com.com/nwpipe/u/354626"},commit_id:null,created_at:"2022-01-19T15:20:44+0800",discussion_id:null,id:500003,is_award:!1,labels:[],latest_st_diff:{a_mode:"0",add_line_num:12,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:0,deleted_file:!1,diff:'@@ -0,0 +1,12 @@\n+{\n+ "name": "aaa",\n+ "version": "1.0.0",\n+ "description": "",\n+ "main": "index.js",\n+ "scripts": {\n+ "test": "echo \\"Error: no test specified\\" && exit 1"\n',id:1079,new_file:!0,new_path:"aaa/package.json",old_path:"aaa/package.json",renamed_file:!1,too_large:!1},line_code:"a1cd6d42683feafb8bafa3c3c68369f59d3013e6_0_7",line_type:"new",note:"222",noteable_id:4700002,noteable_type:"ReviewComment",outdated:!1,path:"aaa/package.json",resolved_at:null,resolved_by:null,st_diff:{a_mode:"0",add_line_num:12,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:0,deleted_file:!1,diff:'@@ -0,0 +1,12 @@\n+{\n+ "name": "aaa",\n+ "version": "1.0.0",\n+ "description": "",\n+ "main": "index.js",\n+ "scripts": {\n+ "test": "echo \\"Error: no test specified\\" && exit 1"\n',id:1079,new_file:!0,new_path:"aaa/package.json",old_path:"aaa/package.json",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2022-01-19T15:20:44+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"guqiankun.gqk@test.com",extern_uid:"354626",id:5600024,name:"轻游",state:"active",username:"guqiankun.gqk",web_url:"https://test.com.com/nwpipe/u/354626"},commit_id:null,created_at:"2022-01-19T15:20:28+0800",discussion_id:null,id:500002,is_award:!1,labels:[],latest_st_diff:{a_mode:"0",add_line_num:12,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:0,deleted_file:!1,diff:'@@ -0,0 +1,12 @@\n+{\n+ "name": "aaa",\n+ "version": "1.0.0",\n+ "description": "",\n+ "main": "index.js",\n',id:1079,new_file:!0,new_path:"aaa/package.json",old_path:"aaa/package.json",renamed_file:!1,too_large:!1},line_code:"a1cd6d42683feafb8bafa3c3c68369f59d3013e6_0_5",line_type:"new",note:"111",noteable_id:4700002,noteable_type:"ReviewComment",outdated:!1,path:"aaa/package.json",resolved_at:null,resolved_by:null,st_diff:{a_mode:"0",add_line_num:12,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:"87ed08a7245161fc9675981be01a6effe661b803",compare_diff_id:31918,del_line_num:0,deleted_file:!1,diff:'@@ -0,0 +1,12 @@\n+{\n+ "name": "aaa",\n+ "version": "1.0.0",\n+ "description": "",\n+ "main": "index.js",\n',id:1079,new_file:!0,new_path:"aaa/package.json",old_path:"aaa/package.json",renamed_file:!1,too_large:!1},state:null,system:!1,type:"Comment",updated_at:"2022-01-19T15:20:28+0800"}],updated_at:"2022-01-19T15:22:55+08:00"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"guqiankun.gqk@test.com",extern_uid:"354626",id:5600024,name:"轻游",state:"active",username:"guqiankun.gqk",web_url:"https://test.com.com/nwpipe/u/354626"},body:null,created_at:"2022-01-26T02:16:02+08:00",id:4700010,pending:!1,pull_request_id:13055,review_notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"guqiankun.gqk@test.com",extern_uid:"354626",id:5600024,name:"轻游",state:"active",username:"guqiankun.gqk",web_url:"https://test.com.com/nwpipe/u/354626"},commit_id:null,created_at:"2022-01-26T11:01:34+0800",discussion_id:176,id:500029,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:null,note:'> \x3c!-- reply id="176" --\x3e\n> 测试\n\n123',noteable_id:4700010,noteable_type:"ReviewComment",outdated:!1,path:null,resolved_at:null,resolved_by:null,st_diff:null,state:null,system:!1,type:"Comment",updated_at:"2022-01-26T11:01:34+0800"}],updated_at:"2022-01-26T11:01:39+08:00"}],notes:[{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"taian.lta@test.com",extern_uid:"146194",id:15165,name:"伊北",state:"active",username:"taian.lta",web_url:"https://test.com.com/nwpipe/u/146194"},commit_id:null,created_at:"2020-10-12T18:54:04+0800",discussion_id:null,id:121,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:null,note:"[Force Push] To feat/123123 Of commit: daa3e131 - fix: li in pr desc",noteable_id:13055,noteable_type:"PullRequest",outdated:!1,path:null,resolved_at:null,resolved_by:null,st_diff:null,state:null,system:!0,type:"Comment",updated_at:"2020-10-12T18:54:04+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"taian.lta@test.com",extern_uid:"146194",id:15165,name:"伊北",state:"active",username:"taian.lta",web_url:"https://test.com.com/nwpipe/u/146194"},commit_id:null,created_at:"2020-10-12T18:54:04+0800",discussion_id:null,id:120,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:null,note:"review tasks reopened",noteable_id:13055,noteable_type:"PullRequest",outdated:!1,path:null,resolved_at:null,resolved_by:null,st_diff:null,state:null,system:!0,type:"Comment",updated_at:"2020-10-12T18:54:04+0800"},{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"taian.lta@test.com",extern_uid:"146194",id:15165,name:"伊北",state:"active",username:"taian.lta",web_url:"https://test.com.com/nwpipe/u/146194"},commit_id:null,created_at:"2020-10-12T18:52:43+0800",discussion_id:null,id:117,is_award:!1,labels:[],latest_st_diff:null,line_code:null,line_type:null,note:"Added 2 commits:\n\n* 0cee41f8 - feat: 123\n* 46e1c30f - 123",noteable_id:13055,noteable_type:"PullRequest",outdated:!1,path:null,resolved_at:null,resolved_by:null,st_diff:null,state:null,system:!0,type:"Comment",updated_at:"2020-10-12T18:52:43+0800"}],pending_review:null},"/api/v3/projects/42422/pull_requests/13055/diffs/mark_files":[{file_path_sha:"8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d",mark_as_read:!0,updated_after_read:!1},{file_path_sha:"a1cd6d42683feafb8bafa3c3c68369f59d3013e6",mark_as_read:!0,updated_after_read:!1}],"/webapi/projects/42422/pull_requests/13055/diffs/31918/changes_overview":[{a_mode:"100644",add_line_num:0,b_mode:"100644",binary_file:!1,compare_diff_id:31918,del_line_num:1,deleted_file:!1,id:1075,mark_as_read:!0,new_file:!1,new_path:"README.md",old_path:"README.md",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"0",add_line_num:1,b_mode:"100644",binary_file:!1,compare_diff_id:31918,del_line_num:0,deleted_file:!1,id:1076,mark_as_read:!1,new_file:!0,new_path:"a.md",old_path:"a.md",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"0",add_line_num:228,b_mode:"100644",binary_file:!1,compare_diff_id:31918,del_line_num:0,deleted_file:!1,id:1077,mark_as_read:!1,new_file:!0,new_path:"a.ts",old_path:"a.ts",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"0",add_line_num:1,b_mode:"100644",binary_file:!1,compare_diff_id:31918,del_line_num:0,deleted_file:!1,id:1078,mark_as_read:!1,new_file:!0,new_path:"aa.md",old_path:"aa.md",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"0",add_line_num:12,b_mode:"100644",binary_file:!1,compare_diff_id:31918,del_line_num:0,deleted_file:!1,id:1079,mark_as_read:!0,new_file:!0,new_path:"aaa/package.json",old_path:"aaa/package.json",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"0",add_line_num:0,b_mode:"100644",binary_file:!1,compare_diff_id:31918,del_line_num:0,deleted_file:!1,id:1080,mark_as_read:!1,new_file:!0,new_path:"apiMeta.json",old_path:"apiMeta.json",renamed_file:!1,too_large:!0,updated_after_read:!1},{a_mode:"0",add_line_num:0,b_mode:"100644",binary_file:!0,compare_diff_id:31918,del_line_num:0,deleted_file:!1,id:1081,mark_as_read:!1,new_file:!0,new_path:"assets/logo_white.gif",old_path:"assets/logo_white.gif",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"100644",add_line_num:0,b_mode:"100644",binary_file:!1,compare_diff_id:31918,del_line_num:0,deleted_file:!1,id:1082,mark_as_read:!1,new_file:!1,new_path:"assets/斋藤飞鸟1.jpg",old_path:"assets/斋藤飞鸟.jpg",renamed_file:!0,too_large:!1,updated_after_read:!1},{a_mode:"0",add_line_num:0,b_mode:"100644",binary_file:!1,compare_diff_id:31918,del_line_num:0,deleted_file:!1,id:1083,mark_as_read:!1,new_file:!0,new_path:"b.md",old_path:"b.md",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"0",add_line_num:3,b_mode:"100644",binary_file:!1,compare_diff_id:31918,del_line_num:0,deleted_file:!1,id:1084,mark_as_read:!1,new_file:!0,new_path:"gbk.ts",old_path:"gbk.ts",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"0",add_line_num:12,b_mode:"100644",binary_file:!1,compare_diff_id:31918,del_line_num:0,deleted_file:!1,id:1085,mark_as_read:!1,new_file:!0,new_path:"hk-cdp_ALL_api#space#info#popUp.json",old_path:"hk-cdp_ALL_api#space#info#popUp.json",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"0",add_line_num:168,b_mode:"100644",binary_file:!1,compare_diff_id:31918,del_line_num:0,deleted_file:!1,id:1086,mark_as_read:!1,new_file:!0,new_path:"pom.xml",old_path:"pom.xml",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"100644",add_line_num:4,b_mode:"100644",binary_file:!1,compare_diff_id:31918,del_line_num:4,deleted_file:!1,id:1087,mark_as_read:!1,new_file:!1,new_path:"src/config/passport.ts",old_path:"src/config/passport.ts",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,compare_diff_id:31918,del_line_num:265,deleted_file:!1,id:1088,mark_as_read:!1,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"100644",add_line_num:49,b_mode:"100644",binary_file:!1,compare_diff_id:31918,del_line_num:49,deleted_file:!1,id:1089,mark_as_read:!1,new_file:!1,new_path:"src/models/User.ts",old_path:"src/models/User.ts",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"100644",add_line_num:0,b_mode:"100644",binary_file:!1,compare_diff_id:31918,del_line_num:1,deleted_file:!1,id:1090,mark_as_read:!1,new_file:!1,new_path:"src/public/css/main.scss",old_path:"src/public/css/main.scss",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"100644",add_line_num:1,b_mode:"100644",binary_file:!1,compare_diff_id:31918,del_line_num:1,deleted_file:!1,id:1091,mark_as_read:!1,new_file:!1,new_path:"src/server.ts",old_path:"src/server.ts",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"100644",add_line_num:7,b_mode:"100644",binary_file:!1,compare_diff_id:31918,del_line_num:7,deleted_file:!1,id:1092,mark_as_read:!1,new_file:!1,new_path:"src/util/logger.ts",old_path:"src/util/logger.ts",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"100644",add_line_num:0,b_mode:"0",binary_file:!1,compare_diff_id:31918,del_line_num:22,deleted_file:!0,id:1093,mark_as_read:!1,new_file:!1,new_path:"tsconfig.json",old_path:"tsconfig.json",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"100644",add_line_num:2,b_mode:"100644",binary_file:!1,compare_diff_id:31918,del_line_num:2,deleted_file:!1,id:1094,mark_as_read:!1,new_file:!1,new_path:"views/contact123.pug",old_path:"views/contact.pug",renamed_file:!0,too_large:!1,updated_after_read:!1},{a_mode:"100644",add_line_num:0,b_mode:"0",binary_file:!1,compare_diff_id:31918,del_line_num:27,deleted_file:!0,id:1095,mark_as_read:!1,new_file:!1,new_path:"views/home.pug",old_path:"views/home.pug",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"100644",add_line_num:0,b_mode:"100644",binary_file:!1,compare_diff_id:31918,del_line_num:0,deleted_file:!1,id:1096,mark_as_read:!1,new_file:!1,new_path:"views/partials/footer-renamed.pug",old_path:"views/partials/footer.pug",renamed_file:!0,too_large:!1,updated_after_read:!1}],"/api/v3/projects/42422/repository/blobs/df72e4d1c394af6d1c21cd042116f83a792fa8c6":'{\n"name": "bbb",\n"version": "2.0.0",\n"description": "",\n"main": "test.js",\n"scripts": {\n"test": "echo "Error: no test specified" && exit 1"\n},\n"keywords": [],\n"license": "ISC"\n}',"/api/v3/projects/42422/repository/blobs/87ed08a7245161fc9675981be01a6effe661b803":'{\n"name": "aaa",\n"version": "1.0.0",\n"description": "",\n"main": "index.js",\n"scripts": {\n"test": "echo "Error: no test specified" && exit 1"\n},\n"keywords": [],\n"author": "",\n"license": "ISC"\n}',"/webapi/projects/42422/pull_requests/13055/diffs/31918/changes/1079":{a_mode:"0",add_line_num:12,b_mode:"100644",binary_file:!1,charset_name:"UTF-8",commit_sha:null,compare_diff_id:31918,del_line_num:0,deleted_file:!1,diff:'@@ -0,0 +1,12 @@\n+{\n+ "name": "aaa",\n+ "version": "1.0.0",\n+ "description": "",\n+ "main": "index.js",\n+ "scripts": {\n+ "test": "echo \\"Error: no test specified\\" && exit 1"\n+ },\n+ "keywords": [],\n+ "author": "",\n+ "license": "ISC"\n+}\n',highlighted_diff:null,id:1079,new_file:!0,new_path:"aaa/package.json",old_path:"aaa/package.json",renamed_file:!1,too_large:!1},"/api/v3/projects/42422/pull_requests/13055/reviews":{author:{avatar_url:"https://img.alicdn.com/imgextra/i4/O1CN01tPoJQo20M1TueWZet_!!6000000006834-0-tps-80-80.jpg",email:"guqiankun.gqk@test.net",extern_uid:"354626",id:5600024,name:"轻游",state:"active",username:"guqiankun.gqk",web_url:" "},body:null,created_at:"2022-07-15T16:57:34.591+08:00",id:5100024,pending:!0,pull_request_id:12600136,updated_at:"2022-07-15T16:57:34.591+08:00"},"/webapi/projects/42422/pull_requests/13055/diffs/20699/changes_overview":[{a_mode:"100644",add_line_num:0,b_mode:"100644",binary_file:!1,compare_diff_id:20699,del_line_num:1,deleted_file:!1,id:550,mark_as_read:!0,new_file:!1,new_path:"README.md",old_path:"README.md",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"0",add_line_num:1,b_mode:"100644",binary_file:!1,compare_diff_id:20699,del_line_num:0,deleted_file:!1,id:551,mark_as_read:!1,new_file:!0,new_path:"a.md",old_path:"a.md",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"0",add_line_num:228,b_mode:"100644",binary_file:!1,compare_diff_id:20699,del_line_num:0,deleted_file:!1,id:552,mark_as_read:!1,new_file:!0,new_path:"a.ts",old_path:"a.ts",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"0",add_line_num:1,b_mode:"100644",binary_file:!1,compare_diff_id:20699,del_line_num:0,deleted_file:!1,id:553,mark_as_read:!1,new_file:!0,new_path:"aa.md",old_path:"aa.md",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"0",add_line_num:12,b_mode:"100644",binary_file:!1,compare_diff_id:20699,del_line_num:0,deleted_file:!1,id:554,mark_as_read:!0,new_file:!0,new_path:"aaa/package.json",old_path:"aaa/package.json",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"0",add_line_num:0,b_mode:"100644",binary_file:!1,compare_diff_id:20699,del_line_num:0,deleted_file:!1,id:555,mark_as_read:!1,new_file:!0,new_path:"apiMeta.json",old_path:"apiMeta.json",renamed_file:!1,too_large:!0,updated_after_read:!1},{a_mode:"0",add_line_num:0,b_mode:"100644",binary_file:!0,compare_diff_id:20699,del_line_num:0,deleted_file:!1,id:556,mark_as_read:!1,new_file:!0,new_path:"assets/logo_white.gif",old_path:"assets/logo_white.gif",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"100644",add_line_num:0,b_mode:"100644",binary_file:!1,compare_diff_id:20699,del_line_num:0,deleted_file:!1,id:557,mark_as_read:!1,new_file:!1,new_path:"assets/斋藤飞鸟1.jpg",old_path:"assets/斋藤飞鸟.jpg",renamed_file:!0,too_large:!1,updated_after_read:!1},{a_mode:"0",add_line_num:0,b_mode:"100644",binary_file:!1,compare_diff_id:20699,del_line_num:0,deleted_file:!1,id:558,mark_as_read:!1,new_file:!0,new_path:"b.md",old_path:"b.md",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"0",add_line_num:3,b_mode:"100644",binary_file:!1,compare_diff_id:20699,del_line_num:0,deleted_file:!1,id:559,mark_as_read:!1,new_file:!0,new_path:"gbk.ts",old_path:"gbk.ts",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"0",add_line_num:168,b_mode:"100644",binary_file:!1,compare_diff_id:20699,del_line_num:0,deleted_file:!1,id:560,mark_as_read:!1,new_file:!0,new_path:"pom.xml",old_path:"pom.xml",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"100644",add_line_num:4,b_mode:"100644",binary_file:!1,compare_diff_id:20699,del_line_num:4,deleted_file:!1,id:561,mark_as_read:!0,new_file:!1,new_path:"src/config/passport.ts",old_path:"src/config/passport.ts",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"100644",add_line_num:265,b_mode:"100644",binary_file:!1,compare_diff_id:20699,del_line_num:265,deleted_file:!1,id:562,mark_as_read:!1,new_file:!1,new_path:"src/controllers/user.ts",old_path:"src/controllers/user.ts",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"100644",add_line_num:49,b_mode:"100644",binary_file:!1,compare_diff_id:20699,del_line_num:49,deleted_file:!1,id:563,mark_as_read:!1,new_file:!1,new_path:"src/models/User.ts",old_path:"src/models/User.ts",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"100644",add_line_num:0,b_mode:"100644",binary_file:!1,compare_diff_id:20699,del_line_num:1,deleted_file:!1,id:564,mark_as_read:!1,new_file:!1,new_path:"src/public/css/main.scss",old_path:"src/public/css/main.scss",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"100644",add_line_num:1,b_mode:"100644",binary_file:!1,compare_diff_id:20699,del_line_num:1,deleted_file:!1,id:565,mark_as_read:!1,new_file:!1,new_path:"src/server.ts",old_path:"src/server.ts",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"100644",add_line_num:7,b_mode:"100644",binary_file:!1,compare_diff_id:20699,del_line_num:7,deleted_file:!1,id:566,mark_as_read:!1,new_file:!1,new_path:"src/util/logger.ts",old_path:"src/util/logger.ts",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"100644",add_line_num:0,b_mode:"0",binary_file:!1,compare_diff_id:20699,del_line_num:22,deleted_file:!0,id:567,mark_as_read:!1,new_file:!1,new_path:"tsconfig.json",old_path:"tsconfig.json",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"100644",add_line_num:2,b_mode:"100644",binary_file:!1,compare_diff_id:20699,del_line_num:2,deleted_file:!1,id:568,mark_as_read:!1,new_file:!1,new_path:"views/contact123.pug",old_path:"views/contact.pug",renamed_file:!0,too_large:!1,updated_after_read:!1},{a_mode:"100644",add_line_num:0,b_mode:"0",binary_file:!1,compare_diff_id:20699,del_line_num:27,deleted_file:!0,id:569,mark_as_read:!1,new_file:!1,new_path:"views/home.pug",old_path:"views/home.pug",renamed_file:!1,too_large:!1,updated_after_read:!1},{a_mode:"100644",add_line_num:0,b_mode:"100644",binary_file:!1,compare_diff_id:20699,del_line_num:0,deleted_file:!1,id:570,mark_as_read:!1,new_file:!1,new_path:"views/partials/footer-renamed.pug",old_path:"views/partials/footer.pug",renamed_file:!0,too_large:!1,updated_after_read:!1}],"/api/v3/projects/42422/repository/blame":[{commit:{author:null,author_email:"taian.lta@test.com",author_name:"taian.lta",authored_date:"2020-08-18T12:09:32+0800",committed_date:"2020-08-18T12:09:32+0800",committer:null,committer_email:"taian.lta@test.com",committer_name:"taian.lta",created_at:"2020-08-18T12:09:32+0800",id:"7c501a19ae4644814782622af41b72e0f65eaacd",message:" feat: 123",parent_ids:null,short_id:"7c501a19",title:" feat: 123",tree_hash:null},lines:[{current_number:1,effect_line:12,previous_number:1}]},{commit:{author:null,author_email:"taian.lta@test.com",author_name:"taian.lta",authored_date:"2020-08-18T12:09:32+0800",committed_date:"2020-08-18T12:09:32+0800",committer:null,committer_email:"taian.lta@test.com",committer_name:"taian.lta",created_at:"2020-08-18T12:09:32+0800",id:"7c501a19ae4644814782622af41b72e0f65eaacd2",message:" feat: 123",parent_ids:null,short_id:"7c501a19",title:" feat: 123",tree_hash:null},lines:[{current_number:15,effect_line:10,previous_number:1}]}]}}}]); \ No newline at end of file diff --git a/static/js/62.f7b22724.chunk.js b/static/js/62.f7b22724.chunk.js new file mode 100644 index 000000000..02db9e6d7 --- /dev/null +++ b/static/js/62.f7b22724.chunk.js @@ -0,0 +1 @@ +(this.webpackJsonp=this.webpackJsonp||[]).push([[62],{"0Cz8":function(e,t,n){var a=n("Xi7e"),r=n("ebwN"),o=n("e4Nc");e.exports=function(e,t){var n=this.__data__;if(n instanceof a){var i=n.__data__;if(!r||i.length<199)return i.push([e,t]),this.size=++n.size,this;n=this.__data__=new o(i)}return n.set(e,t),this.size=n.size,this}},"6sVZ":function(e,t){var n=Object.prototype;e.exports=function(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||n)}},"77Zs":function(e,t,n){var a=n("Xi7e");e.exports=function(){this.__data__=new a,this.size=0}},B8du:function(e,t){e.exports=function(){return!1}},BtkW:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var a=b(n("W9HT")),r=b(n("2/Rp")),o=b(n("CtXQ")),i=b(n("9yH6")),l=b(n("Vl3Y")),c=b(n("5rEg")),s=function(){function e(e,t){for(var n=0;n-1)return void n(f.default.createElement("span",null,"分支名不能包含下列任何字符:^*\\/"))}n()},n.onChangeFile=function(e){var t=n.props.changeName;n.setState({filename:e}),t&&t(e)},n.state={submitType:"0",filename:"",isSpin:!1,empty:!1},n}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,e),s(t,[{key:"render",value:function(){var e=this,t=this.state,n=t.submitType,s=(t.filename,t.isSpin),u=t.empty,m=this.props.form.getFieldDecorator,y=this.props.match.params,b=y.branch,g=y.projectsId,E=y.owner,w=this.props,N=w.current_user,j=w.filepath,_=w.projectDetail,x=w.currentBranch,S=w.loadName,O=this.props.editor_type,A=x||b;return f.default.createElement("div",null,f.default.createElement("span",{className:"df",style:{alignItems:"center"}},f.default.createElement(d.Link,{to:"/"+(N&&N.login),className:"show-user-link"},f.default.createElement("img",{src:(0,p.getImageUrl)("/"+(N&&N.image_url)),alt:"",className:"screwImg"}),f.default.createElement("span",{className:"color-grey-3 ver-middle"},N&&N.username,":")),f.default.createElement("span",{className:"color-grey-8"},"提交变更")),f.default.createElement(a.default,{spinning:s},f.default.createElement("div",{className:"userScrew"},f.default.createElement("div",{className:"screwPanel"},f.default.createElement(l.default,null,f.default.createElement("div",{className:"mb20",style:{display:"upload"===O?"block":"none"}},f.default.createElement(h.default,{addonBefore:""+(_&&_.identifier)+(0,p.returnbar)(j),onChangeFile:this.onChangeFile,empty:u,name:S,onEmpty:function(t){return e.onEmpty(t)}})),f.default.createElement(l.default.Item,null,m("desc",{rules:[{required:!0,message:"请添加描述信息"}]})(f.default.createElement(v,{placeholder:"必填,描述主要修改类型和内容",authSize:{minRows:3,maxRows:5}}))),f.default.createElement(i.default.Group,{value:n,onChange:this.changeSubmittype},f.default.createElement(i.default,{value:"0",className:"mb10"},f.default.createElement("i",{className:"iconfont icon-banbenku font-16 mr5"}),"直接提交至",f.default.createElement("span",{className:"color-orange"},(0,p.returnbar)(A)),"分支"),f.default.createElement(i.default,{value:"1"},f.default.createElement(o.default,{type:"pull-request",className:"mr5"}),"为此提交创建一个",f.default.createElement("span",{className:"font-bd"},"新的分支"),"并发起合并请求")),"1"===n?f.default.createElement("div",{className:"mt15"},f.default.createElement(l.default.Item,{style:{paddingLeft:"24px"}},m("branchname",{rules:[{required:!0,message:"请输入分支名称"},{validator:this.checkBranchName}]})(f.default.createElement(c.default,{placeholder:"请输入分支名称",style:{width:"220px"},maxLength:100})))):""))),f.default.createElement("div",{className:"mt20"},f.default.createElement(r.default,{type:"primary",onClick:"update"===O?this.UpdateFile:this.subMitFrom,className:"mr30"},"提交变更"),f.default.createElement(r.default,{type:"primary grey",onClick:function(){e.props.history.push("/"+E+"/"+g),window.scrollTo(0,0)},className:"mr20"},"取消"))))}}]),t}(u.Component),E=l.default.create({name:"UserSubmitForm"})(g);t.default=E},DSRE:function(e,t,n){(function(e){var a=n("Kz5y"),r=n("B8du"),o=t&&!t.nodeType&&t,i=o&&"object"==typeof e&&e&&!e.nodeType&&e,l=i&&i.exports===o?a.Buffer:void 0,c=(l?l.isBuffer:void 0)||r;e.exports=c}).call(this,n("YuTi")(e))},JHRd:function(e,t,n){var a=n("Kz5y").Uint8Array;e.exports=a},JxhO:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var a=l(n("5rEg")),r=function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,t){var n=[],a=!0,r=!1,o=void 0;try{for(var i,l=e[Symbol.iterator]();!(a=(i=l.next()).done)&&(n.push(i.value),!t||n.length!==t);a=!0);}catch(e){r=!0,o=e}finally{try{!a&&l.return&&l.return()}finally{if(r)throw o}}return n}(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")};n("5NDa");var o=n("cDcd"),i=l(o);function l(e){return e&&e.__esModule?e:{default:e}}n("ewr9"),t.default=function(e){var t=e.onChangeFile,n=e.addonBefore,l=e.name,c=e.empty,s=e.onEmpty,u=(0,o.useState)(void 0),f=r(u,2),p=f[0],d=f[1],m=(0,o.useState)([]),h=r(m,2),y=h[0],b=h[1],v=(0,o.useState)(void 0),g=r(v,2),E=g[0],w=g[1];function N(){y&&y.length>0?setTimeout((function(){w(void 0)}),200):w(void 0),s&&s(!0)}(0,o.useEffect)((function(){if(l){var e="";if(l.indexOf("/")>-1){var n=l.split("/");e=n[n.length-1],w(e)}else e=l,w(l);var a=y&&y.length>0?y.join("/")+"/"+e:e;t(a)}else w(void 0)}),[l]),(0,o.useEffect)((function(){n&&d(n.split("/"))}),[n]);var j=function(e){return i.default.createElement("div",null,e.map((function(e,t){return e&&i.default.createElement("span",null,e,i.default.createElement("span",{className:"ml2 mr3"},"/"))})))};return i.default.createElement("div",{className:"fileName"},p&&p.length>0?j(p):"",y&&y.length>0?j(y):"",i.default.createElement(a.default,{placeholder:"命名文件名称或文件路径",value:E,onKeyUp:function(e){if(8===e.keyCode&&void 0===E&&y&&y.length>0){var t=y[y.length-1],n=y;n.splice(n.length-1,1),b(n),w(t)}},onChange:function(e){var n=e.target.value;if(n)if("/"===n)w(void 0);else if(n.indexOf("/")>-1){var a=n.split("/"),r=y.concat(a[0]);b(r);var o=a[a.length-1];w(o),o?(t(r&&r.length>0?r.join("/")+"/"+o:o),s&&s(!1)):N()}else{var i=y&&y.length>0?y.join("/")+"/"+n:n;t(i),w(n),s&&s(!1)}else N()},style:{width:"220px",borderColor:!0===c?"red":"grey"}}),c&&i.default.createElement("p",{className:"color-red ml20"},"请输入文件名称"))}},L8xA:function(e,t){e.exports=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}},MMmD:function(e,t,n){var a=n("lSCD"),r=n("shjB");e.exports=function(e){return null!=e&&r(e.length)&&!a(e)}},"UNi/":function(e,t){e.exports=function(e,t){for(var n=-1,a=Array(e);++n0?(n.props.showNotification("文件已存在, 请删除后再上传"),!1):r?void n.setState({fileList:[e],fileName:e.name}):(n.props.showNotification("文件大小必须小于"+a+"MB!"),!1)},n.customRequest=function(e){(new FormData).append("files[]",e.file);var t=new FileReader;t.readAsDataURL(e.file);var a=n.props.load;t.onloadend=function(t){if(t.target.result){e.onSuccess();var n=t.target.result.substring(t.target.result.indexOf("base64")+7,t.target.result.length);a({fileName:e.file.name,fileContent:n})}}},n.state={fileList:void 0,fileContent:void 0,fileName:void 0},n}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,e),i(t,[{key:"render",value:function(){var e=this.props,t=e.icon,n=e.size,r=this.state,i=r.fileList,l=r.fileName,s={name:"file",fileList:i,customRequest:this.customRequest,onRemove:this.onAttachmentRemove,beforeUpload:this.beforeUpload};return c.default.createElement(u,o({},s,{className:this.props.className}),l?c.default.createElement("p",{className:"ant-upload-text"},l):c.default.createElement("div",null,t||c.default.createElement(a.default,{type:"inbox"}),c.default.createElement("p",{className:"ant-upload-text"},"拖动文件或",c.default.createElement("span",{className:"color-blue"},"点击此处上传")),c.default.createElement("p",{className:"mt10"},"文件名请使用英文且不得超过",n,"MB")))}}]),t}(l.Component);t.default=f},kekF:function(e,t){e.exports=function(e,t){return function(n){return e(t(n))}}},mdPL:function(e,t,n){(function(e){var a=n("WFqU"),r=t&&!t.nodeType&&t,o=r&&"object"==typeof e&&e&&!e.nodeType&&e,i=o&&o.exports===r&&a.process,l=function(){try{return o&&o.require&&o.require("util").types||i&&i.binding&&i.binding("util")}catch(e){}}();e.exports=l}).call(this,n("YuTi")(e))},sEf8:function(e,t){e.exports=function(e){return function(t){return e(t)}}},zZ0H:function(e,t){e.exports=function(e){return e}}}]); \ No newline at end of file diff --git a/static/js/68.93bfa3e5.chunk.js b/static/js/68.93bfa3e5.chunk.js new file mode 100644 index 000000000..e234047e0 --- /dev/null +++ b/static/js/68.93bfa3e5.chunk.js @@ -0,0 +1 @@ +(this.webpackJsonp=this.webpackJsonp||[]).push([[68],{"1xfW":function(e,t,r){"use strict";e.exports={extension:{publisher:"alex-ext-public",name:"markdown-language-features-worker",version:"1.53.0-patch.1"},packageJSON:{name:"markdown-language-features-worker",publisher:"alex",version:"1.53.0-patch.1",displayName:"%displayName%",description:"%description%",icon:"icon.png",activationEvents:["onLanguage:markdown","onCommand:markdown.preview.toggleLock","onCommand:markdown.preview.refresh","onCommand:markdown.showPreview","onCommand:markdown.showPreviewToSide","onCommand:markdown.showLockedPreviewToSide","onCommand:markdown.showSource","onCommand:markdown.showPreviewSecuritySelector","onCommand:markdown.api.render","onWebviewPanel:markdown.preview","onCustomEditor:vscode.markdown.preview.editor"],kaitianContributes:{workerMain:"./dist/browser/extension.js"},contributes:{commands:[{command:"markdown.showPreview",title:"%markdown.preview.title%",category:"Markdown",icon:{light:"./media/preview-light.svg",dark:"./media/preview-dark.svg"}},{command:"markdown.showPreviewToSide",title:"%markdown.previewSide.title%",category:"Markdown",icon:"$(open-preview)"},{command:"markdown.showLockedPreviewToSide",title:"%markdown.showLockedPreviewToSide.title%",category:"Markdown",icon:"$(open-preview)"},{command:"markdown.showSource",title:"%markdown.showSource.title%",category:"Markdown",icon:"$(go-to-file)"},{command:"markdown.showPreviewSecuritySelector",title:"%markdown.showPreviewSecuritySelector.title%",category:"Markdown"},{command:"markdown.preview.refresh",title:"%markdown.preview.refresh.title%",category:"Markdown"},{command:"markdown.preview.toggleLock",title:"%markdown.preview.toggleLock.title%",category:"Markdown"}],menus:{"editor/title":[{command:"markdown.showPreviewToSide",when:"editorLangId == markdown && !notebookEditorFocused",alt:"markdown.showPreview",group:"navigation"},{command:"markdown.showSource",when:"markdownPreviewFocus",group:"navigation"},{command:"markdown.preview.refresh",when:"markdownPreviewFocus",group:"1_markdown"},{command:"markdown.preview.toggleLock",when:"markdownPreviewFocus",group:"1_markdown"},{command:"markdown.showPreviewSecuritySelector",when:"markdownPreviewFocus",group:"1_markdown"}],"explorer/context":[{command:"markdown.showPreview",when:"resourceLangId == markdown",group:"navigation"}],"editor/title/context":[{command:"markdown.showPreview",when:"resourceLangId == markdown",group:"1_open"}],commandPalette:[{command:"markdown.showPreview",when:"editorLangId == markdown && !notebookEditorFocused",group:"navigation"},{command:"markdown.showPreviewToSide",when:"editorLangId == markdown && !notebookEditorFocused",group:"navigation"},{command:"markdown.showLockedPreviewToSide",when:"editorLangId == markdown && !notebookEditorFocused",group:"navigation"},{command:"markdown.showSource",when:"markdownPreviewFocus",group:"navigation"},{command:"markdown.showPreviewSecuritySelector",when:"editorLangId == markdown && !notebookEditorFocused"},{command:"markdown.showPreviewSecuritySelector",when:"markdownPreviewFocus"},{command:"markdown.preview.toggleLock",when:"markdownPreviewFocus"},{command:"markdown.preview.refresh",when:"editorLangId == markdown && !notebookEditorFocused"},{command:"markdown.preview.refresh",when:"markdownPreviewFocus"}]},keybindings:[{command:"markdown.showPreview",key:"shift+ctrl+v",mac:"shift+cmd+v",when:"editorLangId == markdown && !notebookEditorFocused"},{command:"markdown.showPreviewToSide",key:"ctrl+k v",mac:"cmd+k v",when:"editorLangId == markdown && !notebookEditorFocused"}],configuration:{type:"object",title:"Markdown",order:20,properties:{"markdown.styles":{type:"array",items:{type:"string"},default:[],description:"%markdown.styles.dec%",scope:"resource"},"markdown.preview.breaks":{type:"boolean",default:!1,description:"%markdown.preview.breaks.desc%",scope:"resource"},"markdown.preview.linkify":{type:"boolean",default:!0,description:"%markdown.preview.linkify%",scope:"resource"},"markdown.preview.fontFamily":{type:"string",default:"-apple-system, BlinkMacSystemFont, 'Segoe WPC', 'Segoe UI', system-ui, 'Ubuntu', 'Droid Sans', sans-serif",description:"%markdown.preview.fontFamily.desc%",scope:"resource"},"markdown.preview.fontSize":{type:"number",default:14,description:"%markdown.preview.fontSize.desc%",scope:"resource"},"markdown.preview.lineHeight":{type:"number",default:1.6,description:"%markdown.preview.lineHeight.desc%",scope:"resource"},"markdown.preview.scrollPreviewWithEditor":{type:"boolean",default:!0,description:"%markdown.preview.scrollPreviewWithEditor.desc%",scope:"resource"},"markdown.preview.markEditorSelection":{type:"boolean",default:!0,description:"%markdown.preview.markEditorSelection.desc%",scope:"resource"},"markdown.preview.scrollEditorWithPreview":{type:"boolean",default:!0,description:"%markdown.preview.scrollEditorWithPreview.desc%",scope:"resource"},"markdown.preview.doubleClickToSwitchToEditor":{type:"boolean",default:!0,description:"%markdown.preview.doubleClickToSwitchToEditor.desc%",scope:"resource"},"markdown.preview.openMarkdownLinks":{type:"string",default:"inPreview",description:"%configuration.markdown.preview.openMarkdownLinks.description%",scope:"resource",enum:["inPreview","inEditor"],enumDescriptions:["%configuration.markdown.preview.openMarkdownLinks.inPreview%","%configuration.markdown.preview.openMarkdownLinks.inEditor%"]},"markdown.links.openLocation":{type:"string",default:"currentGroup",description:"%configuration.markdown.links.openLocation.description%",scope:"resource",enum:["currentGroup","beside"],enumDescriptions:["%configuration.markdown.links.openLocation.currentGroup%","%configuration.markdown.links.openLocation.beside%"]},"markdown.trace":{type:"string",enum:["off","verbose"],default:"off",description:"%markdown.trace.desc%",scope:"window"}}},configurationDefaults:{"[markdown]":{"editor.wordWrap":"on","editor.quickSuggestions":!1}},jsonValidation:[{fileMatch:"package.json",url:"./schemas/package.schema.json"}],"markdown.previewStyles":["./media/markdown.css","./media/highlight.css"],"markdown.previewScripts":["./media/index.js"],workerMain:"./dist/browser/extension.js"},browser:"./dist/browser/extension"},defaultPkgNlsJSON:{displayName:"Markdown Language Features",description:"Provides rich language support for Markdown.","markdown.preview.breaks.desc":"Sets how line-breaks are rendered in the markdown preview. Setting it to 'true' creates a
for newlines inside paragraphs.","markdown.preview.linkify":"Enable or disable conversion of URL-like text to links in the markdown preview.","markdown.preview.doubleClickToSwitchToEditor.desc":"Double click in the markdown preview to switch to the editor.","markdown.preview.fontFamily.desc":"Controls the font family used in the markdown preview.","markdown.preview.fontSize.desc":"Controls the font size in pixels used in the markdown preview.","markdown.preview.lineHeight.desc":"Controls the line height used in the markdown preview. This number is relative to the font size.","markdown.preview.markEditorSelection.desc":"Mark the current editor selection in the markdown preview.","markdown.preview.scrollEditorWithPreview.desc":"When a markdown preview is scrolled, update the view of the editor.","markdown.preview.scrollPreviewWithEditor.desc":"When a markdown editor is scrolled, update the view of the preview.","markdown.preview.title":"Open Preview","markdown.previewSide.title":"Open Preview to the Side","markdown.showLockedPreviewToSide.title":"Open Locked Preview to the Side","markdown.showSource.title":"Show Source","markdown.styles.dec":"A list of URLs or local paths to CSS style sheets to use from the markdown preview. Relative paths are interpreted relative to the folder open in the explorer. If there is no open folder, they are interpreted relative to the location of the markdown file. All '\\' need to be written as '\\\\'.","markdown.showPreviewSecuritySelector.title":"Change Preview Security Settings","markdown.trace.desc":"Enable debug logging for the markdown extension.","markdown.preview.refresh.title":"Refresh Preview","markdown.preview.toggleLock.title":"Toggle Preview Locking","configuration.markdown.preview.openMarkdownLinks.description":"Controls how links to other markdown files in the markdown preview should be opened.","configuration.markdown.preview.openMarkdownLinks.inEditor":"Try to open links in the editor","configuration.markdown.preview.openMarkdownLinks.inPreview":"Try to open links in the markdown preview","configuration.markdown.links.openLocation.description":"Controls where links in markdown files should be opened.","configuration.markdown.links.openLocation.currentGroup":"Open links in the active editor group.","configuration.markdown.links.openLocation.beside":"Open links beside the active editor."},pkgNlsJSON:{},nlsList:[],extendConfig:{},webAssets:["package.json","media/highlight.css","media/index.js","media/markdown.css","media/pre.js","media/preview-dark.svg","media/preview-light.svg","README.md","icon.png","schemas/package.schema.json","dist/browser/extension.js"],mode:"public"}},BTkp:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=function(){function e(e,t){for(var r=0;r-1)return void r(d.default.createElement("span",null,"分支名不能包含下列任何字符:^*\\/"))}r()},r.onChangeFile=function(e){var t=r.props.changeName;r.setState({filename:e}),t&&t(e)},r.state={submitType:"0",filename:"",isSpin:!1,empty:!1},r}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,e),l(t,[{key:"render",value:function(){var e=this,t=this.state,r=t.submitType,l=(t.filename,t.isSpin),p=t.empty,f=this.props.form.getFieldDecorator,h=this.props.match.params,w=h.branch,b=h.projectsId,v=h.owner,k=this.props,S=k.current_user,j=k.filepath,C=k.projectDetail,P=k.currentBranch,x=k.loadName,A=this.props.editor_type,E=P||w;return d.default.createElement("div",null,d.default.createElement("span",{className:"df",style:{alignItems:"center"}},d.default.createElement(m.Link,{to:"/"+(S&&S.login),className:"show-user-link"},d.default.createElement("img",{src:(0,u.getImageUrl)("/"+(S&&S.image_url)),alt:"",className:"screwImg"}),d.default.createElement("span",{className:"color-grey-3 ver-middle"},S&&S.username,":")),d.default.createElement("span",{className:"color-grey-8"},"提交变更")),d.default.createElement(o.default,{spinning:l},d.default.createElement("div",{className:"userScrew"},d.default.createElement("div",{className:"screwPanel"},d.default.createElement(a.default,null,d.default.createElement("div",{className:"mb20",style:{display:"upload"===A?"block":"none"}},d.default.createElement(g.default,{addonBefore:""+(C&&C.identifier)+(0,u.returnbar)(j),onChangeFile:this.onChangeFile,empty:p,name:x,onEmpty:function(t){return e.onEmpty(t)}})),d.default.createElement(a.default.Item,null,f("desc",{rules:[{required:!0,message:"请添加描述信息"}]})(d.default.createElement(y,{placeholder:"必填,描述主要修改类型和内容",authSize:{minRows:3,maxRows:5}}))),d.default.createElement(i.default.Group,{value:r,onChange:this.changeSubmittype},d.default.createElement(i.default,{value:"0",className:"mb10"},d.default.createElement("i",{className:"iconfont icon-banbenku font-16 mr5"}),"直接提交至",d.default.createElement("span",{className:"color-orange"},(0,u.returnbar)(E)),"分支"),d.default.createElement(i.default,{value:"1"},d.default.createElement(n.default,{type:"pull-request",className:"mr5"}),"为此提交创建一个",d.default.createElement("span",{className:"font-bd"},"新的分支"),"并发起合并请求")),"1"===r?d.default.createElement("div",{className:"mt15"},d.default.createElement(a.default.Item,{style:{paddingLeft:"24px"}},f("branchname",{rules:[{required:!0,message:"请输入分支名称"},{validator:this.checkBranchName}]})(d.default.createElement(c.default,{placeholder:"请输入分支名称",style:{width:"220px"},maxLength:100})))):""))),d.default.createElement("div",{className:"mt20"},d.default.createElement(s.default,{type:"primary",onClick:"update"===A?this.UpdateFile:this.subMitFrom,className:"mr30"},"提交变更"),d.default.createElement(s.default,{type:"primary grey",onClick:function(){e.props.history.push("/"+v+"/"+b),window.scrollTo(0,0)},className:"mr20"},"取消"))))}}]),t}(p.Component),v=a.default.create({name:"UserSubmitForm"})(b);t.default=v},IEkG:function(e,t,r){"use strict";e.exports={extension:{publisher:"alex-ext-public",name:"json-language-features-worker",version:"1.53.0-patch.1"},packageJSON:{name:"json-language-features-worker",publisher:"alex",version:"1.53.0-patch.1",displayName:"%displayName%",description:"%description%",icon:"icons/json.png",activationEvents:["onLanguage:json","onLanguage:jsonc"],kaitianContributes:{workerMain:"client/dist/browser/jsonClientMain.js"},contributes:{configuration:{id:"json",order:20,type:"object",title:"JSON",properties:{"json.schemas":{type:"array",scope:"resource",description:"%json.schemas.desc%",items:{type:"object",default:{fileMatch:["/myfile"],url:"schemaURL"},properties:{url:{type:"string",default:"/user.schema.json",description:"%json.schemas.url.desc%"},fileMatch:{type:"array",items:{type:"string",default:"MyFile.json",description:"%json.schemas.fileMatch.item.desc%"},minItems:1,description:"%json.schemas.fileMatch.desc%"},schema:{$ref:"http://json-schema.org/draft-07/schema#",description:"%json.schemas.schema.desc%"}}}},"json.format.enable":{type:"boolean",scope:"window",default:!0,description:"%json.format.enable.desc%"},"json.trace.server":{type:"string",scope:"window",enum:["off","messages","verbose"],default:"off",description:"%json.tracing.desc%"},"json.colorDecorators.enable":{type:"boolean",scope:"window",default:!0,description:"%json.colorDecorators.enable.desc%",deprecationMessage:"%json.colorDecorators.enable.deprecationMessage%"},"json.maxItemsComputed":{type:"number",default:5e3,description:"%json.maxItemsComputed.desc%"},"json.schemaDownload.enable":{type:"boolean",default:!0,description:"%json.enableSchemaDownload.desc%",tags:["usesOnlineServices"]}}},configurationDefaults:{"[json]":{"editor.quickSuggestions":{strings:!0},"editor.suggest.insertMode":"replace"},"[jsonc]":{"editor.quickSuggestions":{strings:!0},"editor.suggest.insertMode":"replace"}},jsonValidation:[{fileMatch:"*.schema.json",url:"http://json-schema.org/draft-07/schema#"}],workerMain:"client/dist/browser/jsonClientMain.js"},browser:"./client/dist/browser/jsonClientMain"},defaultPkgNlsJSON:{displayName:"JSON Language Features",description:"Provides rich language support for JSON files.","json.schemas.desc":"Associate schemas to JSON files in the current project","json.schemas.url.desc":"A URL to a schema or a relative path to a schema in the current directory","json.schemas.fileMatch.desc":"An array of file patterns to match against when resolving JSON files to schemas. `*` can be used as a wildcard. Exclusion patterns can also be defined and start with '!'. A file matches when there is at least one matching pattern and the last matching pattern is not an exclusion pattern.","json.schemas.fileMatch.item.desc":"A file pattern that can contain '*' to match against when resolving JSON files to schemas.","json.schemas.schema.desc":"The schema definition for the given URL. The schema only needs to be provided to avoid accesses to the schema URL.","json.format.enable.desc":"Enable/disable default JSON formatter","json.tracing.desc":"Traces the communication between VS Code and the JSON language server.","json.colorDecorators.enable.desc":"Enables or disables color decorators","json.colorDecorators.enable.deprecationMessage":"The setting `json.colorDecorators.enable` has been deprecated in favor of `editor.colorDecorators`.","json.schemaResolutionErrorMessage":"Unable to resolve schema.","json.clickToRetry":"Click to retry.","json.maxItemsComputed.desc":"The maximum number of outline symbols and folding regions computed (limited for performance reasons).","json.maxItemsExceededInformation.desc":"Show notification when exceeding the maximum number of outline symbols and folding regions.","json.enableSchemaDownload.desc":"When enabled, JSON schemas can be fetched from http and https locations."},pkgNlsJSON:{},nlsList:[],extendConfig:{},webAssets:["package.json","server/dist/browser/jsonServerMain.js","README.md","icons/json.png","http://json-schema.org/draft-07/schema#","client/dist/browser/jsonClientMain.js"],mode:"public"}},IxBv:function(e,t,r){"use strict";e.exports={extension:{publisher:"alex-ext-public",name:"html-language-features-worker",version:"1.53.0-patch.1"},packageJSON:{name:"html-language-features-worker",publisher:"alex",version:"1.53.0-patch.1",displayName:"%displayName%",description:"%description%",icon:"icons/html.png",activationEvents:["onLanguage:html","onLanguage:handlebars"],kaitianContributes:{workerMain:"client/dist/browser/htmlClientMain.js"},contributes:{configuration:{id:"html",order:20,type:"object",title:"HTML",properties:{"html.customData":{type:"array",markdownDescription:"%html.customData.desc%",default:[],items:{type:"string"},scope:"resource"},"html.format.enable":{type:"boolean",scope:"window",default:!0,description:"%html.format.enable.desc%"},"html.format.wrapLineLength":{type:"integer",scope:"resource",default:120,description:"%html.format.wrapLineLength.desc%"},"html.format.unformatted":{type:["string","null"],scope:"resource",default:"wbr",markdownDescription:"%html.format.unformatted.desc%"},"html.format.contentUnformatted":{type:["string","null"],scope:"resource",default:"pre,code,textarea",markdownDescription:"%html.format.contentUnformatted.desc%"},"html.format.indentInnerHtml":{type:"boolean",scope:"resource",default:!1,markdownDescription:"%html.format.indentInnerHtml.desc%"},"html.format.preserveNewLines":{type:"boolean",scope:"resource",default:!0,description:"%html.format.preserveNewLines.desc%"},"html.format.maxPreserveNewLines":{type:["number","null"],scope:"resource",default:null,markdownDescription:"%html.format.maxPreserveNewLines.desc%"},"html.format.indentHandlebars":{type:"boolean",scope:"resource",default:!1,markdownDescription:"%html.format.indentHandlebars.desc%"},"html.format.endWithNewline":{type:"boolean",scope:"resource",default:!1,description:"%html.format.endWithNewline.desc%"},"html.format.extraLiners":{type:["string","null"],scope:"resource",default:"head, body, /html",markdownDescription:"%html.format.extraLiners.desc%"},"html.format.wrapAttributes":{type:"string",scope:"resource",default:"auto",enum:["auto","force","force-aligned","force-expand-multiline","aligned-multiple","preserve","preserve-aligned"],enumDescriptions:["%html.format.wrapAttributes.auto%","%html.format.wrapAttributes.force%","%html.format.wrapAttributes.forcealign%","%html.format.wrapAttributes.forcemultiline%","%html.format.wrapAttributes.alignedmultiple%","%html.format.wrapAttributes.preserve%","%html.format.wrapAttributes.preservealigned%"],description:"%html.format.wrapAttributes.desc%"},"html.format.wrapAttributesIndentSize":{type:["number","null"],scope:"resource",default:null,description:"%html.format.wrapAttributesIndentSize.desc%"},"html.format.templating":{type:["boolean"],scope:"resource",default:!1,description:"%html.format.templating.desc%"},"html.format.unformattedContentDelimiter":{type:["string"],scope:"resource",default:"",markdownDescription:"%html.format.unformattedContentDelimiter.desc%"},"html.suggest.html5":{type:"boolean",scope:"resource",default:!0,description:"%html.suggest.html5.desc%"},"html.validate.scripts":{type:"boolean",scope:"resource",default:!0,description:"%html.validate.scripts%"},"html.validate.styles":{type:"boolean",scope:"resource",default:!0,description:"%html.validate.styles%"},"html.autoClosingTags":{type:"boolean",scope:"resource",default:!0,description:"%html.autoClosingTags%"},"html.hover.documentation":{type:"boolean",scope:"resource",default:!0,description:"%html.hover.documentation%"},"html.hover.references":{type:"boolean",scope:"resource",default:!0,description:"%html.hover.references%"},"html.mirrorCursorOnMatchingTag":{type:"boolean",scope:"resource",default:!1,description:"%html.mirrorCursorOnMatchingTag%",deprecationMessage:"%html.mirrorCursorOnMatchingTagDeprecationMessage%"},"html.trace.server":{type:"string",scope:"window",enum:["off","messages","verbose"],default:"off",description:"%html.trace.server.desc%"}}},configurationDefaults:{"[html]":{"editor.suggest.insertMode":"replace"},"[handlebars]":{"editor.suggest.insertMode":"replace"}},jsonValidation:[{fileMatch:"*.html-data.json",url:"https://raw.githubusercontent.com/microsoft/vscode-html-languageservice/master/docs/customData.schema.json"},{fileMatch:"package.json",url:"./schemas/package.schema.json"}],workerMain:"client/dist/browser/htmlClientMain.js"},browser:"./client/dist/browser/htmlClientMain"},defaultPkgNlsJSON:{displayName:"HTML Language Features",description:"Provides rich language support for HTML and Handlebar files","html.customData.desc":"A list of relative file paths pointing to JSON files following the [custom data format](https://github.com/microsoft/vscode-html-languageservice/blob/master/docs/customData.md).\n\nVS Code loads custom data on startup to enhance its HTML support for the custom HTML tags, attributes and attribute values you specify in the JSON files.\n\nThe file paths are relative to workspace and only workspace folder settings are considered.","html.format.enable.desc":"Enable/disable default HTML formatter.","html.format.wrapLineLength.desc":"Maximum amount of characters per line (0 = disable).","html.format.unformatted.desc":"List of tags, comma separated, that shouldn't be reformatted. `null` defaults to all tags listed at https://www.w3.org/TR/html5/dom.html#phrasing-content.","html.format.contentUnformatted.desc":"List of tags, comma separated, where the content shouldn't be reformatted. `null` defaults to the `pre` tag.","html.format.indentInnerHtml.desc":"Indent `` and `` sections.","html.format.preserveNewLines.desc":"Controls whether existing line breaks before elements should be preserved. Only works before elements, not inside tags or for text.","html.format.maxPreserveNewLines.desc":"Maximum number of line breaks to be preserved in one chunk. Use `null` for unlimited.","html.format.indentHandlebars.desc":"Format and indent `{{#foo}}` and `{{/foo}}`.","html.format.endWithNewline.desc":"End with a newline.","html.format.extraLiners.desc":'List of tags, comma separated, that should have an extra newline before them. `null` defaults to `"head, body, /html"`.',"html.format.wrapAttributes.desc":"Wrap attributes.","html.format.wrapAttributes.auto":"Wrap attributes only when line length is exceeded.","html.format.wrapAttributes.force":"Wrap each attribute except first.","html.format.wrapAttributes.forcealign":"Wrap each attribute except first and keep aligned.","html.format.wrapAttributes.forcemultiline":"Wrap each attribute.","html.format.wrapAttributes.alignedmultiple":"Wrap when line length is exceeded, align attributes vertically.","html.format.wrapAttributes.preserve":"Preserve wrapping of attributes","html.format.wrapAttributes.preservealigned":"Preserve wrapping of attributes but align.","html.format.templating.desc":"Honor django, erb, handlebars and php templating language tags.","html.format.unformattedContentDelimiter.desc":"Keep text content together between this string.","html.format.wrapAttributesIndentSize.desc":"Alignment size when using 'force aligned' and 'aligned multiple' in `#html.format.wrapAttributes#` or `null` to use the default indent size.","html.suggest.html5.desc":"Controls whether the built-in HTML language support suggests HTML5 tags, properties and values.","html.trace.server.desc":"Traces the communication between VS Code and the HTML language server.","html.validate.scripts":"Controls whether the built-in HTML language support validates embedded scripts.","html.validate.styles":"Controls whether the built-in HTML language support validates embedded styles.","html.autoClosingTags":"Enable/disable autoclosing of HTML tags.","html.mirrorCursorOnMatchingTag":"Enable/disable mirroring cursor on matching HTML tag.","html.mirrorCursorOnMatchingTagDeprecationMessage":"Deprecated in favor of `editor.linkedEditing`","html.hover.documentation":"Show tag and attribute documentation in hover.","html.hover.references":"Show references to MDN in hover."},pkgNlsJSON:{},nlsList:[],extendConfig:{},webAssets:["package.json","server/dist/browser/htmlServerMain.js","README.md","icons/html.png","https://raw.githubusercontent.com/microsoft/vscode-html-languageservice/master/docs/customData.schema.json","schemas/package.schema.json","client/dist/browser/htmlClientMain.js"],mode:"public"}},JxhO:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=a(r("5rEg")),s=function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,t){var r=[],o=!0,s=!1,n=void 0;try{for(var i,a=e[Symbol.iterator]();!(o=(i=a.next()).done)&&(r.push(i.value),!t||r.length!==t);o=!0);}catch(e){s=!0,n=e}finally{try{!o&&a.return&&a.return()}finally{if(s)throw n}}return r}(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")};r("5NDa");var n=r("cDcd"),i=a(n);function a(e){return e&&e.__esModule?e:{default:e}}r("ewr9"),t.default=function(e){var t=e.onChangeFile,r=e.addonBefore,a=e.name,c=e.empty,l=e.onEmpty,p=(0,n.useState)(void 0),d=s(p,2),u=d[0],m=d[1],f=(0,n.useState)([]),g=s(f,2),h=g[0],w=g[1],y=(0,n.useState)(void 0),b=s(y,2),v=b[0],k=b[1];function S(){h&&h.length>0?setTimeout((function(){k(void 0)}),200):k(void 0),l&&l(!0)}(0,n.useEffect)((function(){if(a){var e="";if(a.indexOf("/")>-1){var r=a.split("/");e=r[r.length-1],k(e)}else e=a,k(a);var o=h&&h.length>0?h.join("/")+"/"+e:e;t(o)}else k(void 0)}),[a]),(0,n.useEffect)((function(){r&&m(r.split("/"))}),[r]);var j=function(e){return i.default.createElement("div",null,e.map((function(e,t){return e&&i.default.createElement("span",null,e,i.default.createElement("span",{className:"ml2 mr3"},"/"))})))};return i.default.createElement("div",{className:"fileName"},u&&u.length>0?j(u):"",h&&h.length>0?j(h):"",i.default.createElement(o.default,{placeholder:"命名文件名称或文件路径",value:v,onKeyUp:function(e){if(8===e.keyCode&&void 0===v&&h&&h.length>0){var t=h[h.length-1],r=h;r.splice(r.length-1,1),w(r),k(t)}},onChange:function(e){var r=e.target.value;if(r)if("/"===r)k(void 0);else if(r.indexOf("/")>-1){var o=r.split("/"),s=h.concat(o[0]);w(s);var n=o[o.length-1];k(n),n?(t(s&&s.length>0?s.join("/")+"/"+n:n),l&&l(!1)):S()}else{var i=h&&h.length>0?h.join("/")+"/"+r:r;t(i),k(r),l&&l(!1)}else S()},style:{width:"220px",borderColor:!0===c?"red":"grey"}}),c&&i.default.createElement("p",{className:"color-red ml20"},"请输入文件名称"))}},PgMy:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=i(r("2fM7"));r("OaEy");var s=r("cDcd"),n=i(s);function i(e){return e&&e.__esModule?e:{default:e}}i(r("vDqi"));var a=o.default.Option,c=["apex","azcli","bat","clojure","coffee","cpp","csharp","csp","css","dockerfile","fsharp","go","handlebars","html","ini","java","javascript","json","less","lua","markdown","msdax","mysql","objective","perl","pgsql","php","postiats","powerquery","powershell","pug","python","r","razor","redis","redshift","ruby","rust","sb","scheme","scss","shell","solidity","sql","st","swift","typescript","vb","xml","yaml"];t.default=function(e){var t=e.language,r=e.select_language,i=function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,t){var r=[],o=!0,s=!1,n=void 0;try{for(var i,a=e[Symbol.iterator]();!(o=(i=a.next()).done)&&(r.push(i.value),!t||r.length!==t);o=!0);}catch(e){s=!0,n=e}finally{try{!o&&a.return&&a.return()}finally{if(s)throw n}}return r}(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")}((0,s.useState)(void 0),2);return i[0],i[1],n.default.createElement(o.default,{showSearch:!0,placeholder:"请选择文本语言",style:{width:200},value:t,onChange:function(e){r(e)}},n.default.createElement(a,{value:void 0},"请选择文本语言"),c&&c.map((function(e,t){return n.default.createElement(a,{value:e},e)})))}},"R/Rt":function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=Object.assign||function(e){for(var t=1;t