qcobjects-sdk 2.3.24
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.
- package/.eslintrc.json +23 -0
- package/.github/FUNDING.yml +12 -0
- package/.github/ISSUE_TEMPLATE/bug_report.md +38 -0
- package/.github/ISSUE_TEMPLATE/custom.md +10 -0
- package/.github/ISSUE_TEMPLATE/feature_request.md +20 -0
- package/.github/ISSUE_TEMPLATE/issue-template.md +33 -0
- package/.github/workflows/npmpublish.yml +36 -0
- package/CHANGELOG.md +47 -0
- package/CNAME +1 -0
- package/QCObjects-SDK.js +95 -0
- package/README.md +864 -0
- package/README.rst +398 -0
- package/VERSION +1 -0
- package/_config.yml +1 -0
- package/css/base-modal.css +43 -0
- package/css/basic-layout-embedded-nav.css +14 -0
- package/css/basic-layout.css +76 -0
- package/css/components/horizontal-list.css +64 -0
- package/css/components/list.css +57 -0
- package/css/components/splashscreen.css +111 -0
- package/css/modal.css +46 -0
- package/demo-tests/test-component-grid.html +50 -0
- package/demo-tests/test-component-list.html +40 -0
- package/demo-tests/test-component-notifications.html +30 -0
- package/demo-tests/test-component-slider.html +52 -0
- package/favicon.ico +0 -0
- package/index.rst +398 -0
- package/js/org.qcobjects.cloud.auth.session.data.js +72 -0
- package/js/org.qcobjects.cloud.auth.session.usertoken.js +95 -0
- package/js/org.qcobjects.components.grid.js +59 -0
- package/js/org.qcobjects.components.js +226 -0
- package/js/org.qcobjects.components.list.js +48 -0
- package/js/org.qcobjects.components.notifications.js +168 -0
- package/js/org.qcobjects.components.slider.js +194 -0
- package/js/org.qcobjects.components.splashscreen.js +565 -0
- package/js/org.qcobjects.controllers.form.js +196 -0
- package/js/org.qcobjects.controllers.grid.js +268 -0
- package/js/org.qcobjects.controllers.js +10 -0
- package/js/org.qcobjects.controllers.list.js +229 -0
- package/js/org.qcobjects.controllers.slider.js +132 -0
- package/js/org.qcobjects.controllers.swagger.js +77 -0
- package/js/org.qcobjects.effects.js +262 -0
- package/js/org.qcobjects.i18n_messages.js +55 -0
- package/js/org.qcobjects.modal.controllers.js +42 -0
- package/js/org.qcobjects.modal.effects.js +48 -0
- package/js/org.qcobjects.models.js +40 -0
- package/js/org.qcobjects.tools.canvas.js +52 -0
- package/js/org.qcobjects.tools.js +59 -0
- package/js/org.qcobjects.tools.layouts.js +71 -0
- package/js/org.qcobjects.views.js +37 -0
- package/package.json +48 -0
- package/spec/support/jasmine.json +16 -0
- package/spec/testsSpec.js +9 -0
- package/templates/components/modalyoulose.tpl.html +3 -0
- package/templates/components/modalyouwin.tpl.html +4 -0
- package/templates/components/splashscreen.tpl.html +128 -0
- package/templates/components/swagger-ui.tpl.html +22 -0
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
:host * {
|
|
2
|
+
box-sizing: border-box;
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
:host {
|
|
6
|
+
zoom: 1.0;
|
|
7
|
+
width: device-width;
|
|
8
|
+
margin: 0;
|
|
9
|
+
top: 0;
|
|
10
|
+
left: 0;
|
|
11
|
+
right: 0;
|
|
12
|
+
bottom: 0;
|
|
13
|
+
position: absolute;
|
|
14
|
+
padding: 0;
|
|
15
|
+
min-width: 100vw;
|
|
16
|
+
min-height: 100vh;
|
|
17
|
+
width: 100vw;
|
|
18
|
+
height: 100vh;
|
|
19
|
+
overflow: hidden;
|
|
20
|
+
background-color: black;
|
|
21
|
+
}
|
|
22
|
+
#slot-logo::slotted(img) {
|
|
23
|
+
vertical-align: middle;
|
|
24
|
+
display: block;
|
|
25
|
+
width: 100vw;
|
|
26
|
+
left: 0;
|
|
27
|
+
margin: 0;
|
|
28
|
+
padding: 0;
|
|
29
|
+
top: 20vh;
|
|
30
|
+
bottom: 20vh;
|
|
31
|
+
position: absolute;
|
|
32
|
+
z-index: 9999999999;
|
|
33
|
+
transform-origin: center;
|
|
34
|
+
transform-style: preserve-3d;
|
|
35
|
+
filter: blur(0em);
|
|
36
|
+
transition: filter 0.5s;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
:host * {
|
|
40
|
+
-webkit-user-select: none;
|
|
41
|
+
-moz-user-select: none;
|
|
42
|
+
-ms-user-select: none;
|
|
43
|
+
user-select: none;
|
|
44
|
+
-webkit-touch-callout: none;
|
|
45
|
+
/* prevent callout to copy image, etc when tap to hold */
|
|
46
|
+
-webkit-text-size-adjust: none;
|
|
47
|
+
/* prevent webkit from resizing text to fit */
|
|
48
|
+
-webkit-user-select: none;
|
|
49
|
+
/* prevent copy paste, to allow, change 'none' to 'text' */
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/* FOCUS */
|
|
53
|
+
:host summary:focus,
|
|
54
|
+
:host a:focus,
|
|
55
|
+
:host button:focus {
|
|
56
|
+
outline: none;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
.splashscreen,
|
|
60
|
+
.fullscreen-bg {
|
|
61
|
+
padding: 0;
|
|
62
|
+
margin: 0;
|
|
63
|
+
top: 0;
|
|
64
|
+
left: 0;
|
|
65
|
+
right: 0;
|
|
66
|
+
bottom: 0;
|
|
67
|
+
padding: 0;
|
|
68
|
+
background-attachment: fixed;
|
|
69
|
+
background-position: center;
|
|
70
|
+
background-clip: content-box;
|
|
71
|
+
background-size: cover;
|
|
72
|
+
position: absolute;
|
|
73
|
+
min-width: 100vw;
|
|
74
|
+
min-height: 100vh;
|
|
75
|
+
width: 100vw;
|
|
76
|
+
height: 100vh;
|
|
77
|
+
z-index: 0;
|
|
78
|
+
overflow: hidden;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
.splashscreen .splashcontent {
|
|
82
|
+
top: 0;
|
|
83
|
+
left: 0;
|
|
84
|
+
right: 0;
|
|
85
|
+
bottom: 0;
|
|
86
|
+
margin: 0 auto;
|
|
87
|
+
width: 100vw;
|
|
88
|
+
height: 100vh;
|
|
89
|
+
padding: 0;
|
|
90
|
+
overflow: hidden;
|
|
91
|
+
z-index: 1;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
.splashscreen .splashcontent p {
|
|
95
|
+
color: white;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
video.fullscreen-bg__video {
|
|
99
|
+
top: 0;
|
|
100
|
+
left: 0;
|
|
101
|
+
bottom: 0;
|
|
102
|
+
right: 0;
|
|
103
|
+
margin: 0;
|
|
104
|
+
padding: 0;
|
|
105
|
+
position: absolute;
|
|
106
|
+
min-width: 100vw;
|
|
107
|
+
min-height: 100vh;
|
|
108
|
+
overflow: hidden;
|
|
109
|
+
z-index: 0;
|
|
110
|
+
object-fit: cover;
|
|
111
|
+
}
|
package/css/modal.css
ADDED
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
@import url("./base-modal.css");
|
|
2
|
+
|
|
3
|
+
.modal details {
|
|
4
|
+
border: 1px 0 0 1px solid #aaa;
|
|
5
|
+
border-radius: 4px;
|
|
6
|
+
padding: .5em .5em 0;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
.modal summary {
|
|
10
|
+
font-weight: bold;
|
|
11
|
+
margin: -.5em -.5em 0;
|
|
12
|
+
padding: .5em;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.modal details[open] {
|
|
16
|
+
padding: .5em;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
.modal details[open] summary {
|
|
20
|
+
border-bottom: 1px solid #aaa;
|
|
21
|
+
margin-bottom: .5em;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.modal summary::-webkit-details-marker {
|
|
25
|
+
display: none
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
.modal summary:after {
|
|
29
|
+
border-radius: 5px;
|
|
30
|
+
content: "+";
|
|
31
|
+
color: #111111;
|
|
32
|
+
float: left;
|
|
33
|
+
font-size: 1.5em;
|
|
34
|
+
font-weight: bold;
|
|
35
|
+
margin: -5px 10px 0 0;
|
|
36
|
+
padding: 0;
|
|
37
|
+
text-align: center;
|
|
38
|
+
width: 20px;
|
|
39
|
+
}
|
|
40
|
+
.modal details[open] summary:after {
|
|
41
|
+
content: "-";
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
.modal ul {
|
|
45
|
+
list-style-type: none;
|
|
46
|
+
}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html class="no-js" lang="en">
|
|
3
|
+
|
|
4
|
+
<head>
|
|
5
|
+
<meta charset="utf-8" />
|
|
6
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
7
|
+
<meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width" />
|
|
8
|
+
<!-- This is a wide open CSP declaration. To lock this down for production, see below. -->
|
|
9
|
+
<meta http-equiv="Content-Security-Policy" content="default-src * 'self' 'unsafe-inline' 'unsafe-eval' data: gap: https://ssl.gstatic.com; img-src * 'self' data:; child-src *; style-src * 'self' 'unsafe-inline' 'unsafe-eval'; script-src * 'self' 'unsafe-inline' 'unsafe-eval'; connect-src * 'self' 'unsafe-inline' 'unsafe-eval';media-src *">
|
|
10
|
+
<title>QCObjects Demo</title>
|
|
11
|
+
<script type="text/javascript" src="https://cdn.qcobjects.dev/QCObjects.js"></script>
|
|
12
|
+
</head>
|
|
13
|
+
|
|
14
|
+
<body>
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
<component name="grid" cols=4 componentClass="org.qcobjects.components.grid.GridComponent" serviceClass="MyTestService" ></component>
|
|
18
|
+
|
|
19
|
+
<script>
|
|
20
|
+
logger.debugEnabled= true;
|
|
21
|
+
|
|
22
|
+
Class('MyTestService',Service,{
|
|
23
|
+
name:'myservice',
|
|
24
|
+
external:true,
|
|
25
|
+
cached:false,
|
|
26
|
+
method:'GET',
|
|
27
|
+
headers:{'Content-Type':'application/json'},
|
|
28
|
+
url:'https://api.github.com/orgs/QuickCorp/repos',
|
|
29
|
+
withCredentials:false,
|
|
30
|
+
_new_:()=>{
|
|
31
|
+
// service instantiated
|
|
32
|
+
},
|
|
33
|
+
done({request, service}){
|
|
34
|
+
logger.debug(request);
|
|
35
|
+
service.template = JSON.stringify({result:JSON.parse(service.template).reverse().map(function (project){
|
|
36
|
+
return {
|
|
37
|
+
id:project.id,
|
|
38
|
+
description:project.description,
|
|
39
|
+
title:project.name,
|
|
40
|
+
url:project.html_url,
|
|
41
|
+
image:`https://via.placeholder.com/150/FFFF00/000000?text=${encodeURI(project.name)}`
|
|
42
|
+
};
|
|
43
|
+
})});
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
});
|
|
47
|
+
</script>
|
|
48
|
+
</body>
|
|
49
|
+
|
|
50
|
+
</html>
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html class="no-js" lang="en">
|
|
3
|
+
|
|
4
|
+
<head>
|
|
5
|
+
<meta charset="utf-8" />
|
|
6
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
7
|
+
<meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width" />
|
|
8
|
+
<!-- This is a wide open CSP declaration. To lock this down for production, see below. -->
|
|
9
|
+
<meta http-equiv="Content-Security-Policy" content="default-src * 'self' 'unsafe-inline' 'unsafe-eval' data: gap: https://ssl.gstatic.com; img-src * 'self' data:; child-src *; style-src * 'self' 'unsafe-inline' 'unsafe-eval'; script-src * 'self' 'unsafe-inline' 'unsafe-eval'; connect-src * 'self' 'unsafe-inline' 'unsafe-eval';media-src *">
|
|
10
|
+
<title>QCObjects Demo</title>
|
|
11
|
+
<script type="text/javascript" src="https://cdn.qcobjects.dev/QCObjects.js"></script>
|
|
12
|
+
</head>
|
|
13
|
+
|
|
14
|
+
<body>
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
<component name="list" componentClass="ListComponent" serviceClass="MyTestService" label-field="name" value-field="html_url"></component>
|
|
18
|
+
|
|
19
|
+
<script>
|
|
20
|
+
logger.debugEnabled= true;
|
|
21
|
+
|
|
22
|
+
Class('MyTestService',Service,{
|
|
23
|
+
name:'myservice',
|
|
24
|
+
external:true,
|
|
25
|
+
cached:false,
|
|
26
|
+
method:'GET',
|
|
27
|
+
headers:{'Content-Type':'application/json'},
|
|
28
|
+
url:'https://api.github.com/orgs/QuickCorp/repos',
|
|
29
|
+
withCredentials:false,
|
|
30
|
+
_new_:()=>{
|
|
31
|
+
// service instantiated
|
|
32
|
+
},
|
|
33
|
+
done:()=>{
|
|
34
|
+
// service loaded
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
</script>
|
|
38
|
+
</body>
|
|
39
|
+
|
|
40
|
+
</html>
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html class="no-js" lang="en">
|
|
3
|
+
|
|
4
|
+
<head>
|
|
5
|
+
<meta charset="utf-8" />
|
|
6
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
7
|
+
<meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width" />
|
|
8
|
+
<!-- This is a wide open CSP declaration. To lock this down for production, see below. -->
|
|
9
|
+
<meta http-equiv="Content-Security-Policy" content="default-src * 'self' 'unsafe-inline' 'unsafe-eval' data: gap: https://ssl.gstatic.com; img-src * 'self' data:; child-src *; style-src * 'self' 'unsafe-inline' 'unsafe-eval'; script-src * 'self' 'unsafe-inline' 'unsafe-eval'; connect-src * 'self' 'unsafe-inline' 'unsafe-eval';media-src *">
|
|
10
|
+
<title>QCObjects Demo</title>
|
|
11
|
+
<script type="text/javascript" src="https://cdn.qcobjects.dev/QCObjects.js"></script>
|
|
12
|
+
</head>
|
|
13
|
+
|
|
14
|
+
<body>
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
<component name="customnotification" template-source="inline" componentClass="CustomNotificationComponent" ></component>
|
|
18
|
+
|
|
19
|
+
<script>
|
|
20
|
+
Class ("CustomNotificationComponent", Component, {
|
|
21
|
+
message: "Page was loaded successfully!",
|
|
22
|
+
done (standardResponse) {
|
|
23
|
+
NotificationComponent.success(this.message);
|
|
24
|
+
_super_("NotificationComponent", "done").call(this, standardResponse);
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
</script>
|
|
28
|
+
</body>
|
|
29
|
+
|
|
30
|
+
</html>
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html class="no-js" lang="en">
|
|
3
|
+
|
|
4
|
+
<head>
|
|
5
|
+
<meta charset="utf-8" />
|
|
6
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
7
|
+
<meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width" />
|
|
8
|
+
<!-- This is a wide open CSP declaration. To lock this down for production, see below. -->
|
|
9
|
+
<meta http-equiv="Content-Security-Policy" content="default-src * 'self' 'unsafe-inline' 'unsafe-eval' data: gap: https://ssl.gstatic.com; img-src * 'self' data:; child-src *; style-src * 'self' 'unsafe-inline' 'unsafe-eval'; script-src * 'self' 'unsafe-inline' 'unsafe-eval'; connect-src * 'self' 'unsafe-inline' 'unsafe-eval';media-src *">
|
|
10
|
+
<title>QCObjects Demo</title>
|
|
11
|
+
<script type="text/javascript" src="https://cdn.qcobjects.dev/QCObjects.js"></script>
|
|
12
|
+
</head>
|
|
13
|
+
|
|
14
|
+
<body>
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
<component name="slider" componentClass="org.qcobjects.components.slider.SliderComponent" serviceClass="MyTestService" ></component>
|
|
18
|
+
|
|
19
|
+
<script>
|
|
20
|
+
logger.debugEnabled= true;
|
|
21
|
+
|
|
22
|
+
Class('MyTestService',Service,{
|
|
23
|
+
name:'myservice',
|
|
24
|
+
external:true,
|
|
25
|
+
cached:false,
|
|
26
|
+
method:'GET',
|
|
27
|
+
headers:{'Content-Type':'application/json'},
|
|
28
|
+
url:'https://api.github.com/orgs/QuickCorp/repos',
|
|
29
|
+
withCredentials:false,
|
|
30
|
+
_new_:()=>{
|
|
31
|
+
// service instantiated
|
|
32
|
+
},
|
|
33
|
+
done({request, service}){
|
|
34
|
+
logger.debug(request);
|
|
35
|
+
service.template = JSON.stringify({result:JSON.parse(service.template).reverse().map(function (project){
|
|
36
|
+
return {
|
|
37
|
+
id:project.id,
|
|
38
|
+
description:project.description,
|
|
39
|
+
title:project.name,
|
|
40
|
+
link:project.html_url,
|
|
41
|
+
image:`https://via.placeholder.com/150/FFFF00/000000?text=${encodeURI(project.name)}`,
|
|
42
|
+
label: "Go to repo",
|
|
43
|
+
category: project.name
|
|
44
|
+
};
|
|
45
|
+
})});
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
});
|
|
49
|
+
</script>
|
|
50
|
+
</body>
|
|
51
|
+
|
|
52
|
+
</html>
|
package/favicon.ico
ADDED
|
Binary file
|