ToolJet/plugins/packages/s3/lib/icon.svg
Gandharv 2f3b441c0a
Move plugins to root (#1728)
* feat: move plugins to root

* modify tsconfig

* add .gitignore

* delete old plugins file

* add parcel

* docker compose volume mount

* add gcs

* add typescript to plugins folder

* gcs to ts

* add dynamodb

* add elastic search

* add firestore

* add gsheets

* add graphql

* add mongodb

* mssql

* add mysql

* add postgresql

* add redis

* add s3

* add slack

* add stripe

* remove plugin related packages from pkgjson

* add lib folder

* add gitignore

* remove typescript generated files

* remove generated file

* remove generated files

* add twilio

* add dist to docker compose cache binding

* add dist prefix

* cleanup - 1

* delete dist

* rename to index.ts + add jest config

* add it.todo in tests

* test fixes

* test file changes

* fix type checks

* add @tooljet/plugins to server package json

* esm vs commonjs bug, reduce got to 11.8.2 from 12.0.0

* docker file npm package version fix

* add typesense

* cleaup - 2

* add sendgrid

* add lerna build and clean script for all packages + tsconfig

* cleanup -3

* add plugins build step

* add missing plugins build step in npm run build

* add mssql, mysql & postgres as singleton classes

* add db connection to cache only if datasourceId is available

* client: add data source schema/manifest files

* add query operations files

* logic for wrapping form with schema

* add script to create index file

* add @tooljet/plugins to frontend folder

* cleanup 1 -frontend

* cleanup - 2 // frontend // data queries

* add client and index to gitignore

* update gitignore

* fix lint & test

* update ci

* fix unit, e2e

* cleanup -3

* fix test

* fix tests

* fix indent

* try npm ci

* fix tests

* fix typo

* fix

* rename file for server entry

* heroku fix

* add main and types entry points in pkg json

* move common to root

* cleanup - 4: remove redundant $ sign prefix

* cleanup - 4: remove redundant $ sign prefix

* update options in-sync before DOM is painted

* change type cloud to cloud storage

* update readme

* update ci.yml

* update ci yml

* add pkg-lock.json

* rename index.ts to server.ts

* update lock files

* add server package.lock

* remove unused import

* revert commit: add minio

* add root dep

* import server.ts

* remove plugins build step

* add npm shrinkwrap

* update version - plugins

* add new version - 0.0.8

* upgrade version

* move to symlinked package

* add lock file

* feat: add icon inside package

* add plugin creation docs

* Remove seed

* move icons to plugins folder

* install pg dep

* add react to packages

* add seed cmd

* revert change

* add plugins build in lint, e2e, unit

* e2e, lint use npm ci

* update dockerfile for plugins

* try combining release with web

* limit memory on release

* try executing seed script post transpile

* try executing seed from server directory

* update seed execution

* add minio

* add correct type

* add minio to pkg json

* remove old file

* fix provider key

* add python installable + npm ^7.2.0 (#1752)

* add python installable + npm ^7.2.0

* add py to prod file

* pin npm version to 7.20.0

* pin npm version to 7.20.0

* split into multi stage build and remove python for buildx

* copy plugins from buider stage

* update dependencies

* add freetds dependency

* update server dockerfile

* update client dockerfile

* update dev dockerfile and compose file

* fix entrypoint

* fix server dev dockerfile

* update docker-compose

* remove npm install on root dir on docker build

* fix heroku script

* make lerna prod dependency to enable prod builds

* remove redundant env setup

Co-authored-by: Akshay Sasidharan <[email protected]>
Co-authored-by: navaneeth <[email protected]>
2022-01-17 12:38:17 +05:30

10 lines
11 KiB
XML

<svg width="40" height="44" viewBox="0 0 40 44" fill="none" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<rect y="0.666748" width="40" height="42.6667" fill="url(#pattern0)"/>
<defs>
<pattern id="pattern0" patternContentUnits="objectBoundingBox" width="1" height="1">
<use xlink:href="#image0" transform="translate(-0.25 -0.192308) scale(0.0045045 0.004158)"/>
</pattern>
<image id="image0" width="333" height="333" xlink:href="data:image/png;base64,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8lc/eJ1rlpt+LXTkBoRmR5Y9lkE3PTybG5qEZSyvgg5shNDswKLHPGRz8dThV5px5NmU0Iw0LpnXOLKM+VXQQc0Rmh1U7CYPNfbwjDU0Ccsml79zmic0O6fWrRqpuXD22MtW5tWtXvOMJTQjjVv5l7yr429wzbJVL4Fs74fQzHZ9kxzdUnhG5oKsnm6kI1sKTcKyEXK22YAAobkBJFbZkkDD4dlQaBKWWyoWGz9egNB8vBFrxCOw6fDcVGgSlvFUiVYeK0BoPpaIFWIW2HB4big074dl5E2/fuJrI6WY+0pzCKwRIDTXkLCgRQLu3fbPyuZeXe+a56NC04QaM1F0KcpPvEFYtqhi7KYqQGjyQkha4H54ehdkzTMrO1MvNAnLlULMJyFAaCahzj7rCawJz5WhSVjWI2NZEgKEZhLq7PNRAsvhOdTVNfuzu/cMcxr+KC6eQwABBJYEzFefP/3T137ueDcgCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggEBjAv8ff8xi2EkPum0AAAAASUVORK5CYII="/>
</defs>
</svg>