Sha256: 4d4c29be4a23b8978e02fd7f402b0ceab00a4ef09ec1de5c842bd8d3cae6f6d9
Contents?: true
Size: 1.68 KB
Versions: 4
Compression:
Stored size: 1.68 KB
Contents
# frozen_string_literal: true require 'active_support/core_ext/hash/compact' require 'video_embed' module Dato module Local module FieldType class Video attr_reader :url attr_reader :thumbnail_url attr_reader :title attr_reader :width attr_reader :height attr_reader :provider attr_reader :provider_url attr_reader :provider_uid def self.parse(value, _repo) value && new( value[:url], value[:thumbnail_url], value[:title], value[:width], value[:height], value[:provider], value[:provider_url], value[:provider_uid] ) end def initialize( url, thumbnail_url, title, width, height, provider, provider_url, provider_uid ) @url = url @thumbnail_url = thumbnail_url @title = title @width = width @height = height @provider = provider @provider_url = provider_url @provider_uid = provider_uid end def iframe_embed(width = nil, height = nil) VideoEmbed.embed(url, { width: width, height: height }.compact) end def to_hash(*_args) { url: url, thumbnail_url: thumbnail_url, title: title, width: width, height: height, provider: provider, provider_url: provider_url, provider_uid: provider_uid } end end end end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
dato-0.3.9.1 | lib/dato/local/field_type/video.rb |
dato-0.3.10 | lib/dato/local/field_type/video.rb |
dato-0.3.9 | lib/dato/local/field_type/video.rb |
dato-0.3.8 | lib/dato/local/field_type/video.rb |