kuppayam 0.1.8 → 0.1.10

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3e6d8c576d666102da95a6bd1dc4af373a5ec742
4
- data.tar.gz: 653a6d5d45d08db84f9c40b63da4cec7871ac38f
3
+ metadata.gz: a97f179b81a0f520c6c8ad85e688729cf248df34
4
+ data.tar.gz: f8741775eae363062f3cd599badf3d14937ba2b5
5
5
  SHA512:
6
- metadata.gz: a212d03a6e337fab7136bd27b61396db1fe2b8b55c08edef17b5ed1f40c1c9441b850c8b57ed2a75f786cf3edaeedd0b052a6ac23c35d73b049a86403d042745
7
- data.tar.gz: 4fa435d7916d5fe33612a6e32d13f957b7b4a704a88406d8dcc75ad7701455f0f0051ff9d45e51a8295a737a9717952b812c4bcc9002d5f2c66a355647ca762b
6
+ metadata.gz: 6a83cad2bddf5e72cc8eb4ed8760a138f53f919e5b45f6d597085e90ca20c63c56a6349734aa3432b6a8c482609ef69e5b09996a017247c24eccdd12b96a0e91
7
+ data.tar.gz: 037c7fd5d131dc816ad241676c90bcb6b98c942c276b6bf41c8a646ae8c06abd70d41c2454643d4af2b6256c4394ee81656ee95af09155e578c4298be8d5cb79
@@ -0,0 +1,46 @@
1
+ module RenderApiHelper
2
+ def embed_stack_in_json_response?
3
+ return true if Rails.env.development?
4
+ Rails.env.production? && ["true", "t", "1", "yes"].include?(params[:debug].to_s.downcase.strip)
5
+ end
6
+
7
+ ## This method will accept a proc, execute it and render the json
8
+ def render_json_response(proc_code)
9
+
10
+ begin
11
+ proc_code.call
12
+ @success = @success == false ? (false) : (true)
13
+ rescue Exception => e
14
+ @success = false
15
+ @errors = {
16
+ heading: I18n.translate("api.general.unexpected_failure.heading"),
17
+ message: I18n.translate("api.general.unexpected_failure.message"),
18
+ details: e.message,
19
+ stacktrace: (embed_stack_in_json_response? ? e.backtrace : nil)
20
+ }
21
+ end
22
+ @status ||= 200
23
+
24
+ response_hash = {success: @success}
25
+ response_hash[:alert] = @alert unless @alert.blank?
26
+ response_hash[:data] = @data unless @data.blank?
27
+ response_hash[:errors] = @errors unless @errors.blank?
28
+
29
+ response_hash[:total_data] = @total_data unless @total_data.blank?
30
+ response_hash[:per_page] = @per_page unless @per_page.blank?
31
+ response_hash[:current_page] = @current_page unless @current_page.blank?
32
+
33
+ render status: @status, json: response_hash
34
+ return
35
+ end
36
+
37
+ private
38
+
39
+ def breadcrumbs_configuration
40
+ {
41
+ heading: "Usman - API Documentation",
42
+ description: "A brief documentation of all APIs implemented in the gem Usman with input and output details and examples",
43
+ links: []
44
+ }
45
+ end
46
+ end
@@ -0,0 +1,26 @@
1
+ <%
2
+ unless defined?(negative_case)
3
+ negative_case = false
4
+ end
5
+ panel_class = negative_case ? "panel-negative" : "panel-positive"
6
+ %>
7
+
8
+ <div class="panel panel-default <%= panel_class %>" style="width:100%;">
9
+ <div class="panel-heading">
10
+ <h4 class="panel-title">
11
+ <a data-toggle="collapse" data-parent="#<%= example_id %>" href="#<%= example_id %>" class="collapsed" aria-expanded="false">
12
+ <%= api_title %>
13
+ </a>
14
+ </h4>
15
+ </div>
16
+
17
+ <div id="<%= example_id %>" class="panel-collapse collapse" aria-expanded="false" style="height: 0px;">
18
+ <div class="panel-body">
19
+ <br><br><div class="mt-10 mb-20">Input</div><br>
20
+ <pre class="prettyprint lang-js" style="padding: 20px;border: 0px solid #888;background-color: aliceblue;"><%= api_input %></pre>
21
+
22
+ <br><br><div class="mt-10 mb-20">Output</div><br>
23
+ <pre class="prettyprint lang-js" style="padding: 20px;border: 0px solid #888;background-color: aliceblue;"><%= api_output %></pre>
24
+ </div>
25
+ </div>
26
+ </div>
@@ -0,0 +1,19 @@
1
+ <ul class="nav tabs-vertical">
2
+ <li class="<%= nav_active?('docs/end_point_1') ? 'active' : '' %>">
3
+ <a href="/docs/api/v1/end_point_1">
4
+ <i class="fa-globe visible-xs"></i>
5
+ <span class="hidden-xs">API End Point 1</span>
6
+ </a>
7
+ </li>
8
+ <li class="<%= nav_active?('docs/end_point_2') ? 'active' : '' %>">
9
+ <a href="/docs/api/v1/end_point_1">
10
+ <i class="fa-globe visible-xs"></i>
11
+ <span class="hidden-xs">API End Point 2</span>
12
+ </a>
13
+ </li>
14
+ </ul>
15
+
16
+ <style type="text/css">
17
+ .panel-positive h4.panel-title a { color: #68b828 !important; }
18
+ .panel-negative h4.panel-title a { color: #cc3f44 !important; }
19
+ </style>
@@ -0,0 +1,94 @@
1
+ <div class="tabs-vertical-env">
2
+
3
+ <%= render partial: "kuppayam/api/docs/navigation" %>
4
+
5
+ <div class="tab-content">
6
+ <div class="tab-pane active" id="<%= params[:action] %>">
7
+
8
+ <h3><span class="text-success"><%= @title %></span></h3>
9
+ <p><code><strong><%= @request_type %></strong> <%= request.base_url %><%= @end_point %></code></p>
10
+
11
+ <% if @description %>
12
+ <p class="text-primary"><%= @description %></p>
13
+ <% end %>
14
+
15
+ <% if @warning %>
16
+ <p class="alert alert-danger mt-40"><%= @warning %></p>
17
+ <% end %>
18
+
19
+ <% if @info %>
20
+ <p class="alert alert-info mt-40"><%= @info %></p>
21
+ <% end %>
22
+
23
+ <br>
24
+
25
+ <% if @input_headers && @input_headers.any? %>
26
+ <h4 style="color:#4b4b4b">Headers</h4>
27
+
28
+ <div class="table-responsive table-scrollable">
29
+ <table class="table table-striped table-condensed table-bordered">
30
+ <thead>
31
+ <tr>
32
+ <th>Key</th>
33
+ <th>Value</th>
34
+ <th>Description</th>
35
+ </tr>
36
+ </thead>
37
+
38
+ <tbody>
39
+ <% @input_headers.each do |key, value| %>
40
+ <tr>
41
+ <td style="width:160px;"><%= key.to_s.titleize %></td>
42
+ <td style="width:160px;"><%= value[:value] %></td>
43
+ <td><%= value[:description] %></td>
44
+ </tr>
45
+ <% end %>
46
+ </tbody>
47
+ </table>
48
+ </div>
49
+ <% end %>
50
+
51
+ <% if @input_params && @input_params.any? %>
52
+ <h4 style="color:#4b4b4b">Input Parameters</h4>
53
+
54
+ <div class="table-responsive table-scrollable">
55
+ <table class="table table-striped table-condensed table-bordered">
56
+ <thead>
57
+ <tr>
58
+ <th>Name</th>
59
+ <th>Mandatory</th>
60
+ <th>Description</th>
61
+ <th>Example</th>
62
+ <th>Default</th>
63
+ </tr>
64
+ </thead>
65
+
66
+ <tbody>
67
+ <% @input_params.each do |key, value| %>
68
+ <tr>
69
+ <td style="width:160px;"><%= key.to_s.camelcase %></td>
70
+ <td style="width:100px;"><%= value[:mandatory] %></td>
71
+ <td><%= value[:description] %></td>
72
+ <td style="width:200px;"><%= value[:example] %></td>
73
+ <td style="width:100px;"><%= value[:default] %></td>
74
+ </tr>
75
+ <% end %>
76
+ </tbody>
77
+ </table>
78
+ </div>
79
+ <% end %>
80
+
81
+ <% if @examples && @examples.any? %>
82
+ <br><br><br>
83
+ <h4 style="color:#4b4b4b">Examples</h4>
84
+ <br>
85
+
86
+ <div class="panel-group panel-group-joined">
87
+ <% @examples.each do |e| %>
88
+ <%= render partial: "#{@example_path}/#{params[:action]}/#{e}" %>
89
+ <% end %>
90
+ </div>
91
+ <% end %>
92
+ </div>
93
+ </div>
94
+ </div>
@@ -3,6 +3,8 @@
3
3
  <head>
4
4
  <!-- Head -->
5
5
  <%= render :partial=>"/layouts/kuppayam/head" -%>
6
+
7
+ <script src="https://cdn.rawgit.com/google/code-prettify/master/loader/run_prettify.js"></script>
6
8
  </head>
7
9
 
8
10
  <body class="page-body">
@@ -0,0 +1,8 @@
1
+ en:
2
+ activerecord:
3
+ errors:
4
+ models:
5
+ user:
6
+ attributes:
7
+ password:
8
+ invalid: "Password should contain at least one special character, one integer and one upper case character."
@@ -0,0 +1,8 @@
1
+ en:
2
+ activerecord:
3
+ errors:
4
+ models:
5
+ user:
6
+ attributes:
7
+ password:
8
+ invalid: "Password should contain at least one special character, one integer and one upper case character."
@@ -0,0 +1,6 @@
1
+ en:
2
+ api:
3
+ general:
4
+ unexpected_failure:
5
+ heading: "Unexpected Failure"
6
+ message: "We're sorry, but something went wrong (500)"
@@ -0,0 +1,6 @@
1
+ en:
2
+ api:
3
+ general:
4
+ unexpected_failure:
5
+ heading: "Unexpected Failure"
6
+ message: "We're sorry, but something went wrong (500)"
@@ -0,0 +1,30 @@
1
+ en:
2
+ status:
3
+ success: "Success!"
4
+ error: "Error! Need your attention!"
5
+ internal_server_error: "500 - Something went wrong."
6
+ forbidden: "403 - Permission Denied! You don't have permission to perform this action."
7
+ not_found: "404 - Not Found: We don't have what you are looking for."
8
+ invalid_authenticity_token_heading: "Invalid Authenticity Token"
9
+ invalid_authenticity_token_message: "The Page / Action you have requested is not available at this moment. Please try again after refreshing the page."
10
+ invalid_token:
11
+ heading: "Invalid Authentation Token"
12
+ message: "The Page / Action you have requested is not available at this moment. Please try again after refreshing the page."
13
+ errors:
14
+ errors_highlighted: "You have few errors. They have been highlighted."
15
+ failed_to_save: "Failed to save %{item}."
16
+ failed_to_create: "Failed to create %{item}."
17
+ failed_to_update: "Failed to update %{item}."
18
+ failed_to_delete: "Failed to delete %{item}. Please delete all associated data with the %{item} and try again."
19
+ success:
20
+ saved: "%{item} has been saved successfully."
21
+ added: "%{item} has been added successfully."
22
+ created: "%{item} has been created successfully."
23
+ updated: "%{item} has been updated successfully."
24
+ deleted: "%{item} has been deleted successfully."
25
+ removed: "%{item} has been removed successfully."
26
+ uploaded: "%{item} has been uploaded successfully."
27
+ no_results_found: "No results found."
28
+ state:
29
+ changed: "%{item} has been %{new_state}."
30
+
@@ -23,7 +23,7 @@ module Kuppayam
23
23
  end
24
24
 
25
25
  config.generators do |g|
26
- g.test_framework :rspec, :fixture => false
26
+ g.test_framework :rspec, :fixture => false
27
27
  g.fixture_replacement :factory_girl, :dir => 'spec/factories'
28
28
  g.assets false
29
29
  g.helper false
@@ -1,3 +1,3 @@
1
1
  module Kuppayam
2
- VERSION = '0.1.8'
2
+ VERSION = '0.1.10'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kuppayam
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.8
4
+ version: 0.1.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - kpvarma
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-08-28 00:00:00.000000000 Z
11
+ date: 2017-09-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -392,6 +392,7 @@ files:
392
392
  - app/helpers/navigation_helper.rb
393
393
  - app/helpers/notification_helper.rb
394
394
  - app/helpers/params_parser_helper.rb
395
+ - app/helpers/render_api_helper.rb
395
396
  - app/helpers/render_helper.rb
396
397
  - app/helpers/resource_helper.rb
397
398
  - app/models/document/base.rb
@@ -410,6 +411,9 @@ files:
410
411
  - app/views/kaminari/_page.html.erb
411
412
  - app/views/kaminari/_paginator.html.erb
412
413
  - app/views/kaminari/_prev_page.html.erb
414
+ - app/views/kuppayam/api/docs/_example.html.erb
415
+ - app/views/kuppayam/api/docs/_navigation.html.erb
416
+ - app/views/kuppayam/api/docs/show.html.erb
413
417
  - app/views/kuppayam/documents/_crop_form.html.erb
414
418
  - app/views/kuppayam/documents/_form.html.erb
415
419
  - app/views/kuppayam/documents/_new.html.erb
@@ -483,7 +487,12 @@ files:
483
487
  - config/initializers/importer.rb
484
488
  - config/initializers/inflections.rb
485
489
  - config/initializers/validators.rb
486
- - config/locales/kuppayam/general.yml
490
+ - config/locales/kuppayam/activerecord.ar.yml
491
+ - config/locales/kuppayam/activerecord.en.yml
492
+ - config/locales/kuppayam/api.ar.yml
493
+ - config/locales/kuppayam/api.en.yml
494
+ - config/locales/kuppayam/general.ar.yml
495
+ - config/locales/kuppayam/general.en.yml
487
496
  - config/routes.rb
488
497
  - db/migrate/20170000000000_create_images.rb
489
498
  - db/migrate/20170000000001_create_documents.rb