Update tmp/bower_components/ace-builds/demo/kitchen-sink/docs/mask.mask

Signed-off-by: Bernard Ojengwa <fccb4cc00c1ba7e51bf5c2b5f77130b9fe8d917e@gmail.com>

/* Mask Syntax Demo */

div > ' Test ~[name]';

define :userProfile {
	header {
		h4 > @title;
		button.close;
	}
}

:userProfile {
	@title > ' Hello ~[: username.toUpperCase()]'
}

style {
    html, body {
        background: url('name.png') 0 0 no-repeat;
    }
}

button {
	event click (e) {
	    this.textContent = `name ${e.clientX} !`;
	}
}

md > """

- div
- span

Hello

[one](http://google.com)

""";

header .foo > 'Heading'

button .baz x-signal='click: test' disabled > "
	Hello,
	world
	\"Buddy\"
"

var a = {
    name: `name ${window.innerWidth}`
};

span .foo > "~[bind: a.name]"


meta-iotqa: Disable nftables test with QEMU

It doesn't work with the way QEMU is tested so disable it.

Signed-off-by: Simo Kuusela <4755938158c3c622d3884e9a75ed20dc865bc695@intel.com>

# This file contains tests that can't be run on QEMU
# /docker/tester-exec.sh will use this file to remove tests from a manifest
oeqa.runtime.connectivity.bluetooth.btcheck
oeqa.runtime.connectivity.wifi.wifi_connect
oeqa.runtime.peripherals.mraa.mraa_gpio
oeqa.runtime.multimedia.audio.alsa
oeqa.runtime.sanity.nftables


package.mask python:3.4 for now

package.mask python:3.4 for now

# Use kmod instead of module-init-tools since this is the Gentoo/upstream default
sys-apps/module-init-tools

# Block newer versions of zabbix since our server is still on 1.8
>=net-analyzer/zabbix-2

# Mask nullmailer to force msmtp for virtual/mta (next in list of deps after nullmailer)
# while allowing others (like postfix for the new postfix-nullmailer setup) to be installed instead
mail-mta/nullmailer

# We're using the longterm 3.10.X kernel
>=sys-kernel/linux-headers-3.11
>=sys-kernel/gentoo-sources-3.11
>=sys-kernel/hardened-sources-3.11

# avoid pulling in python-3.4 as long as profiles/base/make.defaults
# still references python3_3 as the default python3 implementation
dev-lang/python:3.4


[+] include.builder coffeescript and less support

header {
    'IncludeJS.Builder'
    a.github-ribbon href='https://github.com/tenbits/IncludeJS';
}

scroller.content {
    p.tabPanel {
        div.info.active {
            div {
                ul {
                    li {
                        'Builder - Combine Resources included with IncludeJS'
                        div.hint > 'Javascript, Style, HTML, Image'
                        div.hint > 'Images that are in styles, that are not in working directory (are referenced), will be copied into working directory'
                        div > ul {
                            li > 'include.js'
                            li > 'include.css'
                            li > 'include.load'
                            li > 'include.lazy'
                        }
                    }
                    li { 'Minify'
                        div.hint {
                          a href='https://npmjs.org/package/uglify-js' target='_blank' > 'UglifyJS'
                          ' and '
                          a href='https://npmjs.org/package/clean-css' target='_blank' > 'clean-css'
                          ' are used'
                        }
                        div.hint > 'For UglifyJS you can specify compressor settings (So you can set defines to cut off DEBUG/TEST code from Release)
                            See UglifyJS documentation.'
                    }
                    li { 'JSHINT' div.hint { 'See ' a href='http://jshint.com/docs/' target='_blank' > 'JSHINT'} }
                    li {
                        'Integrated Web Server'
                        div.hint > 'With Browser AutoReload Feature'
                    }
                    li {
                        'Shell Commands'
                        div.hint > 'As Builder is action-based, shell commands could be used as pre-build or post-build.'
                    }

                    li {
                        'Custom Scripts as Actions'
                        div.hint {
                            prism > 'include.exports = { process: function(config, idfr) { /* ... */ idfr.resolve(); } }'
                        }
                    }

					li {
						'CoffeeScript and Less support'
					}

                    li {
                        'Handles Resource Referencing and Importing '
                    }
                }
            }
        }

        div.commands {
            ul {
                li {
                    code > 'includejs [*.html] -minify -KEY VALUE'
                    ul {
                        li > 'parse html and Resolve all Resources'
                        li > 'parse scripts and Resolve all Resources'
                        li > 'parse dependency-scripts and Resolve all Resources'
                        li > '... and so on'
                        li > 'combine all resources into separate single files'
                        li {
                            'create new HTML with'
                            ul {
                                li > 'embedded Lazy- and Loaddata'
                                li > 'only one script tag - linked to combined script file'
                                li > 'only one style tag - linked to combined style file'
                            }
                        }
                    }
                }
                li {
                    code > 'includejs [*.config | *.js]'
                    p {
                        'Loading Config File'
                        div > '.config - JSON'
                        div > '.js - Must export config to global'
                    }
                }
                li {
                    code > 'includejs template [name]'
                    p > 'Create Empty Project in {current} directory'
                    p > 'Available: "starter"'
                }
                li {
                    code > 'includejs globals'
                    p > 'Open global routes file'
                }
            }
            h3 > 'Config'
            div.hint {
                'Config contains one or more actions. (One action is an Object, more actions is Array of Objects) '
            }
            div {
                'Available actions and their settings:'
            }
            ul{

                li {
                    ul {
                        li > '{'
                        li > '"action": "build"'
                        li > '"file" — {String} - HTML input file'
                        li > '"vars" — {Object} — Variables used when parsing includes'

                        li > '"minify" — {Boolean} — run MinifyJS and clean-css'
                        li > '"uglify" - {Object:optional} - UglifyJS compressor settings. @default {global_defs: {DEBUG: false}}'
                        li  {
                            '"jshint" : {'
                            ul {
                                li > '"options" - {Object} - JSHINT options'
                                li > '"globals" - {Object} - global variables. @default {"window": false, "document": false}'
                                li > '"ignore" - {Object} - file names to ignore'
                                li > '}'
                            }
                        }
                        li > '"outputMain" — output name of a built html — @default "{name}.build.html"'
                        li > '"outputSources" — directory of combined/copied resources — @default "{name}.build/"'
                        li > '}'
                    }
                }
                li {
                    ul{
                        li > '{'
                        li > '"action": "shell"'
                        li > '"command": /** Array or String :: string commands*/ ['
                        li > '"cmd /C copy /B index.html c:/app",'
                        li > '"cmd /C copy /B index.build/ c:/app/index.build" ]'
                        li > '}'
                    }
                }
                li {
                    ul {
                        li > '{'
                        li > '"action": "custom"'
                        li > '"script": "scriptPath.js"'
                        li > div.hint {
                            div > 'Script shoud export object with .process(config, idfr) function.'
                            div > 'After script is ready call idfr.resolve()'
                        }
                    }
                }

            }
        }
        div.resources {
            h6 > 'Small note about external resources'
            p > 'Every application has some outer dependencies. Lets say you created empty project and want to use some classes, styles and images
            from you own library "MyCoolStuff". There are 3 ways you can do it.'
            ul {
                li {
                    i > 'Bad — ''Copy them into working project. '
                    div;
                    u > 'Contra'' — '
                    ul {
                        li > 'you dont know always from start on what classes or styles you need'
                        li > 'you have to work a lot with copy/paste - and this was always a mess.'
                        li > 'they become part of the project. This is good for Release, but not for Development'
                        li > 'harms code organization energy'
                    }
                }
                li {
                    i > 'Better — ''Use IncludeJS Routing to reference to the directory'
                    code > 'include.cfg(coolStuff: "file:///c:/dev/MyCoolStuff/classes/{name}.js")'
                    u > 'Contra'' — '
                    ul {
                        li > 'Though after project build you dont have any absolute paths more, but not in Development'
                        li > 'When you develop a web site (not a html5 application), you definitely
                            want to test on local server - is not possible with file:/// links'
                    }
                }
                li {
                    i > 'Best — ''Use symbolic links'
                    ul {
                        li > code > ' > npm install includejs -g'
                        li > code > ' > mkdir testProject && cd testProject'
                        li {
                            code > ' > includejs globals'
                            ul {
                                li > 'Add/Edit Paths to project directories, such as LibJS'
                                li > 'Add/Edit Default Routes'
                            }
                        }
                        li {
                            code > ' > includejs template starter'
                            'And now, under "testProject/.reference/libjs" you find a symbolic link to libjs project
                             and all requests to libjs libraries, such as '
                             code > 'include.js({ lib: "mask" })' 'will path through that symbolic link'
                        }
                    }

                    b>'! ' 'Any time you can import all referenced resources into working project with:'
                    code > ' > includejs build.config -action import'
                    div {
                        'You find that referenced resources now in ' tt > q > 'testProject/.import' ' directory'
                    }
                    div { b>'! '  'Any time you can also switch back to referencing with:'}
                    code > ' > includejs build.config -action reference'
                }
            }

        }
    }
}

footer {
    radioButtons{
        button.active name='info' > 'Info'
        button name='commands' > 'Commands'
        button name='resources' > 'Resources'
    }
}

header {
    'IncludeJS.Builder'
    a.github-ribbon href='https://github.com/tenbits/IncludeJS';
}

scroller.content {
    p.tabPanel {
        div.info.active {
            div {
                ul {
                    li {
                        'Builder - Combine Resources included with IncludeJS'
                        div.hint > 'Javascript, Style, HTML, Image'
                        div.hint > 'Images that are in styles, that are not in working directory (are referenced), will be copied into working directory'
                        div > ul {
                            li > 'include.js'
                            li > 'include.css'
                            li > 'include.load'
                            li > 'include.lazy'
                        }
                    }
                    li { 'Minify'
                        div.hint {
                          a href='https://npmjs.org/package/uglify-js' target='_blank' > 'UglifyJS'
                          ' and '
                          a href='https://npmjs.org/package/clean-css' target='_blank' > 'clean-css'
                          ' are used'
                        }
                        div.hint > 'For UglifyJS you can specify compressor settings (So you can set defines to cut off DEBUG/TEST code from Release)
                            See UglifyJS documentation.'
                    }
                    li { 'JSHINT' div.hint { 'See ' a href='http://jshint.com/docs/' target='_blank' > 'JSHINT'} }
                    li {
                        'Integrated Web Server'
                        div.hint > 'With Browser AutoReload Feature'
                    }
                    li {
                        'Shell Commands'
                        div.hint > 'As Builder is action-based, shell commands could be used as pre-build or post-build.'
                    }

                    li {
                        'Custom Scripts as Actions'
                        div.hint {
                            prism > 'include.exports = { process: function(config, idfr) { /* ... */ idfr.resolve(); } }'
                        }
                    }

                    li {
                        'Handles Resource Referencing and Importing '
                    }
                }
            }
        }

        div.commands {
            ul {
                li {
                    code > 'includejs [*.html] -minify -KEY VALUE'
                    ul {
                        li > 'parse html and Resolve all Resources'
                        li > 'parse scripts and Resolve all Resources'
                        li > 'parse dependency-scripts and Resolve all Resources'
                        li > '... and so on'
                        li > 'combine all resources into separate single files'
                        li {
                            'create new HTML with'
                            ul {
                                li > 'embedded Lazy- and Loaddata'
                                li > 'only one script tag - linked to combined script file'
                                li > 'only one style tag - linked to combined style file'
                            }
                        }
                    }
                }
                li {
                    code > 'includejs [*.config | *.js]'
                    p {
                        'Loading Config File'
                        div > '.config - JSON'
                        div > '.js - Must export config to global'
                    }
                }
                li {
                    code > 'includejs template [name]'
                    p > 'Create Empty Project in {current} directory'
                    p > 'Available: "starter"'
                }
                li {
                    code > 'includejs globals'
                    p > 'Open global routes file'
                }
            }
            h3 > 'Config'
            div.hint {
                'Config contains one or more actions. (One action is an Object, more actions is Array of Objects) '
            }
            div {
                'Available actions and their settings:'
            }
            ul{

                li {
                    ul {
                        li > '{'
                        li > '"action": "build"'
                        li > '"file" — {String} - HTML input file'
                        li > '"vars" — {Object} — Variables used when parsing includes'

                        li > '"minify" — {Boolean} — run MinifyJS and clean-css'
                        li > '"uglify" - {Object:optional} - UglifyJS compressor settings. @default {global_defs: {DEBUG: false}}'
                        li  {
                            '"jshint" : {'
                            ul {
                                li > '"options" - {Object} - JSHINT options'
                                li > '"globals" - {Object} - global variables. @default {"window": false, "document": false}'
                                li > '"ignore" - {Object} - file names to ignore'
                                li > '}'
                            }
                        }
                        li > '"outputMain" — output name of a built html — @default "{name}.build.html"'
                        li > '"outputSources" — directory of combined/copied resources — @default "{name}.build/"'
                        li > '}'
                    }
                }
                li {
                    ul{
                        li > '{'
                        li > '"action": "shell"'
                        li > '"command": /** Array or String :: string commands*/ ['
                        li > '"cmd /C copy /B index.html c:/app",'
                        li > '"cmd /C copy /B index.build/ c:/app/index.build" ]'
                        li > '}'
                    }
                }
                li {
                    ul {
                        li > '{'
                        li > '"action": "custom"'
                        li > '"script": "scriptPath.js"'
                        li > div.hint {
                            div > 'Script shoud export object with .process(config, idfr) function.'
                            div > 'After script is ready call idfr.resolve()'
                        }
                    }
                }

            }
        }
        div.resources {
            h6 > 'Small note about external resources'
            p > 'Every application has some outer dependencies. Lets say you created empty project and want to use some classes, styles and images
            from you own library "MyCoolStuff". There are 3 ways you can do it.'
            ul {
                li {
                    i > 'Bad — ''Copy them into working project. '
                    div;
                    u > 'Contra'' — '
                    ul {
                        li > 'you dont know always from start on what classes or styles you need'
                        li > 'you have to work a lot with copy/paste - and this was always a mess.'
                        li > 'they become part of the project. This is good for Release, but not for Development'
                        li > 'harms code organization energy'
                    }
                }
                li {
                    i > 'Better — ''Use IncludeJS Routing to reference to the directory'
                    code > 'include.cfg(coolStuff: "file:///c:/dev/MyCoolStuff/classes/{name}.js")'
                    u > 'Contra'' — '
                    ul {
                        li > 'Though after project build you dont have any absolute paths more, but not in Development'
                        li > 'When you develop a web site (not a html5 application), you definitely
                            want to test on local server - is not possible with file:/// links'
                    }
                }
                li {
                    i > 'Best — ''Use symbolic links'
                    ul {
                        li > code > ' > npm install includejs -g'
                        li > code > ' > mkdir testProject && cd testProject'
                        li {
                            code > ' > includejs globals'
                            ul {
                                li > 'Add/Edit Paths to project directories, such as LibJS'
                                li > 'Add/Edit Default Routes'
                            }
                        }
                        li {
                            code > ' > includejs template starter'
                            'And now, under "testProject/.reference/libjs" you find a symbolic link to libjs project
                             and all requests to libjs libraries, such as '
                             code > 'include.js({ lib: "mask" })' 'will path through that symbolic link'
                        }
                    }

                    b>'! ' 'Any time you can import all referenced resources into working project with:'
                    code > ' > includejs build.config -action import'
                    div {
                        'You find that referenced resources now in ' tt > q > 'testProject/.import' ' directory'
                    }
                    div { b>'! '  'Any time you can also switch back to referencing with:'}
                    code > ' > includejs build.config -action reference'
                }
            }

        }
    }
}

footer {
    radioButtons{
        button.active name='info' > 'Info'
        button name='commands' > 'Commands'
        button name='resources' > 'Resources'
    }
}


Mask Puppet version 6

Mask Puppet version 6

# Use kmod instead of module-init-tools since this is the Gentoo/upstream default
sys-apps/module-init-tools

# Block newer versions of zabbix since our server is still on 1.8
>=net-analyzer/zabbix-2

# Mask nullmailer to force msmtp for virtual/mta (next in list of deps after nullmailer)
# while allowing others (like postfix for the new postfix-nullmailer setup) to be installed instead
mail-mta/nullmailer

# Mask the new postfix stable release 3.0.0 since we are not ready with our configuration yet.
>=mail-mta/postfix-3.0.0

# We're using the longterm 4.4.X kernel
>=sys-kernel/gentoo-sources-4.5
>=sys-kernel/hardened-sources-4.5
<sys-kernel/linux-headers-4.4

# Facter 2.5.x seems to have a bug and is therefore not useable (facter tries
# to connect to the cloud-init/EC2 IP address 169.254.169.254 in order to
# retrieve facts and hangs itself up in an infinite re-try loop).
~dev-ruby/facter-2.5

# Temporarily mask GCC 8
>=sys-devel/gcc-8

# We need to use gluster 3.8
>=sys-cluster/glusterfs-3.9

# Mask Puppet version 6 until Puppet master has been upgraded
>=app-admin/puppet-6


mask dev-ruby/facter 2.5 and upwards

mask dev-ruby/facter 2.5 and upwards

# Use kmod instead of module-init-tools since this is the Gentoo/upstream default
sys-apps/module-init-tools

# Block newer versions of zabbix since our server is still on 1.8
>=net-analyzer/zabbix-2

# Mask nullmailer to force msmtp for virtual/mta (next in list of deps after nullmailer)
# while allowing others (like postfix for the new postfix-nullmailer setup) to be installed instead
mail-mta/nullmailer

# Mask the new postfix stable release 3.0.0 since we are not ready with our configuration yet.
>=mail-mta/postfix-3.0.0

# We're using the longterm 4.4.X kernel
>=sys-kernel/gentoo-sources-4.5
>=sys-kernel/hardened-sources-4.5
<sys-kernel/linux-headers-4.4

# Mask Puppet 4 for now
>=app-admin/puppet-4

# Facter 2.5.x seems to have a bug and is therefore not useable (facter tries
# to connect to the cloud-init/EC2 IP address 169.254.169.254 in order to
# retrieve facts and hangs itself up in an infinite re-try loop).
>=dev-ruby/facter-2.5


[+] install instruction

[+] install instruction

layout:view master='view' {

	title {
		a.github-ribbon href='https://github.com/tenbits/IncludeJS';
	}

	tabs {
		radioButtons{
			button.active name='info' > 'Info'
			button name='commands' > 'Commands'
			button name='resources' > 'Resources'
		}
	}

	content {
		p.container.tabPanel {
			div.info.active {
				div {
				    prism > ' > npm install -g includejs'
					ul {
						li {
							'Builder - Combine Resources included with IncludeJS'
							div.hint > 'Javascript, Style, HTML, Image'
							div.hint > 'Images that are in styles, that are not in working directory (are referenced), will be copied into working directory'
							div > ul {
								li > 'include.js'
								li > 'include.css'
								li > 'include.load'
								li > 'include.lazy'
							}
						}
						li { 'Minify'
							div.hint {
							  a href='https://npmjs.org/package/uglify-js' target='_blank' > 'UglifyJS'
							  ' and '
							  a href='https://npmjs.org/package/clean-css' target='_blank' > 'clean-css'
							  ' are used'
							}
							div.hint > 'For UglifyJS you can specify compressor settings (So you can set defines to cut off DEBUG/TEST code from Release)
								See UglifyJS documentation.'
						}
						li { 'JSHINT' div.hint { 'See ' a href='http://jshint.com/docs/' target='_blank' > 'JSHINT'} }
						li {
							'Integrated Web Server'

							div.hint > b > 'with auto-refresh feature'
							div.hint > 'HOT Reload of *.css, *.js and *.mask files, for other stuff page reload triggers'
						}
						li {
							'Shell Commands'
							div.hint > 'As Builder is action-based, shell commands could be used as pre-build or post-build.'
						}

						li {
							'Custom Scripts as Actions'
							div.hint {
								prism > 'include.exports = { process: function(config, idfr) { /* ... */ idfr.resolve(); } }'
							}
							div.hint > 'Could be used as shell scripts. Note that you can use includejs api classes'
						}

						li {
							'CoffeeScript and Less support'
							div.hint > '*.less will be compiled and joined with regular css files, as also CoffeeScript will be joined into one main js file'
						}

						li {
							'Handle Resource Referencing and Importing'
						}
					}
				}
			}

			div.commands {
				ul {
					li {
						code > ' > includejs [action] [arg] [...] -KEY VALUE [...]'
						div {
							div > 'All this arguments will be parsed to a config object'
							div.hint > '@see supported actions'
						}
					}
					li {
						code > ' > includejs [*.html] -minify -KEY VALUE'

						div > '
						If first argument is html file, then this path will be set in config for "file" property, and "build" for action.
						 You can also sepcify some additional config values for this build - @see "build" action.
						'
					}
					li {
						code > ' > includejs [*.config | *.js]'
						p {
							'Load config and process'
							div > '*.config — JSON'
							div {
							 	'*.js — This javascript must set "config" to globals: ' tt > 'global.config = {OBJECT}'
							}
						}
					}
				}
				h3 > 'Config'
				div.hint {
					'Config contains one or more actions. (One action is an Object, more actions is Array of Objects) '
				}
				div {
					'Available actions and their settings:'
				}
				ul{

					li {
						ul {
							li > '{'
							li { '"action": "' b > 'build' '"' }
							li > '"file" — {String} - HTML input file'
							li > '"vars" — {Object} — Variables used when parsing includes'

							li > '"minify" — {Boolean} — run MinifyJS and clean-css'
							li > '"uglify" - {Object:optional} - UglifyJS compressor settings. @default {global_defs: {DEBUG: false}}'
							li  {
								'"jshint" : {'
								ul {
									li > '"options" - {Object} - JSHINT options'
									li > '"globals" - {Object} - global variables. @default {"window": false, "document": false}'
									li > '"ignore" - {Object} - file names to ignore'
									li > '}'
								}
							}
							li > '"outputMain" — output name of a built html — @default "{name}.build.html"'
							li > '"outputSources" — directory of combined/copied resources — @default "{name}.build/"'
							li > '}'
						}

						p {
							'Build includejs project.'
							div.hint > 'It will parse specified file and its resources, and will recursive collect all includes'
						}
					}
					li {
						ul{
							li > '{'
							li { '"action": "' b > 'project-import' '"' }
							li > '}'
						}
						p {
						  'Copy resources, that are used by current project, from referenced directories in '
							tt > '.reference/*' ' to ' tt >'.import' ' directory'
						}
					}
					li {
						ul{
							li > '{'
							li { '"action": "' b > 'project-reference' '"' }
							li > '}'
						}
						p {
						  'Create outer referencing in ' tt > '.reference/*' 'acording to routing defined in '
						  tt > '%npm-global-directory%/includejs/globals.txt'
						}
					}
					li {
						ul{
							li > '{'
							li { '"action": "' b > 'shell' '"' }
							li > '"command": /** Array or String :: string commands*/ ['
							li > '"cmd /C copy /B index.html c:/app",'
							li > '"cmd /C copy /B index.build/ c:/app/index.build" ]'
							li > '}'
						}
						p > 'Execuate shell commands'
					}
					li {
						ul {
							li > '{'
							li { '"action": "' b > 'custom' '"' }
							li > '"script": "scriptPath.js"'
							li > '}'
						}
						p > 'Execuate custom scripts'
						div.hint {
							div > 'Script shoud export object with .process(config, idfr) function.'
							div > 'After script is ready call idfr.resolve() for processing next actions'
						}
						div.hint {
							'If you want to call just that action only, you can do it from command line:'
							div > code > ' > includejs custom scriptPath.js'
						}
					}

					li {
						ul{
							li > '{'
							li { '"action": "' b > 'server' '"' }
							li > '"port": NUMBER /* optional @default  5777 */'
							li > '"open": Filename to open in browser /* optional */'
							li > '}'
						}
						p { 'Create server in ' tt > '%current-directory%' }
						div.hint {
							'To not create config file only for this action, you can use raw cli command with action argument:'
							div > code > ' > includejs server'
							'To open browser and additionally to define port:'
							div > code > ' >  includejs server index.dev.html -port 7777'
						}
					}
					li {
						ul{
							li > '{'
							li { '"action": "' b > 'reference' '"' }
							li > '"path": directory path || name of a project from globals.txt'
							li > '"name": reference name /* optional @default directory name*/'
							li > '}'
						}
						p > 'Creates symbolic link to specified path in %current_directory%/.reference/%name%'
						div.hint {
							div > 'Command Line calls: '
							div > code > ' > includejs reference c:/development/mylib'
							div > 'You can add this path to globals.txt, so afterwards you can call this as such:'
							div > code > ' > includejs reference mylib'
						}
					}
					li {
						ul{
							li > '{'
							li { '"action": "' b > 'template' '"' }
							li > '"name": name'
							li > '}'
						}

						p > 'Create Template Project in %current_dir%'
						p > 'Available: "starter" , "todomvc" (@sample application to fiddle around with maskjs,includejs etc.)'
						div.hint {
							'You can create any other templates with just coping needed files to '
							tt > '%npm-global-directory%/node_modules/includejs/template/%YourTemplateName%'
						}
						div.hint {
							'Raw cli command:'
							div > code > ' > includejs template starter'
						}
					}
					li {
						ul{
							li > '{'
							li { '"action": "' b > 'git-clone' '"' }
							li > '}'
						}
						p > 'Clones LibJS Libraries into current directory'
						div {
							'It will also save this path intern, for future routing - so calling this action,
								includejs should have
								write permissions to ' tt > '%npm-global-directory%/includejs' ' directory'
						}
						div.hint {
							'Command Line: '
							code > ' > includejs git-clone'
						}
					}
					li {
						ul{
							li > '{'
							li { '"action": "' b > 'globals' '"' }
							li > '}'
						}
						code > ' > includejs globals'

						p > 'Open globals.txt of includejs for editing of your routes, etc. Example of globals.txt:'

						prism src='/api.help/globals.js';

					}
				}
			}
			div.resources {
				h6 > 'Small note about external resources'
				p > 'Every application has some outer dependencies. Lets say you created empty project and want to use some classes, styles and images
				from you own library "MyCoolStuff". There are several ways you can do it.'
				ul {
					li {
						i > 'Bad — ''Copy them into working project. '
						div;
						u > 'Contra'' — '
						ul {
							li > 'you dont know always from start on what classes or styles you need'
							li > 'you have to work a lot with copy/paste - and this was always a mess.'
							li > 'they become part of the project. This is good for Release, but not for Development'
							li > 'harms code organization energy'
						}
					}

					li {
						i > 'Best — ''Use symbolic links'
						div > 'Example:'
						ul {
							li {
								'Install IncludeJS.Builder and LibJS libraries: ' a href='#/about/install' > '@how-to'
							}
							li {
								'Create template project'
								div > code > '> mkdir testProject && cd testProject && includejs template starter'
								div {
									'And now, under "testProject/.reference/libjs" you find a symbolic link to libjs project
									and all requests to libjs libraries, such as '
									tt > 'include.js({ lib: "mask" })' 'will path through that symbolic link'
								}
							}
						}

						p {
							'After your application is ready for release, you can build it - all resources will be combined, and no more referencing will occure'

							div.hint {
							  'Any time you can import all referenced resources to projects directory. '
							  i > 'You may need this, for example, for sending your dev-project to smbd. else.'

							  p > code > ' > includejs project-import'
							}

							p.hint > 'This will import only resources you use in your project (scripts, images, views, etc.), and not the whole directories.'
						}
					}
				}

			}
		}
	}

}

layout:view master='view' {

	title {
		a.github-ribbon href='https://github.com/tenbits/IncludeJS';
	}

	tabs {
		radioButtons{
			button.active name='info' > 'Info'
			button name='commands' > 'Commands'
			button name='resources' > 'Resources'
		}
	}

	content {
		p.container.tabPanel {
			div.info.active {
				div {
					ul {
						li {
							'Builder - Combine Resources included with IncludeJS'
							div.hint > 'Javascript, Style, HTML, Image'
							div.hint > 'Images that are in styles, that are not in working directory (are referenced), will be copied into working directory'
							div > ul {
								li > 'include.js'
								li > 'include.css'
								li > 'include.load'
								li > 'include.lazy'
							}
						}
						li { 'Minify'
							div.hint {
							  a href='https://npmjs.org/package/uglify-js' target='_blank' > 'UglifyJS'
							  ' and '
							  a href='https://npmjs.org/package/clean-css' target='_blank' > 'clean-css'
							  ' are used'
							}
							div.hint > 'For UglifyJS you can specify compressor settings (So you can set defines to cut off DEBUG/TEST code from Release)
								See UglifyJS documentation.'
						}
						li { 'JSHINT' div.hint { 'See ' a href='http://jshint.com/docs/' target='_blank' > 'JSHINT'} }
						li {
							'Integrated Web Server'

							div.hint > b > 'with auto-refresh feature'
							div.hint > 'HOT Reload of *.css, *.js and *.mask files, for other stuff page reload triggers'
						}
						li {
							'Shell Commands'
							div.hint > 'As Builder is action-based, shell commands could be used as pre-build or post-build.'
						}

						li {
							'Custom Scripts as Actions'
							div.hint {
								prism > 'include.exports = { process: function(config, idfr) { /* ... */ idfr.resolve(); } }'
							}
							div.hint > 'Could be used as shell scripts. Note that you can use includejs api classes'
						}

						li {
							'CoffeeScript and Less support'
							div.hint > '*.less will be compiled and joined with regular css files, as also CoffeeScript will be joined into one main js file'
						}

						li {
							'Handle Resource Referencing and Importing'
						}
					}
				}
			}

			div.commands {
				ul {
					li {
						code > ' > includejs [action] [arg] [...] -KEY VALUE [...]'
						div {
							div > 'All this arguments will be parsed to a config object'
							div.hint > '@see supported actions'
						}
					}
					li {
						code > ' > includejs [*.html] -minify -KEY VALUE'

						div > '
						If first argument is html file, then this path will be set in config for "file" property, and "build" for action.
						 You can also sepcify some additional config values for this build - @see "build" action.
						'
					}
					li {
						code > ' > includejs [*.config | *.js]'
						p {
							'Load config and process'
							div > '*.config — JSON'
							div {
							 	'*.js — This javascript must set "config" to globals: ' tt > 'global.config = {OBJECT}'
							}
						}
					}
				}
				h3 > 'Config'
				div.hint {
					'Config contains one or more actions. (One action is an Object, more actions is Array of Objects) '
				}
				div {
					'Available actions and their settings:'
				}
				ul{

					li {
						ul {
							li > '{'
							li { '"action": "' b > 'build' '"' }
							li > '"file" — {String} - HTML input file'
							li > '"vars" — {Object} — Variables used when parsing includes'

							li > '"minify" — {Boolean} — run MinifyJS and clean-css'
							li > '"uglify" - {Object:optional} - UglifyJS compressor settings. @default {global_defs: {DEBUG: false}}'
							li  {
								'"jshint" : {'
								ul {
									li > '"options" - {Object} - JSHINT options'
									li > '"globals" - {Object} - global variables. @default {"window": false, "document": false}'
									li > '"ignore" - {Object} - file names to ignore'
									li > '}'
								}
							}
							li > '"outputMain" — output name of a built html — @default "{name}.build.html"'
							li > '"outputSources" — directory of combined/copied resources — @default "{name}.build/"'
							li > '}'
						}

						p {
							'Build includejs project.'
							div.hint > 'It will parse specified file and its resources, and will recursive collect all includes'
						}
					}
					li {
						ul{
							li > '{'
							li { '"action": "' b > 'project-import' '"' }
							li > '}'
						}
						p {
						  'Copy resources, that are used by current project, from referenced directories in '
							tt > '.reference/*' ' to ' tt >'.import' ' directory'
						}
					}
					li {
						ul{
							li > '{'
							li { '"action": "' b > 'project-reference' '"' }
							li > '}'
						}
						p {
						  'Create outer referencing in ' tt > '.reference/*' 'acording to routing defined in '
						  tt > '%npm-global-directory%/includejs/globals.txt'
						}
					}
					li {
						ul{
							li > '{'
							li { '"action": "' b > 'shell' '"' }
							li > '"command": /** Array or String :: string commands*/ ['
							li > '"cmd /C copy /B index.html c:/app",'
							li > '"cmd /C copy /B index.build/ c:/app/index.build" ]'
							li > '}'
						}
						p > 'Execuate shell commands'
					}
					li {
						ul {
							li > '{'
							li { '"action": "' b > 'custom' '"' }
							li > '"script": "scriptPath.js"'
							li > '}'
						}
						p > 'Execuate custom scripts'
						div.hint {
							div > 'Script shoud export object with .process(config, idfr) function.'
							div > 'After script is ready call idfr.resolve() for processing next actions'
						}
						div.hint {
							'If you want to call just that action only, you can do it from command line:'
							div > code > ' > includejs custom scriptPath.js'
						}
					}

					li {
						ul{
							li > '{'
							li { '"action": "' b > 'server' '"' }
							li > '"port": NUMBER /* optional @default  5777 */'
							li > '"open": Filename to open in browser /* optional */'
							li > '}'
						}
						p { 'Create server in ' tt > '%current-directory%' }
						div.hint {
							'To not create config file only for this action, you can use raw cli command with action argument:'
							div > code > ' > includejs server'
							'To open browser and additionally to define port:'
							div > code > ' >  includejs server index.dev.html -port 7777'
						}
					}
					li {
						ul{
							li > '{'
							li { '"action": "' b > 'reference' '"' }
							li > '"path": directory path || name of a project from globals.txt'
							li > '"name": reference name /* optional @default directory name*/'
							li > '}'
						}
						p > 'Creates symbolic link to specified path in %current_directory%/.reference/%name%'
						div.hint {
							div > 'Command Line calls: '
							div > code > ' > includejs reference c:/development/mylib'
							div > 'You can add this path to globals.txt, so afterwards you can call this as such:'
							div > code > ' > includejs reference mylib'
						}
					}
					li {
						ul{
							li > '{'
							li { '"action": "' b > 'template' '"' }
							li > '"name": name'
							li > '}'
						}

						p > 'Create Template Project in %current_dir%'
						p > 'Available: "starter" , "todomvc" (@sample application to fiddle around with maskjs,includejs etc.)'
						div.hint {
							'You can create any other templates with just coping needed files to '
							tt > '%npm-global-directory%/node_modules/includejs/template/%YourTemplateName%'
						}
						div.hint {
							'Raw cli command:'
							div > code > ' > includejs template starter'
						}
					}
					li {
						ul{
							li > '{'
							li { '"action": "' b > 'git-clone' '"' }
							li > '}'
						}
						p > 'Clones LibJS Libraries into current directory'
						div {
							'It will also save this path intern, for future routing - so calling this action,
								includejs should have
								write permissions to ' tt > '%npm-global-directory%/includejs' ' directory'
						}
						div.hint {
							'Command Line: '
							code > ' > includejs git-clone'
						}
					}
					li {
						ul{
							li > '{'
							li { '"action": "' b > 'globals' '"' }
							li > '}'
						}
						code > ' > includejs globals'

						p > 'Open globals.txt of includejs for editing of your routes, etc. Example of globals.txt:'

						prism src='/api.help/globals.js';

					}
				}
			}
			div.resources {
				h6 > 'Small note about external resources'
				p > 'Every application has some outer dependencies. Lets say you created empty project and want to use some classes, styles and images
				from you own library "MyCoolStuff". There are several ways you can do it.'
				ul {
					li {
						i > 'Bad — ''Copy them into working project. '
						div;
						u > 'Contra'' — '
						ul {
							li > 'you dont know always from start on what classes or styles you need'
							li > 'you have to work a lot with copy/paste - and this was always a mess.'
							li > 'they become part of the project. This is good for Release, but not for Development'
							li > 'harms code organization energy'
						}
					}

					li {
						i > 'Best — ''Use symbolic links'
						div > 'Example:'
						ul {
							li {
								'Install IncludeJS.Builder and LibJS libraries: ' a href='#/about/install' > '@how-to'
							}
							li {
								'Create template project'
								div > code > '> mkdir testProject && cd testProject && includejs template starter'
								div {
									'And now, under "testProject/.reference/libjs" you find a symbolic link to libjs project
									and all requests to libjs libraries, such as '
									tt > 'include.js({ lib: "mask" })' 'will path through that symbolic link'
								}
							}
						}

						p {
							'After your application is ready for release, you can build it - all resources will be combined, and no more referencing will occure'

							div.hint {
							  'Any time you can import all referenced resources to projects directory. '
							  i > 'You may need this, for example, for sending your dev-project to smbd. else.'

							  p > code > ' > includejs project-import'
							}

							p.hint > 'This will import only resources you use in your project (scripts, images, views, etc.), and not the whole directories.'
						}
					}
				}

			}
		}
	}

}


sys-kernel/linux-headers: Removed masking of newer versions.

Multiple packages depend on newer header versions. According to
https://bugs.gentoo.org/show_bug.cgi?id=551248#c5 it shouldn't be a
problem to build agains newer headers.

# Use kmod instead of module-init-tools since this is the Gentoo/upstream default
sys-apps/module-init-tools

# Block newer versions of zabbix since our server is still on 1.8
>=net-analyzer/zabbix-2

# Mask nullmailer to force msmtp for virtual/mta (next in list of deps after nullmailer)
# while allowing others (like postfix for the new postfix-nullmailer setup) to be installed instead
mail-mta/nullmailer

# Mask the new postfix stable release 3.0.0 since we are not ready with our configuration yet.
>=mail-mta/postfix-3.0.0

# We're using the longterm 3.10.X kernel
>=sys-kernel/gentoo-sources-3.11
>=sys-kernel/hardened-sources-3.11
<sys-kernel/linux-headers-3.10

# Use kmod instead of module-init-tools since this is the Gentoo/upstream default
sys-apps/module-init-tools

# Block newer versions of zabbix since our server is still on 1.8
>=net-analyzer/zabbix-2

# Mask nullmailer to force msmtp for virtual/mta (next in list of deps after nullmailer)
# while allowing others (like postfix for the new postfix-nullmailer setup) to be installed instead
mail-mta/nullmailer

# Mask the new postfix stable release 3.0.0 since we are not ready with our configuration yet.
>=mail-mta/postfix-3.0.0

# We're using the longterm 3.10.X kernel
>=sys-kernel/linux-headers-3.11
>=sys-kernel/gentoo-sources-3.11
>=sys-kernel/hardened-sources-3.11
<sys-kernel/linux-headers-3.10


Temporarily mask GCC 6.4

Temporarily mask GCC 6.4

# Use kmod instead of module-init-tools since this is the Gentoo/upstream default
sys-apps/module-init-tools

# Block newer versions of zabbix since our server is still on 1.8
>=net-analyzer/zabbix-2

# Mask nullmailer to force msmtp for virtual/mta (next in list of deps after nullmailer)
# while allowing others (like postfix for the new postfix-nullmailer setup) to be installed instead
mail-mta/nullmailer

# Mask the new postfix stable release 3.0.0 since we are not ready with our configuration yet.
>=mail-mta/postfix-3.0.0

# We're using the longterm 4.4.X kernel
>=sys-kernel/gentoo-sources-4.5
>=sys-kernel/hardened-sources-4.5
<sys-kernel/linux-headers-4.4

# Mask Puppet 4 for now
>=app-admin/puppet-4

# Facter 2.5.x seems to have a bug and is therefore not useable (facter tries
# to connect to the cloud-init/EC2 IP address 169.254.169.254 in order to
# retrieve facts and hangs itself up in an infinite re-try loop).
>=dev-ruby/facter-2.5

# Temporarily mask GCC 6.4
>=sys-devel/gcc-6.4


meta-iotqa: Enable wifi and BT test for Minnowboard

Signed-off-by: Simo Kuusela <4755938158c3c622d3884e9a75ed20dc865bc695@intel.com>

# This file contains tests that can't be run on Minnowboard Turbot
# /docker/tester-exec.sh will use this file to remove tests from a manifest
oeqa.runtime.sanity.comm_btcheck
oeqa.runtime.sanity.comm_wifi_connect


mask sys-power/upower

mask sys-power/upower

## now sys-power/upower-pm-utils instead sys-power/upower
sys-power/upower

## дикая идея gentoo-девелоперов поддерживающих этот пакет, жестко привязать его к systemd мне не по душе
=sys-power/upower-0.9.23-r3


fix (test) load module: take in consid new npm path resolver

div.test-above-node;

import foo from 'data_foo.js';
import baz from 'data_baz.json';
import * as title from './h4';
import from 'style.css';

with (foo) {
	title;
	.foo > '~[name]'
}

.baz > '~[baz.name]';

div.test-above-node;

import foo from 'data_foo.js';
import baz from 'data_baz.json';
import * as title from 'h4';
import from 'style.css';

with (foo) {
	title;
	.foo > '~[name]'
}

.baz > '~[baz.name]';


profile: unmask gcc 6

profile: unmask gcc 6

# Use kmod instead of module-init-tools since this is the Gentoo/upstream default
sys-apps/module-init-tools

# Block newer versions of zabbix since our server is still on 1.8
>=net-analyzer/zabbix-2

# Mask nullmailer to force msmtp for virtual/mta (next in list of deps after nullmailer)
# while allowing others (like postfix for the new postfix-nullmailer setup) to be installed instead
mail-mta/nullmailer

# Mask the new postfix stable release 3.0.0 since we are not ready with our configuration yet.
>=mail-mta/postfix-3.0.0

# We're using the longterm 4.4.X kernel
>=sys-kernel/gentoo-sources-4.5
>=sys-kernel/hardened-sources-4.5
<sys-kernel/linux-headers-4.4

# Mask Puppet 4 for now
>=app-admin/puppet-4

# Facter 2.5.x seems to have a bug and is therefore not useable (facter tries
# to connect to the cloud-init/EC2 IP address 169.254.169.254 in order to
# retrieve facts and hangs itself up in an infinite re-try loop).
>=dev-ruby/facter-2.5

# Temporarily mask GCC 7
>=sys-devel/gcc-7

# We need to use gluster 3.8
>sys-cluster/glusterfs-3.9

# Use kmod instead of module-init-tools since this is the Gentoo/upstream default
sys-apps/module-init-tools

# Block newer versions of zabbix since our server is still on 1.8
>=net-analyzer/zabbix-2

# Mask nullmailer to force msmtp for virtual/mta (next in list of deps after nullmailer)
# while allowing others (like postfix for the new postfix-nullmailer setup) to be installed instead
mail-mta/nullmailer

# Mask the new postfix stable release 3.0.0 since we are not ready with our configuration yet.
>=mail-mta/postfix-3.0.0

# We're using the longterm 4.4.X kernel
>=sys-kernel/gentoo-sources-4.5
>=sys-kernel/hardened-sources-4.5
<sys-kernel/linux-headers-4.4

# Mask Puppet 4 for now
>=app-admin/puppet-4

# Facter 2.5.x seems to have a bug and is therefore not useable (facter tries
# to connect to the cloud-init/EC2 IP address 169.254.169.254 in order to
# retrieve facts and hangs itself up in an infinite re-try loop).
>=dev-ruby/facter-2.5

# Temporarily mask GCC 6.4
>=sys-devel/gcc-6.4

# We need to use gluster 3.8
>sys-cluster/glusterfs-3.9


Mask GCC >= 10

Mask GCC >= 10

# Use kmod instead of module-init-tools since this is the Gentoo/upstream default
sys-apps/module-init-tools

# Block newer versions of zabbix since our server is still on 1.8
>=net-analyzer/zabbix-2

# Mask nullmailer to force msmtp for virtual/mta (next in list of deps after nullmailer)
# while allowing others (like postfix for the new postfix-nullmailer setup) to be installed instead
mail-mta/nullmailer

# Mask postfix >= 3.6, since we're not sure whether our configuration works with 3.6 yet
>=mail-mta/postfix-3.6

# We're using the longterm 4.4.X kernel
>=sys-kernel/gentoo-sources-4.5
>=sys-kernel/hardened-sources-4.5
<sys-kernel/linux-headers-4.4

# Facter 2.5.x seems to have a bug and is therefore not useable (facter tries
# to connect to the cloud-init/EC2 IP address 169.254.169.254 in order to
# retrieve facts and hangs itself up in an infinite re-try loop).
~dev-ruby/facter-2.5

# Temporarily mask GCC >= 10
>=sys-devel/gcc-10

# We need to use gluster 3.8
>=sys-cluster/glusterfs-3.9

# Mask Puppet version 6 until Puppet master has been upgraded
>=app-admin/puppet-6

# Use kmod instead of module-init-tools since this is the Gentoo/upstream default
sys-apps/module-init-tools

# Block newer versions of zabbix since our server is still on 1.8
>=net-analyzer/zabbix-2

# Mask nullmailer to force msmtp for virtual/mta (next in list of deps after nullmailer)
# while allowing others (like postfix for the new postfix-nullmailer setup) to be installed instead
mail-mta/nullmailer

# Mask postfix >= 3.6, since we're not sure whether our configuration works with 3.6 yet
>=mail-mta/postfix-3.6

# We're using the longterm 4.4.X kernel
>=sys-kernel/gentoo-sources-4.5
>=sys-kernel/hardened-sources-4.5
<sys-kernel/linux-headers-4.4

# Facter 2.5.x seems to have a bug and is therefore not useable (facter tries
# to connect to the cloud-init/EC2 IP address 169.254.169.254 in order to
# retrieve facts and hangs itself up in an infinite re-try loop).
~dev-ruby/facter-2.5

# Temporarily mask GCC >= 9
>=sys-devel/gcc-9

# We need to use gluster 3.8
>=sys-cluster/glusterfs-3.9

# Mask Puppet version 6 until Puppet master has been upgraded
>=app-admin/puppet-6


Mask GCC >= 10

Mask GCC >= 10


add (sample) decorators

add (sample) decorators

//### COMMENTS
/**
 * Block comment
 */
// Income comment

//### LITERALS

// - Single
'Foo'
// - Block
"""
   with quotes ""
   qux
"""

// ### TAGS
// - Single
div;

// - class, id
span.foo-class #id;

// - only class, id
#id .qux;

// - attribute
input autofocus value='Foo' data-test=quoteLess
	// inline comment
	other = attribute;

// - single child
div > span;
// - more children
h4 {
	i > 'Foo'
	footer { hr; }
}

// ### Interpolations
// - in literal
'Foo: ~name ~[name] ~[bind: name] ~[name + " hello "] ~[ _.L("lokalize-util") ]'
// - in attribute
div name = '~name ~[name] ~[bind: name] ~[name + " hello "] ~[ _.L("lokalize-util") ]';

// ### STATEMENTS

if (name) {
	// nodes
}
for (letter of letters) {
	'~[letter]'
}
for ((letter, index) of letters) {
	'~letter at ~index'
}
with (name) > '~.'
each (letters) > '~letter'
debugger;
log (user.name);
switch (state) {
	case ('active') {
		// nodes
	}
}

// ### MODULES
import from 'foo.mask';
import * as Data from '/api/data' is json;
import async Foo, Quux from 'baz';

// ### DEFINE
define Foo as (div.span) extends Dialog, Collapser {
	var name = 'MyName';
	var num  = 2;
	var arr = [1, 2, 3];
	var scope = {
		name: 'one',
		arr: [1, 2, false, /asd/]
	};

	function onRenderStart(model, ctx, container) {
		console.log('model:', model);
	}
	slot show() {
		this.model.hidden = false;
	}
	event submit(evt) {
		evt.preventDefault();
	}
}

// ### PLACEHOLDERS
define A extends B {
	@body > 'IsBody'
	@placeholder;
	footer >  @footer;
}
A {
	@footer > 'Test'
}

<div> Suppots html tags within </div>

[IsAuthorized]
[WithCaption('Foo')]
div;


Python 3.4 is now default Python 3 implementation

# Use kmod instead of module-init-tools since this is the Gentoo/upstream default
sys-apps/module-init-tools

# Block newer versions of zabbix since our server is still on 1.8
>=net-analyzer/zabbix-2

# Mask nullmailer to force msmtp for virtual/mta (next in list of deps after nullmailer)
# while allowing others (like postfix for the new postfix-nullmailer setup) to be installed instead
mail-mta/nullmailer

# Mask the new postfix stable release 3.0.0 since we are not ready with our configuration yet.
>=mail-mta/postfix-3.0.0

# We're using the longterm 3.10.X kernel
>=sys-kernel/linux-headers-3.11
>=sys-kernel/gentoo-sources-3.11
>=sys-kernel/hardened-sources-3.11

# avoid pulling in python-3.4 as long as profiles/base/make.defaults
# still references python3_3 as the default python3 implementation
dev-lang/python:3.4


path fixed

path fixed

layout:view master='tagApiItem' {
    title > 'dualbind;'
    description {
        'Two way model-view bindings for MaskJS. Any JSON value to Any DOM Element or MaskJS Component. Check out also '
        a href='#/tag/validate ' > 'validation'
        ' to see, how you can validate user input before bindings applies.'

        p {
            'Things are simple - we have a '
            a href='#/tag/dualbind/BindingProvider' > 'BindingProvider'
            ', that listens to DOM changes using events and listens to JSON changes by overriding properties with '
            code > 'Object.defineProperty'

            '. You can also create your own custom providers and register them with '
            code > 'mask.registerBinding(name, handler)'
            '.'
        }
    }

    include > '{libjs}/compos/binding/lib/binding.js'
    source {
        a href='http://github.com/tenbits/Compos/binding/lib/binding.js' target='_blank' > 'GitHub'
    }
    attributes {
        tr {
            td > 'value="propName"'
            td > 'Property of a JSON Data Model. IF property is an Array, then all mutable methods are also overridden for listening (like .pop .push)'
        }
        tr {
            td > 'changeEvent="event"'
            td > '(optional @default="change") Change JSON Data Model on that event - "$" is used to addEventListener to "element" with .on function.
                After the event is triggered, JSON Data Model updates.'
        }
        tr {
            td > 'property="propName"'
            td > '(optional @default="element.value") Property of a provider.'
        }
        tr {
            td > 'setter="setterFn"'
            td > '(optional @default=NULL) In case when we bind values to custom controls and we want to set values over setter function,
                define it here, instead of creating custom bindings.'
        }
        tr {
            td > 'getter="getterFn"'
            td > '(optional @default=NULL) @see "setter" attribute'
        }
    }
    depends {
        li > 'MaskJS'
        li > 'ClassJS'
        li > 'RuqqJS:utils.js - Object Helper'
    }
    example {
        prism language='markup' src='/api.help/tags/dualbind.html';
    }
}

layout:view master='tagApiItem' {
    title > 'dualbind;'
    description {
        'Two way model-view bindings for MaskJS. Any JSON value to Any DOM Element or MaskJS Component. Check out also '
        a href='#/tag/validate ' > 'validation'
        ' to see, how you can validate user input before bindings applies.'

        p {
            'Things are simple - we have a '
            a href='#/tag/dualbind/BindingProvider' > 'BindingProvider'
            ', that listens to DOM changes using events and listens to JSON changes by overriding properties with '
            code > 'Object.defineProperty'

            '. You can also create your own custom providers and register them with '
            code > 'mask.registerBinding(name, handler)'
            '.'
        }
    }

    include > '{libjs}/compos/binding/lib/binding.js'
    source {
        a href='http://github.com/tenbits/Compos/binding/lib/binding.js' target='_blank' > 'GitHub'
    }
    attributes {
        tr {
            td > 'value="propName"'
            td > 'Property of a JSON Data Model. IF property is an Array, then all mutable methods are also overridden for listening (like .pop .push)'
        }
        tr {
            td > 'changeEvent="event"'
            td > '(optional @default="change") Change JSON Data Model on that event - "$" is used to addEventListener to "element" with .on function.
                After the event is triggered, JSON Data Model updates.'
        }
        tr {
            td > 'property="propName"'
            td > '(optional @default="element.value") Property of a provider.'
        }
        tr {
            td > 'setter="setterFn"'
            td > '(optional @default=NULL) In case when we bind values to custom controls and we want to set values over setter function,
                define it here, instead of creating custom bindings.'
        }
        tr {
            td > 'getter="getterFn"'
            td > '(optional @default=NULL) @see "setter" attribute'
        }
    }
    depends {
        li > 'MaskJS'
        li > 'ClassJS'
        li > 'RuqqJS:utils.js - Object Helper'
    }
    example {
        prism language='markup' src='api.help/tags/dualbind.html';
    }
}


profile: mask GCC >= 8.3

profile: mask GCC >= 8.3

# Use kmod instead of module-init-tools since this is the Gentoo/upstream default
sys-apps/module-init-tools

# Block newer versions of zabbix since our server is still on 1.8
>=net-analyzer/zabbix-2

# Mask nullmailer to force msmtp for virtual/mta (next in list of deps after nullmailer)
# while allowing others (like postfix for the new postfix-nullmailer setup) to be installed instead
mail-mta/nullmailer

# Mask the new postfix stable release 3.0.0 since we are not ready with our configuration yet.
>=mail-mta/postfix-3.0.0

# We're using the longterm 4.4.X kernel
>=sys-kernel/gentoo-sources-4.5
>=sys-kernel/hardened-sources-4.5
<sys-kernel/linux-headers-4.4

# Facter 2.5.x seems to have a bug and is therefore not useable (facter tries
# to connect to the cloud-init/EC2 IP address 169.254.169.254 in order to
# retrieve facts and hangs itself up in an infinite re-try loop).
~dev-ruby/facter-2.5

# Temporarily mask GCC >= 8.3
>=sys-devel/gcc-8.3

# We need to use gluster 3.8
>=sys-cluster/glusterfs-3.9

# Mask Puppet version 6 until Puppet master has been upgraded
>=app-admin/puppet-6

# Use kmod instead of module-init-tools since this is the Gentoo/upstream default
sys-apps/module-init-tools

# Block newer versions of zabbix since our server is still on 1.8
>=net-analyzer/zabbix-2

# Mask nullmailer to force msmtp for virtual/mta (next in list of deps after nullmailer)
# while allowing others (like postfix for the new postfix-nullmailer setup) to be installed instead
mail-mta/nullmailer

# Mask the new postfix stable release 3.0.0 since we are not ready with our configuration yet.
>=mail-mta/postfix-3.0.0

# We're using the longterm 4.4.X kernel
>=sys-kernel/gentoo-sources-4.5
>=sys-kernel/hardened-sources-4.5
<sys-kernel/linux-headers-4.4

# Facter 2.5.x seems to have a bug and is therefore not useable (facter tries
# to connect to the cloud-init/EC2 IP address 169.254.169.254 in order to
# retrieve facts and hangs itself up in an infinite re-try loop).
~dev-ruby/facter-2.5

# Temporarily mask GCC 8
>=sys-devel/gcc-8

# We need to use gluster 3.8
>=sys-cluster/glusterfs-3.9

# Mask Puppet version 6 until Puppet master has been upgraded
>=app-admin/puppet-6


Update public/libs/bower_components/ace-builds/demo/kitchen-sink/docs/mask.mask

Signed-off-by: Bernard Ojengwa <fccb4cc00c1ba7e51bf5c2b5f77130b9fe8d917e@gmail.com>

/* Mask Syntax Demo */

div > ' Test ~[name]';

define :userProfile {
	header {
		h4 > @title;
		button.close;
	}
}

:userProfile {
	@title > ' Hello ~[: username.toUpperCase()]'
}

style {
    html, body {
        background: url('name.png') 0 0 no-repeat;
    }
}

button {
	event click (e) {
	    this.textContent = `name ${e.clientX} !`;
	}
}

md > """

- div
- span

Hello

[one](http://google.com)

""";

header .foo > 'Heading'

button .baz x-signal='click: test' disabled > "
	Hello,
	world
	\"Buddy\"
"

var a = {
    name: `name ${window.innerWidth}`
};

span .foo > "~[bind: a.name]"


[+] include code doc

[+] include code doc

layout:view master='view' {

	title {
		a.github-ribbon href='https://github.com/tenbits/IncludeJS';
	}

	tabs {
		radioButtons{
			button.active name='info' > 'Info'
			button name='commands' > 'Commands'
			button name='resources' > 'Resources'
			button name='sample' > 'Sample'
		}
	}

	content {
		p.container.tabPanel {
			div.info.active {
				div {
				    prism > ' > npm install -g includejs'
					ul {
						li {
							'Builder - Combine Resources included with IncludeJS'
							div.hint > 'Javascript, Style, HTML, Image'
							div.hint > 'Images that are in styles, that are not in working directory (are referenced), will be copied into working directory'
							div > ul {
								li > 'include.js'
								li > 'include.css'
								li > 'include.load'
								li > 'include.lazy'
							}
						}
						li { 'Minify'
							div.hint {
							  a href='https://npmjs.org/package/uglify-js' target='_blank' > 'UglifyJS'
							  ' and '
							  a href='https://npmjs.org/package/clean-css' target='_blank' > 'clean-css'
							  ' are used'
							}
							div.hint > 'For UglifyJS you can specify compressor settings (So you can set defines to cut off DEBUG/TEST code from Release)
								See UglifyJS documentation.'
						}
						li { 'JSHINT' div.hint { 'See ' a href='http://jshint.com/docs/' target='_blank' > 'JSHINT'} }
						li {
							'Integrated Web Server'

							div.hint > b > 'with auto-refresh feature'
							div.hint > 'HOT Reload of *.css, *.js and *.mask files, for other stuff page reload triggers'
						}
						li {
							'Shell Commands'
							div.hint > 'As Builder is action-based, shell commands could be used as pre-build or post-build.'
						}

						li {
							'Custom Scripts as Actions'
							div.hint {
								prism > 'include.exports = { process: function(config, idfr) { /* ... */ idfr.resolve(); } }'
							}
							div.hint > 'Could be used as shell scripts. Note that you can use includejs api classes'
							div.hint > 'IncludeJS allows your scripts to require global modules!'
							div.hint {
							 	'You can use also CoffeeScript for your scripts'
							 	div > code > ' > includejs custom myscript.coffee'
							}
						}

						li {
							'CoffeeScript and Less support'
							div.hint > '*.less will be compiled and joined with regular css files, as also CoffeeScript will be joined into one main js file'
						}

						li {
							'Remove include statements in release, as the resource are already there. (But it will stay untouched if you access the resource with response object)'
							code > "
								include.js('jquery.js').done(function() { $('body').htm('Hello'); })
							"
							' is parsed to '
							code > "
									(function(){  $('body').html('Hello');  }());
							"
						}

						li {
							'Handle Resource Referencing and Importing'
						}
					}
				}
			}

			div.commands {
				ul {
					li {
						code > ' > includejs [action] [arg] [...] -KEY VALUE [...]'
						div {
							div > 'All this arguments will be parsed to a config object'
							div.hint > '@see supported actions'
						}
					}
					li {
						code > ' > includejs [*.html] -minify -KEY VALUE'

						div > '
						If first argument is html file, then this path will be set in config for "file" property, and "build" for action.
						 You can also sepcify some additional config values for this build - @see "build" action.
						'
					}
					li {
						code > ' > includejs [*.config | *.js]'
						p {
							'Load config and process'
							div > '*.config — JSON'
							div {
							 	'*.js — This javascript must set "config" to globals: ' tt > 'global.config = {OBJECT}'
							}
						}
					}
				}
				h3 > 'Config'
				div.hint {
					'Config contains one or more actions. (One action is an Object, more actions is Array of Objects) '
				}
				div {
					'Available actions and their settings:'
				}
				ul{

					li {
						ul {
							li > '{'
							li { '"action": "' b > 'build' '"' }
							li > '"file" — {String} - HTML input file'
							li > '"vars" — {Object} — Variables used when parsing includes'

							li > '"minify" — {Boolean} — run MinifyJS and clean-css'
							li > '"uglify" - {Object:optional} - UglifyJS compressor settings. @default {global_defs: {DEBUG: false}}'
							li  {
								'"jshint" : {'
								ul {
									li > '"options" - {Object} - JSHINT options'
									li > '"globals" - {Object} - global variables. @default {"window": false, "document": false}'
									li > '"ignore" - {Object} - file names to ignore'
									li > '}'
								}
							}
							li > '"outputMain" — output name of a built html — @default "{name}.build.html"'
							li > '"outputSources" — directory of combined/copied resources — @default "{name}.build/"'
							li > '}'
						}

						p {
							'Build includejs project.'
							div.hint > 'It will parse specified file and its resources, and will recursive collect all includes'
						}
					}
					li {
						ul{
							li > '{'
							li { '"action": "' b > 'project-import' '"' }
							li > '}'
						}
						p {
						  'Copy resources, that are used by current project, from referenced directories in '
							tt > '.reference/*' ' to ' tt >'.import' ' directory'
						}
					}
					li {
						ul{
							li > '{'
							li { '"action": "' b > 'project-reference' '"' }
							li > '}'
						}
						p {
						  'Create outer referencing in ' tt > '.reference/*' 'acording to routing defined in '
						  tt > '%npm-global-directory%/includejs/globals.txt'
						}
					}
					li {
						ul{
							li > '{'
							li { '"action": "' b > 'shell' '"' }
							li > '"command": /** Array or String :: string commands*/ ['
							li > '"cmd /C copy /B index.html c:/app",'
							li > '"cmd /C copy /B index.build/ c:/app/index.build" ]'
							li > '}'
						}
						p > 'Execuate shell commands'
					}
					li {
						ul {
							li > '{'
							li { '"action": "' b > 'custom' '"' }
							li > '"script": "scriptPath.js"'
							li > '}'
						}
						p > 'Execuate custom scripts'
						div.hint {
							div > 'Script shoud export object with .process(config, idfr) function.'
							div > 'After script is ready call idfr.resolve() for processing next actions'
						}
						div.hint {
							'If you want to call just that action only, you can do it from command line:'
							div > code > ' > includejs custom scriptPath.js'
						}
					}

					li {
						ul{
							li > '{'
							li { '"action": "' b > 'server' '"' }
							li > '"port": NUMBER /* optional @default  5777 */'
							li > '"open": Filename to open in browser /* optional */'
							li > '}'
						}
						p { 'Create server in ' tt > '%current-directory%' }
						div.hint {
							'To not create config file only for this action, you can use raw cli command with action argument:'
							div > code > ' > includejs server'
							'To open browser and additionally to define port:'
							div > code > ' >  includejs server index.dev.html -port 7777'
						}
					}
					li {
						ul{
							li > '{'
							li { '"action": "' b > 'reference' '"' }
							li > '"path": directory path || name of a project from globals.txt'
							li > '"name": reference name /* optional @default directory name*/'
							li > '}'
						}
						p > 'Creates symbolic link to specified path in %current_directory%/.reference/%name%'
						div.hint {
							div > 'Command Line calls: '
							div > code > ' > includejs reference c:/development/mylib'
							div > 'You can add this path to globals.txt, so afterwards you can call this as such:'
							div > code > ' > includejs reference mylib'
						}
					}
					li {
						ul{
							li > '{'
							li { '"action": "' b > 'template' '"' }
							li > '"name": name'
							li > '}'
						}

						p > 'Create Template Project in %current_dir%'
						p {
							'Available:'
							ul {
								li > '"starter" - MaskJS/IncludeJS/ClassJS/CompoJS + appropriate routing as defined in globals.txt'
								li {
									'"compo" - create component template, requires component name.'
									div.hint > code > ' > includejs template compo ComponentName'
								}
								li > '"todomvc" - @sample todomvc application to fiddle around with maskjs,includejs etc.)'
								li > '"sample" - simple component autoreload example'
							}
						}

						div.hint {
							'Raw cli command:'
							div > code > ' > includejs template %name%'
						}
						div.hint {
							'You can create any other templates with just coping needed files to '
							tt > '%npm-global-directory%/node_modules/includejs/template/%YourTemplateName%'
						}
						div.hint {
							'It is also possible to define any setup logic to your templates using handlers, look at '
							a target='_blank' href='https://github.com/tenbits/IncludeJS.Builder/blob/master/template/compo/.handler/handler.js' > 'compo template' '. Here handler takes care about setting component name.'
						}
					}
					li {
						ul{
							li > '{'
							li { '"action": "' b > 'git-clone' '"' }
							li > '}'
						}
						p > 'Clones LibJS Libraries into current directory'
						div {
							'It will also save this path intern, for future routing - so calling this action,
								includejs should have
								write permissions to ' tt > '%npm-global-directory%/includejs' ' directory'
						}
						div.hint {
							'Command Line: '
							code > ' > includejs git-clone'
						}
					}
					li {
						ul{
							li > '{'
							li { '"action": "' b > 'globals' '"' }
							li > '}'
						}
						code > ' > includejs globals'

						p > 'Open globals.txt of includejs for editing of your routes, etc. Example of globals.txt:'

						prism src='/api.help/globals.js';

					}
				}
			}
			div.resources {
				h6 > 'Small note about external resources'
				p > 'Every application has some outer dependencies. Lets say you created empty project and want to use some classes, styles and images
				from you own library "MyCoolStuff". There are several ways you can do it.'
				ul {
					li {
						i > 'Bad — ''Copy them into working project. '
						div;
						u > 'Contra'' — '
						ul {
							li > 'you dont know always from start on what classes or styles you need'
							li > 'you have to work a lot with copy/paste - and this was always a mess.'
							li > 'they become part of the project. This is good for Release, but not for Development'
							li > 'harms code organization energy'
						}
					}

					li {
						i > 'Best — ''Use symbolic links'
						div {
							'You may think, this is bad, but i will explain why i like them.'
							ul {
								li {
									'keep all symlinks in "%project_dir%/.reference/" directory, to have little file system "entropy"'
								}
								li {
									'all outer libraries are referenced - and this is much better for development.
									You can live edit them adding new features. And the changes will stay there for your future projects.'
								}
								li {
									'often, you need only some parts of a library, so you include only them.'
								}
								li {
									'you can import included resources into working directory any time.'
								}
							}
						}
						div > 'Example:'
						ul {
							li {
								'Install IncludeJS.Builder and LibJS libraries: ' a href='#/about/install' > '@how-to'
							}
							li {
								'Create template project'
								div > code > '> mkdir testProject && cd testProject && includejs template starter'
								div {
									'And now, under "testProject/.reference/libjs" you find a symbolic link to libjs project
									and all requests to libjs libraries, such as '
									tt > 'include.js({ lib: "mask" })' 'will path through that symbolic link'
								}
							}
						}

						p {
							'After your application is ready for release, you can build it - all resources will be combined, and no more referencing will occure'

							div.hint {
							  'Any time you can import all referenced resources to projects directory. '
							  i > 'You may need this, for example, for sending your dev-project to smbd. else.'

							  p > code > ' > includejs project-import'
							}

							p.hint > 'This will import only resources you use in your project (scripts, images, views, etc.), and not the whole directories.'
						}
					}
				}

			}

			div.sample {
				h4 > 'To try includejs/includejsBuilder'
				div > code > 'npm install -g includejs'
				div > code > 'cd some/folder/'
				div > code > 'includejs template sample'
				div > code > 'includejs server index.dev.html'

				p > 'It will run browser and loads index.dev.html'
			}
		}
	}

}

layout:view master='view' {

	title {
		a.github-ribbon href='https://github.com/tenbits/IncludeJS';
	}

	tabs {
		radioButtons{
			button.active name='info' > 'Info'
			button name='commands' > 'Commands'
			button name='resources' > 'Resources'
			button name='sample' > 'Sample'
		}
	}

	content {
		p.container.tabPanel {
			div.info.active {
				div {
				    prism > ' > npm install -g includejs'
					ul {
						li {
							'Builder - Combine Resources included with IncludeJS'
							div.hint > 'Javascript, Style, HTML, Image'
							div.hint > 'Images that are in styles, that are not in working directory (are referenced), will be copied into working directory'
							div > ul {
								li > 'include.js'
								li > 'include.css'
								li > 'include.load'
								li > 'include.lazy'
							}
						}
						li { 'Minify'
							div.hint {
							  a href='https://npmjs.org/package/uglify-js' target='_blank' > 'UglifyJS'
							  ' and '
							  a href='https://npmjs.org/package/clean-css' target='_blank' > 'clean-css'
							  ' are used'
							}
							div.hint > 'For UglifyJS you can specify compressor settings (So you can set defines to cut off DEBUG/TEST code from Release)
								See UglifyJS documentation.'
						}
						li { 'JSHINT' div.hint { 'See ' a href='http://jshint.com/docs/' target='_blank' > 'JSHINT'} }
						li {
							'Integrated Web Server'

							div.hint > b > 'with auto-refresh feature'
							div.hint > 'HOT Reload of *.css, *.js and *.mask files, for other stuff page reload triggers'
						}
						li {
							'Shell Commands'
							div.hint > 'As Builder is action-based, shell commands could be used as pre-build or post-build.'
						}

						li {
							'Custom Scripts as Actions'
							div.hint {
								prism > 'include.exports = { process: function(config, idfr) { /* ... */ idfr.resolve(); } }'
							}
							div.hint > 'Could be used as shell scripts. Note that you can use includejs api classes'
						}

						li {
							'CoffeeScript and Less support'
							div.hint > '*.less will be compiled and joined with regular css files, as also CoffeeScript will be joined into one main js file'
						}

						li {
							'Remove include statements in release, as the resource are already there. (But it will stay untouched if you access the resource with response object)'
							code > "
								include.js('jquery.js').done(function() { $('body').htm('Hello'); })
							"
							' is parsed to '
							code > "
									(function(){  $('body').html('Hello');  }());
							"
						}

						li {
							'Handle Resource Referencing and Importing'
						}
					}
				}
			}

			div.commands {
				ul {
					li {
						code > ' > includejs [action] [arg] [...] -KEY VALUE [...]'
						div {
							div > 'All this arguments will be parsed to a config object'
							div.hint > '@see supported actions'
						}
					}
					li {
						code > ' > includejs [*.html] -minify -KEY VALUE'

						div > '
						If first argument is html file, then this path will be set in config for "file" property, and "build" for action.
						 You can also sepcify some additional config values for this build - @see "build" action.
						'
					}
					li {
						code > ' > includejs [*.config | *.js]'
						p {
							'Load config and process'
							div > '*.config — JSON'
							div {
							 	'*.js — This javascript must set "config" to globals: ' tt > 'global.config = {OBJECT}'
							}
						}
					}
				}
				h3 > 'Config'
				div.hint {
					'Config contains one or more actions. (One action is an Object, more actions is Array of Objects) '
				}
				div {
					'Available actions and their settings:'
				}
				ul{

					li {
						ul {
							li > '{'
							li { '"action": "' b > 'build' '"' }
							li > '"file" — {String} - HTML input file'
							li > '"vars" — {Object} — Variables used when parsing includes'

							li > '"minify" — {Boolean} — run MinifyJS and clean-css'
							li > '"uglify" - {Object:optional} - UglifyJS compressor settings. @default {global_defs: {DEBUG: false}}'
							li  {
								'"jshint" : {'
								ul {
									li > '"options" - {Object} - JSHINT options'
									li > '"globals" - {Object} - global variables. @default {"window": false, "document": false}'
									li > '"ignore" - {Object} - file names to ignore'
									li > '}'
								}
							}
							li > '"outputMain" — output name of a built html — @default "{name}.build.html"'
							li > '"outputSources" — directory of combined/copied resources — @default "{name}.build/"'
							li > '}'
						}

						p {
							'Build includejs project.'
							div.hint > 'It will parse specified file and its resources, and will recursive collect all includes'
						}
					}
					li {
						ul{
							li > '{'
							li { '"action": "' b > 'project-import' '"' }
							li > '}'
						}
						p {
						  'Copy resources, that are used by current project, from referenced directories in '
							tt > '.reference/*' ' to ' tt >'.import' ' directory'
						}
					}
					li {
						ul{
							li > '{'
							li { '"action": "' b > 'project-reference' '"' }
							li > '}'
						}
						p {
						  'Create outer referencing in ' tt > '.reference/*' 'acording to routing defined in '
						  tt > '%npm-global-directory%/includejs/globals.txt'
						}
					}
					li {
						ul{
							li > '{'
							li { '"action": "' b > 'shell' '"' }
							li > '"command": /** Array or String :: string commands*/ ['
							li > '"cmd /C copy /B index.html c:/app",'
							li > '"cmd /C copy /B index.build/ c:/app/index.build" ]'
							li > '}'
						}
						p > 'Execuate shell commands'
					}
					li {
						ul {
							li > '{'
							li { '"action": "' b > 'custom' '"' }
							li > '"script": "scriptPath.js"'
							li > '}'
						}
						p > 'Execuate custom scripts'
						div.hint {
							div > 'Script shoud export object with .process(config, idfr) function.'
							div > 'After script is ready call idfr.resolve() for processing next actions'
						}
						div.hint {
							'If you want to call just that action only, you can do it from command line:'
							div > code > ' > includejs custom scriptPath.js'
						}
					}

					li {
						ul{
							li > '{'
							li { '"action": "' b > 'server' '"' }
							li > '"port": NUMBER /* optional @default  5777 */'
							li > '"open": Filename to open in browser /* optional */'
							li > '}'
						}
						p { 'Create server in ' tt > '%current-directory%' }
						div.hint {
							'To not create config file only for this action, you can use raw cli command with action argument:'
							div > code > ' > includejs server'
							'To open browser and additionally to define port:'
							div > code > ' >  includejs server index.dev.html -port 7777'
						}
					}
					li {
						ul{
							li > '{'
							li { '"action": "' b > 'reference' '"' }
							li > '"path": directory path || name of a project from globals.txt'
							li > '"name": reference name /* optional @default directory name*/'
							li > '}'
						}
						p > 'Creates symbolic link to specified path in %current_directory%/.reference/%name%'
						div.hint {
							div > 'Command Line calls: '
							div > code > ' > includejs reference c:/development/mylib'
							div > 'You can add this path to globals.txt, so afterwards you can call this as such:'
							div > code > ' > includejs reference mylib'
						}
					}
					li {
						ul{
							li > '{'
							li { '"action": "' b > 'template' '"' }
							li > '"name": name'
							li > '}'
						}

						p > 'Create Template Project in %current_dir%'
						p {
							'Available:'
							ul {
								li > '"starter" - MaskJS/IncludeJS/ClassJS/CompoJS + appropriate routing as defined in globals.txt'
								li {
									'"compo" - create component template, requires component name.'
									div.hint > code > ' > includejs template compo ComponentName'
								}
								li > '"todomvc" - @sample todomvc application to fiddle around with maskjs,includejs etc.)'
								li > '"sample" - simple component autoreload example'
							}
						}

						div.hint {
							'Raw cli command:'
							div > code > ' > includejs template %name%'
						}
						div.hint {
							'You can create any other templates with just coping needed files to '
							tt > '%npm-global-directory%/node_modules/includejs/template/%YourTemplateName%'
						}
						div.hint {
							'It is also possible to define any setup logic to your templates using handlers, look at '
							a target='_blank' href='https://github.com/tenbits/IncludeJS.Builder/blob/master/template/compo/.handler/handler.js' > 'compo template' '. Here handler takes care about setting component name.'
						}
					}
					li {
						ul{
							li > '{'
							li { '"action": "' b > 'git-clone' '"' }
							li > '}'
						}
						p > 'Clones LibJS Libraries into current directory'
						div {
							'It will also save this path intern, for future routing - so calling this action,
								includejs should have
								write permissions to ' tt > '%npm-global-directory%/includejs' ' directory'
						}
						div.hint {
							'Command Line: '
							code > ' > includejs git-clone'
						}
					}
					li {
						ul{
							li > '{'
							li { '"action": "' b > 'globals' '"' }
							li > '}'
						}
						code > ' > includejs globals'

						p > 'Open globals.txt of includejs for editing of your routes, etc. Example of globals.txt:'

						prism src='/api.help/globals.js';

					}
				}
			}
			div.resources {
				h6 > 'Small note about external resources'
				p > 'Every application has some outer dependencies. Lets say you created empty project and want to use some classes, styles and images
				from you own library "MyCoolStuff". There are several ways you can do it.'
				ul {
					li {
						i > 'Bad — ''Copy them into working project. '
						div;
						u > 'Contra'' — '
						ul {
							li > 'you dont know always from start on what classes or styles you need'
							li > 'you have to work a lot with copy/paste - and this was always a mess.'
							li > 'they become part of the project. This is good for Release, but not for Development'
							li > 'harms code organization energy'
						}
					}

					li {
						i > 'Best — ''Use symbolic links'
						div > 'Example:'
						ul {
							li {
								'Install IncludeJS.Builder and LibJS libraries: ' a href='#/about/install' > '@how-to'
							}
							li {
								'Create template project'
								div > code > '> mkdir testProject && cd testProject && includejs template starter'
								div {
									'And now, under "testProject/.reference/libjs" you find a symbolic link to libjs project
									and all requests to libjs libraries, such as '
									tt > 'include.js({ lib: "mask" })' 'will path through that symbolic link'
								}
							}
						}

						p {
							'After your application is ready for release, you can build it - all resources will be combined, and no more referencing will occure'

							div.hint {
							  'Any time you can import all referenced resources to projects directory. '
							  i > 'You may need this, for example, for sending your dev-project to smbd. else.'

							  p > code > ' > includejs project-import'
							}

							p.hint > 'This will import only resources you use in your project (scripts, images, views, etc.), and not the whole directories.'
						}
					}
				}

			}

			div.sample {
				h4 > 'To try includejs/includejsBuilder'
				div > code > 'npm install -g includejs'
				div > code > 'cd some/folder/'
				div > code > 'includejs template sample'
				div > code > 'includejs server index.dev.html'

				p > 'It will run browser and loads index.dev.html'
			}
		}
	}

}


meta-iotqa: Disable wifi test for Minnowboard Turbot

Signed-off-by: Simo Kuusela <4755938158c3c622d3884e9a75ed20dc865bc695@intel.com>

# This file contains tests that can't be run on Minnowboard Turbot
# /docker/tester-exec.sh will use this file to remove tests from a manifest
oeqa.runtime.sanity.comm_btcheck
oeqa.runtime.sanity.comm_wifi_connect


Mask postfix >3

Mask postfix >3

# Use kmod instead of module-init-tools since this is the Gentoo/upstream default
sys-apps/module-init-tools

# Block newer versions of zabbix since our server is still on 1.8
>=net-analyzer/zabbix-2

# Mask nullmailer to force msmtp for virtual/mta (next in list of deps after nullmailer)
# while allowing others (like postfix for the new postfix-nullmailer setup) to be installed instead
mail-mta/nullmailer

# Our postfix Puppet recipe isn't ready for postfix 3 yet.
>=mail-mta/postfix-3

# We're using the longterm 4.4.X kernel
>=sys-kernel/gentoo-sources-4.5
>=sys-kernel/hardened-sources-4.5
<sys-kernel/linux-headers-4.4

# Facter 2.5.x seems to have a bug and is therefore not useable (facter tries
# to connect to the cloud-init/EC2 IP address 169.254.169.254 in order to
# retrieve facts and hangs itself up in an infinite re-try loop).
~dev-ruby/facter-2.5

# Temporarily mask GCC >= 9
>=sys-devel/gcc-9

# We need to use gluster 3.8
>=sys-cluster/glusterfs-3.9

# Mask Puppet version 6 until Puppet master has been upgraded
>=app-admin/puppet-6

# Use kmod instead of module-init-tools since this is the Gentoo/upstream default
sys-apps/module-init-tools

# Block newer versions of zabbix since our server is still on 1.8
>=net-analyzer/zabbix-2

# Mask nullmailer to force msmtp for virtual/mta (next in list of deps after nullmailer)
# while allowing others (like postfix for the new postfix-nullmailer setup) to be installed instead
mail-mta/nullmailer

# We're using the longterm 4.4.X kernel
>=sys-kernel/gentoo-sources-4.5
>=sys-kernel/hardened-sources-4.5
<sys-kernel/linux-headers-4.4

# Facter 2.5.x seems to have a bug and is therefore not useable (facter tries
# to connect to the cloud-init/EC2 IP address 169.254.169.254 in order to
# retrieve facts and hangs itself up in an infinite re-try loop).
~dev-ruby/facter-2.5

# Temporarily mask GCC >= 9
>=sys-devel/gcc-9

# We need to use gluster 3.8
>=sys-cluster/glusterfs-3.9

# Mask Puppet version 6 until Puppet master has been upgraded
>=app-admin/puppet-6


Mask postfix v3 since we are not ready for it yet.

# Use kmod instead of module-init-tools since this is the Gentoo/upstream default
sys-apps/module-init-tools

# Block newer versions of zabbix since our server is still on 1.8
>=net-analyzer/zabbix-2

# Mask nullmailer to force msmtp for virtual/mta (next in list of deps after nullmailer)
# while allowing others (like postfix for the new postfix-nullmailer setup) to be installed instead
mail-mta/nullmailer

# Mask the new postfix stable release 3.0.0 since we are not ready with our configuration yet.
>=mail-mta/postfix-3.0.0

# We're using the longterm 3.10.X kernel
>=sys-kernel/linux-headers-3.11
>=sys-kernel/gentoo-sources-3.11
>=sys-kernel/hardened-sources-3.11

# avoid pulling in python-3.4 as long as profiles/base/make.defaults
# still references python3_3 as the default python3 implementation
dev-lang/python:3.4

# Use kmod instead of module-init-tools since this is the Gentoo/upstream default
sys-apps/module-init-tools

# Block newer versions of zabbix since our server is still on 1.8
>=net-analyzer/zabbix-2

# Mask nullmailer to force msmtp for virtual/mta (next in list of deps after nullmailer)
# while allowing others (like postfix for the new postfix-nullmailer setup) to be installed instead
mail-mta/nullmailer

# We're using the longterm 3.10.X kernel
>=sys-kernel/linux-headers-3.11
>=sys-kernel/gentoo-sources-3.11
>=sys-kernel/hardened-sources-3.11

# avoid pulling in python-3.4 as long as profiles/base/make.defaults
# still references python3_3 as the default python3 implementation
dev-lang/python:3.4


Mask sys-kernel/linux-headers below 3.10

# Use kmod instead of module-init-tools since this is the Gentoo/upstream default
sys-apps/module-init-tools

# Block newer versions of zabbix since our server is still on 1.8
>=net-analyzer/zabbix-2

# Mask nullmailer to force msmtp for virtual/mta (next in list of deps after nullmailer)
# while allowing others (like postfix for the new postfix-nullmailer setup) to be installed instead
mail-mta/nullmailer

# Mask the new postfix stable release 3.0.0 since we are not ready with our configuration yet.
>=mail-mta/postfix-3.0.0

# We're using the longterm 3.10.X kernel
>=sys-kernel/linux-headers-3.11
>=sys-kernel/gentoo-sources-3.11
>=sys-kernel/hardened-sources-3.11
<sys-kernel/linux-headers-3.10


profile: mask GCC >= 12

profile: mask GCC >= 12

# Use kmod instead of module-init-tools since this is the Gentoo/upstream default
sys-apps/module-init-tools

# Block newer versions of zabbix since our server is still on 1.8
>=net-analyzer/zabbix-2

# Mask nullmailer to force msmtp for virtual/mta (next in list of deps after nullmailer)
# while allowing others (like postfix for the new postfix-nullmailer setup) to be installed instead
mail-mta/nullmailer

# Mask postfix >= 3.6, since we're not sure whether our configuration works with 3.6 yet
>=mail-mta/postfix-3.6

# We're using the longterm 4.4.X kernel
>=sys-kernel/gentoo-sources-4.5
>=sys-kernel/hardened-sources-4.5
<sys-kernel/linux-headers-4.4

# Facter 2.5.x seems to have a bug and is therefore not useable (facter tries
# to connect to the cloud-init/EC2 IP address 169.254.169.254 in order to
# retrieve facts and hangs itself up in an infinite re-try loop).
~dev-ruby/facter-2.5

# Temporarily mask GCC >= 12
>=sys-devel/gcc-12

# We need to use gluster 3.8
>=sys-cluster/glusterfs-3.9

# Mask Puppet version 6 until Puppet master has been upgraded
>=app-admin/puppet-6

# Use kmod instead of module-init-tools since this is the Gentoo/upstream default
sys-apps/module-init-tools

# Block newer versions of zabbix since our server is still on 1.8
>=net-analyzer/zabbix-2

# Mask nullmailer to force msmtp for virtual/mta (next in list of deps after nullmailer)
# while allowing others (like postfix for the new postfix-nullmailer setup) to be installed instead
mail-mta/nullmailer

# Mask postfix >= 3.6, since we're not sure whether our configuration works with 3.6 yet
>=mail-mta/postfix-3.6

# We're using the longterm 4.4.X kernel
>=sys-kernel/gentoo-sources-4.5
>=sys-kernel/hardened-sources-4.5
<sys-kernel/linux-headers-4.4

# Facter 2.5.x seems to have a bug and is therefore not useable (facter tries
# to connect to the cloud-init/EC2 IP address 169.254.169.254 in order to
# retrieve facts and hangs itself up in an infinite re-try loop).
~dev-ruby/facter-2.5

# Temporarily mask GCC >= 10
>=sys-devel/gcc-10

# We need to use gluster 3.8
>=sys-cluster/glusterfs-3.9

# Mask Puppet version 6 until Puppet master has been upgraded
>=app-admin/puppet-6


Mask GCC >= 9

Mask GCC >= 9

# Use kmod instead of module-init-tools since this is the Gentoo/upstream default
sys-apps/module-init-tools

# Block newer versions of zabbix since our server is still on 1.8
>=net-analyzer/zabbix-2

# Mask nullmailer to force msmtp for virtual/mta (next in list of deps after nullmailer)
# while allowing others (like postfix for the new postfix-nullmailer setup) to be installed instead
mail-mta/nullmailer

# Mask the new postfix stable release 3.0.0 since we are not ready with our configuration yet.
>=mail-mta/postfix-3.0.0

# We're using the longterm 4.4.X kernel
>=sys-kernel/gentoo-sources-4.5
>=sys-kernel/hardened-sources-4.5
<sys-kernel/linux-headers-4.4

# Facter 2.5.x seems to have a bug and is therefore not useable (facter tries
# to connect to the cloud-init/EC2 IP address 169.254.169.254 in order to
# retrieve facts and hangs itself up in an infinite re-try loop).
~dev-ruby/facter-2.5

# Temporarily mask GCC >= 9
>=sys-devel/gcc-9

# We need to use gluster 3.8
>=sys-cluster/glusterfs-3.9

# Mask Puppet version 6 until Puppet master has been upgraded
>=app-admin/puppet-6

# Use kmod instead of module-init-tools since this is the Gentoo/upstream default
sys-apps/module-init-tools

# Block newer versions of zabbix since our server is still on 1.8
>=net-analyzer/zabbix-2

# Mask nullmailer to force msmtp for virtual/mta (next in list of deps after nullmailer)
# while allowing others (like postfix for the new postfix-nullmailer setup) to be installed instead
mail-mta/nullmailer

# Mask the new postfix stable release 3.0.0 since we are not ready with our configuration yet.
>=mail-mta/postfix-3.0.0

# We're using the longterm 4.4.X kernel
>=sys-kernel/gentoo-sources-4.5
>=sys-kernel/hardened-sources-4.5
<sys-kernel/linux-headers-4.4

# Facter 2.5.x seems to have a bug and is therefore not useable (facter tries
# to connect to the cloud-init/EC2 IP address 169.254.169.254 in order to
# retrieve facts and hangs itself up in an infinite re-try loop).
~dev-ruby/facter-2.5

# Temporarily mask GCC >= 8.3
>=sys-devel/gcc-8.3

# We need to use gluster 3.8
>=sys-cluster/glusterfs-3.9

# Mask Puppet version 6 until Puppet master has been upgraded
>=app-admin/puppet-6


Unmask GCC 7

Unmask GCC 7

# Use kmod instead of module-init-tools since this is the Gentoo/upstream default
sys-apps/module-init-tools

# Block newer versions of zabbix since our server is still on 1.8
>=net-analyzer/zabbix-2

# Mask nullmailer to force msmtp for virtual/mta (next in list of deps after nullmailer)
# while allowing others (like postfix for the new postfix-nullmailer setup) to be installed instead
mail-mta/nullmailer

# Mask the new postfix stable release 3.0.0 since we are not ready with our configuration yet.
>=mail-mta/postfix-3.0.0

# We're using the longterm 4.4.X kernel
>=sys-kernel/gentoo-sources-4.5
>=sys-kernel/hardened-sources-4.5
<sys-kernel/linux-headers-4.4

# Facter 2.5.x seems to have a bug and is therefore not useable (facter tries
# to connect to the cloud-init/EC2 IP address 169.254.169.254 in order to
# retrieve facts and hangs itself up in an infinite re-try loop).
~dev-ruby/facter-2.5

# Temporarily mask GCC 8
>=sys-devel/gcc-8

# We need to use gluster 3.8
>=sys-cluster/glusterfs-3.9

# Use kmod instead of module-init-tools since this is the Gentoo/upstream default
sys-apps/module-init-tools

# Block newer versions of zabbix since our server is still on 1.8
>=net-analyzer/zabbix-2

# Mask nullmailer to force msmtp for virtual/mta (next in list of deps after nullmailer)
# while allowing others (like postfix for the new postfix-nullmailer setup) to be installed instead
mail-mta/nullmailer

# Mask the new postfix stable release 3.0.0 since we are not ready with our configuration yet.
>=mail-mta/postfix-3.0.0

# We're using the longterm 4.4.X kernel
>=sys-kernel/gentoo-sources-4.5
>=sys-kernel/hardened-sources-4.5
<sys-kernel/linux-headers-4.4

# Facter 2.5.x seems to have a bug and is therefore not useable (facter tries
# to connect to the cloud-init/EC2 IP address 169.254.169.254 in order to
# retrieve facts and hangs itself up in an infinite re-try loop).
~dev-ruby/facter-2.5

# Temporarily mask GCC 7
>=sys-devel/gcc-7

# We need to use gluster 3.8
>=sys-cluster/glusterfs-3.9