@moderneinc/design-system-logos 7.0.0-next.df34ef
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +183 -0
- package/dist/index.cjs +453 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +246 -0
- package/dist/index.esm.js +448 -0
- package/dist/index.esm.js.map +1 -0
- package/dist/marks/akka.d.ts +2 -0
- package/dist/marks/akka.dark.d.ts +2 -0
- package/dist/marks/akka.dark.js +1 -0
- package/dist/marks/akka.js +1 -0
- package/dist/marks/android.d.ts +2 -0
- package/dist/marks/android.js +1 -0
- package/dist/marks/angular.d.ts +2 -0
- package/dist/marks/angular.js +1 -0
- package/dist/marks/anthropic.d.ts +2 -0
- package/dist/marks/anthropic.dark.d.ts +2 -0
- package/dist/marks/anthropic.dark.js +1 -0
- package/dist/marks/anthropic.js +1 -0
- package/dist/marks/apache.d.ts +2 -0
- package/dist/marks/apache.js +1 -0
- package/dist/marks/archunit.d.ts +2 -0
- package/dist/marks/archunit.js +1 -0
- package/dist/marks/arquillian.d.ts +2 -0
- package/dist/marks/arquillian.js +1 -0
- package/dist/marks/artifactory.d.ts +2 -0
- package/dist/marks/artifactory.js +1 -0
- package/dist/marks/assertj.d.ts +2 -0
- package/dist/marks/assertj.dark.d.ts +2 -0
- package/dist/marks/assertj.dark.js +1 -0
- package/dist/marks/assertj.js +1 -0
- package/dist/marks/astgrep.d.ts +2 -0
- package/dist/marks/astgrep.dark.d.ts +2 -0
- package/dist/marks/astgrep.dark.js +1 -0
- package/dist/marks/astgrep.js +1 -0
- package/dist/marks/aws-s3.d.ts +2 -0
- package/dist/marks/aws-s3.js +1 -0
- package/dist/marks/aws.d.ts +2 -0
- package/dist/marks/aws.dark.d.ts +2 -0
- package/dist/marks/aws.dark.js +1 -0
- package/dist/marks/aws.js +1 -0
- package/dist/marks/axonframework.d.ts +2 -0
- package/dist/marks/axonframework.js +1 -0
- package/dist/marks/axoniq.d.ts +2 -0
- package/dist/marks/axoniq.dark.d.ts +2 -0
- package/dist/marks/axoniq.dark.js +1 -0
- package/dist/marks/axoniq.js +1 -0
- package/dist/marks/azul.d.ts +2 -0
- package/dist/marks/azul.dark.d.ts +2 -0
- package/dist/marks/azul.dark.js +1 -0
- package/dist/marks/azul.js +1 -0
- package/dist/marks/azure.d.ts +2 -0
- package/dist/marks/azure.js +1 -0
- package/dist/marks/biome.d.ts +2 -0
- package/dist/marks/biome.js +1 -0
- package/dist/marks/byteman.d.ts +2 -0
- package/dist/marks/byteman.js +1 -0
- package/dist/marks/camel.d.ts +2 -0
- package/dist/marks/camel.js +1 -0
- package/dist/marks/circleci.d.ts +2 -0
- package/dist/marks/circleci.dark.d.ts +2 -0
- package/dist/marks/circleci.dark.js +1 -0
- package/dist/marks/circleci.js +1 -0
- package/dist/marks/cloudsuitability.d.ts +2 -0
- package/dist/marks/cloudsuitability.dark.d.ts +2 -0
- package/dist/marks/cloudsuitability.dark.js +1 -0
- package/dist/marks/cloudsuitability.js +1 -0
- package/dist/marks/cobol.d.ts +2 -0
- package/dist/marks/cobol.js +1 -0
- package/dist/marks/codehaus.d.ts +2 -0
- package/dist/marks/codehaus.dark.d.ts +2 -0
- package/dist/marks/codehaus.dark.js +1 -0
- package/dist/marks/codehaus.js +1 -0
- package/dist/marks/compose.d.ts +2 -0
- package/dist/marks/compose.js +1 -0
- package/dist/marks/concourse.d.ts +2 -0
- package/dist/marks/concourse.js +1 -0
- package/dist/marks/controlflow.d.ts +2 -0
- package/dist/marks/controlflow.dark.d.ts +2 -0
- package/dist/marks/controlflow.dark.js +1 -0
- package/dist/marks/controlflow.js +1 -0
- package/dist/marks/core.d.ts +2 -0
- package/dist/marks/core.dark.d.ts +2 -0
- package/dist/marks/core.dark.js +1 -0
- package/dist/marks/core.js +1 -0
- package/dist/marks/csharp.d.ts +2 -0
- package/dist/marks/csharp.js +1 -0
- package/dist/marks/cucumber.d.ts +2 -0
- package/dist/marks/cucumber.js +1 -0
- package/dist/marks/customrecipe.d.ts +2 -0
- package/dist/marks/customrecipe.js +1 -0
- package/dist/marks/datafaker.d.ts +2 -0
- package/dist/marks/datafaker.dark.d.ts +2 -0
- package/dist/marks/datafaker.dark.js +1 -0
- package/dist/marks/datafaker.js +1 -0
- package/dist/marks/dbrider.d.ts +2 -0
- package/dist/marks/dbrider.js +1 -0
- package/dist/marks/diffblue.d.ts +2 -0
- package/dist/marks/diffblue.dark.d.ts +2 -0
- package/dist/marks/diffblue.dark.js +1 -0
- package/dist/marks/diffblue.js +1 -0
- package/dist/marks/docker.d.ts +2 -0
- package/dist/marks/docker.dark.d.ts +2 -0
- package/dist/marks/docker.dark.js +1 -0
- package/dist/marks/docker.js +1 -0
- package/dist/marks/dotnet.d.ts +2 -0
- package/dist/marks/dotnet.js +1 -0
- package/dist/marks/dropwizard.d.ts +2 -0
- package/dist/marks/dropwizard.js +1 -0
- package/dist/marks/easymock.d.ts +2 -0
- package/dist/marks/easymock.dark.d.ts +2 -0
- package/dist/marks/easymock.dark.js +1 -0
- package/dist/marks/easymock.js +1 -0
- package/dist/marks/elastic.d.ts +2 -0
- package/dist/marks/elastic.js +1 -0
- package/dist/marks/fasterxml.d.ts +2 -0
- package/dist/marks/fasterxml.dark.d.ts +2 -0
- package/dist/marks/fasterxml.dark.js +1 -0
- package/dist/marks/fasterxml.js +1 -0
- package/dist/marks/featureflags.d.ts +2 -0
- package/dist/marks/featureflags.dark.d.ts +2 -0
- package/dist/marks/featureflags.dark.js +1 -0
- package/dist/marks/featureflags.js +1 -0
- package/dist/marks/ff4j.d.ts +2 -0
- package/dist/marks/ff4j.js +1 -0
- package/dist/marks/flyway.d.ts +2 -0
- package/dist/marks/flyway.js +1 -0
- package/dist/marks/gcp.d.ts +2 -0
- package/dist/marks/gcp.js +1 -0
- package/dist/marks/gemini.d.ts +2 -0
- package/dist/marks/gemini.js +1 -0
- package/dist/marks/github.d.ts +2 -0
- package/dist/marks/github.dark.d.ts +2 -0
- package/dist/marks/github.dark.js +1 -0
- package/dist/marks/github.js +1 -0
- package/dist/marks/gitlab.d.ts +2 -0
- package/dist/marks/gitlab.js +1 -0
- package/dist/marks/go.d.ts +2 -0
- package/dist/marks/go.js +1 -0
- package/dist/marks/google.d.ts +2 -0
- package/dist/marks/google.js +1 -0
- package/dist/marks/gradle.d.ts +2 -0
- package/dist/marks/gradle.js +1 -0
- package/dist/marks/groovy.d.ts +2 -0
- package/dist/marks/groovy.js +1 -0
- package/dist/marks/hcl.d.ts +2 -0
- package/dist/marks/hcl.dark.d.ts +2 -0
- package/dist/marks/hcl.dark.js +1 -0
- package/dist/marks/hcl.js +1 -0
- package/dist/marks/hibernate.d.ts +2 -0
- package/dist/marks/hibernate.dark.d.ts +2 -0
- package/dist/marks/hibernate.dark.js +1 -0
- package/dist/marks/hibernate.js +1 -0
- package/dist/marks/httpcomponents.d.ts +2 -0
- package/dist/marks/httpcomponents.dark.d.ts +2 -0
- package/dist/marks/httpcomponents.dark.js +1 -0
- package/dist/marks/httpcomponents.js +1 -0
- package/dist/marks/jacoco.d.ts +2 -0
- package/dist/marks/jacoco.dark.d.ts +2 -0
- package/dist/marks/jacoco.dark.js +1 -0
- package/dist/marks/jacoco.js +1 -0
- package/dist/marks/jakarta.d.ts +2 -0
- package/dist/marks/jakarta.dark.d.ts +2 -0
- package/dist/marks/jakarta.dark.js +1 -0
- package/dist/marks/jakarta.js +1 -0
- package/dist/marks/jasperreports.d.ts +2 -0
- package/dist/marks/jasperreports.js +1 -0
- package/dist/marks/java.d.ts +2 -0
- package/dist/marks/java.js +1 -0
- package/dist/marks/javascript.d.ts +2 -0
- package/dist/marks/javascript.js +1 -0
- package/dist/marks/jboss.d.ts +2 -0
- package/dist/marks/jboss.dark.d.ts +2 -0
- package/dist/marks/jboss.dark.js +1 -0
- package/dist/marks/jboss.js +1 -0
- package/dist/marks/jenkins.d.ts +2 -0
- package/dist/marks/jenkins.js +1 -0
- package/dist/marks/jest.d.ts +2 -0
- package/dist/marks/jest.js +1 -0
- package/dist/marks/jetty.d.ts +2 -0
- package/dist/marks/jetty.js +1 -0
- package/dist/marks/jhipster.d.ts +2 -0
- package/dist/marks/jhipster.js +1 -0
- package/dist/marks/jmockit.d.ts +2 -0
- package/dist/marks/jmockit.dark.d.ts +2 -0
- package/dist/marks/jmockit.dark.js +1 -0
- package/dist/marks/jmockit.js +1 -0
- package/dist/marks/joda.d.ts +2 -0
- package/dist/marks/joda.dark.d.ts +2 -0
- package/dist/marks/joda.dark.js +1 -0
- package/dist/marks/joda.js +1 -0
- package/dist/marks/json.d.ts +2 -0
- package/dist/marks/json.dark.d.ts +2 -0
- package/dist/marks/json.dark.js +1 -0
- package/dist/marks/json.js +1 -0
- package/dist/marks/jspecify.d.ts +2 -0
- package/dist/marks/jspecify.dark.d.ts +2 -0
- package/dist/marks/jspecify.dark.js +1 -0
- package/dist/marks/jspecify.js +1 -0
- package/dist/marks/junit.d.ts +2 -0
- package/dist/marks/junit.dark.d.ts +2 -0
- package/dist/marks/junit.dark.js +1 -0
- package/dist/marks/junit.js +1 -0
- package/dist/marks/kafka.d.ts +2 -0
- package/dist/marks/kafka.dark.d.ts +2 -0
- package/dist/marks/kafka.dark.js +1 -0
- package/dist/marks/kafka.js +1 -0
- package/dist/marks/keyfactor.d.ts +2 -0
- package/dist/marks/keyfactor.dark.d.ts +2 -0
- package/dist/marks/keyfactor.dark.js +1 -0
- package/dist/marks/keyfactor.js +1 -0
- package/dist/marks/kotlin.d.ts +2 -0
- package/dist/marks/kotlin.js +1 -0
- package/dist/marks/kubernetes.d.ts +2 -0
- package/dist/marks/kubernetes.js +1 -0
- package/dist/marks/langchain.d.ts +2 -0
- package/dist/marks/langchain.dark.d.ts +2 -0
- package/dist/marks/langchain.dark.js +1 -0
- package/dist/marks/langchain.js +1 -0
- package/dist/marks/launchdarkly.d.ts +2 -0
- package/dist/marks/launchdarkly.dark.d.ts +2 -0
- package/dist/marks/launchdarkly.dark.js +1 -0
- package/dist/marks/launchdarkly.js +1 -0
- package/dist/marks/liberty.d.ts +2 -0
- package/dist/marks/liberty.js +1 -0
- package/dist/marks/lodash.d.ts +2 -0
- package/dist/marks/lodash.dark.d.ts +2 -0
- package/dist/marks/lodash.dark.js +1 -0
- package/dist/marks/lodash.js +1 -0
- package/dist/marks/log4j.d.ts +2 -0
- package/dist/marks/log4j.js +1 -0
- package/dist/marks/lombok.d.ts +2 -0
- package/dist/marks/lombok.js +1 -0
- package/dist/marks/maven.d.ts +2 -0
- package/dist/marks/maven.js +1 -0
- package/dist/marks/micrometer.d.ts +2 -0
- package/dist/marks/micrometer.js +1 -0
- package/dist/marks/micronaut.d.ts +2 -0
- package/dist/marks/micronaut.dark.d.ts +2 -0
- package/dist/marks/micronaut.dark.js +1 -0
- package/dist/marks/micronaut.js +1 -0
- package/dist/marks/minio.d.ts +2 -0
- package/dist/marks/minio.js +1 -0
- package/dist/marks/mistral.d.ts +2 -0
- package/dist/marks/mistral.js +1 -0
- package/dist/marks/mockito.d.ts +2 -0
- package/dist/marks/mockito.dark.d.ts +2 -0
- package/dist/marks/mockito.dark.js +1 -0
- package/dist/marks/mockito.js +1 -0
- package/dist/marks/moderne.d.ts +2 -0
- package/dist/marks/moderne.dark.d.ts +2 -0
- package/dist/marks/moderne.dark.js +1 -0
- package/dist/marks/moderne.js +1 -0
- package/dist/marks/mui.d.ts +2 -0
- package/dist/marks/mui.js +1 -0
- package/dist/marks/netty.d.ts +2 -0
- package/dist/marks/netty.js +1 -0
- package/dist/marks/nextjs.d.ts +2 -0
- package/dist/marks/nextjs.dark.d.ts +2 -0
- package/dist/marks/nextjs.dark.js +1 -0
- package/dist/marks/nextjs.js +1 -0
- package/dist/marks/nexus.d.ts +2 -0
- package/dist/marks/nexus.dark.d.ts +2 -0
- package/dist/marks/nexus.dark.js +1 -0
- package/dist/marks/nexus.js +1 -0
- package/dist/marks/nodejs.d.ts +2 -0
- package/dist/marks/nodejs.js +1 -0
- package/dist/marks/npm.d.ts +2 -0
- package/dist/marks/npm.js +1 -0
- package/dist/marks/nuget.d.ts +2 -0
- package/dist/marks/nuget.dark.d.ts +2 -0
- package/dist/marks/nuget.dark.js +1 -0
- package/dist/marks/nuget.js +1 -0
- package/dist/marks/okhttp.d.ts +2 -0
- package/dist/marks/okhttp.js +1 -0
- package/dist/marks/open-ai.d.ts +2 -0
- package/dist/marks/open-ai.dark.d.ts +2 -0
- package/dist/marks/open-ai.dark.js +1 -0
- package/dist/marks/open-ai.js +1 -0
- package/dist/marks/openapi.d.ts +2 -0
- package/dist/marks/openapi.dark.d.ts +2 -0
- package/dist/marks/openapi.dark.js +1 -0
- package/dist/marks/openapi.js +1 -0
- package/dist/marks/openfeature.d.ts +2 -0
- package/dist/marks/openfeature.dark.d.ts +2 -0
- package/dist/marks/openfeature.dark.js +1 -0
- package/dist/marks/openfeature.js +1 -0
- package/dist/marks/openrewrite.d.ts +2 -0
- package/dist/marks/openrewrite.dark.d.ts +2 -0
- package/dist/marks/openrewrite.dark.js +1 -0
- package/dist/marks/openrewrite.js +1 -0
- package/dist/marks/opentelemetry.d.ts +2 -0
- package/dist/marks/opentelemetry.js +1 -0
- package/dist/marks/operaton.d.ts +2 -0
- package/dist/marks/operaton.dark.d.ts +2 -0
- package/dist/marks/operaton.dark.js +1 -0
- package/dist/marks/operaton.js +1 -0
- package/dist/marks/oracle.d.ts +2 -0
- package/dist/marks/oracle.js +1 -0
- package/dist/marks/picnic.d.ts +2 -0
- package/dist/marks/picnic.js +1 -0
- package/dist/marks/play.d.ts +2 -0
- package/dist/marks/play.js +1 -0
- package/dist/marks/plexus.d.ts +2 -0
- package/dist/marks/plexus.js +1 -0
- package/dist/marks/poolside.d.ts +2 -0
- package/dist/marks/poolside.dark.d.ts +2 -0
- package/dist/marks/poolside.dark.js +1 -0
- package/dist/marks/poolside.js +1 -0
- package/dist/marks/properties.d.ts +2 -0
- package/dist/marks/properties.dark.d.ts +2 -0
- package/dist/marks/properties.dark.js +1 -0
- package/dist/marks/properties.js +1 -0
- package/dist/marks/pydantic.d.ts +2 -0
- package/dist/marks/pydantic.js +1 -0
- package/dist/marks/pypi.d.ts +2 -0
- package/dist/marks/pypi.js +1 -0
- package/dist/marks/python.d.ts +2 -0
- package/dist/marks/python.js +1 -0
- package/dist/marks/quarkus.d.ts +2 -0
- package/dist/marks/quarkus.dark.d.ts +2 -0
- package/dist/marks/quarkus.dark.js +1 -0
- package/dist/marks/quarkus.js +1 -0
- package/dist/marks/react.d.ts +2 -0
- package/dist/marks/react.dark.d.ts +2 -0
- package/dist/marks/react.dark.js +1 -0
- package/dist/marks/react.js +1 -0
- package/dist/marks/reactive.d.ts +2 -0
- package/dist/marks/reactive.dark.d.ts +2 -0
- package/dist/marks/reactive.dark.js +1 -0
- package/dist/marks/reactive.js +1 -0
- package/dist/marks/reactor.d.ts +2 -0
- package/dist/marks/reactor.js +1 -0
- package/dist/marks/recommendations.d.ts +2 -0
- package/dist/marks/recommendations.dark.d.ts +2 -0
- package/dist/marks/recommendations.dark.js +1 -0
- package/dist/marks/recommendations.js +1 -0
- package/dist/marks/refaster.d.ts +2 -0
- package/dist/marks/refaster.js +1 -0
- package/dist/marks/richfaces.d.ts +2 -0
- package/dist/marks/richfaces.dark.d.ts +2 -0
- package/dist/marks/richfaces.dark.js +1 -0
- package/dist/marks/richfaces.js +1 -0
- package/dist/marks/scala.d.ts +2 -0
- package/dist/marks/scala.js +1 -0
- package/dist/marks/search.d.ts +2 -0
- package/dist/marks/search.dark.d.ts +2 -0
- package/dist/marks/search.dark.js +1 -0
- package/dist/marks/search.js +1 -0
- package/dist/marks/spring.d.ts +2 -0
- package/dist/marks/spring.js +1 -0
- package/dist/marks/springamqp.d.ts +2 -0
- package/dist/marks/springamqp.js +1 -0
- package/dist/marks/springbatch.d.ts +2 -0
- package/dist/marks/springbatch.js +1 -0
- package/dist/marks/springboot.d.ts +2 -0
- package/dist/marks/springboot.js +1 -0
- package/dist/marks/springcloud.d.ts +2 -0
- package/dist/marks/springcloud.js +1 -0
- package/dist/marks/springdata.d.ts +2 -0
- package/dist/marks/springdata.js +1 -0
- package/dist/marks/springframework.d.ts +2 -0
- package/dist/marks/springframework.js +1 -0
- package/dist/marks/springkafka.d.ts +2 -0
- package/dist/marks/springkafka.js +1 -0
- package/dist/marks/springsecurity.d.ts +2 -0
- package/dist/marks/springsecurity.js +1 -0
- package/dist/marks/sql.d.ts +2 -0
- package/dist/marks/sql.js +1 -0
- package/dist/marks/storybook.d.ts +2 -0
- package/dist/marks/storybook.js +1 -0
- package/dist/marks/struts.d.ts +2 -0
- package/dist/marks/struts.js +1 -0
- package/dist/marks/svelte.d.ts +2 -0
- package/dist/marks/svelte.js +1 -0
- package/dist/marks/tapestry.d.ts +2 -0
- package/dist/marks/tapestry.js +1 -0
- package/dist/marks/terraform.d.ts +2 -0
- package/dist/marks/terraform.dark.d.ts +2 -0
- package/dist/marks/terraform.dark.js +1 -0
- package/dist/marks/terraform.js +1 -0
- package/dist/marks/testcontainers.d.ts +2 -0
- package/dist/marks/testcontainers.js +1 -0
- package/dist/marks/testng.d.ts +2 -0
- package/dist/marks/testng.dark.d.ts +2 -0
- package/dist/marks/testng.dark.js +1 -0
- package/dist/marks/testng.js +1 -0
- package/dist/marks/text.d.ts +2 -0
- package/dist/marks/text.dark.d.ts +2 -0
- package/dist/marks/text.dark.js +1 -0
- package/dist/marks/text.js +1 -0
- package/dist/marks/timefold.d.ts +2 -0
- package/dist/marks/timefold.dark.d.ts +2 -0
- package/dist/marks/timefold.dark.js +1 -0
- package/dist/marks/timefold.js +1 -0
- package/dist/marks/toml.d.ts +2 -0
- package/dist/marks/toml.dark.d.ts +2 -0
- package/dist/marks/toml.dark.js +1 -0
- package/dist/marks/toml.js +1 -0
- package/dist/marks/ubc.d.ts +2 -0
- package/dist/marks/ubc.dark.d.ts +2 -0
- package/dist/marks/ubc.dark.js +1 -0
- package/dist/marks/ubc.js +1 -0
- package/dist/marks/ui5.d.ts +2 -0
- package/dist/marks/ui5.js +1 -0
- package/dist/marks/unleash.d.ts +2 -0
- package/dist/marks/unleash.dark.d.ts +2 -0
- package/dist/marks/unleash.dark.js +1 -0
- package/dist/marks/unleash.js +1 -0
- package/dist/marks/vue.d.ts +2 -0
- package/dist/marks/vue.js +1 -0
- package/dist/marks/vulncheck.d.ts +2 -0
- package/dist/marks/vulncheck.dark.d.ts +2 -0
- package/dist/marks/vulncheck.dark.js +1 -0
- package/dist/marks/vulncheck.js +1 -0
- package/dist/marks/wicket.d.ts +2 -0
- package/dist/marks/wicket.js +1 -0
- package/dist/marks/wiremock.d.ts +2 -0
- package/dist/marks/wiremock.js +1 -0
- package/dist/marks/xml.d.ts +2 -0
- package/dist/marks/xml.dark.d.ts +2 -0
- package/dist/marks/xml.dark.js +1 -0
- package/dist/marks/xml.js +1 -0
- package/dist/marks/xunit.d.ts +2 -0
- package/dist/marks/xunit.dark.d.ts +2 -0
- package/dist/marks/xunit.dark.js +1 -0
- package/dist/marks/xunit.js +1 -0
- package/dist/marks/yaml.d.ts +2 -0
- package/dist/marks/yaml.dark.d.ts +2 -0
- package/dist/marks/yaml.dark.js +1 -0
- package/dist/marks/yaml.js +1 -0
- package/dist/react.cjs +526 -0
- package/dist/react.cjs.map +1 -0
- package/dist/react.d.ts +172 -0
- package/dist/react.esm.js +524 -0
- package/dist/react.esm.js.map +1 -0
- package/package.json +70 -0
package/README.md
ADDED
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
# @moderneinc/design-system-logos
|
|
2
|
+
|
|
3
|
+
212 ecosystem logo marks for Moderne applications — one JS module per mark,
|
|
4
|
+
each a percent-encoded `data:image/svg+xml` URI, reached through a manifest of
|
|
5
|
+
per-slug dynamic imports so a consumer's bundler code-splits every mark into
|
|
6
|
+
its own chunk.
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## Install
|
|
11
|
+
|
|
12
|
+
```sh
|
|
13
|
+
npm install @moderneinc/design-system-logos
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
## Usage
|
|
17
|
+
|
|
18
|
+
Three ways to reach a mark.
|
|
19
|
+
|
|
20
|
+
**Static** — one mark, no runtime API. The bundler pulls in exactly this file.
|
|
21
|
+
|
|
22
|
+
```js
|
|
23
|
+
import kafka from '@moderneinc/design-system-logos/marks/kafka'
|
|
24
|
+
// kafka: a `data:image/svg+xml` string — use it directly as an <img src>
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
**React** — `<Logo>` resolves light/dark from `[data-theme="dark"]` on the
|
|
28
|
+
document root and swaps artwork when the attribute changes.
|
|
29
|
+
|
|
30
|
+
```jsx
|
|
31
|
+
import { Logo } from '@moderneinc/design-system-logos/react'
|
|
32
|
+
|
|
33
|
+
<Logo slug="kafka" alt="Kafka" size="1.5rem" />
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
Pass `dark` to override the resolved theme. Note this does not server-render
|
|
37
|
+
the mark: loading happens in an effect, so a server-rendered page emits the
|
|
38
|
+
placeholder either way. What it avoids is the light-then-dark swap on the
|
|
39
|
+
client's first effect.
|
|
40
|
+
|
|
41
|
+
```jsx
|
|
42
|
+
<Logo slug="kafka" alt="Kafka" dark={false} />
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
**Dynamic** — for code that does not know its slug until runtime.
|
|
46
|
+
|
|
47
|
+
```js
|
|
48
|
+
import { loadLogo, slugs, hasDark, isLogoSlug } from '@moderneinc/design-system-logos'
|
|
49
|
+
|
|
50
|
+
const uri = await loadLogo('kafka', { dark: true }) // data URI string
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
- `slugs` — every light-mark slug, e.g. `'kafka'`
|
|
54
|
+
- `hasDark(slug)` — whether a `.dark.svg` sibling exists
|
|
55
|
+
- `isLogoSlug(slug)` — type guard narrowing `string` to `LogoSlug`
|
|
56
|
+
|
|
57
|
+
### TypeScript
|
|
58
|
+
|
|
59
|
+
Subpath types (`/react`, `/marks/*`) need `moduleResolution` set to `bundler`,
|
|
60
|
+
`node16`, or `nodenext`. Under legacy `node10` only the root import resolves —
|
|
61
|
+
verified against a real consumer.
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## Maintainer docs
|
|
66
|
+
|
|
67
|
+
Everything below documents `src/marks` and the tooling that keeps its 212
|
|
68
|
+
marks visually coherent. It is not part of the package's public API —
|
|
69
|
+
consumers of the API above can stop here.
|
|
70
|
+
|
|
71
|
+
Counterpart to `tools/` in [moderneinc/public-assets], which does the same job
|
|
72
|
+
for tenant branding. Same conventions, so a mark can move between the two.
|
|
73
|
+
|
|
74
|
+
[moderneinc/public-assets]: https://github.com/moderneinc/public-assets
|
|
75
|
+
|
|
76
|
+
## Conventions
|
|
77
|
+
|
|
78
|
+
- **A square `viewBox`, framed to the keyline grid.** Each asset carries its own
|
|
79
|
+
margin; nothing downstream adds any. Assets without a `viewBox` cannot scale;
|
|
80
|
+
they paint at their authored size anchored top-left in any box that does not
|
|
81
|
+
match.
|
|
82
|
+
- **No `width`/`height`.** Intrinsic dimensions fight the frame.
|
|
83
|
+
- **True vector.** A base64 PNG in an SVG wrapper cannot scale or be recolored,
|
|
84
|
+
and costs 10–100× the bytes.
|
|
85
|
+
- **Bare marks on transparency.** No backing rect that is not part of the logo.
|
|
86
|
+
- **`<slug>.dark.svg` for marks that do not read on a dark surface**, sharing
|
|
87
|
+
its light sibling's `viewBox` exactly. Prefer the vendor's own reverse
|
|
88
|
+
artwork; otherwise lift the near-black ink and leave brand accents alone.
|
|
89
|
+
A mark that already reads on dark gets no dark variant.
|
|
90
|
+
|
|
91
|
+
## The keyline grid
|
|
92
|
+
|
|
93
|
+
These are logos, but they are used as icons — a 20px slot in the builder tree,
|
|
94
|
+
a 48px tile on a card — and a set of logos dropped into equal boxes does not
|
|
95
|
+
read as a set. A solid square fills its box and shouts; a thin outline of the
|
|
96
|
+
same size whispers; a 5:1 wordmark shrinks to a smear. The grid is what makes
|
|
97
|
+
them look like siblings.
|
|
98
|
+
|
|
99
|
+
So each mark is centred in a square frame and sized to a keyline: **how much of
|
|
100
|
+
that frame its long axis gets**. `keylineSpan` in `lib.mjs` sets it from two
|
|
101
|
+
measurements, and nothing about it is per-asset or hand-tuned:
|
|
102
|
+
|
|
103
|
+
- **Coverage** — the alpha-weighted share of the artwork's own bounding box
|
|
104
|
+
that is actually painted, from 0.13 (Micronaut's hairline) to 1.0 (a solid
|
|
105
|
+
npm block). Span falls as coverage rises, so ink drawn heavy and ink drawn
|
|
106
|
+
light land at the same weight. The falloff is deliberately gentle: a bounded
|
|
107
|
+
silhouette reads as its whole box, so normalizing on ink area outright throws
|
|
108
|
+
outline marks off the grid.
|
|
109
|
+
- **Elongation** — a 4:1 wordmark is thin by construction, so its long axis
|
|
110
|
+
gets a little more room than a compact mark needs.
|
|
111
|
+
|
|
112
|
+
Span lands between 0.58 and 0.88, against a base of 0.70 at half coverage —
|
|
113
|
+
about what the hand-built set rendered at, once its 250-of-400 canvas and the
|
|
114
|
+
tile's old `scale(1.15)` are multiplied out.
|
|
115
|
+
|
|
116
|
+
`logos:check` recomputes the keyline and fails any mark more than 6% off it,
|
|
117
|
+
which is what catches an asset dropped in without `logos:prepare`.
|
|
118
|
+
|
|
119
|
+
## Commands
|
|
120
|
+
|
|
121
|
+
```sh
|
|
122
|
+
npm run logos:prepare -w @moderneinc/design-system-logos -- src/marks/foo.svg # viewBox, svgo, keyline frame
|
|
123
|
+
npm run logos:prepare -w @moderneinc/design-system-logos -- --all # re-run over the whole set
|
|
124
|
+
npm run logos:check # verify; exits non-zero on failure
|
|
125
|
+
npm run logos:sheet # logo-contact-sheet.png
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
`logos:prepare` is idempotent, so `--all` is safe. Passing a light asset also
|
|
129
|
+
prepares its dark sibling, and always frames the dark one against the light.
|
|
130
|
+
|
|
131
|
+
Storybook's **Icons/Logos** page is the richer view: every mark light beside
|
|
132
|
+
dark, at 20px and 96px, drawn by the real component.
|
|
133
|
+
|
|
134
|
+
## Adding a logo
|
|
135
|
+
|
|
136
|
+
1. Source the vendor's **current** artwork — their live site or brand page, not
|
|
137
|
+
a logo aggregator's 2019 cache. Brands refresh marks, often specifically to
|
|
138
|
+
work in dark mode.
|
|
139
|
+
2. Save it as `src/marks/<slug>.svg`, lowercase.
|
|
140
|
+
3. `npm run logos:prepare -w @moderneinc/design-system-logos -- src/marks/<slug>.svg`
|
|
141
|
+
4. Look at it on both plates. If it dies on dark, add `<slug>.dark.svg` and
|
|
142
|
+
re-run `logos:prepare` on the light file.
|
|
143
|
+
5. `npm run logos:check`
|
|
144
|
+
|
|
145
|
+
## Prerequisites
|
|
146
|
+
|
|
147
|
+
Structural checks are pure Node. Keyline, clipping and contrast checks render
|
|
148
|
+
the marks and need `brew install librsvg imagemagick`; they are skipped with a
|
|
149
|
+
notice when those are missing, so `logos:check` still runs anywhere.
|
|
150
|
+
|
|
151
|
+
## Traps
|
|
152
|
+
|
|
153
|
+
- **Never put `@media (prefers-color-scheme)` inside an SVG.** It follows the OS,
|
|
154
|
+
not the app's theme toggle, so a dark-mode OS renders the mark white-on-white
|
|
155
|
+
on a light page. `logos:check` rejects it. Use a `.dark.svg` sibling.
|
|
156
|
+
- **`logos:prepare` must keep using this directory's svgo config.** The
|
|
157
|
+
default preset drops `viewBox` when `width`/`height` are present and agree —
|
|
158
|
+
exactly the shape a freshly downloaded logo has.
|
|
159
|
+
- **The contrast check is deliberately loose.** WCAG 3:1 is a text standard; a
|
|
160
|
+
logo is a large shape, and brand colors legitimately sit near 2:1 without being
|
|
161
|
+
hard to recognize. It only flags marks that nearly vanish, so it will not catch
|
|
162
|
+
a merely weak one. That is what looking at the Storybook page is for.
|
|
163
|
+
- **Nothing downstream may add padding to a mark.** The keyline is the padding,
|
|
164
|
+
and a slot that insets it again reintroduces exactly the imbalance the grid
|
|
165
|
+
exists to remove — the mark that was already given the least room loses the
|
|
166
|
+
most.
|
|
167
|
+
|
|
168
|
+
## Why `tools/` is not linted
|
|
169
|
+
|
|
170
|
+
`biome.json` never includes `packages/*/tools/**`, so these files keep their
|
|
171
|
+
source repo's house style (semicolons, against this repo's `semicolons:
|
|
172
|
+
"asNeeded"`). That is deliberate: they are shared with [moderneinc/public-assets]
|
|
173
|
+
so a mark can move between the two, and reformatting would fork them. Adding
|
|
174
|
+
`tools/` to Biome's includes would rewrite all five files.
|
|
175
|
+
|
|
176
|
+
## Provenance
|
|
177
|
+
|
|
178
|
+
These are third-party marks, reproduced to identify the projects they belong to.
|
|
179
|
+
Each is the vendor's own current artwork, reframed to the keyline grid and
|
|
180
|
+
optimized — never redrawn or recolored, apart from lifting near-black ink for a
|
|
181
|
+
`.dark.svg` sibling. They are published here so Moderne's own applications render
|
|
182
|
+
them consistently. Nothing about packaging them grants any trademark right, and
|
|
183
|
+
downstream use outside that purpose is the user's responsibility.
|
package/dist/index.cjs
ADDED
|
@@ -0,0 +1,453 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const slugs = [
|
|
4
|
+
"akka",
|
|
5
|
+
"android",
|
|
6
|
+
"angular",
|
|
7
|
+
"anthropic",
|
|
8
|
+
"apache",
|
|
9
|
+
"archunit",
|
|
10
|
+
"arquillian",
|
|
11
|
+
"artifactory",
|
|
12
|
+
"assertj",
|
|
13
|
+
"astgrep",
|
|
14
|
+
"aws",
|
|
15
|
+
"aws-s3",
|
|
16
|
+
"axonframework",
|
|
17
|
+
"axoniq",
|
|
18
|
+
"azul",
|
|
19
|
+
"azure",
|
|
20
|
+
"biome",
|
|
21
|
+
"byteman",
|
|
22
|
+
"camel",
|
|
23
|
+
"circleci",
|
|
24
|
+
"cloudsuitability",
|
|
25
|
+
"cobol",
|
|
26
|
+
"codehaus",
|
|
27
|
+
"compose",
|
|
28
|
+
"concourse",
|
|
29
|
+
"controlflow",
|
|
30
|
+
"core",
|
|
31
|
+
"csharp",
|
|
32
|
+
"cucumber",
|
|
33
|
+
"customrecipe",
|
|
34
|
+
"datafaker",
|
|
35
|
+
"dbrider",
|
|
36
|
+
"diffblue",
|
|
37
|
+
"docker",
|
|
38
|
+
"dotnet",
|
|
39
|
+
"dropwizard",
|
|
40
|
+
"easymock",
|
|
41
|
+
"elastic",
|
|
42
|
+
"fasterxml",
|
|
43
|
+
"featureflags",
|
|
44
|
+
"ff4j",
|
|
45
|
+
"flyway",
|
|
46
|
+
"gcp",
|
|
47
|
+
"gemini",
|
|
48
|
+
"github",
|
|
49
|
+
"gitlab",
|
|
50
|
+
"go",
|
|
51
|
+
"google",
|
|
52
|
+
"gradle",
|
|
53
|
+
"groovy",
|
|
54
|
+
"hcl",
|
|
55
|
+
"hibernate",
|
|
56
|
+
"httpcomponents",
|
|
57
|
+
"jacoco",
|
|
58
|
+
"jakarta",
|
|
59
|
+
"jasperreports",
|
|
60
|
+
"java",
|
|
61
|
+
"javascript",
|
|
62
|
+
"jboss",
|
|
63
|
+
"jenkins",
|
|
64
|
+
"jest",
|
|
65
|
+
"jetty",
|
|
66
|
+
"jhipster",
|
|
67
|
+
"jmockit",
|
|
68
|
+
"joda",
|
|
69
|
+
"json",
|
|
70
|
+
"jspecify",
|
|
71
|
+
"junit",
|
|
72
|
+
"kafka",
|
|
73
|
+
"keyfactor",
|
|
74
|
+
"kotlin",
|
|
75
|
+
"kubernetes",
|
|
76
|
+
"langchain",
|
|
77
|
+
"launchdarkly",
|
|
78
|
+
"liberty",
|
|
79
|
+
"lodash",
|
|
80
|
+
"log4j",
|
|
81
|
+
"lombok",
|
|
82
|
+
"maven",
|
|
83
|
+
"micrometer",
|
|
84
|
+
"micronaut",
|
|
85
|
+
"minio",
|
|
86
|
+
"mistral",
|
|
87
|
+
"mockito",
|
|
88
|
+
"moderne",
|
|
89
|
+
"mui",
|
|
90
|
+
"netty",
|
|
91
|
+
"nextjs",
|
|
92
|
+
"nexus",
|
|
93
|
+
"nodejs",
|
|
94
|
+
"npm",
|
|
95
|
+
"nuget",
|
|
96
|
+
"okhttp",
|
|
97
|
+
"open-ai",
|
|
98
|
+
"openapi",
|
|
99
|
+
"openfeature",
|
|
100
|
+
"openrewrite",
|
|
101
|
+
"opentelemetry",
|
|
102
|
+
"operaton",
|
|
103
|
+
"oracle",
|
|
104
|
+
"picnic",
|
|
105
|
+
"play",
|
|
106
|
+
"plexus",
|
|
107
|
+
"poolside",
|
|
108
|
+
"properties",
|
|
109
|
+
"pydantic",
|
|
110
|
+
"pypi",
|
|
111
|
+
"python",
|
|
112
|
+
"quarkus",
|
|
113
|
+
"react",
|
|
114
|
+
"reactive",
|
|
115
|
+
"reactor",
|
|
116
|
+
"recommendations",
|
|
117
|
+
"refaster",
|
|
118
|
+
"richfaces",
|
|
119
|
+
"scala",
|
|
120
|
+
"search",
|
|
121
|
+
"spring",
|
|
122
|
+
"springamqp",
|
|
123
|
+
"springbatch",
|
|
124
|
+
"springboot",
|
|
125
|
+
"springcloud",
|
|
126
|
+
"springdata",
|
|
127
|
+
"springframework",
|
|
128
|
+
"springkafka",
|
|
129
|
+
"springsecurity",
|
|
130
|
+
"sql",
|
|
131
|
+
"storybook",
|
|
132
|
+
"struts",
|
|
133
|
+
"svelte",
|
|
134
|
+
"tapestry",
|
|
135
|
+
"terraform",
|
|
136
|
+
"testcontainers",
|
|
137
|
+
"testng",
|
|
138
|
+
"text",
|
|
139
|
+
"timefold",
|
|
140
|
+
"toml",
|
|
141
|
+
"ubc",
|
|
142
|
+
"ui5",
|
|
143
|
+
"unleash",
|
|
144
|
+
"vue",
|
|
145
|
+
"vulncheck",
|
|
146
|
+
"wicket",
|
|
147
|
+
"wiremock",
|
|
148
|
+
"xml",
|
|
149
|
+
"xunit",
|
|
150
|
+
"yaml"
|
|
151
|
+
];
|
|
152
|
+
const darkSlugs = [
|
|
153
|
+
"akka",
|
|
154
|
+
"anthropic",
|
|
155
|
+
"assertj",
|
|
156
|
+
"astgrep",
|
|
157
|
+
"aws",
|
|
158
|
+
"axoniq",
|
|
159
|
+
"azul",
|
|
160
|
+
"circleci",
|
|
161
|
+
"cloudsuitability",
|
|
162
|
+
"codehaus",
|
|
163
|
+
"controlflow",
|
|
164
|
+
"core",
|
|
165
|
+
"datafaker",
|
|
166
|
+
"diffblue",
|
|
167
|
+
"docker",
|
|
168
|
+
"easymock",
|
|
169
|
+
"fasterxml",
|
|
170
|
+
"featureflags",
|
|
171
|
+
"github",
|
|
172
|
+
"hcl",
|
|
173
|
+
"hibernate",
|
|
174
|
+
"httpcomponents",
|
|
175
|
+
"jacoco",
|
|
176
|
+
"jakarta",
|
|
177
|
+
"jboss",
|
|
178
|
+
"jmockit",
|
|
179
|
+
"joda",
|
|
180
|
+
"json",
|
|
181
|
+
"jspecify",
|
|
182
|
+
"junit",
|
|
183
|
+
"kafka",
|
|
184
|
+
"keyfactor",
|
|
185
|
+
"langchain",
|
|
186
|
+
"launchdarkly",
|
|
187
|
+
"lodash",
|
|
188
|
+
"micronaut",
|
|
189
|
+
"mockito",
|
|
190
|
+
"moderne",
|
|
191
|
+
"nextjs",
|
|
192
|
+
"nexus",
|
|
193
|
+
"nuget",
|
|
194
|
+
"open-ai",
|
|
195
|
+
"openapi",
|
|
196
|
+
"openfeature",
|
|
197
|
+
"openrewrite",
|
|
198
|
+
"operaton",
|
|
199
|
+
"poolside",
|
|
200
|
+
"properties",
|
|
201
|
+
"quarkus",
|
|
202
|
+
"react",
|
|
203
|
+
"reactive",
|
|
204
|
+
"recommendations",
|
|
205
|
+
"richfaces",
|
|
206
|
+
"search",
|
|
207
|
+
"terraform",
|
|
208
|
+
"testng",
|
|
209
|
+
"text",
|
|
210
|
+
"timefold",
|
|
211
|
+
"toml",
|
|
212
|
+
"ubc",
|
|
213
|
+
"unleash",
|
|
214
|
+
"vulncheck",
|
|
215
|
+
"xml",
|
|
216
|
+
"xunit",
|
|
217
|
+
"yaml"
|
|
218
|
+
];
|
|
219
|
+
|
|
220
|
+
const thunks = {
|
|
221
|
+
"akka": () => import('./marks/akka.js'),
|
|
222
|
+
"android": () => import('./marks/android.js'),
|
|
223
|
+
"angular": () => import('./marks/angular.js'),
|
|
224
|
+
"anthropic": () => import('./marks/anthropic.js'),
|
|
225
|
+
"apache": () => import('./marks/apache.js'),
|
|
226
|
+
"archunit": () => import('./marks/archunit.js'),
|
|
227
|
+
"arquillian": () => import('./marks/arquillian.js'),
|
|
228
|
+
"artifactory": () => import('./marks/artifactory.js'),
|
|
229
|
+
"assertj": () => import('./marks/assertj.js'),
|
|
230
|
+
"astgrep": () => import('./marks/astgrep.js'),
|
|
231
|
+
"aws": () => import('./marks/aws.js'),
|
|
232
|
+
"aws-s3": () => import('./marks/aws-s3.js'),
|
|
233
|
+
"axonframework": () => import('./marks/axonframework.js'),
|
|
234
|
+
"axoniq": () => import('./marks/axoniq.js'),
|
|
235
|
+
"azul": () => import('./marks/azul.js'),
|
|
236
|
+
"azure": () => import('./marks/azure.js'),
|
|
237
|
+
"biome": () => import('./marks/biome.js'),
|
|
238
|
+
"byteman": () => import('./marks/byteman.js'),
|
|
239
|
+
"camel": () => import('./marks/camel.js'),
|
|
240
|
+
"circleci": () => import('./marks/circleci.js'),
|
|
241
|
+
"cloudsuitability": () => import('./marks/cloudsuitability.js'),
|
|
242
|
+
"cobol": () => import('./marks/cobol.js'),
|
|
243
|
+
"codehaus": () => import('./marks/codehaus.js'),
|
|
244
|
+
"compose": () => import('./marks/compose.js'),
|
|
245
|
+
"concourse": () => import('./marks/concourse.js'),
|
|
246
|
+
"controlflow": () => import('./marks/controlflow.js'),
|
|
247
|
+
"core": () => import('./marks/core.js'),
|
|
248
|
+
"csharp": () => import('./marks/csharp.js'),
|
|
249
|
+
"cucumber": () => import('./marks/cucumber.js'),
|
|
250
|
+
"customrecipe": () => import('./marks/customrecipe.js'),
|
|
251
|
+
"datafaker": () => import('./marks/datafaker.js'),
|
|
252
|
+
"dbrider": () => import('./marks/dbrider.js'),
|
|
253
|
+
"diffblue": () => import('./marks/diffblue.js'),
|
|
254
|
+
"docker": () => import('./marks/docker.js'),
|
|
255
|
+
"dotnet": () => import('./marks/dotnet.js'),
|
|
256
|
+
"dropwizard": () => import('./marks/dropwizard.js'),
|
|
257
|
+
"easymock": () => import('./marks/easymock.js'),
|
|
258
|
+
"elastic": () => import('./marks/elastic.js'),
|
|
259
|
+
"fasterxml": () => import('./marks/fasterxml.js'),
|
|
260
|
+
"featureflags": () => import('./marks/featureflags.js'),
|
|
261
|
+
"ff4j": () => import('./marks/ff4j.js'),
|
|
262
|
+
"flyway": () => import('./marks/flyway.js'),
|
|
263
|
+
"gcp": () => import('./marks/gcp.js'),
|
|
264
|
+
"gemini": () => import('./marks/gemini.js'),
|
|
265
|
+
"github": () => import('./marks/github.js'),
|
|
266
|
+
"gitlab": () => import('./marks/gitlab.js'),
|
|
267
|
+
"go": () => import('./marks/go.js'),
|
|
268
|
+
"google": () => import('./marks/google.js'),
|
|
269
|
+
"gradle": () => import('./marks/gradle.js'),
|
|
270
|
+
"groovy": () => import('./marks/groovy.js'),
|
|
271
|
+
"hcl": () => import('./marks/hcl.js'),
|
|
272
|
+
"hibernate": () => import('./marks/hibernate.js'),
|
|
273
|
+
"httpcomponents": () => import('./marks/httpcomponents.js'),
|
|
274
|
+
"jacoco": () => import('./marks/jacoco.js'),
|
|
275
|
+
"jakarta": () => import('./marks/jakarta.js'),
|
|
276
|
+
"jasperreports": () => import('./marks/jasperreports.js'),
|
|
277
|
+
"java": () => import('./marks/java.js'),
|
|
278
|
+
"javascript": () => import('./marks/javascript.js'),
|
|
279
|
+
"jboss": () => import('./marks/jboss.js'),
|
|
280
|
+
"jenkins": () => import('./marks/jenkins.js'),
|
|
281
|
+
"jest": () => import('./marks/jest.js'),
|
|
282
|
+
"jetty": () => import('./marks/jetty.js'),
|
|
283
|
+
"jhipster": () => import('./marks/jhipster.js'),
|
|
284
|
+
"jmockit": () => import('./marks/jmockit.js'),
|
|
285
|
+
"joda": () => import('./marks/joda.js'),
|
|
286
|
+
"json": () => import('./marks/json.js'),
|
|
287
|
+
"jspecify": () => import('./marks/jspecify.js'),
|
|
288
|
+
"junit": () => import('./marks/junit.js'),
|
|
289
|
+
"kafka": () => import('./marks/kafka.js'),
|
|
290
|
+
"keyfactor": () => import('./marks/keyfactor.js'),
|
|
291
|
+
"kotlin": () => import('./marks/kotlin.js'),
|
|
292
|
+
"kubernetes": () => import('./marks/kubernetes.js'),
|
|
293
|
+
"langchain": () => import('./marks/langchain.js'),
|
|
294
|
+
"launchdarkly": () => import('./marks/launchdarkly.js'),
|
|
295
|
+
"liberty": () => import('./marks/liberty.js'),
|
|
296
|
+
"lodash": () => import('./marks/lodash.js'),
|
|
297
|
+
"log4j": () => import('./marks/log4j.js'),
|
|
298
|
+
"lombok": () => import('./marks/lombok.js'),
|
|
299
|
+
"maven": () => import('./marks/maven.js'),
|
|
300
|
+
"micrometer": () => import('./marks/micrometer.js'),
|
|
301
|
+
"micronaut": () => import('./marks/micronaut.js'),
|
|
302
|
+
"minio": () => import('./marks/minio.js'),
|
|
303
|
+
"mistral": () => import('./marks/mistral.js'),
|
|
304
|
+
"mockito": () => import('./marks/mockito.js'),
|
|
305
|
+
"moderne": () => import('./marks/moderne.js'),
|
|
306
|
+
"mui": () => import('./marks/mui.js'),
|
|
307
|
+
"netty": () => import('./marks/netty.js'),
|
|
308
|
+
"nextjs": () => import('./marks/nextjs.js'),
|
|
309
|
+
"nexus": () => import('./marks/nexus.js'),
|
|
310
|
+
"nodejs": () => import('./marks/nodejs.js'),
|
|
311
|
+
"npm": () => import('./marks/npm.js'),
|
|
312
|
+
"nuget": () => import('./marks/nuget.js'),
|
|
313
|
+
"okhttp": () => import('./marks/okhttp.js'),
|
|
314
|
+
"open-ai": () => import('./marks/open-ai.js'),
|
|
315
|
+
"openapi": () => import('./marks/openapi.js'),
|
|
316
|
+
"openfeature": () => import('./marks/openfeature.js'),
|
|
317
|
+
"openrewrite": () => import('./marks/openrewrite.js'),
|
|
318
|
+
"opentelemetry": () => import('./marks/opentelemetry.js'),
|
|
319
|
+
"operaton": () => import('./marks/operaton.js'),
|
|
320
|
+
"oracle": () => import('./marks/oracle.js'),
|
|
321
|
+
"picnic": () => import('./marks/picnic.js'),
|
|
322
|
+
"play": () => import('./marks/play.js'),
|
|
323
|
+
"plexus": () => import('./marks/plexus.js'),
|
|
324
|
+
"poolside": () => import('./marks/poolside.js'),
|
|
325
|
+
"properties": () => import('./marks/properties.js'),
|
|
326
|
+
"pydantic": () => import('./marks/pydantic.js'),
|
|
327
|
+
"pypi": () => import('./marks/pypi.js'),
|
|
328
|
+
"python": () => import('./marks/python.js'),
|
|
329
|
+
"quarkus": () => import('./marks/quarkus.js'),
|
|
330
|
+
"react": () => import('./marks/react.js'),
|
|
331
|
+
"reactive": () => import('./marks/reactive.js'),
|
|
332
|
+
"reactor": () => import('./marks/reactor.js'),
|
|
333
|
+
"recommendations": () => import('./marks/recommendations.js'),
|
|
334
|
+
"refaster": () => import('./marks/refaster.js'),
|
|
335
|
+
"richfaces": () => import('./marks/richfaces.js'),
|
|
336
|
+
"scala": () => import('./marks/scala.js'),
|
|
337
|
+
"search": () => import('./marks/search.js'),
|
|
338
|
+
"spring": () => import('./marks/spring.js'),
|
|
339
|
+
"springamqp": () => import('./marks/springamqp.js'),
|
|
340
|
+
"springbatch": () => import('./marks/springbatch.js'),
|
|
341
|
+
"springboot": () => import('./marks/springboot.js'),
|
|
342
|
+
"springcloud": () => import('./marks/springcloud.js'),
|
|
343
|
+
"springdata": () => import('./marks/springdata.js'),
|
|
344
|
+
"springframework": () => import('./marks/springframework.js'),
|
|
345
|
+
"springkafka": () => import('./marks/springkafka.js'),
|
|
346
|
+
"springsecurity": () => import('./marks/springsecurity.js'),
|
|
347
|
+
"sql": () => import('./marks/sql.js'),
|
|
348
|
+
"storybook": () => import('./marks/storybook.js'),
|
|
349
|
+
"struts": () => import('./marks/struts.js'),
|
|
350
|
+
"svelte": () => import('./marks/svelte.js'),
|
|
351
|
+
"tapestry": () => import('./marks/tapestry.js'),
|
|
352
|
+
"terraform": () => import('./marks/terraform.js'),
|
|
353
|
+
"testcontainers": () => import('./marks/testcontainers.js'),
|
|
354
|
+
"testng": () => import('./marks/testng.js'),
|
|
355
|
+
"text": () => import('./marks/text.js'),
|
|
356
|
+
"timefold": () => import('./marks/timefold.js'),
|
|
357
|
+
"toml": () => import('./marks/toml.js'),
|
|
358
|
+
"ubc": () => import('./marks/ubc.js'),
|
|
359
|
+
"ui5": () => import('./marks/ui5.js'),
|
|
360
|
+
"unleash": () => import('./marks/unleash.js'),
|
|
361
|
+
"vue": () => import('./marks/vue.js'),
|
|
362
|
+
"vulncheck": () => import('./marks/vulncheck.js'),
|
|
363
|
+
"wicket": () => import('./marks/wicket.js'),
|
|
364
|
+
"wiremock": () => import('./marks/wiremock.js'),
|
|
365
|
+
"xml": () => import('./marks/xml.js'),
|
|
366
|
+
"xunit": () => import('./marks/xunit.js'),
|
|
367
|
+
"yaml": () => import('./marks/yaml.js')
|
|
368
|
+
};
|
|
369
|
+
const darkThunks = {
|
|
370
|
+
"akka": () => import('./marks/akka.dark.js'),
|
|
371
|
+
"anthropic": () => import('./marks/anthropic.dark.js'),
|
|
372
|
+
"assertj": () => import('./marks/assertj.dark.js'),
|
|
373
|
+
"astgrep": () => import('./marks/astgrep.dark.js'),
|
|
374
|
+
"aws": () => import('./marks/aws.dark.js'),
|
|
375
|
+
"axoniq": () => import('./marks/axoniq.dark.js'),
|
|
376
|
+
"azul": () => import('./marks/azul.dark.js'),
|
|
377
|
+
"circleci": () => import('./marks/circleci.dark.js'),
|
|
378
|
+
"cloudsuitability": () => import('./marks/cloudsuitability.dark.js'),
|
|
379
|
+
"codehaus": () => import('./marks/codehaus.dark.js'),
|
|
380
|
+
"controlflow": () => import('./marks/controlflow.dark.js'),
|
|
381
|
+
"core": () => import('./marks/core.dark.js'),
|
|
382
|
+
"datafaker": () => import('./marks/datafaker.dark.js'),
|
|
383
|
+
"diffblue": () => import('./marks/diffblue.dark.js'),
|
|
384
|
+
"docker": () => import('./marks/docker.dark.js'),
|
|
385
|
+
"easymock": () => import('./marks/easymock.dark.js'),
|
|
386
|
+
"fasterxml": () => import('./marks/fasterxml.dark.js'),
|
|
387
|
+
"featureflags": () => import('./marks/featureflags.dark.js'),
|
|
388
|
+
"github": () => import('./marks/github.dark.js'),
|
|
389
|
+
"hcl": () => import('./marks/hcl.dark.js'),
|
|
390
|
+
"hibernate": () => import('./marks/hibernate.dark.js'),
|
|
391
|
+
"httpcomponents": () => import('./marks/httpcomponents.dark.js'),
|
|
392
|
+
"jacoco": () => import('./marks/jacoco.dark.js'),
|
|
393
|
+
"jakarta": () => import('./marks/jakarta.dark.js'),
|
|
394
|
+
"jboss": () => import('./marks/jboss.dark.js'),
|
|
395
|
+
"jmockit": () => import('./marks/jmockit.dark.js'),
|
|
396
|
+
"joda": () => import('./marks/joda.dark.js'),
|
|
397
|
+
"json": () => import('./marks/json.dark.js'),
|
|
398
|
+
"jspecify": () => import('./marks/jspecify.dark.js'),
|
|
399
|
+
"junit": () => import('./marks/junit.dark.js'),
|
|
400
|
+
"kafka": () => import('./marks/kafka.dark.js'),
|
|
401
|
+
"keyfactor": () => import('./marks/keyfactor.dark.js'),
|
|
402
|
+
"langchain": () => import('./marks/langchain.dark.js'),
|
|
403
|
+
"launchdarkly": () => import('./marks/launchdarkly.dark.js'),
|
|
404
|
+
"lodash": () => import('./marks/lodash.dark.js'),
|
|
405
|
+
"micronaut": () => import('./marks/micronaut.dark.js'),
|
|
406
|
+
"mockito": () => import('./marks/mockito.dark.js'),
|
|
407
|
+
"moderne": () => import('./marks/moderne.dark.js'),
|
|
408
|
+
"nextjs": () => import('./marks/nextjs.dark.js'),
|
|
409
|
+
"nexus": () => import('./marks/nexus.dark.js'),
|
|
410
|
+
"nuget": () => import('./marks/nuget.dark.js'),
|
|
411
|
+
"open-ai": () => import('./marks/open-ai.dark.js'),
|
|
412
|
+
"openapi": () => import('./marks/openapi.dark.js'),
|
|
413
|
+
"openfeature": () => import('./marks/openfeature.dark.js'),
|
|
414
|
+
"openrewrite": () => import('./marks/openrewrite.dark.js'),
|
|
415
|
+
"operaton": () => import('./marks/operaton.dark.js'),
|
|
416
|
+
"poolside": () => import('./marks/poolside.dark.js'),
|
|
417
|
+
"properties": () => import('./marks/properties.dark.js'),
|
|
418
|
+
"quarkus": () => import('./marks/quarkus.dark.js'),
|
|
419
|
+
"react": () => import('./marks/react.dark.js'),
|
|
420
|
+
"reactive": () => import('./marks/reactive.dark.js'),
|
|
421
|
+
"recommendations": () => import('./marks/recommendations.dark.js'),
|
|
422
|
+
"richfaces": () => import('./marks/richfaces.dark.js'),
|
|
423
|
+
"search": () => import('./marks/search.dark.js'),
|
|
424
|
+
"terraform": () => import('./marks/terraform.dark.js'),
|
|
425
|
+
"testng": () => import('./marks/testng.dark.js'),
|
|
426
|
+
"text": () => import('./marks/text.dark.js'),
|
|
427
|
+
"timefold": () => import('./marks/timefold.dark.js'),
|
|
428
|
+
"toml": () => import('./marks/toml.dark.js'),
|
|
429
|
+
"ubc": () => import('./marks/ubc.dark.js'),
|
|
430
|
+
"unleash": () => import('./marks/unleash.dark.js'),
|
|
431
|
+
"vulncheck": () => import('./marks/vulncheck.dark.js'),
|
|
432
|
+
"xml": () => import('./marks/xml.dark.js'),
|
|
433
|
+
"xunit": () => import('./marks/xunit.dark.js'),
|
|
434
|
+
"yaml": () => import('./marks/yaml.dark.js')
|
|
435
|
+
};
|
|
436
|
+
|
|
437
|
+
const darkSet = new Set(darkSlugs);
|
|
438
|
+
const hasDark = (slug) => darkSet.has(slug);
|
|
439
|
+
const slugSet = new Set(slugs);
|
|
440
|
+
const isLogoSlug = (slug) => slugSet.has(slug);
|
|
441
|
+
const loadLogo = async (slug, { dark = false } = {}) => {
|
|
442
|
+
const thunk = dark && darkSet.has(slug) ? darkThunks[slug] : thunks[slug];
|
|
443
|
+
if (!thunk) {
|
|
444
|
+
throw new Error(`unknown logo slug: ${slug}`);
|
|
445
|
+
}
|
|
446
|
+
return (await thunk()).default;
|
|
447
|
+
};
|
|
448
|
+
|
|
449
|
+
exports.hasDark = hasDark;
|
|
450
|
+
exports.isLogoSlug = isLogoSlug;
|
|
451
|
+
exports.loadLogo = loadLogo;
|
|
452
|
+
exports.slugs = slugs;
|
|
453
|
+
//# sourceMappingURL=index.cjs.map
|