{"_id":"@atlassianlabs/jql-autocomplete","_rev":"10-f185721955bad48fcc3433142b749173","name":"@atlassianlabs/jql-autocomplete","dist-tags":{"latest":"1.1.1"},"versions":{"0.0.1":{"name":"@atlassianlabs/jql-autocomplete","version":"0.0.1","keywords":["jql","antlr4","autocomplete","jira"],"author":{"name":"Atlassian"},"license":"Apache-2.0","_id":"@atlassianlabs/jql-autocomplete@0.0.1","maintainers":[{"name":"doklovic","email":"doklovic@atlassian.com"},{"name":"prkb","email":"pramodkb@outlook.com"},{"name":"crumley","email":"crumley@gmail.com"},{"name":"nrundquist","email":"nrundquist@atlassian.com"},{"name":"dkolbly-atlassian","email":"dkolbly@atlassian.com"},{"name":"kpainter-atl","email":"kpainter@atlassian.com"},{"name":"soneymathew","email":"soney.mathew@gmail.com"}],"homepage":"https://bitbucket.org/atlassian/jql-grammar#readme","dist":{"shasum":"915585232e1670212eafb348d67357b5fcc98f3c","tarball":"https://registry.npmjs.org/@atlassianlabs/jql-autocomplete/-/jql-autocomplete-0.0.1.tgz","fileCount":58,"integrity":"sha512-HKZnQDJ31lQneNYRMWM3+kVZFwWKl2fxrTo9hTpLV6wvC4AozcthxzYatYldnpnHdBNqTG4ZZIUKdruPAMAE9g==","signatures":[{"sig":"MEYCIQDCON0b3wNlWPksMK3zun4w/gUMTwUVoMFjU97PxStNLQIhAM/0wDta1OPxOAFyRpjR9moKieY9BLjHJugxGs0FHRyb","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":180729,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhsqiCCRA9TVsSAnZWagAAyXQP/1NV8jT401emjUy/rYTR\npdmh5oYE720xXavv3sI6YGxvBRgYkfQ04eVmkW6ylJBzs14K1NKkF186ZDeG\nIY2IsCfczQ8qyUJ/K3Tbx8Jr+0Jy2hvenUSCVQLIzdMjkM61EL/RNZBtnLko\nxfVQBAgB+RcVXKVMmJSwi1G6JBviQVhFQ89BUaKiI/TDsQ6t4t9nPaKXmY77\niMryJkTbw/HRLWVwggBUaRO3X+UVX0mQeMp2mYvf4Tf7DJdQzbHNy3Q7TK2n\nohGEpKZzLFog4m6cjkAlwE/m/AxoMtsbT1LvEPuZ6A/paRTtz68SjcWUGHzx\nckPJV7gGi21avwyxg2BV87G/VoFdPLkHwzJiPzd6qdNrRllAAA2CmG3RTlJt\nNLQHnQNoGvibgot4mdOUnKOpCAxo4ebHsvyHF5WHhVIRtke4va3JAUqgSmRj\npGPIF1jKFuvecFbWkXAwIWPzq19q3Ho6ewLSenog2nWCVJ35mgjBDr4bESt3\nO27xEDJZcN9KTOo4V9iKmjtbwPGFvwiPKP6IX8IU8+XAoT+ftoQrKJ7B5NeN\n/IvP/bzOZ09KAa3TCbrjY7L34GYe/f2SgOSAeio0PtXVUApm5EeyhpAyCWwV\nWW8rcoQjM3runKKQW1dsjwQ7pZ19pD68QxrafnVPeNbUEkrdXQOWvMNrAmRp\nm2Go\r\n=213r\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/cjs/index.js","module":"dist/esm/index.js","engines":{"node":">=6.0.0"},"typings":"dist/types/index.d.ts","_npmUser":{"name":"kpainter-atl","email":"kpainter@atlassian.com"},"repository":{"url":"git+https://bitbucket.org/atlassian/jql-grammar.git","type":"git"},"_npmVersion":"6.14.15","description":"JQL autocomplete engine","directories":{},"sideEffects":false,"_nodeVersion":"14.18.0","dependencies":{"lodash":"^4.17.21","antlr4ts":"^0.5.0-alpha.3","antlr4-c3":"^1.1.16","@babel/runtime":"^7.15.4","@atlassianlabs/jql-parser":"^0.0.1"},"module:es2019":"dist/es2019/index.js","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/jql-autocomplete_0.0.1_1639098498463_0.8929728377413142","host":"s3://npm-registry-packages"}},"1.0.0":{"name":"@atlassianlabs/jql-autocomplete","version":"1.0.0","keywords":["jql","antlr4","autocomplete","jira"],"author":{"name":"Atlassian"},"license":"Apache-2.0","_id":"@atlassianlabs/jql-autocomplete@1.0.0","maintainers":[{"name":"doklovic","email":"doklovic@atlassian.com"},{"name":"prkb","email":"pramodkb@outlook.com"},{"name":"crumley","email":"crumley@gmail.com"},{"name":"nrundquist","email":"nrundquist@atlassian.com"},{"name":"dkolbly-atlassian","email":"dkolbly@atlassian.com"},{"name":"kpainter-atl","email":"kpainter@atlassian.com"},{"name":"soneymathew","email":"soney.mathew@gmail.com"}],"homepage":"https://bitbucket.org/atlassian/jql-grammar#readme","dist":{"shasum":"e149e8418792755cdd8fa00b6bbf52d19a3f0095","tarball":"https://registry.npmjs.org/@atlassianlabs/jql-autocomplete/-/jql-autocomplete-1.0.0.tgz","fileCount":58,"integrity":"sha512-BCH+u5sutnI7ohQ5P7iPpsP7XAkVWj5qbdA5kKb8fwmvnRc0OPl8peChM0NpNhyse9b107ARNMpWpgKEtNAVng==","signatures":[{"sig":"MEQCIH7IE7TeBdkM8MB9+/MSufYTV8UR+nrdJSuHD/o4R+I6AiAd4QT00HPk0UqgaUk3bNSUDSoXn1riCWjU5QGDNjxiFQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":180743,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiEvLoACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr3EA/+O1P6AZ61y+qC/FrcjAfvt2/9AyiWOLaRDZYoP/coWTOMvhPV\r\nXlSruKoXqiC+7hpTQfXM6kRvl++r65paaGxqQ8VwojyH8E15hqhBnZRlGfM2\r\n38/AMCPNuG8qSJ+XZbgXOHAlu8MRidXhgbUIett4xsvNabcajmmQSM3V8WVs\r\nqYGdjLaw+Tfse+A5sDYoTFkhp3URYpuPW+Dh8SqP7lqYLCmuHbaJvGSaBs1m\r\ncz39UVQ9w6N5a4P/Vw6qb3Nq+d77ecgKCKI3mhaNSy0MJQxrnbLUHJ7UhWJ2\r\ndWzj/LF38B/1ssEFuLieHSu/cA/qb4yjn38VpZp756VBKHiEbojGvpxvjcxq\r\ncMnbgwpl7Iiu8/ekn0gZ7iZSijqu1WsARxA7wjsvgqSOLhMV4uU/7JwXs5qm\r\ndA0iDE0MZcc77fF8bLYJ/w49GC5fnMz9ReYy3HYWHJdBjdsUIoIFwhL2nA/E\r\nYMKa6pFLXjG+O+igon7G8wCAeaKQzyZv3szuz6+tpCm9giDnFavKU0/e9NQ8\r\nJ3SGewZADwVIpDGrxbDcxYLewWHNK33pxWZJ48xKHCRiRmHzJBJQVdZpGPGN\r\nG1qx/tZr/Ik0Z+5JRPzi8gEc7auT2MSCwAQaa47vvAx4CHay/17nw87EjqGj\r\nkKiETdo5mSTkUtEYmXXXsf+aiWVZaFKnm50=\r\n=BSRu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/cjs/index.js","module":"dist/esm/index.js","engines":{"node":">=6.0.0"},"typings":"dist/types/index.d.ts","_npmUser":{"name":"kpainter-atl","email":"kpainter@atlassian.com"},"repository":{"url":"git+https://bitbucket.org/atlassian/jql-grammar.git","type":"git"},"_npmVersion":"6.14.12","description":"JQL autocomplete engine","directories":{},"sideEffects":false,"_nodeVersion":"12.22.1","dependencies":{"lodash":"^4.17.21","antlr4ts":"^0.5.0-alpha.3","antlr4-c3":"^1.1.16","@babel/runtime":"^7.15.4","@atlassianlabs/jql-parser":"^1.0.0"},"module:es2019":"dist/es2019/index.js","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/jql-autocomplete_1.0.0_1645408999975_0.5159809891445422","host":"s3://npm-registry-packages"}},"1.0.1":{"name":"@atlassianlabs/jql-autocomplete","version":"1.0.1","author":{"name":"Atlassian Pty Ltd"},"_id":"@atlassianlabs/jql-autocomplete@1.0.1","maintainers":[{"name":"doklovic","email":"doklovic@atlassian.com"},{"name":"prkb","email":"pramodkb@outlook.com"},{"name":"crumley","email":"crumley@gmail.com"},{"name":"nrundquist","email":"nrundquist@atlassian.com"},{"name":"dkolbly-atlassian","email":"dkolbly@atlassian.com"},{"name":"kpainter-atl","email":"kpainter@atlassian.com"},{"name":"soneymathew","email":"soney.mathew@gmail.com"}],"homepage":"https://bitbucket.org/atlassian/atlassian-frontend#readme","bugs":{"url":"https://bitbucket.org/atlassian/atlassian-frontend/issues"},"dist":{"shasum":"b35d9b735725132d216d2bd774c190b51cb89ed3","tarball":"https://registry.npmjs.org/@atlassianlabs/jql-autocomplete/-/jql-autocomplete-1.0.1.tgz","fileCount":60,"integrity":"sha512-jRM7JddEOPBdXQGC+e8z3NE4DWGn6i2uqc1fEScoVzaGYIyuRgZcxYEbtqGGFvNiDbbGcx3wKpy19jh/Qu10ew==","signatures":[{"sig":"MEUCIQCc7Q6qIc2lTNR0Uq/9TC1Du+1jKiamDiCGV5DAgJkwMQIgJFP+FPqJsaralhdWyh9oS/YoVQUIAq2k0heoM5o9YlY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":195452,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjMRm4ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpIDw/9HrH0hfD0F1RHqrdUc0hpptyVeeYYFdJJRb3bFQjntUiUK1qr\r\nl5yK6ubA3/zdiib6hcDRYNkUTQI14OqNe0aJKAruyILA283JgDhM6hWFMoBr\r\nWiQuXi5PhOe0Fn/VXVgdUhhdW+OafrNsVfuRI/hHWkb8CtzlU4X1DwKZhG9C\r\ncZwOYGC0Wx5hiYFuHPrE5Rc3ll2PVze2BRbUE4kpHGdOwFYVcnl6FjlYXSdV\r\nCLyJ2cbpjHvGWmqIlVWFu0yCz3yZgx3HI292a+jtGLCQsgZt/vEeXrgYgQmC\r\nLQudYc39IMu8mRVCV65aDLYaN9k63Qa7aAAZ8mwCrb3pSv0ebrRQhwPmhcia\r\noieIYhQjjkRJaL3q2QlFurVvOT9WTvrKY2f6/gZmidZ+vVy1t3MPMW3veHLt\r\naN/SCe6Wa0FZHZg9zHflwttZSyuULLgFsoAeS5tzO17PqVJrcxh61nB3KHAW\r\nNnaolQ4AR4Wn4tqvJm0MMvlmVG8W9vgv5hi2N5LYB7LftT9b9XhDdu1um1fv\r\nyAnIG3mGz2x9Ed44nofPdwe7hdldlqDSD5DoNV4xUU52vHtx/JbGdHbLHEby\r\nmmZxy7e3bUgJc84mEwguQBkG/5Z4k1bCOmoCysWj9M0IPff3O1/bHKACmVdw\r\nrxIF2zB6+UF67CjYfUbOgTd3SdYML48vLPY=\r\n=QDZx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/cjs/index.js","types":"dist/types/index.d.ts","module":"dist/esm/index.js","gitHead":"a9221c50cd188c4dfe7547d1481a59f6cba5018a","_npmUser":{"name":"kpainter-atl","email":"kpainter@atlassian.com"},"prettier":"@atlassian/atlassian-frontend-prettier-config-1.0.0","stricter":{"no-unused-dependencies":{"exclude":["assert","util"]}},"atlassian":{"team":"Jira Platform: Search Experience / Empanada","releaseModel":"continuous","inPublicMirror":false},"techstack":{"@repo/internal":{"styling":["static","emotion"],"theming":["react-context","tokens"],"analytics":["analytics-next"],"dom-events":"use-bind-event-listener","deprecation":["no-deprecated-imports"],"ui-components":["lite-mode"]},"@atlassian/frontend":{"import-structure":["atlassian-conventions"],"circular-dependencies":["file-and-folder-level"]}},"af:exports":{".":"./src/index.ts"},"repository":{"url":"git+https://bitbucket.org/atlassian/atlassian-frontend.git","type":"git"},"_npmVersion":"8.11.0","description":"JQL autocomplete engine","directories":{},"sideEffects":false,"_nodeVersion":"16.15.1","atlaskit:src":"src/index.ts","dependencies":{"util":"^0.12.4","assert":"^2.0.0","antlr4ts":"^0.5.0-alpha.3","antlr4-c3":"^1.1.16","@babel/runtime":"^7.0.0","@atlassianlabs/jql-parser":"^1.0.0"},"module:es2019":"dist/es2019/index.js","publishConfig":{"registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"4.3.5","@atlaskit/ssr":"*","@atlaskit/docs":"*","wait-for-expect":"^1.2.0","@atlaskit/webdriver-runner":"*","@atlaskit/visual-regression":"*","@atlassian/atlassian-frontend-prettier-config-1.0.0":"npm:@atlassian/atlassian-frontend-prettier-config@1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/jql-autocomplete_1.0.1_1664162232447_0.6222737477946068","host":"s3://npm-registry-packages"}},"1.1.0":{"name":"@atlassianlabs/jql-autocomplete","version":"1.1.0","author":{"name":"Atlassian Pty Ltd"},"_id":"@atlassianlabs/jql-autocomplete@1.1.0","maintainers":[{"name":"doklovic","email":"doklovic@atlassian.com"},{"name":"prkb","email":"pramodkb@outlook.com"},{"name":"crumley","email":"crumley@gmail.com"},{"name":"nrundquist","email":"nrundquist@atlassian.com"},{"name":"dkolbly-atlassian","email":"dkolbly@atlassian.com"},{"name":"kpainter-atl","email":"kpainter@atlassian.com"},{"name":"soneymathew","email":"soney.mathew@gmail.com"}],"homepage":"https://bitbucket.org/atlassian/atlassian-frontend#readme","bugs":{"url":"https://bitbucket.org/atlassian/atlassian-frontend/issues"},"dist":{"shasum":"5858dd5d6517bc06c3d685c3073f12bda6951a34","tarball":"https://registry.npmjs.org/@atlassianlabs/jql-autocomplete/-/jql-autocomplete-1.1.0.tgz","fileCount":60,"integrity":"sha512-gTfXn7fN9WF+TbTBVpyfQxlgmTb5mc/eqi0SY4qtNDPkGzJPCXkMk78w8b4rDhNcTYH/QrKp4abBZPIglKqhKA==","signatures":[{"sig":"MEQCIHU8zScsh0CuyGC5QHuIoMqtzjEsve+HPjrLayUVwYgDAiAmt5x+l1XjaHc0FTau1MercQESaVdzK4XhnOSkVjoPjA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":200439},"main":"dist/cjs/index.js","types":"dist/types/index.d.ts","module":"dist/esm/index.js","gitHead":"1950fd47b1d1170072a3210328249c06e8897f0f","_npmUser":{"name":"kpainter-atl","email":"kpainter@atlassian.com"},"prettier":"@atlassian/atlassian-frontend-prettier-config-1.0.0","stricter":{"no-unused-dependencies":{"exclude":["assert","util"]}},"atlassian":{"team":"Jira Platform: Search Experience / Empanada","releaseModel":"continuous","inPublicMirror":false},"techstack":{"@repo/internal":{"styling":["static","emotion"],"theming":["react-context"],"analytics":["analytics-next"],"dom-events":"use-bind-event-listener","deprecation":["no-deprecated-imports"],"design-tokens":["color","spacing"],"ui-components":["lite-mode"]},"@atlassian/frontend":{"import-structure":["atlassian-conventions"],"circular-dependencies":["file-and-folder-level"]}},"af:exports":{".":"./src/index.ts"},"repository":{"url":"git+https://bitbucket.org/atlassian/atlassian-frontend.git","type":"git"},"_npmVersion":"8.5.5","description":"JQL autocomplete engine","directories":{},"sideEffects":false,"_nodeVersion":"16.15.0","atlaskit:src":"src/index.ts","dependencies":{"util":"^0.12.4","assert":"^2.0.0","antlr4ts":"^0.5.0-alpha.3","antlr4-c3":"^1.1.16","@babel/runtime":"^7.0.0","@atlassianlabs/jql-parser":"^1.0.0"},"module:es2019":"dist/es2019/index.js","publishConfig":{"registry":"https://registry.npmjs.org/"},"typesVersions":{">=4.5 <4.9":{"*":["dist/types-ts4.5/*","dist/types-ts4.5/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"typescript":"~4.9.5","@atlaskit/ssr":"*","@atlaskit/docs":"*","wait-for-expect":"^1.2.0","@atlaskit/webdriver-runner":"*","@atlaskit/visual-regression":"*","@atlassian/atlassian-frontend-prettier-config-1.0.0":"npm:@atlassian/atlassian-frontend-prettier-config@1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/jql-autocomplete_1.1.0_1685687972217_0.8601830608872345","host":"s3://npm-registry-packages"}},"1.1.1":{"name":"@atlassianlabs/jql-autocomplete","version":"1.1.1","author":{"name":"Atlassian Pty Ltd"},"_id":"@atlassianlabs/jql-autocomplete@1.1.1","maintainers":[{"name":"doklovic","email":"doklovic@atlassian.com"},{"name":"prkb","email":"pramodkb@outlook.com"},{"name":"crumley","email":"crumley@gmail.com"},{"name":"nrundquist","email":"nrundquist@atlassian.com"},{"name":"dkolbly-atlassian","email":"dkolbly@atlassian.com"},{"name":"kpainter-atl","email":"kpainter@atlassian.com"},{"name":"soneymathew","email":"soney.mathew@gmail.com"}],"homepage":"https://bitbucket.org/atlassian/atlassian-frontend#readme","bugs":{"url":"https://bitbucket.org/atlassian/atlassian-frontend/issues"},"dist":{"shasum":"0ccd6d31a6111c1fc63a9daaf3a8a65c6d02244e","tarball":"https://registry.npmjs.org/@atlassianlabs/jql-autocomplete/-/jql-autocomplete-1.1.1.tgz","fileCount":73,"integrity":"sha512-Muuum+ACWmBI5gDnhBL45Rs+7oROZbxtduVi6N5Wo8upH6oAvp8UvIUIUolKYlC2JV+MS97Vm8xmW+BLytbc6g==","signatures":[{"sig":"MEYCIQDRnoLOJt0th5ZSrg1kwVHpTaRLMR4Hg8nv8D/sgHUj8AIhAIuuCKsZ6q2CMNQVkYuCi1xyl/mPjhgafbme61UHKJko","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226020},"main":"dist/cjs/index.js","types":"dist/types/index.d.ts","module":"dist/esm/index.js","gitHead":"f9d1e23bb972181f6ca3c229f4deb4bec6170515","_npmUser":{"name":"kpainter-atl","email":"kpainter@atlassian.com"},"prettier":"@atlassian/atlassian-frontend-prettier-config-1.0.0","stricter":{"no-unused-dependencies":{"exclude":["assert","util"]}},"atlassian":{"team":"Jira Platform: Search Experience / Empanada","releaseModel":"continuous","inPublicMirror":false},"techstack":{"@repo/internal":{"styling":["static","emotion"],"theming":["react-context"],"analytics":["analytics-next"],"dom-events":"use-bind-event-listener","deprecation":["no-deprecated-imports"],"design-tokens":["color","spacing"],"ui-components":["lite-mode"]},"@atlassian/frontend":{"import-structure":["atlassian-conventions"],"circular-dependencies":["file-and-folder-level"]}},"af:exports":{".":"./src/index.ts"},"repository":{"url":"git+https://bitbucket.org/atlassian/atlassian-frontend.git","type":"git"},"_npmVersion":"8.5.5","description":"JQL autocomplete engine","directories":{},"sideEffects":false,"_nodeVersion":"16.15.0","atlaskit:src":"src/index.ts","dependencies":{"util":"^0.12.4","assert":"^2.0.0","antlr4ts":"0.5.0-alpha.4","antlr4-c3":"3.0.1","@babel/runtime":"^7.0.0","@atlassianlabs/jql-parser":"^1.0.0"},"module:es2019":"dist/es2019/index.js","typesVersions":{">=4.5 <4.9":{"*":["dist/types-ts4.5/*","dist/types-ts4.5/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"typescript":"~4.9.5","wait-for-expect":"^1.2.0","@atlassian/atlassian-frontend-prettier-config-1.0.0":"npm:@atlassian/atlassian-frontend-prettier-config@1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/jql-autocomplete_1.1.1_1689135913443_0.7381831712150884","host":"s3://npm-registry-packages"}}},"time":{"created":"2021-12-10T01:08:18.410Z","modified":"2026-06-24T07:25:57.199Z","0.0.1":"2021-12-10T01:08:18.645Z","1.0.0":"2022-02-21T02:03:20.202Z","1.0.1":"2022-09-26T03:17:12.658Z","1.1.0":"2023-06-02T06:39:32.374Z","1.1.1":"2023-07-12T04:25:13.626Z"},"bugs":{"url":"https://bitbucket.org/atlassian/atlassian-frontend/issues"},"author":{"name":"Atlassian Pty Ltd"},"homepage":"https://bitbucket.org/atlassian/atlassian-frontend#readme","repository":{"url":"git+https://bitbucket.org/atlassian/atlassian-frontend.git","type":"git"},"description":"JQL autocomplete engine","maintainers":[{"email":"eng-development-tooling-artifacts@atlassian.com","name":"atlassianartifactteam"}],"readme":"# JQL Autocomplete\n\n[![Atlassian license](https://img.shields.io/badge/license-Apache%202.0-blue.svg?style=flat-square)](LICENSE)\n\nThis package allows consumers to retrieve autocomplete suggestions for a given JQL query. JQL\nAutocomplete leverages the [antlr4-c3](https://github.com/mike-lischke/antlr4-c3) library to provide\ncode completion candidates using the ANTLR4 generated `@atlassianlabs/jql-parser`. Refer to\n[antlr4-c3](https://github.com/mike-lischke/antlr4-c3) for a more in-depth introduction into code\ncompletion with ANTLR4 grammars.\n\n## Usage\n\nFor a simple use case you'll want to construct a new `JQLAutocomplete` object for a given source\nquery.\n\n```typescript\nimport { JQLAutocomplete } from '@atlassianlabs/jql-autocomplete';\n\nconst autocomplete = JQLAutocomplete.fromText(\"assignee = currentUser()\");\n```\n\nYou can then specify the (zero-indexed) caret position to retrieve suggestions for, e.g.:\n```typescript\n// Caret positioned at \"assignee = \"\nconst selectionStart = 11;\nconst selectionStop = 11;\nconst suggestions = autocomplete.getJQLSuggestionsForCaretPosition([\n  selectionStart,\n  selectionStop,\n]);\n\nconsole.log(suggestions);\n```\nWill output the following response:\n```json\n{\n  \"tokens\": {\n    \"matchedText\": \"\",\n    \"replacePosition\": [11,11],\n    \"values\": [\"EMPTY\"]\n  },\n  \"rules\": {\n    \"function\": {\n      \"matchedText\": \"\",\n      \"replacePosition\": [11,11],\n      \"context\": {\n        \"field\": \"assignee\",\n        \"operator\": \"=\"\n      }\n    },\n    \"value\": {\n      \"matchedText\": \"\",\n      \"replacePosition\": [11,11],\n      \"context\": {\n        \"field\": \"assignee\",\n        \"operator\": \"=\"\n      }\n    }\n  }\n}\n```\n\nThis includes a collection of [tokens](https://github.com/antlr/antlr4/blob/master/doc/lexer-rules.md#lexer-rules)\nand [rules](https://github.com/antlr/antlr4/blob/master/doc/parser-rules.md) that are valid for the\ngiven caret position. Rules are essential for deriving more than just keywords from your\nautocomplete.\n\nAs you can see in the above example a valid query could be produced using:\n- An `EMPTY` token, e.g. `assignee = EMPTY`\n- A `function` rule, e.g. `assignee = currentUser()`\n- A `value` rule, e.g. `assignee = xxxxxxxxx`\n\nTypically, when encountering rules you'll want to enrich this information with Jira data. To do so\nyou can leverage [Jira Cloud REST API's](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-jql/).\n\n## Installation\n\n```sh\nyarn add @atlassianlabs/jql-autocomplete\n```\n\n## Documentation\n### Fine tuning\n\nWhen constructing an autocomplete object you can specify a collection of `ignoredTokens` and\n`preferredRules`. When not provided, the autocomplete engine specified default arguments which are\nsuitable for most autocomplete use cases. You can read more about these options in the\n[antlr4-c3 documentation](https://github.com/mike-lischke/antlr4-c3#fine-tuning).\n\nWe also extend the `antlr4-c3` configuration options with a new argument, `delimiterTokens`. By\ndefault `JQLAutocomplete` will provide suggestions for the token immediately preceding the caret.\nWhen the caret is positioned at a delimiter token then we'll look for suggestions **after** the\ncurrent token.\n\nFor example:\n\n```typescript\nimport { JQLLexer, JQLParser } from '@atlassianlabs/jql-parser';\nimport { JQLAutocomplete } from '@atlassianlabs/jql-autocomplete';\n\nconst ignoredTokens = new Set([JQLLexer.NOT_EQUALS]); // Exclude != tokens from suggestions\nconst preferredRules = new Set([JQLParser.RULE_jqlField]) // Only show rule suggestions for fields\nconst delimiterTokens = new Set([JQLLexer.COMMA]) // Give suggestions for tokens AFTER commas\n\nconst autocomplete = JQLAutocomplete.fromText(\"assignee = currentUser()\", ignoredTokens, preferredRules, delimiterTokens);\n```\n\n## Support\n\nFor developers outside of Atlassian looking for help, or to report issues, [please make a post on the community forum](https://community.developer.atlassian.com/c/atlassian-ecosystem-design).\nWe will monitor the forums and redirect topics to the appropriate maintainers.\n\n## License\nCopyright (c) 2021 - 2022 Atlassian and others. Apache 2.0 licensed, see [LICENSE](LICENSE) file.\n","readmeFilename":"README.md"}