Licenses
The following sets forth attribution notices for third party software that may be contained in portions of Plural. We thank the open source community for all of their contributions.
Plural Web Client
@awesomeqr/react@babel/preset-react@daily-co/daily-js@emoji-mart/data@emoji-mart/react@sentry/nextjs@storybook/nextjs@stripe/react-stripe-js@stripe/stripe-js@turf/midpoint@types/jest@types/node@types/react@types/react-domat-flex-gridbody-scroll-lockbootstrapcalendar-linkcanvas-starfieldclassnamescopy-to-clipboardcurrency-symbol-mapd3-easedecimal.jsemoji-martfilesizegraphql-wshamburgershistoryinject-babel-plugins-crajs-sha256lodashmapbox-glmasonicmomentmoment-timezonenextnext-navigation-guardpluralizequery-stringreactreact-apple-signin-authreact-beforeunloadreact-code-inputreact-confettireact-cool-virtualreact-device-detectreact-domreact-filesreact-flags-selectreact-ga4react-helmetreact-highlight-wordsreact-hotjarreact-iframereact-image-fallbackreact-image-galleryreact-infinite-scrollerreact-input-autosizereact-ios-switchreact-lines-ellipsisreact-map-glreact-markdownreact-masonry-componentreact-md-spinnerreact-places-autocompletereact-popper-tooltipreact-qr-codereact-reduxreact-relayreact-relay-network-modernreact-responsivereact-script-hookreact-svgreact-swipeablereact-tagsinputreact-text-maskreact-textarea-autosizereact-tiny-virtual-listreact-transition-groupreact-truncatereact-use-scroll-positionreact-useintervalreact-virtualizedreact-youtubereactstrapreduxredux-thunkregeneratorrelay-runtimesharpsocket.io-clientswipertext-mask-addonsurl-joinuse-debounceuse-intervaluse-long-pressuse-mediausehooks-tsuuidvalidatorweb-streams-polyfillweb-vitalsworker-loaderPlural Backend - Server Infrastructure
@apollo/server@aws-sdk/client-s3@aws-sdk/lib-storage@babel/plugin-transform-runtime@babel/runtime@newrelic/apollo-server-plugin@onesignal/node-onesignal@pluralcom/plural-ci-utils@pluralcom/plural-data-generator@pluralcom/plural-emails@pluralcom/plural-js-utils@pluralcom/plural-search-api@pluralcom/title-caser@sendgrid/client@sentry/node@slack/web-api@turf/boolean-point-in-polygonamqp-connection-manageramqplibapple-signin-authas-arrayasync-await-retryasync-exit-hookawesome-phonenumberaxiosbase-64bcryptjsbluebirdbody-parserbtoabullcloudinarycompressioncookie-encryptercookie-parsercorscountry-listcrypto-random-stringcurrency-symbol-mapdd-tracedecimal.jsdelaydotenvexpressexpress-graphqlexpress-useragentfbfb-with-usage-headersgoogleapisgraphqlgraphql-errorsgraphql-middlewaregraphql-rate-limitgraphql-redis-subscriptionsgraphql-relaygraphql-subscriptionsgraphql-uploadgraphql-upload-minimalgraphql-wshtml-to-textipaddr.jsiplocationjoijsonwebtokenjwk-to-pemkd-tree-javascriptknexlatlon-geohashlodashmicro-geoip-litemigrate-mongomime-to-extensionsmixpanelmomentmongodbmorganmsneo4j-drivernewrelicnode-fetchnode-geocodernode-rsaopenaiordinal-jspeopledatalabspgpluralizeproxycurl-js-linkedin-profile-scraperquery-stringrandomstringreactreact-domreact-relay-network-modernredisregenerator-runtimerelay-runtimeremove-markdownrequest-ipseedrandomslack-nodesocket.iostream-mime-typestripeuniqidurlurl-joinus-state-converteruuidvalidatorwinstonwinston-daily-rotate-filewszodlocationiqThis service uses the ESCO classification of the European Commission.