diff --git a/packages/emmet-helper/package-lock.json b/packages/emmet-helper/package-lock.json deleted file mode 100644 index 54c910d283869c39d00bbe882ccb2b0349e71131..0000000000000000000000000000000000000000 --- a/packages/emmet-helper/package-lock.json +++ /dev/null @@ -1,799 +0,0 @@ -{ - "name": "emmet-helper", - "version": "0.0.1", - "lockfileVersion": 1, - "requires": true, - "dependencies": { - "@emmetio/extract-abbreviation": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/@emmetio/extract-abbreviation/-/extract-abbreviation-0.1.6.tgz", - "integrity": "sha512-Ce3xE2JvTSEbASFbRbA1gAIcMcZWdS2yUYRaQbeM0nbOzaZrUYfa3ePtcriYRZOZmr+CkKA+zbjhvTpIOAYVcw==", - "dev": true - }, - "@nodelib/fs.scandir": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.3.tgz", - "integrity": "sha512-eGmwYQn3gxo4r7jdQnkrrN6bY478C3P+a/y72IJukF8LjB6ZHeB3c+Ehacj3sYeSmUXGlnA67/PmbM9CVwL7Dw==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "2.0.3", - "run-parallel": "^1.1.9" - } - }, - "@nodelib/fs.stat": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.3.tgz", - "integrity": "sha512-bQBFruR2TAwoevBEd/NWMoAAtNGzTRgdrqnYCc7dhzfoNvqPzLyqlEQnzZ3kVnNrSp25iyxE00/3h2fqGAGArA==", - "dev": true - }, - "@nodelib/fs.walk": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.4.tgz", - "integrity": "sha512-1V9XOY4rDW0rehzbrcqAmHnz8e7SKvX27gh8Gt2WgB0+pdzdiLV83p72kZPU+jvMbS1qU5mauP2iOvO8rhmurQ==", - "dev": true, - "requires": { - "@nodelib/fs.scandir": "2.1.3", - "fastq": "^1.6.0" - } - }, - "@types/events": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/events/-/events-3.0.0.tgz", - "integrity": "sha512-EaObqwIvayI5a8dCzhFrjKzVwKLxjoG9T6Ppd5CEo07LRKfQ8Yokw54r5+Wq7FaBQ+yXRvQAYPrHwya1/UFt9g==", - "dev": true - }, - "@types/glob": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.1.tgz", - "integrity": "sha512-1Bh06cbWJUHMC97acuD6UMG29nMt0Aqz1vF3guLfG+kHHJhy3AyohZFFxYk2f7Q1SQIrNwvncxAE0N/9s70F2w==", - "dev": true, - "requires": { - "@types/events": "*", - "@types/minimatch": "*", - "@types/node": "*" - } - }, - "@types/minimatch": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", - "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==", - "dev": true - }, - "@types/node": { - "version": "13.11.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-13.11.1.tgz", - "integrity": "sha512-eWQGP3qtxwL8FGneRrC5DwrJLGN4/dH1clNTuLfN81HCrxVtxRjygDTUoZJ5ASlDEeo0ppYFQjQIlXhtXpOn6g==", - "dev": true - }, - "@zeit/ncc": { - "version": "0.22.1", - "resolved": "https://registry.npmjs.org/@zeit/ncc/-/ncc-0.22.1.tgz", - "integrity": "sha512-Qq3bMuonkcnV/96jhy9SQYdh39NXHxNMJ1O31ZFzWG9n52fR2DLtgrNzhj/ahlEjnBziMLGVWDbaS9sf03/fEw==", - "dev": true - }, - "array-find-index": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", - "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", - "dev": true - }, - "array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "dev": true - }, - "arrify": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", - "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", - "dev": true - }, - "balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true - }, - "camelcase-keys": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-4.2.0.tgz", - "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=", - "dev": true, - "requires": { - "camelcase": "^4.1.0", - "map-obj": "^2.0.0", - "quick-lru": "^1.0.0" - } - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "currently-unhandled": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", - "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", - "dev": true, - "requires": { - "array-find-index": "^1.0.1" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, - "decamelize-keys": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", - "integrity": "sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk=", - "dev": true, - "requires": { - "decamelize": "^1.1.0", - "map-obj": "^1.0.0" - }, - "dependencies": { - "map-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", - "dev": true - } - } - }, - "dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dev": true, - "requires": { - "path-type": "^4.0.0" - } - }, - "error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "escape-string-regexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", - "dev": true - }, - "fast-glob": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.2.tgz", - "integrity": "sha512-UDV82o4uQyljznxwMxyVRJgZZt3O5wENYojjzbaGEGZgeOxkLFf+V4cnUD+krzb2F72E18RhamkMZ7AdeggF7A==", - "dev": true, - "requires": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.0", - "merge2": "^1.3.0", - "micromatch": "^4.0.2", - "picomatch": "^2.2.1" - } - }, - "fastq": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.7.0.tgz", - "integrity": "sha512-YOadQRnHd5q6PogvAR/x62BGituF2ufiEA6s8aavQANw5YKHERI4AREboX6KotzP8oX2klxYF2wcV/7bn1clfQ==", - "dev": true, - "requires": { - "reusify": "^1.0.4" - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "glob-parent": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", - "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - }, - "globby": { - "version": "10.0.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-10.0.2.tgz", - "integrity": "sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==", - "dev": true, - "requires": { - "@types/glob": "^7.1.1", - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.0.3", - "glob": "^7.1.3", - "ignore": "^5.1.1", - "merge2": "^1.2.3", - "slash": "^3.0.0" - } - }, - "graceful-fs": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", - "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", - "dev": true - }, - "hosted-git-info": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", - "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", - "dev": true - }, - "ignore": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.4.tgz", - "integrity": "sha512-MzbUSahkTW1u7JpKKjY7LCARd1fU5W2rLdxlM4kdkayuCwZImjkpluF9CM1aLewYJguPDqewLam18Y6AU69A8A==", - "dev": true - }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true - }, - "indent-string": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", - "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", - "dev": true - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", - "dev": true - }, - "is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "is-plain-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", - "dev": true - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true - }, - "json-parse-better-errors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", - "dev": true - }, - "jsonc-parser": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-1.0.3.tgz", - "integrity": "sha512-hk/69oAeaIzchq/v3lS50PXuzn5O2ynldopMC+SWBql7J2WtdptfB9dy8Y7+Og5rPkTCpn83zTiO8FMcqlXJ/g==", - "dev": true - }, - "load-json-file": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", - "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "loud-rejection": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", - "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", - "dev": true, - "requires": { - "currently-unhandled": "^0.4.1", - "signal-exit": "^3.0.0" - } - }, - "map-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-2.0.0.tgz", - "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=", - "dev": true - }, - "meow": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-5.0.0.tgz", - "integrity": "sha512-CbTqYU17ABaLefO8vCU153ZZlprKYWDljcndKKDCFcYQITzWCXZAVk4QMFZPgvzrnUQ3uItnIE/LoUOwrT15Ig==", - "dev": true, - "requires": { - "camelcase-keys": "^4.0.0", - "decamelize-keys": "^1.0.0", - "loud-rejection": "^1.0.0", - "minimist-options": "^3.0.1", - "normalize-package-data": "^2.3.4", - "read-pkg-up": "^3.0.0", - "redent": "^2.0.0", - "trim-newlines": "^2.0.0", - "yargs-parser": "^10.0.0" - } - }, - "merge2": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.3.0.tgz", - "integrity": "sha512-2j4DAdlBOkiSZIsaXk4mTE3sRS02yBHAtfy127xRV3bQUFqXkjHCHLW6Scv7DwNRbIWNHH8zpnz9zMaKXIdvYw==", - "dev": true - }, - "micromatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist-options": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-3.0.2.tgz", - "integrity": "sha512-FyBrT/d0d4+uiZRbqznPXqw3IpZZG3gl3wKWiX784FycUKVwBt0uLBFkQrtE4tZOrgo78nZp2jnKz3L65T5LdQ==", - "dev": true, - "requires": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0" - }, - "dependencies": { - "arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", - "dev": true - } - } - }, - "normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dev": true, - "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "requires": { - "p-limit": "^1.1.0" - } - }, - "p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "dev": true - }, - "parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", - "dev": true, - "requires": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - } - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true - }, - "path-parse": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", - "dev": true - }, - "path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true - }, - "picomatch": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", - "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", - "dev": true - }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true - }, - "quick-lru": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-1.1.0.tgz", - "integrity": "sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g=", - "dev": true - }, - "read-pkg": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", - "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", - "dev": true, - "requires": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" - }, - "dependencies": { - "path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", - "dev": true, - "requires": { - "pify": "^3.0.0" - } - } - } - }, - "read-pkg-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", - "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", - "dev": true, - "requires": { - "find-up": "^2.0.0", - "read-pkg": "^3.0.0" - } - }, - "redent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-2.0.0.tgz", - "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=", - "dev": true, - "requires": { - "indent-string": "^3.0.0", - "strip-indent": "^2.0.0" - } - }, - "replace-in-files-cli": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/replace-in-files-cli/-/replace-in-files-cli-0.3.1.tgz", - "integrity": "sha512-3D/aZ2OBsFGn8wE8x1CPxryA6QpNCRZrGIjHUZqgKKSMwcVZVcqYuXTbhmzBsjnYXXCZDIYKfHpealx+5m6y0g==", - "dev": true, - "requires": { - "arrify": "^2.0.1", - "escape-string-regexp": "^2.0.0", - "globby": "^10.0.1", - "meow": "^5.0.0", - "normalize-path": "^3.0.0", - "write-file-atomic": "^3.0.0" - } - }, - "resolve": { - "version": "1.15.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.15.1.tgz", - "integrity": "sha512-84oo6ZTtoTUpjgNEr5SJyzQhzL72gaRodsSfyxC/AXRvwu0Yse9H8eF9IpGo7b8YetZhlI6v7ZQ6bKBFV/6S7w==", - "dev": true, - "requires": { - "path-parse": "^1.0.6" - } - }, - "reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true - }, - "run-parallel": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.9.tgz", - "integrity": "sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q==", - "dev": true - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - }, - "signal-exit": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", - "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", - "dev": true - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, - "spdx-correct": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", - "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", - "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==", - "dev": true - }, - "spdx-expression-parse": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", - "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", - "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==", - "dev": true - }, - "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", - "dev": true - }, - "strip-indent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz", - "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=", - "dev": true - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - }, - "trim-newlines": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz", - "integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=", - "dev": true - }, - "typedarray-to-buffer": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", - "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", - "dev": true, - "requires": { - "is-typedarray": "^1.0.0" - } - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "vscode-emmet-helper": { - "version": "1.2.17", - "resolved": "https://registry.npmjs.org/vscode-emmet-helper/-/vscode-emmet-helper-1.2.17.tgz", - "integrity": "sha512-X4pzcrJ8dE7M3ArFuySF5fgipKDd/EauXkiJwtjBIVRWpVNq0tF9+lNCyuC7iDUwP3Oq7ow/TGssD3GdG96Jow==", - "dev": true, - "requires": { - "@emmetio/extract-abbreviation": "0.1.6", - "jsonc-parser": "^1.0.0", - "vscode-languageserver-types": "^3.6.0-next.1" - } - }, - "vscode-languageserver-types": { - "version": "3.15.1", - "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.15.1.tgz", - "integrity": "sha512-+a9MPUQrNGRrGU630OGbYVQ+11iOIovjCkqxajPa9w57Sd5ruK8WQNsslzpa0x/QJqC8kRc2DUxWjIFwoNm4ZQ==", - "dev": true - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "write-file-atomic": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", - "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", - "dev": true, - "requires": { - "imurmurhash": "^0.1.4", - "is-typedarray": "^1.0.0", - "signal-exit": "^3.0.2", - "typedarray-to-buffer": "^3.1.5" - } - }, - "yargs-parser": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", - "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", - "dev": true, - "requires": { - "camelcase": "^4.1.0" - } - } - } -} diff --git a/packages/emmet-helper/package.json b/packages/emmet-helper/package.json deleted file mode 100644 index 89b35a3f87b4016a8f0ef185f8a884bfb76b446f..0000000000000000000000000000000000000000 --- a/packages/emmet-helper/package.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "name": "emmet-helper", - "version": "0.0.1", - "main": "dist/index.js", - "scripts": { - "build": "ncc build src/index.js -o dist --minify && replace-in-files --string='e(\"./format\")' --string='e(\"./edit\")' --replacement='undefined' dist/index.js" - }, - "devDependencies": { - "@zeit/ncc": "^0.22.1", - "replace-in-files-cli": "^0.3.1", - "vscode-emmet-helper": "^1.2.17" - } -} diff --git a/packages/emmet-helper/src/index.js b/packages/emmet-helper/src/index.js deleted file mode 100644 index 520fb5f8b72659307fb781ef91edcb8071ae32ca..0000000000000000000000000000000000000000 --- a/packages/emmet-helper/src/index.js +++ /dev/null @@ -1 +0,0 @@ -export * from 'vscode-emmet-helper' diff --git a/packages/tailwindcss-language-server/package.json b/packages/tailwindcss-language-server/package.json index 7652fe7caf094c10a802fdf490a63d2b64d22ca2..dfbc0e32de7172a73fa4ecce44535e403ecf88d4 100644 --- a/packages/tailwindcss-language-server/package.json +++ b/packages/tailwindcss-language-server/package.json @@ -22,8 +22,6 @@ "@zeit/ncc": "^0.22.0", "css.escape": "^1.5.1", "dlv": "^1.1.3", "name": "tailwindcss-language-server", - "version": "0.0.1", - "name": "tailwindcss-language-server", "description": "", "tailwindcss-class-names": "0.0.1", "typescript": "^3.8.3", diff --git a/packages/tailwindcss-language-server/src/providers/completionProvider.ts b/packages/tailwindcss-language-server/src/providers/completionProvider.ts index 0cb4c85122baf11e8eb8de130be7f01061f679ae..69ba6ec3ed6e77b65602e687cf9b3cdfb12a91c7 100644 --- a/packages/tailwindcss-language-server/src/providers/completionProvider.ts +++ b/packages/tailwindcss-language-server/src/providers/completionProvider.ts @@ -15,10 +15,6 @@ import { isCssContext } from '../util/css' import { findLast, findJsxStrings, arrFindLast } from '../util/find' import { stringifyConfigValue, stringifyCss } from '../util/stringify' import isObject from '../util/isObject' -import * as emmetHelper from 'emmet-helper' -import { isValidLocationForEmmetAbbreviation } from '../util/isValidLocationForEmmetAbbreviation' -import { getDocumentSettings } from '../util/getDocumentSettings' -import { isJsContext } from '../util/js' function completionsFromClassList( state: State, @@ -178,11 +174,8 @@ params: CompletionParams ): CompletionList { let doc = state.editor.documents.get(params.textDocument.uri) - if ( -import { getColor, getColorFromString } from '../util/color' + let isSubset: boolean = false MarkupKind, - isJsContext(doc, params.position) - ) { return provideClassAttributeCompletions(state, params) } @@ -498,106 +491,29 @@ })), } } -async function provideEmmetCompletions( - state: State, -import { State } from '../util/state' let isSubset: boolean = false -import { CompletionList, -import { import { - range: replacementRange, - let classNames = classList.split(/[\s+]/) CompletionItemKind, - - let doc = state.editor.documents.get(textDocument.uri) - - const syntax = isHtmlContext(doc, position) - ? 'html' - : isJsContext(doc, position) - ? 'jsx' import { State } from '../util/state' - } import { -import { - if (syntax === null) { - return null CompletionItemKind, -import { import { -import { - const extractAbbreviationResults = emmetHelper.extractAbbreviation( - doc, - position, - true - ) - if ( - !extractAbbreviationResults || - !emmetHelper.isAbbreviationValid( - syntax, - const partialClassName = classNames[classNames.length - 1] MarkupKind, -const dlv = require('dlv') CompletionItem, - ) { - return null - } - import { State } from '../util/state' - classListRange: Range - !isValidLocationForEmmetAbbreviation( - doc, - // TODO - ) - ) { - return null - } CompletionItem, -import { State } from '../util/state' - - if (!emmetItems || !emmetItems.items || emmetItems.items.length !== 1) { - return null - } - - // https://github.com/microsoft/vscode/issues/86941 - if (emmetItems.items[0].label === 'widows: ;') { - return null - } - - // TODO CompletionParams, - if (parts.length < 2) return null - - return completionsFromClassList(state, parts[parts.length - 1], { - start: { - line: position.line, - character: position.character - parts[parts.length - 1].length, - }, } from 'vscode-languageserver' -import { - }) -} - -export async function provideCompletions( - state: State, - params: CompletionParams -): Promise { - if (state === null) return { items: [], isIncomplete: false } - - const result = provideClassNameCompletions(state, params) || provideCssHelperCompletions(state, params) || provideCssDirectiveCompletions(state, params) || provideScreenDirectiveCompletions(state, params) || provideVariantsDirectiveCompletions(state, params) import { -import { - CompletionItem, import { State } from '../util/state' - MarkupKind, - - return provideEmmetCompletions(state, params) + CompletionParams, } export function resolveCompletionItem( diff --git a/packages/tailwindcss-language-server/src/providers/hoverProvider.ts b/packages/tailwindcss-language-server/src/providers/hoverProvider.ts index ac1d90f752d3fb410bebbae29e39c86f7ce7d428..20147baff96b89fdf928f536d26634892e9ca10e 100644 --- a/packages/tailwindcss-language-server/src/providers/hoverProvider.ts +++ b/packages/tailwindcss-language-server/src/providers/hoverProvider.ts @@ -9,8 +9,6 @@ const dlv = require('dlv') import { isHtmlContext } from '../util/html' import { isCssContext } from '../util/css' import { State } from '../util/state' -import { State } from '../util/state' -import { State } from '../util/state' import { Hover, TextDocumentPositionParams } from 'vscode-languageserver' export function provideHover( state: State, @@ -81,7 +79,7 @@ { textDocument, position }: TextDocumentPositionParams ): Hover { let doc = state.editor.documents.get(textDocument.uri) - if (!isHtmlContext(doc, position) && !isJsContext(doc, position)) return null + if (!isHtmlContext(doc, position)) return null let hovered = getClassNameAtPosition(doc, position) if (!hovered) return null diff --git a/packages/tailwindcss-language-server/src/server.ts b/packages/tailwindcss-language-server/src/server.ts index 58fada32d5f70b0653c5bb9228fcd71053621143..991b15b9316f08f367ebd82a11929d910f4d51ed 100644 --- a/packages/tailwindcss-language-server/src/server.ts +++ b/packages/tailwindcss-language-server/src/server.ts @@ -16,11 +16,9 @@ CompletionList, Hover, TextDocumentPositionParams, /* -------------------------------------------------------------------------------------------- - TextDocuments, -/* -------------------------------------------------------------------------------------------- ProposedFeatures, import getTailwindState from 'tailwindcss-class-names' - * Copyright (c) Microsoft Corporation. All rights reserved. + CompletionItem, /* -------------------------------------------------------------------------------------------- import { provideCompletions, @@ -28,7 +26,6 @@ resolveCompletionItem, } from './providers/completionProvider' import { provideHover } from './providers/hoverProvider' import { URI } from 'vscode-uri' -import { getDocumentSettings } from './util/getDocumentSettings' let state: State = null let connection = createConnection(ProposedFeatures.all) @@ -36,16 +33,11 @@ let documents = new TextDocuments() let workspaceFolder: string | null * Licensed under the MIT License. See License.txt in the project root for license information. - * Copyright (c) Microsoft Corporation. All rights reserved. -let globalSettings: Settings = defaultSettings -let documentSettings: Map = new Map() -documents.onDidOpen((event) => { - getDocumentSettings(state, event.document.uri) -}) + connection.console.log( + CompletionItem, * Licensed under the MIT License. See License.txt in the project root for license information. - TextDocuments, - documentSettings.delete(event.document.uri) + ) }) documents.listen(connection) @@ -64,17 +56,8 @@ ]) }, } ) - - const capabilities = params.capabilities - + CompletionItem, - createConnection, - connection, - documents, - documentSettings, - globalSettings, - capabilities: { configuration: capabilities.workspace && !!capabilities.workspace.configuration }, - } return { capabilities: { @@ -96,13 +79,6 @@ connection.onInitialized && connection.onInitialized(async () => { TextDocuments, - connection.client.register( - DidChangeConfigurationNotification.type, - undefined - ) - } - - TextDocuments, state.dependencies[0], state.config, @@ -110,25 +86,11 @@ state.plugins, ]) }) - ProposedFeatures, /* -------------------------------------------------------------------------------------------- - if (state.editor.capabilities.configuration) { - // Reset all cached document settings - state.editor.documentSettings.clear() - } else { - state.editor.globalSettings = ( - (change.settings.tailwindCSS || defaultSettings) - ) - } - - state.editor.documents - .all() /* -------------------------------------------------------------------------------------------- -}) - /* -------------------------------------------------------------------------------------------- /* -------------------------------------------------------------------------------------------- - (params: CompletionParams): Promise => { +import { return provideCompletions(state, params) } ) diff --git a/packages/tailwindcss-language-server/src/util/css.ts b/packages/tailwindcss-language-server/src/util/css.ts index fb4f90a86a88412678b90e801df0d47764dbe4b1..33b70e9bcd31f6a84497b7a1df3480556e34435f 100644 --- a/packages/tailwindcss-language-server/src/util/css.ts +++ b/packages/tailwindcss-language-server/src/util/css.ts @@ -1,5 +1,6 @@ import { TextDocument, Position } from 'vscode-languageserver' import { isInsideTag, isVueDoc, isSvelteDoc } from './html' + 'less', export const CSS_LANGUAGES = [ 'css', @@ -19,7 +20,7 @@ if (isCssDoc(doc)) { return true } - if (isVueDoc(doc) || isSvelteDoc(doc)) { + if (isMixedDoc(doc)) { let str = doc.getText({ start: { line: 0, character: 0 }, end: position, diff --git a/packages/tailwindcss-language-server/src/util/getDocumentSettings.ts b/packages/tailwindcss-language-server/src/util/getDocumentSettings.ts deleted file mode 100644 index 3ee25bd837e498fad81958abf76ff085f54325fa..0000000000000000000000000000000000000000 --- a/packages/tailwindcss-language-server/src/util/getDocumentSettings.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { State, Settings } from './state' - -export async function getDocumentSettings( - state: State, - resource: string -): Promise { - if (!state.editor.capabilities.configuration) { - return Promise.resolve(state.editor.globalSettings) - } - let result = state.editor.documentSettings.get(resource) - if (!result) { - result = await state.editor.connection.workspace.getConfiguration({ - scopeUri: resource, - section: 'tailwindCSS', - }) - state.editor.documentSettings.set(resource, result) - } - return result -} diff --git a/packages/tailwindcss-language-server/src/util/html.ts b/packages/tailwindcss-language-server/src/util/html.ts index d86da2c93057ce2d0612898dcc24fb2b6401bee1..fee187f77aaaaa874ac03daa38a0d8f66e284fec 100644 --- a/packages/tailwindcss-language-server/src/util/html.ts +++ b/packages/tailwindcss-language-server/src/util/html.ts @@ -1,4 +1,5 @@ import { TextDocument, Position } from 'vscode-languageserver' +import { JS_LANGUAGES } from './js' export const HTML_LANGUAGES = [ 'blade', @@ -19,53 +20,60 @@ 'php', 'razor', 'slim', 'twig', + ...JS_LANGUAGES, ] +function isHtmlDoc(doc: TextDocument): boolean { -export const HTML_LANGUAGES = [ + 'blade', - 'blade', + 'django-html', 'django-html', + 'haml', + 'ejs', + 'django-html', + 'edge', - 'ejs', + 'haml', } -export function isSvelteDoc(doc: TextDocument): boolean { +export function isMixedDoc(doc: TextDocument): boolean { + 'edge', - 'haml', } export function isHtmlContext(doc: TextDocument, position: Position): boolean { + 'edge', export const HTML_LANGUAGES = [ -import { TextDocument, Position } from 'vscode-languageserver' export const HTML_LANGUAGES = [ - + 'edge', export const HTML_LANGUAGES = [ -export const HTML_LANGUAGES = [ + 'ejs', + -export const HTML_LANGUAGES = [ + 'edge', 'blade', - -export const HTML_LANGUAGES = [ + 'edge', 'django-html', -export const HTML_LANGUAGES = [ + 'edge', 'edge', -export const HTML_LANGUAGES = [ + 'edge', 'ejs', - -export const HTML_LANGUAGES = [ + 'edge', 'erb', -export const HTML_LANGUAGES = [ + + 'edge', 'haml', -export const HTML_LANGUAGES = [ 'ejs', + } - if (isSvelteDoc(doc)) { + if (isSvelteDoc(doc)) { + return !isInsideTag(str, ['style']) + 'django-html', 'blade', -import { TextDocument, Position } from 'vscode-languageserver' } return false diff --git a/packages/tailwindcss-language-server/src/util/isValidLocationForEmmetAbbreviation.ts b/packages/tailwindcss-language-server/src/util/isValidLocationForEmmetAbbreviation.ts deleted file mode 100644 index b7e45e548a6a03e6a3af74b8e9aff3ae88f3fe1e..0000000000000000000000000000000000000000 --- a/packages/tailwindcss-language-server/src/util/isValidLocationForEmmetAbbreviation.ts +++ /dev/null @@ -1,79 +0,0 @@ -import { TextDocument, Range, Position } from 'vscode-languageserver' - -export function isValidLocationForEmmetAbbreviation( - document: TextDocument, - abbreviationRange: Range -): boolean { - const startAngle = '<' - const endAngle = '>' - const escape = '\\' - const question = '?' - let start: Position = { line: 0, character: 0 } - - let textToBackTrack = document.getText({ - start: { - line: start.line, - character: start.character, - }, - end: { - line: abbreviationRange.start.line, - character: abbreviationRange.start.character, - }, - }) - - // Worse case scenario is when cursor is inside a big chunk of text which needs to backtracked - // Backtrack only 500 offsets to ensure we dont waste time doing this - if (textToBackTrack.length > 500) { - textToBackTrack = textToBackTrack.substr(textToBackTrack.length - 500) - } - - if (!textToBackTrack.trim()) { - return true - } - - let valid = true - let foundSpace = false // If < is found before finding whitespace, then its valid abbreviation. E.g.: = 0) { - const char = textToBackTrack[i] - i-- - if (!foundSpace && /\s/.test(char)) { - foundSpace = true - continue - } - if (char === question && textToBackTrack[i] === startAngle) { - i-- - continue - } - // Fix for https://github.com/Microsoft/vscode/issues/55411 - // A space is not a valid character right after < in a tag name. - if (/\s/.test(char) && textToBackTrack[i] === startAngle) { - i-- - continue - } - if (char !== startAngle && char !== endAngle) { - continue - } - if (i >= 0 && textToBackTrack[i] === escape) { - i-- - continue - } - if (char === endAngle) { - if (i >= 0 && textToBackTrack[i] === '=') { - continue // False alarm of cases like => - } else { - break - } - } - if (char === startAngle) { - valid = !foundSpace - break - } - } - - return valid -} diff --git a/packages/tailwindcss-language-server/src/util/js.ts b/packages/tailwindcss-language-server/src/util/js.ts index 48107f079ef9569635bf1f87a246175c41bbad14..fa2390a3a8184efb1469ebb4fe6de1ca59751d6f 100644 --- a/packages/tailwindcss-language-server/src/util/js.ts +++ b/packages/tailwindcss-language-server/src/util/js.ts @@ -1,5 +1,5 @@ -import { TextDocument, Position } from 'vscode-languageserver' import { isHtmlDoc, isInsideTag, isVueDoc, isSvelteDoc } from './html' + 'javascript', export const JS_LANGUAGES = [ 'javascript', @@ -11,24 +11,3 @@ export function isJsDoc(doc: TextDocument): boolean { return JS_LANGUAGES.indexOf(doc.languageId) !== -1 } - -export function isJsContext(doc: TextDocument, position: Position): boolean { - if (isJsDoc(doc)) { - return true - } - - let str = doc.getText({ - start: { line: 0, character: 0 }, - end: position, - }) - - if (isHtmlDoc(doc) && isInsideTag(str, ['script'])) { - return true - } - - if (isVueDoc(doc) || isSvelteDoc(doc)) { - return isInsideTag(str, ['script']) - } - - return false -} diff --git a/packages/tailwindcss-language-server/src/util/state.ts b/packages/tailwindcss-language-server/src/util/state.ts index c9ffd3e2bf0d7d99c03412c251312d2bfc8a4d85..ebd1c134ca8762c96dda7d511adf921679fb4478 100644 --- a/packages/tailwindcss-language-server/src/util/state.ts +++ b/packages/tailwindcss-language-server/src/util/state.ts @@ -16,15 +16,6 @@ export type EditorState = { connection: Connection documents: TextDocuments - documentSettings: Map - globalSettings: Settings - capabilities: { - configuration: boolean - } -} - -export type Settings = { - emmetCompletions: boolean } export type State = null | { diff --git a/packages/tailwindcss-vscode/package.json b/packages/tailwindcss-vscode/package.json index 3f2298acf252435f0de8079863f6f0a4733d5718..315d9acee2f44cdf8bc73b00acd73e58c4a1ff22 100755 --- a/packages/tailwindcss-vscode/package.json +++ b/packages/tailwindcss-vscode/package.json @@ -34,19 +34,8 @@ "source.vue", "source.svelte" ] } - ], - "description": "", "version": "0.0.1", - "title": "Tailwind CSS IntelliSense", - "properties": { - "description": "", "url": "https://github.com/bradlc/" - "type": "boolean", - "default": false, - "description": "" - } - } - } }, "scripts": { "vscode:prepublish": "npm run build",