Commit 1e90e94c authored by nano's avatar nano

sos login

parent 9be8fb1b
...@@ -2,8 +2,25 @@ ...@@ -2,8 +2,25 @@
<project version="4"> <project version="4">
<component name="ChangeListManager"> <component name="ChangeListManager">
<list default="true" id="7dc474d0-9fc0-4b76-8c2f-3c98df702116" name="Default" comment=""> <list default="true" id="7dc474d0-9fc0-4b76-8c2f-3c98df702116" name="Default" comment="">
<change type="DELETED" beforePath="$PROJECT_DIR$/src/assets/yay.jpg" afterPath="" />
<change type="DELETED" beforePath="$PROJECT_DIR$/src/models/example.js" afterPath="" />
<change type="DELETED" beforePath="$PROJECT_DIR$/src/routes/IndexPage.css" afterPath="" />
<change type="DELETED" beforePath="$PROJECT_DIR$/src/routes/IndexPage.js" afterPath="" />
<change type="DELETED" beforePath="$PROJECT_DIR$/src/routes/Login.css" afterPath="" />
<change type="DELETED" beforePath="$PROJECT_DIR$/src/routes/Login.js" afterPath="" />
<change type="DELETED" beforePath="$PROJECT_DIR$/src/services/example.js" afterPath="" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/.idea/workspace.xml" afterPath="$PROJECT_DIR$/.idea/workspace.xml" /> <change type="MODIFICATION" beforePath="$PROJECT_DIR$/.idea/workspace.xml" afterPath="$PROJECT_DIR$/.idea/workspace.xml" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/config.js" afterPath="$PROJECT_DIR$/src/config.js" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/models/App.js" afterPath="$PROJECT_DIR$/src/models/App.js" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/models/Apps.js" afterPath="$PROJECT_DIR$/src/models/Apps.js" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/models/Common.js" afterPath="$PROJECT_DIR$/src/models/Common.js" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/models/user.js" afterPath="$PROJECT_DIR$/src/models/user.js" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/router.js" afterPath="$PROJECT_DIR$/src/router.js" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/routes/AppDetail.js" afterPath="$PROJECT_DIR$/src/routes/AppDetail.js" /> <change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/routes/AppDetail.js" afterPath="$PROJECT_DIR$/src/routes/AppDetail.js" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/routes/Apps.js" afterPath="$PROJECT_DIR$/src/routes/Apps.js" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/routes/LoginCallback.js" afterPath="$PROJECT_DIR$/src/routes/LoginCallback.js" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/services/Apps.js" afterPath="$PROJECT_DIR$/src/services/Apps.js" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/services/Packages.js" afterPath="$PROJECT_DIR$/src/services/Packages.js" />
</list> </list>
<ignored path="$PROJECT_DIR$/.tmp/" /> <ignored path="$PROJECT_DIR$/.tmp/" />
<ignored path="$PROJECT_DIR$/temp/" /> <ignored path="$PROJECT_DIR$/temp/" />
...@@ -20,15 +37,43 @@ ...@@ -20,15 +37,43 @@
<favorites_list name="moecube-console-web" /> <favorites_list name="moecube-console-web" />
</component> </component>
<component name="FileEditorManager"> <component name="FileEditorManager">
<leaf SIDE_TABS_SIZE_LIMIT_KEY="300" /> <leaf>
<file leaf-file-name="Common.js" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/models/Common.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="390">
<caret line="40" column="0" lean-forward="false" selection-start-line="40" selection-start-column="0" selection-end-line="40" selection-end-column="0" />
<folding>
<element signature="e#0#38#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file leaf-file-name="AppDetail.js" pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/src/routes/AppDetail.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="307">
<caret line="143" column="41" lean-forward="true" selection-start-line="143" selection-start-column="41" selection-end-line="143" selection-end-column="41" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="Packages.js" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/services/Packages.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="162">
<caret line="9" column="0" lean-forward="false" selection-start-line="9" selection-start-column="0" selection-end-line="9" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
</file>
</leaf>
</component> </component>
<component name="FindInProjectRecents"> <component name="FindInProjectRecents">
<findStrings> <findStrings>
<find>isMounte</find>
<find>isMounted</find>
<find>isdanger</find>
<find>width=&quot;100%&quot; height=&quot;100%&quot;</find>
<find>radio</find>
<find>console</find> <find>console</find>
<find>pack</find> <find>pack</find>
<find>upload</find> <find>upload</find>
...@@ -54,6 +99,11 @@ ...@@ -54,6 +99,11 @@
<find>url</find> <find>url</find>
<find>disable</find> <find>disable</find>
<find>delete</find> <find>delete</find>
<find>action</find>
<find>collapsed</find>
<find>\n \}\,</find>
<find>isCreate</find>
<find>status</find>
</findStrings> </findStrings>
</component> </component>
<component name="Git.Settings"> <component name="Git.Settings">
...@@ -62,10 +112,7 @@ ...@@ -62,10 +112,7 @@
<component name="IdeDocumentHistory"> <component name="IdeDocumentHistory">
<option name="CHANGED_PATHS"> <option name="CHANGED_PATHS">
<list> <list>
<option value="$PROJECT_DIR$/src/models/Common.js" />
<option value="$PROJECT_DIR$/src/models/App.js" />
<option value="$PROJECT_DIR$/src/components/App/Create.js" /> <option value="$PROJECT_DIR$/src/components/App/Create.js" />
<option value="$PROJECT_DIR$/src/router.js" />
<option value="$PROJECT_DIR$/.roadhogrc" /> <option value="$PROJECT_DIR$/.roadhogrc" />
<option value="$PROJECT_DIR$/public/index.html" /> <option value="$PROJECT_DIR$/public/index.html" />
<option value="$PROJECT_DIR$/src/components/Common/Nav.js" /> <option value="$PROJECT_DIR$/src/components/Common/Nav.js" />
...@@ -73,10 +120,21 @@ ...@@ -73,10 +120,21 @@
<option value="$PROJECT_DIR$/src/utils/request.js" /> <option value="$PROJECT_DIR$/src/utils/request.js" />
<option value="$PROJECT_DIR$/src/index.js" /> <option value="$PROJECT_DIR$/src/index.js" />
<option value="$PROJECT_DIR$/src/routes/Entry.js" /> <option value="$PROJECT_DIR$/src/routes/Entry.js" />
<option value="$PROJECT_DIR$/src/models/Apps.js" />
<option value="$PROJECT_DIR$/src/routes/AppDetail.less" /> <option value="$PROJECT_DIR$/src/routes/AppDetail.less" />
<option value="$PROJECT_DIR$/src/services/Packages.js" />
<option value="$PROJECT_DIR$/src/models/packages.js" /> <option value="$PROJECT_DIR$/src/models/packages.js" />
<option value="$PROJECT_DIR$/src/services/Packages.js" />
<option value="$PROJECT_DIR$/src/services/example.js" />
<option value="$PROJECT_DIR$/src/router.js" />
<option value="$PROJECT_DIR$/src/routes/Login.css" />
<option value="$PROJECT_DIR$/src/routes/Login.js" />
<option value="$PROJECT_DIR$/src/config.js" />
<option value="$PROJECT_DIR$/src/models/user.js" />
<option value="$PROJECT_DIR$/src/routes/LoginCallback.js" />
<option value="$PROJECT_DIR$/src/routes/Apps.js" />
<option value="$PROJECT_DIR$/src/models/App.js" />
<option value="$PROJECT_DIR$/src/services/Apps.js" />
<option value="$PROJECT_DIR$/src/models/Apps.js" />
<option value="$PROJECT_DIR$/src/models/Common.js" />
<option value="$PROJECT_DIR$/src/routes/AppDetail.js" /> <option value="$PROJECT_DIR$/src/routes/AppDetail.js" />
</list> </list>
</option> </option>
...@@ -93,8 +151,8 @@ ...@@ -93,8 +151,8 @@
<handled-path value="$PROJECT_DIR$/node_modules" /> <handled-path value="$PROJECT_DIR$/node_modules" />
</component> </component>
<component name="ProjectFrameBounds"> <component name="ProjectFrameBounds">
<option name="x" value="296" /> <option name="x" value="274" />
<option name="y" value="23" /> <option name="y" value="95" />
<option name="width" value="1383" /> <option name="width" value="1383" />
<option name="height" value="968" /> <option name="height" value="968" />
</component> </component>
...@@ -113,8 +171,6 @@ ...@@ -113,8 +171,6 @@
<foldersAlwaysOnTop value="true" /> <foldersAlwaysOnTop value="true" />
</navigator> </navigator>
<panes> <panes>
<pane id="Scratches" />
<pane id="Scope" />
<pane id="ProjectPane"> <pane id="ProjectPane">
<subPane> <subPane>
<PATH> <PATH>
...@@ -197,6 +253,8 @@ ...@@ -197,6 +253,8 @@
</PATH> </PATH>
</subPane> </subPane>
</pane> </pane>
<pane id="Scope" />
<pane id="Scratches" />
</panes> </panes>
</component> </component>
<component name="PropertiesComponent"> <component name="PropertiesComponent">
...@@ -264,6 +322,12 @@ ...@@ -264,6 +322,12 @@
<method /> <method />
</configuration> </configuration>
<configuration default="true" type="js.build_tools.gulp" factoryName="Gulp.js"> <configuration default="true" type="js.build_tools.gulp" factoryName="Gulp.js">
<node-interpreter>project</node-interpreter>
<node-options />
<gulpfile />
<tasks />
<arguments />
<envs />
<method /> <method />
</configuration> </configuration>
<configuration default="true" type="js.build_tools.npm" factoryName="npm"> <configuration default="true" type="js.build_tools.npm" factoryName="npm">
...@@ -299,34 +363,36 @@ ...@@ -299,34 +363,36 @@
<updated>1492397512644</updated> <updated>1492397512644</updated>
<workItem from="1492397516564" duration="4541000" /> <workItem from="1492397516564" duration="4541000" />
<workItem from="1492407287300" duration="48898000" /> <workItem from="1492407287300" duration="48898000" />
<workItem from="1492655820276" duration="10789000" />
</task> </task>
<servers /> <servers />
</component> </component>
<component name="TimeTrackingManager"> <component name="TimeTrackingManager">
<option name="totallyTimeSpent" value="53439000" /> <option name="totallyTimeSpent" value="64228000" />
</component> </component>
<component name="ToolWindowManager"> <component name="ToolWindowManager">
<frame x="296" y="23" width="1383" height="968" extended-state="0" /> <frame x="274" y="95" width="1383" height="968" extended-state="0" />
<editor active="true" />
<layout> <layout>
<window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" /> <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
<window_info id="DB Browser" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32966226" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" /> <window_info id="DB Browser" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32966226" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
<window_info id="DB Execution Console" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" /> <window_info id="DB Execution Console" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
<window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="true" content_ui="tabs" /> <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="true" content_ui="tabs" />
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32990867" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
<window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" /> <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
<window_info id="npm" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32966226" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" /> <window_info id="npm" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32966226" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" />
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32990867" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" /> <window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.33333334" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
<window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33333334" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" /> <window_info id="TypeScript" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="8" side_tool="false" content_ui="tabs" />
<window_info id="TypeScript" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="false" content_ui="tabs" /> <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.25697502" sideWeight="0.49315068" order="0" side_tool="false" content_ui="combo" />
<window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.2572707" sideWeight="0.49315068" order="0" side_tool="false" content_ui="combo" />
<window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.24981357" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" /> <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
<window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" /> <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
<window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25354213" sideWeight="0.5068493" order="2" side_tool="true" content_ui="tabs" />
<window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" /> <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
<window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25354213" sideWeight="0.5068493" order="2" side_tool="true" content_ui="tabs" />
<window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" /> <window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
<window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" /> <window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
<window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" /> <window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
<window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" /> <window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
<window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.24981357" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
<window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" /> <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
</layout> </layout>
</component> </component>
...@@ -348,6 +414,8 @@ ...@@ -348,6 +414,8 @@
<option value="$PROJECT_DIR$/../moecube-console/package/main.js.map" /> <option value="$PROJECT_DIR$/../moecube-console/package/main.js.map" />
<option value="$PROJECT_DIR$/../moecube-console/package/utils.js" /> <option value="$PROJECT_DIR$/../moecube-console/package/utils.js" />
<option value="$PROJECT_DIR$/../moecube-console/package/main.js" /> <option value="$PROJECT_DIR$/../moecube-console/package/main.js" />
<option value="$PROJECT_DIR$/../moecube-console/src/routes/package.js" />
<option value="$PROJECT_DIR$/../moecube-console/src/routes/package.js.map" />
</list> </list>
</option> </option>
</component> </component>
...@@ -359,14 +427,6 @@ ...@@ -359,14 +427,6 @@
<watches-manager /> <watches-manager />
</component> </component>
<component name="editorHistoryManager"> <component name="editorHistoryManager">
<entry file="file://$PROJECT_DIR$/app.json">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/package.json"> <entry file="file://$PROJECT_DIR$/package.json">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0"> <state relative-caret-position="0">
...@@ -413,9 +473,7 @@ ...@@ -413,9 +473,7 @@
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="108"> <state relative-caret-position="108">
<caret line="9" column="10" lean-forward="true" selection-start-line="9" selection-start-column="10" selection-end-line="9" selection-end-column="10" /> <caret line="9" column="10" lean-forward="true" selection-start-line="9" selection-start-column="10" selection-end-line="9" selection-end-column="10" />
<folding> <folding />
<element signature="e#0#26#0" expanded="false" />
</folding>
</state> </state>
</provider> </provider>
</entry> </entry>
...@@ -431,7 +489,6 @@ ...@@ -431,7 +489,6 @@
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="288"> <state relative-caret-position="288">
<caret line="16" column="0" lean-forward="true" selection-start-line="16" selection-start-column="0" selection-end-line="16" selection-end-column="0" /> <caret line="16" column="0" lean-forward="true" selection-start-line="16" selection-start-column="0" selection-end-line="16" selection-end-column="0" />
<folding />
</state> </state>
</provider> </provider>
</entry> </entry>
...@@ -443,65 +500,10 @@ ...@@ -443,65 +500,10 @@
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/src/routes/Login.css">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/routes/IndexPage.css"> <entry file="file://$PROJECT_DIR$/src/routes/IndexPage.css">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0"> <state relative-caret-position="0">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" /> <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/routes/LoginCallback.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding>
<element signature="e#0#26#0" expanded="false" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/routes/Login.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding>
<element signature="e#0#26#0" expanded="false" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/routes/Apps/All.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-159">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding>
<element signature="e#0#26#0" expanded="false" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/routes/Apps.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/components/App/Create.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="162">
<caret line="9" column="4" lean-forward="false" selection-start-line="9" selection-start-column="4" selection-end-line="9" selection-end-column="4" />
<folding />
</state> </state>
</provider> </provider>
</entry> </entry>
...@@ -509,7 +511,6 @@ ...@@ -509,7 +511,6 @@
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="198"> <state relative-caret-position="198">
<caret line="11" column="0" lean-forward="true" selection-start-line="11" selection-start-column="0" selection-end-line="11" selection-end-column="0" /> <caret line="11" column="0" lean-forward="true" selection-start-line="11" selection-start-column="0" selection-end-line="11" selection-end-column="0" />
<folding />
</state> </state>
</provider> </provider>
</entry> </entry>
...@@ -525,23 +526,6 @@ ...@@ -525,23 +526,6 @@
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="54"> <state relative-caret-position="54">
<caret line="3" column="0" lean-forward="true" selection-start-line="3" selection-start-column="0" selection-end-line="3" selection-end-column="0" /> <caret line="3" column="0" lean-forward="true" selection-start-line="3" selection-start-column="0" selection-end-line="3" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/config.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="108">
<caret line="6" column="1" lean-forward="false" selection-start-line="6" selection-start-column="1" selection-end-line="6" selection-end-column="1" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/node_modules/dva/router.d.ts">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="108">
<caret line="6" column="9" lean-forward="false" selection-start-line="6" selection-start-column="9" selection-end-line="6" selection-end-column="9" />
<folding />
</state> </state>
</provider> </provider>
</entry> </entry>
...@@ -553,29 +537,11 @@ ...@@ -553,29 +537,11 @@
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/src/components/Example.js"> <entry file="file://$PROJECT_DIR$/src/components/Example.js" />
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="180">
<caret line="10" column="21" lean-forward="true" selection-start-line="10" selection-start-column="21" selection-end-line="10" selection-end-column="21" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/components/Common/Nav.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="176">
<caret line="25" column="12" lean-forward="true" selection-start-line="25" selection-start-column="12" selection-end-line="25" selection-end-column="12" />
<folding>
<element signature="e#0#26#0" expanded="false" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/components/Common/EditableCell.js"> <entry file="file://$PROJECT_DIR$/src/components/Common/EditableCell.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="684"> <state relative-caret-position="684">
<caret line="38" column="20" lean-forward="true" selection-start-line="38" selection-start-column="20" selection-end-line="38" selection-end-column="20" /> <caret line="38" column="20" lean-forward="true" selection-start-line="38" selection-start-column="20" selection-end-line="38" selection-end-column="20" />
<folding />
</state> </state>
</provider> </provider>
</entry> </entry>
...@@ -583,7 +549,6 @@ ...@@ -583,7 +549,6 @@
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0"> <state relative-caret-position="0">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" /> <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding />
</state> </state>
</provider> </provider>
</entry> </entry>
...@@ -599,17 +564,6 @@ ...@@ -599,17 +564,6 @@
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="90"> <state relative-caret-position="90">
<caret line="5" column="34" lean-forward="true" selection-start-line="5" selection-start-column="34" selection-end-line="5" selection-end-column="34" /> <caret line="5" column="34" lean-forward="true" selection-start-line="5" selection-start-column="34" selection-end-line="5" selection-end-column="34" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/utils/request.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="252">
<caret line="14" column="46" lean-forward="true" selection-start-line="14" selection-start-column="46" selection-end-line="14" selection-end-column="46" />
<folding>
<element signature="e#0#30#0" expanded="false" />
</folding>
</state> </state>
</provider> </provider>
</entry> </entry>
...@@ -655,6 +609,53 @@ ...@@ -655,6 +609,53 @@
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/node_modules/antd/lib/input/Input.d.ts">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="124">
<caret line="60" column="6" lean-forward="true" selection-start-line="60" selection-start-column="6" selection-end-line="60" selection-end-column="6" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/node_modules/antd/lib/form/Form.d.ts">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="187">
<caret line="73" column="21" lean-forward="false" selection-start-line="73" selection-start-column="21" selection-end-line="73" selection-end-column="21" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/node_modules/dva/dist/dva.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="186">
<caret line="7595" column="11" lean-forward="false" selection-start-line="7595" selection-start-column="11" selection-end-line="7595" selection-end-column="11" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/yarn.lock">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="186">
<caret line="1065" column="16" lean-forward="false" selection-start-line="1065" selection-start-column="16" selection-end-line="1065" selection-end-column="16" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/models/example.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="378">
<caret line="21" column="6" lean-forward="true" selection-start-line="21" selection-start-column="6" selection-end-line="21" selection-end-column="6" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/services/example.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="18">
<caret line="1" column="0" lean-forward="false" selection-start-line="1" selection-start-column="0" selection-end-line="1" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/routes/IndexPage.js"> <entry file="file://$PROJECT_DIR$/src/routes/IndexPage.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="270"> <state relative-caret-position="270">
...@@ -663,98 +664,110 @@ ...@@ -663,98 +664,110 @@
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/node_modules/antd/lib/input/Input.d.ts"> <entry file="file://$PROJECT_DIR$/src/routes/Login.css">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="124"> <state relative-caret-position="0">
<caret line="60" column="6" lean-forward="true" selection-start-line="60" selection-start-column="6" selection-end-line="60" selection-end-column="6" /> <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/node_modules/antd/lib/form/Form.d.ts"> <entry file="file://$PROJECT_DIR$/src/routes/Login.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="187"> <state relative-caret-position="0">
<caret line="73" column="21" lean-forward="false" selection-start-line="73" selection-start-column="21" selection-end-line="73" selection-end-column="21" /> <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/src/router.js"> <entry file="file://$PROJECT_DIR$/src/router.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="108"> <state relative-caret-position="36">
<caret line="12" column="41" lean-forward="false" selection-start-line="12" selection-start-column="41" selection-end-line="12" selection-end-column="41" /> <caret line="2" column="36" lean-forward="true" selection-start-line="2" selection-start-column="36" selection-end-line="2" selection-end-column="36" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/src/services/example.js"> <entry file="file://$PROJECT_DIR$/node_modules/dva/router.d.ts">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0"> <state relative-caret-position="-169">
<caret line="50" column="2" lean-forward="false" selection-start-line="50" selection-start-column="2" selection-end-line="50" selection-end-column="2" />
<folding>
<element signature="e#0#44#0" expanded="false" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/routes/Apps/All.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-97">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" /> <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/node_modules/dva/dist/dva.js"> <entry file="file://$PROJECT_DIR$/src/components/App/Create.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="186"> <state relative-caret-position="397">
<caret line="7595" column="11" lean-forward="false" selection-start-line="7595" selection-start-column="11" selection-end-line="7595" selection-end-column="11" /> <caret line="88" column="13" lean-forward="true" selection-start-line="88" selection-start-column="13" selection-end-line="88" selection-end-column="13" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/yarn.lock"> <entry file="file://$PROJECT_DIR$/src/utils/request.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="186"> <state relative-caret-position="-161">
<caret line="1065" column="16" lean-forward="false" selection-start-line="1065" selection-start-column="16" selection-end-line="1065" selection-end-column="16" /> <caret line="14" column="46" lean-forward="false" selection-start-line="14" selection-start-column="46" selection-end-line="14" selection-end-column="46" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/src/models/App.js"> <entry file="file://$PROJECT_DIR$/src/routes/LoginCallback.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-539"> <state relative-caret-position="162">
<caret line="14" column="14" lean-forward="true" selection-start-line="14" selection-start-column="14" selection-end-line="14" selection-end-column="14" /> <caret line="11" column="15" lean-forward="true" selection-start-line="11" selection-start-column="15" selection-end-line="11" selection-end-column="15" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/src/services/Apps.js"> <entry file="file://$PROJECT_DIR$/src/models/App.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0"> <state relative-caret-position="342">
<caret line="0" column="38" lean-forward="true" selection-start-line="0" selection-start-column="38" selection-end-line="0" selection-end-column="38" /> <caret line="19" column="34" lean-forward="true" selection-start-line="19" selection-start-column="34" selection-end-line="19" selection-end-column="34" />
<folding /> <folding>
<element signature="e#0#39#0" expanded="false" />
</folding>
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/src/models/Apps.js"> <entry file="file://$PROJECT_DIR$/src/routes/Apps.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-190"> <state relative-caret-position="433">
<caret line="21" column="0" lean-forward="true" selection-start-line="21" selection-start-column="0" selection-end-line="21" selection-end-column="0" /> <caret line="102" column="40" lean-forward="false" selection-start-line="102" selection-start-column="40" selection-end-line="102" selection-end-column="40" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/src/models/example.js"> <entry file="file://$PROJECT_DIR$/src/config.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="378"> <state relative-caret-position="72">
<caret line="21" column="6" lean-forward="true" selection-start-line="21" selection-start-column="6" selection-end-line="21" selection-end-column="6" /> <caret line="4" column="45" lean-forward="false" selection-start-line="4" selection-start-column="45" selection-end-line="4" selection-end-column="45" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/src/models/Common.js"> <entry file="file://$PROJECT_DIR$/src/routes/Apps/Create.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="90"> <state relative-caret-position="-200">
<caret line="5" column="18" lean-forward="true" selection-start-line="5" selection-start-column="18" selection-end-line="5" selection-end-column="18" /> <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/src/models/packages.js"> <entry file="file://$PROJECT_DIR$/src/models/packages.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="282"> <state relative-caret-position="-492">
<caret line="56" column="11" lean-forward="true" selection-start-line="56" selection-start-column="11" selection-end-line="56" selection-end-column="11" /> <caret line="1" column="28" lean-forward="false" selection-start-line="1" selection-start-column="28" selection-end-line="1" selection-end-column="28" />
<folding> <folding>
<element signature="e#0#70#0" expanded="false" /> <element signature="e#0#70#0" expanded="false" />
</folding> </folding>
...@@ -763,26 +776,62 @@ ...@@ -763,26 +776,62 @@
</entry> </entry>
<entry file="file://$PROJECT_DIR$/src/models/user.js"> <entry file="file://$PROJECT_DIR$/src/models/user.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0"> <state relative-caret-position="108">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" /> <caret line="6" column="13" lean-forward="true" selection-start-line="6" selection-start-column="13" selection-end-line="6" selection-end-column="13" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/src/routes/AppDetail.js"> <entry file="file://$PROJECT_DIR$/src/components/Common/Nav.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="355"> <state relative-caret-position="414">
<caret line="704" column="26" lean-forward="true" selection-start-line="704" selection-start-column="26" selection-end-line="704" selection-end-column="26" /> <caret line="27" column="19" lean-forward="false" selection-start-line="27" selection-start-column="19" selection-end-line="27" selection-end-column="19" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/services/Apps.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="234">
<caret line="13" column="1" lean-forward="true" selection-start-line="13" selection-start-column="1" selection-end-line="13" selection-end-column="1" />
<folding> <folding>
<element signature="e#0#26#0" expanded="false" /> <element signature="e#0#24#0" expanded="false" />
</folding> </folding>
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/src/services/Packages.js"> <entry file="file://$PROJECT_DIR$/src/services/Packages.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="271"> <state relative-caret-position="162">
<caret line="26" column="32" lean-forward="false" selection-start-line="26" selection-start-column="32" selection-end-line="26" selection-end-column="32" /> <caret line="9" column="0" lean-forward="false" selection-start-line="9" selection-start-column="0" selection-end-line="9" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/models/Apps.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="397">
<caret line="67" column="5" lean-forward="true" selection-start-line="67" selection-start-column="5" selection-end-line="67" selection-end-column="5" />
<folding>
<element signature="e#0#46#0" expanded="false" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/models/Common.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="390">
<caret line="40" column="0" lean-forward="false" selection-start-line="40" selection-start-column="0" selection-end-line="40" selection-end-column="0" />
<folding>
<element signature="e#0#38#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/routes/AppDetail.js">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="307">
<caret line="143" column="41" lean-forward="true" selection-start-line="143" selection-start-column="41" selection-end-line="143" selection-end-column="41" />
<folding /> <folding />
</state> </state>
</provider> </provider>
......
...@@ -2,6 +2,6 @@ export default { ...@@ -2,6 +2,6 @@ export default {
apiRoot: 'http://localhost:8001', apiRoot: 'http://localhost:8001',
imgRoot: 'http://node:7888', imgRoot: 'http://node:7888',
returnSSO: 'http://localhost:8000/loginCallback', returnSSO: 'http://localhost:8000/loginCallback',
SSOProvider: 'https://ygobbs.com/session/sso_provider' SSOProvider: 'https://accounts.moecube.com/'
// SSOProvider: 'http://localhost:8081' // SSOProvider: 'http://localhost:8081'
} }
...@@ -43,14 +43,17 @@ export default { ...@@ -43,14 +43,17 @@ export default {
} }
}, },
effects: { effects: {
*submit({payload}, {call, put}){ *create({payload}, {call, put, select}){
yield put({type: 'SubmitRequest', payload}) yield put({type: 'SubmitRequest', payload})
const {user} = yield select(state => state.user)
const params = { const params = {
id: payload.id, id: payload.id,
name: { name: {
[payload.locale]: payload.name [payload.locale]: payload.name
} },
author: user.id,
} }
try { try {
...@@ -58,6 +61,7 @@ export default { ...@@ -58,6 +61,7 @@ export default {
if (data) { if (data) {
yield put({type: 'SubmitSuccess'}) yield put({type: 'SubmitSuccess'})
yield put({type: 'reset'}) yield put({type: 'reset'})
yield put({type: 'Apps/fetch'})
message.info("i18n 创建成功") message.info("i18n 创建成功")
} }
} catch (error) { } catch (error) {
......
import {fetch, update} from '../services/Apps' import {fetch, update} from '../services/Apps'
import * as crypto from 'crypto'
import {message} from 'antd' import {message} from 'antd'
import config from '../config'
export default { export default {
...@@ -18,10 +16,12 @@ export default { ...@@ -18,10 +16,12 @@ export default {
}, },
}, },
effects: { effects: {
*fetch({payload}, {call, put}) { *fetch({payload}, {call, put, select}) {
const {user: {id: author, admin}} = yield select(state => state.user)
try { try {
const {data} = yield call(fetch, payload) const {data} = yield call(fetch, {...payload, author, admin})
let apps = {} let apps = {}
if (data && data.length > 0) { if (data && data.length > 0) {
...@@ -65,22 +65,6 @@ export default { ...@@ -65,22 +65,6 @@ export default {
subscriptions: { subscriptions: {
setup({dispatch, history}) { setup({dispatch, history}) {
dispatch({type: 'fetch'})
return history.listen(({pathname, query}) => {
if (pathname === '/login') {
let params = new URLSearchParams()
params.set('return_sso_url', config.returnSSO)
let payload = Buffer.from(params.toString()).toString('base64')
let url = new URL(config.SSOProvider)
params = url['searchParams'];
params.set('sso', payload);
params.set('sig', crypto.createHmac('sha256', 'zsZv6LXHDwwtUAGa').update(payload).digest('hex'))
window.location.href = url
}
})
} }
}, },
}; };
import {routerRedux} from 'dva/router'
import config from '../config'
import * as crypto from 'crypto'
export default { export default {
namespace: 'Common', namespace: 'Common',
...@@ -8,9 +11,39 @@ export default { ...@@ -8,9 +11,39 @@ export default {
reducers: { reducers: {
collapsed (state) { collapsed (state) {
const mode = state.collapsed ? 'inline' : 'vertical' const mode = state.collapsed ? 'inline' : 'vertical'
return { ...state, collapsed: !state.collapsed, mode } return {...state, collapsed: !state.collapsed, mode}
}
},
effects: {
*init({payload}, {put, call, select}) {
const {user} = yield select(state => state.user)
if (!user) {
yield put(routerRedux.replace('/login'))
}
// yield put({ type: 'Apps/fetch' })
}
},
subscriptions: {
setup({dispatch, history}) {
if (location.pathname != '/loginCallback') {
dispatch({type: 'init'})
}
return history.listen(({pathname, query}) => {
if (pathname === '/login') {
let params = new URLSearchParams()
params.set('return_sso_url', config.returnSSO)
let payload = Buffer.from(params.toString()).toString('base64')
let url = new URL(config.SSOProvider)
params = url['searchParams'];
params.set('sso', payload);
params.set('sig', crypto.createHmac('sha256', 'zsZv6LXHDwwtUAGa').update(payload).digest('hex'))
window.location.href = url
} else if (pathname === '/apps') {
dispatch({ type: 'Apps/fetch', query })
}
})
} }
}, },
effects: {},
subscriptions: {},
}; };
export default {
namespace: 'example',
state: {},
subscriptions: {
setup({ dispatch, history }) { // eslint-disable-line
},
},
effects: {
*fetch({ payload }, { call, put }) { // eslint-disable-line
yield put({ type: 'save' });
},
},
reducers: {
save(state, action) {
return { ...state, ...action.payload };
},
},
};
import {routerRedux} from 'dva/router'
export default { export default {
namespace: 'user', namespace: 'user',
state: { state: {
}, },
reducers: { reducers: {
change(state, action){ ssoLogin(state, action){
return { return {
...state, ...action.payload ...state, ...action.payload
} }
} }
}, },
effects: {}, effects: {
*ssoLogin({payload}, {put, call}) {
yield put(routerRedux.push('/apps'))
}
},
subscriptions: {}, subscriptions: {},
}; };
import React from 'react'; import React from 'react';
import { Router, Route } from 'dva/router'; import { Router, Route } from 'dva/router';
import IndexPage from './routes/IndexPage';
import Apps from "./routes/Apps.js"; import Apps from "./routes/Apps.js";
import AppDetail from './routes/AppDetail.js' import AppDetail from './routes/AppDetail.js'
import Entry from "./routes/Entry.js"; import Entry from "./routes/Entry.js";
......
...@@ -123,25 +123,26 @@ class AppDetail extends React.Component { ...@@ -123,25 +123,26 @@ class AppDetail extends React.Component {
}); });
} }
handleChangeIco = ({fileList}) => { handleChangeIco = ({file, fileList}) => {
this.setState({iconList: fileList}) this.setState({iconList: fileList})
this.handleUpdateImg({fileList, field: 'icon'}) this.handleUpdateImg({file, fileList, field: 'icon'})
} }
handleChangeCover = ({fileList}) => { handleChangeCover = ({file, fileList}) => {
this.setState({coverList: fileList}) this.setState({coverList: fileList})
this.handleUpdateImg({fileList, field: 'cover'}) this.handleUpdateImg({file, fileList, field: 'cover'})
} }
handleChangeBackground = ({fileList}) => { handleChangeBackground = ({file, fileList}) => {
this.setState({backgroundList: fileList}) this.setState({backgroundList: fileList})
this.handleUpdateImg({fileList, field: 'background'}) this.handleUpdateImg({file, fileList, field: 'background'})
} }
handleUpdateImg = ({field, fileList}) => { handleUpdateImg = ({file, field, fileList}) => {
const {form, dispatch, params: {id}} = this.props const {form, dispatch, params: {id}} = this.props
const [img] = fileList if (file.status === 'done') {
if (img.status === 'done') {
const [res] = img.response const [res] = img.response
dispatch({type: "Apps/update", payload: {id, [field]: res.Key}}) dispatch({type: "Apps/update", payload: {id, [field]: res.Key}})
} else if (file.status === 'error') {
message.error(file.response.message);
} }
} }
...@@ -187,7 +188,9 @@ class AppDetail extends React.Component { ...@@ -187,7 +188,9 @@ class AppDetail extends React.Component {
const {version, actions, references, dependencies} = values const {version, actions, references, dependencies} = values
Object.keys(actions).forEach((platform) => { Object.keys(actions).forEach((platform) => {
if(actions[platform]) {
actions[platform] = JSON.parse(actions[platform]) actions[platform] = JSON.parse(actions[platform])
}
}) })
dispatch({type: "Apps/update", payload: {id, version, actions, references, dependencies}}) dispatch({type: "Apps/update", payload: {id, version, actions, references, dependencies}})
...@@ -376,7 +379,7 @@ class AppDetail extends React.Component { ...@@ -376,7 +379,7 @@ class AppDetail extends React.Component {
return ( return (
<Spin spinning={loading.global}> <Spin spinning={loading.global}>
<Tabs defaultActiveKey="1" className="app-detail-nav" type="card"> <Tabs defaultActiveKey="1" className="app-detail-nav">
<TabPane tab={<span><Icon type="setting"/> 基本信息 </span>} key="1"> <TabPane tab={<span><Icon type="setting"/> 基本信息 </span>} key="1">
<div className={styles.form}> <div className={styles.form}>
<Form onSubmit={this.onSubmitBase}> <Form onSubmit={this.onSubmitBase}>
...@@ -392,7 +395,7 @@ class AppDetail extends React.Component { ...@@ -392,7 +395,7 @@ class AppDetail extends React.Component {
<div className="clearfix"> <div className="clearfix">
<Upload <Upload
multiple={false} multiple={false}
action={`${config.apiRoot}/upload/image`} action={`${config.apiRoot}/v1/upload/image`}
listType="picture-card" listType="picture-card"
className="upload-icon" className="upload-icon"
fileList={iconList} fileList={iconList}
...@@ -418,7 +421,7 @@ class AppDetail extends React.Component { ...@@ -418,7 +421,7 @@ class AppDetail extends React.Component {
<div className="clearfix"> <div className="clearfix">
<Upload <Upload
multiple={false} multiple={false}
action={`${config.apiRoot}/upload/image`} action={`${config.apiRoot}/v1/upload/image`}
listType="picture-card" listType="picture-card"
className="upload-icon" className="upload-icon"
fileList={coverList} fileList={coverList}
...@@ -444,7 +447,7 @@ class AppDetail extends React.Component { ...@@ -444,7 +447,7 @@ class AppDetail extends React.Component {
<div className="clearfix"> <div className="clearfix">
<Upload <Upload
multiple={false} multiple={false}
action={`${config.apiRoot}/upload/image`} action={`${config.apiRoot}/v1/upload/image`}
listType="picture-card" listType="picture-card"
className="upload-icon" className="upload-icon"
fileList={backgroundList} fileList={backgroundList}
...@@ -899,7 +902,7 @@ class AppDetail extends React.Component { ...@@ -899,7 +902,7 @@ class AppDetail extends React.Component {
} }
}} }}
disabled={ pack.status !== 'init' && pack.status !== 'failed'} disabled={ pack.status !== 'init' && pack.status !== 'failed'}
action={`${config.apiRoot}/upload/package/${pack["_id"]}`} action={`${config.apiRoot}/v1/upload/package/${pack["_id"]}`}
> >
<p className="ant-upload-drag-icon"> <p className="ant-upload-drag-icon">
<Icon type="inbox"/> <Icon type="inbox"/>
......
...@@ -55,7 +55,7 @@ function Apps({children, dispatch, isCreate, isSubmit, apps}) { ...@@ -55,7 +55,7 @@ function Apps({children, dispatch, isCreate, isSubmit, apps}) {
isLoading: isSubmit, isLoading: isSubmit,
onCancel: () => dispatch({ type: 'App/onCancel'}), onCancel: () => dispatch({ type: 'App/onCancel'}),
onCreate: () => dispatch({ type: 'App/onCreate'}), onCreate: () => dispatch({ type: 'App/onCreate'}),
onSubmit: (payload) => dispatch({ type: 'App/submit', payload}), onSubmit: (payload) => dispatch({ type: 'App/create', payload}),
} }
const CreateButtonProps = { const CreateButtonProps = {
...@@ -91,7 +91,7 @@ function Apps({children, dispatch, isCreate, isSubmit, apps}) { ...@@ -91,7 +91,7 @@ function Apps({children, dispatch, isCreate, isSubmit, apps}) {
function mapStateToProps(state) { function mapStateToProps(state) {
const { const {
Apps: { apps }, Apps: { apps },
App: { isCreate, isSubmit } App: { isCreate, isSubmit },
} = state } = state
return { return {
apps, apps,
......
.normal {
font-family: Georgia, sans-serif;
margin-top: 3em;
text-align: center;
}
.title {
font-size: 2.5rem;
font-weight: normal;
letter-spacing: -1px;
}
.welcome {
height: 328px;
background: url(../assets/yay.jpg) no-repeat center 0;
background-size: 388px 328px;
}
.list {
font-size: 1.2em;
margin-top: 1.8em;
list-style: none;
line-height: 1.5em;
}
.list code {
background: #f7f7f7;
}
import React from 'react';
import { connect } from 'dva';
import styles from './IndexPage.css';
function IndexPage() {
return (
<div className={styles.normal}>
<h1 className={styles.title}>Yay! Welcome to dva!</h1>
<div className={styles.welcome} />
<ul className={styles.list}>
<li>To get started, edit <code>src/index.js</code> and save to reload.</li>
<li><a href="https://github.com/dvajs/dva-docs/blob/master/v1/en-us/getting-started.md">Getting Started</a></li>
</ul>
</div>
);
}
IndexPage.propTypes = {
};
export default connect()(IndexPage);
import React from 'react';
import { connect } from 'dva';
import styles from './Login.css';
function Login() {
return (
<div className={styles.normal}>
Route Component: Login
</div>
);
}
function mapStateToProps() {
return {};
}
export default connect(mapStateToProps)(Login);
import React from 'react'; import React from 'react';
import { connect } from 'dva'; import {connect} from 'dva';
import styles from './LoginCallback.css'; import styles from './LoginCallback.css';
class LoginCallback extends React.Component{ class LoginCallback extends React.Component {
componentDidMount() { componentDidMount() {
const { location: { query: { sso }}, dispatch } = this.props const {location: {query: {sso}}, dispatch} = this.props
console.log(this.props) const user = toObject(new URLSearchParams(Buffer.from(sso, 'base64').toString()))
const data = toObject(new URLSearchParams(Buffer.from(sso, 'base64').toString()))
if (data) { if (user) {
dispatch({type: "user/change", payload:{ data }}) dispatch({type: "user/ssoLogin", payload: { user } })
localStorage.setItem("user", JSON.stringify(data))
} }
} }
render(){ render() {
const {dispatch, location} = this.props const {dispatch, location} = this.props
return ( return (
...@@ -26,8 +24,7 @@ class LoginCallback extends React.Component{ ...@@ -26,8 +24,7 @@ class LoginCallback extends React.Component{
) )
} }
} }
function LoginCallback({ }) { function LoginCallback({}) {
return ( return (
...@@ -37,14 +34,12 @@ function LoginCallback({ }) { ...@@ -37,14 +34,12 @@ function LoginCallback({ }) {
); );
} }
function mapStateToProps({ }) { function mapStateToProps({}) {
return { return {};
};
} }
function toObject(entries){ function toObject(entries) {
let result = {}; let result = {};
for (let [key, value] of entries) { for (let [key, value] of entries) {
result[key] = value; result[key] = value;
......
import * as qs from 'qs'
import request from '../utils/request' import request from '../utils/request'
export async function fetch() { export async function fetch(params) {
return request(`/apps`)
return request(`/v1/apps?${qs.stringify(params)}`)
} }
export async function create(params) { export async function create(params) {
return request(`/apps/${params.id}`, { return request(`/v1/app/${params.id}`, {
method: 'POST', method: 'POST',
body: JSON.stringify(params) body: JSON.stringify(params)
}) })
} }
export async function update(params) { export async function update(params) {
return request(`/apps/${params.id}`, { return request(`/v1/app/${params.id}`, {
method: 'PATCH', method: 'PATCH',
body: JSON.stringify(params) body: JSON.stringify(params)
}) })
......
...@@ -2,34 +2,34 @@ import request from '../utils/request' ...@@ -2,34 +2,34 @@ import request from '../utils/request'
export async function add(params) { export async function add(params) {
return request(`/packages`, { return request(`/v1/package`, {
method: 'POST', method: 'POST',
body: JSON.stringify(params) body: JSON.stringify(params)
}) })
} }
export async function patch(params) { export async function patch(params) {
return request(`/packages`, { return request(`/v1/package`, {
method: 'PATCH', method: 'PATCH',
body: JSON.stringify(params) body: JSON.stringify(params)
}) })
} }
export async function fetch(params) { export async function fetch(params) {
return request(`/packages/manage?appId=${params.appId}`, { return request(`/v1/packages?appId=${params.appId}`, {
method: 'GET', method: 'GET',
}) })
} }
export async function urlUpload(params) { export async function urlUpload(params) {
return request('/upload/packageUrl', { return request('/v1/upload/packageUrl', {
method: 'POST', method: 'POST',
body: JSON.stringify(params) body: JSON.stringify(params)
}) })
} }
export async function del(params) { export async function del(params) {
return request(`/packages`, { return request(`/v1/package`, {
method: 'DELETE', method: 'DELETE',
body: JSON.stringify(params) body: JSON.stringify(params)
}) })
......
import request from '../utils/request';
export async function query() {
return request('/api/users');
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment