Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
B
baas-ide
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
JIRA
JIRA
Merge Requests
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
guxukai
baas-ide
Commits
81eb45fb
Commit
81eb45fb
authored
Oct 04, 2015
by
chriseth
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Style.
parent
7985e986
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
67 additions
and
67 deletions
+67
-67
index.html
index.html
+67
-67
No files found.
index.html
View file @
81eb45fb
...
...
@@ -90,10 +90,10 @@ THE SOFTWARE.
var
Range
=
ace
.
require
(
'ace/range'
).
Range
;
var
errMarkerId
=
null
;
var
solFiles
=
JSON
.
parse
(
window
.
localStorage
.
getItem
(
SOL_CACHE_FILES_KEY
)
)
||
[
SOL_CACHE_FILE
];
var
solFiles
=
JSON
.
parse
(
window
.
localStorage
.
getItem
(
SOL_CACHE_FILES_KEY
)
)
||
[
SOL_CACHE_FILE
];
if
(
solFiles
.
length
===
0
)
solFiles
=
[
SOL_CACHE_FILE
];
var
solCache
=
window
.
localStorage
.
getItem
(
SOL_CACHE_FILE
)
||
BALLOT_EXAMPLE
;
window
.
localStorage
.
setItem
(
SOL_CACHE_FILE
,
solCache
)
var
solCache
=
window
.
localStorage
.
getItem
(
SOL_CACHE_FILE
)
||
BALLOT_EXAMPLE
;
window
.
localStorage
.
setItem
(
SOL_CACHE_FILE
,
solCache
)
if
(
window
.
localStorage
.
getItem
(
'sol-cache'
))
{
// Backwards-compatibility
...
...
@@ -105,9 +105,9 @@ THE SOFTWARE.
solFiles
.
push
(
'Untitled'
+
count
);
}
window
.
localStorage
.
setItem
(
SOL_CACHE_FILES_KEY
,
JSON
.
stringify
(
solFiles
)
);
window
.
localStorage
.
setItem
(
SOL_CACHE_FILES_KEY
,
JSON
.
stringify
(
solFiles
)
);
editor
.
setValue
(
solCache
,
-
1
);
editor
.
setValue
(
solCache
,
-
1
);
session
.
setMode
(
"ace/mode/javascript"
);
...
...
@@ -119,95 +119,95 @@ THE SOFTWARE.
var
count
=
0
;
var
$filesEl
=
$
(
'#files'
);
$filesEl
.
on
(
'click'
,
'.newFile'
,
function
()
{
$filesEl
.
on
(
'click'
,
'.newFile'
,
function
()
{
count
++
;
var
name
=
'Unititled'
+
count
;
solFiles
.
push
(
name
)
var
name
=
'Unititled'
+
count
;
solFiles
.
push
(
name
);
SOL_CACHE_FILE
=
name
;
window
.
localStorage
.
setItem
(
SOL_CACHE_FILES_KEY
,
JSON
.
stringify
(
solFiles
)
);
window
.
localStorage
.
setItem
(
SOL_CACHE_FILE
,
''
);
window
.
localStorage
.
setItem
(
SOL_CACHE_FILES_KEY
,
JSON
.
stringify
(
solFiles
)
);
window
.
localStorage
.
setItem
(
SOL_CACHE_FILE
,
''
);
updateFiles
();
})
$filesEl
.
on
(
'click'
,
'.file:not(.active)'
,
showFileHandler
)
$filesEl
.
on
(
'click'
,
'.file:not(.active)'
,
showFileHandler
);
$filesEl
.
on
(
'click'
,
'.file.active'
,
function
(
ev
)
{
$filesEl
.
on
(
'click'
,
'.file.active'
,
function
(
ev
)
{
var
$fileTabEl
=
$
(
this
);
var
originalName
=
$fileTabEl
.
find
(
'.name'
).
text
();
ev
.
preventDefault
();
if
(
$
(
this
).
find
(
'input'
).
length
>
0
)
return
false
;
if
(
$
(
this
).
find
(
'input'
).
length
>
0
)
return
false
;
var
$fileNameInputEl
=
$
(
'<input value="'
+
originalName
+
'"/>'
);
$fileTabEl
.
html
(
$fileNameInputEl
);
$fileTabEl
.
html
(
$fileNameInputEl
);
$fileNameInputEl
.
focus
();
$fileNameInputEl
.
select
();
$fileNameInputEl
.
on
(
'blur'
,
handleRename
);
$fileNameInputEl
.
keyup
(
handleRename
);
$fileNameInputEl
.
on
(
'blur'
,
handleRename
);
$fileNameInputEl
.
keyup
(
handleRename
);
function
handleRename
(
ev
)
{
function
handleRename
(
ev
)
{
ev
.
preventDefault
();
if
(
ev
.
which
&&
ev
.
which
!==
13
)
return
false
;
var
newName
=
ev
.
target
.
value
;
$fileNameInputEl
.
off
(
'blur'
);
$fileNameInputEl
.
off
(
'keyup'
);
if
(
newName
!==
originalName
&&
confirm
(
"Are you sure you want to rename: "
+
originalName
+
" to "
+
newName
+
'?'
))
{
if
(
newName
!==
originalName
&&
confirm
(
"Are you sure you want to rename: "
+
originalName
+
" to "
+
newName
+
'?'
))
{
solFiles
.
splice
(
solFiles
.
indexOf
(
originalName
),
1
,
newName
);
window
.
localStorage
.
setItem
(
newName
,
window
.
localStorage
.
getItem
(
originalName
)
);
window
.
localStorage
.
setItem
(
SOL_CACHE_FILES_KEY
,
JSON
.
stringify
(
solFiles
)
);
window
.
localStorage
.
removeItem
(
originalName
)
solFiles
.
splice
(
solFiles
.
indexOf
(
originalName
),
1
,
newName
);
window
.
localStorage
.
setItem
(
newName
,
window
.
localStorage
.
getItem
(
originalName
)
);
window
.
localStorage
.
setItem
(
SOL_CACHE_FILES_KEY
,
JSON
.
stringify
(
solFiles
)
);
window
.
localStorage
.
removeItem
(
originalName
);
SOL_CACHE_FILE
=
newName
;
}
updateFiles
()
updateFiles
()
;
return
false
;
}
return
false
;
})
$filesEl
.
on
(
'click'
,
'.file .remove'
,
function
(
ev
)
{
$filesEl
.
on
(
'click'
,
'.file .remove'
,
function
(
ev
)
{
ev
.
preventDefault
();
var
name
=
$
(
this
).
parent
().
find
(
'.name'
).
text
()
var
name
=
$
(
this
).
parent
().
find
(
'.name'
).
text
()
;
if
(
confirm
(
"Are you sure you want to remove: "
+
name
+
" from local storage?"
))
{
if
(
confirm
(
"Are you sure you want to remove: "
+
name
+
" from local storage?"
))
{
var
index
=
solFiles
.
indexOf
(
name
);
solFiles
.
splice
(
index
,
1
);
window
.
localStorage
.
setItem
(
SOL_CACHE_FILES_KEY
,
JSON
.
stringify
(
solFiles
)
);
SOL_CACHE_FILE
=
solFiles
[
Math
.
max
(
0
,
index
-
1
)]
window
.
localStorage
.
removeItem
(
name
)
updateFiles
()
solFiles
.
splice
(
index
,
1
);
window
.
localStorage
.
setItem
(
SOL_CACHE_FILES_KEY
,
JSON
.
stringify
(
solFiles
)
);
SOL_CACHE_FILE
=
solFiles
[
Math
.
max
(
0
,
index
-
1
)]
;
window
.
localStorage
.
removeItem
(
name
);
updateFiles
()
;
}
return
false
;
});
function
showFileHandler
(
ev
)
{
ev
.
preventDefault
()
function
showFileHandler
(
ev
)
{
ev
.
preventDefault
()
;
SOL_CACHE_FILE
=
$
(
this
).
find
(
'.name'
).
text
();
updateFiles
()
(
updateFiles
();
return
false
;
}
function
fileTabFromName
(
name
)
{
return
$
(
'#files .file'
).
filter
(
function
(){
return
$
(
this
).
find
(
'.name'
).
text
()
==
name
;
})
return
$
(
'#files .file'
).
filter
(
function
(){
return
$
(
this
).
find
(
'.name'
).
text
()
==
name
;
})
;
}
function
updateFiles
()
{
$filesEl
.
find
(
'.file'
).
remove
()
function
updateFiles
()
{
$filesEl
.
find
(
'.file'
).
remove
()
;
for
(
var
f
in
solFiles
)
{
if
(
solFiles
[
f
])
$filesEl
.
append
(
fileTabTemplate
(
solFiles
[
f
])
);
if
(
solFiles
[
f
])
$filesEl
.
append
(
fileTabTemplate
(
solFiles
[
f
])
);
}
var
active
=
fileTabFromName
(
SOL_CACHE_FILE
);
active
.
addClass
(
'active'
)
editor
.
setValue
(
window
.
localStorage
.
getItem
(
SOL_CACHE_FILE
)
||
''
,
-
1
);
$
(
'#input'
).
toggle
(
typeof
SOL_CACHE_FILE
===
'string'
)
active
.
addClass
(
'active'
)
;
editor
.
setValue
(
window
.
localStorage
.
getItem
(
SOL_CACHE_FILE
)
||
''
,
-
1
);
$
(
'#input'
).
toggle
(
typeof
SOL_CACHE_FILE
===
'string'
);
}
function
fileTabTemplate
(
name
){
function
fileTabTemplate
(
name
)
{
return
$
(
'<span class="file"><span class="name">'
+
name
+
'</span><span class="remove">x</span></span>'
);
}
SOL_CACHE_FILE
=
solFiles
[
0
]
SOL_CACHE_FILE
=
solFiles
[
0
]
;
updateFiles
();
// ----------------- version selector-------------
...
...
@@ -264,14 +264,14 @@ THE SOFTWARE.
$
(
'#ghostbar'
).
remove
();
$
(
document
).
unbind
(
'mousemove'
);
dragging
=
false
;
setEditorSize
(
delta
)
window
.
localStorage
.
setItem
(
EDITOR_SIZE_CACHE_KEY
,
delta
);
setEditorSize
(
delta
)
window
.
localStorage
.
setItem
(
EDITOR_SIZE_CACHE_KEY
,
delta
);
}
});
// set cached defaults
var
cachedSize
=
window
.
localStorage
.
getItem
(
EDITOR_SIZE_CACHE_KEY
);
if
(
cachedSize
)
setEditorSize
(
cachedSize
);
var
cachedSize
=
window
.
localStorage
.
getItem
(
EDITOR_SIZE_CACHE_KEY
);
if
(
cachedSize
)
setEditorSize
(
cachedSize
);
// ----------------- editor resize ---------------
...
...
@@ -291,7 +291,7 @@ THE SOFTWARE.
window
.
onresize
=
onResize
;
onResize
();
document
.
querySelector
(
'#editor'
).
addEventListener
(
'change'
,
onResize
);
document
.
querySelector
(
'#editor'
).
addEventListener
(
'change'
,
onResize
);
// ----------------- compiler ----------------------
...
...
@@ -306,9 +306,9 @@ THE SOFTWARE.
editor
.
getSession
().
removeMarker
(
errMarkerId
);
$
(
'#output'
).
empty
();
var
input
=
editor
.
getValue
();
window
.
localStorage
.
setItem
(
SOL_CACHE_FILE
,
input
);
window
.
localStorage
.
setItem
(
SOL_CACHE_FILE
,
input
);
var
inputIncludingImports
=
includeLocalImports
(
input
);
var
inputIncludingImports
=
includeLocalImports
(
input
);
var
optimize
=
document
.
querySelector
(
'#optimize'
).
checked
;
try
{
...
...
@@ -332,7 +332,7 @@ THE SOFTWARE.
var
onChange
=
function
()
{
var
input
=
editor
.
getValue
();
if
(
input
===
""
)
{
window
.
localStorage
.
setItem
(
SOL_CACHE_FILE
,
''
)
window
.
localStorage
.
setItem
(
SOL_CACHE_FILE
,
''
)
return
;
}
if
(
input
===
previousInput
)
...
...
@@ -349,20 +349,20 @@ THE SOFTWARE.
onChange
();
};
function
includeLocalImports
(
input
)
{
function
includeLocalImports
(
input
)
{
var
importRegex
=
/import
\s[\'\"]([^\'\"]
+
)[\'\"]
;/g
var
imports
=
[];
var
matches
=
[];
var
match
;
while
((
match
=
importRegex
.
exec
(
input
))
!==
null
)
{
if
(
match
[
1
]
&&
solFiles
.
indexOf
(
match
[
1
])
!==
-
1
)
{
imports
.
push
(
match
[
1
]
)
matches
.
push
(
match
[
0
]
)
imports
.
push
(
match
[
1
]
)
matches
.
push
(
match
[
0
]
)
}
}
for
(
var
i
in
imports
)
{
imported
=
includeLocalImports
(
window
.
localStorage
.
getItem
(
imports
[
i
]
)
)
input
=
input
.
replace
(
matches
[
i
],
imported
);
imported
=
includeLocalImports
(
window
.
localStorage
.
getItem
(
imports
[
i
])
)
input
=
input
.
replace
(
matches
[
i
],
imported
);
}
return
input
;
}
...
...
@@ -382,8 +382,8 @@ THE SOFTWARE.
.
append
(
$
(
'<pre class="error"></pre>'
).
text
(
message
));
var
err
=
message
.
match
(
/^:
([
0-9
]
*
)
:
([
0-9
]
*
)
/
)
if
(
err
&&
err
.
length
)
{
var
errLine
=
parseInt
(
err
[
1
],
10
)
-
1
;
var
errCol
=
err
[
2
]
?
parseInt
(
err
[
2
],
10
)
:
0
;
var
errLine
=
parseInt
(
err
[
1
],
10
)
-
1
;
var
errCol
=
err
[
2
]
?
parseInt
(
err
[
2
],
10
)
:
0
;
sourceAnnotations
[
sourceAnnotations
.
length
]
=
{
row
:
errLine
,
column
:
errCol
,
...
...
@@ -399,14 +399,14 @@ THE SOFTWARE.
var
funABI
=
getConstructorInterface
(
$
.
parseJSON
(
interface
));
$
.
each
(
funABI
.
inputs
,
function
(
i
,
inp
)
{
code
+=
"var "
+
inp
.
name
+
" = /* var of type "
+
inp
.
type
+
" here */ ;
\
n"
;
code
+=
"var "
+
inp
.
name
+
" = /* var of type "
+
inp
.
type
+
" here */ ;
\
n"
;
});
code
+=
"
\
nvar "
+
contractName
+
"Contract = web3.eth.contract("
+
interface
.
replace
(
"
\
n"
,
""
)
+
");"
+
"
\
nvar "
+
contractName
+
" = "
+
contractName
+
"Contract.new("
;
code
+=
"
\
nvar "
+
contractName
+
"Contract = web3.eth.contract("
+
interface
.
replace
(
"
\
n"
,
""
)
+
");"
+
"
\
nvar "
+
contractName
+
" = "
+
contractName
+
"Contract.new("
;
$
.
each
(
funABI
.
inputs
,
function
(
i
,
inp
)
{
code
+=
"
\
n "
+
inp
.
name
+
","
;
code
+=
"
\
n "
+
inp
.
name
+
","
;
});
code
+=
"
\
n {"
+
...
...
@@ -425,7 +425,7 @@ THE SOFTWARE.
};
var
combined
=
function
(
contractName
,
interface
,
bytecode
){
return
JSON
.
stringify
(
[{
name
:
contractName
,
interface
:
interface
,
bytecode
:
bytecode
}]);
return
JSON
.
stringify
([{
name
:
contractName
,
interface
:
interface
,
bytecode
:
bytecode
}]);
};
...
...
@@ -437,7 +437,7 @@ THE SOFTWARE.
var
contractOutput
=
$
(
'<div class="contractOutput"/>'
)
.
append
(
title
);
var
body
=
$
(
'<div class="body" />'
)
contractOutput
.
append
(
body
);
contractOutput
.
append
(
body
);
if
(
contract
.
bytecode
.
length
>
0
)
title
.
append
(
$
(
'<div class="size"/>'
).
text
((
contract
.
bytecode
.
length
/
2
)
+
' bytes'
))
body
.
append
(
getExecuteInterface
(
contract
,
contractName
))
...
...
@@ -451,7 +451,7 @@ THE SOFTWARE.
title
.
click
(
function
(
ev
){
$
(
this
).
parent
().
toggleClass
(
'hide'
)
});
}
$
(
'.col2 input,textarea'
).
click
(
function
()
{
this
.
select
();
}
);
$
(
'.col2 input,textarea'
).
click
(
function
()
{
this
.
select
();
});
};
var
tableRowItems
=
function
(
first
,
second
,
cls
)
{
return
$
(
'<div class="row"/>'
)
...
...
@@ -532,7 +532,7 @@ THE SOFTWARE.
return
text
;
};
$
(
'.asmOutput button'
).
click
(
function
()
{
$
(
this
).
parent
().
find
(
'pre'
).
toggle
();
}
)
$
(
'.asmOutput button'
).
click
(
function
()
{
$
(
this
).
parent
().
find
(
'pre'
).
toggle
();
})
// ----------------- VM ----------------------
...
...
@@ -621,7 +621,7 @@ THE SOFTWARE.
var
appendFunctions
=
function
(
address
)
{
var
instance
=
$
(
'<div class="contractInstance"/>'
);
var
title
=
$
(
'<span class="title"/>'
).
text
(
'Contract at '
+
address
.
toString
(
'hex'
)
);
var
title
=
$
(
'<span class="title"/>'
).
text
(
'Contract at '
+
address
.
toString
(
'hex'
));
instance
.
append
(
title
);
$
.
each
(
abi
,
function
(
i
,
funABI
)
{
if
(
funABI
.
type
!=
'function'
)
return
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment