### File

`demo/demo.service.ts`

### Index

###### Methods
Public getForm

### Methods

Public getForm
`getForm()`
Defined in demo/demo.service.ts:212
Returns : `any[]`

    import { Injectable } from '@angular/core';

    const groups: any[] = [
      {
        'code': 'G-01',
        'description': 'Fieldset Group',
        'type': 'group',
        'questions': [
          {
            'name': 'Q-0100',
            'description': 'Check Question 0100',
            'type': 'checkbox',
            'defaultOption': false,
            'validations': [
              { 'type': 'pattern', 'message': 'Required field.', 'value': 'true' }
            ]
          },
          {
            'name': 'Q-0101',
            'description': 'Radio Question 0101',
            'type': 'radio',
            'options': ['Option 1', 'Option 2'],
            'defaultOption': 'Option 1',
            'validations': [
              { 'type': 'required', 'message': 'Required field.' }
            ],
            'disabled': true
          },
          {
            'name': 'Q-0102',
            'description': 'Select Question 0102',
            'type': 'select',
            'options': [
              { 'value': 'op-1',  'description': 'Option 1' },
              { 'value': 'op-2',  'description': 'Option 2' },
              { 'value': 'op-3',  'description': 'Option 3' }
            ],
            'editableOption': 'op-1',
            'placeholder': 'Select',
            'validations': [
              { 'type': 'required', 'message': 'Required field.' }
            ],
            'answer': { 'value': 'op-2', 'id': 1 }
          },
          {
            'name': 'Q-0103',
            'description': 'Select Question 0103',
            'type': 'select',
            'options': ['Option 1', 'Option 2'],
            'editableOption': 'Option 2',
            'placeholder': 'Select',
            'validations': [
              { 'type': 'required', 'message': 'Required field.' }
            ]
          },
          {
            'name': 'Q-0104',
            'description': 'Text Question 0104',
            'type': 'text',
            'answer': '200',
            'placeholder': 'Text Question 0104',
            'validations': [
              { 'type': 'required', 'message': 'Required field.' },
              { 'type': 'minlength', 'message': 'Min Length: 3', 'value': 3 },
              { 'type': 'maxlength', 'message': 'Max Length: 10', 'value': 10 }
            ]
          },
          {
            'name': 'Q-0105',
            'description': 'Text Question 0105',
            'type': 'text',
            'placeholder': 'Text Question 0105',
            'validations': [
              { 'type': 'required', 'message': 'Required field.' },
              { 'type': 'pattern', 'message': 'Format: 00000-000', 'value': '^\\d{5}-\\d{3}$' }
            ],
            'mask': '00000-000'
          },
          {
            'name': 'Q-0106',
            'description': 'TextArea Question 0106',
            'type': 'textarea',
            'placeholder': 'TextArea Question 0106',
            'validations': [
              { 'type': 'required', 'message': 'Required field.' }
            ],
            'dependencies': [
              { 'code': 'Q-0103', 'criteria': 'equals', 'expectedAnswer': 'Option 1' }
            ]
          },
          {
            'name': 'Q-0107',
            'description': 'Text Question 0107',
            'type': 'text',
            'placeholder': 'Text Question 0107',
            'validations': [
              { 'type': 'required', 'message': 'Required field.' }
            ],
            'dependencies': [
              { 'code': 'Q-0104', 'criteria': 'lessthan', 'expectedAnswer': '300' },
              { 'code': 'Q-0104', 'criteria': 'notequals', 'expectedAnswer': '100' },
              { 'code': 'Q-0104', 'criteria': 'greaterthan', 'expectedAnswer': '100' },
              { 'code': 'Q-0104', 'criteria': 'lessthanorequals', 'expectedAnswer': '300' }
            ]
          },
          {
            'name': 'Q-0108',
            'description': 'Text Question 0108',
            'type': 'text',
            'placeholder': 'Text Question 0108',
            'validations': [
              { 'type': 'min', 'message': 'Min value: 1.', 'value': '1' },
              { 'type': 'max', 'message': 'Max value: 10.', 'value': '10' }
            ]
          },
          {
            'name': 'Q-0109',
            'description': 'Text Question 0109',
            'type': 'text',
            'placeholder': 'Text Question 0109',
            'validations': [
              { 'type': 'email', 'message': 'Invalid e-mail.' }
            ]
          }
        ]
      },
      {
        'code': 'G-02',
        'description': 'DataTable Group',
        'type': 'datatable',
        'validations': [
          { 'type': 'required', 'message': 'Min number of registers: 1.' },
          { 'type': 'minlength', 'message': 'Min number of registers: 1.', 'value': 1 },
          { 'type': 'maxlength', 'message': 'Max number of registers: 3.', 'value': 3 }
        ],
        'questions': [
          [
            {
              'name': 'Q-0201',
              'description': 'Select Question 0201',
              'type': 'select',
              'validations': [
                { 'type': 'required', 'message': 'Required field.' }
              ],
              'options': ['Option 1', 'Option 2', 'Option 3'],
              'editableOption': 'Option 3',
              'placeholder': 'Select'
            },
            {
              'name': 'Q-0202',
              'description': 'Text Question 0202',
              'type': 'text',
              'validations': [
                { 'type': 'required', 'message': 'Required field.' }
              ],
              'placeholder': 'Text Question 0202'
            }
          ],
          [
            {
              'name': 'Q-0201',
              'description': 'Select Question 0201',
              'type': 'select',
              'validations': [
                { 'type': 'required', 'message': 'Required field.' }
              ],
              'options': ['Option 1', 'Option 2', 'Option 3'],
              'placeholder': 'Select',
              'answer': { 'value': 'Option 2', 'id': 1 }
            },
            {
              'name': 'Q-0202',
              'description': 'Text Question 0202',
              'type': 'text',
              'validations': [
                { 'type': 'required', 'message': 'Required field.' }
              ],
              'placeholder': 'Text Question 0202',
              'answer': { 'value': 'Answer 0202', 'id': 1 }
            }
          ],
          [
            {
              'name': 'Q-0201',
              'description': 'Select Question 0201',
              'type': 'select',
              'validations': [
                { 'type': 'required', 'message': 'Required field.' }
              ],
              'options': ['Option 1', 'Option 2', 'Option 3'],
              'placeholder': 'Select',
              'answer': { 'value': 'Option 3', 'id': 2 }
            },
            {
              'name': 'Q-0202',
              'description': 'Text Question 0202',
              'type': 'text',
              'validations': [
                { 'type': 'required', 'message': 'Required field.' }
              ],
              'placeholder': 'Text Question 0202',
              'answer': { 'value': 'Answer 0202 2', 'id': 2 }
            }
          ]
        ]
      }
    ];

    @Injectable()
    export class DemoService {

      public getForm(): any[] {
        return groups;
      }
    }

# results matching ""

# No results matching ""