code-languages 1.12.4 → 1.14.0
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 +33 -2
- package/dist/api.cjs +294 -0
- package/dist/api.cjs.map +1 -1
- package/dist/api.d.cts +189 -0
- package/dist/api.d.ts +189 -0
- package/dist/api.js +294 -0
- package/dist/api.js.map +1 -1
- package/dist/detect.cjs +210 -0
- package/dist/detect.cjs.map +1 -1
- package/dist/detect.js +210 -0
- package/dist/detect.js.map +1 -1
- package/dist/index.cjs +301 -0
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +189 -0
- package/dist/index.d.ts +189 -0
- package/dist/index.js +302 -1
- package/dist/index.js.map +1 -1
- package/dist/languages/elixir.cjs +34 -0
- package/dist/languages/elixir.cjs.map +1 -0
- package/dist/languages/elixir.d.cts +29 -0
- package/dist/languages/elixir.d.ts +29 -0
- package/dist/languages/elixir.js +32 -0
- package/dist/languages/elixir.js.map +1 -0
- package/dist/languages/haskell.cjs +34 -0
- package/dist/languages/haskell.cjs.map +1 -0
- package/dist/languages/haskell.d.cts +29 -0
- package/dist/languages/haskell.d.ts +29 -0
- package/dist/languages/haskell.js +32 -0
- package/dist/languages/haskell.js.map +1 -0
- package/dist/languages/hcl.cjs +34 -0
- package/dist/languages/hcl.cjs.map +1 -0
- package/dist/languages/hcl.d.cts +29 -0
- package/dist/languages/hcl.d.ts +29 -0
- package/dist/languages/hcl.js +32 -0
- package/dist/languages/hcl.js.map +1 -0
- package/dist/languages/jupyter-notebook.cjs +34 -0
- package/dist/languages/jupyter-notebook.cjs.map +1 -0
- package/dist/languages/jupyter-notebook.d.cts +29 -0
- package/dist/languages/jupyter-notebook.d.ts +29 -0
- package/dist/languages/jupyter-notebook.js +32 -0
- package/dist/languages/jupyter-notebook.js.map +1 -0
- package/dist/languages/ocaml.cjs +34 -0
- package/dist/languages/ocaml.cjs.map +1 -0
- package/dist/languages/ocaml.d.cts +29 -0
- package/dist/languages/ocaml.d.ts +29 -0
- package/dist/languages/ocaml.js +32 -0
- package/dist/languages/ocaml.js.map +1 -0
- package/dist/languages/razor.cjs +34 -0
- package/dist/languages/razor.cjs.map +1 -0
- package/dist/languages/razor.d.cts +29 -0
- package/dist/languages/razor.d.ts +29 -0
- package/dist/languages/razor.js +32 -0
- package/dist/languages/razor.js.map +1 -0
- package/dist/languages/solidity.cjs +34 -0
- package/dist/languages/solidity.cjs.map +1 -0
- package/dist/languages/solidity.d.cts +29 -0
- package/dist/languages/solidity.d.ts +29 -0
- package/dist/languages/solidity.js +32 -0
- package/dist/languages/solidity.js.map +1 -0
- package/package.json +36 -1
package/dist/detect.js
CHANGED
|
@@ -509,6 +509,35 @@ var dockerfile = {
|
|
|
509
509
|
}
|
|
510
510
|
};
|
|
511
511
|
|
|
512
|
+
// src/languages/elixir.ts
|
|
513
|
+
var elixir = {
|
|
514
|
+
slug: "elixir",
|
|
515
|
+
publishedDate: "2012-05-25",
|
|
516
|
+
extensions: [".ex", ".exs", ".eex", ".leex", ".heex"],
|
|
517
|
+
author: "Jose Valim",
|
|
518
|
+
website: "https://elixir-lang.org",
|
|
519
|
+
paradigms: ["functional", "concurrent", "distributed", "metaprogramming"],
|
|
520
|
+
tooling: {
|
|
521
|
+
runtimes: ["BEAM", "Erlang/OTP"],
|
|
522
|
+
packageManagers: ["Mix", "Hex"],
|
|
523
|
+
ecosystems: ["Web", "Distributed Systems", "Fault-tolerant Systems", "Data Processing"]
|
|
524
|
+
},
|
|
525
|
+
version: "1.19.5",
|
|
526
|
+
logo: "https://cdn.simpleicons.org/elixir/4B275F",
|
|
527
|
+
i18n: {
|
|
528
|
+
en: {
|
|
529
|
+
name: "Elixir",
|
|
530
|
+
description: "A dynamic functional language for scalable, maintainable, and fault-tolerant systems.",
|
|
531
|
+
longDescription: "Elixir runs on the BEAM virtual machine and combines functional programming, lightweight processes, message passing, pattern matching, macros, and OTP libraries for building concurrent and distributed software.\n\nIt is widely used for web applications with Phoenix, real-time systems, background jobs, data pipelines, embedded systems, and services that need resilience, observability, and high concurrency."
|
|
532
|
+
},
|
|
533
|
+
es: {
|
|
534
|
+
name: "Elixir",
|
|
535
|
+
description: "Un lenguaje funcional dinamico para sistemas escalables, mantenibles y tolerantes a fallos.",
|
|
536
|
+
longDescription: "Elixir corre sobre la maquina virtual BEAM y combina programacion funcional, procesos ligeros, paso de mensajes, pattern matching, macros y librerias OTP para construir software concurrente y distribuido.\n\nSe usa ampliamente en aplicaciones web con Phoenix, sistemas en tiempo real, trabajos en segundo plano, pipelines de datos, sistemas embebidos y servicios que necesitan resiliencia, observabilidad y alta concurrencia."
|
|
537
|
+
}
|
|
538
|
+
}
|
|
539
|
+
};
|
|
540
|
+
|
|
512
541
|
// src/languages/elm.ts
|
|
513
542
|
var elm = {
|
|
514
543
|
slug: "elm",
|
|
@@ -798,6 +827,64 @@ var groovy = {
|
|
|
798
827
|
}
|
|
799
828
|
};
|
|
800
829
|
|
|
830
|
+
// src/languages/haskell.ts
|
|
831
|
+
var haskell = {
|
|
832
|
+
slug: "haskell",
|
|
833
|
+
publishedDate: "1990-04-01",
|
|
834
|
+
extensions: [".hs", ".lhs", ".hsc", ".hs-boot", ".hsig", ".cabal"],
|
|
835
|
+
author: "Haskell Committee",
|
|
836
|
+
website: "https://www.haskell.org",
|
|
837
|
+
paradigms: ["functional", "declarative", "lazy evaluation", "statically typed"],
|
|
838
|
+
tooling: {
|
|
839
|
+
runtimes: ["GHC", "GHCi"],
|
|
840
|
+
packageManagers: ["Cabal", "Stack", "GHCup"],
|
|
841
|
+
ecosystems: ["Functional Programming", "Compilers", "Research", "Financial Systems"]
|
|
842
|
+
},
|
|
843
|
+
version: "GHC 9.14.1",
|
|
844
|
+
logo: "https://cdn.simpleicons.org/haskell/5D4F85",
|
|
845
|
+
i18n: {
|
|
846
|
+
en: {
|
|
847
|
+
name: "Haskell",
|
|
848
|
+
description: "A lazy, purely functional language with strong static typing and expressive abstractions.",
|
|
849
|
+
longDescription: "Haskell is a general-purpose functional programming language known for purity, lazy evaluation, algebraic data types, type classes, pattern matching, and a powerful static type system. The Haskell 2010 language standard is widely supported, while GHC adds many commonly used extensions.\n\nIt is used in compiler construction, programming language research, financial systems, formal methods, data processing, education, and production services that benefit from strong types and high-level abstractions."
|
|
850
|
+
},
|
|
851
|
+
es: {
|
|
852
|
+
name: "Haskell",
|
|
853
|
+
description: "Un lenguaje puramente funcional y lazy con tipado estatico fuerte y abstracciones expresivas.",
|
|
854
|
+
longDescription: "Haskell es un lenguaje de programacion funcional de proposito general conocido por pureza, evaluacion lazy, tipos algebraicos, type classes, pattern matching y un sistema de tipos estatico potente. El estandar Haskell 2010 tiene amplio soporte, mientras GHC agrega muchas extensiones de uso comun.\n\nSe usa en construccion de compiladores, investigacion en lenguajes de programacion, sistemas financieros, metodos formales, procesamiento de datos, educacion y servicios de produccion que se benefician de tipos fuertes y abstracciones de alto nivel."
|
|
855
|
+
}
|
|
856
|
+
}
|
|
857
|
+
};
|
|
858
|
+
|
|
859
|
+
// src/languages/hcl.ts
|
|
860
|
+
var hcl = {
|
|
861
|
+
slug: "hcl",
|
|
862
|
+
publishedDate: "2014-01-01",
|
|
863
|
+
extensions: [".hcl", ".tf", ".tfvars", ".pkr.hcl", ".nomad"],
|
|
864
|
+
author: "HashiCorp",
|
|
865
|
+
website: "https://github.com/hashicorp/hcl",
|
|
866
|
+
paradigms: ["declarative", "configuration", "data-serialization"],
|
|
867
|
+
tooling: {
|
|
868
|
+
runtimes: ["Terraform", "Packer", "Nomad", "Vault", "Consul"],
|
|
869
|
+
packageManagers: ["Terraform Registry"],
|
|
870
|
+
ecosystems: ["Infrastructure as Code", "DevOps", "Cloud", "HashiCorp"]
|
|
871
|
+
},
|
|
872
|
+
version: "2.24.0",
|
|
873
|
+
logo: "https://cdn.simpleicons.org/hashicorp/844FBA",
|
|
874
|
+
i18n: {
|
|
875
|
+
en: {
|
|
876
|
+
name: "HCL",
|
|
877
|
+
description: "HashiCorp Configuration Language for human-readable infrastructure and application configuration.",
|
|
878
|
+
longDescription: "HCL is HashiCorp Configuration Language, a structured configuration language designed to be readable by humans while remaining easy for tools to parse. It supports blocks, attributes, expressions, variables, functions, object values, and references used to describe infrastructure and application settings.\n\nIt is best known through Terraform, but it is also used across HashiCorp tools such as Packer, Nomad, Vault, and Consul. HCL files commonly define cloud resources, modules, providers, jobs, policies, templates, and environment-specific variables."
|
|
879
|
+
},
|
|
880
|
+
es: {
|
|
881
|
+
name: "HCL",
|
|
882
|
+
description: "El lenguaje de configuracion de HashiCorp para infraestructura y configuracion legible por humanos.",
|
|
883
|
+
longDescription: "HCL es HashiCorp Configuration Language, un lenguaje de configuracion estructurado disenado para ser legible por humanos y facil de analizar por herramientas. Soporta bloques, atributos, expresiones, variables, funciones, valores de objeto y referencias usadas para describir infraestructura y configuracion de aplicaciones.\n\nEs conocido principalmente por Terraform, pero tambien se usa en herramientas de HashiCorp como Packer, Nomad, Vault y Consul. Los archivos HCL suelen definir recursos cloud, modulos, providers, jobs, politicas, templates y variables especificas por entorno."
|
|
884
|
+
}
|
|
885
|
+
}
|
|
886
|
+
};
|
|
887
|
+
|
|
801
888
|
// src/languages/html.ts
|
|
802
889
|
var html = {
|
|
803
890
|
slug: "html",
|
|
@@ -960,6 +1047,35 @@ var julia = {
|
|
|
960
1047
|
}
|
|
961
1048
|
};
|
|
962
1049
|
|
|
1050
|
+
// src/languages/jupyter-notebook.ts
|
|
1051
|
+
var jupyterNotebook = {
|
|
1052
|
+
slug: "jupyter-notebook",
|
|
1053
|
+
publishedDate: "2011-12-21",
|
|
1054
|
+
extensions: [".ipynb"],
|
|
1055
|
+
author: "Project Jupyter",
|
|
1056
|
+
website: "https://jupyter.org",
|
|
1057
|
+
paradigms: ["literate programming", "interactive computing", "data serialization", "markup"],
|
|
1058
|
+
tooling: {
|
|
1059
|
+
runtimes: ["Jupyter Notebook", "JupyterLab", "VS Code"],
|
|
1060
|
+
packageManagers: ["pip", "conda", "mamba"],
|
|
1061
|
+
ecosystems: ["Data Science", "Machine Learning", "Scientific Computing", "Education"]
|
|
1062
|
+
},
|
|
1063
|
+
version: "nbformat 4.5",
|
|
1064
|
+
logo: "https://cdn.simpleicons.org/jupyter/F37626",
|
|
1065
|
+
i18n: {
|
|
1066
|
+
en: {
|
|
1067
|
+
name: "Jupyter Notebook",
|
|
1068
|
+
description: "A JSON-based notebook format for combining live code, narrative text, outputs, and media.",
|
|
1069
|
+
longDescription: "Jupyter Notebook files store executable code cells, Markdown narrative, rich outputs, metadata, and kernel information in a JSON document with the .ipynb extension.\n\nThey are widely used for data analysis, machine learning experiments, scientific computing, education, tutorials, reports, and reproducible computational workflows."
|
|
1070
|
+
},
|
|
1071
|
+
es: {
|
|
1072
|
+
name: "Jupyter Notebook",
|
|
1073
|
+
description: "Un formato de notebook basado en JSON para combinar codigo vivo, texto, salidas y medios.",
|
|
1074
|
+
longDescription: "Los archivos Jupyter Notebook guardan celdas de codigo ejecutable, narrativa en Markdown, salidas enriquecidas, metadatos e informacion del kernel en un documento JSON con extension .ipynb.\n\nSe usan ampliamente en analisis de datos, experimentos de machine learning, computacion cientifica, educacion, tutoriales, reportes y flujos computacionales reproducibles."
|
|
1075
|
+
}
|
|
1076
|
+
}
|
|
1077
|
+
};
|
|
1078
|
+
|
|
963
1079
|
// src/languages/kotlin.ts
|
|
964
1080
|
var kotlin = {
|
|
965
1081
|
slug: "kotlin",
|
|
@@ -1300,6 +1416,35 @@ var objectiveC = {
|
|
|
1300
1416
|
}
|
|
1301
1417
|
};
|
|
1302
1418
|
|
|
1419
|
+
// src/languages/ocaml.ts
|
|
1420
|
+
var ocaml = {
|
|
1421
|
+
slug: "ocaml",
|
|
1422
|
+
publishedDate: "1996-01-01",
|
|
1423
|
+
extensions: [".ml", ".mli", ".mll", ".mly", ".mlt", ".eliom", ".eliomi"],
|
|
1424
|
+
author: "Xavier Leroy, Jerome Vouillon, Damien Doligez, Didier Remy, Ascander Suarez",
|
|
1425
|
+
website: "https://ocaml.org",
|
|
1426
|
+
paradigms: ["functional", "imperative", "object-oriented", "modular"],
|
|
1427
|
+
tooling: {
|
|
1428
|
+
runtimes: ["OCaml Runtime", "Native Code Compiler", "Bytecode Interpreter"],
|
|
1429
|
+
packageManagers: ["opam", "Dune"],
|
|
1430
|
+
ecosystems: ["Compilers", "Formal Methods", "Systems Programming", "Web"]
|
|
1431
|
+
},
|
|
1432
|
+
version: "5.6.0",
|
|
1433
|
+
logo: "https://cdn.simpleicons.org/ocaml/EC6813",
|
|
1434
|
+
i18n: {
|
|
1435
|
+
en: {
|
|
1436
|
+
name: "OCaml",
|
|
1437
|
+
description: "A statically typed ML-family language with modules, inference, and native compilation.",
|
|
1438
|
+
longDescription: "OCaml combines functional, imperative, and object-oriented programming with Hindley-Milner type inference, algebraic data types, pattern matching, functors, and a powerful module system.\n\nIt is used for compilers, theorem provers, static analysis, developer tools, financial systems, systems software, and production services where strong types, performance, and maintainability matter."
|
|
1439
|
+
},
|
|
1440
|
+
es: {
|
|
1441
|
+
name: "OCaml",
|
|
1442
|
+
description: "Un lenguaje de la familia ML con tipado estatico, modulos, inferencia y compilacion nativa.",
|
|
1443
|
+
longDescription: "OCaml combina programacion funcional, imperativa y orientada a objetos con inferencia de tipos Hindley-Milner, tipos algebraicos, pattern matching, functors y un sistema de modulos potente.\n\nSe usa en compiladores, demostradores de teoremas, analisis estatico, herramientas de desarrollo, sistemas financieros, software de sistemas y servicios de produccion donde importan los tipos fuertes, el rendimiento y la mantenibilidad."
|
|
1444
|
+
}
|
|
1445
|
+
}
|
|
1446
|
+
};
|
|
1447
|
+
|
|
1303
1448
|
// src/languages/pascal.ts
|
|
1304
1449
|
var pascal = {
|
|
1305
1450
|
slug: "pascal",
|
|
@@ -1503,6 +1648,35 @@ var r = {
|
|
|
1503
1648
|
}
|
|
1504
1649
|
};
|
|
1505
1650
|
|
|
1651
|
+
// src/languages/razor.ts
|
|
1652
|
+
var razor = {
|
|
1653
|
+
slug: "razor",
|
|
1654
|
+
publishedDate: "2010-07-01",
|
|
1655
|
+
extensions: [".cshtml", ".razor"],
|
|
1656
|
+
author: "Microsoft",
|
|
1657
|
+
website: "https://learn.microsoft.com/en-us/aspnet/core/mvc/views/razor",
|
|
1658
|
+
paradigms: ["templating", "component-based", "server-side", "declarative"],
|
|
1659
|
+
tooling: {
|
|
1660
|
+
runtimes: ["ASP.NET Core", ".NET", "Blazor"],
|
|
1661
|
+
packageManagers: ["NuGet"],
|
|
1662
|
+
ecosystems: [".NET", "ASP.NET Core", "Web", "Blazor"]
|
|
1663
|
+
},
|
|
1664
|
+
version: "10.0.8",
|
|
1665
|
+
logo: "https://cdn.simpleicons.org/dotnet/512BD4",
|
|
1666
|
+
i18n: {
|
|
1667
|
+
en: {
|
|
1668
|
+
name: "Razor",
|
|
1669
|
+
description: "Microsoft's markup syntax for ASP.NET Core views, Razor Pages, and Blazor components.",
|
|
1670
|
+
longDescription: "Razor is a markup syntax and templating language used by ASP.NET Core to combine HTML with C# expressions, directives, layouts, tag helpers, components, and server-side or interactive rendering logic.\n\nIt is used in MVC views, Razor Pages, Razor Class Libraries, and Blazor components. Razor files commonly define page templates, reusable UI components, forms, layouts, routing, component parameters, and bindings within .NET web applications."
|
|
1671
|
+
},
|
|
1672
|
+
es: {
|
|
1673
|
+
name: "Razor",
|
|
1674
|
+
description: "La sintaxis de marcado de Microsoft para vistas ASP.NET Core, Razor Pages y componentes Blazor.",
|
|
1675
|
+
longDescription: "Razor es una sintaxis de marcado y lenguaje de templates usado por ASP.NET Core para combinar HTML con expresiones C#, directivas, layouts, tag helpers, componentes y logica de renderizado server-side o interactiva.\n\nSe usa en vistas MVC, Razor Pages, Razor Class Libraries y componentes Blazor. Los archivos Razor suelen definir templates de paginas, componentes UI reutilizables, formularios, layouts, routing, parametros de componentes y bindings dentro de aplicaciones web .NET."
|
|
1676
|
+
}
|
|
1677
|
+
}
|
|
1678
|
+
};
|
|
1679
|
+
|
|
1506
1680
|
// src/languages/ruby.ts
|
|
1507
1681
|
var ruby = {
|
|
1508
1682
|
slug: "ruby",
|
|
@@ -1619,6 +1793,35 @@ var scss = {
|
|
|
1619
1793
|
}
|
|
1620
1794
|
};
|
|
1621
1795
|
|
|
1796
|
+
// src/languages/solidity.ts
|
|
1797
|
+
var solidity = {
|
|
1798
|
+
slug: "solidity",
|
|
1799
|
+
publishedDate: "2015-07-30",
|
|
1800
|
+
extensions: [".sol"],
|
|
1801
|
+
author: "Gavin Wood / Ethereum Foundation / Solidity Team",
|
|
1802
|
+
website: "https://soliditylang.org",
|
|
1803
|
+
paradigms: ["contract-oriented", "object-oriented", "statically-typed", "imperative"],
|
|
1804
|
+
tooling: {
|
|
1805
|
+
runtimes: ["Ethereum Virtual Machine", "EVM-compatible chains"],
|
|
1806
|
+
packageManagers: ["npm", "Foundry", "Hardhat"],
|
|
1807
|
+
ecosystems: ["Ethereum", "Web3", "Smart Contracts", "Blockchain"]
|
|
1808
|
+
},
|
|
1809
|
+
version: "0.8.35",
|
|
1810
|
+
logo: "https://cdn.simpleicons.org/solidity/363636",
|
|
1811
|
+
i18n: {
|
|
1812
|
+
en: {
|
|
1813
|
+
name: "Solidity",
|
|
1814
|
+
description: "A statically typed smart contract language for Ethereum and EVM-compatible blockchains.",
|
|
1815
|
+
longDescription: "Solidity is a statically typed, contract-oriented programming language designed for writing smart contracts that run on the Ethereum Virtual Machine and compatible blockchain networks. It supports contracts, libraries, interfaces, inheritance, modifiers, events, custom errors, ABI encoding, and explicit visibility and mutability rules.\n\nIt is used to build decentralized applications, token contracts, DAOs, DeFi protocols, NFT contracts, governance systems, and other on-chain programs where deterministic execution and verifiable state transitions are required."
|
|
1816
|
+
},
|
|
1817
|
+
es: {
|
|
1818
|
+
name: "Solidity",
|
|
1819
|
+
description: "Un lenguaje tipado estaticamente para smart contracts en Ethereum y blockchains compatibles con EVM.",
|
|
1820
|
+
longDescription: "Solidity es un lenguaje de programacion tipado estaticamente y orientado a contratos, disenado para escribir smart contracts que se ejecutan en Ethereum Virtual Machine y redes blockchain compatibles. Soporta contratos, bibliotecas, interfaces, herencia, modificadores, eventos, errores personalizados, codificacion ABI y reglas explicitas de visibilidad y mutabilidad.\n\nSe usa para construir aplicaciones descentralizadas, contratos de tokens, DAOs, protocolos DeFi, contratos NFT, sistemas de gobernanza y otros programas on-chain donde se requiere ejecucion determinista y transiciones de estado verificables."
|
|
1821
|
+
}
|
|
1822
|
+
}
|
|
1823
|
+
};
|
|
1824
|
+
|
|
1622
1825
|
// src/languages/sql.ts
|
|
1623
1826
|
var sql = {
|
|
1624
1827
|
slug: "sql",
|
|
@@ -2051,6 +2254,7 @@ var languages = [
|
|
|
2051
2254
|
cuda,
|
|
2052
2255
|
dart,
|
|
2053
2256
|
dockerfile,
|
|
2257
|
+
elixir,
|
|
2054
2258
|
elm,
|
|
2055
2259
|
erlang,
|
|
2056
2260
|
fortran,
|
|
@@ -2061,11 +2265,14 @@ var languages = [
|
|
|
2061
2265
|
glsl,
|
|
2062
2266
|
graphql,
|
|
2063
2267
|
groovy,
|
|
2268
|
+
haskell,
|
|
2269
|
+
hcl,
|
|
2064
2270
|
html,
|
|
2065
2271
|
ini,
|
|
2066
2272
|
java,
|
|
2067
2273
|
javascript,
|
|
2068
2274
|
json,
|
|
2275
|
+
jupyterNotebook,
|
|
2069
2276
|
julia,
|
|
2070
2277
|
kotlin,
|
|
2071
2278
|
less,
|
|
@@ -2079,6 +2286,7 @@ var languages = [
|
|
|
2079
2286
|
svn,
|
|
2080
2287
|
nginx,
|
|
2081
2288
|
nix,
|
|
2289
|
+
ocaml,
|
|
2082
2290
|
objectiveC,
|
|
2083
2291
|
pascal,
|
|
2084
2292
|
perl,
|
|
@@ -2087,10 +2295,12 @@ var languages = [
|
|
|
2087
2295
|
pug,
|
|
2088
2296
|
python,
|
|
2089
2297
|
r,
|
|
2298
|
+
razor,
|
|
2090
2299
|
ruby,
|
|
2091
2300
|
rust,
|
|
2092
2301
|
scala,
|
|
2093
2302
|
scss,
|
|
2303
|
+
solidity,
|
|
2094
2304
|
sql,
|
|
2095
2305
|
svg,
|
|
2096
2306
|
svelte,
|