pageflow-vr 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.eslintrc +38 -0
- data/.gitignore +10 -0
- data/.rspec +2 -0
- data/.travis.yml +5 -0
- data/CHANGELOG.md +7 -0
- data/CODE_OF_CONDUCT.md +49 -0
- data/Gemfile +4 -0
- data/README.md +60 -0
- data/Rakefile +9 -0
- data/app/assets/images/pageflow/vr/themes/default/pictograms/sprite.png +0 -0
- data/app/assets/images/pageflow/vr/themes/default/pictograms/wide.png +0 -0
- data/app/assets/images/pageflow/vr_pictogram_small.png +0 -0
- data/app/assets/javascripts/pageflow/vr/browser/vr_view_cardboard_support.js +3 -0
- data/app/assets/javascripts/pageflow/vr/browser/vr_view_support.js +4 -0
- data/app/assets/javascripts/pageflow/vr/components/icons/cardboard.jsx +10 -0
- data/app/assets/javascripts/pageflow/vr/components/icons/play.jsx +11 -0
- data/app/assets/javascripts/pageflow/vr/components/no_vr_view.jsx +34 -0
- data/app/assets/javascripts/pageflow/vr/components/page.jsx +201 -0
- data/app/assets/javascripts/pageflow/vr/components/vr_view.jsx +160 -0
- data/app/assets/javascripts/pageflow/vr/components.js +7 -0
- data/app/assets/javascripts/pageflow/vr/editor/views/configuration_editor_view.js +65 -0
- data/app/assets/javascripts/pageflow/vr/editor/views/fallback_preview_mode_view.js +9 -0
- data/app/assets/javascripts/pageflow/vr/editor.js +73 -0
- data/app/assets/javascripts/pageflow/vr/page_type.js +2 -0
- data/app/assets/javascripts/pageflow/vr/player/media_events.js +36 -0
- data/app/assets/javascripts/pageflow/vr/player.js +93 -0
- data/app/assets/javascripts/pageflow/vr.js +7 -0
- data/app/assets/stylesheets/pageflow/vr/themes/default.scss +85 -0
- data/app/controllers/pageflow/vr/static_files_controller.rb +13 -0
- data/app/views/pageflow/vr/static_files/vrview.css +55 -0
- data/app/views/pageflow/vr/static_files/vrview.html +22 -0
- data/app/views/pageflow/vr/static_files/vrview.js +44415 -0
- data/bin/console +14 -0
- data/bin/setup +8 -0
- data/config/locales/de.yml +94 -0
- data/config/locales/en.yml +94 -0
- data/config/routes.rb +3 -0
- data/lib/pageflow/vr/engine.rb +14 -0
- data/lib/pageflow/vr/plugin.rb +10 -0
- data/lib/pageflow/vr/projection_auto_detection.rb +42 -0
- data/lib/pageflow/vr/version.rb +5 -0
- data/lib/pageflow-vr.rb +31 -0
- data/pageflow-vr.gemspec +27 -0
- metadata +171 -0
data/bin/console
ADDED
@@ -0,0 +1,14 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require "bundler/setup"
|
4
|
+
require "pageflow/vr"
|
5
|
+
|
6
|
+
# You can add fixtures and/or initialization code here to make experimenting
|
7
|
+
# with your gem easier. You can also use a different console, if you like.
|
8
|
+
|
9
|
+
# (If you use this, don't forget to add pry to your Gemfile!)
|
10
|
+
# require "pry"
|
11
|
+
# Pry.start
|
12
|
+
|
13
|
+
require "irb"
|
14
|
+
IRB.start
|
data/bin/setup
ADDED
@@ -0,0 +1,94 @@
|
|
1
|
+
de:
|
2
|
+
pageflow:
|
3
|
+
editor:
|
4
|
+
files:
|
5
|
+
attributes:
|
6
|
+
image_files:
|
7
|
+
projection:
|
8
|
+
cell_text:
|
9
|
+
blank: "(Kein)"
|
10
|
+
equirectangular_mono: Equirectangular (Mono)
|
11
|
+
equirectangular_stereo: Equirectangular (Stereo)
|
12
|
+
column_header: Projektion
|
13
|
+
inline_help: Lege fest, ob es sich um ein mono- oder stereoskopisches 360°-Bild handelt. Diese können als Posterbild für 360°-Videos verwendet werden.
|
14
|
+
label: 360° Projektion
|
15
|
+
values:
|
16
|
+
equirectangular_mono: Equirectangular (Mono)
|
17
|
+
equirectangular_stereo: Equirectangular (Stereo)
|
18
|
+
video_files:
|
19
|
+
projection:
|
20
|
+
cell_text:
|
21
|
+
auto_detect: "(Automatisch erkennen)"
|
22
|
+
blank: "(Kein)"
|
23
|
+
equirectangular_mono: Equirectangular (Mono)
|
24
|
+
equirectangular_stereo: Equirectangular (Stereo)
|
25
|
+
column_header: Projektion
|
26
|
+
inline_help: Lege fest, ob es sich um ein mono- oder stereoskopisches 360°-Video handelt. Dieses kann mit dem Seitentyp '360° Video' zu einer interaktiven Szene gemacht werden. Vor dem Upload steht außerdem die Option 'Automatisch erkennen' zur Auswahl. Diese setzt den Wert für quadratische Videos auf 'Equirectangular (Stereo)', für Videos mit Seitenverhältnis 2:1 auf 'Equirectangular (Mono)'.
|
27
|
+
inline_help_disabled: Legt fest, ob es sich um ein mono- oder stereoskopisches 360°-Video handelt. Sobald das Video verarbeitet wurde und die automatische Erkennung abgeschlossen ist, kann die Einstellung wieder bearbeitet werden.
|
28
|
+
label: 360° Projektion
|
29
|
+
values:
|
30
|
+
auto_detect: "(Automatisch erkennen)"
|
31
|
+
equirectangular_mono: Equirectangular (Mono)
|
32
|
+
equirectangular_stereo: Equirectangular (Stereo)
|
33
|
+
filters:
|
34
|
+
image_files:
|
35
|
+
with_projection:
|
36
|
+
blank_slate: Gebe in den Datei-Einstellungen eines Bildes eine Projektion an, um es als 360° Bild zu markieren.
|
37
|
+
name: 360° Bilder
|
38
|
+
video_files:
|
39
|
+
with_projection:
|
40
|
+
blank_slate: Gebe in den Datei-Einstellungen eines Videos eine Projektion an, um es als 360° Video zu markieren.
|
41
|
+
name: 360° Videos
|
42
|
+
ui:
|
43
|
+
configuration_editor:
|
44
|
+
tabs:
|
45
|
+
vr_fallback: Fallback
|
46
|
+
vr:
|
47
|
+
help_entries:
|
48
|
+
page_type:
|
49
|
+
menu_item: 360° Video
|
50
|
+
text: "# 360° Video\n_Zeigt ein interaktives Video an, in dem sich der Benutzer umsehen kann._\n\nDas Video muss im Format \"equirectangular-panoramic\" erstellt worden sein (siehe auch [Plattkarte auf Wikipedia](https://de.wikipedia.org/wiki/Plattkarte)). Es können sowohl mono- als auch stereoskopische Videos verwendet werden:\n\n* Mono-Videos müssen das Seitenverhältnis 2:1 besitzen (z.B. 4096 x 2048).\n* Stereo-Videos müssen das Seitenverhältnis 1:1 besitzen (z.B. 4096 x 4096) wobei sich die zwei Bildbereiche dann übereinander befinden.\n\nDie zum Video passende Projektion kann beim Upload des Videos in den Datei-Einstellungen ausgewählt werden. Standardmäßig wird für Video mit den oben genannten Seitenverhältnissen automatisch die entsprechende Projektion festgelegt.\n\nIn den Einstellungen der Seite kannst Du das zu verwendende Video dann auf dem Tab \"Dateien\" festlegen. Bei der Auswahl des Videos werden nur Dateien anzeigt, die beim Upload durch Auswahl einer Projektion als 360°-Videos markiert wurden. Solltest Du beim Upload vergessen haben, eine Projektion festzulegen, kannst Du dies jederzeit in den Einstellungen der Datei nachholen. Klicke dazu im Hauptmenü auf \"Dateien verwalten\", suche das 360°-Video in der Liste heraus und klicke auf den Button mit dem Zahnrad-Symbol.\n\nDer initiale Blickwinkel kann ebenfalls auf dem Tab \"Dateien\" in den Einstellungen der Seite gewählt werden. Über die \"Autoplay\" Option steuerst Du, ob das Video direkt beim Erreichen der Seite starten soll oder erst wenn der User den Play-Button aktiviert. Beachte, dass ein automatisches Abspielen auf mobilen Geräten z.T. aus technischen Gründen nicht möglich ist.\n\nFolgende Browser unterstützen die Wiedergabe von 360°-Videos:\n\n* Aktuelle Versionen von Chrome und Firefox auf OSX, Linux und Windows.\n* Aktuelle Versionen von Safari auf OSX.\n* Aktuelle Versionen von Chrome auf Android.\n* Aktuelle Versionen von Internet Explorer 11 und Edge auf Windows.\n\nFür nicht unterstützte Plattformen kannst Du einen Link zu einem YouTube-Video hinterlegen. Auf iOS-Geräten kann das 360°-Video dann in der YouTube-App angesehen werden. Alle Optionen zur Darstellung der Seite, die angezeigt wird, falls keine 360°-Videos unterstützt werden, findest Du auf dem Tab \"Fallback\". Es kann auch ein Text festgelegt werden, um dem Benutzer zu erklären, dass sein Browser das Video nicht anzeigen kann.\n\nÜber die Option \"Fallback Vorschau ansehen\" kannst Du vorübergehend eine Vorschau der Seite ansehen, wie sie Benutzer mit nicht unterstützen Browsern angezeigt wird. "
|
51
|
+
page_attributes:
|
52
|
+
autoplay:
|
53
|
+
inline_help: Video im Hintergrund starten sobald die Seite erreicht wird. Auf mobilen Geräten ist dies aus technischen Gründen nicht möglich. Das Video startet, wenn der Benutzer auf den Play-Button klickt.
|
54
|
+
label: Autoplay
|
55
|
+
fallback_background_image_id:
|
56
|
+
inline_help: Bild, das angezeigt wird, wenn der Browser keine 360°-Videos unterstützt.
|
57
|
+
label: Fallback Bild
|
58
|
+
fallback_background_type:
|
59
|
+
inline_help: Legt fest, ob ein Bild oder ein Video angezeigt wird, wenn der Browser keine 360°-Videos unterstützt.
|
60
|
+
label: Fallback Typ
|
61
|
+
values:
|
62
|
+
image: Hintergrund-Bild
|
63
|
+
video: Hintergrund-Video
|
64
|
+
fallback_poster_image_id:
|
65
|
+
inline_help: Poster für Video, das angezeigt wird, wenn der Browser keine 360°-Videos unterstützt.
|
66
|
+
label: Fallback Video Poster
|
67
|
+
fallback_text:
|
68
|
+
inline_help: Text, der angezeigt wird, um zu erklären, dass der Browser keine 360°-Videos unterstützt. Leer lassen, um Standard-Text zu verwenden.
|
69
|
+
label: Fallback Erklärtext
|
70
|
+
fallback_video_file_id:
|
71
|
+
inline_help: Video, das angezeigt wird, wenn der Browser keine 360°-Videos unterstützt.
|
72
|
+
label: Fallback Video
|
73
|
+
fallback_you_tube_url:
|
74
|
+
inline_help: YouTube Video, das verlinkt wird, wenn der Browser keine 360°-Videos unterstützt.
|
75
|
+
label: Fallback YouTube URL
|
76
|
+
is_stereo:
|
77
|
+
inline_help: Gibt an, ob das Video im "Stacked Stereo" Format ist.
|
78
|
+
label: Stereo
|
79
|
+
poster_id:
|
80
|
+
inline_help: Wird angezeigt während das 360°-Video lädt. Wenn kein Poster ausgewählt ist, wird das erste Frame des Videos verwendet. Auf das Posterbild wird die gleiche Projektion angewendet, wie auf das Video.
|
81
|
+
label: 360°-Posterbild
|
82
|
+
preview_vr_fallback:
|
83
|
+
inline_help: Aktivieren Sie diese Option, um die Seite so zu sehen, wie sie angezeigt wird, wenn der Browser keine 360°-Videos unterstützt.
|
84
|
+
label: Fallback Vorschau ansehen
|
85
|
+
start_yaw:
|
86
|
+
inline_help: Bestimmt den initialen Blickwinkel im Video.
|
87
|
+
label: Start-Winkel
|
88
|
+
video_id:
|
89
|
+
inline_help: Video in dem der Benutzer sich umsehen kann.
|
90
|
+
label: 360°-Video
|
91
|
+
page_type_category_name: Interaktiv
|
92
|
+
page_type_description: Interaktive 360° Videos
|
93
|
+
page_type_feature_name: 360° Video Seitentyp
|
94
|
+
page_type_name: 360° Video
|
@@ -0,0 +1,94 @@
|
|
1
|
+
en:
|
2
|
+
pageflow:
|
3
|
+
editor:
|
4
|
+
files:
|
5
|
+
attributes:
|
6
|
+
image_files:
|
7
|
+
projection:
|
8
|
+
cell_text:
|
9
|
+
blank: "(none)"
|
10
|
+
equirectangular_mono: Equirectangular (mono)
|
11
|
+
equirectangular_stereo: Equirectangular (stereo)
|
12
|
+
column_header: Projection
|
13
|
+
inline_help: Determine, wether this video is a mono- or stereoscopic 360° image. It can be chosen as poster image for 360° videos.
|
14
|
+
label: 360° projection
|
15
|
+
values:
|
16
|
+
equirectangular_mono: Equirectangular (mono)
|
17
|
+
equirectangular_stereo: Equirectangular (stereo)
|
18
|
+
video_files:
|
19
|
+
projection:
|
20
|
+
cell_text:
|
21
|
+
auto_detect: "(Auto detect)"
|
22
|
+
blank: "(none)"
|
23
|
+
equirectangular_mono: Equirectangular (mono)
|
24
|
+
equirectangular_stereo: Equirectangular (stereo)
|
25
|
+
column_header: Projection
|
26
|
+
inline_help: Determine, wether this video is a mono- or stereoscopic 360° video. With the page type 360° video, interactive scenes can be built with it. Before uploading an option "Auto detect" can be chosen as well. This sets the value of square videos to "Equirectangular (stereo)", and videos with an aspect ratio of 2:1 to "Equirectangular (mono)".
|
27
|
+
inline_help_disabled: Determine, wether this video is a mono- or stereoscopic 360° video. As soon as the video is processed and auto detect is completed, this setting can be edited again.
|
28
|
+
label: 360° projection
|
29
|
+
values:
|
30
|
+
auto_detect: "(Auto detect)"
|
31
|
+
equirectangular_mono: Equirectangular (mono)
|
32
|
+
equirectangular_stereo: Equirectangular (stereo)
|
33
|
+
filters:
|
34
|
+
image_files:
|
35
|
+
with_projection:
|
36
|
+
blank_slate: Choose a projection in the file settings, to mark it as a 360° image.
|
37
|
+
name: 360° images
|
38
|
+
video_files:
|
39
|
+
with_projection:
|
40
|
+
blank_slate: Choose a projection in the file settings, to mark it as a 360° video.
|
41
|
+
name: 360° videos
|
42
|
+
ui:
|
43
|
+
configuration_editor:
|
44
|
+
tabs:
|
45
|
+
vr_fallback: Fallback
|
46
|
+
vr:
|
47
|
+
help_entries:
|
48
|
+
page_type:
|
49
|
+
menu_item: 360° video
|
50
|
+
text: "# 360° Video\n_Plays an interactive video, in which a user can look around._\n\nThe video must be created in “equirectangular-panoramic” format (see also [Wikpedia entry](https://en.wikipedia.org/wiki/Equirectangular_projection)) \nYou can use monoscopic and stereoscopic videos:\n\n* Mono-videos must have an aspect ratio of 2:1 (e.g. 4096 x 2048).\n* Stereo-videos must have an aspect ratio of 1:1 (e.g. 4096 x 4096) where the two image areas are stacked above each other.\n\nThe suitable projection for the video can be chosen while uploading in the file settings. For videos, with the above aspect ratio the right projection is selected automatically.\nYou can then determine a specific video within the page settings by clicking the tab „Files“. \n\nWhen choosing the file only such files are being displayed that were marked as 360° video while uploading. If you forgot to determine a projection in the upload process, you can subsequently change that within the settings at any time. Simply click on „manage files“, search the list for that 360° video and click onto the gear icon.\n\nThe initial view angle can also be determined via the „files“ section in the page settings. By choosing the „autoplay“ option you can specify if a video starts immediately when the page is entered or if users shall start the video with a play button. \n\nNote, that (partly) for technical reason an autoplay is not possible on mobile devices. The following browsers support playback of 360° videos:\n\n* Latest versions of Chrome and Firefox on OSX, Linux and Windows.\n* Latest versions of Safari on OSX.\n* Latest versions of Chrome on Android.\n* Latest versions of Internet Explorer 11 and Edge on Windows.\n\nFor not supported platforms, you can link to a Youtube version. The 360° video will then be displayed for iOS devices directly within the Youtube app. All general options for the appearance of a 360° video page, if 360° video playback is not supported, can be edited via the tab „Fallback“. Here you can also determine a text, to explain that a user’s browser cannot play the video.\nBy clicking the option „Fallback preview“, you can see in a preview how the page looks like for users if a browser doesn’t support 360° videos.\n\n "
|
51
|
+
page_attributes:
|
52
|
+
autoplay:
|
53
|
+
inline_help: Auto start video in the background, when this page is reached. Due to technical reasons, this option is not working on mobile devices. The video will start, when users click on the play button.
|
54
|
+
label: Autoplay
|
55
|
+
fallback_background_image_id:
|
56
|
+
inline_help: Image, that will be shown, if the browser does not support 360° videos.
|
57
|
+
label: Fallback image
|
58
|
+
fallback_background_type:
|
59
|
+
inline_help: Determines, wether an image or video will be shown, if browser does not support 360° videos.
|
60
|
+
label: Fallback type
|
61
|
+
values:
|
62
|
+
image: Background image
|
63
|
+
video: Background video
|
64
|
+
fallback_poster_image_id:
|
65
|
+
inline_help: Poster image for video, which is displayed, when a users browser does not support 360° videos.
|
66
|
+
label: Fallback video poster
|
67
|
+
fallback_text:
|
68
|
+
inline_help: Determine a text, to explain that a users browser cannot play the video. Leave empty to display the standard text.
|
69
|
+
label: Fallback explanation text
|
70
|
+
fallback_video_file_id:
|
71
|
+
inline_help: Video, that is displayed, when a users browser does not support 360° videos.
|
72
|
+
label: Fallback video
|
73
|
+
fallback_you_tube_url:
|
74
|
+
inline_help: YouTube video, that is linked, when a users browser does not support 360° videos.
|
75
|
+
label: Fallback YouTube URL
|
76
|
+
is_stereo:
|
77
|
+
inline_help: Indicates, if the video is in the "Stacked stereo" format.
|
78
|
+
label: Stereo
|
79
|
+
poster_id:
|
80
|
+
inline_help: Will be shown while the 360° video loads. If no poster image is chosen, the first video frame will be used. For the poster image, the same projection will be applied, as for the video.
|
81
|
+
label: 360° poster image
|
82
|
+
preview_vr_fallback:
|
83
|
+
inline_help: Activate this option, to view the page as it is displayed, when a users browser does not support 360° videos.
|
84
|
+
label: Show fallback preview
|
85
|
+
start_yaw:
|
86
|
+
inline_help: Determines the initial viewpoint within the video.
|
87
|
+
label: Start angle
|
88
|
+
video_id:
|
89
|
+
inline_help: Video in which a user can look around
|
90
|
+
label: 360° video
|
91
|
+
page_type_category_name: Interactive
|
92
|
+
page_type_description: Interactive 360° videos
|
93
|
+
page_type_feature_name: 360° Page type
|
94
|
+
page_type_name: 360° video
|
data/config/routes.rb
ADDED
@@ -0,0 +1,14 @@
|
|
1
|
+
module Pageflow
|
2
|
+
module Vr
|
3
|
+
class Engine < Rails::Engine
|
4
|
+
isolate_namespace Pageflow::Vr
|
5
|
+
|
6
|
+
config.autoload_paths << File.join(config.root, 'lib')
|
7
|
+
config.i18n.load_path += Dir[config.root.join('config', 'locales', '**', '*.yml').to_s]
|
8
|
+
|
9
|
+
initializer "pageflow-vr.add_watchable_files", group: :all do |app|
|
10
|
+
app.config.watchable_files.concat Dir["#{config.root}/app/assets/javascripts/**/*.jsx*"]
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
@@ -0,0 +1,42 @@
|
|
1
|
+
module Pageflow
|
2
|
+
module Vr
|
3
|
+
class ProjectionAutoDetection
|
4
|
+
def call(options)
|
5
|
+
file = options[:file]
|
6
|
+
return unless file.is_a?(VideoFile)
|
7
|
+
usage = file.usages.first
|
8
|
+
|
9
|
+
if dimension_present?(file) && auto_detection_enabled?(usage)
|
10
|
+
update(usage, file)
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
private
|
15
|
+
|
16
|
+
def dimension_present?(video_file)
|
17
|
+
video_file.width.present? && video_file.height.present?
|
18
|
+
end
|
19
|
+
|
20
|
+
def auto_detection_enabled?(file_usage)
|
21
|
+
file_usage.configuration['projection'] == 'auto_detect'
|
22
|
+
end
|
23
|
+
|
24
|
+
def update(usage, video_file)
|
25
|
+
usage.configuration =
|
26
|
+
usage.configuration.merge(projection: detect_projection(video_file))
|
27
|
+
|
28
|
+
usage.save!
|
29
|
+
end
|
30
|
+
|
31
|
+
def detect_projection(video_file)
|
32
|
+
if video_file.width == video_file.height
|
33
|
+
'equirectangular_stereo'
|
34
|
+
elsif video_file.width == video_file.height * 2
|
35
|
+
'equirectangular_mono'
|
36
|
+
else
|
37
|
+
''
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
data/lib/pageflow-vr.rb
ADDED
@@ -0,0 +1,31 @@
|
|
1
|
+
require 'pageflow/vr/engine'
|
2
|
+
|
3
|
+
module Pageflow
|
4
|
+
module Vr
|
5
|
+
PAGE_TYPE_THUMBNAIL_CANDIDATES = [
|
6
|
+
{
|
7
|
+
attribute: 'thumbnail_image_id',
|
8
|
+
file_collection: 'image_files'
|
9
|
+
},
|
10
|
+
{
|
11
|
+
attribute: 'video_id',
|
12
|
+
file_collection: 'video_files'
|
13
|
+
}
|
14
|
+
]
|
15
|
+
|
16
|
+
def self.plugin
|
17
|
+
Vr::Plugin.new
|
18
|
+
end
|
19
|
+
|
20
|
+
def self.page_type
|
21
|
+
Pageflow::React.create_page_type('vr',
|
22
|
+
thumbnail_candidates: PAGE_TYPE_THUMBNAIL_CANDIDATES)
|
23
|
+
end
|
24
|
+
|
25
|
+
def self.routes(router)
|
26
|
+
router.instance_eval do
|
27
|
+
mount Pageflow::Vr::Engine, at: '/pageflow_vr'
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
data/pageflow-vr.gemspec
ADDED
@@ -0,0 +1,27 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require 'pageflow/vr/version'
|
5
|
+
|
6
|
+
Gem::Specification.new do |spec|
|
7
|
+
spec.name = 'pageflow-vr'
|
8
|
+
spec.version = Pageflow::Vr::VERSION
|
9
|
+
spec.authors = ['Codevise Solutions']
|
10
|
+
spec.email = ['info@codevise.de']
|
11
|
+
spec.summary = 'Page type for 360° videos based on Google Vrview.'
|
12
|
+
spec.homepage = 'https://github.com/codevise/pageflow-vr'
|
13
|
+
spec.license = 'MIT'
|
14
|
+
|
15
|
+
spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
16
|
+
spec.require_paths = ['lib']
|
17
|
+
|
18
|
+
spec.required_ruby_version = '~> 2.1'
|
19
|
+
|
20
|
+
spec.add_dependency 'pageflow', '~> 12.x'
|
21
|
+
spec.add_dependency 'pageflow-public-i18n', '~> 1.10'
|
22
|
+
|
23
|
+
spec.add_development_dependency 'bundler', '~> 1.12'
|
24
|
+
spec.add_development_dependency 'rake', '~> 12.0'
|
25
|
+
spec.add_development_dependency 'rspec', '~> 3.0'
|
26
|
+
spec.add_development_dependency 'semmy', '~> 1.0'
|
27
|
+
end
|
metadata
ADDED
@@ -0,0 +1,171 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: pageflow-vr
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 1.0.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Codevise Solutions
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2017-08-11 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: pageflow
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: 12.x
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: 12.x
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: pageflow-public-i18n
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '1.10'
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '1.10'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: bundler
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '1.12'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '1.12'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: rake
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - "~>"
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '12.0'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - "~>"
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '12.0'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: rspec
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - "~>"
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '3.0'
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - "~>"
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '3.0'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: semmy
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - "~>"
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '1.0'
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - "~>"
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '1.0'
|
97
|
+
description:
|
98
|
+
email:
|
99
|
+
- info@codevise.de
|
100
|
+
executables: []
|
101
|
+
extensions: []
|
102
|
+
extra_rdoc_files: []
|
103
|
+
files:
|
104
|
+
- ".eslintrc"
|
105
|
+
- ".gitignore"
|
106
|
+
- ".rspec"
|
107
|
+
- ".travis.yml"
|
108
|
+
- CHANGELOG.md
|
109
|
+
- CODE_OF_CONDUCT.md
|
110
|
+
- Gemfile
|
111
|
+
- README.md
|
112
|
+
- Rakefile
|
113
|
+
- app/assets/images/pageflow/vr/themes/default/pictograms/sprite.png
|
114
|
+
- app/assets/images/pageflow/vr/themes/default/pictograms/wide.png
|
115
|
+
- app/assets/images/pageflow/vr_pictogram_small.png
|
116
|
+
- app/assets/javascripts/pageflow/vr.js
|
117
|
+
- app/assets/javascripts/pageflow/vr/browser/vr_view_cardboard_support.js
|
118
|
+
- app/assets/javascripts/pageflow/vr/browser/vr_view_support.js
|
119
|
+
- app/assets/javascripts/pageflow/vr/components.js
|
120
|
+
- app/assets/javascripts/pageflow/vr/components/icons/cardboard.jsx
|
121
|
+
- app/assets/javascripts/pageflow/vr/components/icons/play.jsx
|
122
|
+
- app/assets/javascripts/pageflow/vr/components/no_vr_view.jsx
|
123
|
+
- app/assets/javascripts/pageflow/vr/components/page.jsx
|
124
|
+
- app/assets/javascripts/pageflow/vr/components/vr_view.jsx
|
125
|
+
- app/assets/javascripts/pageflow/vr/editor.js
|
126
|
+
- app/assets/javascripts/pageflow/vr/editor/views/configuration_editor_view.js
|
127
|
+
- app/assets/javascripts/pageflow/vr/editor/views/fallback_preview_mode_view.js
|
128
|
+
- app/assets/javascripts/pageflow/vr/page_type.js
|
129
|
+
- app/assets/javascripts/pageflow/vr/player.js
|
130
|
+
- app/assets/javascripts/pageflow/vr/player/media_events.js
|
131
|
+
- app/assets/stylesheets/pageflow/vr/themes/default.scss
|
132
|
+
- app/controllers/pageflow/vr/static_files_controller.rb
|
133
|
+
- app/views/pageflow/vr/static_files/vrview.css
|
134
|
+
- app/views/pageflow/vr/static_files/vrview.html
|
135
|
+
- app/views/pageflow/vr/static_files/vrview.js
|
136
|
+
- bin/console
|
137
|
+
- bin/setup
|
138
|
+
- config/locales/de.yml
|
139
|
+
- config/locales/en.yml
|
140
|
+
- config/routes.rb
|
141
|
+
- lib/pageflow-vr.rb
|
142
|
+
- lib/pageflow/vr/engine.rb
|
143
|
+
- lib/pageflow/vr/plugin.rb
|
144
|
+
- lib/pageflow/vr/projection_auto_detection.rb
|
145
|
+
- lib/pageflow/vr/version.rb
|
146
|
+
- pageflow-vr.gemspec
|
147
|
+
homepage: https://github.com/codevise/pageflow-vr
|
148
|
+
licenses:
|
149
|
+
- MIT
|
150
|
+
metadata: {}
|
151
|
+
post_install_message:
|
152
|
+
rdoc_options: []
|
153
|
+
require_paths:
|
154
|
+
- lib
|
155
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
156
|
+
requirements:
|
157
|
+
- - "~>"
|
158
|
+
- !ruby/object:Gem::Version
|
159
|
+
version: '2.1'
|
160
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
161
|
+
requirements:
|
162
|
+
- - ">="
|
163
|
+
- !ruby/object:Gem::Version
|
164
|
+
version: '0'
|
165
|
+
requirements: []
|
166
|
+
rubyforge_project:
|
167
|
+
rubygems_version: 2.6.8
|
168
|
+
signing_key:
|
169
|
+
specification_version: 4
|
170
|
+
summary: Page type for 360° videos based on Google Vrview.
|
171
|
+
test_files: []
|