testimonials 0.7.6 → 0.7.7
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +8 -0
- data/README.md +3 -2
- data/lib/testimonials/demo_video.rb +82 -0
- data/lib/testimonials/seeds.rb +8 -10
- data/lib/testimonials/version.rb +1 -1
- metadata +2 -3
- data/lib/testimonials/demo/README.md +0 -7
- data/lib/testimonials/demo/flower.mp4 +0 -0
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 5c9b9d504e0560e2e38bec8dfe4ec41c3db57b1abb6c4df66f8781502494bb44
|
|
4
|
+
data.tar.gz: de8db179e088abaa205551cadd2610a539a3444e42bebc7e2265499db45a23e3
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: cae8ec4cf6bcc3681b281ceea1fe29fd132f631a2473bceecc7ae4f0f1141bfb931612730cc509f10299bcecef0fd91f9eafe719f805b42e9a084304986a28d2
|
|
7
|
+
data.tar.gz: 3503ec49afd1137817eb4fd1d2b6b184cfee69de4e936a2e05807606230b4c615180dd8b903de21d146c6a229dd2d8d71a8aef1c1792266ad75baeaf877be545
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.7.7
|
|
4
|
+
|
|
5
|
+
- Shrank the gem from 1.0 MB back to ~90 KB by dropping the bundled 1.1 MB demo
|
|
6
|
+
video. `testimonials:seed_demo` now writes a ~4 KB embedded clip (three
|
|
7
|
+
seconds of 320x180 H.264) to Active Storage at seed time, so the demo
|
|
8
|
+
testimonial still plays and no app downloads media it never uses. Seeding
|
|
9
|
+
needs no ffmpeg and no network.
|
|
10
|
+
|
|
3
11
|
## 0.7.6
|
|
4
12
|
|
|
5
13
|
- Added a standalone public NPS page at `/testimonials/nps/new`, the shareable
|
data/README.md
CHANGED
|
@@ -40,8 +40,9 @@ bin/rails testimonials:seed_demo
|
|
|
40
40
|
```
|
|
41
41
|
|
|
42
42
|
It creates idempotent text testimonials, one approved video testimonial with a
|
|
43
|
-
|
|
44
|
-
|
|
43
|
+
real playable MP4 (a ~4 KB clip written at seed time, so the gem ships no media),
|
|
44
|
+
three NPS responses, and prompt-history examples. Running the task again
|
|
45
|
+
refreshes those records instead of duplicating them.
|
|
45
46
|
|
|
46
47
|
> [!IMPORTANT]
|
|
47
48
|
> The dashboard defaults to **development only**. Set `authorize_admin` before
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Testimonials
|
|
4
|
+
# The demo video for `bin/rails testimonials:seed_demo`, written to Active
|
|
5
|
+
# Storage at seed time instead of shipped as a media file: three seconds of
|
|
6
|
+
# 320x180 H.264, embedded below as Base64 (~4 KB).
|
|
7
|
+
#
|
|
8
|
+
# It lives in a .rb rather than a .mp4 because the gemspec ships lib/**/*,
|
|
9
|
+
# so a bundled clip downloads with every install whether or not the app ever
|
|
10
|
+
# seeds. The 1.1 MB file this replaces was the whole difference between a
|
|
11
|
+
# 91 KB gem and a 1.0 MB one.
|
|
12
|
+
#
|
|
13
|
+
# Encoded once with ffmpeg (`gradients` filter, CRF 30). Seeding decodes it
|
|
14
|
+
# and needs no ffmpeg and no network.
|
|
15
|
+
module DemoVideo
|
|
16
|
+
FILENAME = 'testimonials-demo.mp4'
|
|
17
|
+
CONTENT_TYPE = 'video/mp4'
|
|
18
|
+
|
|
19
|
+
# unpack1('m') rather than Base64.decode64: base64 is a bundled gem from
|
|
20
|
+
# Ruby 3.4 on, and this needs no dependency.
|
|
21
|
+
DATA = <<~MP4
|
|
22
|
+
AAAAIGZ0eXBpc29tAAACAGlzb21pc28yYXZjMW1wNDEAAATsbW9vdgAAAGxtdmhkAAAAAAAAAAAAAAAAAAAD6AAAC7gAAQAA
|
|
23
|
+
AQAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
|
24
|
+
AAAAAgAABBZ0cmFrAAAAXHRraGQAAAADAAAAAAAAAAAAAAABAAAAAAAAC7gAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAA
|
|
25
|
+
AAAAAAABAAAAAAAAAAAAAAAAAABAAAAAAUAAAAC0AAAAAAAkZWR0cwAAABxlbHN0AAAAAAAAAAEAAAu4AAAIAAABAAAAAAOO
|
|
26
|
+
bWRpYQAAACBtZGhkAAAAAAAAAAAAAAAAAAAwAAAAkABVxAAAAAAALWhkbHIAAAAAAAAAAHZpZGUAAAAAAAAAAAAAAABWaWRl
|
|
27
|
+
b0hhbmRsZXIAAAADOW1pbmYAAAAUdm1oZAAAAAEAAAAAAAAAAAAAACRkaW5mAAAAHGRyZWYAAAAAAAAAAQAAAAx1cmwgAAAA
|
|
28
|
+
AQAAAvlzdGJsAAAAwXN0c2QAAAAAAAAAAQAAALFhdmMxAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAUAAtABIAAAASAAAAAAA
|
|
29
|
+
AAABFUxhdmM2Mi4yOC4xMDEgbGlieDI2NAAAAAAAAAAAAAAAGP//AAAAN2F2Y0MBZAAM/+EAGmdkAAys2UFBn58BEAAAAwAQ
|
|
30
|
+
AAADAYDxQplgAQAGaOvhEsiw/fj4AAAAABBwYXNwAAAAAQAAAAEAAAAUYnRydAAAAAAAABpKAAAAAAAAABhzdHRzAAAAAAAA
|
|
31
|
+
AAEAAAAkAAAEAAAAABRzdHNzAAAAAAAAAAEAAAABAAABMGN0dHMAAAAAAAAAJAAAAAEAAAgAAAAAAQAAFAAAAAABAAAIAAAA
|
|
32
|
+
AAEAAAAAAAAAAQAABAAAAAABAAAUAAAAAAEAAAgAAAAAAQAAAAAAAAABAAAEAAAAAAEAABQAAAAAAQAACAAAAAABAAAAAAAA
|
|
33
|
+
AAEAAAQAAAAAAQAAFAAAAAABAAAIAAAAAAEAAAAAAAAAAQAABAAAAAABAAAUAAAAAAEAAAgAAAAAAQAAAAAAAAABAAAEAAAA
|
|
34
|
+
AAEAABQAAAAAAQAACAAAAAABAAAAAAAAAAEAAAQAAAAAAQAADAAAAAABAAAEAAAAAAEAABQAAAAAAQAACAAAAAABAAAAAAAA
|
|
35
|
+
AAEAAAQAAAAAAQAAFAAAAAABAAAIAAAAAAEAAAAAAAAAAQAABAAAAAABAAAIAAAAABxzdHNjAAAAAAAAAAEAAAABAAAAJAAA
|
|
36
|
+
AAEAAACkc3RzegAAAAAAAAAAAAAAJAAAA7kAAAB5AAAAFAAAAA0AAAASAAAAlwAAAA8AAAANAAAADwAAAH4AAAAVAAAADwAA
|
|
37
|
+
AA0AAAB1AAAAEQAAAA0AAAAPAAAAdgAAABMAAAAZAAAAEwAAAH8AAAAVAAAADQAAAA8AAABkAAAADQAAAHoAAAAWAAAADQAA
|
|
38
|
+
ABgAAABsAAAAHAAAABMAAAARAAAALQAAABRzdGNvAAAAAAAAAAEAAAUcAAAAYnVkdGEAAABabWV0YQAAAAAAAAAhaGRscgAA
|
|
39
|
+
AAAAAAAAbWRpcmFwcGwAAAAAAAAAAAAAAAAtaWxzdAAAACWpdG9vAAAAHWRhdGEAAAABAAAAAExhdmY2Mi4xMi4xMDEAAAAI
|
|
40
|
+
ZnJlZQAACeRtZGF0AAACrgYF//+q3EXpvebZSLeWLNgg2SPu73gyNjQgLSBjb3JlIDE2NSByMzIyMiBiMzU2MDVhIC0gSC4y
|
|
41
|
+
NjQvTVBFRy00IEFWQyBjb2RlYyAtIENvcHlsZWZ0IDIwMDMtMjAyNSAtIGh0dHA6Ly93d3cudmlkZW9sYW4ub3JnL3gyNjQu
|
|
42
|
+
aHRtbCAtIG9wdGlvbnM6IGNhYmFjPTEgcmVmPTMgZGVibG9jaz0xOjA6MCBhbmFseXNlPTB4MzoweDExMyBtZT1oZXggc3Vi
|
|
43
|
+
bWU9NyBwc3k9MSBwc3lfcmQ9MS4wMDowLjAwIG1peGVkX3JlZj0xIG1lX3JhbmdlPTE2IGNocm9tYV9tZT0xIHRyZWxsaXM9
|
|
44
|
+
MSA4eDhkY3Q9MSBjcW09MCBkZWFkem9uZT0yMSwxMSBmYXN0X3Bza2lwPTEgY2hyb21hX3FwX29mZnNldD0tMiB0aHJlYWRz
|
|
45
|
+
PTYgbG9va2FoZWFkX3RocmVhZHM9MSBzbGljZWRfdGhyZWFkcz0wIG5yPTAgZGVjaW1hdGU9MSBpbnRlcmxhY2VkPTAgYmx1
|
|
46
|
+
cmF5X2NvbXBhdD0wIGNvbnN0cmFpbmVkX2ludHJhPTAgYmZyYW1lcz0zIGJfcHlyYW1pZD0yIGJfYWRhcHQ9MSBiX2JpYXM9
|
|
47
|
+
MCBkaXJlY3Q9MSB3ZWlnaHRiPTEgb3Blbl9nb3A9MCB3ZWlnaHRwPTIga2V5aW50PTI1MCBrZXlpbnRfbWluPTEyIHNjZW5l
|
|
48
|
+
Y3V0PTQwIGludHJhX3JlZnJlc2g9MCByY19sb29rYWhlYWQ9NDAgcmM9Y3JmIG1idHJlZT0xIGNyZj0zMC4wIHFjb21wPTAu
|
|
49
|
+
NjAgcXBtaW49MCBxcG1heD02OSBxcHN0ZXA9NCBpcF9yYXRpbz0xLjQwIGFxPTE6MS4wMACAAAABA2WIhAAR//7Y5/MsK6Oq
|
|
50
|
+
4ykwwKqpcOrL3cKlAye4T82LJaFDykH8t1sy3r0hSL9GJNa5NcmViBufos9UN9gzGYbJ+IZ2zZxsnkenejy2v3fx5TJjlNiI
|
|
51
|
+
lUKJMls0KLDFbhz82ajhsUGCezq0DCHCjALIv+g8Mldnn5k8ZpN3EDjYJa/Xr4debHnbe8MjXRg4AQX9CzvPxKZ0FOpU9kMq
|
|
52
|
+
wZCGtEL61eQfUrbRJEckKT/uj9Mn36kbkwySpgwWy+X4zhIAkU/8maLRVjnj3td16WQD8v41QkTqIAbj5xutvfzCthCT3bAU
|
|
53
|
+
ImCyAj/3VMTOf7e7/2wID8LxWW1qhuqm/ESy1IEAAAB1QZokbEEf/jgvWdARAG+Q716M5y2kxC9zQxestdinyTkZHEkobNZe
|
|
54
|
+
Io8iY7hdsf0DXmMiCDUQw95YR69/upji0ZszBzFfuWMkcLkAUJgrX+nwInbF+cqfxkLSvqekuduanhGoUda6qvCLmYfPCvzx
|
|
55
|
+
NxfhXOsDAAAAEEGeQniG/wBYjIHfgJhI7pUAAAAJAZ5hdEM/AAz4AAAADgGeY2pDPwBHVe9UT+NVAAAAk0GaaEmoQWiZTAgj
|
|
56
|
+
//5OF6TRRZQ2sCZT82gD55snmBc2VCQrOHPcOMYrUu92MLNi02iv2WXT9FMZgape5MLJHXHldLvlu7k/CFKLw2TsP4goIIv2
|
|
57
|
+
A0GVHytWGZhTXcrvynPcIiCNPTdlUiUZF1C+6li8nBIR5DvBIbxaifgPirI49DZjWGI4LD9Fk4D9Mk6u/Hz4hQAAAAtBnoZF
|
|
58
|
+
ESw3/wAKSQAAAAkBnqV0Qz8ADPkAAAALAZ6nakM/AA3O5UAAAAB6QZqsSahBbJlMCCH//hTYBQCtXsAgZYOKSFqkWnaC/Wij
|
|
59
|
+
xJ5s6a/Y7hDhIUZlx2/xywHIkSnDM2r4Klv5XBlBN6qnzJTqqk+yvA9xuk/8kLWoRSVtss1qi9t1jOAtWByPaDxjREr0X/j3
|
|
60
|
+
qecy72Sxv95hmOVrB5AoHXUAAAARQZ7KRRUsN/8BwpyYHnxbssEAAAALAZ7pdEM/AjpJ0kgAAAAJAZ7rakM/AAz4AAAAcUGa
|
|
61
|
+
8EmoQWyZTAgh//4UOL0ADDajsAFfKeG2gD56qAAAiqpCX0yVYhu9bOme3s4DGSBB2yReDbbxgDkkHFzuvnjpDGDem5tLKCGy
|
|
62
|
+
N0ZquwIPOSO6KZ3q3LXuCpdZ/SxDWgozBxavNevHX48zkuER3WlxAAAADUGfDkUVLDf/AAsRpuEAAAAJAZ8tdEM/AAz5AAAA
|
|
63
|
+
CwGfL2pDPwAYfXuIAAAAckGbNEmoQWyZTAgh//4Vi5hOfTkSf5AAl/tSTYIiqHQf+JoqzIiQNAosx3e6pjOqhCv+sRoSwWIs
|
|
64
|
+
XT/hAb3MjgAk/NEr6gq7TliYYNhbZPzRJT9BC4ddsf6xPRGAKZstBUhKoATJ4XZ0bVBq9IESu87RGAAAAA9Bn1JFFSw3/wBa
|
|
65
|
+
zFR31lkAAAAVAZ9xdEM/DKx44q58rCKABc+jNttAAAAADwGfc2pDPwpKlr9xTLXjQAAAAHtBm3hJqEFsmUwIIf/+HDmA5LyP
|
|
66
|
+
cQCfNs0myk1SonheXPdPZkqxRFjapoAYqbdtP2kcthV/0DXUJnlQj8P7ZAygspQBG0ruDBQs0hVOxV4vBQdqX6Yx3q1OWOFW
|
|
67
|
+
OMMdxy/Gp6C4S1Wx764qh0io/rcvEW5qcTKrLnd4y4EAAAARQZ+WRRUsN/8YmcPDKq0qbPAAAAAJAZ+1dEM/AAz5AAAACwGf
|
|
68
|
+
t2pDPwAOHwCxAAAAYEGbukmoQWyZTBRMEP/+BHWxMz6bge/VZzDUA72k3ya7C3oZVf/PTOrs91w3SCrENLFOFHO+ze0Utt9Y
|
|
69
|
+
VyswKtHXivU26w8GJkIlypVFzku5e1+SyBoRKYs7X1bBNA22hQAAAAkBn9lqQz8ADPkAAAB2QZveSeEKUmUwIf/996JsAXS2
|
|
70
|
+
K1esjM8XQMnoefMADEibOu9HOW2puLo6+gGCB5kZiHnSwiS1MiAnnuUG3p9OiA0lrA54+VaPVsDM5CelCc1RkjkeienoiT/1
|
|
71
|
+
ZzWoaPYTFKluzq54JieXFpBaiDUKpMKDVQiyaQAAABJBn/xFNEw3/wGzpbq1BRJROyEAAAAJAZ4bdEM/AAz5AAAAFAGeHWpD
|
|
72
|
+
PwIr6Qgz9t+ZbZmeTl6AAAAAaEGaAkmoQWiZTAhv//qi+YgClQu6CxhavI0kgzACj8NYTyIQ5tL9ytv8jlExcuAxd1atD1gY
|
|
73
|
+
xjChoFnui4qCOOvfNQ0AbGwaZgUNQNGjnW4KM/ROBx1R75pGN/ucMT8HuI+u9GR3nQk4AAAAGEGeIEURLDf/CIoKnEu1YRZB
|
|
74
|
+
H07eo3g+9wAAAA8Bnl90Qz8CPD+Jjbs8moAAAAANAZ5BakM/AWLO+qKI0QAAAClBmkNJqEFsmUwIZ//6WAPnM/YVcDReliMF
|
|
75
|
+
1zpDvCZ+hXeJsQLqi7OoGA==
|
|
76
|
+
MP4
|
|
77
|
+
|
|
78
|
+
def self.bytes
|
|
79
|
+
@bytes ||= DATA.unpack1('m')
|
|
80
|
+
end
|
|
81
|
+
end
|
|
82
|
+
end
|
data/lib/testimonials/seeds.rb
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
+
require 'stringio'
|
|
4
|
+
require_relative 'demo_video'
|
|
5
|
+
|
|
3
6
|
module Testimonials
|
|
4
7
|
module Seeds
|
|
5
|
-
VIDEO_PATH = File.expand_path('demo/flower.mp4', __dir__)
|
|
6
|
-
|
|
7
8
|
TESTIMONIALS = [
|
|
8
9
|
{
|
|
9
10
|
seed_id: 'approved-founder',
|
|
@@ -149,15 +150,12 @@ module Testimonials
|
|
|
149
150
|
return unless Testimonials.config.video_enabled?
|
|
150
151
|
return unless testimonial.respond_to?(:video_file)
|
|
151
152
|
return if testimonial.video_file.attached?
|
|
152
|
-
return unless File.exist?(VIDEO_PATH)
|
|
153
153
|
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
)
|
|
160
|
-
end
|
|
154
|
+
testimonial.video_file.attach(
|
|
155
|
+
io: StringIO.new(DemoVideo.bytes),
|
|
156
|
+
filename: DemoVideo::FILENAME,
|
|
157
|
+
content_type: DemoVideo::CONTENT_TYPE
|
|
158
|
+
)
|
|
161
159
|
end
|
|
162
160
|
private_class_method :attach_demo_video!
|
|
163
161
|
end
|
data/lib/testimonials/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: testimonials
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.7.
|
|
4
|
+
version: 0.7.7
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Yaroslav Shmarov
|
|
@@ -105,8 +105,7 @@ files:
|
|
|
105
105
|
- lib/testimonials/configuration.rb
|
|
106
106
|
- lib/testimonials/dashboard.css
|
|
107
107
|
- lib/testimonials/dashboard.js
|
|
108
|
-
- lib/testimonials/
|
|
109
|
-
- lib/testimonials/demo/flower.mp4
|
|
108
|
+
- lib/testimonials/demo_video.rb
|
|
110
109
|
- lib/testimonials/engine.rb
|
|
111
110
|
- lib/testimonials/has_testimonials.rb
|
|
112
111
|
- lib/testimonials/prompt_helper.rb
|
|
Binary file
|