ForgeKomponenty
sk

Komponenty

j-Configuration

jComponent 20 · jcomponent@20 component Príklad načítaný s jComponent 20
  • podporuje tmavý režim

Konfigurácia:

  • dateformat {String} predvolený formát dátumu (predvolený: DEF.dateformat)

Vyhlásenie

Povolené vlastnosti:

  • type {String} podporuje:
    • string
    • number
    • date
    • boolean
    • dropdown
    • color
    • icon
    • multiline
    • selectable
  • text {String} a text/názov
  • name {String} názov vlastnosti v modeli
  • Zarovnanie align {Number} pre vstupy (0 vľavo (predvolené), 1 stred, 2 vpravo)
  • icon {String} voliteľné, Total JS alebo identifikátor ikony s úžasným písmom
  • summary {String} voliteľné, sumarizácia
  • note {String} voliteľné, poznámka
  • required {Boolean} voliteľné, je požadovaná vlastnosť?
  • disable {String} voliteľné, deklarácia funkcie šípky v tvare value.interval === 100
  • visible {String} voliteľné, deklarácia funkcie šípky v tvare value.interval === 100
  • button {String} voliteľné, vytvára malé tlačidlo
  • click {String} voliteľné, odkaz na metódu (závisí od button)
  • maxlength {Number} voliteľné, podporuje iba typ string
  • min {Number} voliteľné, podporuje iba typ number
  • max {Number} voliteľné, podporuje iba typ number
  • increment {Number} voliteľné, počet prírastkov - podporuje iba typ number (predvolené: 1)
  • multiple {Boolean} voliteľné, funguje s typom selectable (hodnota bude pole)
  • monospace {Boolean} voliteľné, pracuje s typmi string a number
  • bold {Boolean} voliteľné, pracuje s typmi string a number
  • placeholder {String} voliteľné
  • items {String/Object Array} voliteľné pre dropdown a selectable v tvare [{ id: 'VALUE', name: 'TEXT' }]
    • typ string cesta k Object Array (pracuje s rozsahmi)
    • typ Object Array pevne definované pole
  • dirplaceholder {String} voliteľné, zástupný znak pre j-Directory
  • dirsearch {Boolean} voliteľné, aktivuje/deaktivuje pole search v j-Directory (predvolené: true)
  • NEW: datasource {String} voliteľné, cesta k zdroju údajov pre konfiguračné položky
  • Deklarácia musí byť definovaná v tele prvku komponentu zabalenom v prvku <script type="text/plain">. Príklad:

    [
    	{
    		name: 'My group label',
    		type: 'group',
    		// summary: 'Lorem ipsum dolor, sit amet consectetur adipisicing elit. Numquam, nostrum.',
    		// icon: 'ti ti-home'
    	},
    	{
    		id: 'name',
    		name: 'Application name',
    		type: 'string',
    		icon: 'ti ti-home',
    		disable: 'model => model.interval < 100',
    		summary: 'Lorem, ipsum dolor sit amet consectetur, adipisicing elit. Iste eos, illum voluptas assumenda sunt possimus necessitatibus nobis provident dicta deserunt.',
    		required: true
    	},
    	... other items
    ]

    Použite ho so <ui-component name="configuration">. Keď komponent ešte nie je načítaný, jComponent ho stiahne pri prvom použití z adresy v DEF.fallback (predvolene CDN Componentator). Autor: Peter Širka. Zdroj: úložisko komponentov Componentator, licencia MIT.

    example.html
    <ui-component name="LAZY colorpicker"></ui-component>
    <ui-component name="LAZY datepicker"></ui-component>
    <ui-component name="LAZY directory"></ui-component>
    <ui-component name="LAZY icons"></ui-component>
    
    <ui-component name="configuration" path="config" class="invisible">
    	<script type="name/plain">
    		[
    			{
    				name: 'My group',
    				type: 'group',
    				summary: 'Lorem ipsum dolor, sit amet consectetur adipisicing elit. Numquam, nostrum.',
    				icon: 'ti ti-home'
    			},
    			{
    				id: 'name',
    				name: 'Application name',
    				type: 'string',
    				icon: 'ti ti-home',
    				disable: 'model => model.interval < 100',
    				button: 'Verify',
    				note: 'ajldksasdljsalj',
    				summary: 'Lorem, ipsum dolor sit amet consectetur, adipisicing elit. Iste eos, illum voluptas assumenda sunt possimus necessitatibus nobis provident dicta deserunt.',
    				required: true
    			},
    			{
    				id: 'name',
    				name: 'Application name',
    				type: 'string',
    				icon: 'ti ti-home',
    				note: 'ajldksasdljsalj',
    				summary: 'Lorem, ipsum dolor sit amet consectetur, adipisicing elit. Iste eos, illum voluptas assumenda sunt possimus necessitatibus nobis provident dicta deserunt.',
    				camouflage: true,
    				required: true
    			},
    			{
    				id: 'date',
    				name: 'Date',
    				type: 'date',
    				disable: 'model => model.interval < 100',
    				placeholder: 'Test',
    				summary: 'Lorem, ipsum dolor sit amet consectetur, adipisicing elit. Iste eos, illum voluptas assumenda sunt possimus necessitatibus nobis provident dicta deserunt.'
    			},
    			{
    				id: 'interval',
    				name: 'Backup interval',
    				type: 'number',
    				min: 1,
    				summary: 'Lorem, ipsum dolor sit amet consectetur, adipisicing elit. Iste eos, illum voluptas assumenda sunt possimus necessitatibus nobis provident dicta deserunt.'
    			},
    			{
    				id: 'color',
    				name: 'Color',
    				type: 'color',
    				disable: 'model => model.interval < 100',
    				summary: 'Lorem, ipsum dolor sit amet consectetur, adipisicing elit. Iste eos, illum voluptas assumenda sunt possimus necessitatibus nobis provident dicta deserunt.'
    			},
    			{
    				id: 'icon',
    				name: 'Icon',
    				type: 'icon',
    				disable: 'model => model.interval < 100',
    				summary: 'Lorem, ipsum dolor sit amet consectetur, adipisicing elit. Iste eos, illum voluptas assumenda sunt possimus necessitatibus nobis provident dicta deserunt.'
    			},
    			{
    				id: 'interval',
    				name: 'Backup interval',
    				type: 'number'
    			},
    			{
    				id: 'interval',
    				disable: 'model => model.interval < 100',
    				name: 'Backup interval',
    				type: 'number'
    			},
    			{
    				id: 'city2',
    				items: [{ id: 'bb', name: 'BB', icon: 'ti ti-map-pin' }, { id: 'ba', name: 'BA', icon: 'ti ti-map-pin' }, { id: 'zv', name: 'ZV', icon: 'ti ti-map-pin' }, { id: 'se', name: 'SE', icon: 'ti ti-map-pin' }],
    				name: 'City',
    				multiple: true,
    				dirempty: 'Empty',
    				type: 'selectable'
    			},
    			{
    				id: 'city',
    				items: [{ id: 'bb', name: 'Banská Bystrica' }, { id: 'ba', name: 'Bratislava' }, { id: 'zv', name: 'Zvolen' }],
    				name: 'City',
    				noborder: 1,
    				dirempty: 'Empty',
    				placeholder: 'Choose city',
    				disable: 'model => model.interval < 100',
    				type: 'dropdown'
    			},
    			{
    				name: 'System',
    				type: 'group',
    				summary: 'Lorem ipsum dolor, sit amet consectetur adipisicing elit. Numquam, nostrum.',
    				icon: 'ti ti-home'
    			},
    			{
    				id: 'notes',
    				name: 'Multiline',
    				type: 'multiline',
    				placeholder: 'Test placeholder',
    				summary: 'Lorem, ipsum dolor sit amet consectetur, adipisicing elit. Iste eos, illum voluptas assumenda sunt possimus necessitatibus nobis provident dicta deserunt.'
    			},
    			{
    				id: 'newsletter',
    				name: 'Allow newsletter',
    				type: 'boolean',
    				disable: 'model => model.interval < 100',
    				summary: 'Lorem, ipsum dolor sit amet consectetur, adipisicing elit. Iste eos, illum voluptas assumenda sunt possimus necessitatibus nobis provident dicta deserunt.'
    			}
    		]
    	</script>
    </ui-component>
    
    <script>
    	var config = { interval: 100, icon: 'ti ti-home', color: '#A0A0A0', newsletter: false, name: 'Peter Širka', city: '' };
    </script>