Project Docs Github
Log in
ittf site webapi index.html.ittf Edit
  • /ittf/site/webapi/index.html.ittf
  • /t/html/layouts/site.html.ittf
  • /ittf/site/webapi/t/d-prop.html.ittf
  • /ittf/site/webapi/t/d-control.html.ittf
  • /t/models/docs/site.wzctx.ittf
  • /t/html/layouts/t/styles.html.ittf
  • /t/html/layouts/site-styles.html.ittf
  • /t/html/a.html.ittf
  • /t/html/images/logo.html.ittf
  • /t/html/layouts/site-scripts.html.ittf
  • /t/html/images/t/wizzi-logo-i.html.ittf
  • /t/html/images/t/wizzi-logo-z.html.ittf
  • /t/html/s.html.ittf
  • /t/html/j.html.ittf
  • Ref: /ittf/site/webapi/index.json.ittf
  • Ref: /ittf/site/webapi/styles.css.ittf
  • Ref: /ittf/site/webapi/main.js.ittf
  • /t/js/wz/core.js.ittf
  • /t/js/wz/stringFunctions.js.ittf
  • /t/js/wz/t/polyfill.js.ittf
  • /t/js/wz/t/eventTarget.js.ittf
  • /t/js/wz/t/global.js.ittf
  • /t/js/wz/t/events.js.ittf
  • /t/js/wz/t/verify.js.ittf
  • Ref: /ittf/css/main.css.ittf
  • /ittf/css/t/colors.css.ittf
  • /ittf/css/t/layout.css.ittf
  • /ittf/css/t/form.css.ittf
  • /ittf/css/t/icons.css.ittf

/ittf/site/webapi/index.html.ittf (primary)

edit
                                            
1 html
2 $$ TODO For ittf(s) documents, user SHOULD BE set in the global Artifact Generation Context
3 $
4 var opt = {
5 }
6 for (var i = 0; i < wzCtx.apis.length; i++) {
7 var api = wzCtx.apis[i];
8 api._id = api.method + _.replace(_.replace(api.url, ':', '_'), '/', '_');
9 }
10 html/layouts/site( &opt )
11 $append head-styles-2
12 css ./styles.css.ittf
13 . d-container
14 . d-left-aside
15 ul
16 $foreach api in wzCtx.apis
17 li
18 a ${api.title}
19 href #api_id_${api.url}
20 . d-main-content
21 $foreach api in wzCtx.apis
22 . d-api
23 id api_id_${api.url}
24 h3 ${api.title}
25 d-prop( method, ${api.method})
26 d-prop( url, ${api.url})
27 $if api.parameters.length > 0
28 h4 Parameters
29 . d-params-panel
30 $foreach p in api.parameters
31 d-control( ${p.type})
32 \b param_${ api._id + '_' + p.name },
33 \b ${p.label},
34 \b ${_.replace(p.demoValue, ',', '$')}
35 . d-buttons
36 button Exec
37 id btn_${ api._id }
38 hr
39 . d-right-aside
40 . container
41 textarea
42 id output
43 style background-color: #969696
44 cols 150
45 rows 40
46 wrap soft
47 readonly
48 $*
49 pre
50 code
51 id output
52 *$
53 $append body-scripts
54 js ./main.js.ittf
55 script
56 module
57 var btn
58 $foreach api in wzCtx.apis
59 set btn = document.querySelector("#" + 'btn_${ api._id }')
60 _ btn.addEventListener
61 @ 'click'
62 function
63 $if api.method == 'get'
64 var url = '${api.url}'
65 $foreach p in api.parameters
66 var param_${p.name} = get_value('param_${ api._id + '_' + p.name }')
67 $if p.paramType == 'url'
68 set url = url.replaceAll(':${p.name}', encodeURIComponent(param_${p.name}))
69 $else
70 $if p_index == 0
71 set url += '?${p.name}=' + param_${p.name}
72 $else
73 set url += '&${p.name}=' + param_${p.name}
74 _ exec_get
75 @ url
76 $elif api.method == 'post' || api.method == 'put'
77 var url = '${api.url}'
78 var payload = {}
79 $foreach p in api.parameters
80 var param_${p.name} = get_value('param_${ api._id + '_' + p.name }')
81 $if p.paramType == 'url'
82 set url = url.replaceAll(':${p.name}', encodeURIComponent(param_${p.name}))
83 $else
84 $if p.type == 'object'
85 log 'JSON.parse(param_${p.name})', param_${p.name}
86 set payload['${p.name}'] = JSON.parse(param_${p.name})
87 $else
88 set payload['${p.name}'] = param_${p.name}
89 _ exec_with_payload
90 @ '${api.method}'
91 @ url
92 @ payload
93 $else
94 _ alert('${api.method} ${api.url}')
95 function get_value
96 param id
97 var el = document.querySelector("#" + id)
98 return el.value
99 function exec_get
100 param url
101 param payload
102 log 'url', url
103 var outputEl = document.querySelector("#output")
104 _ fetch
105 @ url
106 ._ then
107 =>
108 param response
109 if !response.ok
110 throw Error(response.statusText)
111 return response.json()
112 ._ then
113 =>
114 param json
115 set outputEl.className = 'container'
116 $$ set outputEl.value = wz.escapeHtml(JSON.stringify(json, null, 2))
117 set outputEl.value = JSON.stringify(json, null, 2)
118 log 'exec_.response.json', json
119 $*
120 if getApiId === "/api/studio/document" || getApiId === "/api/studio/fragment"
121 set document.getElementById('content').value = json.data.data
122 *$
123 ._ catch
124 function
125 param err
126 log 'exec_.response.err', err
127 set outputEl.className = 'container text-danger'
128 set outputEl.value = err && err.constructor && err.constructor.name === "Object" ? JSON.stringify(err, null, 2) : err
129 function exec_with_payload
130 param method
131 param url
132 param payload
133 log 'url', url
134 log 'payload ', payload
135 var outputEl = document.querySelector("#output")
136 _ fetch
137 @ url
138 {
139 @ method method
140 { headers
141 @ 'Accept' 'application/json'
142 @ 'Content-Type' 'application/json'
143 @ body JSON.stringify(payload)
144 ._ then
145 =>
146 param response
147 return response.json()
148 ._ then
149 =>
150 param json
151 log 'exec_with_payload.response.json', json
152 set outputEl.className = 'container'
153 $$ set outputEl.value = wz.escapeHtml(JSON.stringify(json, null, 2))
154 set outputEl.value = JSON.stringify(json, null, 2)
155 ._ catch
156 function
157 param err
158 log 'exec_with_payload.response.err', err
159 set outputEl.className = 'container text-danger'
160 set outputEl.value = err.message || JSON.stringify({ err: err.error }, null, 2)

/t/html/layouts/site.html.ittf

edit
                                            
1 $group
2 $params &opt
3 $include models/docs/site.wzctx
4 $
5 var ca = 'm-s p-s color-header font-l font-w-xxl';
6 var ca_inverse = 'm-s p-s color-header-inverse bg-color-header-inverse font-l font-w-xxl';
7 var ca2 = 'color-header font-x font-w-s';
8 head
9 $if opt.title
10 @title ${opt.title}
11 meta
12 charset utf-8
13 meta
14 name viewport
15 content width=device-width, initial-scale=1
16 link
17 rel preconnect
18 href https://fonts.googleapis.com
19 link
20 rel preconnect
21 href https://fonts.gstatic.com
22 crossorigin
23 link
24 @ rel "stylesheet"
25 @ href "https://cdn.jsdelivr.net/npm/[email protected]/normalize.min.css"
26 css /ittf/css/main.css.ittf
27 script
28 module
29 set window.__filename = 'browser'
30 $if opt.isWizziStudio && !opt.useFirebase
31 var WizziBrowser
32 {
33 @ log
34 function
35 var line
36 _ Array.prototype.slice.call(arguments).map
37 function
38 param argument
39 return
40 iif typeof argument === 'string'
41 then argument
42 else JSON.stringify(argument)
43 ._ join
44 @ '\n '
45 if arguments.length > 1 && arguments[arguments.length-1] === '-'
46 set line += new Array(50).join('-')
47 set document.querySelector('#wizzi-browser-log').textContent += line + '\n'
48 @ clearLog
49 function
50 set document.querySelector('#wizzi-browser-log').textContent = ''
51 @ setStatus
52 function
53 param status
54 set document.querySelector('#wizzi-browser-status').textContent = status
55 @ setContent
56 function
57 param newContent
58 var content = document.querySelector('#wizzi-browser-content')
59 while content.hasChildNodes()
60 _ content.removeChild(content.lastChild)
61 _ content.appendChild(newContent)
62 $hook head-styles-0
63 $if opt.isWizziStudio && !opt.useFirebase
64 @style
65 css
66 # wizzi-browser-status
67 margin .5em 0
68 font-style italic
69 # wizzi-browser-log
70 margin .5em 0
71 white-space pre-wrap
72 # wizzi-browser-content
73 margin .5em 0
74 # status:empty, #log:empty, #content:empty
75 display none
76 $include ./styles
77 ./site-styles( &opt )
78 $if opt.stickyNav
79 style
80 # ${opt.stickyNav}.sticky
81 position fixed
82 top 0
83 . ${opt.stickyNav}OffsetMargin
84 padding-top ${opt.stickyNavOffset}px
85 $if opt.stickyNavLogo
86 # ${opt.stickyNavLogo}.visible
87 display block
88 # ${opt.stickyNavLogo}.hidden
89 display none
90 $hook head-styles
91 $hook head-styles-2
92 $hook head-styles-3
93 $hook head-scripts
94 body
95 . full-page
96 . main-header
97 . flex-row space-between align-items-center width-100
98 id __main_navbar
99 . flex-row
100 html/a( /, ${ca2})
101 div
102 style width: 80px; margin-top: 5px; margin-left: 20px;
103 html/images/logo( ${colors.mainHeader}, ${colors.mainHeaderBg})
104 . flex-row
105 $if true
106 $if locals.user
107 $if opt.section != 'Starter'
108 html/a( Starter, /ittf/site/starter.html.ittf, ${ca})
109 $else
110 . ${ca_inverse}
111 + Starter
112 $if opt.section != 'Lab'
113 html/a( Lab, /ittf/site/lab.html.ittf, ${ca})
114 $else
115 . ${ca_inverse}
116 + Lab
117 $if opt.section != 'Productions'
118 html/a( Productions, /ittf/site/productions.html.ittf, ${ca})
119 $else
120 . ${ca_inverse}
121 + Productions
122 $if opt.section != 'Play'
123 html/a( Play, /public/play, ${ca})
124 $else
125 . ${ca_inverse}
126 + Play
127 . flex-row
128 $if opt.section != 'Project'
129 html/a( Project, /ittf/site/project.html.ittf, ${ca})
130 $else
131 . ${ca_inverse}
132 + Project
133 $if opt.section != 'Docs'
134 html/a( Docs, /ittf/site/docs/concepts/overview.html.ittf, ${ca})
135 $else
136 . ${ca_inverse}
137 + Docs
138 html/a( Github, https://github.com/stfnbssl/wizzi, ${ca})
139 . flex-row m-r-x
140 $if false
141 $if locals.user
142 html/a( Profile, /account/profile, ${ca})
143 html/a( Log Out, /auth/logout, ${ca})
144 $else
145 html/a( Log In, /auth/login, ${ca})
146 $else
147 . ${ca}
148 + Log in
149 title "Not implemented yet"
150 . main-content
151 . main-content-left-bar
152 $hook main-content-left-bar
153 . main-content-work-area
154 $hook main-content-work-area
155 $hook
156 . main-footer
157 $hook main-footer
158 $hook body-scripts-0
159 $if opt.isWizziStudio && !opt.useFirebase
160 div
161 # wizzi-browser-status
162 # wizzi-browser-log
163 # wizzi-browser-content
164 ./site-scripts( &opt )
165 $if opt.stickyNav
166 script
167 let header = document.getElementById("__main_navbar")
168 let stickyBar = document.getElementById("${opt.stickyNav}")
169 $if opt.stickyNavLogo
170 let stickyLogo = document.getElementById("${opt.stickyNavLogo}")
171 let stickyPos = ${opt.stickyNavOffset}
172 _ window.addEventListener
173 @ "scroll"
174 =>
175 param e
176 let scrollPos = window.scrollY
177 if scrollPos > stickyPos
178 _ stickyBar.classList.add('sticky')
179 _ header.classList.add('${opt.stickyNav}OffsetMargin')
180 $if opt.stickyNavLogo
181 _ stickyLogo.classList.add('visible')
182 _ stickyLogo.classList.remove('hidden')
183 else
184 _ stickyBar.classList.remove('sticky')
185 _ header.classList.remove('${opt.stickyNav}OffsetMargin')
186 $if opt.stickyNavLogo
187 _ stickyLogo.classList.remove('visible')
188 _ stickyLogo.classList.add('hidden')
189 $hook body-scripts
190 $hook body-scripts-2
191 $hook body-scripts-3
192 $if opt.useHighlight
193 script
194 _ document.addEventListener
195 @ 'DOMContentLoaded'
196 =>
197 param event
198 _ document.querySelectorAll
199 @ 'pre .hljs'
200 ._ forEach
201 =>
202 param block
203 _ hljs.highlightBlock(block)

/ittf/site/webapi/t/d-prop.html.ittf

edit
                                            
1 . d-api-prop
2 $params name, value
3 . d-api-prop-name
4 + ${name}
5 . d-api-prop-value
6 + ${value}

/ittf/site/webapi/t/d-control.html.ittf

edit
                                            
1 $group
2 $params type, id, label, value
3 $
4 var valuex = _.replace(value, '$', ',')
5 . d-param
6 $if type === 'string'
7 . d-param-label
8 label ${label}
9 for ${id}
10 . d-param-input
11 input
12 id ${id}
13 value ${valuex}
14 class form-control
15 $elif type === 'object'
16 . d-param-label
17 label ${label}
18 for ${id}
19 . d-param-input
20 textarea
21 style width:100%;
22 id ${id}
23 rows 6
24 class form-
25 + ${valuex}
26 $elif type === 'static'
27 . d-param-label
28 label ${label}
29 for ${id}
30 . d-param-input
31 input
32 id ${id}
33 valuex ${valuex}
34 disabled
35 class form-control

/t/models/docs/site.wzctx.ittf

edit
                                            
1 $group
2 $global
3 var wzCtx = {
4 name: "stfnbssl.github.io/wizzi",
5 version: "0.7.1",
6 description: "Wizzi github page",
7 author: "Stefano Bassoli",
8 license: "MIT",
9 Params: {
10 title: "Wizzi",
11 baseUrl: "https://stfnbssl.github.io/wizzi"
12 },
13 Section: {
14 items: [
15 {
16 title: "Concepts",
17 url: "/ittf/site/docs/concepts/overview.html.ittf"
18 },
19 {
20 title: "Howtos",
21 url: "/ittf/site/docs/howtos/getstarted.html.ittf"
22 },
23 /*
24 {
25 title: "Sample code",
26 url: "/ittf/site/docs/samplecode/overview.html.ittf"
27 },
28 {
29 title: "Geeky",
30 url: "/ittf/site/docs/geeky/overview.html.ittf"
31 },
32 */
33 {
34 title: "Cheatsheets",
35 url: "/wizzi/docs/cheatsheet/html"
36 },
37 {
38 title: "Play",
39 url: "/ittf/site/docs/play/index.html.ittf"
40 }
41 ]
42 },
43 Concepts: {
44 items: [
45 {
46 title: "Overview",
47 url: "./overview.html.ittf"
48 },
49 {
50 title: "Ittf Documents",
51 url: "./ittfdocuments.html.ittf"
52 },
53 {
54 title: "Template Engine",
55 url: "./templateengine.html.ittf"
56 },
57 {
58 title: "JsWizzi",
59 url: "./jswizzi.html.ittf"
60 },
61 {
62 title: "mTrees",
63 url: "./mtrees.html.ittf"
64 },
65 {
66 title: "Wizzi Schemas",
67 url: "./wizzischemas.html.ittf"
68 },
69 {
70 title: "Wizzi Model DOMs",
71 url: "./wizzimodeldoms.html.ittf"
72 },
73 {
74 title: "Wizzi Model Instances",
75 url: "./wizzimodelinstances.html.ittf"
76 },
77 {
78 title: "Model Transformers",
79 url: "./modeltransformers.html.ittf"
80 },
81 {
82 title: "Artifact Generators",
83 url: "./artifactgenerators.html.ittf"
84 },
85 {
86 title: "Wizzi Jobs",
87 url: "./wizzijobs.html.ittf"
88 },
89 {
90 title: "Wizzi Meta Productions",
91 url: "./wizzimetaproductions.html.ittf"
92 },
93 {
94 title: "Wizzi Plugins",
95 url: "./wizziplugins.html.ittf"
96 },
97 {
98 title: "Wizzi Meta Plugins",
99 url: "./wizzimetaplugins.html.ittf"
100 },
101 {
102 title: "Wizzi API",
103 url: "./wizziapi.html.ittf"
104 },
105 {
106 title: "Wizzi CLI",
107 url: "./wizzicli.html.ittf"
108 },
109 {
110 title: "Virtual Store System",
111 url: "./virtualstoresystem.html.ittf"
112 },
113 {
114 title: "Glossary",
115 url: "./glossary.html.ittf"
116 }
117 ]
118 },
119 Howtos: {
120 items: [
121 {
122 title: "Get started",
123 url: "./getstarted.html.ittf"
124 },
125 {
126 title: "Wizzi API",
127 url: "./wizziapi.html.ittf"
128 }
129 ]
130 },
131 SampleCode: {
132 items: [
133 {
134 title: "Overview",
135 url: "./overview.html.ittf"
136 },
137 {
138 title: "Template Engine",
139 url: "./templateengine.html.ittf"
140 },
141 {
142 title: "JsWizzi",
143 url: "./jswizzi.html.ittf"
144 },
145 {
146 title: "mTrees",
147 url: "./mtrees.html.ittf"
148 },
149 {
150 title: "Wizzi Schemas",
151 url: "./wizzischemas.html.ittf"
152 },
153 {
154 title: "Wizzi Model DOMs",
155 url: "./wizzimodeldoms.html.ittf"
156 },
157 {
158 title: "Model Transformers",
159 url: "./modeltransformers.html.ittf"
160 },
161 {
162 title: "Artifact Generators",
163 url: "./artifactgenerators.html.ittf"
164 },
165 {
166 title: "Wizzi Jobs",
167 url: "./wizzijobs.html.ittf"
168 },
169 {
170 title: "Wizzi Plugins",
171 url: "./wizziplugins.html.ittf"
172 },
173 {
174 title: "Wizzi API",
175 url: "./wizziapi.html.ittf"
176 },
177 {
178 title: "Virtual Store System",
179 url: "./virtualstoresystem.html.ittf"
180 },
181 {
182 title: "Glossary",
183 url: "./glossary.html.ittf"
184 }
185 ]
186 },
187 Geeky: {
188 items: [
189 {
190 title: "Overview",
191 url: "./overview.html.ittf"
192 },
193 {
194 title: "Template Engine",
195 url: "./templateengine.html.ittf"
196 },
197 {
198 title: "JsWizzi",
199 url: "./jswizzi.html.ittf"
200 },
201 {
202 title: "mTrees",
203 url: "./mtrees.html.ittf"
204 },
205 {
206 title: "Wizzi Schemas",
207 url: "./wizzischemas.html.ittf"
208 },
209 {
210 title: "Wizzi Model DOMs",
211 url: "./wizzimodeldoms.html.ittf"
212 },
213 {
214 title: "Model Transformers",
215 url: "./modeltransformers.html.ittf"
216 },
217 {
218 title: "Artifact Generators",
219 url: "./artifactgenerators.html.ittf"
220 },
221 {
222 title: "Wizzi Jobs",
223 url: "./wizzijobs.html.ittf"
224 },
225 {
226 title: "Wizzi Plugins",
227 url: "./wizziplugins.html.ittf"
228 },
229 {
230 title: "Wizzi API",
231 url: "./wizziapi.html.ittf"
232 },
233 {
234 title: "Wizzi CLI",
235 url: "./wizzicli.html.ittf"
236 },
237 {
238 title: "Virtual Store System",
239 url: "./virtualstoresystem.html.ittf"
240 },
241 {
242 title: "Glossary",
243 url: "./glossary.html.ittf"
244 }
245 ]
246 },
247 Starter: {
248 "items": [
249 {
250 title: "wizzi-starter-wizzi-plugin",
251 url: "https://github.com/wizzifactory/wizzi-examples/tree/master/packages/wizzi-starter-wizzi-plugin"
252 },
253 {
254 title: "wizzi-starter-webpack-react",
255 url: "https://github.com/wizzifactory/wizzi-examples/tree/master/packages/wizzi-starter-webpack-react"
256 },
257 {
258 title: "wizzi-starter-mern",
259 url: "https://github.com/wizzifactory/wizzi-examples/tree/master/packages/wizzi-starter-mern"
260 },
261 {
262 title: "wizzi-starter-nextjs",
263 url: "https://github.com/wizzifactory/wizzi-examples/tree/master/packages/wizzi-starter-nextjs"
264 },
265 {
266 title: "wizzi-starter-gatsby",
267 url: "https://github.com/wizzifactory/wizzi-examples/tree/master/packages/wizzi-starter-gatsby"
268 }
269 ]
270 },
271 "Plugin": {
272 items: [
273 {
274 title: "wizzi-js",
275 url: "https://github.com/wizzifactory/wizzi/tree/master/packages/wizzi-js/dist"
276 },
277 {
278 title: "wizzi-web",
279 url: "https://github.com/wizzifactory/wizzi/tree/master/packages/wizzi-web/dist"
280 },
281 {
282 title: "wizzi-lab",
283 url: "https://github.com/wizzifactory/wizzi/tree/master/packages/wizzi-lab/dist"
284 }
285 ]
286 },
287 Colors: {
288 "bg_0": "#333",
289 "bg_f_0": "#000",
290 "c_0": "#fff",
291 "bg_dark": "#333",
292 "bg_dark_medium": "#444",
293 "c_dark": "#ddd",
294 "c_dark_medium": "#bbb",
295 "h3_c_dark": "#fc0"
296 },
297 Fonts: {
298 "useMaterialIcons": true,
299 "materialIcons": {
300 "baseUrl": "https://stfnbssl.github.io/wizzi/fonts",
301 "fontWeight": "400",
302 "size": "24px"
303 }
304 },
305 Styles: {
306 shellColors: {
307 mainHeaderBg: "#0D0D0D",
308 mainHeader: "#dedede",
309 mainContentBg: "#2D2D2D",
310 mainContent: "#dedede",
311 mainContentLeftBarBg: "#1D1D1D",
312 mainContentLeftBar: "#dedede",
313 mainFooterBg: "#0D0D0D",
314 mainFooter: "#dedede",
315 }
316 }
317 }
318 var mpage = {
319 Colors: {
320 background: "#ffffff",
321 scheme1Fade90: "whiteFade-90,rgba(255,255,255,0.9)",
322 themeBack: "#ffffff",
323 primary: "#BDF3EE",
324 primaryDark: "#122944",
325 primary30: "#BDF3EE",
326 gray70: "grey-70,#222B31",
327 grad1: "#81B6CF",
328 grad2: "#222B31"
329 }
330 }

/t/html/layouts/t/styles.html.ittf

edit
                                            
1 $group
2 style
3 css
4 $
5 var colors = wzCtx.Styles.shellColors;
6 . main-header
7 background-color ${colors.mainHeaderBg}
8 color ${colors.mainHeader}
9 height 5vh
10 overflow auto
11 display flex
12 flex-direction row
13 justify-content space-between
14 . main-content
15 display flex
16 flex-direction row
17 height 92vh
18 overflow auto
19 background-color ${colors.mainContentBg}
20 color ${colors.mainContent}
21 . main-content-left-bar
22 height 100%
23 width 3%
24 background-color ${colors.mainContentLeftBarBg}
25 . main-content-work-area
26 height 100%
27 width 97%
28 . main-footer
29 background-color ${colors.mainFooterBg}
30 color ${colors.mainFooter}
31 height 3vh
32 overflow auto

/t/html/layouts/site-styles.html.ittf

edit
                                            
1 $group
2 $params &opt
3 $if opt.useBootstrap
4 css /public/lib/bootstrap/dist/css/bootstrap.min.css
5 $if opt.useCodemirror
6 html/s( /public/lib/codemirror/lib/codemirror.css)
7 html/s( /public/lib/codemirror/theme/monokai.css)
8 html/s( /public/lib/codemirror/theme/twilight.css)
9 $if typeof(wzCtx.aspect) !== 'undefined'
10 $if wzCtx.aspect.AnimateCss
11 $if wzCtx.aspect.production
12 html/s( /public/lib/animatecss/animate.min.css)
13 $else
14 html/s( /public/lib/animatecss/animate.css)
15 $if opt.useFontAwesome
16 $
17 var fontAwesomeKey = 'eab461efef';
18 script
19 src https://kit.fontawesome.com/${fontAwesomeKey}.js
20 crossorigin anonymous
21 $if opt.useFontRoboto
22 html/s( https://fonts.googleapis.com/css?family=Roboto:300, 400, 500)
23 $if opt.useFontMaterialIcons
24 html/s( https://fonts.googleapis.com/icon?family=Material+Icons)
25 $if opt.useGoogleFonts
26 $foreach item in opt.googleFonts
27 css https://fonts.googleapis.com/css?family=${item}
28 $if opt.useHighlight
29 $if opt.isWizziStudio
30 html/s( /public/lib/highlight/styles/github.css)
31 html/s( /public/lib/highlightjs-master/dracula.css)
32 $else
33 html/s( https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.13.1/styles/default.min.css)
34 $if opt.useJarallax
35 html/s( /public/lib/jarallax/jarallax.css)
36 $if opt.useJsonFormatter
37 $if opt.isWizziStudio
38 html/s( https://cdnjs.cloudflare.com/ajax/libs/json-formatter/0.7.0/json-formatter.min.css)
39 $else
40 html/s( https://cdnjs.cloudflare.com/ajax/libs/json-formatter/0.7.0/json-formatter.min.css)
41 $if opt.useMaterialUI
42 html/s( https://fonts.googleapis.com/icon?family=Material+Icons)
43 $if opt.usePopper
44 html/s( /public/lib/popper/main.css)
45 $if opt.usePrism
46 $if opt.isWizziStudio
47 css /public/lib/prism/prism.css
48 $else
49 css https://cdnjs.cloudflare.com/ajax/libs/prism/1.6.0/themes/prism.min.css
50 $if opt.useSocial
51 html/s( /public/lib/social/social-icons.css)
52 $if opt.useSweetalert
53 html/s( https://cdn.jsdelivr.net/npm/[email protected]/dist/sweetalert2.min.css)
54 $if opt.mainCss && opt.mainCss.length > 0
55 html/s( ${opt.mainCss})

/t/html/a.html.ittf

edit
                                            
1 $group
2 $params text, href|#, ca|@@null
3 a ${text}
4 href ${href}
5 $if ca
6 class ${ca}
7 $hook

/t/html/images/logo.html.ittf

edit
                                            
1 svg
2 $params color|#000, bgcolor|#fff, viewBox|0 0 660 280
3 $
4 var opt = {};
5 opt.y0 = 10;
6 opt.y1 = 10;
7 opt.y1a = 90;
8 opt.y2 = 210;
9 opt.ybottom = 250;
10 opt.color = color;
11 preserve-aspect-ratio xMidYMid meet
12 viewBox ${viewBox}
13 rect
14 x 0
15 y 0
16 width 660
17 height 280
18 fill ${bgcolor}
19 stroke none
20 polyline
21 stroke ${color}
22 fill ${color}
23 stroke-width 2
24 points 10 ${opt.ybottom} 45 ${opt.y0} 60 ${opt.y0} 75 ${opt.y1a + 40} 120 ${opt.y2} 120 ${opt.y1a + 40} 175 ${opt.y2} 175 ${opt.y1a + 20} 230 ${opt.y2} 230 ${opt.ybottom}
25 wizzi-logo-i( 250, &opt )
26 wizzi-logo-z( 320, &opt )
27 wizzi-logo-z( 450, &opt )
28 wizzi-logo-i( 590, &opt )

/t/html/layouts/site-scripts.html.ittf

edit
                                            
1 $group
2 $params &opt
3 $
4 var useReact = opt.useReact || opt.useMaterialUI;
5 var useBabel = useReact || opt.useBabel;
6 $if opt.useAce
7 $if opt.isWizziStudio
8 $if opt.production
9 html/j( /public/lib/ace/src-min-noconflict/ace.js)
10 $else
11 html/j( /public/lib/ace/src-noconflict/ace.js)
12 $else
13 html/j( https://cdnjs.cloudflare.com/ajax/libs/ace/1.4.2/ace.js)
14 $if opt.useBootstrap
15 html/j( /public/lib/bootstrap/dist/js/bootstrap.min.js)
16 $if opt.useEventEmitter
17 $$ html/j( https://unpkg.com/eventemitter3@latest/umd/eventemitter3.min.js
18 html/j( https://cdn.jsdelivr.net/npm/[email protected]/index.min.js)
19 $if opt.useCodemirror
20 html/j( /public/lib/codemirror/lib/codemirror.js)
21 html/j( /public/lib/codemirror/mode/javascript/javascript.js)
22 html/j( /public/lib/codemirror/mode/xml/xml.js)
23 html/j( /public/lib/codemirror/theme/monokai.css)
24 html/j( /public/lib/codemirror/theme/twilight.css)
25 $if opt.useDeepDiff
26 $if opt.isWizziStudio
27 html/j( /public/lib/flitbit/deep-diff.min.js)
28 $else
29 html/j( https://cdnjs.cloudflare.com/ajax/libs/deep-diff/0.3.3/deep-diff.min.js)
30 $if opt.useKeycode
31 $if opt.isWizziStudio
32 html/j( /public/lib/material-ui/keycode.min.2.2.0.js)
33 $else
34 html/j( https://cdn.jsdelivr.net/npm/keycode.js)
35 $if opt.useHighlight
36 $if opt.isWizziStudio
37 html/j( https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.13.1/highlight.min.js)
38 $else
39 html/j( https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.13.1/highlight.min.js)
40 $if opt.useInteractJs
41 html/j( /public/lib/interactjs/interact.js)
42 $if opt.useJarallax
43 html/j( /public/lib/object-fit-images/ofi.min.js)
44 $if opt.production
45 html/j( /public/lib/jarallax/jarallax.min.js)
46 html/j( /public/lib/jarallax/jarallax-video.min.js)
47 html/j( /public/lib/jarallax/jarallax-element.min.js)
48 $else
49 html/j( /public/lib/jarallax/jarallax.js)
50 html/j( /public/lib/jarallax/jarallax-video.js)
51 html/j( /public/lib/jarallax/jarallax-element.js)
52 $if opt.useJQuery || opt.useBootstrap
53 $if opt.production
54 html/j( /public/lib/jquery/jquery.min.js)
55 $else
56 html/j( /public/lib/jquery/jquery.js)
57 $if opt.useJsonFormatter
58 $if opt.isWizziStudio
59 html/j( /public/lib/json-formatter/json-formatter.js)
60 $else
61 html/j( https://cdn.jsdelivr.net/npm/[email protected]/dist/json-formatter.min.js)
62 $if opt.useJss
63 js /public/lib/jss/jss.js
64 js /public/lib/jss/jss-preset-default.js
65 $if opt.useMarkdown
66 html/j( https://cdn.jsdelivr.net/npm/marked/marked.min.js)
67 $if opt.useMathJax
68 html/j( https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-MML-AM_CHTML)
69 $if opt.usePopper
70 html/j( /public/lib/popper/popper.js)
71 $if opt.usePrism
72 $if opt.isWizziStudio
73 js /public/lib/prism/prism.js
74 $else
75 js https://cdnjs.cloudflare.com/ajax/libs/prism/1.6.0/prism.min.js
76 $if opt.usePubSub
77 js /public/lib/pubsub/pubsub.js
78 $if useReact
79 $if opt.production
80 html/j( https://unpkg.com/[email protected]/prop-types.min.js)
81 $else
82 html/j( https://unpkg.com/[email protected]/prop-types.js)
83 $if opt.production
84 html/j( https://cdn.jsdelivr.net/npm/[email protected]/umd/react.production.min.js)
85 html/j( https://cdn.jsdelivr.net/npm/[email protected]/umd/react-dom.production.min.js)
86 $else
87 html/j( https://cdn.jsdelivr.net/npm/[email protected]/umd/react.development.min.js)
88 html/j( https://cdn.jsdelivr.net/npm/[email protected]/umd/react-dom.development.min.js)
89 $if opt.useClassNames
90 html/j( /public/lib/react/classnames.js)
91 $if opt.useMaterialUI
92 $if opt.materialUI.latest
93 $if opt.production
94 html/j( https://unpkg.com/@mui/material@latest/umd/material-ui.production.min.js)
95 $else
96 html/j( https://unpkg.com/@mui/material@latest/umd/material-ui.development.js)
97 $else
98 $if opt.production
99 $if opt.materialUI.v4
100 html/j( https://unpkg.com/@material-ui/[email protected]/umd/material-ui.development.min.js)
101 $else
102 html/j( https://unpkg.com/@mui/[email protected]/umd/material-ui.production.min.js)
103 $else
104 $if opt.materialUI.v4
105 html/j( https://unpkg.com/@material-ui/[email protected]/umd/material-ui.development.js)
106 $else
107 html/j( https://unpkg.com/@mui/[email protected]/umd/material-ui.development.js)
108 $if opt.useRouter
109 html/j( https://cdn.jsdelivr.net/npm/@remix-run/[email protected]/dist/router.umd.min.js)
110 html/j( https://cdn.jsdelivr.net/npm/[email protected]/dist/umd/react-router.production.min.js)
111 html/j( https://cdn.jsdelivr.net/npm/[email protected]/dist/umd/react-router-dom.production.min.js)
112 $if opt.useReactGrid
113 html/j( /public/lib/react/react-grid-layout.min.js)
114 $if opt.useDownshift
115 $if opt.local || opt.isWizziStudio
116 html/j( https://unpkg.com/[email protected]/dist/downshift.umd.js)
117 $else
118 html/j( https://cdn.jsdelivr.net/npm/[email protected]/dist/downshift.umd.min.js)
119 $if opt.useGridLayout
120 $if opt.useGridLayoutLatest
121 html/j( https://unpkg.com/react-grid-layout@latest/dist/react-grid-layout.min.js)
122 $else
123 html/j( https://unpkg.com/[email protected]/dist/react-grid-layout.min.js)
124 $if opt.react.useStyledComponents
125 js //unpkg.com/[email protected]/dist/styled-components.min.js
126 $if opt.react.useTransitionGroup
127 js https://cdnjs.cloudflare.com/ajax/libs/react-transition-group/4.4.1/react-transition-group.min.js
128 $if opt.useRxJs
129 html/j( /public/lib/rxjs/rxjs.umd.min.js)
130 $if opt.useScrollReveal
131 html/j( /public/lib/scrollreveal/scrollreveal.js)
132 $if opt.useSplit
133 js /public/lib/controls/split.js
134 $if opt.useSweetalert
135 html/j( https://cdn.jsdelivr.net/npm/[email protected]/dist/sweetalert2.all.min.js)
136 $if opt.useUnderscore
137 $if opt.production
138 html/j( /public/lib/underscore/underscore.min.js)
139 $else
140 html/j( /public/lib/underscore/underscore.js)
141 $if opt.useVue
142 html/j( https://unpkg.com/vue)
143 $if opt.useWizzi
144 $if opt.isWizziStudio
145 html/j( /public/wizzi-play/scripts/wizzi.standalone.js)
146 $else
147 html/j( /scripts/wizzi.standalone.js)
148 $if opt.useMathJax
149 script
150 #
151 _ MathJax.Hub.Config
152 {
153 @ tex2jax
154 {
155 @ inlineMath [['$','$'], ['\\(','\\)']]
156 @ processEscapes true
157 $if useBabel
158 html/j( https://cdn.jsdelivr.net/npm/@babel/[email protected]/babel.min.js)
159 $if opt.useMonaco
160 html/j( /public/lib/monaco-editor/min/vs/loader.js)
161 $if opt.mainJs && opt.mainJs.length > 0
162 $if useBabel
163 script
164 src ${opt.mainJs}
165 type text/babel
166 $else
167 js ${opt.mainJs}

/t/html/images/t/wizzi-logo-i.html.ittf

edit
                                            
1 $group
2 $params l:integer, &opt
3 polyline
4 stroke ${opt.color}
5 fill ${opt.color}
6 stroke-width 2
7 points ${l} ${opt.ybottom} ${l+10} ${opt.y1+80} ${l+40} ${opt.y1+80} ${l+50} ${opt.ybottom}
8 path
9 stroke ${opt.color}
10 fill ${opt.color}
11 stroke-width 2
12 d M${l+30}, ${opt.y1+20} C${l+60},${opt.y1+40} ${l+0},${opt.y1+60} ${l+30}, ${opt.y1+74}

/t/html/images/t/wizzi-logo-z.html.ittf

edit
                                            
1 $group
2 $params l:integer, &opt
3 polyline
4 stroke ${opt.color}
5 fill ${opt.color}
6 stroke-width 2
7 points ${l} ${opt.ybottom} ${l} ${opt.ybottom - 20} ${l+100} ${opt.y1a+40} ${l+80} ${opt.y1a+20} ${l+80} ${opt.y1a} ${l+130} ${opt.y1a} ${l+100} ${opt.ybottom - 20} ${l+120} ${opt.ybottom - 20} ${l+120} ${opt.ybottom}

/t/html/s.html.ittf

edit
                                            
1 $group
2 $params url
3 link
4 href ${url}
5 rel stylesheet

/t/html/j.html.ittf

edit
                                            
1 $group
2 $params url
3 script
4 src ${url}
5 crossorigin anonymous

/ittf/site/webapi/index.json.ittf

edit
                                            
1 {
2 [ apis
3 {
4 title 'Wizzi - wrap ittf for schema'
5 method 'post'
6 url '/api/v1/wizzi/production/wrapittf'
7 [ parameters
8 {
9 type "string"
10 paramType "body"
11 name "schema"
12 label "schema"
13 demoValue 'js'
14 {
15 type "string"
16 paramType "body"
17 name "ittfText"
18 label "ittfText"
19 demoValue 'var i = 0'
20 {
21 title 'Wizzi - generate artifact'
22 method 'post'
23 url '/api/v1/wizzi/production/artifact'
24 [ parameters
25 {
26 type "object"
27 paramType "body"
28 name "ittfDocument"
29 label "ittfDocument"
30 demoValue '{ "source": "packi", "mainIttf": "index.html.ittf", "packiFiles":
31 \b { "index.html.ittf": { "type": "CODE", "contents": "html" } } }'
32 {
33 type "object"
34 paramType "body"
35 name "contextItems"
36 label "contextItems"
37 demoValue "[]"
38 {
39 title 'Wizzi - generate mTree'
40 method 'post'
41 url '/api/v1/wizzi/production/mtree'
42 [ parameters
43 {
44 type "object"
45 paramType "body"
46 name "ittfDocument"
47 label "ittfDocument"
48 demoValue '{ "source": "packi", "mainIttf": "index.html.ittf", "packiFiles":
49 \b { "index.html.ittf": { "type": "CODE", "contents": "html" } } }'
50 {
51 type "object"
52 paramType "body"
53 name "contextItems"
54 label "contextItems"
55 demoValue "[]"
56 {
57 title 'Wizzi - generate mTree buildup script'
58 method 'post'
59 url '/api/v1/wizzi/production/mtreescript'
60 [ parameters
61 {
62 type "object"
63 paramType "body"
64 name "ittfDocument"
65 label "ittfDocument"
66 demoValue '{ "source": "packi", "mainIttf": "index.html.ittf", "packiFiles":
67 \b { "index.html.ittf": { "type": "CODE", "contents": "html" } } }'
68 {
69 type "object"
70 paramType "body"
71 name "contextItems"
72 label "contextItems"
73 demoValue "[]"
74 {
75 title 'Packi - generate artifact from an artifact production'
76 method 'post'
77 url '/api/v1/production/generations/artifact/:filepath'
78 [ parameters
79 {
80 type "string"
81 paramType "url"
82 name "filepath"
83 label "File path"
84 demoValue "index.html.ittf"
85 {
86 type "string"
87 paramType "body"
88 name "productionKind"
89 label "Production kind"
90 demoValue "artifact"
91 {
92 type "string"
93 paramType "body"
94 name "productionName"
95 label "Production name"
96 demoValue "lab-css.html"
97 {
98 title 'Packi - generate mTree from an artifact production'
99 method 'post'
100 url '/api/v1/production/generations/mtree/:filepath'
101 [ parameters
102 {
103 type "string"
104 paramType "url"
105 name "filepath"
106 label "File path"
107 demoValue "index.html.ittf"
108 {
109 type "string"
110 paramType "body"
111 name "productionKind"
112 label "Production kind"
113 demoValue "artifact"
114 {
115 type "string"
116 paramType "body"
117 name "productionName"
118 label "Production name"
119 demoValue "lab-css.html"
120 {
121 title 'Packi - generate mTree buildup script from an artifact production'
122 method 'post'
123 url '/api/v1/production/generations/mtreescript/:filepath'
124 [ parameters
125 {
126 type "string"
127 paramType "url"
128 name "filepath"
129 label "File path"
130 demoValue "index.html.ittf"
131 {
132 type "string"
133 paramType "body"
134 name "productionKind"
135 label "Production kind"
136 demoValue "artifact"
137 {
138 type "string"
139 paramType "body"
140 name "productionName"
141 label "Production name"
142 demoValue "lab-css.html"
143 {
144 title 'Packi - load and transform an Ittf document from an artifact production'
145 method 'post'
146 url '/api/v1/production/generations/mtreescript/:filepath/:transform'
147 [ parameters
148 {
149 type "string"
150 paramType "url"
151 name "filepath"
152 label "File path"
153 demoValue "index.html.ittf"
154 {
155 type "string"
156 paramType "body"
157 name "productionKind"
158 label "Production kind"
159 demoValue "artifact"
160 {
161 type "string"
162 paramType "body"
163 name "productionName"
164 label "Production name"
165 demoValue "lab-css.html"
166 {
167 type "string"
168 paramType "url"
169 name "transform"
170 label "Transform name"
171 demoValue "6388d115351b9b4f611b972c"
172 {
173 title 'Wizzify the files of a Packifile object'
174 method 'post'
175 url '/api/v1/production/generations/wizzify'
176 [ parameters
177 {
178 type "string"
179 paramType "body"
180 name "packifiles"
181 label "Packifiles"
182 demoValue '.."
183 {
184 title 'Productions - get artifacts list'
185 method 'get'
186 url '/api/v1/production/artifact/:owner'
187 [ parameters
188 {
189 type "string"
190 paramType "url"
191 name "owner"
192 label "Owner"
193 demoValue "stfnbssl"
194 {
195 title 'Productions - get artifact'
196 method 'get'
197 url '/api/v1/production/artifact/:owner/:name'
198 [ parameters
199 {
200 type "string"
201 paramType "url"
202 name "owner"
203 label "Owner"
204 demoValue "stfnbssl"
205 {
206 type "string"
207 paramType "url"
208 name "name"
209 label "Name"
210 demoValue "docs/artifacts.html"
211 {
212 title 'Productions - get packages list'
213 method 'get'
214 url '/api/v1/production/package/:owner'
215 [ parameters
216 {
217 type "string"
218 paramType "url"
219 name "owner"
220 label "Owner"
221 demoValue "stfnbssl"
222 {
223 title 'Productions - get package'
224 method 'get'
225 url '/api/v1/production/package/:owner/:name'
226 [ parameters
227 {
228 type "string"
229 paramType "url"
230 name "owner"
231 label "Owner"
232 demoValue "stfnbssl"
233 {
234 type "string"
235 paramType "url"
236 name "name"
237 label "Name"
238 demoValue "react.app.sample"
239 {
240 title 'Productions - get metas list'
241 method 'get'
242 url '/api/v1/production/meta/:owner'
243 [ parameters
244 {
245 type "string"
246 paramType "url"
247 name "owner"
248 label "Owner"
249 demoValue "stfnbssl"
250 {
251 title 'Productions - get meta'
252 method 'get'
253 url '/api/v1/production/meta/:owner/:name'
254 [ parameters
255 {
256 type "string"
257 paramType "url"
258 name "owner"
259 label "Owner"
260 demoValue "stfnbssl"
261 {
262 type "string"
263 paramType "url"
264 name "name"
265 label "Name"
266 demoValue "webpack.react"
267 {
268 title 'Productions - get tFolders list'
269 method 'get'
270 url '/api/v1/production/tfolder/:owner'
271 [ parameters
272 {
273 type "string"
274 paramType "url"
275 name "owner"
276 label "Owner"
277 demoValue "stfnbssl"
278 {
279 title 'Productions - get tFolder'
280 method 'get'
281 url '/api/v1/production/tfolder/:owner/:name'
282 [ parameters
283 {
284 type "string"
285 paramType "url"
286 name "owner"
287 label "Owner"
288 demoValue "stfnbssl"
289 {
290 type "string"
291 paramType "url"
292 name "name"
293 label "Name"
294 demoValue "css"
295 {
296 title 'WizziAction - get list'
297 method 'get'
298 url '/api/v1/wizziAction'
299 [ parameters
300 {
301 type "string"
302 paramType "url"
303 name "owner"
304 label "Owner"
305 demoValue "stfnbssl"
306 {
307 title 'WizziAction - get item'
308 method 'get'
309 url '/api/v1/wizziAction/:owner/:kind/:name'
310 [ parameters
311 {
312 type "string"
313 paramType "url"
314 name "owner"
315 label "Owner"
316 demoValue "stfnbssl"
317 {
318 type "string"
319 paramType "url"
320 name "kind"
321 label "Kind"
322 demoValue ".."
323 {
324 type "string"
325 paramType "url"
326 name "name"
327 label "Name"
328 demoValue ".."
329 {
330 title 'WizziGist - get list'
331 method 'get'
332 url '/api/v1/gist/:owner'
333 [ parameters
334 {
335 type "string"
336 paramType "url"
337 name "owner"
338 label "Owner"
339 demoValue "stfnbssl"
340 {
341 title 'WizziGist - get item'
342 method 'get'
343 url '/api/v1/gist/:owner/:name'
344 [ parameters
345 {
346 type "string"
347 paramType "url"
348 name "owner"
349 label "Owner"
350 demoValue "stfnbssl"
351 {
352 type "string"
353 paramType "url"
354 name "kind"
355 label "Kind"
356 demoValue ".."
357 {
358 type "string"
359 paramType "url"
360 name "name"
361 label "Name"
362 demoValue ".."
363 {
364 title 'Docs - get cheatsheet'
365 method 'get'
366 url '/api/v1/docs/cheatsheet/:name'
367 [ parameters
368 {
369 type "string"
370 paramType "url"
371 name "name"
372 label "Name"
373 demoValue "css"
374 {
375 title 'Geop - get geop db list'
376 method 'get'
377 url '/api/v1/geop'
378 [ parameters
379 {
380 title 'Geop - get geop db'
381 method 'get'
382 url '/api/v1/geop/:name'
383 [ parameters
384 {
385 type "string"
386 paramType "url"
387 name "name"
388 label "Name"
389 demoValue "history_gb"
390 {
391 title 'Philos - get philos db list'
392 method 'get'
393 url '/api/v1/philos'
394 [ parameters
395 {
396 title 'Philos - get philos db'
397 method 'get'
398 url '/api/v1/philos/:name'
399 [ parameters
400 {
401 type "string"
402 paramType "url"
403 name "name"
404 label "Name"
405 demoValue "freud"
406 {
407 title 'Dev - scan'
408 method 'get'
409 url '/api/v1/dev/scan'
410 [ parameters
411 {
412 title 'Meta - get provides'
413 method 'get'
414 url '/api/v1/meta/provides'
415 [ parameters
416 $*
417 {
418 title 'Studio - summary of main infos'
419 method 'get'
420 url '/api/studio/check'
421 [ parameters
422 {
423 title 'Studio - common data'
424 method 'get'
425 url '/api/studio/commons'
426 [ parameters
427 {
428 title 'Studio - default artifacts'
429 method 'get'
430 url '/api/studio/commons/defaultartifacts'
431 [ parameters
432 {
433 title 'Studio - user'
434 method 'get'
435 url '/api/studio/user'
436 [ parameters
437 {
438 title 'Studio - schemas'
439 method 'get'
440 url '/api/studio/schemas'
441 [ parameters
442 {
443 title 'Studio - schema'
444 method 'get'
445 url '/api/studio/schema'
446 [ parameters
447 {
448 type "string"
449 name "uri"
450 label "Schema uri"
451 demoValue "v5-plugins/wizzi-core/wzjob"
452 {
453 title 'Studio - packages'
454 method 'get'
455 url '/api/studio/packages'
456 [ parameters
457 {
458 title 'Studio - package'
459 method 'get'
460 url '/api/studio/package'
461 [ parameters
462 {
463 type "string"
464 name "id"
465 label "Package Id"
466 demoValue "v5-plugins/wizzi-js"
467 {
468 title 'Studio - projects'
469 method 'get'
470 url '/api/studio/projects'
471 [ parameters
472 {
473 title 'Studio - documents'
474 method 'get'
475 url '/api/studio/documents'
476 [ parameters
477 {
478 type "string"
479 name "project"
480 label "Project Id"
481 demoValue "wizzi"
482 {
483 title 'Studio - document'
484 method 'get'
485 url '/api/studio/document'
486 [ parameters
487 {
488 type "string"
489 name "uri"
490 label "Document uri"
491 demoValue "/stefi/aa/bb/begus.undefined.ittf"
492 {
493 title 'Studio - document'
494 method 'post'
495 url '/api/studio/document'
496 [ parameters
497 {
498 type "string"
499 name "uri"
500 label "Document uri"
501 demoValue "/stefi/aa/bb/begus.undefined.ittf"
502 {
503 title 'Studio - fragments'
504 method 'get'
505 url '/api/studio/fragments'
506 [ parameters
507 {
508 type "string"
509 name "project"
510 label "Project Id"
511 demoValue "wizzi"
512 {
513 title 'Studio - fragment'
514 method 'get'
515 url '/api/studio/fragment'
516 [ parameters
517 {
518 type "string"
519 name "uri"
520 label "Fragment uri"
521 demoValue "/stefi/aa/bb/t/sum.js.ittf"
522 {
523 title 'Studio - artifact'
524 method 'get'
525 url '/api/studio/artifact'
526 [ parameters
527 {
528 type "string"
529 name "uri"
530 label "Document uri"
531 demoValue "/stefi/aa/bb/begus.undefined.ittf"
532 {
533 type "string"
534 name "artifact"
535 label "Artifact name"
536 demoValue "js/module"
537 {
538 title 'Wizzi - summary of main infos'
539 method 'get'
540 url '/api/wizzi/check'
541 [ parameters
542 {
543 title 'Wizzi - system packages'
544 method 'get'
545 url '/api/wizzi/system/packages'
546 [ parameters
547 {
548 title 'Wizzi - kernel info'
549 method 'get'
550 url '/api/wizzi/kernel/info'
551 [ parameters
552 {
553 title 'Wizzi - kernel packages'
554 method 'get'
555 url '/api/wizzi/kernel/packages'
556 [ parameters
557 {
558 title 'Wizzi - kernel package'
559 method 'get'
560 url '/api/wizzi/kernel/package'
561 [ parameters
562 {
563 type "string"
564 name "xpackage"
565 label "Package name"
566 demoValue "wizzi-mtree"
567 {
568 title 'Wizzi - plugin info'
569 method 'get'
570 url '/api/wizzi/plugin/info'
571 [ parameters
572 {
573 title 'Wizzi - plugin packages'
574 method 'get'
575 url '/api/wizzi/plugin/packages'
576 [ parameters
577 {
578 title 'Wizzi - plugin package'
579 method 'get'
580 [ parameters
581 {
582 type "string"
583 name "xpackage"
584 label "Package name"
585 demoValue "wizzi-js"
586 {
587 type "string"
588 name "schema"
589 label "Schema name"
590 demoValue "js"
591 {
592 title 'Wizzi - plugin schemas'
593 method 'get'
594 url '/api/wizzi/plugin/schemas'
595 [ parameters
596 {
597 type "string"
598 name "xpackage"
599 label "Package name"
600 demoValue "wizzi-web"
601 {
602 title 'Wizzi - plugin artifacts'
603 method 'get'
604 url '/api/wizzi/plugin/artifacts'
605 [ parameters
606 {
607 type "string"
608 name "xpackage"
609 label "Package name"
610 demoValue "wizzi-web"
611 {
612 title 'Wizzi - ittf - wizzi factory'
613 method 'get'
614 url '/api/wizzi/ittf/wizzifactory'
615 [ parameters
616 {
617 type "string"
618 name "storeKind"
619 label "Store kind"
620 demoValue "filesystem"
621 {
622 type "string"
623 name "plugins"
624 label "Plugins"
625 demoValue "wizzi-lab"
626 {
627 type "string"
628 name "globalContext"
629 label "Global context"
630 demoValue "name=wizzi studio;version=0.1.1"
631 {
632 title 'Wizzi - ittf - mtree'
633 method 'get'
634 url '/api/wizzi/ittf/mtree'
635 [ parameters
636 {
637 type "string"
638 name "hash"
639 label "Ittf hash"
640 demoValue "yRkyD16o8Kf9Q6xGKW6pH575nGmg9QTvdG8b7weGFBqalRp9X4u6zbk50JyoHkL3BJNPkLHdmQaByQkBC0YP19VyGRsqeYN59XWVh9bVBpXVxvFZeLB9Zg95CaydGLxGKgcdPmkM"
641 description "The hash is returned by ... "
642 {
643 title 'Wizzi - ittf - mtree debug'
644 method 'get'
645 url '/api/wizzi/ittf/mtreedebug'
646 [ parameters
647 {
648 type "string"
649 name "hash"
650 label "Ittf hash"
651 demoValue "yRkyD16o8Kf9Q6xGKW6pH575nGmg9QTvdG8b7weGFBqalRp9X4u6zbk50JyoHkL3BJNPkLHdmQaByQkBC0YP19VyGRsqeYN59XWVh9bVBpXVxvFZeLB9Zg95CaydGLxGKgcdPmkM"
652 description "The hash is returned by ... "
653 {
654 title 'Wizzi - ittf - default artifact'
655 method 'get'
656 url '/api/wizzi/ittf/defaultartifact'
657 [ parameters
658 {
659 type "string"
660 name "hash"
661 label "Ittf hash"
662 demoValue ""
663 description "The hash is returned by ... "
664 {
665 title 'Wizzi - wzjob'
666 method 'get'
667 url '/api/wizzi/wzjob'
668 [ parameters
669 {
670 type "string"
671 name "hash"
672 label "Job hash"
673 demoValue "079Bo665w9iMaWYk9QeVh090Rz1gd6cBEWZMymXEFAzd5mnzRRUx4DGVQdLehxXPXEB7QKslLX60gykbt344dzeWxphlxpqKVKmqtgWWodNNeJTB6GQW4M1kCQmbpk8JYXFbNmN3R3WBfGvd8KDK39CbPBE67QBgcYGbR6GQaoFebL415Q4eh3dMPZmmaJIVakXoQx50UA4x7onNK3TDdGz9Zm0"
674 description "The hash is returned by ... "
675 {
676 title 'Wizzi - wfschema'
677 method 'get'
678 url '/api/wizzi/wfschema'
679 [ parameters
680 {
681 type "string"
682 name "hash"
683 label "Schema hash"
684 demoValue "5xQqoDDK6QInzgboy0KvfY9YwpgynztVGaDPkZlGsLl7DyPlddCZaWQnYDxbUdQqQxEKBbTgBRWG8Xxmilee7ERbxktGEedKDKMdIqppyo99mNHkylXpbGoqC3l0Vz9awntvBlBR3RAKc45MVWDRzZt8JbmADVMWcW5Y61EZ3gcABKkRz7dZI89vbW0L7kte97Lbm3oZfzqdkNM"
685 description "The hash is returned by ... "
686 {
687 title 'Jobs - batches'
688 method 'get'
689 url '/api/jobs/batches'
690 [ parameters
691 {
692 title 'Jobs - batch'
693 method 'get'
694 url '/api/jobs/batch'
695 [ parameters
696 {
697 type "string"
698 name "hash"
699 label "Job batch hash"
700 demoValue "xRNGZvXlwKfG30Pvo70zCyMyPxWwXeHgB6NDaZnkhlA6PQNkkVHl7PWmo679S1AyWbPy4Vspd197gJX9UdY"
701 description "The hash is returned by ... "
702 {
703 title 'Jobs - gists'
704 method 'get'
705 url '/api/jobs/gists'
706 [ parameters
707 [ parameters
708 {
709 type "string"
710 name "kind"
711 label "Gist kind"
712 demoValue "gist"
713 {
714 title 'Jobs - gist'
715 method 'get'
716 url '/api/jobs/gist'
717 [ parameters
718 {
719 type "string"
720 name "hash"
721 label "Gist hash"
722 demoValue "wvmQl6l34ah1n5K8yW4pSNYNDz7K8yFYm4zwbPKmC6qoDdnqPPiPkZdDz5ReSke8e57A60SpbAKoE9M4sPGGK1eZ7wtNdD4BzBw4TzWW7E55lJheBnKPpg6GH7wk1Rg1YzfW9DdXazvnfxyXyzaBd6IDgoqmJewBuZDy0b77A8"
723 description "The hash is returned by ... "
724 {
725 title 'Jobs - execute gist'
726 method 'get'
727 url '/api/jobs/gistexec'
728 [ parameters
729 {
730 type "string"
731 name "hash"
732 label "Gist hash"
733 demoValue "wvmQl6l34ah1n5K8yW4pSNYNDz7K8yFYm4zwbPKmC6qoDdnqPPiPkZdDz5ReSke8e57A60SpbAKoE9M4sPGGK1eZ7wtNdD4BzBw4TzWW7E55lJheBnKPpg6GH7wk1Rg1YzfW9DdXazvnfxyXyzaBd6IDgoqmJewBuZDy0b77A8"
734 description "The hash is returned by ... "
735 {
736 title 'Jobs - wizzify snippet'
737 method 'get'
738 url '/api/jobs/wizzify'
739 [ parameters
740 {
741 type "string"
742 name "hash"
743 label "Snippet hash"
744 demoValue "3YPmqvqlpRUwgLaA7P9Rhbdbo6Q3pqc0B17LzJaBIyXQbW9XPPHaG14d8QA0iYWkWGqb4JC0NKWg7QRMT4RRwm95KVUmox45Y5e4heddEAaamXtW8PQd7xvAH76bokNP1wSQwlgG003XSqZJGNvNnacL95MLegQbiVggbZqYaMCD3nml8880UWnRqqoeAvi3b"
745 description "The hash is returned by ... "
746 {
747 title 'Studio - user'
748 method 'post'
749 url '/api/studio/user'
750 [ parameters
751 {
752 {
753 title 'Studio - create user'
754 method 'post'
755 url '/api/studio/user/create'
756 [ parameters
757 {
758 {
759 title 'Studio - project'
760 method 'post'
761 url '/api/studio/project'
762 [ parameters
763 {
764 {
765 title 'Studio - document'
766 method 'post'
767 url '/api/studio/document'
768 [ parameters
769 {
770 {
771 title 'Studio - fragment'
772 method 'post'
773 url '/api/studio/fragment'
774 [ parameters
775 {
776 {
777 title 'Repo - get user'
778 method 'get'
779 url '/repo/:user'
780 [ parameters
781 {
782 type "string"
783 paramType "url"
784 name "user"
785 label "User id"
786 demoValue "stefi"
787 {
788 title 'Repo - get project'
789 method 'get'
790 url '/repo/:user/:project'
791 [ parameters
792 {
793 type "string"
794 paramType "url"
795 name "user"
796 label "User id"
797 demoValue "stefi"
798 {
799 type "string"
800 paramType "url"
801 name "project"
802 label "Project id"
803 demoValue "studio"
804 {
805 title 'Repo - get folder or document'
806 method 'get'
807 url '/repo/:user/:project/:path'
808 [ parameters
809 {
810 type "string"
811 paramType "url"
812 name "user"
813 label "User id"
814 demoValue "stefi"
815 {
816 type "string"
817 paramType "url"
818 name "project"
819 label "Project id"
820 demoValue "studio"
821 {
822 type "string"
823 paramType "url"
824 name "path"
825 label "Folder or document path"
826 demoValue "wizzi"
827 {
828 title 'Repo - create folder'
829 method 'post'
830 url '/repo/:user/:project/:path'
831 [ parameters
832 {
833 type "string"
834 paramType "url"
835 name "user"
836 label "User id"
837 demoValue "stefi"
838 {
839 type "string"
840 paramType "url"
841 name "project"
842 label "Project id"
843 demoValue "studio"
844 {
845 type "string"
846 paramType "url"
847 name "path"
848 label "Folder path"
849 demoValue "temp/1"
850 {
851 type "static"
852 name "kind"
853 label "0 = folder 1 = document"
854 demoValue "0"
855 {
856 type "static"
857 name "action"
858 label "Action"
859 demoValue "create"
860 {
861 title 'Repo - create document'
862 method 'post'
863 url '/repo/:user/:project/:path'
864 [ parameters
865 {
866 type "string"
867 paramType "url"
868 name "user"
869 label "User id"
870 demoValue "stefi"
871 {
872 type "string"
873 paramType "url"
874 name "project"
875 label "Project id"
876 demoValue "studio"
877 {
878 type "string"
879 paramType "url"
880 name "path"
881 label "Folder path"
882 demoValue "temp/1/happy.html.ittf"
883 {
884 type "static"
885 name "kind"
886 label "0 = folder 1 = document"
887 demoValue "1"
888 {
889 type "static"
890 name "action"
891 label "Action"
892 demoValue "create"
893 {
894 title 'Repo - rename folder'
895 method 'post'
896 url '/repo/:user/:project/:path'
897 [ parameters
898 {
899 type "string"
900 paramType "url"
901 name "user"
902 label "User id"
903 demoValue "stefi"
904 {
905 type "string"
906 paramType "url"
907 name "project"
908 label "Project id"
909 demoValue "studio"
910 {
911 type "string"
912 paramType "url"
913 name "path"
914 label "Folder path"
915 demoValue "temp/1"
916 {
917 type "string"
918 name "newname"
919 label "New name"
920 demoValue "temp/2"
921 {
922 type "static"
923 name "kind"
924 label "0 = folder 1 = document"
925 demoValue "0"
926 {
927 type "static"
928 name "action"
929 label "Action"
930 demoValue "rename"
931 {
932 title 'Repo - rename document'
933 method 'post'
934 url '/repo/:user/:project/:path'
935 [ parameters
936 {
937 type "string"
938 paramType "url"
939 name "user"
940 label "User id"
941 demoValue "stefi"
942 {
943 type "string"
944 paramType "url"
945 name "project"
946 label "Project id"
947 demoValue "studio"
948 {
949 type "string"
950 paramType "url"
951 name "path"
952 label "Folder path"
953 demoValue "temp/1/happy.html.ittf"
954 {
955 type "string"
956 name "newname"
957 label "New name"
958 demoValue "temp/1/happy_new.html.ittf"
959 {
960 type "static"
961 name "kind"
962 label "0 = folder 1 = document"
963 demoValue "1"
964 {
965 type "static"
966 name "action"
967 label "Action"
968 demoValue "rename"
969 {
970 title 'Repo - delete folder'
971 method 'post'
972 url '/repo/:user/:project/:path'
973 [ parameters
974 {
975 type "string"
976 paramType "url"
977 name "user"
978 label "User id"
979 demoValue "stefi"
980 {
981 type "string"
982 paramType "url"
983 name "project"
984 label "Project id"
985 demoValue "studio"
986 {
987 type "string"
988 paramType "url"
989 name "path"
990 label "Folder path"
991 demoValue "temp/2"
992 {
993 type "static"
994 name "kind"
995 label "0 = folder 1 = document"
996 demoValue "0"
997 {
998 type "static"
999 name "action"
1000 label "Action"
1001 demoValue "delete"
1002 {
1003 title 'Repo - delete document'
1004 method 'post'
1005 url '/repo/:user/:project/:path'
1006 [ parameters
1007 {
1008 type "string"
1009 paramType "url"
1010 name "user"
1011 label "User id"
1012 demoValue "stefi"
1013 {
1014 type "string"
1015 paramType "url"
1016 name "project"
1017 label "Project id"
1018 demoValue "studio"
1019 {
1020 type "string"
1021 paramType "url"
1022 name "path"
1023 label "Folder path"
1024 demoValue "temp/1/happy_new.html.ittf"
1025 {
1026 type "static"
1027 name "kind"
1028 label "0 = folder 1 = document"
1029 demoValue "1"
1030 {
1031 type "static"
1032 name "action"
1033 label "Action"
1034 demoValue "delete"
1035 {
1036 title 'Wizzi factory - generation'
1037 method 'post'
1038 url '/api/wf/gen'
1039 [ parameters
1040 {
1041 {
1042 title 'Crawl - create snippet'
1043 method 'put'
1044 url '/api/crawl/snippet'
1045 [ parameters
1046 {
1047 type "string"
1048 paramType "body"
1049 name "name"
1050 label "Name"
1051 demoValue "myfirstsnippet.js"
1052 {
1053 type "string"
1054 paramType "body"
1055 name "code"
1056 label "Code"
1057 demoValue "function not(value) { return !value; }"
1058 {
1059 title 'Crawl - wizzify snippet'
1060 method 'post'
1061 url '/api/crawl/wizzify'
1062 [ parameters
1063 {
1064 type "string"
1065 paramType "body"
1066 name "code"
1067 label "Code"
1068 demoValue "function not(value) { return !value; }"
1069 {
1070 type "string"
1071 paramType "body"
1072 name "mime"
1073 label "Mime"
1074 demoValue "js"
1075 {
1076 title 'Github - clone repository'
1077 method 'get'
1078 url '/api/github/clone'
1079 [ parameters
1080 {
1081 type "string"
1082 paramType "query"
1083 name "url"
1084 label "Url"
1085 demoValue "https://github.com/vuejs-templates/webpack.git"
1086 {
1087 type "string"
1088 paramType "query"
1089 name "name"
1090 label "Name"
1091 demoValue "vue-webpack"
1092 {
1093 title 'Github - wizzify cloned repository'
1094 method 'get'
1095 url '/api/github/wizzify'
1096 [ parameters
1097 {
1098 type "string"
1099 paramType "query"
1100 name "name"
1101 label "name"
1102 demoValue "vue-webpack"
1103 {
1104 type "string"
1105 paramType "query"
1106 name "folder"
1107 label "Folder"
1108 demoValue ""
1109 *$

/ittf/site/webapi/styles.css.ittf

edit
                                            
1 css
2 < body
3 font-size 15px
4 < li
5 list-style none
6 < a
7 text-decoration none
8 . d-container
9 display flex
10 . d-left-aside
11 height 100%
12 min-width 20rem
13 overflow auto
14 padding-right 1rem
15 < ul
16 < li
17 padding 2px
18 < a
19 color #000
20 & :hover
21 color #fff
22 background-color #555
23 . d-main-content
24 padding-left 1rem
25 overflow auto
26 padding-right 1rem
27 height 800px
28 overflow auto
29 . d-right-aside
30 height 100%
31 max-width 40rem
32 overflow auto
33 . d-api-prop
34 display flex
35 padding 0.5rem 1rem
36 font-size 1.2rem
37 . d-api-prop-name
38 min-width 12rem
39 font-style italic
40 . d-api-prop-value
41 font-weight bold
42 . d-params-panel
43 margin-top 0.2rem
44 border 1px solid #ddd
45 . d-param
46 display flex
47 margin 0.2rem 0
48 width 100%
49 . d-param-label
50 min-width 10rem
51 padding 0.2rem
52 background-color #ddd
53 . d-param-input
54 padding 0.2rem
55 width 100%
56 < input
57 padding 0.2rem
58 width 32rem
59 font-weight 700

/ittf/site/webapi/main.js.ittf

edit
                                            
1 module
2 kind es6
3 $include js/wz/core
4 $include js/wz/stringFunctions

/t/js/wz/core.js.ittf

edit
                                            
1 $group
2 $include polyfill
3 iife
4 var wz = window.wz = {}
5 var rclass = /[\n\t\r]/g
6 var rnotwhite = (/\S+/g)
7 $include eventTarget
8 $include global
9 $include events
10 $include verify
11 set wz.element
12 function
13 param element
14 if typeof element === 'string'
15 var e = document.querySelector(element)
16 if !e
17 try
18 set e = document.querySelector("#" + element)
19 catch ex
20 return null
21 return e
22 else
23 return element
24 set wz.hide
25 function
26 param element
27 var e = wz.element(element)
28 set e.style.display = 'none'
29 set wz.show
30 function
31 param element
32 var e = wz.element(element)
33 set e.style.display = 'block'
34 set wz.hasClass
35 function
36 param element
37 param selector
38 var e = wz.element(element)
39 if (" " + e.className + " ").replace(rclass, " ").indexOf(" " + selector + " ") > -1
40 return true
41 return false
42 set wz.addClass
43 function
44 param element
45 param value
46 param options
47 var e = wz.element(element)
48 var classes, cur, finalValue
49 if options && options.removeOnClass
50 var elements = document.getElementsByClassName(options.removeOnClass)
51 _ Array.from(elements).forEach
52 function
53 param element
54 _ wz.removeClass(element, value)
55 if value && typeof value === "string"
56 set classes = ( value || "" ).match( rnotwhite ) || []
57 if !e.className && classes.length === 1
58 set e.className = value
59 else
60 set cur = " " + e.className + " "
61 foreach clazz in classes
62 if cur.indexOf( " " + clazz + " " ) < 0
63 set cur += clazz + " "
64 set finalValue = cur.trim()
65 if e.className !== finalValue
66 set e.className = finalValue
67 set wz.removeClass
68 function
69 param element
70 param value
71 var e = wz.element(element)
72 var classes, cur, finalValue
73 if value && typeof value === "string"
74 set classes = ( value || "" ).match( rnotwhite ) || []
75 set cur = e.className ? ( " " + e.className + " " ).replace( rclass, " " ) : ""
76 foreach clazz in classes
77 while cur.indexOf( " " + clazz + " " ) >= 0
78 set cur = cur.replace( " " + clazz + " ", " " )
79 set finalValue = cur.trim()
80 if e.className !== finalValue
81 set e.className = finalValue
82 set wz.toggleClass
83 function
84 param element
85 param value
86 if wz.hasClass(element, value)
87 _ wz.removeClass(element, value)
88 else
89 _ wz.addClass(element, value)
90 set wz.attribute
91 function
92 param element
93 param name
94 param value
95 var e = wz.element(element)
96 if typeof value === 'undefined'
97 return e.getAttribute(name)
98 else
99 _ e.setAttribute(name, value)
100 set wz.style
101 function
102 param element
103 param name
104 param value
105 var e = wz.element(element)
106 if typeof value === 'undefined'
107 return e.style[name]
108 else
109 set e.style[name] = value
110 set wz.text
111 function
112 param element
113 param value
114 var e = wz.element(element)
115 if typeof value === 'undefined'
116 return e.textContent
117 elif e.textContent !== value
118 set e.textContent = value
119 set wz.html
120 function
121 param element
122 param html
123 var saveElementForLog = element
124 if typeof element === "string"
125 set element = wz.element(element)
126 if !element
127 log 'element', saveElementForLog
128 throw new Error('In wz.html the element parameter must be an html element or the id of an html element. Received: ' + saveElementForLog)
129 if typeof html === 'undefined'
130 return element.innerHTML
131 else
132 set element.innerHTML = html
133 set wz.htmlEscaped
134 function
135 param element
136 param html
137 _ wz.html
138 @ element
139 _ wz.escapeHtml(html)
140 set wz.replaceChildren
141 function
142 param element
143 param nodes
144 var saveElementForLog = element
145 if typeof element === "string"
146 set element = wz.element(element)
147 if !element
148 log 'element', saveElementForLog
149 throw new Error('In wz.replaceChildren the element parameter must be an html element or the id of an html element. Received: ' + saveElementForLog)
150 set element.innerHTML = ''
151 if nodes.length
152 foreach node in nodes
153 _ element.appendChild( node )
154 else
155 _ element.appendChild( nodes )
156 set wz.value
157 function
158 param element
159 param value
160 var saveElementForLog = element
161 if typeof element === "string"
162 set element = wz.element(element)
163 if !element
164 log 'element', saveElementForLog
165 throw new Error('In wz.value the element parameter must be an html element or the id of an html element. Received: ' + saveElementForLog)
166 if typeof value === 'undefined'
167 return element.value
168 elif element.value !== value
169 set element.value = value
170 set wz.val = wz.value
171 set wz.click
172 function
173 param element
174 param handler
175 param useCapture
176 _ window.addEvent
177 @ wz.element(element)
178 @ 'click'
179 @ handler
180 @ useCapture
181 set wz.clickClass
182 function
183 param classname
184 param handler
185 param useCapture
186 var elements = document.getElementsByClassName(classname)
187 _ Array.from(elements).forEach
188 function
189 param element
190 _ wz.click
191 @ element
192 @ handler
193 @ useCapture
194 set wz.unclick
195 function
196 param element
197 param handler
198 param useCapture
199 _ window.removeEvent
200 @ wz.element(element)
201 @ 'click'
202 @ handler
203 @ useCapture
204 set wz.blur
205 function
206 param element
207 param handler
208 param useCapture
209 _ window.addEvent
210 @ wz.element(element)
211 @ 'blur'
212 @ handler
213 @ useCapture
214 set wz.unblur
215 function
216 param element
217 param handler
218 param useCapture
219 _ window.removeEvent
220 @ wz.element(element)
221 @ 'blur'
222 @ handler
223 @ useCapture
224 set wz.change
225 function
226 param element
227 param handler
228 param useCapture
229 _ window.addEvent
230 @ wz.element(element)
231 @ 'change'
232 @ handler
233 @ useCapture
234 set wz.unchange
235 function
236 param element
237 param handler
238 param useCapture
239 _ window.removeEvent
240 @ wz.element(element)
241 @ 'change'
242 @ handler
243 @ useCapture
244 set wz.contextmenu
245 function
246 param element
247 param handler
248 param useCapture
249 _ window.addEvent
250 @ wz.element(element)
251 @ 'contextmenu'
252 @ handler
253 @ useCapture
254 set wz.uncontextmenu
255 function
256 param element
257 param handler
258 param useCapture
259 _ window.removeEvent
260 @ wz.element(element)
261 @ 'contextmenu'
262 @ handler
263 @ useCapture
264 set wz.keypress
265 function
266 param element
267 param handler
268 param useCapture
269 _ window.addEvent
270 @ wz.element(element)
271 @ 'keypress'
272 @ handler
273 @ useCapture
274 set wz.unkeypress
275 function
276 param element
277 param handler
278 param useCapture
279 _ window.removeEvent
280 @ wz.element(element)
281 @ 'keypress'
282 @ handler
283 @ useCapture
284 set wz.contentLoaded
285 function
286 param fn
287 # from Diego Perini https://raw.githubusercontent.com/dperini/ContentLoaded/master/src/contentloaded.js
288 var
289 decl done = false
290 decl top = true
291 decl doc = window.document
292 decl root = doc.documentElement
293 decl modern = doc.addEventListener
294 decl add = modern ? 'addEventListener' : 'attachEvent'
295 decl rem = modern ? 'removeEventListener' : 'detachEvent'
296 decl pre = modern ? '' : 'on'
297 decl init
298 function
299 param e
300 if (e.type == 'readystatechange') && (doc.readyState != 'complete')
301 return
302 _ (e.type == 'load' ? window : doc)[rem]
303 @ pre + e.type
304 @ init
305 @ false
306 if !(done) && (done = true)
307 _ fn.call(window, (e.type || e))
308 decl poll
309 function
310 try
311 _ root.doScroll('left')
312 catch e
313 _ setTimeout(poll, 50)
314 return
315 _ init('poll')
316 if doc.readyState == 'complete'
317 _ fn.call(window, 'lazy')
318 else
319 if !(modern) && root.doScroll
320 try
321 set top = !(window.frameElement)
322 catch e
323 if top
324 _ poll()
325 _ doc[add]
326 @ pre + 'DOMContentLoaded'
327 @ init
328 @ false
329 _ doc[add]
330 @ pre + 'readystatechange'
331 @ init
332 @ false
333 _ window[add]
334 @ pre + 'load'
335 @ init
336 @ false
337 set wz.loaded = wz.contentLoaded
338 var entityMap
339 {
340 @ '&' '&'
341 @ '<' '<'
342 @ '>' '>'
343 @ '"' '"'
344 @ "'" '''
345 @ '/' '/'
346 @ '`' '`'
347 @ '=' '='
348 set wz.escapeHtml
349 function escapeHtml
350 param string
351 return
352 _ String(string).replace
353 @ /[&<>"'`=\/]/g
354 function fromEntityMap
355 param s
356 return entityMap[s]
357 set wz.unescapeHtml
358 function
359 param string
360 return
361 _ wz.replace
362 _ wz.replace
363 _ wz.replace
364 @ string
365 @ '<'
366 @ '<'
367 @ '>'
368 @ '>'
369 @ '&'
370 @ '&'
371 ()

/t/js/wz/stringFunctions.js.ittf

edit
                                            
1 $group
2 set String.prototype.replaceAll
3 function
4 param search
5 param replacement
6 var target = this
7 return target.replace(new RegExp(search, 'g'), replacement)

/t/js/wz/t/polyfill.js.ittf

edit
                                            
1 $group
2 if typeof Array.isArray === 'undefined'
3 set Array.isArray
4 function
5 param obj
6 return Object.prototype.toString.call(obj) === '[object Array]'

/t/js/wz/t/eventTarget.js.ittf

edit
                                            
1 $group
2 class wz_EventTarget
3 ctor
4 set this.handlers = {}
5 m __is_Event
6 param name
7 return Array.isArray(this.events) == false || this.events.indexOf(name) > -1
8 m emit
9 param name
10 var args = [].slice.call(arguments, 1)
11 # log 'wz_EventTarget.emit.args', arguments, args
12 if this.__is_Event(name)
13 if this.handlers[name] instanceof Array
14 foreach handle in this.handlers[name]
15 # log 'handle.context', handle.context
16 _ handle.callback.apply(handle.context, args)
17 else
18 throw new Error(name + ' event cannot be found on TreeView.')
19 m on
20 param name
21 param callback
22 param scope
23 # log 'EventTarget.on.name,scope', name, scope
24 if this.__is_Event(name)
25 if !this.handlers[name]
26 set this.handlers[name] = []
27 _ this.handlers[name].push
28 {
29 @ callback callback
30 @ context scope
31 else
32 throw new Error(name + ' is not supported by TreeView.')
33 m off
34 param name
35 param callback
36 var
37 decl index
38 decl found = false
39 if this.handlers[name] instanceof Array
40 _ this.handlers[name].forEach
41 function
42 param handle
43 param i
44 set index = i
45 if handle.callback === callback && !found
46 set found = true
47 if found
48 _ this.handlers[name].splice(index, 1)
49 set wz.EventTarget = wz_EventTarget

/t/js/wz/t/global.js.ittf

edit
                                            
1 $group
2 class wz_global : wz.EventTarget
3 set wz.global = new wz_global()

/t/js/wz/t/events.js.ittf

edit
                                            
1 $group
2 iife
3 if document.addEventListener
4 set window.addEvent =
5 function
6 param elem
7 param type
8 param handler
9 param useCapture
10 _ elem.addEventListener(type, handler, !(!(useCapture)))
11 return handler
12 set window.removeEvent =
13 function
14 param elem
15 param type
16 param handler
17 param useCapture
18 _ elem.removeEventListener(type, handler, !(!(useCapture)))
19 return true
20 elif document.attachEvent
21 set window.addEvent =
22 function
23 param elem
24 param type
25 param handler
26 set type = ("on" + type)
27 var boundedHandler
28 function
29 return handler.apply(elem, arguments)
30 _ elem.attachEvent(type, boundedHandler)
31 return boundedHandler
32 set window.removeEvent =
33 function
34 param elem
35 param type
36 param handler
37 set type = ("on" + type)
38 _ elem.detachEvent(type, handler)
39 return true
40 ()

/t/js/wz/t/verify.js.ittf

edit
                                            
1 $group
2 set wz.isString
3 function
4 param test
5 return test !== null && typeof(test) === 'string'
6 set wz.isEmpty
7 function
8 param test
9 return wz.isString(test) == false || test.length == 0
10 set wz.isObject
11 function
12 param test
13 if test === null || typeof(test) === 'undefined'
14 return false
15 return {}.toString.call(test) === '[object Object]'
16 set wz.isArray
17 function
18 param test
19 if test === null || typeof(test) === 'undefined'
20 return false
21 if Array.isArray
22 return Array.isArray(test);
23 return {}.toString.call(test) === '[object Array]'
24 set wz.clone
25 function
26 param obj
27 if wz.isArray(obj)
28 var ret
29 [
30 foreach item in obj
31 var value
32 _ clone
33 @ item
34 if value !== null
35 _ ret.push(value)
36 return ret
37 elif wz.isObject(obj)
38 var ret
39 {
40 for var prop in obj
41 if obj.hasOwnProperty(prop)
42 set ret[prop] = clone(obj[prop])
43 return ret
44 else
45 return obj
46 set wz.replace
47 function
48 param text
49 param find
50 param replace
51 if wz.isEmpty(text)
52 return text
53 return
54 _ text.replace
55 new RegExp
56 _ wz.escapeRegExp(find)
57 @ 'g'
58 @ replace
59 set wz.escapeRegExp
60 function
61 param text
62 if wz.isEmpty(text)
63 return text
64 return text.replace(/([.*+?^=!:${}()|\[\]\/\\])/g, "\\$1")

/ittf/css/main.css.ittf

edit
                                            
1 css
2 $
3 var count = [0,1,2,3,4,5];
4 var sizes = ['s','m','l','x','xl','xxl'];
5 var scale = ['0.4','0.6','1','1.3','1.6','3'];
6 var scaleRad = ['3','6','12','18','30','48'];
7 var scaleWidth = [15,25,35,65,75,85];
8 var scale50 = [50,100,150,200];
9 < html
10 font-family -apple-system, BlinkMacSystemFont, system-ui, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif
11 font-size 16px
12 < body
13 margin 0
14 < a
15 text-decoration none
16 color #ffffff
17 $include colors
18 $include layout
19 . fixed
20 position fixed
21 . relative
22 position relative
23 . absolute
24 position absolute
25 . flex-row
26 display flex
27 flex-direction row
28 . flex-column
29 display flex
30 flex-direction column
31 . justify-content-start
32 justify-content start
33 . justify-content-center
34 justify-content center
35 . justify-content-space-between
36 justify-content space-between
37 . space-between
38 justify-content space-between
39 . align-items-start
40 align-items start
41 . align-items-center
42 align-items center
43 . width-full
44 width 100%!important
45 . width-half
46 width 50%!important
47 . text-align-center
48 text-align center
49 . text-align-left
50 text-align left
51 . text-align-right
52 text-align right
53 . text-align-justify
54 text-align justify
55 . m-0-auto
56 margin 0 auto
57 $foreach c in scale50
58 . m-${c}
59 margin ${c}px
60 . m-l-${c}
61 margin-left ${c}px
62 . m-r-${c}
63 margin-right ${c}px
64 . m-t-${c}
65 margin-top ${c}px
66 . m-b-${c}
67 margin-bottom ${c}px
68 $foreach c in count
69 . font-${sizes[c]}
70 font-size ${scale[c]}em
71 . m-${sizes[c]}
72 margin ${scale[c]}em
73 . m-t-${sizes[c]}
74 margin-top ${scale[c]}em
75 . m-b-${sizes[c]}
76 margin-bottom ${scale[c]}em
77 . m-l-${sizes[c]}
78 margin-left ${scale[c]}em
79 . m-r-${sizes[c]}
80 margin-right ${scale[c]}em
81 . m-w-${sizes[c]}
82 margin-left ${scale[c]}em
83 margin-right ${scale[c]}em
84 . m-y-${sizes[c]}
85 margin-top ${scale[c]}em
86 margin-bottom ${scale[c]}em
87 . p-${sizes[c]}
88 padding ${scale[c]}em
89 . p-t-${sizes[c]}
90 padding-top ${scale[c]}em
91 . p-b-${sizes[c]}
92 padding-bottom ${scale[c]}em
93 . p-l-${sizes[c]}
94 padding-left ${scale[c]}em
95 . p-r-${sizes[c]}
96 padding-right ${scale[c]}em
97 . p-w-${sizes[c]}
98 padding-left ${scale[c]}em
99 padding-right ${scale[c]}em
100 . p-y-${sizes[c]}
101 padding-top ${scale[c]}em
102 padding-bottom ${scale[c]}em
103 . border-${sizes[c]}
104 border ${c+1}px solid #323232
105 . border-t-${sizes[c]}
106 border-top ${c+1}px solid #323232
107 . border-b-${sizes[c]}
108 border-bottom ${c+1}px solid #323232
109 . border-l-${sizes[c]}
110 border-left ${c+1}px solid #323232
111 . border-r-${sizes[c]}
112 border-right ${c+1}px solid #323232
113 . radius-${sizes[c]}
114 border-radius ${scaleRad[c]}px
115 . width-${sizes[c]}
116 width ${scaleWidth[c]}%!important
117 . font-w-s
118 font-weight 300
119 . font-w-x
120 font-weight 500
121 . font-w-xxl
122 font-weight 700
123 $include form
124 $include icons

/ittf/css/t/colors.css.ittf

edit
                                            
1 $group
2 - header
3 - main
4 - main-content
5 - footer
6 < :root
7 --color-tn-bg #313131
8 --color-input-bg #dedede
9 --color-input-border #767676
10 --color-shadow-inset #a0a0a0
11 --color-text-primary #000000
12 --color-success #2ea44f
13 --color-error #ff0000
14 --color-warning #dbab09
15 . color-header
16 color #efefef
17 . bg-color-header
18 background-color #434343
19 . color-header-inverse
20 color #ff4790
21 . bg-color-header-inverse
22 background-color #737373
23 . color-main
24 color #efefef
25 . bg-color-main
26 background-color #494949
27 . color-main-content
28 color #efefef
29 . bg-color-main-content
30 background-color #515151
31 . color-black
32 color #000000
33 . bg-white
34 background-color #000000
35 . color-white
36 color #ffffff
37 . bg-black
38 background-color #000000
39 . color-success
40 color var(--color-success)
41 . bg-success
42 background-color var(--color-success)
43 . color-error
44 color var(--color-error)
45 . bg-error
46 background-color var(--color-error)
47 . color-warning
48 color var(--color-warning)
49 . bg-warning
50 background-color var(--color-warning)
51 . bg-filter
52 background-color #eeeeff
53 . bg-list
54 background-color #eeffee

/ittf/css/t/layout.css.ittf

edit
                                            
1 $group
2 . container-70
3 width 70%
4 margin 0 auto
5 . container-80
6 width 80%
7 margin 0 auto
8 . container-90
9 width 90%
10 margin 0 auto
11 . flex-row
12 display flex
13 flex-direction row
14 . flex-column
15 display flex
16 flex-direction column
17 . justify-content-start
18 justify-content start
19 . justify-content-center
20 justify-content center
21 . justify-content-space-between
22 justify-content space-between
23 . space-between
24 justify-content space-between
25 . align-items-start
26 align-items start
27 . align-items-center
28 align-items center
29 . grid
30 display grid
31 . width-100
32 width 100%
33 . width-50
34 width 50%
35 . height-100
36 height 100%
37 . height-50
38 height 50%

/ittf/css/t/form.css.ittf

edit
                                            
1 $group
2 . form-control
3 background-color var(--color-input-bg)
4 background-position right 8px center
5 background-repeat no-repeat
6 border 1px solid var(--color-input-border)
7 border-radius 6px
8 box-shadow var(--color-shadow-inset)
9 color var(--color-text-primary)
10 font-size 14px
11 line-height 20px
12 outline none
13 padding 5px 12px
14 vertical-align middle
15 # ==========================================================================
16 # Form
17 # ==========================================================================
18 . form-card
19 padding 30px
20 border 1px solid #ebebeb
21 . form-title
22 font-size 30px
23 font-weight 700
24 margin-bottom 20px
25 # ==========================================================================
26 # Control
27 # ==========================================================================
28 . control-group
29 width 100%
30 padding 10px
31 margin-bottom 5px
32 . single-control
33 width 100%
34 margin-bottom 5px
35 . control-label
36 font-weight bold
37 margin-bottom 7px
38 . control-error
39 font-size 12px
40 color red
41 # ==========================================================================
42 # Label
43 # ==========================================================================
44 < label.required
45 position relative
46 < label.required:after
47 content '*'
48 margin-left 2px
49 color #b90000
50 # ==========================================================================
51 # GRID
52 # ==========================================================================
53 . grid-row-2
54 display grid
55 grid-template-columns 1fr 1fr
56 . grid-row-3
57 display grid
58 grid-template-columns 1fr 1fr 1fr
59 . input-group
60 position relative
61 width 100%
62 margin-bottom 1px
63 padding-bottom 4px
64 # ==========================================================================
65 # BUTTON
66 # ==========================================================================
67 . btn
68 line-height 40px
69 display inline-block
70 padding 0 25px
71 cursor pointer
72 color #fff
73 font-family "Roboto", "Arial", "Helvetica Neue", sans-serif
74 transition all 0.4s ease
75 font-size 14px
76 font-weight 700
77 . btn--radius
78 border-radius 3px
79 . btn--green
80 background #57b846
81 . btn--green:hover
82 background #4dae3c
83 # ==========================================================================
84 # Input
85 # ==========================================================================
86 < input
87 box-sizing border-box
88 border 1px solid #ebebeb
89 padding 14px 20px
90 border-radius 5px
91 font-size 14px
92 font-family inherit
93 < input:focus
94 border 1px solid #009e00
95 < input.error
96 border 1px solid #c70000
97 . input-icon
98 position absolute
99 font-size 18px
100 color #ccc
101 right 8px
102 top 50%
103 transform translateY(-50%)
104 cursor pointer
105 . input--style-2
106 color #666
107 font-size 16px
108 font-weight 500
109 . input--style-2::-webkit-input-placeholder
110 color #808080
111 opacity .4
112 . input--style-2:-moz-placeholder
113 color #808080
114 opacity .4
115 . input--style-2::-moz-placeholder
116 color #808080
117 opacity .4
118 . input--style-2:-ms-input-placeholder
119 color #808080
120 opacity .4
121 . input--style-2:-ms-input-placeholder
122 color #808080
123 opacity .4
124 # ==========================================================================
125 # Object condition
126 # ==========================================================================
127 . object-condition
128 border 1px solid #cbcbcb
129 padding 5px
130 background-color #efefef
131 . object-condition-checkbox
132 background-color #fff

/ittf/css/t/icons.css.ittf

edit
                                            
1 $group
2 . octicon
3 fill currentColor
4 display inline-block
5 overflow visible!important
6 vertical-align text-bottom
Save
Save & Refresh
Cancel