module Telegraph::Page

Constants

CreatePageSchema
EditPageSchema
GetPageListSchema
GetPageSchema
GetViewsSchema

Public Class Methods

create(params) click to toggle source
# File lib/telegraph/api/page.rb, line 3
def self.create(params)
  return nil unless CreatePageSchema.(params).success?
  response = Telegraph::Core.request('createPage', params)
  if response.dig('result', 'content')
    response['result']['content'] = Types::Page.new(Hashie.symbolize_keys response['result'])
  end
  response
end
edit(params) click to toggle source
# File lib/telegraph/api/page.rb, line 12
def self.edit(params)
  return nil unless EditPageSchema.(params).success?
  path = params.delete(:path)
  response = Telegraph::Core.request('editPage/' + path, params)
  if response.dig('result', 'content')
    response['result']['content'] = Types::Page.new(Hashie.symbolize_keys response['result'])
  end
  response
end
get(params) click to toggle source
# File lib/telegraph/api/page.rb, line 22
def self.get(params)
  return nil unless GetPageSchema.(params).success?
  path = params.delete(:path)
  response = Telegraph::Core.request('getPage/' + path, params)
  Types::Page.new(Hashie.symbolize_keys response['result'])
end
list(params) click to toggle source
# File lib/telegraph/api/page.rb, line 29
def self.list(params)
  return nil unless GetPageListSchema.(params).success?
  response = Telegraph::Core.request('getPageList', params)
  Types::PageList.new(Hashie.symbolize_keys response['result'])
end
views(params) click to toggle source
# File lib/telegraph/api/page.rb, line 35
def self.views(params)
  return nil unless GetViewsSchema.(params).success?
  path = params.delete(:path)
  response = Telegraph::Core.request('getViews/' + path, params)
  Types::PageViews.new(Hashie.symbolize_keys response['result'])
end