PageRenderTime 48ms CodeModel.GetById 16ms RepoModel.GetById 0ms app.codeStats 0ms

/share/spice/deb_version/deb_version.js

http://github.com/duckduckgo/zeroclickinfo-spice
JavaScript | 46 lines | 41 code | 5 blank | 0 comment | 5 complexity | 2550ac09d8118cc3dc08d156f1602e93 MD5 | raw file
Possible License(s): Apache-2.0
  1. (function (env) {
  2. "use strict";
  3. env.ddg_spice_deb_version = function(api_result){
  4. if (!api_result || api_result.error) {
  5. return Spice.failed('deb_version');
  6. }
  7. Spice.add({
  8. id: "deb_version",
  9. name: "Software",
  10. data: api_result,
  11. meta: {
  12. sourceName: "packages.debian.org",
  13. sourceUrl: 'https://packages.debian.org/search?searchon=names&keywords=' + api_result.package
  14. },
  15. normalize: function(result) {
  16. var data = {
  17. title: result.package,
  18. subtitle: "Debian Package Versions",
  19. record_data: {},
  20. };
  21. for (var i = result.versions.length - 1; i >= 0; i--) {
  22. var version = result.versions[i];
  23. for (var j = version.suites.length - 1; j >= 0; j--) {
  24. data.record_data[version.suites[j]] = version.version;
  25. };
  26. };
  27. if (Object.keys(data.record_data).length === 0) {
  28. return Spice.failed('deb_version');
  29. }
  30. return data;
  31. },
  32. templates: {
  33. group: 'text',
  34. options: {
  35. content: 'record',
  36. moreAt: true,
  37. }
  38. }
  39. });
  40. };
  41. }(this));