appsmithorg / appsmith

Platform to build admin panels, internal tools, and dashboards. Integrates with 25+ databases and any API.
https://www.appsmith.com
Apache License 2.0
34.68k stars 3.75k forks source link

[Bug]: Report an issue with Custom JS Libraries #19037

Open arunvjn opened 1 year ago

arunvjn commented 1 year ago

If you're facing issues related to Custom JS Libraries, please leave a comment along with a detailed description, screenshots, or a Loom video.

Certain libraries will not work due to platform limitations. If you would like to request support for a library, please provide the following information to help us prioritize your request:

  1. How important are these libraries for your application? [Critical / Important / Nice-to-have]
  2. A brief description of your use-case
olsommer commented 1 year ago

The following library could not be loaded: https://cdn.jsdelivr.net/npm/gocardless-nodejs@3.10.0/index.min.js

(https://www.jsdelivr.com/package/npm/gocardless-nodejs)

We need to connect to our payment provider GoCardless

Importance: CRITICAL

image

Thanks for your help

yan-hic commented 1 year ago

Was giving https://cdn.jsdelivr.net/npm/@google-cloud/bigquery@6.1.0/build/src/index.min.js a try to interface with BigQuery as there is still no integration as of today (+ wanted to do more than just pulling data) but same unsupported msg.

Unfortunately custom libs falls short of expectations as only a few (small ?) libs are supported.

shriekdj commented 1 year ago

I was unable to install https://cdn.jsdelivr.net/npm/@elastic/elasticsearch@8.6.0/index.min.js

jonny-gg commented 1 year ago

The following library could not be loaded:

https://cdn.jsdelivr.net/npm/react-diff-viewer@3.1.1/lib/index.min.js https://cdn.jsdelivr.net/npm/antd@5.3.2/dist/antd.min.js https://cdn.jsdelivr.net/npm/antd@5.3.2/dist/reset.min.css Importance:Important

image

We need to do some textual comparison ,Our internal systems need to conform to antd's specifications

ammonjg7 commented 1 year ago

Tried to install the gapi and the google-auth-library library without success. What library are you using for getting access to google sheets and is it available for us to use in our applications?

shriekdj commented 1 year ago

Tried to install the gapi and the google-auth-library library without success. What library are you using for getting access to google sheets and is it available for us to use in our applications?

i once tried to use that libraries but fail, may they are not using any libraries instead they are using vanilla js or fetch maybe

tomerm-cyera commented 1 year ago

image

jerimy-TU commented 1 year ago

Having an issue with LangChain

Screenshot 2023-05-11 at 10 11 30 AM

This library would allow for the creation of text embedding management apps that are necessary for building powerful LLM/GPT based apps in appsmith. This combined with the already existing Datasources should be a nice solution.

RodrigoAliotti commented 1 year ago

The following library could not be loaded:

https://cdn.jsdelivr.net/npm/jquery@3.6.4/dist/jquery.min.js https://cdn.jsdelivr.net/npm/jquery@3.7.0/dist/jquery.min.js

returning Library is unsupported.

tegsramdhan commented 1 year ago

Base64 to Array-Buffer is unsupported: image

Here the following link to library: https://cdn.jsdelivr.net/npm/base64-arraybuffer@1.0.2/+esm

chriscervantes commented 1 year ago

We manage to install moment-timezone early this year it was working fine and when i tried to update moment-timezone I am getting the same error as above

image

marc-sommer commented 1 year ago

https://cdn.jsdelivr.net/npm/graphql@16.7.1/version.min.js

image

How important are these libraries for your application? Important

A brief description of your use-case Use of printSchema to automatically fetch a GraphQL schema in SDL format. Use of other operations related to GraphQL that library provides

brianbolt commented 1 year ago

Works: https://cdn.jsdelivr.net/npm/@rdkit/rdkit@2023.3.2-1.0.0/dist/RDKit_minimal.min.js Doesn't work: https://cdn.jsdelivr.net/npm/@rdkit/rdkit@2023.3.2-1.0.0/dist/RDKit_minimal.wasm

How important are these libraries for your application? Important so that we don't have to create an annoying iframe workaround.

A brief description of your use-case We have a compound structure being fetched from the database and we want to render it when a user clicks on a row in the table using RDkit. https://www.rdkitjs.com

mariohof commented 1 year ago

We are looking for S3 alternative and decided to use the good old WebDAV protocol.

Bildschirmfoto 2023-09-07 um 13 11 48

AlexiaAcevedo commented 1 year ago

Hello, I would like to request support for the bson-objectid library: https://cdn.jsdelivr.net/npm/bson-objectid@2.0.4/objectid.min.js

This library would be a nice-to-have. My use-case is I am using a MultiSelect widget, after selecting the options the end user would like I run a JS function that stores the selected option values into an array of ObjectIds. For example, let myArray = [ObjectId('123'), ObjectId('124'), ObjectId(125')];. I then store this array storeValue('selectedOptions', myArray); I then go into my saved mongoDB query and paste the value there.

{ $match: { legion_id: { $in: {{appsmith.store.selectedOptions}} }, } }

However, since there is no way to convert the string representations of ObjectId values back to actual ObjectId objects in JavaScript without the MongoDB Node.js driver or bson-objectid utility library this is not possible. So for now, my workaround is to limit the end-user to only selecting a limited amount of options. So my query looks like this.

{ $match: { legion_id: { $in: [ ObjectId({{appsmith.store.selectedOption1}}), ObjectId({{appsmith.store.selectedOption2}}), ObjectId({{appsmith.store.selectedOption3}}), }, } }

Which proposes limitations on user experience and is more clunky in terms of performance and cleanliness. I'll have to have multiple queries that are identical but have different amounts of ObjectIds. And an extra block of code that checks the length of the array and depending on that calls the correct function is I cannot have empty ObjectIds.

filipposc commented 1 year ago

https://github.com/whitequark/ipaddr.js/blob/main/ipaddr.min.js https://cdn.jsdelivr.net/npm/ip-address@9.0.5/dist/ip-address.min.js https://cdn.jsdelivr.net/npm/ip-num@1.5.1/index.min.js

All the above related to ip-address management don't work. image image

It would be really nice to have these libs working in appsmith.

mahesh-babu-drivex commented 9 months ago

https://www.jsdelivr.com/package/npm/echarts not able to download echarts library

vadimchilinciuc commented 8 months ago

Im not able to install the MUI MATERIAL cdn package , is there some alternative or its possible to fix ,this cause the material is on of the most important library out there for REACT Components :

https://cdn.jsdelivr.net/npm/@mui/material@5.15.12/umd/material-ui.production.min.js

image

GreenFlux commented 8 months ago

Hi @vadimchilinciuc , the library is failing to import because libraries in JSObjects are blocked from accessing the window object and DOM for security reasons. JSObject libraries are primarily for data transformation.

You can use React or any other library in a custom widget though, and this will isolate the code so that it can have full access to the window and DOM. Then you can pass data back and forth through the appsmith.model inside the custom widget. More info here: https://docs.appsmith.com/reference/widgets/custom#custom-widget-builder

ratsnus commented 7 months ago

hi appsmith i tried to insatll https://cdn.jsdelivr.net/npm/cordova-plugin-zebra-scanner-spectrum@1.0.12/www/ZebraScannerPlugin.min.js to communiocate with the HW scanner of an Zebra Device TC21 but its not allowing me to install the script could you pl. take a look into it.

thx

sanskritkm commented 6 months ago

can't install supabase: https://cdn.jsdelivr.net/npm/@supabase/supabase-js@2

GreenFlux commented 6 months ago

Hi @kdamsmt , we have the correct Supabase CDN link in the Recommended Libraries. Just scroll down and click the download button for Supabase. 2024-05-02 06 20 29

Also, both the UDM and ESM links from here will work: https://www.jsdelivr.com/package/npm/@supabase/supabase-js

I'm not sure why your version won't work, but the first option that's built into the library list should work fine for you.

justinzyw commented 6 months ago

the following lib can not be loaded: https://www.jsdelivr.com/package/npm/@gradio/client image

I use it to connect to Gradio API

GreenFlux commented 6 months ago

the following lib can not be loaded:

Hi @justinzyw, that's the url for the landing page for that library, not the library install link.

This link should work: https://cdn.jsdelivr.net/npm/@gradio/client@0.19.0/dist/index.min.js

dwanesun commented 5 months ago

The following lib cannot be installed due to platform limitations: https://cdn.jsdelivr.net/npm/apify-client@2.9.3/dist/bundle.min.js

GreenFlux commented 5 months ago

The following lib cannot be installed due to platform limitations: https://cdn.jsdelivr.net/npm/apify-client@2.9.3/dist/bundle.min.js

Hi @dwanesun , this library is made for use with Node.js on the server side. Only client side libraries can be installed in Appsmith.

linkoffate commented 4 months ago

The following lib cannot be installed due to platform limitations: https://cdn.jsdelivr.net/npm/buffer@6.0.3/index.min.js

adleviton commented 4 months ago

Cannot install jwks-rsa. I think this should be allowed since jsonwebtokens is recommended by Appsmith, also managed by Auth0, and referenced in their examples:

// Verify using getKey callback
// Example uses https://github.com/auth0/node-jwks-rsa as a way to fetch the keys.
var jwksClient = require('jwks-rsa');
var client = jwksClient({
  jwksUri: 'https://sandrino.auth0.com/.well-known/jwks.json'
});
function getKey(header, callback){
  client.getSigningKey(header.kid, function(err, key) {
    var signingKey = key.publicKey || key.rsaPublicKey;
    callback(null, signingKey);
  });
}
zhanwangchen commented 2 months ago

https://cdn.jsdelivr.net/npm/replicate-api/dist/index.min.js could not be loaded

lukywangwang commented 2 months ago

https://cdn.jsdelivr.net/npm/casdoor-nodejs-sdk@1.26.0/lib/cjs/index.min.js

casdoor could not be loaded

neo-rgalvez commented 1 month ago

https://cdn.jsdelivr.net/npm/@paddle/paddle-js@1.2.3/dist/index.min.js Paddle.js from Paddle.com "Library is unsupported Unfortunately, this library cannot be supported due to platform limitations. Please try installing a different library."

ys-qb commented 1 month ago

https://cdn.jsdelivr.net/npm/@47ng/cloak@1.2.0/dist/index.min.js

image

galexbh commented 3 weeks ago

https://cdn.jsdelivr.net/npm/@infisical/sdk@3.0.3/lib/index.min.js

It is not possible to integrate the insifical library

image