glance-widgets-sdk 1.0.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 (39) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +17 -0
  3. data/README.md +47 -0
  4. data/lib/glance_widgets/box.rb +117 -0
  5. data/lib/glance_widgets/color.rb +48 -0
  6. data/lib/glance_widgets/components/bar_chart.rb +65 -0
  7. data/lib/glance_widgets/components/battery.rb +77 -0
  8. data/lib/glance_widgets/components/charts.rb +5 -0
  9. data/lib/glance_widgets/components/heatmap.rb +184 -0
  10. data/lib/glance_widgets/components/line_chart.rb +213 -0
  11. data/lib/glance_widgets/components/modern.rb +59 -0
  12. data/lib/glance_widgets/components/pixel_bar_chart.rb +106 -0
  13. data/lib/glance_widgets/components/pixel_progress.rb +151 -0
  14. data/lib/glance_widgets/components/pixel_text.rb +66 -0
  15. data/lib/glance_widgets/components/progress.rb +62 -0
  16. data/lib/glance_widgets/components/ring_progress.rb +89 -0
  17. data/lib/glance_widgets/components/shared.rb +131 -0
  18. data/lib/glance_widgets/components/signal.rb +41 -0
  19. data/lib/glance_widgets/components/stat.rb +171 -0
  20. data/lib/glance_widgets/components/status.rb +102 -0
  21. data/lib/glance_widgets/data/fonts/font-3x5.json +120 -0
  22. data/lib/glance_widgets/data/fonts/font-5x7.json +118 -0
  23. data/lib/glance_widgets/data/icons.json +5293 -0
  24. data/lib/glance_widgets/data/schemas.json +418 -0
  25. data/lib/glance_widgets/data/text-advances.json +120 -0
  26. data/lib/glance_widgets/font.rb +165 -0
  27. data/lib/glance_widgets/geometry.rb +108 -0
  28. data/lib/glance_widgets/layers.rb +152 -0
  29. data/lib/glance_widgets/matrix.rb +277 -0
  30. data/lib/glance_widgets/options.rb +31 -0
  31. data/lib/glance_widgets/output.rb +91 -0
  32. data/lib/glance_widgets/pixelate.rb +46 -0
  33. data/lib/glance_widgets/protocol.rb +217 -0
  34. data/lib/glance_widgets/raster.rb +130 -0
  35. data/lib/glance_widgets/signature.rb +30 -0
  36. data/lib/glance_widgets/support.rb +134 -0
  37. data/lib/glance_widgets/themes.rb +34 -0
  38. data/lib/glance_widgets.rb +38 -0
  39. metadata +79 -0
@@ -0,0 +1,120 @@
1
+ {
2
+ "name": "3x5",
3
+ "height": 5,
4
+ "descent": 0,
5
+ "spacing": 1,
6
+ "fallback": "?",
7
+ "aliases": {
8
+ "a": "A",
9
+ "b": "B",
10
+ "c": "C",
11
+ "d": "D",
12
+ "e": "E",
13
+ "f": "F",
14
+ "g": "G",
15
+ "h": "H",
16
+ "i": "I",
17
+ "j": "J",
18
+ "k": "K",
19
+ "l": "L",
20
+ "m": "M",
21
+ "n": "N",
22
+ "o": "O",
23
+ "p": "P",
24
+ "q": "Q",
25
+ "r": "R",
26
+ "s": "S",
27
+ "t": "T",
28
+ "u": "U",
29
+ "v": "V",
30
+ "w": "W",
31
+ "x": "X",
32
+ "y": "Y",
33
+ "z": "Z"
34
+ },
35
+ "glyphs": {
36
+ "A": [".#.", "#.#", "###", "#.#", "#.#"],
37
+ "B": ["##.", "#.#", "##.", "#.#", "##."],
38
+ "C": [".##", "#..", "#..", "#..", ".##"],
39
+ "D": ["##.", "#.#", "#.#", "#.#", "##."],
40
+ "E": ["###", "#..", "##.", "#..", "###"],
41
+ "F": ["###", "#..", "##.", "#..", "#.."],
42
+ "G": [".##", "#..", "#.#", "#.#", ".##"],
43
+ "H": ["#.#", "#.#", "###", "#.#", "#.#"],
44
+ "I": ["###", ".#.", ".#.", ".#.", "###"],
45
+ "J": ["..#", "..#", "..#", "#.#", ".#."],
46
+ "K": ["#.#", "#.#", "##.", "#.#", "#.#"],
47
+ "L": ["#..", "#..", "#..", "#..", "###"],
48
+ "M": ["#.#", "###", "###", "#.#", "#.#"],
49
+ "N": ["##.", "#.#", "#.#", "#.#", "#.#"],
50
+ "O": [".#.", "#.#", "#.#", "#.#", ".#."],
51
+ "P": ["##.", "#.#", "##.", "#..", "#.."],
52
+ "Q": [".#.", "#.#", "#.#", "##.", ".##"],
53
+ "R": ["##.", "#.#", "##.", "#.#", "#.#"],
54
+ "S": [".##", "#..", ".#.", "..#", "##."],
55
+ "T": ["###", ".#.", ".#.", ".#.", ".#."],
56
+ "U": ["#.#", "#.#", "#.#", "#.#", "###"],
57
+ "V": ["#.#", "#.#", "#.#", "#.#", ".#."],
58
+ "W": ["#.#", "#.#", "###", "###", "#.#"],
59
+ "X": ["#.#", "#.#", ".#.", "#.#", "#.#"],
60
+ "Y": ["#.#", "#.#", ".#.", ".#.", ".#."],
61
+ "Z": ["###", "..#", ".#.", "#..", "###"],
62
+ "0": ["###", "#.#", "#.#", "#.#", "###"],
63
+ "1": [".#.", "##.", ".#.", ".#.", "###"],
64
+ "2": ["##.", "..#", ".#.", "#..", "###"],
65
+ "3": ["##.", "..#", ".#.", "..#", "##."],
66
+ "4": ["#.#", "#.#", "###", "..#", "..#"],
67
+ "5": ["###", "#..", "##.", "..#", "##."],
68
+ "6": [".##", "#..", "###", "#.#", "###"],
69
+ "7": ["###", "..#", ".#.", ".#.", ".#."],
70
+ "8": ["###", "#.#", "###", "#.#", "###"],
71
+ "9": ["###", "#.#", "###", "..#", "##."],
72
+ "!": ["#", "#", "#", ".", "#"],
73
+ "\"": ["#.#", "#.#", "...", "...", "..."],
74
+ "#": ["#.#", "###", "#.#", "###", "#.#"],
75
+ "$": [".#.", "###", "##.", ".##", "###"],
76
+ "%": ["#.#", "..#", ".#.", "#..", "#.#"],
77
+ "&": [".#.", "#.#", ".#.", "#.#", ".##"],
78
+ "'": ["#", "#", ".", ".", "."],
79
+ "(": [".#", "#.", "#.", "#.", ".#"],
80
+ ")": ["#.", ".#", ".#", ".#", "#."],
81
+ "*": ["...", "#.#", ".#.", "#.#", "..."],
82
+ "+": ["...", ".#.", "###", ".#.", "..."],
83
+ ",": ["..", "..", "..", ".#", "#."],
84
+ "-": ["...", "...", "###", "...", "..."],
85
+ ".": [".", ".", ".", ".", "#"],
86
+ "/": ["..#", "..#", ".#.", "#..", "#.."],
87
+ ":": [".", "#", ".", "#", "."],
88
+ ";": ["..", ".#", "..", ".#", "#."],
89
+ "<": ["..#", ".#.", "#..", ".#.", "..#"],
90
+ "=": ["...", "###", "...", "###", "..."],
91
+ ">": ["#..", ".#.", "..#", ".#.", "#.."],
92
+ "?": ["##.", "..#", ".#.", "...", ".#."],
93
+ "@": [".##", "#.#", "###", "#..", ".##"],
94
+ "[": ["##", "#.", "#.", "#.", "##"],
95
+ "\\": ["#..", "#..", ".#.", "..#", "..#"],
96
+ "]": ["##", ".#", ".#", ".#", "##"],
97
+ "^": [".#.", "#.#", "...", "...", "..."],
98
+ "_": ["...", "...", "...", "...", "###"],
99
+ "`": ["#.", ".#", "..", "..", ".."],
100
+ "{": [".##", ".#.", "##.", ".#.", ".##"],
101
+ "|": ["#", "#", "#", "#", "#"],
102
+ "}": ["##.", ".#.", ".##", ".#.", "##."],
103
+ "~": ["...", ".##", "##.", "...", "..."],
104
+ "°": [".#.", "#.#", ".#.", "...", "..."],
105
+ "±": [".#.", "###", ".#.", "...", "###"],
106
+ "×": ["...", "#.#", ".#.", "#.#", "..."],
107
+ "÷": [".#.", "...", "###", "...", ".#."],
108
+ "£": [".##", "#..", "##.", "#..", "###"],
109
+ "¥": ["#.#", "#.#", "###", ".#.", "###"],
110
+ "€": [".##", "#..", "###", "#..", ".##"],
111
+ "¢": [".#.", ".##", "#..", ".##", ".#."],
112
+ "•": ["..", "..", "##", "##", ".."],
113
+ "·": [".", ".", "#", ".", "."],
114
+ "←": [".#.", "#..", "###", "#..", ".#."],
115
+ "→": [".#.", "..#", "###", "..#", ".#."],
116
+ "↑": [".#.", "###", ".#.", ".#.", ".#."],
117
+ "↓": [".#.", ".#.", ".#.", "###", ".#."],
118
+ " ": {"rows": [], "advance": 2}
119
+ }
120
+ }
@@ -0,0 +1,118 @@
1
+ {
2
+ "name": "5x7",
3
+ "height": 7,
4
+ "descent": 1,
5
+ "spacing": 1,
6
+ "fallback": "?",
7
+ "glyphs": {
8
+ "A": [".###.", "#...#", "#...#", "#####", "#...#", "#...#", "#...#"],
9
+ "B": ["####.", "#...#", "#...#", "####.", "#...#", "#...#", "####."],
10
+ "C": [".###.", "#...#", "#....", "#....", "#....", "#...#", ".###."],
11
+ "D": ["####.", "#...#", "#...#", "#...#", "#...#", "#...#", "####."],
12
+ "E": ["#####", "#....", "#....", "####.", "#....", "#....", "#####"],
13
+ "F": ["#####", "#....", "#....", "####.", "#....", "#....", "#...."],
14
+ "G": [".###.", "#...#", "#....", "#.###", "#...#", "#...#", ".####"],
15
+ "H": ["#...#", "#...#", "#...#", "#####", "#...#", "#...#", "#...#"],
16
+ "I": ["###", ".#.", ".#.", ".#.", ".#.", ".#.", "###"],
17
+ "J": ["..###", "...#.", "...#.", "...#.", "...#.", "#..#.", ".##.."],
18
+ "K": ["#...#", "#..#.", "#.#..", "##...", "#.#..", "#..#.", "#...#"],
19
+ "L": ["#....", "#....", "#....", "#....", "#....", "#....", "#####"],
20
+ "M": ["#...#", "##.##", "#.#.#", "#.#.#", "#...#", "#...#", "#...#"],
21
+ "N": ["#...#", "##..#", "#.#.#", "#..##", "#...#", "#...#", "#...#"],
22
+ "O": [".###.", "#...#", "#...#", "#...#", "#...#", "#...#", ".###."],
23
+ "P": ["####.", "#...#", "#...#", "####.", "#....", "#....", "#...."],
24
+ "Q": [".###.", "#...#", "#...#", "#...#", "#.#.#", "#..#.", ".##.#"],
25
+ "R": ["####.", "#...#", "#...#", "####.", "#.#..", "#..#.", "#...#"],
26
+ "S": [".####", "#....", "#....", ".###.", "....#", "....#", "####."],
27
+ "T": ["#####", "..#..", "..#..", "..#..", "..#..", "..#..", "..#.."],
28
+ "U": ["#...#", "#...#", "#...#", "#...#", "#...#", "#...#", ".###."],
29
+ "V": ["#...#", "#...#", "#...#", "#...#", "#...#", ".#.#.", "..#.."],
30
+ "W": ["#...#", "#...#", "#...#", "#.#.#", "#.#.#", "##.##", "#...#"],
31
+ "X": ["#...#", "#...#", ".#.#.", "..#..", ".#.#.", "#...#", "#...#"],
32
+ "Y": ["#...#", "#...#", ".#.#.", "..#..", "..#..", "..#..", "..#.."],
33
+ "Z": ["#####", "....#", "...#.", "..#..", ".#...", "#....", "#####"],
34
+ "0": [".###.", "#...#", "#..##", "#.#.#", "##..#", "#...#", ".###."],
35
+ "1": [".#.", "##.", ".#.", ".#.", ".#.", ".#.", "###"],
36
+ "2": [".###.", "#...#", "....#", "...#.", "..#..", ".#...", "#####"],
37
+ "3": [".###.", "#...#", "....#", "..##.", "....#", "#...#", ".###."],
38
+ "4": ["...#.", "..##.", ".#.#.", "#..#.", "#####", "...#.", "...#."],
39
+ "5": ["#####", "#....", "####.", "....#", "....#", "#...#", ".###."],
40
+ "6": ["..##.", ".#...", "#....", "####.", "#...#", "#...#", ".###."],
41
+ "7": ["#####", "....#", "...#.", "..#..", ".#...", ".#...", ".#..."],
42
+ "8": [".###.", "#...#", "#...#", ".###.", "#...#", "#...#", ".###."],
43
+ "9": [".###.", "#...#", "#...#", ".####", "....#", "...#.", ".##.."],
44
+ "a": [".....", ".....", ".###.", "....#", ".####", "#...#", ".####"],
45
+ "b": ["#....", "#....", "####.", "#...#", "#...#", "#...#", "####."],
46
+ "c": [".....", ".....", ".###.", "#....", "#....", "#...#", ".###."],
47
+ "d": ["....#", "....#", ".####", "#...#", "#...#", "#...#", ".####"],
48
+ "e": [".....", ".....", ".###.", "#...#", "#####", "#....", ".###."],
49
+ "f": ["..##.", ".#..#", ".#...", "###..", ".#...", ".#...", ".#..."],
50
+ "g": [".....", ".....", ".####", "#...#", "#...#", ".####", "....#", ".###."],
51
+ "h": ["#....", "#....", "#.##.", "##..#", "#...#", "#...#", "#...#"],
52
+ "i": [".#.", "...", "##.", ".#.", ".#.", ".#.", "###"],
53
+ "j": ["...#.", ".....", "..##.", "...#.", "...#.", "...#.", "#..#.", ".##.."],
54
+ "k": ["#....", "#....", "#..#.", "#.#..", "##...", "#.#..", "#..#."],
55
+ "l": ["##.", ".#.", ".#.", ".#.", ".#.", ".#.", "###"],
56
+ "m": [".....", ".....", "##.#.", "#.#.#", "#.#.#", "#...#", "#...#"],
57
+ "n": [".....", ".....", "#.##.", "##..#", "#...#", "#...#", "#...#"],
58
+ "o": [".....", ".....", ".###.", "#...#", "#...#", "#...#", ".###."],
59
+ "p": [".....", ".....", "####.", "#...#", "#...#", "####.", "#....", "#...."],
60
+ "q": [".....", ".....", ".####", "#...#", "#...#", ".####", "....#", "....#"],
61
+ "r": [".....", ".....", "#.##.", "##..#", "#....", "#....", "#...."],
62
+ "s": [".....", ".....", ".####", "#....", ".###.", "....#", "####."],
63
+ "t": [".#...", ".#...", "###..", ".#...", ".#...", ".#..#", "..##."],
64
+ "u": [".....", ".....", "#...#", "#...#", "#...#", "#..##", ".##.#"],
65
+ "v": [".....", ".....", "#...#", "#...#", "#...#", ".#.#.", "..#.."],
66
+ "w": [".....", ".....", "#...#", "#...#", "#.#.#", "#.#.#", ".#.#."],
67
+ "x": [".....", ".....", "#...#", ".#.#.", "..#..", ".#.#.", "#...#"],
68
+ "y": [".....", ".....", "#...#", "#...#", "#...#", ".####", "....#", ".###."],
69
+ "z": [".....", ".....", "#####", "...#.", "..#..", ".#...", "#####"],
70
+ "!": ["#", "#", "#", "#", "#", ".", "#"],
71
+ "\"": ["#.#", "#.#", "#.#", "...", "...", "...", "..."],
72
+ "#": [".#.#.", ".#.#.", "#####", ".#.#.", "#####", ".#.#.", ".#.#."],
73
+ "$": ["..#..", ".####", "#.#..", ".###.", "..#.#", "####.", "..#.."],
74
+ "%": ["##..#", "##..#", "...#.", "..#..", ".#...", "#..##", "#..##"],
75
+ "&": [".##..", "#..#.", "#.#..", ".#...", "#.#.#", "#..#.", ".##.#"],
76
+ "'": ["#", "#", "#", ".", ".", ".", "."],
77
+ "(": ["..#", ".#.", "#..", "#..", "#..", ".#.", "..#"],
78
+ ")": ["#..", ".#.", "..#", "..#", "..#", ".#.", "#.."],
79
+ "*": [".....", "..#..", "#.#.#", ".###.", "#.#.#", "..#..", "....."],
80
+ "+": [".....", "..#..", "..#..", "#####", "..#..", "..#..", "....."],
81
+ ",": ["..", "..", "..", "..", ".#", ".#", "#."],
82
+ "-": [".....", ".....", ".....", "#####", ".....", ".....", "....."],
83
+ ".": [".", ".", ".", ".", ".", ".", "#"],
84
+ "/": [".....", "....#", "...#.", "..#..", ".#...", "#....", "....."],
85
+ ":": [".", ".", "#", ".", ".", "#", "."],
86
+ ";": ["..", "..", ".#", "..", "..", ".#", "#."],
87
+ "<": ["...#", "..#.", ".#..", "#...", ".#..", "..#.", "...#"],
88
+ "=": [".....", ".....", "#####", ".....", "#####", ".....", "....."],
89
+ ">": ["#...", ".#..", "..#.", "...#", "..#.", ".#..", "#..."],
90
+ "?": [".###.", "#...#", "....#", "...#.", "..#..", ".....", "..#.."],
91
+ "@": [".###.", "#...#", "#.###", "#.#.#", "#.###", "#....", ".####"],
92
+ "[": ["###", "#..", "#..", "#..", "#..", "#..", "###"],
93
+ "\\": [".....", "#....", ".#...", "..#..", "...#.", "....#", "....."],
94
+ "]": ["###", "..#", "..#", "..#", "..#", "..#", "###"],
95
+ "^": ["..#..", ".#.#.", "#...#", ".....", ".....", ".....", "....."],
96
+ "_": [".....", ".....", ".....", ".....", ".....", ".....", "#####"],
97
+ "`": ["#..", ".#.", "...", "...", "...", "...", "..."],
98
+ "{": ["..##", ".#..", ".#..", "#...", ".#..", ".#..", "..##"],
99
+ "|": ["#", "#", "#", "#", "#", "#", "#"],
100
+ "}": ["##..", "..#.", "..#.", "...#", "..#.", "..#.", "##.."],
101
+ "~": [".....", ".....", ".#...", "#.#.#", "...#.", ".....", "....."],
102
+ "°": [".#.", "#.#", ".#.", "...", "...", "...", "..."],
103
+ "±": ["..#..", "..#..", "#####", "..#..", "..#..", ".....", "#####"],
104
+ "×": [".....", ".....", "#...#", ".#.#.", "..#..", ".#.#.", "#...#"],
105
+ "÷": [".....", "..#..", ".....", "#####", ".....", "..#..", "....."],
106
+ "£": ["..##.", ".#..#", ".#...", "####.", ".#...", ".#...", "#####"],
107
+ "¥": ["#...#", ".#.#.", "..#..", "#####", "..#..", "#####", "..#.."],
108
+ "€": ["..###", ".#...", "#....", "####.", "#....", ".#...", "..###"],
109
+ "¢": ["..#..", ".####", "#.#..", "#.#..", "#.#..", ".####", "..#.."],
110
+ "•": ["...", "...", "###", "###", "###", "...", "..."],
111
+ "·": [".", ".", ".", "#", ".", ".", "."],
112
+ "←": [".....", "..#..", ".#...", "#####", ".#...", "..#..", "....."],
113
+ "→": [".....", "..#..", "...#.", "#####", "...#.", "..#..", "....."],
114
+ "↑": ["..#..", ".###.", "#.#.#", "..#..", "..#..", "..#..", "..#.."],
115
+ "↓": ["..#..", "..#..", "..#..", "#.#.#", ".###.", "..#..", "..#.."],
116
+ " ": {"rows": [], "advance": 3}
117
+ }
118
+ }