kuppayam 0.1.8 → 0.1.10

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 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