PHP Classes

File: public/js/tinymce/src/themes/mobile/src/main/js/ui/Inputs.js

Recommend this page to a friend!
  Classes of Abed Nego Ragil Putra   GoLavaCMS   public/js/tinymce/src/themes/mobile/src/main/js/ui/Inputs.js   Download  
File: public/js/tinymce/src/themes/mobile/src/main/js/ui/Inputs.js
Role: Auxiliary data
Content type: text/plain
Description: Auxiliary data
Class: GoLavaCMS
Publish content on Web pages with SEO support
Author: By
Last change:
Date: 6 years ago
Size: 3,380 bytes
 

Contents

Class file image Download
define( 'tinymce.themes.mobile.ui.Inputs', [ 'ephox.alloy.api.behaviour.AddEventsBehaviour', 'ephox.alloy.api.behaviour.Behaviour', 'ephox.alloy.api.behaviour.Composing', 'ephox.alloy.api.behaviour.Representing', 'ephox.alloy.api.behaviour.Toggling', 'ephox.alloy.api.component.Memento', 'ephox.alloy.api.events.AlloyEvents', 'ephox.alloy.api.events.AlloyTriggers', 'ephox.alloy.api.events.NativeEvents', 'ephox.alloy.api.ui.Button', 'ephox.alloy.api.ui.Container', 'ephox.alloy.api.ui.DataField', 'ephox.alloy.api.ui.Input', 'ephox.katamari.api.Option', 'tinymce.themes.mobile.style.Styles', 'tinymce.themes.mobile.util.UiDomFactory' ], function ( AddEventsBehaviour, Behaviour, Composing, Representing, Toggling, Memento, AlloyEvents, AlloyTriggers, NativeEvents, Button, Container, DataField, Input, Option, Styles, UiDomFactory ) { var clearInputBehaviour = 'input-clearing'; var field = function (name, placeholder) { var inputSpec = Memento.record(Input.sketch({ placeholder: placeholder, onSetValue: function (input, data) { // If the value changes, inform the container so that it can update whether the "x" is visible AlloyTriggers.emit(input, NativeEvents.input()); }, inputBehaviours: Behaviour.derive([ Composing.config({ find: Option.some }) ]), selectOnFocus: false })); var buttonSpec = Memento.record( Button.sketch({ dom: UiDomFactory.dom('<button class="${prefix}-input-container-x ${prefix}-icon-cancel-circle ${prefix}-icon"></button>'), action: function (button) { var input = inputSpec.get(button); Representing.setValue(input, ''); } }) ); return { name: name, spec: Container.sketch({ dom: UiDomFactory.dom('<div class="${prefix}-input-container"></div>'), components: [ inputSpec.asSpec(), buttonSpec.asSpec() ], containerBehaviours: Behaviour.derive([ Toggling.config({ toggleClass: Styles.resolve('input-container-empty') }), Composing.config({ find: function (comp) { return Option.some(inputSpec.get(comp)); } }), AddEventsBehaviour.config(clearInputBehaviour, [ // INVESTIGATE: Because this only happens on input, // it won't reset unless it has an initial value AlloyEvents.run(NativeEvents.input(), function (iContainer) { var input = inputSpec.get(iContainer); var val = Representing.getValue(input); var f = val.length > 0 ? Toggling.off : Toggling.on; f(iContainer); }) ]) ]) }) }; }; var hidden = function (name) { return { name: name, spec: DataField.sketch({ dom: { tag: 'span', styles: { display: 'none' } }, getInitialValue: function () { return Option.none(); } }) }; }; return { field: field, hidden: hidden }; } );