solidus_api_v2 0.2.0
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 +7 -0
- data/.gitignore +15 -0
- data/.rspec +2 -0
- data/CHANGELOG.md +38 -0
- data/Gemfile +13 -0
- data/LICENSE +26 -0
- data/README.md +98 -0
- data/Rakefile +37 -0
- data/app/controllers/concerns/spree/api/v2/renderable.rb +51 -0
- data/app/controllers/spree/api/v2/base_controller.rb +31 -0
- data/app/controllers/spree/api/v2/children_controller.rb +29 -0
- data/app/controllers/spree/api/v2/countries_controller.rb +21 -0
- data/app/controllers/spree/api/v2/images_controller.rb +29 -0
- data/app/controllers/spree/api/v2/line_items_controller.rb +36 -0
- data/app/controllers/spree/api/v2/option_types_controller.rb +31 -0
- data/app/controllers/spree/api/v2/option_values_controller.rb +29 -0
- data/app/controllers/spree/api/v2/orders_controller.rb +11 -0
- data/app/controllers/spree/api/v2/prices_controller.rb +27 -0
- data/app/controllers/spree/api/v2/products_controller.rb +37 -0
- data/app/controllers/spree/api/v2/states_controller.rb +29 -0
- data/app/controllers/spree/api/v2/taxonomies_controller.rb +21 -0
- data/app/controllers/spree/api/v2/taxons_controller.rb +40 -0
- data/app/controllers/spree/api/v2/variants_controller.rb +35 -0
- data/app/models/spree/base_decorator.rb +5 -0
- data/app/models/spree/image_decorator.rb +3 -0
- data/app/models/spree/price_decorator.rb +3 -0
- data/app/models/spree/state_decorator.rb +3 -0
- data/app/serializers/spree/address_serializer.rb +9 -0
- data/app/serializers/spree/base_serializer.rb +13 -0
- data/app/serializers/spree/country_serializer.rb +7 -0
- data/app/serializers/spree/error_serializer.rb +52 -0
- data/app/serializers/spree/image_serializer.rb +13 -0
- data/app/serializers/spree/line_item_serializer.rb +13 -0
- data/app/serializers/spree/option_type_serializer.rb +8 -0
- data/app/serializers/spree/option_value_serializer.rb +8 -0
- data/app/serializers/spree/order_serializer.rb +21 -0
- data/app/serializers/spree/price_serializer.rb +7 -0
- data/app/serializers/spree/product_serializer.rb +12 -0
- data/app/serializers/spree/role_serializer.rb +5 -0
- data/app/serializers/spree/state_serializer.rb +7 -0
- data/app/serializers/spree/store_serializer.rb +6 -0
- data/app/serializers/spree/taxon_serializer.rb +16 -0
- data/app/serializers/spree/taxonomy_serializer.rb +7 -0
- data/app/serializers/spree/user_serializer.rb +5 -0
- data/app/serializers/spree/variant_serializer.rb +12 -0
- data/bin/rails +7 -0
- data/circle.yml +13 -0
- data/config/locales/en.yml +25 -0
- data/config/routes.rb +53 -0
- data/docs/.nojekyll +0 -0
- data/docs/Dockerfile +12 -0
- data/docs/Gemfile +13 -0
- data/docs/README.md +12 -0
- data/docs/Rakefile +9 -0
- data/docs/config.rb +39 -0
- data/docs/font-selection.json +148 -0
- data/docs/source/fonts/slate.eot +0 -0
- data/docs/source/fonts/slate.svg +14 -0
- data/docs/source/fonts/slate.ttf +0 -0
- data/docs/source/fonts/slate.woff +0 -0
- data/docs/source/fonts/slate.woff2 +0 -0
- data/docs/source/images/logo.png +0 -0
- data/docs/source/images/navbar.png +0 -0
- data/docs/source/includes/_authentication.md +61 -0
- data/docs/source/includes/_countries.md +133 -0
- data/docs/source/includes/_errors.md +17 -0
- data/docs/source/includes/_filtering.md +11 -0
- data/docs/source/includes/_images.md +201 -0
- data/docs/source/includes/_line_items.md +137 -0
- data/docs/source/includes/_option_types.md +267 -0
- data/docs/source/includes/_option_values.md +227 -0
- data/docs/source/includes/_orders.md +75 -0
- data/docs/source/includes/_pagination.md +10 -0
- data/docs/source/includes/_prices.md +188 -0
- data/docs/source/includes/_products.md +403 -0
- data/docs/source/includes/_states.md +96 -0
- data/docs/source/includes/_taxonomies.md +325 -0
- data/docs/source/includes/_taxons.md +414 -0
- data/docs/source/includes/_variants.md +430 -0
- data/docs/source/index.md +53 -0
- data/docs/source/javascripts/all.js +4 -0
- data/docs/source/javascripts/all_nosearch.js +3 -0
- data/docs/source/javascripts/app/_lang.js +162 -0
- data/docs/source/javascripts/app/_search.js +74 -0
- data/docs/source/javascripts/app/_toc.js +55 -0
- data/docs/source/javascripts/lib/_energize.js +169 -0
- data/docs/source/javascripts/lib/_imagesloaded.min.js +7 -0
- data/docs/source/javascripts/lib/_jquery.highlight.js +108 -0
- data/docs/source/javascripts/lib/_jquery.tocify.js +1042 -0
- data/docs/source/javascripts/lib/_jquery_ui.js +566 -0
- data/docs/source/javascripts/lib/_lunr.js +1910 -0
- data/docs/source/layouts/layout.erb +102 -0
- data/docs/source/stylesheets/_icon-font.scss +38 -0
- data/docs/source/stylesheets/_normalize.css +427 -0
- data/docs/source/stylesheets/_syntax.scss.erb +27 -0
- data/docs/source/stylesheets/_variables.scss +109 -0
- data/docs/source/stylesheets/print.css.scss +142 -0
- data/docs/source/stylesheets/screen.css.scss +622 -0
- data/lib/solidus_api_v2.rb +5 -0
- data/lib/spree_api_v2/engine.rb +21 -0
- data/lib/spree_api_v2.rb +4 -0
- data/solidus_api_v2.gemspec +36 -0
- data/spec/controllers/spree/api/v2/children_controller_spec.rb +28 -0
- data/spec/controllers/spree/api/v2/countries_controller_spec.rb +25 -0
- data/spec/controllers/spree/api/v2/images_controller_spec.rb +93 -0
- data/spec/controllers/spree/api/v2/line_items_controller_spec.rb +86 -0
- data/spec/controllers/spree/api/v2/option_types_controller_spec.rb +73 -0
- data/spec/controllers/spree/api/v2/option_values_controller_spec.rb +88 -0
- data/spec/controllers/spree/api/v2/orders_controller_spec.rb +15 -0
- data/spec/controllers/spree/api/v2/prices_controller_spec.rb +55 -0
- data/spec/controllers/spree/api/v2/products_controller_spec.rb +95 -0
- data/spec/controllers/spree/api/v2/states_controller_spec.rb +42 -0
- data/spec/controllers/spree/api/v2/taxonomies_controller_spec.rb +31 -0
- data/spec/controllers/spree/api/v2/taxons_controller_spec.rb +54 -0
- data/spec/controllers/spree/api/v2/variants_controller_spec.rb +108 -0
- data/spec/models/spree/base_decorator_spec.rb +9 -0
- data/spec/models/spree/price_decorator_spec.rb +3 -0
- data/spec/serializers/spree/address_serializer_spec.rb +35 -0
- data/spec/serializers/spree/country_serializer_spec.rb +27 -0
- data/spec/serializers/spree/error_serializer_spec.rb +116 -0
- data/spec/serializers/spree/image_serializer_spec.rb +30 -0
- data/spec/serializers/spree/line_item_serializer_spec.rb +40 -0
- data/spec/serializers/spree/option_type_serializer_spec.rb +27 -0
- data/spec/serializers/spree/option_value_serializer_spec.rb +29 -0
- data/spec/serializers/spree/order_serializer_spec.rb +69 -0
- data/spec/serializers/spree/price_serializer_spec.rb +28 -0
- data/spec/serializers/spree/product_serializer_spec.rb +47 -0
- data/spec/serializers/spree/role_serializer_spec.rb +17 -0
- data/spec/serializers/spree/state_serializer_spec.rb +25 -0
- data/spec/serializers/spree/store_serializer_spec.rb +25 -0
- data/spec/serializers/spree/taxon_serializer_spec.rb +44 -0
- data/spec/serializers/spree/taxonomy_serializer_spec.rb +27 -0
- data/spec/serializers/spree/user_serializer_spec.rb +17 -0
- data/spec/serializers/spree/variant_serializer_spec.rb +55 -0
- data/spec/spec_helper.rb +51 -0
- data/spec/support/shoulda_matchers.rb +6 -0
- data/spree_api_v2.gemspec +36 -0
- metadata +437 -0
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
module Spree
|
|
2
|
+
module Api
|
|
3
|
+
module V2
|
|
4
|
+
class VariantsController < Spree::Api::V2::BaseController
|
|
5
|
+
skip_before_action :authenticate_user
|
|
6
|
+
|
|
7
|
+
def index
|
|
8
|
+
render_collection variants.includes(:default_price, :prices, :option_values, :product, :images)
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
def show
|
|
12
|
+
if params[:price_id]
|
|
13
|
+
render_instance Spree::Price.find(params[:price_id]).variant
|
|
14
|
+
elsif params[:image_id]
|
|
15
|
+
render_instance Spree::Image.variants.find(params[:image_id]).viewable
|
|
16
|
+
else
|
|
17
|
+
render_instance variants.find(params[:id])
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
private
|
|
22
|
+
|
|
23
|
+
def variants
|
|
24
|
+
if params[:product_id]
|
|
25
|
+
Spree::Product.find(params[:product_id]).variants_including_master
|
|
26
|
+
elsif params[:option_value_id]
|
|
27
|
+
Spree::OptionValue.find(params[:option_value_id]).variants
|
|
28
|
+
else
|
|
29
|
+
Spree::Variant
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
module Spree
|
|
2
|
+
class BaseSerializer < ActiveModel::Serializer
|
|
3
|
+
def image_links(object)
|
|
4
|
+
{
|
|
5
|
+
original: object.url(:original),
|
|
6
|
+
mini: object.url(:mini),
|
|
7
|
+
small: object.url(:small),
|
|
8
|
+
product: object.url(:product),
|
|
9
|
+
large: object.url(:large)
|
|
10
|
+
}
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
module Spree
|
|
2
|
+
class ErrorSerializer
|
|
3
|
+
attr_accessor :resource, :options
|
|
4
|
+
|
|
5
|
+
def initialize(resource, options = {})
|
|
6
|
+
@resource = resource
|
|
7
|
+
@options = options
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
def as_json
|
|
11
|
+
{ errors: error_messages }.to_json
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
private
|
|
15
|
+
|
|
16
|
+
def resource_error_objects(messages)
|
|
17
|
+
messages.map do |title, detail|
|
|
18
|
+
if title.is_a?(Hash) && title[:title]
|
|
19
|
+
error_object title[:title], title[:detail]
|
|
20
|
+
else
|
|
21
|
+
pointer = "data/attributes/#{title.to_s.split('.').join('/')}"
|
|
22
|
+
error_object title.to_s.gsub('.', ' '), detail.to_sentence, pointer: pointer
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
def error_messages
|
|
28
|
+
case resource
|
|
29
|
+
when Symbol
|
|
30
|
+
title_translation = Spree.t("api.errors.#{resource}.title")
|
|
31
|
+
detail_translation = Spree.t("api.errors.#{resource}.detail")
|
|
32
|
+
[error_object(title_translation, detail_translation)]
|
|
33
|
+
when Array
|
|
34
|
+
resource.map do |errors|
|
|
35
|
+
resource_error_objects errors
|
|
36
|
+
end.flatten
|
|
37
|
+
else
|
|
38
|
+
resource_error_objects resource.errors.messages
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
def error_object(title, detail, pointer: '')
|
|
43
|
+
error = {
|
|
44
|
+
detail: detail.gsub("\n", ' ').strip,
|
|
45
|
+
meta: options,
|
|
46
|
+
title: title.to_s.titleize
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
pointer.present? ? error.merge(pointer: pointer) : error
|
|
50
|
+
end
|
|
51
|
+
end
|
|
52
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
module Spree
|
|
2
|
+
class LineItemSerializer < Spree::BaseSerializer
|
|
3
|
+
attributes :id, :quantity, :variant_id, :order_id, :currency, :cost_price,
|
|
4
|
+
:adjustment_total, :additional_tax_total, :price
|
|
5
|
+
|
|
6
|
+
%w(amount total).each do |money_method|
|
|
7
|
+
attributes money_method, "display_#{money_method}"
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
belongs_to :order
|
|
11
|
+
belongs_to :variant
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
module Spree
|
|
2
|
+
class OrderSerializer < Spree::BaseSerializer
|
|
3
|
+
attributes :email, :number, :state, :completed_at, :shipment_state,
|
|
4
|
+
:payment_state, :special_instructions, :currency, :channel,
|
|
5
|
+
:item_count, :approved_at, :confirmation_delivered,
|
|
6
|
+
:considered_risky, :canceled_at, :payment_total, :total,
|
|
7
|
+
:display_total
|
|
8
|
+
|
|
9
|
+
%w(
|
|
10
|
+
item adjustment shipment promo additional_tax included_tax
|
|
11
|
+
).each do |money_method|
|
|
12
|
+
attributes "#{money_method}_total", "display_#{money_method}_total"
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
has_one :user
|
|
16
|
+
has_one :bill_address
|
|
17
|
+
has_one :ship_address
|
|
18
|
+
|
|
19
|
+
has_many :line_items
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
module Spree
|
|
2
|
+
class ProductSerializer < Spree::BaseSerializer
|
|
3
|
+
attributes :name, :description, :slug, :meta_description, :meta_keywords
|
|
4
|
+
|
|
5
|
+
has_one :master
|
|
6
|
+
|
|
7
|
+
has_many :variants
|
|
8
|
+
has_many :taxons
|
|
9
|
+
has_many :option_types
|
|
10
|
+
has_many :images
|
|
11
|
+
end
|
|
12
|
+
end
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
module Spree
|
|
2
|
+
class TaxonSerializer < Spree::BaseSerializer
|
|
3
|
+
attributes :name, :permalink, :position, :description, :meta_title, :links,
|
|
4
|
+
:meta_description, :meta_keywords, :depth
|
|
5
|
+
|
|
6
|
+
belongs_to :taxonomy
|
|
7
|
+
belongs_to :parent, serializer: TaxonSerializer
|
|
8
|
+
has_many :children, serializer: TaxonSerializer
|
|
9
|
+
|
|
10
|
+
private
|
|
11
|
+
|
|
12
|
+
def links
|
|
13
|
+
image_links object.icon
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
module Spree
|
|
2
|
+
class VariantSerializer < Spree::BaseSerializer
|
|
3
|
+
attributes :sku, :weight, :height, :width, :depth, :is_master, :position,
|
|
4
|
+
:name, :price, :display_price
|
|
5
|
+
|
|
6
|
+
has_many :prices
|
|
7
|
+
has_many :option_values
|
|
8
|
+
has_many :images
|
|
9
|
+
|
|
10
|
+
belongs_to :product
|
|
11
|
+
end
|
|
12
|
+
end
|
data/bin/rails
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# This command will automatically be run when you run "rails" with Rails 3 gems installed from the root of your application.
|
|
2
|
+
|
|
3
|
+
ENGINE_ROOT = File.expand_path('../..', __FILE__)
|
|
4
|
+
ENGINE_PATH = File.expand_path('../../lib/spree_api_v2/engine', __FILE__)
|
|
5
|
+
|
|
6
|
+
require 'rails/all'
|
|
7
|
+
require 'rails/engine/commands'
|
data/circle.yml
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
en:
|
|
2
|
+
spree:
|
|
3
|
+
api:
|
|
4
|
+
errors:
|
|
5
|
+
invalid_token:
|
|
6
|
+
detail: 'Your token is invalid, please use a different one.'
|
|
7
|
+
title: Invalid Token
|
|
8
|
+
order_complete:
|
|
9
|
+
detail: This order has been completed.
|
|
10
|
+
title: Order Complete
|
|
11
|
+
product_out_of_stock:
|
|
12
|
+
title: Product is out of Stock
|
|
13
|
+
detail: >
|
|
14
|
+
This product is out of stock for the selected quantity.
|
|
15
|
+
record_not_found:
|
|
16
|
+
title: Record Not Found
|
|
17
|
+
detail: >
|
|
18
|
+
One of the records that you were looking for could not be found.
|
|
19
|
+
Please check to see if the record exists or if you're permitted to
|
|
20
|
+
read it.
|
|
21
|
+
quantity_too_high:
|
|
22
|
+
title: Quantity is too High
|
|
23
|
+
detail: >
|
|
24
|
+
The quantity that you have submitted is astronomically high, please
|
|
25
|
+
tone it down a bit.
|
data/config/routes.rb
ADDED
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
Spree::Core::Engine.routes.draw do
|
|
2
|
+
namespace :api, defaults: { format: :json } do
|
|
3
|
+
namespace :v2 do
|
|
4
|
+
resources :countries, only: [:index, :show] do
|
|
5
|
+
resources :states, only: [:index, :show]
|
|
6
|
+
end
|
|
7
|
+
|
|
8
|
+
resources :images, only: [:index, :show] do
|
|
9
|
+
resource :product, :variant, only: :show
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
resources :line_items, only: :create
|
|
13
|
+
|
|
14
|
+
resources :option_types, only: [:index, :show] do
|
|
15
|
+
resources :option_values, :products, only: [:index, :show]
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
resources :option_values, only: [:index, :show] do
|
|
19
|
+
resource :option_type, only: :show
|
|
20
|
+
resources :variants, only: [:index, :show]
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
resources :orders, only: :show
|
|
24
|
+
|
|
25
|
+
resources :prices, only: [:index, :show] do
|
|
26
|
+
resource :variant, :product, only: :show
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
resources :products, only: [:index, :show] do
|
|
30
|
+
resources :option_types, :variants, :images, only: [:index, :show]
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
resources :states, only: [:index, :show] do
|
|
34
|
+
resource :country, only: :show
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
resources :taxonomies, only: [:index, :show] do
|
|
38
|
+
resources :taxons, only: [:index, :show]
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
resources :taxons, only: [:index, :show] do
|
|
42
|
+
resources :children, :products, only: [:index, :show]
|
|
43
|
+
resource :parent, only: :show, controller: 'taxons'
|
|
44
|
+
resource :taxonomy, only: :show
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
resources :variants, only: [:index, :show] do
|
|
48
|
+
resources :prices, :option_values, :images, only: [:index, :show]
|
|
49
|
+
resource :product, only: :show
|
|
50
|
+
end
|
|
51
|
+
end
|
|
52
|
+
end
|
|
53
|
+
end
|
data/docs/.nojekyll
ADDED
|
File without changes
|
data/docs/Dockerfile
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
FROM ubuntu:trusty
|
|
2
|
+
|
|
3
|
+
RUN apt-get update
|
|
4
|
+
RUN apt-get install -yq ruby ruby-dev build-essential git
|
|
5
|
+
RUN gem install --no-ri --no-rdoc bundler
|
|
6
|
+
ADD Gemfile /app/Gemfile
|
|
7
|
+
ADD Gemfile.lock /app/Gemfile.lock
|
|
8
|
+
RUN cd /app; bundle install
|
|
9
|
+
ADD . /app
|
|
10
|
+
EXPOSE 4567
|
|
11
|
+
WORKDIR /app
|
|
12
|
+
CMD ["bundle", "exec", "middleman", "server"]
|
data/docs/Gemfile
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
source 'https://rubygems.org'
|
|
2
|
+
ruby '2.2.3'
|
|
3
|
+
|
|
4
|
+
# Middleman
|
|
5
|
+
gem 'middleman', '~>3.3.10'
|
|
6
|
+
gem 'middleman-gh-pages', '~> 0.0.3'
|
|
7
|
+
gem 'middleman-syntax', '~> 2.0.0'
|
|
8
|
+
gem 'middleman-autoprefixer', '~> 2.4.4'
|
|
9
|
+
gem 'rouge', '~> 1.9.0'
|
|
10
|
+
gem 'redcarpet', '~> 3.3.2'
|
|
11
|
+
|
|
12
|
+
gem 'rake', '~> 10.4.2'
|
|
13
|
+
gem 'therubyracer', '~> 0.12.2', platforms: :ruby
|
data/docs/README.md
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# Documentation for the Spree API V2
|
|
2
|
+
|
|
3
|
+
The documentation is hand written and forked from [Slate](https://github.com/tripit/slate).
|
|
4
|
+
Please update these docs when you make a contribution.
|
|
5
|
+
|
|
6
|
+
## Setup
|
|
7
|
+
|
|
8
|
+
```shell
|
|
9
|
+
cd docs
|
|
10
|
+
bundle
|
|
11
|
+
middleman server
|
|
12
|
+
```
|
data/docs/Rakefile
ADDED
data/docs/config.rb
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
PROJECT_ROOT = File.expand_path '.'
|
|
2
|
+
BUILD_DIR = File.expand_path './../build'
|
|
3
|
+
|
|
4
|
+
# Markdown
|
|
5
|
+
set :markdown_engine, :redcarpet
|
|
6
|
+
set :markdown,
|
|
7
|
+
fenced_code_blocks: true,
|
|
8
|
+
smartypants: true,
|
|
9
|
+
disable_indented_code_blocks: true,
|
|
10
|
+
prettify: true,
|
|
11
|
+
tables: true,
|
|
12
|
+
with_toc_data: true,
|
|
13
|
+
no_intra_emphasis: true
|
|
14
|
+
|
|
15
|
+
# Assets
|
|
16
|
+
set :css_dir, 'stylesheets'
|
|
17
|
+
set :js_dir, 'javascripts'
|
|
18
|
+
set :images_dir, 'images'
|
|
19
|
+
set :fonts_dir, 'fonts'
|
|
20
|
+
|
|
21
|
+
# Activate the syntax highlighter
|
|
22
|
+
activate :syntax
|
|
23
|
+
|
|
24
|
+
activate :autoprefixer do |config|
|
|
25
|
+
config.browsers = ['last 2 version', 'Firefox ESR']
|
|
26
|
+
config.cascade = false
|
|
27
|
+
config.inline = true
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
# Github pages require relative links
|
|
31
|
+
activate :relative_assets
|
|
32
|
+
set :relative_links, true
|
|
33
|
+
|
|
34
|
+
# Build Configuration
|
|
35
|
+
set :build_dir, BUILD_DIR
|
|
36
|
+
configure :build do
|
|
37
|
+
activate :minify_css
|
|
38
|
+
activate :minify_javascript
|
|
39
|
+
end
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
{
|
|
2
|
+
"IcoMoonType": "selection",
|
|
3
|
+
"icons": [
|
|
4
|
+
{
|
|
5
|
+
"icon": {
|
|
6
|
+
"paths": [
|
|
7
|
+
"M438.857 73.143q119.429 0 220.286 58.857t159.714 159.714 58.857 220.286-58.857 220.286-159.714 159.714-220.286 58.857-220.286-58.857-159.714-159.714-58.857-220.286 58.857-220.286 159.714-159.714 220.286-58.857zM512 785.714v-108.571q0-8-5.143-13.429t-12.571-5.429h-109.714q-7.429 0-13.143 5.714t-5.714 13.143v108.571q0 7.429 5.714 13.143t13.143 5.714h109.714q7.429 0 12.571-5.429t5.143-13.429zM510.857 589.143l10.286-354.857q0-6.857-5.714-10.286-5.714-4.571-13.714-4.571h-125.714q-8 0-13.714 4.571-5.714 3.429-5.714 10.286l9.714 354.857q0 5.714 5.714 10t13.714 4.286h105.714q8 0 13.429-4.286t6-10z"
|
|
8
|
+
],
|
|
9
|
+
"attrs": [],
|
|
10
|
+
"isMulticolor": false,
|
|
11
|
+
"tags": [
|
|
12
|
+
"exclamation-circle"
|
|
13
|
+
],
|
|
14
|
+
"defaultCode": 61546,
|
|
15
|
+
"grid": 14
|
|
16
|
+
},
|
|
17
|
+
"attrs": [],
|
|
18
|
+
"properties": {
|
|
19
|
+
"id": 100,
|
|
20
|
+
"order": 4,
|
|
21
|
+
"prevSize": 28,
|
|
22
|
+
"code": 58880,
|
|
23
|
+
"name": "exclamation-sign",
|
|
24
|
+
"ligatures": ""
|
|
25
|
+
},
|
|
26
|
+
"setIdx": 0,
|
|
27
|
+
"iconIdx": 0
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
"icon": {
|
|
31
|
+
"paths": [
|
|
32
|
+
"M585.143 786.286v-91.429q0-8-5.143-13.143t-13.143-5.143h-54.857v-292.571q0-8-5.143-13.143t-13.143-5.143h-182.857q-8 0-13.143 5.143t-5.143 13.143v91.429q0 8 5.143 13.143t13.143 5.143h54.857v182.857h-54.857q-8 0-13.143 5.143t-5.143 13.143v91.429q0 8 5.143 13.143t13.143 5.143h256q8 0 13.143-5.143t5.143-13.143zM512 274.286v-91.429q0-8-5.143-13.143t-13.143-5.143h-109.714q-8 0-13.143 5.143t-5.143 13.143v91.429q0 8 5.143 13.143t13.143 5.143h109.714q8 0 13.143-5.143t5.143-13.143zM877.714 512q0 119.429-58.857 220.286t-159.714 159.714-220.286 58.857-220.286-58.857-159.714-159.714-58.857-220.286 58.857-220.286 159.714-159.714 220.286-58.857 220.286 58.857 159.714 159.714 58.857 220.286z"
|
|
33
|
+
],
|
|
34
|
+
"attrs": [],
|
|
35
|
+
"isMulticolor": false,
|
|
36
|
+
"tags": [
|
|
37
|
+
"info-circle"
|
|
38
|
+
],
|
|
39
|
+
"defaultCode": 61530,
|
|
40
|
+
"grid": 14
|
|
41
|
+
},
|
|
42
|
+
"attrs": [],
|
|
43
|
+
"properties": {
|
|
44
|
+
"id": 85,
|
|
45
|
+
"order": 3,
|
|
46
|
+
"name": "info-sign",
|
|
47
|
+
"prevSize": 28,
|
|
48
|
+
"code": 58882
|
|
49
|
+
},
|
|
50
|
+
"setIdx": 0,
|
|
51
|
+
"iconIdx": 2
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
"icon": {
|
|
55
|
+
"paths": [
|
|
56
|
+
"M733.714 419.429q0-16-10.286-26.286l-52-51.429q-10.857-10.857-25.714-10.857t-25.714 10.857l-233.143 232.571-129.143-129.143q-10.857-10.857-25.714-10.857t-25.714 10.857l-52 51.429q-10.286 10.286-10.286 26.286 0 15.429 10.286 25.714l206.857 206.857q10.857 10.857 25.714 10.857 15.429 0 26.286-10.857l310.286-310.286q10.286-10.286 10.286-25.714zM877.714 512q0 119.429-58.857 220.286t-159.714 159.714-220.286 58.857-220.286-58.857-159.714-159.714-58.857-220.286 58.857-220.286 159.714-159.714 220.286-58.857 220.286 58.857 159.714 159.714 58.857 220.286z"
|
|
57
|
+
],
|
|
58
|
+
"attrs": [],
|
|
59
|
+
"isMulticolor": false,
|
|
60
|
+
"tags": [
|
|
61
|
+
"check-circle"
|
|
62
|
+
],
|
|
63
|
+
"defaultCode": 61528,
|
|
64
|
+
"grid": 14
|
|
65
|
+
},
|
|
66
|
+
"attrs": [],
|
|
67
|
+
"properties": {
|
|
68
|
+
"id": 83,
|
|
69
|
+
"order": 9,
|
|
70
|
+
"prevSize": 28,
|
|
71
|
+
"code": 58886,
|
|
72
|
+
"name": "ok-sign"
|
|
73
|
+
},
|
|
74
|
+
"setIdx": 0,
|
|
75
|
+
"iconIdx": 6
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
"icon": {
|
|
79
|
+
"paths": [
|
|
80
|
+
"M658.286 475.429q0-105.714-75.143-180.857t-180.857-75.143-180.857 75.143-75.143 180.857 75.143 180.857 180.857 75.143 180.857-75.143 75.143-180.857zM950.857 950.857q0 29.714-21.714 51.429t-51.429 21.714q-30.857 0-51.429-21.714l-196-195.429q-102.286 70.857-228 70.857-81.714 0-156.286-31.714t-128.571-85.714-85.714-128.571-31.714-156.286 31.714-156.286 85.714-128.571 128.571-85.714 156.286-31.714 156.286 31.714 128.571 85.714 85.714 128.571 31.714 156.286q0 125.714-70.857 228l196 196q21.143 21.143 21.143 51.429z"
|
|
81
|
+
],
|
|
82
|
+
"width": 951,
|
|
83
|
+
"attrs": [],
|
|
84
|
+
"isMulticolor": false,
|
|
85
|
+
"tags": [
|
|
86
|
+
"search"
|
|
87
|
+
],
|
|
88
|
+
"defaultCode": 61442,
|
|
89
|
+
"grid": 14
|
|
90
|
+
},
|
|
91
|
+
"attrs": [],
|
|
92
|
+
"properties": {
|
|
93
|
+
"id": 2,
|
|
94
|
+
"order": 1,
|
|
95
|
+
"prevSize": 28,
|
|
96
|
+
"code": 58887,
|
|
97
|
+
"name": "icon-search"
|
|
98
|
+
},
|
|
99
|
+
"setIdx": 0,
|
|
100
|
+
"iconIdx": 7
|
|
101
|
+
}
|
|
102
|
+
],
|
|
103
|
+
"height": 1024,
|
|
104
|
+
"metadata": {
|
|
105
|
+
"name": "slate",
|
|
106
|
+
"license": "SIL OFL 1.1"
|
|
107
|
+
},
|
|
108
|
+
"preferences": {
|
|
109
|
+
"showGlyphs": true,
|
|
110
|
+
"showQuickUse": true,
|
|
111
|
+
"showQuickUse2": true,
|
|
112
|
+
"showSVGs": true,
|
|
113
|
+
"fontPref": {
|
|
114
|
+
"prefix": "icon-",
|
|
115
|
+
"metadata": {
|
|
116
|
+
"fontFamily": "slate",
|
|
117
|
+
"majorVersion": 1,
|
|
118
|
+
"minorVersion": 0,
|
|
119
|
+
"description": "Based on FontAwesome",
|
|
120
|
+
"license": "SIL OFL 1.1"
|
|
121
|
+
},
|
|
122
|
+
"metrics": {
|
|
123
|
+
"emSize": 1024,
|
|
124
|
+
"baseline": 6.25,
|
|
125
|
+
"whitespace": 50
|
|
126
|
+
},
|
|
127
|
+
"resetPoint": 58880,
|
|
128
|
+
"showSelector": false,
|
|
129
|
+
"selector": "class",
|
|
130
|
+
"classSelector": ".icon",
|
|
131
|
+
"showMetrics": false,
|
|
132
|
+
"showMetadata": true,
|
|
133
|
+
"showVersion": true,
|
|
134
|
+
"ie7": false
|
|
135
|
+
},
|
|
136
|
+
"imagePref": {
|
|
137
|
+
"prefix": "icon-",
|
|
138
|
+
"png": true,
|
|
139
|
+
"useClassSelector": true,
|
|
140
|
+
"color": 4473924,
|
|
141
|
+
"bgColor": 16777215
|
|
142
|
+
},
|
|
143
|
+
"historySize": 100,
|
|
144
|
+
"showCodes": true,
|
|
145
|
+
"gridSize": 16,
|
|
146
|
+
"showLiga": false
|
|
147
|
+
}
|
|
148
|
+
}
|
|
Binary file
|