istox 0.1.59 → 0.1.60
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 +4 -4
- data/.idea/.rakeTasks +7 -0
- data/.idea/encodings.xml +4 -0
- data/.idea/inspectionProfiles/Project_Default.xml +6 -0
- data/.idea/istox-gem.iml +12 -0
- data/.idea/misc.xml +7 -0
- data/.idea/modules.xml +8 -0
- data/.idea/vcs.xml +6 -0
- data/.idea/workspace.xml +323 -0
- data/README.md +4 -2
- data/istox.gemspec +2 -2
- data/lib/istox.rb +1 -0
- data/lib/istox/helpers/vault.rb +89 -0
- data/lib/istox/version.rb +1 -1
- metadata +40 -3
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 6df187a438469dbdcd93499396e5bd086d7e82fd30b86f2309745017b05e6e85
|
|
4
|
+
data.tar.gz: 0a65c964191f07e0f95afe5801d1ed2ebc5e01bc3b442326a96d2c96f5314cce
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 38877c3c8edd6b2246fc8ffc919fe20319a78b893f9ae022699492351475d2bcc7814364bd67b391fe6a270121352895608b7c2d2d26d9634b69c7a023280379
|
|
7
|
+
data.tar.gz: 92cd75003781fec060f9c7f74a8c4cfa5b76120e9dca70bdc8a8ba1cc3af733cab75776de51399be38c7ac002e42507204c3c5b37861c1c4ad17c5688e8c5e74
|
data/.idea/.rakeTasks
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<Settings><!--This file was automatically generated by Ruby plugin.
|
|
3
|
+
You are allowed to:
|
|
4
|
+
1. Remove rake task
|
|
5
|
+
2. Add existing rake tasks
|
|
6
|
+
To add existing rake tasks automatically delete this file and reload the project.
|
|
7
|
+
--><RakeGroup description="" fullCmd="" taksId="rake" /></Settings>
|
data/.idea/encodings.xml
ADDED
data/.idea/istox-gem.iml
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<module type="RUBY_MODULE" version="4">
|
|
3
|
+
<component name="ModuleRunConfigurationManager">
|
|
4
|
+
<shared />
|
|
5
|
+
</component>
|
|
6
|
+
<component name="NewModuleRootManager">
|
|
7
|
+
<content url="file://$MODULE_DIR$" />
|
|
8
|
+
<orderEntry type="inheritedJdk" />
|
|
9
|
+
<orderEntry type="sourceFolder" forTests="false" />
|
|
10
|
+
<orderEntry type="library" scope="PROVIDED" name="bundler (v1.16.6, RVM: ruby-2.5.3 [global]) [gem]" level="application" />
|
|
11
|
+
</component>
|
|
12
|
+
</module>
|
data/.idea/misc.xml
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<project version="4">
|
|
3
|
+
<component name="JavaScriptSettings">
|
|
4
|
+
<option name="languageLevel" value="ES6" />
|
|
5
|
+
</component>
|
|
6
|
+
<component name="ProjectRootManager" version="2" project-jdk-name="RVM: ruby-2.5.3 [global]" project-jdk-type="RUBY_SDK" />
|
|
7
|
+
</project>
|
data/.idea/modules.xml
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<project version="4">
|
|
3
|
+
<component name="ProjectModuleManager">
|
|
4
|
+
<modules>
|
|
5
|
+
<module fileurl="file://$PROJECT_DIR$/.idea/istox-gem.iml" filepath="$PROJECT_DIR$/.idea/istox-gem.iml" />
|
|
6
|
+
</modules>
|
|
7
|
+
</component>
|
|
8
|
+
</project>
|
data/.idea/vcs.xml
ADDED
data/.idea/workspace.xml
ADDED
|
@@ -0,0 +1,323 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<project version="4">
|
|
3
|
+
<component name="ChangeListManager">
|
|
4
|
+
<list default="true" id="34535e85-0c20-4dc0-afa1-48a1220ef350" name="Default Changelist" comment="">
|
|
5
|
+
<change afterPath="$PROJECT_DIR$/lib/istox/helpers/vault.rb" afterDir="false" />
|
|
6
|
+
<change beforePath="$PROJECT_DIR$/README.md" beforeDir="false" afterPath="$PROJECT_DIR$/README.md" afterDir="false" />
|
|
7
|
+
<change beforePath="$PROJECT_DIR$/istox.gemspec" beforeDir="false" afterPath="$PROJECT_DIR$/istox.gemspec" afterDir="false" />
|
|
8
|
+
<change beforePath="$PROJECT_DIR$/lib/istox.rb" beforeDir="false" afterPath="$PROJECT_DIR$/lib/istox.rb" afterDir="false" />
|
|
9
|
+
<change beforePath="$PROJECT_DIR$/lib/istox/version.rb" beforeDir="false" afterPath="$PROJECT_DIR$/lib/istox/version.rb" afterDir="false" />
|
|
10
|
+
</list>
|
|
11
|
+
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
|
|
12
|
+
<option name="SHOW_DIALOG" value="false" />
|
|
13
|
+
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
|
14
|
+
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
|
|
15
|
+
<option name="LAST_RESOLUTION" value="IGNORE" />
|
|
16
|
+
</component>
|
|
17
|
+
<component name="FileEditorManager">
|
|
18
|
+
<leaf>
|
|
19
|
+
<file pinned="false" current-in-tab="false">
|
|
20
|
+
<entry file="file://$PROJECT_DIR$/lib/istox/version.rb">
|
|
21
|
+
<provider selected="true" editor-type-id="text-editor">
|
|
22
|
+
<state relative-caret-position="45">
|
|
23
|
+
<caret line="3" selection-start-line="3" selection-end-line="3" />
|
|
24
|
+
</state>
|
|
25
|
+
</provider>
|
|
26
|
+
</entry>
|
|
27
|
+
</file>
|
|
28
|
+
<file pinned="false" current-in-tab="false">
|
|
29
|
+
<entry file="file://$PROJECT_DIR$/lib/istox.rb">
|
|
30
|
+
<provider selected="true" editor-type-id="text-editor">
|
|
31
|
+
<state relative-caret-position="45">
|
|
32
|
+
<caret line="3" selection-start-line="3" selection-end-line="3" />
|
|
33
|
+
</state>
|
|
34
|
+
</provider>
|
|
35
|
+
</entry>
|
|
36
|
+
</file>
|
|
37
|
+
<file pinned="false" current-in-tab="false">
|
|
38
|
+
<entry file="file://$PROJECT_DIR$/lib/istox/helpers/grpc_client.rb">
|
|
39
|
+
<provider selected="true" editor-type-id="text-editor">
|
|
40
|
+
<state relative-caret-position="105">
|
|
41
|
+
<caret line="7" selection-start-line="7" selection-end-line="7" />
|
|
42
|
+
</state>
|
|
43
|
+
</provider>
|
|
44
|
+
</entry>
|
|
45
|
+
</file>
|
|
46
|
+
<file pinned="false" current-in-tab="false">
|
|
47
|
+
<entry file="file://$PROJECT_DIR$/lib/istox/models/blockchain_receipt.rb">
|
|
48
|
+
<provider selected="true" editor-type-id="text-editor">
|
|
49
|
+
<state relative-caret-position="165">
|
|
50
|
+
<caret line="11" column="3" selection-start-line="11" selection-start-column="3" selection-end-line="11" selection-end-column="3" />
|
|
51
|
+
</state>
|
|
52
|
+
</provider>
|
|
53
|
+
</entry>
|
|
54
|
+
</file>
|
|
55
|
+
<file pinned="false" current-in-tab="false">
|
|
56
|
+
<entry file="file://$PROJECT_DIR$/Gemfile">
|
|
57
|
+
<provider selected="true" editor-type-id="text-editor">
|
|
58
|
+
<state relative-caret-position="90">
|
|
59
|
+
<caret line="6" selection-start-line="6" selection-end-line="6" />
|
|
60
|
+
</state>
|
|
61
|
+
</provider>
|
|
62
|
+
</entry>
|
|
63
|
+
</file>
|
|
64
|
+
<file pinned="false" current-in-tab="false">
|
|
65
|
+
<entry file="file://$PROJECT_DIR$/README.md">
|
|
66
|
+
<provider selected="true" editor-type-id="split-provider[text-editor;markdown-preview-editor]">
|
|
67
|
+
<state split_layout="SPLIT">
|
|
68
|
+
<first_editor relative-caret-position="120">
|
|
69
|
+
<caret line="8" column="52" selection-start-line="8" selection-start-column="19" selection-end-line="8" selection-end-column="52" />
|
|
70
|
+
</first_editor>
|
|
71
|
+
<second_editor />
|
|
72
|
+
</state>
|
|
73
|
+
</provider>
|
|
74
|
+
</entry>
|
|
75
|
+
</file>
|
|
76
|
+
<file pinned="false" current-in-tab="false">
|
|
77
|
+
<entry file="file://$PROJECT_DIR$/istox.gemspec">
|
|
78
|
+
<provider selected="true" editor-type-id="text-editor">
|
|
79
|
+
<state relative-caret-position="735">
|
|
80
|
+
<caret line="49" selection-start-line="49" selection-end-line="49" />
|
|
81
|
+
</state>
|
|
82
|
+
</provider>
|
|
83
|
+
</entry>
|
|
84
|
+
</file>
|
|
85
|
+
<file pinned="false" current-in-tab="true">
|
|
86
|
+
<entry file="file://$PROJECT_DIR$/lib/istox/helpers/vault.rb">
|
|
87
|
+
<provider selected="true" editor-type-id="text-editor">
|
|
88
|
+
<state relative-caret-position="-320">
|
|
89
|
+
<caret line="28" column="60" lean-forward="true" selection-start-line="28" selection-start-column="60" selection-end-line="28" selection-end-column="60" />
|
|
90
|
+
</state>
|
|
91
|
+
</provider>
|
|
92
|
+
</entry>
|
|
93
|
+
</file>
|
|
94
|
+
<file pinned="false" current-in-tab="false">
|
|
95
|
+
<entry file="file://$PROJECT_DIR$/Gemfile.lock">
|
|
96
|
+
<provider selected="true" editor-type-id="text-editor" />
|
|
97
|
+
</entry>
|
|
98
|
+
</file>
|
|
99
|
+
</leaf>
|
|
100
|
+
</component>
|
|
101
|
+
<component name="Git.Settings">
|
|
102
|
+
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
|
|
103
|
+
</component>
|
|
104
|
+
<component name="IdeDocumentHistory">
|
|
105
|
+
<option name="CHANGED_PATHS">
|
|
106
|
+
<list>
|
|
107
|
+
<option value="$PROJECT_DIR$/istox.gemspec" />
|
|
108
|
+
<option value="$PROJECT_DIR$/lib/istox.rb" />
|
|
109
|
+
<option value="$PROJECT_DIR$/README.md" />
|
|
110
|
+
<option value="$PROJECT_DIR$/lib/istox/version.rb" />
|
|
111
|
+
<option value="$PROJECT_DIR$/lib/istox/helpers/vault.rb" />
|
|
112
|
+
</list>
|
|
113
|
+
</option>
|
|
114
|
+
</component>
|
|
115
|
+
<component name="ProjectFrameBounds" extendedState="6">
|
|
116
|
+
<option name="y" value="23" />
|
|
117
|
+
<option name="width" value="1440" />
|
|
118
|
+
<option name="height" value="852" />
|
|
119
|
+
</component>
|
|
120
|
+
<component name="ProjectView">
|
|
121
|
+
<navigator proportions="" version="1">
|
|
122
|
+
<foldersAlwaysOnTop value="true" />
|
|
123
|
+
</navigator>
|
|
124
|
+
<panes>
|
|
125
|
+
<pane id="ProjectPane">
|
|
126
|
+
<subPane>
|
|
127
|
+
<expand>
|
|
128
|
+
<path>
|
|
129
|
+
<item name="istox-gem" type="b2602c69:ProjectViewProjectNode" />
|
|
130
|
+
<item name="istox-gem" type="462c0819:PsiDirectoryNode" />
|
|
131
|
+
</path>
|
|
132
|
+
<path>
|
|
133
|
+
<item name="istox-gem" type="b2602c69:ProjectViewProjectNode" />
|
|
134
|
+
<item name="istox-gem" type="462c0819:PsiDirectoryNode" />
|
|
135
|
+
<item name="lib" type="462c0819:PsiDirectoryNode" />
|
|
136
|
+
</path>
|
|
137
|
+
<path>
|
|
138
|
+
<item name="istox-gem" type="b2602c69:ProjectViewProjectNode" />
|
|
139
|
+
<item name="istox-gem" type="462c0819:PsiDirectoryNode" />
|
|
140
|
+
<item name="lib" type="462c0819:PsiDirectoryNode" />
|
|
141
|
+
<item name="istox" type="462c0819:PsiDirectoryNode" />
|
|
142
|
+
</path>
|
|
143
|
+
<path>
|
|
144
|
+
<item name="istox-gem" type="b2602c69:ProjectViewProjectNode" />
|
|
145
|
+
<item name="istox-gem" type="462c0819:PsiDirectoryNode" />
|
|
146
|
+
<item name="lib" type="462c0819:PsiDirectoryNode" />
|
|
147
|
+
<item name="istox" type="462c0819:PsiDirectoryNode" />
|
|
148
|
+
<item name="helpers" type="462c0819:PsiDirectoryNode" />
|
|
149
|
+
</path>
|
|
150
|
+
<path>
|
|
151
|
+
<item name="istox-gem" type="b2602c69:ProjectViewProjectNode" />
|
|
152
|
+
<item name="istox-gem" type="462c0819:PsiDirectoryNode" />
|
|
153
|
+
<item name="lib" type="462c0819:PsiDirectoryNode" />
|
|
154
|
+
<item name="istox" type="462c0819:PsiDirectoryNode" />
|
|
155
|
+
<item name="interfaces" type="462c0819:PsiDirectoryNode" />
|
|
156
|
+
</path>
|
|
157
|
+
<path>
|
|
158
|
+
<item name="istox-gem" type="b2602c69:ProjectViewProjectNode" />
|
|
159
|
+
<item name="istox-gem" type="462c0819:PsiDirectoryNode" />
|
|
160
|
+
<item name="lib" type="462c0819:PsiDirectoryNode" />
|
|
161
|
+
<item name="istox" type="462c0819:PsiDirectoryNode" />
|
|
162
|
+
<item name="models" type="462c0819:PsiDirectoryNode" />
|
|
163
|
+
</path>
|
|
164
|
+
<path>
|
|
165
|
+
<item name="istox-gem" type="b2602c69:ProjectViewProjectNode" />
|
|
166
|
+
<item name="istox-gem" type="462c0819:PsiDirectoryNode" />
|
|
167
|
+
<item name="lib" type="462c0819:PsiDirectoryNode" />
|
|
168
|
+
<item name="istox" type="462c0819:PsiDirectoryNode" />
|
|
169
|
+
<item name="models" type="462c0819:PsiDirectoryNode" />
|
|
170
|
+
<item name="concerns" type="462c0819:PsiDirectoryNode" />
|
|
171
|
+
</path>
|
|
172
|
+
<path>
|
|
173
|
+
<item name="istox-gem" type="b2602c69:ProjectViewProjectNode" />
|
|
174
|
+
<item name="istox-gem" type="462c0819:PsiDirectoryNode" />
|
|
175
|
+
<item name="spec" type="462c0819:PsiDirectoryNode" />
|
|
176
|
+
</path>
|
|
177
|
+
</expand>
|
|
178
|
+
<select />
|
|
179
|
+
</subPane>
|
|
180
|
+
</pane>
|
|
181
|
+
<pane id="Scope" />
|
|
182
|
+
</panes>
|
|
183
|
+
</component>
|
|
184
|
+
<component name="PropertiesComponent">
|
|
185
|
+
<property name="WebServerToolWindowFactoryState" value="false" />
|
|
186
|
+
<property name="last_opened_file_path" value="$PROJECT_DIR$" />
|
|
187
|
+
<property name="nodejs_interpreter_path.stuck_in_default_project" value="undefined stuck path" />
|
|
188
|
+
<property name="nodejs_npm_path_reset_for_default_project" value="true" />
|
|
189
|
+
</component>
|
|
190
|
+
<component name="RunDashboard">
|
|
191
|
+
<option name="ruleStates">
|
|
192
|
+
<list>
|
|
193
|
+
<RuleState>
|
|
194
|
+
<option name="name" value="ConfigurationTypeDashboardGroupingRule" />
|
|
195
|
+
</RuleState>
|
|
196
|
+
<RuleState>
|
|
197
|
+
<option name="name" value="StatusDashboardGroupingRule" />
|
|
198
|
+
</RuleState>
|
|
199
|
+
</list>
|
|
200
|
+
</option>
|
|
201
|
+
</component>
|
|
202
|
+
<component name="SpringUtil" SPRING_PRE_LOADER_OPTION="true" />
|
|
203
|
+
<component name="SvnConfiguration">
|
|
204
|
+
<configuration />
|
|
205
|
+
</component>
|
|
206
|
+
<component name="TaskManager">
|
|
207
|
+
<task active="true" id="Default" summary="Default task">
|
|
208
|
+
<changelist id="34535e85-0c20-4dc0-afa1-48a1220ef350" name="Default Changelist" comment="" />
|
|
209
|
+
<created>1560334369924</created>
|
|
210
|
+
<option name="number" value="Default" />
|
|
211
|
+
<option name="presentableId" value="Default" />
|
|
212
|
+
<updated>1560334369924</updated>
|
|
213
|
+
<workItem from="1560334371589" duration="14024000" />
|
|
214
|
+
</task>
|
|
215
|
+
<servers />
|
|
216
|
+
</component>
|
|
217
|
+
<component name="TimeTrackingManager">
|
|
218
|
+
<option name="totallyTimeSpent" value="14024000" />
|
|
219
|
+
</component>
|
|
220
|
+
<component name="ToolWindowManager">
|
|
221
|
+
<frame x="0" y="23" width="1440" height="852" extended-state="6" />
|
|
222
|
+
<editor active="true" />
|
|
223
|
+
<layout>
|
|
224
|
+
<window_info id="Favorites" side_tool="true" />
|
|
225
|
+
<window_info active="true" content_ui="combo" id="Project" order="0" visible="true" weight="0.24964234" />
|
|
226
|
+
<window_info id="Structure" order="1" side_tool="true" weight="0.25" />
|
|
227
|
+
<window_info anchor="bottom" id="Docker" show_stripe_button="false" />
|
|
228
|
+
<window_info anchor="bottom" id="Database Changes" />
|
|
229
|
+
<window_info anchor="bottom" id="Version Control" />
|
|
230
|
+
<window_info anchor="bottom" id="Messages" visible="true" weight="0.32971507" />
|
|
231
|
+
<window_info anchor="bottom" id="Terminal" />
|
|
232
|
+
<window_info anchor="bottom" id="Event Log" side_tool="true" />
|
|
233
|
+
<window_info anchor="bottom" id="Message" order="0" />
|
|
234
|
+
<window_info anchor="bottom" id="Find" order="1" />
|
|
235
|
+
<window_info anchor="bottom" id="Run" order="2" />
|
|
236
|
+
<window_info anchor="bottom" id="Debug" order="3" weight="0.4" />
|
|
237
|
+
<window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
|
|
238
|
+
<window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
|
|
239
|
+
<window_info anchor="bottom" id="TODO" order="6" />
|
|
240
|
+
<window_info anchor="right" id="Database" />
|
|
241
|
+
<window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
|
|
242
|
+
<window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
|
|
243
|
+
<window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
|
|
244
|
+
</layout>
|
|
245
|
+
</component>
|
|
246
|
+
<component name="TypeScriptGeneratedFilesManager">
|
|
247
|
+
<option name="version" value="1" />
|
|
248
|
+
</component>
|
|
249
|
+
<component name="editorHistoryManager">
|
|
250
|
+
<entry file="file://$PROJECT_DIR$/lib/istox/models/blockchain_receipt.rb">
|
|
251
|
+
<provider selected="true" editor-type-id="text-editor">
|
|
252
|
+
<state relative-caret-position="165">
|
|
253
|
+
<caret line="11" column="3" selection-start-line="11" selection-start-column="3" selection-end-line="11" selection-end-column="3" />
|
|
254
|
+
</state>
|
|
255
|
+
</provider>
|
|
256
|
+
</entry>
|
|
257
|
+
<entry file="file://$PROJECT_DIR$/lib/istox/helpers/order_book.rb">
|
|
258
|
+
<provider selected="true" editor-type-id="text-editor" />
|
|
259
|
+
</entry>
|
|
260
|
+
<entry file="file://$PROJECT_DIR$/Gemfile">
|
|
261
|
+
<provider selected="true" editor-type-id="text-editor">
|
|
262
|
+
<state relative-caret-position="90">
|
|
263
|
+
<caret line="6" selection-start-line="6" selection-end-line="6" />
|
|
264
|
+
</state>
|
|
265
|
+
</provider>
|
|
266
|
+
</entry>
|
|
267
|
+
<entry file="file://$PROJECT_DIR$/Gemfile.lock">
|
|
268
|
+
<provider selected="true" editor-type-id="text-editor" />
|
|
269
|
+
</entry>
|
|
270
|
+
<entry file="file://$PROJECT_DIR$/istox.gemspec">
|
|
271
|
+
<provider selected="true" editor-type-id="text-editor">
|
|
272
|
+
<state relative-caret-position="735">
|
|
273
|
+
<caret line="49" selection-start-line="49" selection-end-line="49" />
|
|
274
|
+
</state>
|
|
275
|
+
</provider>
|
|
276
|
+
</entry>
|
|
277
|
+
<entry file="file://$PROJECT_DIR$/README.md">
|
|
278
|
+
<provider selected="true" editor-type-id="split-provider[text-editor;markdown-preview-editor]">
|
|
279
|
+
<state split_layout="SPLIT">
|
|
280
|
+
<first_editor relative-caret-position="120">
|
|
281
|
+
<caret line="8" column="52" selection-start-line="8" selection-start-column="19" selection-end-line="8" selection-end-column="52" />
|
|
282
|
+
</first_editor>
|
|
283
|
+
<second_editor />
|
|
284
|
+
</state>
|
|
285
|
+
</provider>
|
|
286
|
+
</entry>
|
|
287
|
+
<entry file="file://$PROJECT_DIR$/lib/istox/version.rb">
|
|
288
|
+
<provider selected="true" editor-type-id="text-editor">
|
|
289
|
+
<state relative-caret-position="45">
|
|
290
|
+
<caret line="3" selection-start-line="3" selection-end-line="3" />
|
|
291
|
+
</state>
|
|
292
|
+
</provider>
|
|
293
|
+
</entry>
|
|
294
|
+
<entry file="file://$PROJECT_DIR$/lib/istox/helpers/message_service.rb">
|
|
295
|
+
<provider selected="true" editor-type-id="text-editor">
|
|
296
|
+
<state relative-caret-position="285">
|
|
297
|
+
<caret line="17" column="74" lean-forward="true" selection-start-line="17" selection-start-column="74" selection-end-line="17" selection-end-column="74" />
|
|
298
|
+
</state>
|
|
299
|
+
</provider>
|
|
300
|
+
</entry>
|
|
301
|
+
<entry file="file://$PROJECT_DIR$/lib/istox/helpers/grpc_client.rb">
|
|
302
|
+
<provider selected="true" editor-type-id="text-editor">
|
|
303
|
+
<state relative-caret-position="105">
|
|
304
|
+
<caret line="7" selection-start-line="7" selection-end-line="7" />
|
|
305
|
+
</state>
|
|
306
|
+
</provider>
|
|
307
|
+
</entry>
|
|
308
|
+
<entry file="file://$PROJECT_DIR$/lib/istox.rb">
|
|
309
|
+
<provider selected="true" editor-type-id="text-editor">
|
|
310
|
+
<state relative-caret-position="45">
|
|
311
|
+
<caret line="3" selection-start-line="3" selection-end-line="3" />
|
|
312
|
+
</state>
|
|
313
|
+
</provider>
|
|
314
|
+
</entry>
|
|
315
|
+
<entry file="file://$PROJECT_DIR$/lib/istox/helpers/vault.rb">
|
|
316
|
+
<provider selected="true" editor-type-id="text-editor">
|
|
317
|
+
<state relative-caret-position="-320">
|
|
318
|
+
<caret line="28" column="60" lean-forward="true" selection-start-line="28" selection-start-column="60" selection-end-line="28" selection-end-column="60" />
|
|
319
|
+
</state>
|
|
320
|
+
</provider>
|
|
321
|
+
</entry>
|
|
322
|
+
</component>
|
|
323
|
+
</project>
|
data/README.md
CHANGED
data/istox.gemspec
CHANGED
|
@@ -33,6 +33,8 @@ Gem::Specification.new do |spec|
|
|
|
33
33
|
|
|
34
34
|
spec.add_dependency "bunny", ">= 2.12.0"
|
|
35
35
|
spec.add_dependency "istox_gruf"
|
|
36
|
+
spec.add_dependency "gruf"
|
|
37
|
+
spec.add_dependency 'vault', '~> 0.1'
|
|
36
38
|
spec.add_dependency "paranoia", "~> 2.2"
|
|
37
39
|
spec.add_dependency "graphlient"
|
|
38
40
|
spec.add_dependency 'listen', '~> 3.0.5'
|
|
@@ -44,8 +46,6 @@ Gem::Specification.new do |spec|
|
|
|
44
46
|
spec.add_development_dependency "faker", "~> 1.7.3"
|
|
45
47
|
spec.add_development_dependency "bullet", "~> 5.7.5"
|
|
46
48
|
spec.add_development_dependency "rails", "~> 5.2.1"
|
|
47
|
-
|
|
48
49
|
spec.add_development_dependency "sqlite3", "~> 1.3.6"
|
|
49
50
|
spec.add_development_dependency "database_cleaner", "~> 1.6.0"
|
|
50
|
-
|
|
51
51
|
end
|
data/lib/istox.rb
CHANGED
|
@@ -15,6 +15,7 @@ module Istox
|
|
|
15
15
|
require "istox/interfaces/chainhub/transaction"
|
|
16
16
|
require "istox/helpers/publisher"
|
|
17
17
|
require "istox/helpers/bunny_boot"
|
|
18
|
+
require "istox/helpers/vault"
|
|
18
19
|
require "istox/helpers/order_book"
|
|
19
20
|
require "istox/helpers/grpc_client"
|
|
20
21
|
require "istox/helpers/graphql_client"
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
require 'vault'
|
|
2
|
+
|
|
3
|
+
module Istox
|
|
4
|
+
module Vault
|
|
5
|
+
module TOTP
|
|
6
|
+
class << self
|
|
7
|
+
|
|
8
|
+
def create(sid, host)
|
|
9
|
+
Rails.logger.debug { "Generate vault TOTP for key #{totp_key(sid).inspect}" }
|
|
10
|
+
|
|
11
|
+
write_data(totp_key(sid),
|
|
12
|
+
generate: true,
|
|
13
|
+
issuer: host,
|
|
14
|
+
account_name: sid,
|
|
15
|
+
qr_size: 300)
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
def generate_code(sid)
|
|
19
|
+
Rails.logger.debug { "Generate 6-digit OTP code: key #{totp_code_key(sid)}" }
|
|
20
|
+
return read_data(totp_code_key(sid)).data[:code]
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
def validate?(sid, code)
|
|
24
|
+
Rails.logger.debug { "Validate TOTP code: key #{totp_code_key(sid)}, code: #{code}" }
|
|
25
|
+
result = write_data(totp_code_key(sid), code: code).data[:valid]
|
|
26
|
+
|
|
27
|
+
unless result
|
|
28
|
+
code = read_data(totp_code_key(sid)).data[:code]
|
|
29
|
+
Rails.logger.debug { "Code is not valid, it should be #{code}" }
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
result
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
private
|
|
36
|
+
|
|
37
|
+
def read_data(key)
|
|
38
|
+
::Vault.logical.read(key)
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
def write_data(key, params)
|
|
42
|
+
::Vault.logical.write(key, params)
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
def totp_key(sid)
|
|
46
|
+
"totp/keys/#{sid}"
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
def totp_code_key(sid)
|
|
50
|
+
"totp/code/#{sid}"
|
|
51
|
+
end
|
|
52
|
+
end
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
class << self
|
|
56
|
+
|
|
57
|
+
def logical
|
|
58
|
+
::Vault.logical
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
def initialize(secret_key, file_location)
|
|
62
|
+
::Vault.configure do |config|
|
|
63
|
+
config.address = secret_key
|
|
64
|
+
|
|
65
|
+
if File.exist?(file_location)
|
|
66
|
+
token = File.read(file_location).strip
|
|
67
|
+
config.token = token
|
|
68
|
+
config.ssl_verify = false
|
|
69
|
+
config.timeout = 60
|
|
70
|
+
else
|
|
71
|
+
Rails.logger.info 'Vault token not found, OTP will not be able to use'
|
|
72
|
+
end
|
|
73
|
+
end
|
|
74
|
+
end
|
|
75
|
+
|
|
76
|
+
def get_otp(sid, host)
|
|
77
|
+
::Istox::Vault::TOTP.create(sid, host)
|
|
78
|
+
Istox::Vault::TOTP.generate_code(sid)
|
|
79
|
+
end
|
|
80
|
+
|
|
81
|
+
def validate_otp(sid, otp)
|
|
82
|
+
return ::Istox::Vault::TOTP.validate?(sid, otp)
|
|
83
|
+
rescue => e
|
|
84
|
+
raise e
|
|
85
|
+
false
|
|
86
|
+
end
|
|
87
|
+
end
|
|
88
|
+
end
|
|
89
|
+
end
|
data/lib/istox/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: istox
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
4
|
+
version: 0.1.60
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Siong Leng
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2019-06-
|
|
11
|
+
date: 2019-06-17 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bunny
|
|
@@ -38,6 +38,34 @@ dependencies:
|
|
|
38
38
|
- - ">="
|
|
39
39
|
- !ruby/object:Gem::Version
|
|
40
40
|
version: '0'
|
|
41
|
+
- !ruby/object:Gem::Dependency
|
|
42
|
+
name: gruf
|
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
|
44
|
+
requirements:
|
|
45
|
+
- - ">="
|
|
46
|
+
- !ruby/object:Gem::Version
|
|
47
|
+
version: '0'
|
|
48
|
+
type: :runtime
|
|
49
|
+
prerelease: false
|
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
51
|
+
requirements:
|
|
52
|
+
- - ">="
|
|
53
|
+
- !ruby/object:Gem::Version
|
|
54
|
+
version: '0'
|
|
55
|
+
- !ruby/object:Gem::Dependency
|
|
56
|
+
name: vault
|
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
|
58
|
+
requirements:
|
|
59
|
+
- - "~>"
|
|
60
|
+
- !ruby/object:Gem::Version
|
|
61
|
+
version: '0.1'
|
|
62
|
+
type: :runtime
|
|
63
|
+
prerelease: false
|
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
65
|
+
requirements:
|
|
66
|
+
- - "~>"
|
|
67
|
+
- !ruby/object:Gem::Version
|
|
68
|
+
version: '0.1'
|
|
41
69
|
- !ruby/object:Gem::Dependency
|
|
42
70
|
name: paranoia
|
|
43
71
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -228,6 +256,14 @@ extensions: []
|
|
|
228
256
|
extra_rdoc_files: []
|
|
229
257
|
files:
|
|
230
258
|
- ".gitignore"
|
|
259
|
+
- ".idea/.rakeTasks"
|
|
260
|
+
- ".idea/encodings.xml"
|
|
261
|
+
- ".idea/inspectionProfiles/Project_Default.xml"
|
|
262
|
+
- ".idea/istox-gem.iml"
|
|
263
|
+
- ".idea/misc.xml"
|
|
264
|
+
- ".idea/modules.xml"
|
|
265
|
+
- ".idea/vcs.xml"
|
|
266
|
+
- ".idea/workspace.xml"
|
|
231
267
|
- CODE_OF_CONDUCT.md
|
|
232
268
|
- Gemfile
|
|
233
269
|
- Gemfile.lock
|
|
@@ -247,6 +283,7 @@ files:
|
|
|
247
283
|
- lib/istox/helpers/message_service.rb
|
|
248
284
|
- lib/istox/helpers/order_book.rb
|
|
249
285
|
- lib/istox/helpers/publisher.rb
|
|
286
|
+
- lib/istox/helpers/vault.rb
|
|
250
287
|
- lib/istox/interfaces/chainhub/transaction.rb
|
|
251
288
|
- lib/istox/migrations/create_blockchain_receipts.rb
|
|
252
289
|
- lib/istox/models/blockchain_receipt.rb
|
|
@@ -271,7 +308,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
271
308
|
version: '0'
|
|
272
309
|
requirements: []
|
|
273
310
|
rubyforge_project:
|
|
274
|
-
rubygems_version: 2.7.
|
|
311
|
+
rubygems_version: 2.7.8
|
|
275
312
|
signing_key:
|
|
276
313
|
specification_version: 4
|
|
277
314
|
summary: istox backend shared gem
|