forked from contentful/extensions
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.html
45 lines (41 loc) · 1.5 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
<!doctype html>
<head>
<link rel="stylesheet" href="https://contentful.github.io/ui-extensions-sdk/cf-extension.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/src/chessboard.css">
<style>
button { margin-top: 1em }
</style>
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.10/lodash.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.4/jquery.js"></script>
<script src="https://cdn.jsdelivr.net/npm/[email protected]/src/chessboard.min.js"></script>
<script src="https://unpkg.com/contentful-ui-extensions-sdk@3"></script>
</head>
<body>
<div id="board" style="width: 400px"></div>
<button class="cf-btn-secondary">Reset</button>
<script>
var cfExtension = window.contentfulExtension || window.contentfulWidget
var ChessBoard = window.ChessBoard
var $ = window.$
cfExtension.init(function (api) {
var board = ChessBoard('board', {
pieceTheme: 'https://cdn.jsdelivr.net/npm/[email protected]/website/img/chesspieces/wikipedia/{piece}.png',
draggable: true,
dropOffBoard: 'trash',
onChange: function (old, current) {
api.field.setValue(current)
}
})
api.window.updateHeight()
board.position(api.field.getValue())
api.field.onValueChanged(function (p) {
if (!_.isEqual(p, api.field.getValue())) {
board.position(p)
}
})
$('button').on('click', function () {
board.start()
})
})
</script>
</body>