{"_id":"@azimutt/connector-mysql","_rev":"9-f301566931749aab627264baf7914e03","name":"@azimutt/connector-mysql","dist-tags":{"latest":"0.1.5"},"versions":{"0.0.1":{"name":"@azimutt/connector-mysql","version":"0.0.1","keywords":[],"author":{"url":"https://loicknuchel.fr","name":"Loïc Knuchel","email":"loicknuchel@gmail.com"},"license":"MIT","_id":"@azimutt/connector-mysql@0.0.1","maintainers":[{"name":"sbouaked","email":"sbouaked@pm.me"},{"name":"loicknuchel","email":"loicknuchel@gmail.com"}],"homepage":"https://azimutt.app","bugs":{"url":"https://github.com/azimuttapp/azimutt/issues"},"dist":{"shasum":"e64bfdba02d3ec237f1af7e4d15e912cbc08e618","tarball":"https://registry.npmjs.org/@azimutt/connector-mysql/-/connector-mysql-0.0.1.tgz","fileCount":27,"integrity":"sha512-LSV1BJfwRpQH70s4n6wke1XHJEIJ21uk+YGoxMqqfcfjvedv3VrV5w9Fu2XdopCUNs7dETwDPD4f1EjzFpf4FA==","signatures":[{"sig":"MEQCIFtNdCxp6czsxspqSbwypjgJegfq0lLXw1Gb7ParEDTnAiA8AYrWnoNmUjax0A0k6e4NWrlYFvnWZuDH+E5x67rEXQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":64306},"main":"./out/index.js","types":"./out/index.d.ts","gitHead":"d99f8872a0b9f0231e3801f8f626d03171a2ce52","scripts":{"test":"jest","build":"rm -rf ./out && tsc","setup":"npm install && npm run build","update":"npm update --save-dev && npm update --save && npm install","dry-publish":"npm run build && npm pack"},"_npmUser":{"name":"loicknuchel","email":"loicknuchel@gmail.com"},"repository":{"url":"git+https://github.com/azimuttapp/azimutt.git","type":"git","directory":"libs/connector-mysql"},"_npmVersion":"9.6.4","description":"Connect to MySQL, extract schema, run analysis and queries","directories":{},"_nodeVersion":"20.1.0","dependencies":{"mysql2":"3.3.3","@azimutt/json-infer-schema":"0.0.2"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","ts-jest":"^29.1.0","typescript":"^4.9.5","@types/jest":"^29.5.1","@jest/globals":"^29.5.0"},"_npmOperationalInternal":{"tmp":"tmp/connector-mysql_0.0.1_1685909439163_0.5347478545882967","host":"s3://npm-registry-packages"}},"0.0.2":{"name":"@azimutt/connector-mysql","version":"0.0.2","keywords":[],"author":{"url":"https://loicknuchel.fr","name":"Loïc Knuchel","email":"loicknuchel@gmail.com"},"license":"MIT","_id":"@azimutt/connector-mysql@0.0.2","maintainers":[{"name":"sbouaked","email":"sbouaked@pm.me"},{"name":"loicknuchel","email":"loicknuchel@gmail.com"}],"homepage":"https://azimutt.app","bugs":{"url":"https://github.com/azimuttapp/azimutt/issues"},"dist":{"shasum":"9d63d72bacb0d3f5bf0b3dace43278e8b4093bae","tarball":"https://registry.npmjs.org/@azimutt/connector-mysql/-/connector-mysql-0.0.2.tgz","fileCount":27,"integrity":"sha512-LDawAYfHaG9oWQQNp9QSNzIKh5oQ5KIspTYf43OwA7I6kYPPt5nf9m6oAnFKac3FQ3dxYXXX6Bq2wVxNDuGvRA==","signatures":[{"sig":"MEUCIDTC5DteA9sGODvIioYkcpzqssxcjdfITNwtdF2x7llAAiEAyFqcUG/SOetSw5CqTGz4nXvY1QhcQFqawS0AEYM03RQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":61968},"main":"./out/index.js","types":"./out/index.d.ts","gitHead":"58926341a7082325479620fe35c72675115a0a11","scripts":{"test":"jest","build":"rm -rf ./out && tsc","setup":"npm install && npm run build","update":"npm update --save-dev && npm update --save && npm install","dry-publish":"npm run build && npm pack"},"_npmUser":{"name":"loicknuchel","email":"loicknuchel@gmail.com"},"repository":{"url":"git+https://github.com/azimuttapp/azimutt.git","type":"git","directory":"libs/connector-mysql"},"_npmVersion":"9.6.4","description":"Connect to MySQL, extract schema, run analysis and queries","directories":{},"_nodeVersion":"20.1.0","dependencies":{"mysql2":"3.3.3","@azimutt/json-infer-schema":"0.0.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","ts-jest":"^29.1.0","typescript":"^4.9.5","@types/jest":"^29.5.2","@jest/globals":"^29.5.0"},"_npmOperationalInternal":{"tmp":"tmp/connector-mysql_0.0.2_1685951103584_0.5301112653793507","host":"s3://npm-registry-packages"}},"0.0.3":{"name":"@azimutt/connector-mysql","version":"0.0.3","keywords":[],"author":{"url":"https://loicknuchel.fr","name":"Loïc Knuchel","email":"loicknuchel@gmail.com"},"license":"MIT","_id":"@azimutt/connector-mysql@0.0.3","maintainers":[{"name":"sbouaked","email":"sbouaked@pm.me"},{"name":"loicknuchel","email":"loicknuchel@gmail.com"}],"homepage":"https://azimutt.app","bugs":{"url":"https://github.com/azimuttapp/azimutt/issues"},"dist":{"shasum":"ee1f10f09f83e0ee8b8dccdbe0162dbe1bfd58d3","tarball":"https://registry.npmjs.org/@azimutt/connector-mysql/-/connector-mysql-0.0.3.tgz","fileCount":37,"integrity":"sha512-28s9LqEtbrU/B4uQWzNJBFAQ5Im6HcuVAj35xyr4fU8osWRHCuRVJi1hvOj2NBBCwaNt5AFQ0cvFpJAMX93Tzw==","signatures":[{"sig":"MEUCIGnsz4mLD0Nzpbb2XTgIYAU1iff4gQMnIHz7cxNdKMrPAiEA1QzvFU/q44eMYxja91/PJTxLjOWwGzQMdq2m3XT+9gA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":67079},"main":"./out/index.js","types":"./out/index.d.ts","gitHead":"91fa2e9160d6ab8087605a57678dc7bb01529101","scripts":{"test":"jest","build":"rm -rf ./out && tsc","setup":"npm install && npm run build","update":"npm update --save-dev && npm update --save && npm install","dry-publish":"npm run build && npm test && npm pack"},"_npmUser":{"name":"loicknuchel","email":"loicknuchel@gmail.com"},"repository":{"url":"git+https://github.com/azimuttapp/azimutt.git","type":"git","directory":"libs/connector-mysql"},"_npmVersion":"9.8.0","description":"Connect to MySQL, extract schema, run analysis and queries","directories":{},"_nodeVersion":"20.5.1","dependencies":{"mysql2":"3.3.3","@azimutt/json-infer-schema":"0.0.6"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.1","typescript":"^4.9.5","@types/jest":"^29.5.8","@jest/globals":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/connector-mysql_0.0.3_1700253296850_0.45045566528958947","host":"s3://npm-registry-packages"}},"0.0.4":{"name":"@azimutt/connector-mysql","version":"0.0.4","keywords":[],"author":{"url":"https://loicknuchel.fr","name":"Loïc Knuchel","email":"loicknuchel@gmail.com"},"license":"MIT","_id":"@azimutt/connector-mysql@0.0.4","maintainers":[{"name":"sbouaked","email":"sbouaked@pm.me"},{"name":"loicknuchel","email":"loicknuchel@gmail.com"}],"homepage":"https://azimutt.app","bugs":{"url":"https://github.com/azimuttapp/azimutt/issues"},"dist":{"shasum":"0d932e31665a3424223f9b5413246a76aeaced16","tarball":"https://registry.npmjs.org/@azimutt/connector-mysql/-/connector-mysql-0.0.4.tgz","fileCount":37,"integrity":"sha512-jBqpzVf2eWq2J73IS1aTWyFR0Nk7bXTumVFl+9wqDnPzFS1aoW2KMvl6osWOkK3NvMsedZCGv7d08xRsX5abmA==","signatures":[{"sig":"MEQCIBebjQI9q+KNC/gYevyvOLIIuQdQqAeOcExwwR9o3A7eAiAOYUSRidg6m47ZzSw9Tz+eYbtkSL9a+59Ejz905QY7dQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":74348},"main":"./out/index.js","types":"./out/index.d.ts","gitHead":"2ffa32734b33cc7045db8c9ae16ca95c655188b5","scripts":{"test":"jest","build":"rm -rf ./out && tsc","setup":"npm install && npm run build","update":"npm update --save-dev && npm update --save && npm install","dry-publish":"npm run build && npm test && npm pack"},"_npmUser":{"name":"loicknuchel","email":"loicknuchel@gmail.com"},"repository":{"url":"git+https://github.com/azimuttapp/azimutt.git","type":"git","directory":"libs/connector-mysql"},"_npmVersion":"10.3.0","description":"Connect to MySQL, extract schema, run analysis and queries","directories":{},"_nodeVersion":"21.6.0","dependencies":{"mysql2":"3.3.3","@azimutt/database-types":"^0.0.16"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.2","typescript":"^5.3.3","@types/jest":"^29.5.12","@jest/globals":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/connector-mysql_0.0.4_1709585268493_0.17488340399834135","host":"s3://npm-registry-packages"}},"0.1.0":{"name":"@azimutt/connector-mysql","version":"0.1.0","keywords":[],"author":{"url":"https://loicknuchel.fr","name":"Loïc Knuchel","email":"loicknuchel@gmail.com"},"license":"MIT","_id":"@azimutt/connector-mysql@0.1.0","maintainers":[{"name":"sbouaked","email":"sbouaked@pm.me"},{"name":"loicknuchel","email":"loicknuchel@gmail.com"}],"homepage":"https://azimutt.app","bugs":{"url":"https://github.com/azimuttapp/azimutt/issues"},"dist":{"shasum":"6570344f4352a6657f7f1aa641f53718a5792386","tarball":"https://registry.npmjs.org/@azimutt/connector-mysql/-/connector-mysql-0.1.0.tgz","fileCount":32,"integrity":"sha512-V0hvmFi9LwsblTcf0VBxme+YJh/aQ1MUvX56zWQL+8fW5vQRllXEIDbCDE3Bi8LktWoHxCimUdFTgtRjWBCijA==","signatures":[{"sig":"MEMCIHAdc9y5hS7uqr0JaGZpwuJIlq7rAYGvkL3QIh7LD71KAh8X+UAV2Z+AXt2aM+2vCGcw2HQ97Wf6Cp01QCoHdHDP","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":83021},"main":"./out/index.js","types":"./out/index.d.ts","gitHead":"f26972d7a89701d8606311768a16d0f45b9bbef2","scripts":{"test":"jest","build":"rm -rf ./out && tsc","setup":"npm install && npm run build","update":"npm update --save-dev && npm update --save && npm install","dry-publish":"npm run build && npm test && npm pack"},"_npmUser":{"name":"loicknuchel","email":"loicknuchel@gmail.com"},"repository":{"url":"git+https://github.com/azimuttapp/azimutt.git","type":"git","directory":"libs/connector-mysql"},"_npmVersion":"10.3.0","description":"Connect to MySQL, extract schema, run analysis and queries","directories":{},"_nodeVersion":"21.6.0","dependencies":{"mysql2":"3.3.3","@azimutt/utils":"^0.1.0","@azimutt/models":"^0.1.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.2","typescript":"^5.4.5","@types/jest":"^29.5.12","@jest/globals":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/connector-mysql_0.1.0_1713993201180_0.5046186493972278","host":"s3://npm-registry-packages"}},"0.1.1":{"name":"@azimutt/connector-mysql","version":"0.1.1","keywords":[],"author":{"url":"https://loicknuchel.fr","name":"Loïc Knuchel","email":"loicknuchel@gmail.com"},"license":"MIT","_id":"@azimutt/connector-mysql@0.1.1","maintainers":[{"name":"sbouaked","email":"sbouaked@pm.me"},{"name":"loicknuchel","email":"loicknuchel@gmail.com"}],"homepage":"https://azimutt.app","bugs":{"url":"https://github.com/azimuttapp/azimutt/issues"},"dist":{"shasum":"8bdae3724d8f44d085e09e7ea44b3443039ad0b1","tarball":"https://registry.npmjs.org/@azimutt/connector-mysql/-/connector-mysql-0.1.1.tgz","fileCount":32,"integrity":"sha512-IKJ7VaVYEXLeVA9MF/ZWdKpFMKrasMdsy7vbyqnv4KIY3fkeAsALA85DXFbd/vm9XkZnscN9pexaW7/ug5kVzg==","signatures":[{"sig":"MEUCIQDVx6ZB9fYpOQhp3gBHQCd5VgBux5wccHma9jI8qKOXNgIge5BuBkqSNmCO+IpJBORS5wrZ8o+hl8ZMxHcYL1FgdPY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":83021},"main":"./out/index.js","types":"./out/index.d.ts","gitHead":"2ff38bf9096e42c3ea09da9ffced55283ad0d438","scripts":{"test":"jest","build":"rm -rf ./out && tsc","setup":"npm install && npm run build","update":"npm update --save-dev && npm update --save && npm install","dry-publish":"npm run build && npm test && npm pack"},"_npmUser":{"name":"loicknuchel","email":"loicknuchel@gmail.com"},"repository":{"url":"git+https://github.com/azimuttapp/azimutt.git","type":"git","directory":"libs/connector-mysql"},"_npmVersion":"10.3.0","description":"Connect to MySQL, extract schema, run analysis and queries","directories":{},"_nodeVersion":"21.6.0","dependencies":{"mysql2":"3.3.3","@azimutt/utils":"^0.1.1","@azimutt/models":"^0.1.4"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.2","typescript":"^5.4.5","@types/jest":"^29.5.12","@jest/globals":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/connector-mysql_0.1.1_1715700947373_0.03280755879656039","host":"s3://npm-registry-packages"}},"0.1.2":{"name":"@azimutt/connector-mysql","version":"0.1.2","keywords":[],"author":{"url":"https://loicknuchel.fr","name":"Loïc Knuchel","email":"loicknuchel@gmail.com"},"license":"MIT","_id":"@azimutt/connector-mysql@0.1.2","maintainers":[{"name":"sbouaked","email":"sbouaked@pm.me"},{"name":"loicknuchel","email":"loicknuchel@gmail.com"}],"homepage":"https://azimutt.app","bugs":{"url":"https://github.com/azimuttapp/azimutt/issues"},"dist":{"shasum":"51f048176b9c1ddd32ca99b5b84add05212f7633","tarball":"https://registry.npmjs.org/@azimutt/connector-mysql/-/connector-mysql-0.1.2.tgz","fileCount":32,"integrity":"sha512-3a+ehvsiPd77swjvcnwXL6a+T8IyDaXS8gE7o87Se7X5/475D70uL1/8/cv+E75l7VQJPW7q+jiAzkKjlIRzlQ==","signatures":[{"sig":"MEUCIEqn5jW8L9zfwOBg6OS0mDVZMprlRZGuLiADbnsvQ+xDAiEAjGAtFeZZk+HmGpeZqAjd1LHCoV5BZiRADAzhmtcjUYw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":85317},"main":"./out/index.js","types":"./out/index.d.ts","gitHead":"4ba1f789040a994c6b900e125530c46fe6e4c896","scripts":{"test":"jest","build":"rm -rf ./out && tsc","setup":"npm install && npm run build","update":"npm update --save-dev && npm update --save && npm install","dry-publish":"npm run build && npm test && npm pack"},"_npmUser":{"name":"loicknuchel","email":"loicknuchel@gmail.com"},"repository":{"url":"git+https://github.com/azimuttapp/azimutt.git","type":"git","directory":"libs/connector-mysql"},"_npmVersion":"10.3.0","description":"Connect to MySQL, extract schema, run analysis and queries","directories":{},"_nodeVersion":"21.6.0","dependencies":{"mysql2":"3.3.3","@azimutt/utils":"^0.1.1","@azimutt/models":"^0.1.4"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.1.2","typescript":"^5.4.5","@types/jest":"^29.5.12","@jest/globals":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/connector-mysql_0.1.2_1715885946853_0.9443495294109403","host":"s3://npm-registry-packages"}},"0.1.3":{"name":"@azimutt/connector-mysql","version":"0.1.3","keywords":[],"author":{"url":"https://loicknuchel.fr","name":"Loïc Knuchel","email":"loicknuchel@gmail.com"},"license":"MIT","_id":"@azimutt/connector-mysql@0.1.3","maintainers":[{"name":"sbouaked","email":"sbouaked@pm.me"},{"name":"loicknuchel","email":"loicknuchel@gmail.com"}],"homepage":"https://azimutt.app","bugs":{"url":"https://github.com/azimuttapp/azimutt/issues"},"dist":{"shasum":"16bf8c7f57fde13b30cabc02fa193f2f95f98c39","tarball":"https://registry.npmjs.org/@azimutt/connector-mysql/-/connector-mysql-0.1.3.tgz","fileCount":33,"integrity":"sha512-q3RhGgH2UONi9piyQquwNiFirkCxvWo+uNoSGLSh7sebwXMczDZLNrtK/4HYbjCXDTnBXcx/OGGB8vspGXQcNQ==","signatures":[{"sig":"MEUCIBxkS/NXcNheuVLt6U3n7sDQXwgNjEkNV7t5QQ1QAQNLAiEAwsqiPokiNnlKl28WKsXnT4w3qGnzuEJAJtovulEVP+s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95753},"main":"./out/index.js","_from":"file:azimutt-connector-mysql-0.1.3.tgz","types":"./out/index.d.ts","scripts":{"test":"jest","build":"rm -rf ./out && tsc","dry-publish":"pnpm run build && pnpm test && pnpm pack","build:docker":"npx tsc"},"_npmUser":{"name":"loicknuchel","email":"loicknuchel@gmail.com"},"_resolved":"/tmp/2a39b854e4aec8c829dd766ba7733fa2/azimutt-connector-mysql-0.1.3.tgz","_integrity":"sha512-q3RhGgH2UONi9piyQquwNiFirkCxvWo+uNoSGLSh7sebwXMczDZLNrtK/4HYbjCXDTnBXcx/OGGB8vspGXQcNQ==","repository":{"url":"git+https://github.com/azimuttapp/azimutt.git","type":"git","directory":"libs/connector-mysql"},"_npmVersion":"10.3.0","description":"Connect to MySQL, extract schema, run analysis and queries","directories":{},"_nodeVersion":"21.6.0","dependencies":{"mysql2":"3.3.5","@azimutt/utils":"^0.1.4","@azimutt/models":"^0.1.12"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.2.4","typescript":"^5.5.4","@types/jest":"^29.5.12","@types/node":"^22.1.0","@jest/globals":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/connector-mysql_0.1.3_1722795859741_0.38630363455014405","host":"s3://npm-registry-packages"}},"0.1.4":{"name":"@azimutt/connector-mysql","version":"0.1.4","keywords":[],"author":{"url":"https://loicknuchel.fr","name":"Loïc Knuchel","email":"loicknuchel@gmail.com"},"license":"MIT","_id":"@azimutt/connector-mysql@0.1.4","maintainers":[{"name":"sbouaked","email":"sbouaked@pm.me"},{"name":"loicknuchel","email":"loicknuchel@gmail.com"}],"homepage":"https://azimutt.app","bugs":{"url":"https://github.com/azimuttapp/azimutt/issues"},"dist":{"shasum":"3c364a4501a66ae2d31ce4cb1fe791ab456a8478","tarball":"https://registry.npmjs.org/@azimutt/connector-mysql/-/connector-mysql-0.1.4.tgz","fileCount":33,"integrity":"sha512-ImKpIOvX+i7BnjU1zZBNG+RBYhfFrHM7d0btYMeBzfVI7S9ixFiDERYlDPeuIvZ5D0w2mDZqTzWZemGYJ0p2sg==","signatures":[{"sig":"MEQCIA6QiGwH8XO4kfU+vHNz5VOv4B8wEdkbfUeVoJ7rY8QyAiAFByVOiVR3z77XKtcxnzucfMVYoJ+9gYqGlYvJanLBEQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95793},"main":"./out/index.js","_from":"file:azimutt-connector-mysql-0.1.4.tgz","types":"./out/index.d.ts","scripts":{"test":"jest","build":"rm -rf ./out && tsc","dry-publish":"pnpm run build && pnpm test && pnpm pack","build:docker":"npx tsc"},"_npmUser":{"name":"loicknuchel","email":"loicknuchel@gmail.com"},"_resolved":"/tmp/f69e793cb897314376d55a1d4bade04b/azimutt-connector-mysql-0.1.4.tgz","_integrity":"sha512-ImKpIOvX+i7BnjU1zZBNG+RBYhfFrHM7d0btYMeBzfVI7S9ixFiDERYlDPeuIvZ5D0w2mDZqTzWZemGYJ0p2sg==","repository":{"url":"git+https://github.com/azimuttapp/azimutt.git","type":"git","directory":"libs/connector-mysql"},"_npmVersion":"10.3.0","description":"Connect to MySQL, extract schema, run analysis and queries","directories":{},"_nodeVersion":"21.6.0","dependencies":{"mysql2":"3.3.5","@azimutt/utils":"^0.1.5","@azimutt/models":"^0.1.14"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","ts-jest":"^29.2.4","typescript":"^5.5.4","@types/jest":"^29.5.12","@types/node":"^22.1.0","@jest/globals":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/connector-mysql_0.1.4_1724777119676_0.43233537835106284","host":"s3://npm-registry-packages"}},"0.1.5":{"name":"@azimutt/connector-mysql","version":"0.1.5","description":"Connect to MySQL, extract schema, run analysis and queries","keywords":[],"homepage":"https://azimutt.app","author":{"name":"Loïc Knuchel","email":"loicknuchel@gmail.com","url":"https://loicknuchel.fr"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/azimuttapp/azimutt.git","directory":"libs/connector-mysql"},"main":"./out/index.js","types":"./out/index.d.ts","dependencies":{"mysql2":"3.3.5","@azimutt/models":"^0.1.15","@azimutt/utils":"^0.1.6"},"devDependencies":{"@jest/globals":"^29.7.0","@types/jest":"^29.5.13","@types/node":"^22.7.4","jest":"^29.7.0","ts-jest":"^29.2.5","typescript":"^5.6.2"},"scripts":{"test":"jest","build":"rm -rf ./out && tsc","build:docker":"npx tsc","dry-publish":"pnpm run build && pnpm test && pnpm pack"},"bugs":{"url":"https://github.com/azimuttapp/azimutt/issues"},"_id":"@azimutt/connector-mysql@0.1.5","_integrity":"sha512-SBoTe1VLx8eVt8kWGgoiFpXF9ErmopRka9pTA0jBmudTAZdkxkSUg0CQjGF6c4jlg+IAds/pVfKwlshe5SANBA==","_resolved":"/tmp/b061f60591f164d5e0a022b21f36d093/azimutt-connector-mysql-0.1.5.tgz","_from":"file:azimutt-connector-mysql-0.1.5.tgz","_nodeVersion":"21.6.0","_npmVersion":"10.3.0","dist":{"integrity":"sha512-SBoTe1VLx8eVt8kWGgoiFpXF9ErmopRka9pTA0jBmudTAZdkxkSUg0CQjGF6c4jlg+IAds/pVfKwlshe5SANBA==","shasum":"68826f14ac0cc058e30d880674ad19cce3c68da2","tarball":"https://registry.npmjs.org/@azimutt/connector-mysql/-/connector-mysql-0.1.5.tgz","fileCount":33,"unpackedSize":95849,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCe+AMOI5/ZxgpYUrCjWkDjdddwhHVW1UMXLqU1NHSIgAIgHJ4QDCfGElhph5m2TYIYfasr1XrPQV5yf3sLLOf1/9M="}]},"_npmUser":{"name":"loicknuchel","email":"loicknuchel@gmail.com"},"directories":{},"maintainers":[{"name":"sbouaked","email":"sbouaked@pm.me"},{"name":"loicknuchel","email":"loicknuchel@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/connector-mysql_0.1.5_1727633015884_0.23204013500361054"},"_hasShrinkwrap":false}},"time":{"created":"2023-06-04T20:10:39.080Z","modified":"2024-09-29T18:03:36.317Z","0.0.1":"2023-06-04T20:10:39.380Z","0.0.2":"2023-06-05T07:45:03.747Z","0.0.3":"2023-11-17T20:34:57.070Z","0.0.4":"2024-03-04T20:47:48.650Z","0.1.0":"2024-04-24T21:13:21.480Z","0.1.1":"2024-05-14T15:35:47.539Z","0.1.2":"2024-05-16T18:59:07.028Z","0.1.3":"2024-08-04T18:24:19.879Z","0.1.4":"2024-08-27T16:45:19.858Z","0.1.5":"2024-09-29T18:03:36.130Z"},"bugs":{"url":"https://github.com/azimuttapp/azimutt/issues"},"author":{"name":"Loïc Knuchel","email":"loicknuchel@gmail.com","url":"https://loicknuchel.fr"},"license":"MIT","homepage":"https://azimutt.app","keywords":[],"repository":{"type":"git","url":"git+https://github.com/azimuttapp/azimutt.git","directory":"libs/connector-mysql"},"description":"Connect to MySQL, extract schema, run analysis and queries","maintainers":[{"name":"sbouaked","email":"sbouaked@pm.me"},{"name":"loicknuchel","email":"loicknuchel@gmail.com"}],"readme":"# MySQL connector\n\nThis library allows to connect to [MySQL](https://www.mysql.com), extract its schema and more...\n\nIt lists all schemas, tables, columns, relations and types and format them in a JSON Schema.\n\nThis library is made by [Azimutt](https://azimutt.app) to allow people to explore their MySQL database.\nIt's accessible through the [Desktop app](../../desktop) (soon), the [CLI](https://www.npmjs.com/package/azimutt) or even the website using the [gateway](../../gateway) server.\n\n**Feel free to use it and even submit PR to improve it:**\n\n- improve [MySQL queries](./src/mysql.ts) (look at `getSchema` function)\n\n## Publish\n\n- update `package.json` version\n- update lib versions (`pnpm -w run update` + manual)\n- test with `pnpm run dry-publish` and check `azimutt-connector-mysql-x.y.z.tgz` content\n- launch `pnpm publish --no-git-checks --access public`\n\nView it on [npm](https://www.npmjs.com/package/@azimutt/connector-mysql).\n\n## Dev\n\nIf you need to develop on multiple libs at the same time (ex: want to update a connector and try it through the CLI), depend on local libs but publish & revert before commit.\n\n- Depend on a local lib: `pnpm add <lib>`, ex: `pnpm add @azimutt/models`\n- \"Publish\" lib locally by building it: `pnpm run build`\n\n## Local Setup\n\nYou can use the [MySQL Official image](https://hub.docker.com/_/mysql):\n\n```bash\ndocker run --name mysql_sample -p 3306:3306 -e MYSQL_ROOT_PASSWORD=mysql -e MYSQL_USER=azimutt -e MYSQL_PASSWORD=azimutt -e MYSQL_DATABASE=mysql_sample mysql:latest\n```\n\nConnect with host (`localhost`), port (`3306`), user (`azimutt`) and pass (`azimutt`) or using `mysql://azimutt:azimutt@localhost:3306/mysql_sample`, then add some tables and data:\n\n```mysql\nCREATE TABLE users (\n  id              BIGINT                  NOT NULL AUTO_INCREMENT PRIMARY KEY,\n  name            VARCHAR(50)             NOT NULL,\n  role            VARCHAR(10)             NOT NULL,\n  email           VARCHAR(255)            NOT NULL,\n  email_confirmed BOOLEAN   DEFAULT false NOT NULL,\n  settings        JSON,\n  created_at      TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n  CONSTRAINT users_lower_email_chk CHECK (email = LOWER(email)),\n  CHECK (name <> email)\n);\nALTER TABLE users COMMENT = 'List all users';\nALTER TABLE users MODIFY name VARCHAR(50) COMMENT 'The user name';\nCREATE UNIQUE INDEX users_email_uniq ON users (email);\nCREATE INDEX users_role_idx ON users (role);\nCREATE INDEX users_plan_idx ON users ((CAST(settings->>'$.plan.name' AS CHAR(255))));\nCREATE INDEX users_full_idx ON users (name, email, (CAST(settings->>'$.plan.name' AS CHAR(10))), (CAST(settings->>'$.color' AS CHAR(30))));\n\nCREATE VIEW admins AS SELECT id, name, email FROM users WHERE role = 'admin';\nCREATE VIEW guests AS SELECT id, name, email FROM users WHERE role = 'guest';\n\n\nCREATE TABLE posts (\n  id         BIGINT      NOT NULL AUTO_INCREMENT PRIMARY KEY,\n  title      VARCHAR(50) NOT NULL,\n  content    TEXT,\n  created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n  created_by BIGINT      NOT NULL,\n  CONSTRAINT posts_created_by_fk FOREIGN KEY (created_by) REFERENCES users (id)\n);\n\nCREATE TABLE post_authors (\n  post_id BIGINT NOT NULL,\n  user_id BIGINT NOT NULL,\n  CONSTRAINT post_authors_pk PRIMARY KEY (post_id, user_id),\n  CONSTRAINT post_authors_post_id_fk FOREIGN KEY (post_id) REFERENCES posts (id),\n  CONSTRAINT post_authors_user_id_fk FOREIGN KEY (user_id) REFERENCES users (id)\n);\n\nCREATE TABLE post_author_details (\n  detail_post_id BIGINT      NOT NULL,\n  detail_user_id BIGINT      NOT NULL,\n  role           VARCHAR(10) NOT NULL,\n  CONSTRAINT post_author_details_pk PRIMARY KEY (detail_post_id, detail_user_id),\n  CONSTRAINT post_author_details_post_user_fk FOREIGN KEY (detail_post_id, detail_user_id) REFERENCES post_authors (post_id, user_id)\n);\n\nCREATE TABLE ratings (\n  user_id   BIGINT      NOT NULL,\n  item_kind VARCHAR(50) NOT NULL,\n  item_id   BIGINT      NOT NULL,\n  rating    INT         NOT NULL CHECK ( 0 <= rating AND rating <= 5 ),\n  review    VARCHAR(255),\n  CONSTRAINT ratings_pk PRIMARY KEY (user_id, item_kind, item_id),\n  CONSTRAINT ratings_user_id_fk FOREIGN KEY (user_id) REFERENCES users (id)\n);\n\n\n-- Insert data\nINSERT INTO users (name, role, email, settings) VALUES ('Loïc', 'admin', 'loic@mail.com', '{\"color\": \"red\", \"plan\": {\"id\": 1, \"name\": \"pro\"}}');\nINSERT INTO users (name, role, email, settings) VALUES ('Jean', 'guest', 'jean@mail.com', null);\nINSERT INTO users (name, role, email, settings) VALUES ('Luc', 'guest', 'luc@mail.com', null);\nINSERT INTO posts (title, content, created_by) VALUES ('MySQL connector', null, 1);\nINSERT INTO post_authors (post_id, user_id) VALUES (1, 1);\nINSERT INTO post_authors (post_id, user_id) VALUES (1, 2);\nINSERT INTO post_author_details (detail_post_id, detail_user_id, role) VALUES (1, 1, 'author');\nINSERT INTO ratings (user_id, item_kind, item_id, rating) VALUES (3, 'posts', 1, 4);\nINSERT INTO ratings (user_id, item_kind, item_id, rating) VALUES (3, 'users', 1, 5);\n```\n\nRemove everything with:\n\n```mysql\nDROP VIEW guests;\nDROP VIEW admins;\nDROP TABLE ratings;\nDROP TABLE post_author_details;\nDROP TABLE post_authors;\nDROP TABLE posts;\nDROP TABLE users;\n```\n\n## Cloud Setup\n\n- Go on https://www.freemysqlhosting.net and click on \"Start my Free Account\"\n- Follow the onboarding:\n  - Reset password and login\n  - Click on \"MySQL Hosting\" in to top menu\n  - Create your database\n- Get your credentials by email and build the url like: `mysql://<user>:<pass>@<host>:<port>/<db>`\n- Load data in your instance, if you don't have, you can use schemas from [Prisma schema examples](https://github.com/prisma/database-schema-examples/blob/main/mysql)\n","readmeFilename":"README.md"}