active_hashcash 0.2.0 → 0.3.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (46) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +13 -0
  3. data/README.md +101 -14
  4. data/app/assets/config/active_hashcash_manifest.js +1 -0
  5. data/app/assets/javascripts/hashcash.js +257 -0
  6. data/app/assets/stylesheets/active_hashcash/application.css +15 -0
  7. data/app/controllers/active_hashcash/addresses_controller.rb +7 -0
  8. data/app/controllers/active_hashcash/application_controller.rb +4 -0
  9. data/app/controllers/active_hashcash/assets_controller.rb +34 -0
  10. data/app/controllers/active_hashcash/stamps_controller.rb +11 -0
  11. data/app/helpers/active_hashcash/addresses_helper.rb +4 -0
  12. data/app/helpers/active_hashcash/application_helper.rb +4 -0
  13. data/app/helpers/active_hashcash/stamps_helper.rb +4 -0
  14. data/app/jobs/active_hashcash/application_job.rb +4 -0
  15. data/app/mailers/active_hashcash/application_mailer.rb +6 -0
  16. data/app/models/active_hashcash/application_record.rb +5 -0
  17. data/app/models/active_hashcash/stamp.rb +70 -0
  18. data/app/views/active_hashcash/addresses/index.html.erb +17 -0
  19. data/app/views/active_hashcash/assets/_logo.svg.erb +1 -0
  20. data/app/views/active_hashcash/assets/_style.css +148 -0
  21. data/app/views/active_hashcash/assets/application.css.erb +1 -0
  22. data/app/views/active_hashcash/assets/ariato.css.erb +2 -0
  23. data/app/views/active_hashcash/assets/favicon.ico +0 -0
  24. data/app/views/active_hashcash/assets/favicon.svg.erb +1 -0
  25. data/app/views/active_hashcash/assets/vendor/_ariato_base.css +1297 -0
  26. data/app/views/active_hashcash/assets/vendor/_ariato_extra.css +1206 -0
  27. data/app/views/active_hashcash/stamps/_filters.html.erb +39 -0
  28. data/app/views/active_hashcash/stamps/index.html.erb +25 -0
  29. data/app/views/active_hashcash/stamps/show.html.erb +21 -0
  30. data/app/views/layouts/active_hashcash/application.html.erb +36 -0
  31. data/config/locales/de.yml +4 -0
  32. data/config/locales/en.yml +4 -0
  33. data/config/locales/es.yml +4 -0
  34. data/config/locales/fr.yml +4 -0
  35. data/config/locales/it.yml +4 -0
  36. data/config/locales/jp.yml +4 -0
  37. data/config/locales/pt.yml +4 -0
  38. data/config/routes.rb +6 -0
  39. data/db/migrate/20240215143453_create_active_hashcash_stamps.rb +25 -0
  40. data/lib/active_hashcash/engine.rb +2 -14
  41. data/lib/active_hashcash/version.rb +1 -1
  42. data/lib/active_hashcash.rb +35 -21
  43. data/lib/tasks/active_hashcash_tasks.rake +4 -0
  44. metadata +47 -26
  45. data/lib/active_hashcash/stamp.rb +0 -52
  46. data/lib/active_hashcash/store.rb +0 -25
@@ -0,0 +1,148 @@
1
+ body {
2
+ padding: 0;
3
+ margin: 0;
4
+ width: 100%;
5
+ }
6
+
7
+ body > header nav {
8
+ width: 100%;
9
+ max-width: 1280px;
10
+ margin: 0 auto;
11
+ padding: 24px;
12
+ display: flex;
13
+ flex-wrap: wrap;
14
+ align-items: center;
15
+ min-height: 88px;
16
+ }
17
+
18
+ header nav .menubutton {
19
+ margin-left: auto;
20
+ }
21
+
22
+ header .logo {
23
+ margin-right: 8px;
24
+ }
25
+
26
+ header .logo svg {
27
+ width: 24px;
28
+ height: 24px;
29
+ fill: none;
30
+ stroke: rgba(var(--color-blue-500), 1);
31
+ stroke-width: 1;
32
+ vertical-align: middle;
33
+ }
34
+
35
+ header .is-link {
36
+ text-transform: none;
37
+ text-decoration: none;
38
+ font-size: 1rem;
39
+ letter-spacing: 0;
40
+ font-weight: 400;
41
+ padding: 0 16px;
42
+ margin: 0;
43
+ min-height: 24px;
44
+ color: rgba(var(--color-grey-700), 1);
45
+ }
46
+
47
+ header .is-link:hover {
48
+ background: rgba(var(--color-grey-50), 1);
49
+ }
50
+
51
+ main {
52
+ width: 100%;
53
+ max-width: 1280px;
54
+ margin: 0 auto;
55
+ padding: 0 24px;
56
+ }
57
+
58
+ main h2 {
59
+ word-break: break-word;
60
+ display: flex;
61
+ gap: var(--space);
62
+ }
63
+
64
+ section {
65
+ margin-bottom: var(--space-4x);
66
+ }
67
+
68
+ .tooltip-date {
69
+ color: rgba(var(--color-grey-100), 1);
70
+ }
71
+
72
+ .card h3 {
73
+ display: flex;
74
+ }
75
+
76
+ .card h3 small {
77
+ color: rgba(var(--color-red-500), 1);
78
+ }
79
+
80
+ .card h3 small.is-success {
81
+ color: rgba(var(--color-green-500), 1);
82
+ }
83
+
84
+ .card h3 a {
85
+ margin-left: auto;
86
+ font-weight: 400;
87
+ font-size: 1rem;
88
+ }
89
+
90
+ .card table {
91
+ margin: 0 -24px -24px;
92
+ width: calc(100% + 48px);
93
+ }
94
+
95
+ td a {
96
+ word-break: break-word;
97
+ }
98
+
99
+ td.number {
100
+ text-align: right;
101
+ font-variant-numeric: tabular-nums;
102
+ }
103
+
104
+ div.is-empty {
105
+ display: flex;
106
+ align-items: center;
107
+ justify-content: center;
108
+ height: calc(100% - 72px);
109
+ width: 100%;
110
+ color: rgba(var(--color-grey-300), 1);
111
+ }
112
+
113
+ body > footer {
114
+ max-width: 1280px;
115
+ margin: 48px auto 0;
116
+ padding: 24px;
117
+ }
118
+
119
+ body > footer ul {
120
+ margin: 0;
121
+ list-style-type: none;
122
+ padding: 0;
123
+ }
124
+
125
+ body > footer .card {
126
+ margin: 0;
127
+ background: rgba(var(--color-grey-50), 1);
128
+ }
129
+
130
+ body > footer .card p {
131
+ padding: 0 0 2px;
132
+ color: rgba(var(--color-grey-400), 1);
133
+ }
134
+
135
+ @media (max-width: 480px) {
136
+ header nav .menubutton {
137
+ margin-top: 24px;
138
+ }
139
+
140
+ [role="dialog"] {
141
+ min-width: 280px;
142
+ }
143
+ }
144
+
145
+ details form {
146
+ padding: var(--space-3x) ;
147
+ padding-top: 0;
148
+ }
@@ -0,0 +1 @@
1
+ <%= render "style" %>
@@ -0,0 +1,2 @@
1
+ <%= render partial: "/active_hashcash/assets/vendor/ariato_base", formats: [:css] %>
2
+ <%= render partial: "/active_hashcash/assets/vendor/ariato_extra", formats: [:css] %>
@@ -0,0 +1 @@
1
+ <%= render "/active_hashcash/assets/logo" %>