# Generated by Django 2.1.1 on 2018-11-26 19:17

import django.contrib.postgres.fields
import django.contrib.postgres.fields.jsonb
import django.core.validators
from django.db import migrations, models
import functools
import main.models
import utils.validators


class Migration(migrations.Migration):

    dependencies = [
        ('main', '0004_auto_20181115_1644'),
    ]

    operations = [
        migrations.AddField(
            model_name='guidedesign',
            name='hdr_homology_arm_length',
            field=models.IntegerField(default=55, help_text='Length of each homolgous sequence that flank the tag sequence', validators=[django.core.validators.MinValueValidator(15), django.core.validators.MaxValueValidator(1000)], verbose_name='Homology arm length'),
        ),
        migrations.AlterField(
            model_name='experiment',
            name='is_hdr',
            field=models.BooleanField(default=True, help_text='Will guides be used with HDR (Homology Directed Repair)?', verbose_name='HDR experiment?'),
        ),
        migrations.AlterField(
            model_name='guidedesign',
            name='hdr_start_codon_tag_seq',
            field=models.CharField(blank=True, default='ACCGAGCTCAACTTCAAGGAGTGGCAAAAGGCCTTTACCGATATGATGGGTGGCGGATTGGAAGTTTTGTTTCAAGGTCCAGGAAGTGGT', help_text='Sequence of tag to insert just after start codon', max_length=65536, null=True, validators=[utils.validators.validate_seq, django.core.validators.MinLengthValidator(3), django.core.validators.MaxLengthValidator(1000)], verbose_name='Tag sequence for start codon'),
        ),
        migrations.AlterField(
            model_name='guidedesign',
            name='hdr_stop_codon_tag_seq',
            field=models.CharField(blank=True, default='GGTGGCGGATTGGAAGTTTTGTTTCAAGGTCCAGGAAGTGGTACCGAGCTCAACTTCAAGGAGTGGCAAAAGGCCTTTACCGATATGATG', help_text='Sequence of tag to insert just before stop codon', max_length=65536, null=True, validators=[utils.validators.validate_seq, django.core.validators.MinLengthValidator(3), django.core.validators.MaxLengthValidator(1000)], verbose_name='Tag sequence for stop codon'),
        ),
        migrations.AlterField(
            model_name='guidedesign',
            name='hdr_tag',
            field=models.CharField(blank=True, choices=[('start_codon', 'Within 96 before or after start codon (N-terminus)'), ('stop_codon', 'Within 96 before or after stop codon (C-terminus)'), ('per_target', 'Within 96 before or after, terminus specified per target ("N" or "C")')], default=None, help_text='Where to insert the tag in each gene', max_length=40, null=True, verbose_name='HDR tag terminus'),
        ),
        migrations.AlterField(
            model_name='guidedesign',
            name='target_tags',
            field=django.contrib.postgres.fields.ArrayField(base_field=models.CharField(blank=True, choices=[('start_codon', 'Within 96 before or after start codon (N-terminus)'), ('stop_codon', 'Within 96 before or after stop codon (C-terminus)'), ('per_target', 'Within 96 before or after, terminus specified per target ("N" or "C")')], max_length=40), blank=True, size=None, verbose_name='Target HDR tags'),
        ),
        migrations.AlterField(
            model_name='primerdesign',
            name='max_amplicon_length',
            field=models.IntegerField(default=400, help_text='Amplicon = primer product. Length after HDR insertion.', validators=[django.core.validators.MinValueValidator(200), django.core.validators.MaxValueValidator(400)], verbose_name='Maximum amplicon length'),
        ),
        migrations.AlterField(
            model_name='primerselection',
            name='selected_primers',
            field=django.contrib.postgres.fields.jsonb.JSONField(default=dict, help_text='Primers returned by Crispor, grouped by guide, forward primer then reverse primer', validators=[functools.partial(utils.validators.validate_num_wells, *(), **{'max': 1152}), main.models.PrimerSelection._validate_selected_primers]),
        ),
    ]
