code-languages 1.13.0 → 1.15.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.
Files changed (48) hide show
  1. package/README.md +21 -0
  2. package/dist/api.cjs +210 -0
  3. package/dist/api.cjs.map +1 -1
  4. package/dist/api.d.cts +135 -0
  5. package/dist/api.d.ts +135 -0
  6. package/dist/api.js +210 -0
  7. package/dist/api.js.map +1 -1
  8. package/dist/detect.cjs +150 -0
  9. package/dist/detect.cjs.map +1 -1
  10. package/dist/detect.js +150 -0
  11. package/dist/detect.js.map +1 -1
  12. package/dist/index.cjs +215 -0
  13. package/dist/index.cjs.map +1 -1
  14. package/dist/index.d.cts +135 -0
  15. package/dist/index.d.ts +135 -0
  16. package/dist/index.js +216 -1
  17. package/dist/index.js.map +1 -1
  18. package/dist/languages/elixir.cjs +34 -0
  19. package/dist/languages/elixir.cjs.map +1 -0
  20. package/dist/languages/elixir.d.cts +29 -0
  21. package/dist/languages/elixir.d.ts +29 -0
  22. package/dist/languages/elixir.js +32 -0
  23. package/dist/languages/elixir.js.map +1 -0
  24. package/dist/languages/haskell.cjs +34 -0
  25. package/dist/languages/haskell.cjs.map +1 -0
  26. package/dist/languages/haskell.d.cts +29 -0
  27. package/dist/languages/haskell.d.ts +29 -0
  28. package/dist/languages/haskell.js +32 -0
  29. package/dist/languages/haskell.js.map +1 -0
  30. package/dist/languages/jupyter-notebook.cjs +34 -0
  31. package/dist/languages/jupyter-notebook.cjs.map +1 -0
  32. package/dist/languages/jupyter-notebook.d.cts +29 -0
  33. package/dist/languages/jupyter-notebook.d.ts +29 -0
  34. package/dist/languages/jupyter-notebook.js +32 -0
  35. package/dist/languages/jupyter-notebook.js.map +1 -0
  36. package/dist/languages/ocaml.cjs +34 -0
  37. package/dist/languages/ocaml.cjs.map +1 -0
  38. package/dist/languages/ocaml.d.cts +29 -0
  39. package/dist/languages/ocaml.d.ts +29 -0
  40. package/dist/languages/ocaml.js +32 -0
  41. package/dist/languages/ocaml.js.map +1 -0
  42. package/dist/languages/protobuf.cjs +34 -0
  43. package/dist/languages/protobuf.cjs.map +1 -0
  44. package/dist/languages/protobuf.d.cts +29 -0
  45. package/dist/languages/protobuf.d.ts +29 -0
  46. package/dist/languages/protobuf.js +32 -0
  47. package/dist/languages/protobuf.js.map +1 -0
  48. package/package.json +26 -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,35 @@ 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
+
801
859
  // src/languages/hcl.ts
802
860
  var hcl = {
803
861
  slug: "hcl",
@@ -989,6 +1047,35 @@ var julia = {
989
1047
  }
990
1048
  };
991
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
+
992
1079
  // src/languages/kotlin.ts
993
1080
  var kotlin = {
994
1081
  slug: "kotlin",
@@ -1329,6 +1416,35 @@ var objectiveC = {
1329
1416
  }
1330
1417
  };
1331
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
+
1332
1448
  // src/languages/pascal.ts
1333
1449
  var pascal = {
1334
1450
  slug: "pascal",
@@ -1445,6 +1561,35 @@ var powershell = {
1445
1561
  }
1446
1562
  };
1447
1563
 
1564
+ // src/languages/protobuf.ts
1565
+ var protobuf = {
1566
+ slug: "protobuf",
1567
+ publishedDate: "2008-07-07",
1568
+ extensions: [".proto"],
1569
+ author: "Google",
1570
+ website: "https://protobuf.dev",
1571
+ paradigms: ["interface-definition", "schema", "declarative", "data-serialization"],
1572
+ tooling: {
1573
+ runtimes: ["Protocol Buffers Runtime", "gRPC"],
1574
+ packageManagers: ["Buf", "npm", "Maven", "Go modules", "NuGet", "PyPI"],
1575
+ ecosystems: ["gRPC", "APIs", "Microservices", "Data Serialization"]
1576
+ },
1577
+ version: "34.1",
1578
+ logo: "https://cdn.simpleicons.org/google/4285F4",
1579
+ i18n: {
1580
+ en: {
1581
+ name: "Protocol Buffers",
1582
+ description: "Google's language-neutral schema format for structured data serialization and service APIs.",
1583
+ longDescription: "Protocol Buffers is a language-neutral, platform-neutral mechanism for defining structured data schemas and generating strongly typed code in many programming languages. `.proto` files describe messages, fields, enums, services, packages, imports, options, and RPC contracts.\n\nIt is widely used with gRPC, microservices, distributed systems, APIs, telemetry, configuration, event streams, and storage formats that need compact binary serialization and stable cross-language contracts."
1584
+ },
1585
+ es: {
1586
+ name: "Protocol Buffers",
1587
+ description: "El formato de schemas neutral de Google para serializacion de datos estructurados y APIs de servicios.",
1588
+ longDescription: "Protocol Buffers es un mecanismo neutral en lenguaje y plataforma para definir schemas de datos estructurados y generar codigo tipado en muchos lenguajes de programacion. Los archivos `.proto` describen mensajes, campos, enums, servicios, paquetes, imports, opciones y contratos RPC.\n\nSe usa ampliamente con gRPC, microservicios, sistemas distribuidos, APIs, telemetria, configuracion, flujos de eventos y formatos de almacenamiento que necesitan serializacion binaria compacta y contratos estables entre lenguajes."
1589
+ }
1590
+ }
1591
+ };
1592
+
1448
1593
  // src/languages/pug.ts
1449
1594
  var pug = {
1450
1595
  slug: "pug",
@@ -2138,6 +2283,7 @@ var languages = [
2138
2283
  cuda,
2139
2284
  dart,
2140
2285
  dockerfile,
2286
+ elixir,
2141
2287
  elm,
2142
2288
  erlang,
2143
2289
  fortran,
@@ -2148,12 +2294,14 @@ var languages = [
2148
2294
  glsl,
2149
2295
  graphql,
2150
2296
  groovy,
2297
+ haskell,
2151
2298
  hcl,
2152
2299
  html,
2153
2300
  ini,
2154
2301
  java,
2155
2302
  javascript,
2156
2303
  json,
2304
+ jupyterNotebook,
2157
2305
  julia,
2158
2306
  kotlin,
2159
2307
  less,
@@ -2167,11 +2315,13 @@ var languages = [
2167
2315
  svn,
2168
2316
  nginx,
2169
2317
  nix,
2318
+ ocaml,
2170
2319
  objectiveC,
2171
2320
  pascal,
2172
2321
  perl,
2173
2322
  php,
2174
2323
  powershell,
2324
+ protobuf,
2175
2325
  pug,
2176
2326
  python,
2177
2327
  r,