Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
K
kus-admin
Project
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Иван Кубота
kus-admin
Commits
67f96207
Commit
67f96207
authored
Jan 30, 2020
by
talequale
Browse files
Options
Browse Files
Download
Plain Diff
merge
parents
5249e7f9
293acf8e
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
30 additions
and
26 deletions
+30
-26
Store.js
src/model/Store.js
+9
-9
CardSlider.jsx
src/view/cmp/cardSlider/CardSlider.jsx
+21
-17
No files found.
src/model/Store.js
View file @
67f96207
let
latest
;
let
latest
,
STORE_VERSION
=
'v0.1'
;
const
store
=
new
Store
(
latest
=
{
const
store
=
new
Store
(
latest
=
{
commit
:
window
.
CommitID
,
_VERSION_
:
STORE_VERSION
,
'navigation'
:
{
'navigation'
:
{
current
:
'Login'
current
:
'Login'
},
},
...
@@ -16,23 +16,23 @@ const store = new Store(latest = {
...
@@ -16,23 +16,23 @@ const store = new Store(latest = {
try
{
try
{
var
data
=
JSON
.
parse
(
localStorage
.
getItem
(
'store'
)
);
var
data
=
JSON
.
parse
(
localStorage
.
getItem
(
'store'
)
);
if
(
data
.
commit
!==
store
.
get
(
'commit
'
)){
if
(
data
.
_VERSION_
!==
store
.
get
(
'_VERSION_
'
)){
console
.
warn
(
'STORE:outdated, new state → localStorage'
);
console
.
warn
(
'STORE:outdated, new state → localStorage'
);
console
.
warn
(
'
\
tSTORE:currentData #'
+
store
.
get
(
'
commit
'
),
store
.
_props
);
console
.
warn
(
'
\
tSTORE:currentData #'
+
store
.
get
(
'
_VERSION_
'
),
store
.
_props
);
console
.
warn
(
'
\
tSTORE:savedData #
'
+
window
.
CommitID
,
data
);
console
.
warn
(
'
\
tSTORE:savedData #
'
+
STORE_VERSION
,
data
);
console
.
warn
(
'
\
tSTORE:hint → Run Store.restore() for restore saved state'
);
console
.
warn
(
'
\
tSTORE:hint → Run Store.restore() for restore saved state'
);
console
.
warn
(
'
\
tStore:hint → Run Store.update() for load latest default state'
);
console
.
warn
(
'
\
tStore:hint → Run Store.update() for load latest default state'
);
Store
.
restore
=
function
()
{
Store
.
restore
=
function
()
{
for
(
var
k
in
data
){
for
(
var
k
in
data
){
if
(
k
!==
'
commit
'
){
if
(
k
!==
'
_VERSION_
'
){
store
.
set
(
k
,
data
[
k
]
);
store
.
set
(
k
,
data
[
k
]
);
}
}
}
}
};
};
Store
.
update
=
function
()
{
Store
.
update
=
function
()
{
for
(
var
k
in
latest
){
for
(
var
k
in
latest
){
if
(
k
!==
'
commit
'
){
if
(
k
!==
'
_VERSION_
'
){
store
.
set
(
k
,
latest
[
k
]
);
store
.
set
(
k
,
latest
[
k
]
);
}
}
}
}
...
@@ -51,11 +51,11 @@ store.on('change', function() {
...
@@ -51,11 +51,11 @@ store.on('change', function() {
const
createSavableStore
=
function
(
name
)
{
const
createSavableStore
=
function
(
name
)
{
const
store
=
new
Store
(
latest
=
{
const
store
=
new
Store
(
latest
=
{
commit
:
window
.
CommitID
_VERSION_
:
STORE_VERSION
});
});
try
{
try
{
var
data
=
JSON
.
parse
(
localStorage
.
getItem
(
name
)
);
var
data
=
JSON
.
parse
(
localStorage
.
getItem
(
name
)
);
if
(
data
.
commit
===
store
.
get
(
'commit
'
)){
if
(
data
.
_VERSION_
===
store
.
get
(
'_VERSION_
'
)){
for
(
var
k
in
data
){
for
(
var
k
in
data
){
store
.
set
(
k
,
data
[
k
]
);
store
.
set
(
k
,
data
[
k
]
);
}
}
...
...
src/view/cmp/cardSlider/CardSlider.jsx
View file @
67f96207
...
@@ -20,19 +20,6 @@ const CardSlider = D.declare( 'view.cmp.CardSlider', (cfg) => {
...
@@ -20,19 +20,6 @@ const CardSlider = D.declare( 'view.cmp.CardSlider', (cfg) => {
update
=
function
()
{
update
=
function
()
{
updateSize
();
updateSize
();
updateVisibleDom
();
updateVisibleDom
();
/*D.removeChildren(wrap);
D.appendChild(wrap, items.map(function(item, n) {
return <div className="cards-list__item">
<Card
type={'product,info,other'.split( ',' )[ n % 3 ]}
disabled={n % 5 === 0}
seen={n % 4 === 0}
title={item.name}
image={item.image}
/>
</div>
}));*/
};
};
...
@@ -44,17 +31,31 @@ const CardSlider = D.declare( 'view.cmp.CardSlider', (cfg) => {
...
@@ -44,17 +31,31 @@ const CardSlider = D.declare( 'view.cmp.CardSlider', (cfg) => {
},
30
));
},
30
));
let
waitTimeout
=
false
;
let
waitTimeout
=
false
;
let
tuning
=
false
;
let
tuning
=
false
;
let
leftestItem
=
0
;
let
lastLeftestItem
=
0
;
let
tuneScrollPosition
=
function
()
{
let
tuneScrollPosition
=
function
()
{
waitTimeout
=
false
;
waitTimeout
=
false
;
tuning
=
true
;
tuning
=
true
;
let
fromLeft
=
dom
.
scrollLeft
;
let
fromLeft
=
dom
.
scrollLeft
;
let
firstItem
=
Math
.
round
(
fromLeft
/
(
cardWidth
+
padding
));
let
firstItem
=
Math
.
round
(
fromLeft
/
(
cardWidth
+
padding
)
-
(
lastLeftestItem
>
leftestItem
?
0.4
:
-
0.4
)
);
let
toLeft
=
Math
.
round
(
firstItem
*
(
cardWidth
+
padding
));
let
toLeft
=
Math
.
round
(
firstItem
*
(
cardWidth
+
padding
));
let
deltaMove
=
(
toLeft
-
fromLeft
)
/
Math
.
ceil
(
200
/
(
1000
/
60
));
let
deltaMove
=
(
toLeft
-
fromLeft
)
/
Math
.
ceil
(
200
/
(
1000
/
60
));
while
(
deltaMove
>
0
&&
deltaMove
<
1
){
deltaMove
*=
2
;
}
if
(
Math
.
abs
(
fromLeft
+
deltaMove
-
toLeft
)
>
Math
.
abs
(
fromLeft
-
toLeft
)){
deltaMove
=
toLeft
-
fromLeft
;
}
let
tune
=
function
()
{
let
tune
=
function
()
{
if
(
Math
.
abs
(
toLeft
-
dom
.
scrollLeft
)
>
(
cardWidth
+
padding
)){
return
tuning
=
false
;
}
if
(
Math
.
sign
(
toLeft
-
dom
.
scrollLeft
)
!==
Math
.
sign
(
deltaMove
)){
return
tuning
=
false
;
}
if
(
Math
.
abs
(
dom
.
scrollLeft
-
toLeft
)
<
Math
.
abs
(
deltaMove
)){
if
(
Math
.
abs
(
dom
.
scrollLeft
-
toLeft
)
<
Math
.
abs
(
deltaMove
)){
dom
.
scrollLeft
=
toLeft
;
dom
.
scrollLeft
=
toLeft
;
tuning
=
false
;
return
tuning
=
false
;
}
else
{
}
else
{
dom
.
scrollLeft
+=
deltaMove
;
dom
.
scrollLeft
+=
deltaMove
;
requestAnimationFrame
(
tune
);
requestAnimationFrame
(
tune
);
...
@@ -67,13 +68,16 @@ const CardSlider = D.declare( 'view.cmp.CardSlider', (cfg) => {
...
@@ -67,13 +68,16 @@ const CardSlider = D.declare( 'view.cmp.CardSlider', (cfg) => {
}
}
};
};
let
waitUntilDoNotTouchScroll
=
function
()
{
let
waitUntilDoNotTouchScroll
=
function
()
{
if
(
tuning
)
if
(
tuning
)
return
;
return
;
lastLeftestItem
=
leftestItem
;
leftestItem
=
dom
.
scrollLeft
/
(
cardWidth
+
padding
);
if
(
waitTimeout
)
if
(
waitTimeout
)
clearTimeout
(
waitTimeout
);
clearTimeout
(
waitTimeout
);
waitTimeout
=
setTimeout
(
tuneScrollPosition
,
20
0
);
waitTimeout
=
setTimeout
(
tuneScrollPosition
,
8
0
);
};
};
let
dom
;
let
dom
;
let
theDOM
=
<
div
class=
"card-slider"
>
let
theDOM
=
<
div
class=
"card-slider"
>
...
...
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