UNPKG

angular2

Version:

Angular 2 - a web framework for modern web apps

1 lines 5.69 kB
{"version":3,"sources":["form_builder.js"],"names":[],"mappings":"AAAA;AAAA,KAAO,EAAC,gBAAe;AAAG,YAAU;AAAG,KAAG,CAAC,KAAO,iCAA+B,CAAC;AAClF,KAAO,EAAC,SAAQ,CAAC,KAAO,2BAAyB,CAAC;AAClD,UAAY,YAAU,CAAA,IAAO,UAAQ,CAAC;AAwBtC,KAAO,MAAM,YAAU;AACrB,MAAI,CAAE,cAAa,CAAG,CAAA,KAAI,EAAI,KAAG;AAC/B,AAAI,MAAA,CAAA,QAAO,EAAI,CAAA,IAAG,gBAAgB,AAAC,CAAC,cAAa,CAAC,CAAC;AACnD,AAAI,MAAA,CAAA,SAAQ,EAAI,CAAA,SAAQ,AAAC,CAAC,KAAI,CAAC,CAAA,CAAI,CAAA,gBAAe,IAAI,AAAC,CAAC,KAAI,CAAG,YAAU,CAAC,CAAA,CAAI,KAAG,CAAC;AAClF,AAAI,MAAA,CAAA,SAAQ,EAAI,CAAA,SAAQ,AAAC,CAAC,KAAI,CAAC,CAAA,CAAI,CAAA,gBAAe,IAAI,AAAC,CAAC,KAAI,CAAG,YAAU,CAAC,CAAA,CAAI,KAAG,CAAC;AAElF,OAAI,SAAQ,AAAC,CAAC,SAAQ,CAAC,CAAG;AAhC9B,WAAO,CAAA,MAAK,WAAW,AAAC,CAAC,CAiCZ,GAAI,CAAA,WAAU,aAAa,AAAC,CAAC,QAAO,CAAG,UAAQ,CAAG,UAAQ,CAAC,CAjC7B,CA2BL,CAAA,WAAU,aAAa,CA3BE,CAAA;IAkC3D,KAAO;AAlCX,WAAO,CAAA,MAAK,WAAW,AAAC,CAAC,CAmCZ,GAAI,CAAA,WAAU,aAAa,AAAC,CAAC,QAAO,CAAG,UAAQ,CAAC,CAnClB,CA2BL,CAAA,WAAU,aAAa,CA3BE,CAAA;IAoC3D;AAAA,EACF;AAEA,QAAM,CAAE,KAAI,CAAG,CAAA,SAAQ,EAAa,KAAG;AAvCzC,SAAK,cAAc,OAAnB,CAAA,MAAK,KAAK,IAAI,YAuCa,SAAO,CAvCI,CAAA;AAwClC,OAAI,SAAQ,AAAC,CAAC,SAAQ,CAAC,CAAG;AAxC9B,WAAO,CAAA,MAAK,WAAW,AAAC,CAAC,CAyCZ,GAAI,CAAA,WAAU,QAAQ,AAAC,CAAC,KAAI,CAAG,UAAQ,CAAC,CAzCV,CAuCC,CAAA,WAAU,QAAQ,CAvCC,CAAA;IA0C3D,KAAO;AA1CX,WAAO,CAAA,MAAK,WAAW,AAAC,CAAC,CA2CZ,GAAI,CAAA,WAAU,QAAQ,AAAC,CAAC,KAAI,CAAC,CA3CC,CAuCC,CAAA,WAAU,QAAQ,CAvCC,CAAA;IA4C3D;AAAA,EACF;AAEA,MAAI,CAAE,cAAa,AAAK,CAAG,CAAA,SAAQ,EAAa,KAAG;AACjD,AAAI,MAAA,CAAA,QAAO,EAAI,CAAA,WAAU,IAAI,AAAC,CAAC,cAAa,CAAG,EAAC,CAAA,IAAM,CAAA,IAAG,eAAe,AAAC,CAAC,CAAA,CAAC,CAAC,CAAC;AAC7E,OAAI,SAAQ,AAAC,CAAC,SAAQ,CAAC,CAAG;AAjD9B,WAAO,CAAA,MAAK,WAAW,AAAC,CAAC,CAkDZ,GAAI,CAAA,WAAU,aAAa,AAAC,CAAC,QAAO,CAAG,UAAQ,CAAC,CAlDlB,CA+Ca,CAAA,WAAU,aAAa,CA/ChB,CAAA;IAmD3D,KAAO;AAnDX,WAAO,CAAA,MAAK,WAAW,AAAC,CAAC,CAoDZ,GAAI,CAAA,WAAU,aAAa,AAAC,CAAC,QAAO,CAAC,CApDP,CA+Ca,CAAA,WAAU,aAAa,CA/ChB,CAAA;IAqD3D;AAAA,EACF;AAEA,gBAAc,CAAE,cAAa,CAAG;AAC9B,AAAI,MAAA,CAAA,QAAO,EAAI,GAAC,CAAC;AACjB,mBAAe,QAAQ,AAAC,CAAC,cAAa,CAAG,EAAC,aAAY,CAAG,CAAA,WAAU,IAAM;AACvE,aAAO,CAAE,WAAU,CAAC,EAAI,CAAA,IAAG,eAAe,AAAC,CAAC,aAAY,CAAC,CAAC;IAC5D,CAAC,CAAC;AACF,SAAO,SAAO,CAAC;EACjB;AAAA,AAEA,eAAa,CAAE,aAAY,CAAG;AAC5B,OAAI,aAAY,WAAa,CAAA,WAAU,QAAQ,CAAA,EAC7C,CAAA,aAAY,WAAa,CAAA,WAAU,aAAa,CAAA,EAChD,CAAA,aAAY,WAAa,CAAA,WAAU,aAAa,CAAG;AACnD,WAAO,cAAY,CAAC;IAEtB,KAAO,KAAI,WAAU,OAAO,AAAC,CAAC,aAAY,CAAC,CAAG;AAC5C,AAAI,QAAA,CAAA,KAAI,EAAI,CAAA,WAAU,IAAI,AAAC,CAAC,aAAY,CAAG,EAAA,CAAC,CAAC;AAC7C,AAAI,QAAA,CAAA,SAAQ,EAAI,CAAA,aAAY,OAAO,EAAI,EAAA,CAAA,CAAI,CAAA,aAAY,CAAE,CAAA,CAAC,EAAI,KAAG,CAAC;AAClE,WAAO,CAAA,IAAG,QAAQ,AAAC,CAAC,KAAI,CAAG,UAAQ,CAAC,CAAC;IAEvC,KAAO;AACL,WAAO,CAAA,IAAG,QAAQ,AAAC,CAAC,aAAY,CAAC,CAAC;IACpC;AAAA,EACF;AAAA,AACF;AAAA,AA/EA,KAAK,eAAe,AAAC,6CACb,EAAC,GAAE,CAAG,UAAS,AAAD,CAAG;AAAC,gBAsCC,QAAO,GAtCe;EAAC,CAAC,CAAC,CAAC;AADrD,KAAK,eAAe,AAAC,2CACb,EAAC,GAAE,CAAG,UAAS,AAAD,CAAG;AAAC,YA8CH,IAAG,IAAa,QAAO,GA9CG;EAAC,CAAC,CAAC,CAAC;AA+ErD","file":"angular2/src/forms/form_builder.es6","sourcesContent":["import {StringMapWrapper, ListWrapper, List} from 'angular2/src/facade/collection';\nimport {isPresent} from 'angular2/src/facade/lang';\nimport * as modelModule from './model';\n\n\n/**\n * Creates a form object from a user-specified configuration.\n *\n * # Example\n *\n * This example creates a {@link ControlGroup} that consists of a `login` {@link Control}, and a nested \n * {@link ControlGroup} that defines a `password` and a `passwordConfirmation` {@link Control}.\n *\n * ```\n * var loginForm = builder.group({\n * login: [\"\", Validators.required],\n *\n * passwordRetry: builder.group({\n * password: [\"\", Validators.required],\n * passwordConfirmation: [\"\", Validators.required]\n * })\n * });\n *\n * ```\n * @exportedAs angular2/forms\n */\nexport class FormBuilder {\n group(controlsConfig, extra = null):modelModule.ControlGroup {\n var controls = this._reduceControls(controlsConfig);\n var optionals = isPresent(extra) ? StringMapWrapper.get(extra, \"optionals\") : null;\n var validator = isPresent(extra) ? StringMapWrapper.get(extra, \"validator\") : null;\n\n if (isPresent(validator)) {\n return new modelModule.ControlGroup(controls, optionals, validator);\n } else {\n return new modelModule.ControlGroup(controls, optionals);\n }\n }\n\n control(value, validator:Function = null):modelModule.Control {\n if (isPresent(validator)) {\n return new modelModule.Control(value, validator);\n } else {\n return new modelModule.Control(value);\n }\n }\n\n array(controlsConfig:List, validator:Function = null):modelModule.ControlArray {\n var controls = ListWrapper.map(controlsConfig, (c) => this._createControl(c));\n if (isPresent(validator)) {\n return new modelModule.ControlArray(controls, validator);\n } else {\n return new modelModule.ControlArray(controls);\n }\n }\n\n _reduceControls(controlsConfig) {\n var controls = {};\n StringMapWrapper.forEach(controlsConfig, (controlConfig, controlName) => {\n controls[controlName] = this._createControl(controlConfig);\n });\n return controls;\n }\n\n _createControl(controlConfig) {\n if (controlConfig instanceof modelModule.Control ||\n controlConfig instanceof modelModule.ControlGroup ||\n controlConfig instanceof modelModule.ControlArray) {\n return controlConfig;\n\n } else if (ListWrapper.isList(controlConfig)) {\n var value = ListWrapper.get(controlConfig, 0);\n var validator = controlConfig.length > 1 ? controlConfig[1] : null;\n return this.control(value, validator);\n\n } else {\n return this.control(controlConfig);\n }\n }\n}\n"]}