@tft/crispr-forms 14.0.2 → 17.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/public-api.mjs +4 -0
- package/{esm2020 → esm2022}/src/index.mjs +1 -1
- package/esm2022/src/lib/crispr-forms.module.mjs +55 -0
- package/esm2022/src/lib/display-field.directive.mjs +52 -0
- package/esm2022/src/lib/field-component-map.const.mjs +28 -0
- package/esm2022/src/lib/field.directive.mjs +69 -0
- package/esm2022/src/lib/form/form.component.mjs +62 -0
- package/esm2022/src/lib/form-group-list/form-group-list.component.mjs +97 -0
- package/{esm2020 → esm2022}/src/lib/form-group-list/index.mjs +1 -1
- package/{esm2020 → esm2022}/src/lib/pipes/crispr-pipes.module.mjs +24 -24
- package/esm2022/src/lib/pipes/initial-control-value.pipe.mjs +20 -0
- package/{esm2020 → esm2022}/src/lib/public_api.mjs +2 -2
- package/{esm2020 → esm2022}/src/lib/sub-group/index.mjs +2 -2
- package/esm2022/src/lib/sub-group/sub-group.component.mjs +20 -0
- package/esm2022/src/lib/sub-group/sub-group.module.mjs +42 -0
- package/esm2022/src/lib/ui/autocomplete-chiplist-field/autocomplete-chiplist-field.component.mjs +138 -0
- package/esm2022/src/lib/ui/autocomplete-chiplist-field/index.mjs +2 -0
- package/esm2022/src/lib/ui/autocomplete-chiplist-field/public-api.mjs +2 -0
- package/esm2022/src/lib/ui/autocomplete-field/autocomplete-field.component.mjs +95 -0
- package/esm2022/src/lib/ui/autocomplete-field/index.mjs +2 -0
- package/esm2022/src/lib/ui/autocomplete-field/public-api.mjs +2 -0
- package/esm2022/src/lib/ui/button/button.component.mjs +52 -0
- package/esm2022/src/lib/ui/button/index.mjs +2 -0
- package/esm2022/src/lib/ui/button/public-api.mjs +2 -0
- package/esm2022/src/lib/ui/checkbox-field/checkbox-field.component.mjs +42 -0
- package/esm2022/src/lib/ui/checkbox-field/index.mjs +2 -0
- package/esm2022/src/lib/ui/checkbox-field/public-api.mjs +2 -0
- package/esm2022/src/lib/ui/datepicker-field/datepicker-field.component.mjs +66 -0
- package/esm2022/src/lib/ui/datepicker-field/index.mjs +2 -0
- package/esm2022/src/lib/ui/datepicker-field/public-api.mjs +2 -0
- package/esm2022/src/lib/ui/divider/divider.component.mjs +25 -0
- package/esm2022/src/lib/ui/divider/index.mjs +2 -0
- package/esm2022/src/lib/ui/divider/public-api.mjs +2 -0
- package/esm2022/src/lib/ui/field-container/field-container.component.mjs +59 -0
- package/esm2022/src/lib/ui/field-container/index.mjs +2 -0
- package/esm2022/src/lib/ui/field-container/public-api.mjs +2 -0
- package/esm2022/src/lib/ui/file-dropzone/file-dropzone.directive.mjs +40 -0
- package/esm2022/src/lib/ui/file-dropzone/index.mjs +2 -0
- package/esm2022/src/lib/ui/file-dropzone/public-api.mjs +2 -0
- package/esm2022/src/lib/ui/file-upload-field/file-upload-field.component.mjs +107 -0
- package/esm2022/src/lib/ui/file-upload-field/index.mjs +2 -0
- package/esm2022/src/lib/ui/file-upload-field/public-api.mjs +2 -0
- package/esm2022/src/lib/ui/heading/heading.component.mjs +27 -0
- package/esm2022/src/lib/ui/heading/index.mjs +2 -0
- package/esm2022/src/lib/ui/heading/public-api.mjs +2 -0
- package/esm2022/src/lib/ui/image-upload-field/image-upload-field.component.mjs +184 -0
- package/esm2022/src/lib/ui/image-upload-field/index.mjs +2 -0
- package/esm2022/src/lib/ui/image-upload-field/public-api.mjs +2 -0
- package/esm2022/src/lib/ui/index.mjs +2 -0
- package/esm2022/src/lib/ui/info/index.mjs +2 -0
- package/esm2022/src/lib/ui/info/info.component.mjs +23 -0
- package/esm2022/src/lib/ui/info/public-api.mjs +2 -0
- package/esm2022/src/lib/ui/input-field/index.mjs +2 -0
- package/esm2022/src/lib/ui/input-field/input-field.component.mjs +43 -0
- package/esm2022/src/lib/ui/input-field/public-api.mjs +2 -0
- package/esm2022/src/lib/ui/option/index.mjs +2 -0
- package/esm2022/src/lib/ui/option/option.component.mjs +16 -0
- package/esm2022/src/lib/ui/option/public-api.mjs +2 -0
- package/esm2022/src/lib/ui/public-api.mjs +7 -0
- package/esm2022/src/lib/ui/radio-field/index.mjs +2 -0
- package/esm2022/src/lib/ui/radio-field/public-api.mjs +2 -0
- package/esm2022/src/lib/ui/radio-field/radio-field.component.mjs +39 -0
- package/esm2022/src/lib/ui/select-field/index.mjs +2 -0
- package/esm2022/src/lib/ui/select-field/public-api.mjs +2 -0
- package/esm2022/src/lib/ui/select-field/select-field.component.mjs +73 -0
- package/esm2022/src/lib/ui/selected-file/index.mjs +2 -0
- package/esm2022/src/lib/ui/selected-file/public-api.mjs +2 -0
- package/esm2022/src/lib/ui/selected-file/selected-file.component.mjs +26 -0
- package/esm2022/src/lib/ui/slider-field/index.mjs +2 -0
- package/esm2022/src/lib/ui/slider-field/public-api.mjs +2 -0
- package/esm2022/src/lib/ui/slider-field/slider-field.component.mjs +46 -0
- package/esm2022/src/lib/ui/textarea-field/index.mjs +2 -0
- package/esm2022/src/lib/ui/textarea-field/public-api.mjs +2 -0
- package/esm2022/src/lib/ui/textarea-field/textarea-field.component.mjs +42 -0
- package/esm2022/src/lib/ui/unit-conversion-field/index.mjs +2 -0
- package/esm2022/src/lib/ui/unit-conversion-field/public-api.mjs +2 -0
- package/esm2022/src/lib/ui/unit-conversion-field/unit-conversion-field.component.mjs +86 -0
- package/esm2022/src/lib/utils/abstracts/autocomplete-field.abstract.mjs +30 -0
- package/esm2022/src/lib/utils/abstracts/crispr-control.mixin.mjs +27 -0
- package/esm2022/src/lib/utils/abstracts/crispr-display-field.abstract.mjs +14 -0
- package/esm2022/src/lib/utils/abstracts/crispr-field.abstract.mjs +19 -0
- package/esm2022/src/lib/utils/abstracts/index.mjs +5 -0
- package/esm2022/src/lib/utils/functions/buildFormGroupFromConfig.mjs +28 -0
- package/esm2022/src/lib/utils/functions/callOptionsIfFunction.mjs +4 -0
- package/esm2022/src/lib/utils/functions/createControlForType.mjs +19 -0
- package/esm2022/src/lib/utils/functions/filterOptionsByLabel.mjs +11 -0
- package/esm2022/src/lib/utils/functions/image-compression.helpers.mjs +50 -0
- package/esm2022/src/lib/utils/functions/index.mjs +8 -0
- package/esm2022/src/lib/utils/functions/isControlConfig.mjs +7 -0
- package/esm2022/src/lib/utils/functions/observablifyOptions.mjs +29 -0
- package/esm2022/src/lib/utils/index.mjs +2 -0
- package/esm2022/src/lib/utils/models/autocomplete-chiplist-field.config.mjs +2 -0
- package/esm2022/src/lib/utils/models/autocomplete-field.config.mjs +2 -0
- package/esm2022/src/lib/utils/models/button.config.mjs +2 -0
- package/esm2022/src/lib/utils/models/checkbox-field.config.mjs +2 -0
- package/esm2022/src/lib/utils/models/crispr-field.config.mjs +23 -0
- package/esm2022/src/lib/utils/models/datepicker-field.config.mjs +2 -0
- package/esm2022/src/lib/utils/models/divider.config.mjs +2 -0
- package/esm2022/src/lib/utils/models/file-upload-field.config.mjs +2 -0
- package/esm2022/src/lib/utils/models/form-group-list.config.mjs +2 -0
- package/esm2022/src/lib/utils/models/heading.config.mjs +3 -0
- package/esm2022/src/lib/utils/models/image-upload-field.config.mjs +2 -0
- package/esm2022/src/lib/utils/models/index.mjs +18 -0
- package/esm2022/src/lib/utils/models/input-field.config.mjs +2 -0
- package/esm2022/src/lib/utils/models/radio-field.config.mjs +2 -0
- package/esm2022/src/lib/utils/models/select-field.config.mjs +2 -0
- package/esm2022/src/lib/utils/models/slider-field.config.mjs +2 -0
- package/esm2022/src/lib/utils/models/textarea-field.config.mjs +2 -0
- package/esm2022/src/lib/utils/models/unit-conversion-field.config.mjs +2 -0
- package/esm2022/src/lib/utils/operators/form.operators.mjs +24 -0
- package/esm2022/src/lib/utils/operators/index.mjs +2 -0
- package/esm2022/src/lib/utils/public-api.mjs +5 -0
- package/esm2022/src/lib/utils/tft-crispr-forms-src-lib-utils.mjs +5 -0
- package/{esm2020 → esm2022}/tft-crispr-forms.mjs +4 -4
- package/fesm2022/tft-crispr-forms-index-2dAn0905.mjs +19 -0
- package/fesm2022/tft-crispr-forms-index-2dAn0905.mjs.map +1 -0
- package/fesm2022/tft-crispr-forms-index-76UuF0AI.mjs +36 -0
- package/fesm2022/tft-crispr-forms-index-76UuF0AI.mjs.map +1 -0
- package/{fesm2020/tft-crispr-forms-ui-image-upload-field.mjs → fesm2022/tft-crispr-forms-index-BXwiulEX.mjs} +169 -169
- package/fesm2022/tft-crispr-forms-index-BXwiulEX.mjs.map +1 -0
- package/fesm2022/tft-crispr-forms-index-BfR4XbYi.mjs +110 -0
- package/fesm2022/tft-crispr-forms-index-BfR4XbYi.mjs.map +1 -0
- package/fesm2022/tft-crispr-forms-index-C5X0mk3N.mjs +49 -0
- package/fesm2022/tft-crispr-forms-index-C5X0mk3N.mjs.map +1 -0
- package/fesm2022/tft-crispr-forms-index-CFUop3Cq.mjs +80 -0
- package/fesm2022/tft-crispr-forms-index-CFUop3Cq.mjs.map +1 -0
- package/fesm2022/tft-crispr-forms-index-CFdMVgM0.mjs +91 -0
- package/fesm2022/tft-crispr-forms-index-CFdMVgM0.mjs.map +1 -0
- package/fesm2022/tft-crispr-forms-index-CZdi06Jj.mjs +49 -0
- package/fesm2022/tft-crispr-forms-index-CZdi06Jj.mjs.map +1 -0
- package/fesm2022/tft-crispr-forms-index-C_I9vjqf.mjs +57 -0
- package/fesm2022/tft-crispr-forms-index-C_I9vjqf.mjs.map +1 -0
- package/fesm2022/tft-crispr-forms-index-DE8VOdBd.mjs +102 -0
- package/fesm2022/tft-crispr-forms-index-DE8VOdBd.mjs.map +1 -0
- package/fesm2022/tft-crispr-forms-index-OLo2t0tl.mjs +48 -0
- package/fesm2022/tft-crispr-forms-index-OLo2t0tl.mjs.map +1 -0
- package/fesm2022/tft-crispr-forms-index-OT7kkOgd.mjs +50 -0
- package/fesm2022/tft-crispr-forms-index-OT7kkOgd.mjs.map +1 -0
- package/fesm2022/tft-crispr-forms-index-Ukk3WgS2.mjs +54 -0
- package/fesm2022/tft-crispr-forms-index-Ukk3WgS2.mjs.map +1 -0
- package/fesm2022/tft-crispr-forms-index-rRi6OMY6.mjs +142 -0
- package/fesm2022/tft-crispr-forms-index-rRi6OMY6.mjs.map +1 -0
- package/fesm2022/tft-crispr-forms-index-xAaInTLg.mjs +73 -0
- package/fesm2022/tft-crispr-forms-index-xAaInTLg.mjs.map +1 -0
- package/{fesm2020/tft-crispr-forms-utils.mjs → fesm2022/tft-crispr-forms-src-lib-utils.mjs} +242 -243
- package/fesm2022/tft-crispr-forms-src-lib-utils.mjs.map +1 -0
- package/fesm2022/tft-crispr-forms.mjs +848 -0
- package/fesm2022/tft-crispr-forms.mjs.map +1 -0
- package/index.d.ts +5 -5
- package/package.json +13 -191
- package/public-api.d.ts +3 -3
- package/src/index.d.ts +1 -1
- package/src/lib/crispr-forms.module.d.ts +16 -16
- package/src/lib/display-field.directive.d.ts +23 -23
- package/src/lib/field-component-map.const.d.ts +42 -42
- package/src/lib/field.directive.d.ts +24 -24
- package/src/lib/form/form.component.d.ts +19 -19
- package/src/lib/form-group-list/form-group-list.component.d.ts +40 -38
- package/src/lib/form-group-list/index.d.ts +1 -1
- package/src/lib/pipes/crispr-pipes.module.d.ts +8 -8
- package/src/lib/pipes/initial-control-value.pipe.d.ts +10 -10
- package/src/lib/public_api.d.ts +2 -2
- package/src/lib/sub-group/index.d.ts +2 -2
- package/src/lib/sub-group/sub-group.component.d.ts +24 -22
- package/src/lib/sub-group/sub-group.module.d.ts +12 -12
- package/{ui → src/lib/ui}/autocomplete-chiplist-field/autocomplete-chiplist-field.component.d.ts +36 -33
- package/src/lib/ui/autocomplete-chiplist-field/index.d.ts +1 -0
- package/{ui → src/lib/ui}/autocomplete-chiplist-field/public-api.d.ts +1 -1
- package/{ui → src/lib/ui}/autocomplete-field/autocomplete-field.component.d.ts +25 -25
- package/src/lib/ui/autocomplete-field/index.d.ts +1 -0
- package/{ui → src/lib/ui}/autocomplete-field/public-api.d.ts +1 -1
- package/{ui → src/lib/ui}/button/button.component.d.ts +15 -15
- package/src/lib/ui/button/index.d.ts +1 -0
- package/{ui → src/lib/ui}/button/public-api.d.ts +1 -1
- package/src/lib/ui/checkbox-field/checkbox-field.component.d.ts +23 -0
- package/src/lib/ui/checkbox-field/index.d.ts +1 -0
- package/{ui → src/lib/ui}/checkbox-field/public-api.d.ts +1 -1
- package/{ui → src/lib/ui}/datepicker-field/datepicker-field.component.d.ts +32 -30
- package/src/lib/ui/datepicker-field/index.d.ts +1 -0
- package/{ui → src/lib/ui}/datepicker-field/public-api.d.ts +1 -1
- package/{ui → src/lib/ui}/divider/divider.component.d.ts +9 -9
- package/src/lib/ui/divider/index.d.ts +1 -0
- package/{ui → src/lib/ui}/divider/public-api.d.ts +1 -1
- package/{ui → src/lib/ui}/field-container/field-container.component.d.ts +24 -24
- package/src/lib/ui/field-container/index.d.ts +1 -0
- package/{ui → src/lib/ui}/field-container/public-api.d.ts +1 -1
- package/{ui → src/lib/ui}/file-dropzone/file-dropzone.directive.d.ts +10 -10
- package/src/lib/ui/file-dropzone/index.d.ts +1 -0
- package/{ui → src/lib/ui}/file-dropzone/public-api.d.ts +1 -1
- package/{ui → src/lib/ui}/file-upload-field/file-upload-field.component.d.ts +39 -37
- package/src/lib/ui/file-upload-field/index.d.ts +1 -0
- package/{ui → src/lib/ui}/file-upload-field/public-api.d.ts +1 -1
- package/{ui → src/lib/ui}/heading/heading.component.d.ts +8 -8
- package/src/lib/ui/heading/index.d.ts +1 -0
- package/{ui → src/lib/ui}/heading/public-api.d.ts +1 -1
- package/{ui → src/lib/ui}/image-upload-field/image-upload-field.component.d.ts +50 -48
- package/src/lib/ui/image-upload-field/index.d.ts +1 -0
- package/{ui → src/lib/ui}/image-upload-field/public-api.d.ts +1 -1
- package/src/lib/ui/index.d.ts +1 -0
- package/src/lib/ui/info/index.d.ts +1 -0
- package/{ui → src/lib/ui}/info/info.component.d.ts +7 -7
- package/{ui → src/lib/ui}/info/public-api.d.ts +1 -1
- package/src/lib/ui/input-field/index.d.ts +1 -0
- package/src/lib/ui/input-field/input-field.component.d.ts +24 -0
- package/{ui → src/lib/ui}/input-field/public-api.d.ts +1 -1
- package/src/lib/ui/option/index.d.ts +1 -0
- package/{ui → src/lib/ui}/option/option.component.d.ts +7 -7
- package/{ui → src/lib/ui}/option/public-api.d.ts +1 -1
- package/src/lib/ui/public-api.d.ts +6 -0
- package/src/lib/ui/radio-field/index.d.ts +1 -0
- package/{ui → src/lib/ui}/radio-field/public-api.d.ts +1 -1
- package/src/lib/ui/radio-field/radio-field.component.d.ts +25 -0
- package/src/lib/ui/select-field/index.d.ts +1 -0
- package/{ui → src/lib/ui}/select-field/public-api.d.ts +1 -1
- package/{ui → src/lib/ui}/select-field/select-field.component.d.ts +34 -32
- package/src/lib/ui/selected-file/index.d.ts +1 -0
- package/{ui → src/lib/ui}/selected-file/public-api.d.ts +1 -1
- package/{ui → src/lib/ui}/selected-file/selected-file.component.d.ts +10 -10
- package/src/lib/ui/slider-field/index.d.ts +1 -0
- package/{ui → src/lib/ui}/slider-field/public-api.d.ts +1 -1
- package/src/lib/ui/slider-field/slider-field.component.d.ts +24 -0
- package/src/lib/ui/textarea-field/index.d.ts +1 -0
- package/{ui → src/lib/ui}/textarea-field/public-api.d.ts +1 -1
- package/src/lib/ui/textarea-field/textarea-field.component.d.ts +23 -0
- package/src/lib/ui/unit-conversion-field/index.d.ts +1 -0
- package/{ui → src/lib/ui}/unit-conversion-field/public-api.d.ts +1 -1
- package/{ui → src/lib/ui}/unit-conversion-field/unit-conversion-field.component.d.ts +38 -36
- package/{utils → src/lib/utils}/abstracts/autocomplete-field.abstract.d.ts +28 -28
- package/{utils → src/lib/utils}/abstracts/crispr-control.mixin.d.ts +16 -16
- package/{utils → src/lib/utils}/abstracts/crispr-display-field.abstract.d.ts +22 -22
- package/{utils → src/lib/utils}/abstracts/crispr-field.abstract.d.ts +11 -11
- package/{utils → src/lib/utils}/abstracts/index.d.ts +4 -4
- package/{utils → src/lib/utils}/functions/buildFormGroupFromConfig.d.ts +9 -9
- package/{utils → src/lib/utils}/functions/callOptionsIfFunction.d.ts +3 -3
- package/{utils → src/lib/utils}/functions/createControlForType.d.ts +9 -9
- package/{utils → src/lib/utils}/functions/filterOptionsByLabel.d.ts +7 -7
- package/{utils → src/lib/utils}/functions/image-compression.helpers.d.ts +5 -5
- package/{utils → src/lib/utils}/functions/index.d.ts +7 -7
- package/{utils → src/lib/utils}/functions/isControlConfig.d.ts +5 -5
- package/{utils → src/lib/utils}/functions/observablifyOptions.d.ts +12 -12
- package/{ui → src/lib/utils}/index.d.ts +5 -5
- package/{utils → src/lib/utils}/models/autocomplete-chiplist-field.config.d.ts +20 -20
- package/{utils → src/lib/utils}/models/autocomplete-field.config.d.ts +14 -14
- package/{utils → src/lib/utils}/models/button.config.d.ts +17 -17
- package/{utils → src/lib/utils}/models/checkbox-field.config.d.ts +6 -6
- package/{utils → src/lib/utils}/models/crispr-field.config.d.ts +97 -94
- package/{utils → src/lib/utils}/models/datepicker-field.config.d.ts +20 -20
- package/{utils → src/lib/utils}/models/divider.config.d.ts +5 -5
- package/{utils → src/lib/utils}/models/file-upload-field.config.d.ts +33 -33
- package/{utils → src/lib/utils}/models/form-group-list.config.d.ts +18 -18
- package/{utils → src/lib/utils}/models/heading.config.d.ts +6 -6
- package/{utils → src/lib/utils}/models/image-upload-field.config.d.ts +54 -54
- package/{utils → src/lib/utils}/models/index.d.ts +17 -17
- package/{utils → src/lib/utils}/models/input-field.config.d.ts +16 -16
- package/{utils → src/lib/utils}/models/radio-field.config.d.ts +6 -6
- package/{utils → src/lib/utils}/models/select-field.config.d.ts +21 -21
- package/{utils → src/lib/utils}/models/slider-field.config.d.ts +11 -13
- package/{utils → src/lib/utils}/models/textarea-field.config.d.ts +5 -5
- package/{utils → src/lib/utils}/models/unit-conversion-field.config.d.ts +30 -30
- package/{utils → src/lib/utils}/operators/form.operators.d.ts +1 -1
- package/{utils → src/lib/utils}/operators/index.d.ts +1 -1
- package/{utils → src/lib/utils}/public-api.d.ts +4 -4
- package/tft-crispr-forms-17.0.0.tgz +0 -0
- package/esm2020/public-api.mjs +0 -5
- package/esm2020/src/lib/crispr-forms.module.mjs +0 -60
- package/esm2020/src/lib/display-field.directive.mjs +0 -53
- package/esm2020/src/lib/field-component-map.const.mjs +0 -27
- package/esm2020/src/lib/field.directive.mjs +0 -69
- package/esm2020/src/lib/form/form.component.mjs +0 -63
- package/esm2020/src/lib/form-group-list/form-group-list.component.mjs +0 -99
- package/esm2020/src/lib/pipes/initial-control-value.pipe.mjs +0 -21
- package/esm2020/src/lib/sub-group/sub-group.component.mjs +0 -21
- package/esm2020/src/lib/sub-group/sub-group.module.mjs +0 -42
- package/esm2020/ui/autocomplete-chiplist-field/autocomplete-chiplist-field.component.mjs +0 -130
- package/esm2020/ui/autocomplete-chiplist-field/public-api.mjs +0 -2
- package/esm2020/ui/autocomplete-chiplist-field/tft-crispr-forms-ui-autocomplete-chiplist-field.mjs +0 -5
- package/esm2020/ui/autocomplete-field/autocomplete-field.component.mjs +0 -93
- package/esm2020/ui/autocomplete-field/public-api.mjs +0 -2
- package/esm2020/ui/autocomplete-field/tft-crispr-forms-ui-autocomplete-field.mjs +0 -5
- package/esm2020/ui/button/button.component.mjs +0 -49
- package/esm2020/ui/button/public-api.mjs +0 -2
- package/esm2020/ui/button/tft-crispr-forms-ui-button.mjs +0 -5
- package/esm2020/ui/checkbox-field/checkbox-field.component.mjs +0 -42
- package/esm2020/ui/checkbox-field/public-api.mjs +0 -2
- package/esm2020/ui/checkbox-field/tft-crispr-forms-ui-checkbox-field.mjs +0 -5
- package/esm2020/ui/datepicker-field/datepicker-field.component.mjs +0 -63
- package/esm2020/ui/datepicker-field/public-api.mjs +0 -2
- package/esm2020/ui/datepicker-field/tft-crispr-forms-ui-datepicker-field.mjs +0 -5
- package/esm2020/ui/divider/divider.component.mjs +0 -28
- package/esm2020/ui/divider/public-api.mjs +0 -2
- package/esm2020/ui/divider/tft-crispr-forms-ui-divider.mjs +0 -5
- package/esm2020/ui/field-container/field-container.component.mjs +0 -58
- package/esm2020/ui/field-container/public-api.mjs +0 -2
- package/esm2020/ui/field-container/tft-crispr-forms-ui-field-container.mjs +0 -5
- package/esm2020/ui/file-dropzone/file-dropzone.directive.mjs +0 -40
- package/esm2020/ui/file-dropzone/public-api.mjs +0 -2
- package/esm2020/ui/file-dropzone/tft-crispr-forms-ui-file-dropzone.mjs +0 -5
- package/esm2020/ui/file-upload-field/file-upload-field.component.mjs +0 -108
- package/esm2020/ui/file-upload-field/public-api.mjs +0 -2
- package/esm2020/ui/file-upload-field/tft-crispr-forms-ui-file-upload-field.mjs +0 -5
- package/esm2020/ui/heading/heading.component.mjs +0 -31
- package/esm2020/ui/heading/public-api.mjs +0 -2
- package/esm2020/ui/heading/tft-crispr-forms-ui-heading.mjs +0 -5
- package/esm2020/ui/image-upload-field/image-upload-field.component.mjs +0 -179
- package/esm2020/ui/image-upload-field/public-api.mjs +0 -2
- package/esm2020/ui/image-upload-field/tft-crispr-forms-ui-image-upload-field.mjs +0 -5
- package/esm2020/ui/info/info.component.mjs +0 -23
- package/esm2020/ui/info/public-api.mjs +0 -2
- package/esm2020/ui/info/tft-crispr-forms-ui-info.mjs +0 -5
- package/esm2020/ui/input-field/input-field.component.mjs +0 -41
- package/esm2020/ui/input-field/public-api.mjs +0 -2
- package/esm2020/ui/input-field/tft-crispr-forms-ui-input-field.mjs +0 -5
- package/esm2020/ui/option/option.component.mjs +0 -19
- package/esm2020/ui/option/public-api.mjs +0 -2
- package/esm2020/ui/option/tft-crispr-forms-ui-option.mjs +0 -5
- package/esm2020/ui/public-api.mjs +0 -7
- package/esm2020/ui/radio-field/public-api.mjs +0 -2
- package/esm2020/ui/radio-field/radio-field.component.mjs +0 -39
- package/esm2020/ui/radio-field/tft-crispr-forms-ui-radio-field.mjs +0 -5
- package/esm2020/ui/select-field/public-api.mjs +0 -2
- package/esm2020/ui/select-field/select-field.component.mjs +0 -73
- package/esm2020/ui/select-field/tft-crispr-forms-ui-select-field.mjs +0 -5
- package/esm2020/ui/selected-file/public-api.mjs +0 -2
- package/esm2020/ui/selected-file/selected-file.component.mjs +0 -26
- package/esm2020/ui/selected-file/tft-crispr-forms-ui-selected-file.mjs +0 -5
- package/esm2020/ui/slider-field/public-api.mjs +0 -2
- package/esm2020/ui/slider-field/slider-field.component.mjs +0 -44
- package/esm2020/ui/slider-field/tft-crispr-forms-ui-slider-field.mjs +0 -5
- package/esm2020/ui/textarea-field/public-api.mjs +0 -2
- package/esm2020/ui/textarea-field/textarea-field.component.mjs +0 -42
- package/esm2020/ui/textarea-field/tft-crispr-forms-ui-textarea-field.mjs +0 -5
- package/esm2020/ui/tft-crispr-forms-ui.mjs +0 -5
- package/esm2020/ui/unit-conversion-field/public-api.mjs +0 -2
- package/esm2020/ui/unit-conversion-field/tft-crispr-forms-ui-unit-conversion-field.mjs +0 -5
- package/esm2020/ui/unit-conversion-field/unit-conversion-field.component.mjs +0 -84
- package/esm2020/utils/abstracts/autocomplete-field.abstract.mjs +0 -30
- package/esm2020/utils/abstracts/crispr-control.mixin.mjs +0 -27
- package/esm2020/utils/abstracts/crispr-display-field.abstract.mjs +0 -14
- package/esm2020/utils/abstracts/crispr-field.abstract.mjs +0 -20
- package/esm2020/utils/abstracts/index.mjs +0 -5
- package/esm2020/utils/functions/buildFormGroupFromConfig.mjs +0 -28
- package/esm2020/utils/functions/callOptionsIfFunction.mjs +0 -4
- package/esm2020/utils/functions/createControlForType.mjs +0 -19
- package/esm2020/utils/functions/filterOptionsByLabel.mjs +0 -11
- package/esm2020/utils/functions/image-compression.helpers.mjs +0 -50
- package/esm2020/utils/functions/index.mjs +0 -8
- package/esm2020/utils/functions/isControlConfig.mjs +0 -7
- package/esm2020/utils/functions/observablifyOptions.mjs +0 -29
- package/esm2020/utils/models/autocomplete-chiplist-field.config.mjs +0 -2
- package/esm2020/utils/models/autocomplete-field.config.mjs +0 -2
- package/esm2020/utils/models/button.config.mjs +0 -2
- package/esm2020/utils/models/checkbox-field.config.mjs +0 -2
- package/esm2020/utils/models/crispr-field.config.mjs +0 -23
- package/esm2020/utils/models/datepicker-field.config.mjs +0 -2
- package/esm2020/utils/models/divider.config.mjs +0 -2
- package/esm2020/utils/models/file-upload-field.config.mjs +0 -2
- package/esm2020/utils/models/form-group-list.config.mjs +0 -2
- package/esm2020/utils/models/heading.config.mjs +0 -3
- package/esm2020/utils/models/image-upload-field.config.mjs +0 -2
- package/esm2020/utils/models/index.mjs +0 -18
- package/esm2020/utils/models/input-field.config.mjs +0 -2
- package/esm2020/utils/models/radio-field.config.mjs +0 -2
- package/esm2020/utils/models/select-field.config.mjs +0 -2
- package/esm2020/utils/models/slider-field.config.mjs +0 -2
- package/esm2020/utils/models/textarea-field.config.mjs +0 -2
- package/esm2020/utils/models/unit-conversion-field.config.mjs +0 -2
- package/esm2020/utils/operators/form.operators.mjs +0 -24
- package/esm2020/utils/operators/index.mjs +0 -2
- package/esm2020/utils/public-api.mjs +0 -5
- package/esm2020/utils/tft-crispr-forms-utils.mjs +0 -5
- package/fesm2015/tft-crispr-forms-ui-autocomplete-chiplist-field.mjs +0 -138
- package/fesm2015/tft-crispr-forms-ui-autocomplete-chiplist-field.mjs.map +0 -1
- package/fesm2015/tft-crispr-forms-ui-autocomplete-field.mjs +0 -101
- package/fesm2015/tft-crispr-forms-ui-autocomplete-field.mjs.map +0 -1
- package/fesm2015/tft-crispr-forms-ui-button.mjs +0 -55
- package/fesm2015/tft-crispr-forms-ui-button.mjs.map +0 -1
- package/fesm2015/tft-crispr-forms-ui-checkbox-field.mjs +0 -49
- package/fesm2015/tft-crispr-forms-ui-checkbox-field.mjs.map +0 -1
- package/fesm2015/tft-crispr-forms-ui-datepicker-field.mjs +0 -71
- package/fesm2015/tft-crispr-forms-ui-datepicker-field.mjs.map +0 -1
- package/fesm2015/tft-crispr-forms-ui-divider.mjs +0 -34
- package/fesm2015/tft-crispr-forms-ui-divider.mjs.map +0 -1
- package/fesm2015/tft-crispr-forms-ui-field-container.mjs +0 -64
- package/fesm2015/tft-crispr-forms-ui-field-container.mjs.map +0 -1
- package/fesm2015/tft-crispr-forms-ui-file-dropzone.mjs +0 -47
- package/fesm2015/tft-crispr-forms-ui-file-dropzone.mjs.map +0 -1
- package/fesm2015/tft-crispr-forms-ui-file-upload-field.mjs +0 -117
- package/fesm2015/tft-crispr-forms-ui-file-upload-field.mjs.map +0 -1
- package/fesm2015/tft-crispr-forms-ui-heading.mjs +0 -37
- package/fesm2015/tft-crispr-forms-ui-heading.mjs.map +0 -1
- package/fesm2015/tft-crispr-forms-ui-image-upload-field.mjs +0 -182
- package/fesm2015/tft-crispr-forms-ui-image-upload-field.mjs.map +0 -1
- package/fesm2015/tft-crispr-forms-ui-info.mjs +0 -30
- package/fesm2015/tft-crispr-forms-ui-info.mjs.map +0 -1
- package/fesm2015/tft-crispr-forms-ui-input-field.mjs +0 -48
- package/fesm2015/tft-crispr-forms-ui-input-field.mjs.map +0 -1
- package/fesm2015/tft-crispr-forms-ui-option.mjs +0 -26
- package/fesm2015/tft-crispr-forms-ui-option.mjs.map +0 -1
- package/fesm2015/tft-crispr-forms-ui-radio-field.mjs +0 -46
- package/fesm2015/tft-crispr-forms-ui-radio-field.mjs.map +0 -1
- package/fesm2015/tft-crispr-forms-ui-select-field.mjs +0 -81
- package/fesm2015/tft-crispr-forms-ui-select-field.mjs.map +0 -1
- package/fesm2015/tft-crispr-forms-ui-selected-file.mjs +0 -33
- package/fesm2015/tft-crispr-forms-ui-selected-file.mjs.map +0 -1
- package/fesm2015/tft-crispr-forms-ui-slider-field.mjs +0 -51
- package/fesm2015/tft-crispr-forms-ui-slider-field.mjs.map +0 -1
- package/fesm2015/tft-crispr-forms-ui-textarea-field.mjs +0 -49
- package/fesm2015/tft-crispr-forms-ui-textarea-field.mjs.map +0 -1
- package/fesm2015/tft-crispr-forms-ui-unit-conversion-field.mjs +0 -93
- package/fesm2015/tft-crispr-forms-ui-unit-conversion-field.mjs.map +0 -1
- package/fesm2015/tft-crispr-forms-ui.mjs +0 -12
- package/fesm2015/tft-crispr-forms-ui.mjs.map +0 -1
- package/fesm2015/tft-crispr-forms-utils.mjs +0 -280
- package/fesm2015/tft-crispr-forms-utils.mjs.map +0 -1
- package/fesm2015/tft-crispr-forms.mjs +0 -438
- package/fesm2015/tft-crispr-forms.mjs.map +0 -1
- package/fesm2020/tft-crispr-forms-ui-autocomplete-chiplist-field.mjs +0 -137
- package/fesm2020/tft-crispr-forms-ui-autocomplete-chiplist-field.mjs.map +0 -1
- package/fesm2020/tft-crispr-forms-ui-autocomplete-field.mjs +0 -100
- package/fesm2020/tft-crispr-forms-ui-autocomplete-field.mjs.map +0 -1
- package/fesm2020/tft-crispr-forms-ui-button.mjs +0 -55
- package/fesm2020/tft-crispr-forms-ui-button.mjs.map +0 -1
- package/fesm2020/tft-crispr-forms-ui-checkbox-field.mjs +0 -49
- package/fesm2020/tft-crispr-forms-ui-checkbox-field.mjs.map +0 -1
- package/fesm2020/tft-crispr-forms-ui-datepicker-field.mjs +0 -70
- package/fesm2020/tft-crispr-forms-ui-datepicker-field.mjs.map +0 -1
- package/fesm2020/tft-crispr-forms-ui-divider.mjs +0 -34
- package/fesm2020/tft-crispr-forms-ui-divider.mjs.map +0 -1
- package/fesm2020/tft-crispr-forms-ui-field-container.mjs +0 -65
- package/fesm2020/tft-crispr-forms-ui-field-container.mjs.map +0 -1
- package/fesm2020/tft-crispr-forms-ui-file-dropzone.mjs +0 -47
- package/fesm2020/tft-crispr-forms-ui-file-dropzone.mjs.map +0 -1
- package/fesm2020/tft-crispr-forms-ui-file-upload-field.mjs +0 -115
- package/fesm2020/tft-crispr-forms-ui-file-upload-field.mjs.map +0 -1
- package/fesm2020/tft-crispr-forms-ui-heading.mjs +0 -37
- package/fesm2020/tft-crispr-forms-ui-heading.mjs.map +0 -1
- package/fesm2020/tft-crispr-forms-ui-image-upload-field.mjs.map +0 -1
- package/fesm2020/tft-crispr-forms-ui-info.mjs +0 -30
- package/fesm2020/tft-crispr-forms-ui-info.mjs.map +0 -1
- package/fesm2020/tft-crispr-forms-ui-input-field.mjs +0 -48
- package/fesm2020/tft-crispr-forms-ui-input-field.mjs.map +0 -1
- package/fesm2020/tft-crispr-forms-ui-option.mjs +0 -26
- package/fesm2020/tft-crispr-forms-ui-option.mjs.map +0 -1
- package/fesm2020/tft-crispr-forms-ui-radio-field.mjs +0 -46
- package/fesm2020/tft-crispr-forms-ui-radio-field.mjs.map +0 -1
- package/fesm2020/tft-crispr-forms-ui-select-field.mjs +0 -80
- package/fesm2020/tft-crispr-forms-ui-select-field.mjs.map +0 -1
- package/fesm2020/tft-crispr-forms-ui-selected-file.mjs +0 -33
- package/fesm2020/tft-crispr-forms-ui-selected-file.mjs.map +0 -1
- package/fesm2020/tft-crispr-forms-ui-slider-field.mjs +0 -51
- package/fesm2020/tft-crispr-forms-ui-slider-field.mjs.map +0 -1
- package/fesm2020/tft-crispr-forms-ui-textarea-field.mjs +0 -49
- package/fesm2020/tft-crispr-forms-ui-textarea-field.mjs.map +0 -1
- package/fesm2020/tft-crispr-forms-ui-unit-conversion-field.mjs +0 -91
- package/fesm2020/tft-crispr-forms-ui-unit-conversion-field.mjs.map +0 -1
- package/fesm2020/tft-crispr-forms-ui.mjs +0 -12
- package/fesm2020/tft-crispr-forms-ui.mjs.map +0 -1
- package/fesm2020/tft-crispr-forms-utils.mjs.map +0 -1
- package/fesm2020/tft-crispr-forms.mjs +0 -434
- package/fesm2020/tft-crispr-forms.mjs.map +0 -1
- package/tft-crispr-forms-14.0.2.tgz +0 -0
- package/ui/README.md +0 -3
- package/ui/autocomplete-chiplist-field/index.d.ts +0 -5
- package/ui/autocomplete-field/index.d.ts +0 -5
- package/ui/button/index.d.ts +0 -5
- package/ui/checkbox-field/checkbox-field.component.d.ts +0 -21
- package/ui/checkbox-field/index.d.ts +0 -5
- package/ui/datepicker-field/index.d.ts +0 -5
- package/ui/divider/index.d.ts +0 -5
- package/ui/field-container/index.d.ts +0 -5
- package/ui/file-dropzone/index.d.ts +0 -5
- package/ui/file-upload-field/index.d.ts +0 -5
- package/ui/heading/index.d.ts +0 -5
- package/ui/image-upload-field/index.d.ts +0 -5
- package/ui/info/index.d.ts +0 -5
- package/ui/input-field/index.d.ts +0 -5
- package/ui/input-field/input-field.component.d.ts +0 -22
- package/ui/option/index.d.ts +0 -5
- package/ui/public-api.d.ts +0 -5
- package/ui/radio-field/index.d.ts +0 -5
- package/ui/radio-field/radio-field.component.d.ts +0 -23
- package/ui/select-field/index.d.ts +0 -5
- package/ui/selected-file/index.d.ts +0 -5
- package/ui/slider-field/index.d.ts +0 -5
- package/ui/slider-field/slider-field.component.d.ts +0 -25
- package/ui/textarea-field/index.d.ts +0 -5
- package/ui/textarea-field/textarea-field.component.d.ts +0 -21
- package/ui/unit-conversion-field/index.d.ts +0 -5
- package/utils/index.d.ts +0 -5
- /package/{utils → src/lib/utils}/README.md +0 -0
|
@@ -1,30 +1,30 @@
|
|
|
1
|
-
import { FormGroup } from '@angular/forms';
|
|
2
|
-
import { FieldDescriptors, MatFieldProperties, CrisprControlConfig, ControlType } from './crispr-field.config';
|
|
3
|
-
import { OptionsType } from './select-field.config';
|
|
4
|
-
export
|
|
5
|
-
controlType: ControlType.UNIT_CONVERSION;
|
|
6
|
-
/**
|
|
7
|
-
* Used convert config value to displayed value on initialization
|
|
8
|
-
*/
|
|
9
|
-
initialDisplayValueConversion: (value?: ST, displayedUnit?: UT) => number;
|
|
10
|
-
/**
|
|
11
|
-
* The function to convert the display value into the stored value as the display value changes
|
|
12
|
-
*/
|
|
13
|
-
storedValueConversion: (value?: string, displayedUnit?: UT) => number;
|
|
14
|
-
min?: number;
|
|
15
|
-
max?: number;
|
|
16
|
-
autofocus?: boolean;
|
|
17
|
-
step?: number;
|
|
18
|
-
} & ({
|
|
19
|
-
showUnitSelect: true;
|
|
20
|
-
/**
|
|
21
|
-
* A callback function that returns the options to be used by the unit select field. Can be used just like select field options.
|
|
22
|
-
*/
|
|
23
|
-
selectableUnits: (group: FormGroup) => OptionsType;
|
|
24
|
-
/**
|
|
25
|
-
* Display unit to use on component initialization and when unit not user selectable i.e. showUnitSelect: false
|
|
26
|
-
*/
|
|
27
|
-
initialDisplayUnit: UT;
|
|
28
|
-
} | {
|
|
29
|
-
showUnitSelect: false;
|
|
30
|
-
});
|
|
1
|
+
import { FormGroup } from '@angular/forms';
|
|
2
|
+
import { FieldDescriptors, MatFieldProperties, CrisprControlConfig, ControlType } from './crispr-field.config';
|
|
3
|
+
import { OptionsType } from './select-field.config';
|
|
4
|
+
export type UnitConversionFieldConfig<ST = unknown, UT = unknown> = CrisprControlConfig & FieldDescriptors & MatFieldProperties & {
|
|
5
|
+
controlType: ControlType.UNIT_CONVERSION;
|
|
6
|
+
/**
|
|
7
|
+
* Used convert config value to displayed value on initialization
|
|
8
|
+
*/
|
|
9
|
+
initialDisplayValueConversion: (value?: ST, displayedUnit?: UT) => number;
|
|
10
|
+
/**
|
|
11
|
+
* The function to convert the display value into the stored value as the display value changes
|
|
12
|
+
*/
|
|
13
|
+
storedValueConversion: (value?: string, displayedUnit?: UT) => number;
|
|
14
|
+
min?: number;
|
|
15
|
+
max?: number;
|
|
16
|
+
autofocus?: boolean;
|
|
17
|
+
step?: number;
|
|
18
|
+
} & ({
|
|
19
|
+
showUnitSelect: true;
|
|
20
|
+
/**
|
|
21
|
+
* A callback function that returns the options to be used by the unit select field. Can be used just like select field options.
|
|
22
|
+
*/
|
|
23
|
+
selectableUnits: (group: FormGroup) => OptionsType;
|
|
24
|
+
/**
|
|
25
|
+
* Display unit to use on component initialization and when unit not user selectable i.e. showUnitSelect: false
|
|
26
|
+
*/
|
|
27
|
+
initialDisplayUnit: UT;
|
|
28
|
+
} | {
|
|
29
|
+
showUnitSelect: false;
|
|
30
|
+
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare function valueIn(values: string[]): import("rxjs").OperatorFunction<string, boolean>;
|
|
1
|
+
export declare function valueIn(values: string[]): import("rxjs").OperatorFunction<string, boolean>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export * from './form.operators';
|
|
1
|
+
export * from './form.operators';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export * from './operators';
|
|
2
|
-
export * from './models';
|
|
3
|
-
export * from './abstracts';
|
|
4
|
-
export * from './functions';
|
|
1
|
+
export * from './operators';
|
|
2
|
+
export * from './models';
|
|
3
|
+
export * from './abstracts';
|
|
4
|
+
export * from './functions';
|
|
Binary file
|
package/esm2020/public-api.mjs
DELETED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
export * from './src/index';
|
|
2
|
-
export * from '@tft/crispr-forms/ui';
|
|
3
|
-
// eslint-disable-next-line @nrwl/nx/enforce-module-boundaries
|
|
4
|
-
export * from '@tft/crispr-forms/utils';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvY3Jpc3ByLWZvcm1zL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyw4REFBOEQ7QUFDOUQsY0FBYyx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc3JjL2luZGV4JztcbmV4cG9ydCAqIGZyb20gJ0B0ZnQvY3Jpc3ByLWZvcm1zL3VpJztcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAbnJ3bC9ueC9lbmZvcmNlLW1vZHVsZS1ib3VuZGFyaWVzXG5leHBvcnQgKiBmcm9tICdAdGZ0L2NyaXNwci1mb3Jtcy91dGlscyc7XG4iXX0=
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
/* eslint-disable @nrwl/nx/enforce-module-boundaries */
|
|
2
|
-
import { NgModule } from '@angular/core';
|
|
3
|
-
import { CommonModule } from '@angular/common';
|
|
4
|
-
import { ReactiveFormsModule } from '@angular/forms';
|
|
5
|
-
// custom modules
|
|
6
|
-
import { FormValidationHandlerModule } from '@tft/form-validation-handler';
|
|
7
|
-
// components
|
|
8
|
-
import { CrisprFormComponent } from './form/form.component';
|
|
9
|
-
import { FormGroupListComponent } from './form-group-list';
|
|
10
|
-
// directives
|
|
11
|
-
import { CrisprFieldDirective } from './field.directive';
|
|
12
|
-
import { SubGroupModule } from './sub-group';
|
|
13
|
-
import { CrisprPipesModule } from './pipes/crispr-pipes.module';
|
|
14
|
-
import { FieldContainerComponent } from '@tft/crispr-forms/ui';
|
|
15
|
-
import { CrisprDisplayFieldDirective } from './display-field.directive';
|
|
16
|
-
import * as i0 from "@angular/core";
|
|
17
|
-
export class CrisprFormsModule {
|
|
18
|
-
}
|
|
19
|
-
CrisprFormsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: CrisprFormsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
20
|
-
CrisprFormsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.1", ngImport: i0, type: CrisprFormsModule, imports: [CommonModule,
|
|
21
|
-
ReactiveFormsModule,
|
|
22
|
-
FormValidationHandlerModule,
|
|
23
|
-
FormGroupListComponent,
|
|
24
|
-
FieldContainerComponent,
|
|
25
|
-
CrisprFieldDirective,
|
|
26
|
-
CrisprDisplayFieldDirective,
|
|
27
|
-
SubGroupModule,
|
|
28
|
-
CrisprPipesModule,
|
|
29
|
-
CrisprFormComponent], exports: [CrisprFormComponent,
|
|
30
|
-
FieldContainerComponent] });
|
|
31
|
-
CrisprFormsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: CrisprFormsModule, imports: [CommonModule,
|
|
32
|
-
ReactiveFormsModule,
|
|
33
|
-
FormValidationHandlerModule,
|
|
34
|
-
FormGroupListComponent,
|
|
35
|
-
FieldContainerComponent,
|
|
36
|
-
SubGroupModule,
|
|
37
|
-
CrisprPipesModule,
|
|
38
|
-
CrisprFormComponent] });
|
|
39
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: CrisprFormsModule, decorators: [{
|
|
40
|
-
type: NgModule,
|
|
41
|
-
args: [{
|
|
42
|
-
imports: [
|
|
43
|
-
CommonModule,
|
|
44
|
-
ReactiveFormsModule,
|
|
45
|
-
FormValidationHandlerModule,
|
|
46
|
-
FormGroupListComponent,
|
|
47
|
-
FieldContainerComponent,
|
|
48
|
-
CrisprFieldDirective,
|
|
49
|
-
CrisprDisplayFieldDirective,
|
|
50
|
-
SubGroupModule,
|
|
51
|
-
CrisprPipesModule,
|
|
52
|
-
CrisprFormComponent
|
|
53
|
-
],
|
|
54
|
-
exports: [
|
|
55
|
-
CrisprFormComponent,
|
|
56
|
-
FieldContainerComponent,
|
|
57
|
-
]
|
|
58
|
-
}]
|
|
59
|
-
}] });
|
|
60
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3Jpc3ByLWZvcm1zLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY3Jpc3ByLWZvcm1zL3NyYy9saWIvY3Jpc3ByLWZvcm1zLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx1REFBdUQ7QUFDdkQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckQsaUJBQWlCO0FBQ2pCLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRTNFLGFBQWE7QUFDYixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMzRCxhQUFhO0FBQ2IsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDekQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM3QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7QUFvQnhFLE1BQU0sT0FBTyxpQkFBaUI7OzhHQUFqQixpQkFBaUI7K0dBQWpCLGlCQUFpQixZQWhCMUIsWUFBWTtRQUNaLG1CQUFtQjtRQUNuQiwyQkFBMkI7UUFDM0Isc0JBQXNCO1FBQ3RCLHVCQUF1QjtRQUN2QixvQkFBb0I7UUFDcEIsMkJBQTJCO1FBQzNCLGNBQWM7UUFDZCxpQkFBaUI7UUFDakIsbUJBQW1CLGFBR25CLG1CQUFtQjtRQUNuQix1QkFBdUI7K0dBR2QsaUJBQWlCLFlBaEIxQixZQUFZO1FBQ1osbUJBQW1CO1FBQ25CLDJCQUEyQjtRQUMzQixzQkFBc0I7UUFDdEIsdUJBQXVCO1FBR3ZCLGNBQWM7UUFDZCxpQkFBaUI7UUFDakIsbUJBQW1COzJGQU9WLGlCQUFpQjtrQkFsQjdCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osbUJBQW1CO3dCQUNuQiwyQkFBMkI7d0JBQzNCLHNCQUFzQjt3QkFDdEIsdUJBQXVCO3dCQUN2QixvQkFBb0I7d0JBQ3BCLDJCQUEyQjt3QkFDM0IsY0FBYzt3QkFDZCxpQkFBaUI7d0JBQ2pCLG1CQUFtQjtxQkFDcEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLG1CQUFtQjt3QkFDbkIsdUJBQXVCO3FCQUN4QjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEBucndsL254L2VuZm9yY2UtbW9kdWxlLWJvdW5kYXJpZXMgKi9cbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbi8vIGN1c3RvbSBtb2R1bGVzXG5pbXBvcnQgeyBGb3JtVmFsaWRhdGlvbkhhbmRsZXJNb2R1bGUgfSBmcm9tICdAdGZ0L2Zvcm0tdmFsaWRhdGlvbi1oYW5kbGVyJztcblxuLy8gY29tcG9uZW50c1xuaW1wb3J0IHsgQ3Jpc3ByRm9ybUNvbXBvbmVudCB9IGZyb20gJy4vZm9ybS9mb3JtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb3JtR3JvdXBMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9mb3JtLWdyb3VwLWxpc3QnO1xuLy8gZGlyZWN0aXZlc1xuaW1wb3J0IHsgQ3Jpc3ByRmllbGREaXJlY3RpdmUgfSBmcm9tICcuL2ZpZWxkLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBTdWJHcm91cE1vZHVsZSB9IGZyb20gJy4vc3ViLWdyb3VwJztcbmltcG9ydCB7IENyaXNwclBpcGVzTW9kdWxlIH0gZnJvbSAnLi9waXBlcy9jcmlzcHItcGlwZXMubW9kdWxlJztcbmltcG9ydCB7IEZpZWxkQ29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnQHRmdC9jcmlzcHItZm9ybXMvdWknO1xuaW1wb3J0IHsgQ3Jpc3ByRGlzcGxheUZpZWxkRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXNwbGF5LWZpZWxkLmRpcmVjdGl2ZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBGb3JtVmFsaWRhdGlvbkhhbmRsZXJNb2R1bGUsXG4gICAgRm9ybUdyb3VwTGlzdENvbXBvbmVudCxcbiAgICBGaWVsZENvbnRhaW5lckNvbXBvbmVudCxcbiAgICBDcmlzcHJGaWVsZERpcmVjdGl2ZSxcbiAgICBDcmlzcHJEaXNwbGF5RmllbGREaXJlY3RpdmUsXG4gICAgU3ViR3JvdXBNb2R1bGUsXG4gICAgQ3Jpc3ByUGlwZXNNb2R1bGUsXG4gICAgQ3Jpc3ByRm9ybUNvbXBvbmVudFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgQ3Jpc3ByRm9ybUNvbXBvbmVudCxcbiAgICBGaWVsZENvbnRhaW5lckNvbXBvbmVudCxcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBDcmlzcHJGb3Jtc01vZHVsZSB7IH1cbiJdfQ==
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import { Directive, Input, ViewContainerRef, ChangeDetectorRef, Type } from '@angular/core';
|
|
2
|
-
import { FormGroup } from '@angular/forms';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export class CrisprDisplayFieldDirective {
|
|
5
|
-
constructor(container, cdr) {
|
|
6
|
-
this.container = container;
|
|
7
|
-
this.cdr = cdr;
|
|
8
|
-
}
|
|
9
|
-
set value(value) {
|
|
10
|
-
this._value = value;
|
|
11
|
-
// This is needed to keep the group list from resetting control values to the initial input value
|
|
12
|
-
this.updateComponentValue(value);
|
|
13
|
-
}
|
|
14
|
-
;
|
|
15
|
-
get value() {
|
|
16
|
-
return this._value;
|
|
17
|
-
}
|
|
18
|
-
async ngOnInit() {
|
|
19
|
-
if (this.component) {
|
|
20
|
-
/**
|
|
21
|
-
* create component and set values from config on its instance
|
|
22
|
-
*/
|
|
23
|
-
const componentRef = this.container.createComponent(this.component);
|
|
24
|
-
this.componentInstance = componentRef.instance;
|
|
25
|
-
this.componentInstance.index = this.index;
|
|
26
|
-
this.updateComponentValue(this.value);
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
updateComponentValue(value) {
|
|
30
|
-
if (!this.componentInstance)
|
|
31
|
-
return;
|
|
32
|
-
this.componentInstance.value = value;
|
|
33
|
-
this.cdr.detectChanges();
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
CrisprDisplayFieldDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: CrisprDisplayFieldDirective, deps: [{ token: i0.ViewContainerRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
37
|
-
CrisprDisplayFieldDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.1", type: CrisprDisplayFieldDirective, isStandalone: true, selector: "[crisprDisplayField]", inputs: { group: "group", value: "value", component: "component", index: "index" }, ngImport: i0 });
|
|
38
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: CrisprDisplayFieldDirective, decorators: [{
|
|
39
|
-
type: Directive,
|
|
40
|
-
args: [{
|
|
41
|
-
selector: '[crisprDisplayField]',
|
|
42
|
-
standalone: true
|
|
43
|
-
}]
|
|
44
|
-
}], ctorParameters: function () { return [{ type: i0.ViewContainerRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { group: [{
|
|
45
|
-
type: Input
|
|
46
|
-
}], value: [{
|
|
47
|
-
type: Input
|
|
48
|
-
}], component: [{
|
|
49
|
-
type: Input
|
|
50
|
-
}], index: [{
|
|
51
|
-
type: Input
|
|
52
|
-
}] } });
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlzcGxheS1maWVsZC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NyaXNwci1mb3Jtcy9zcmMvbGliL2Rpc3BsYXktZmllbGQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLGdCQUFnQixFQUFVLGlCQUFpQixFQUFFLElBQUksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwRyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBUTNDLE1BQU0sT0FBTywyQkFBMkI7SUFzQnRDLFlBQ1UsU0FBMkIsRUFDM0IsR0FBc0I7UUFEdEIsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFDM0IsUUFBRyxHQUFILEdBQUcsQ0FBbUI7SUFDN0IsQ0FBQztJQWxCSixJQUFhLEtBQUssQ0FBQyxLQUEyQjtRQUM1QyxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNwQixpR0FBaUc7UUFDakcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFBQSxDQUFDO0lBQ0YsSUFBSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFhRCxLQUFLLENBQUMsUUFBUTtRQUNaLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUVsQjs7ZUFFRztZQUNILE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUVwRSxJQUFJLENBQUMsaUJBQWlCLEdBQUcsWUFBWSxDQUFDLFFBQVEsQ0FBQztZQUMvQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUE7WUFDekMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUN2QztJQUNILENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxLQUEyQjtRQUM5QyxJQUFHLENBQUMsSUFBSSxDQUFDLGlCQUFpQjtZQUFFLE9BQU87UUFDbkMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDckMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUMzQixDQUFDOzt3SEE3Q1UsMkJBQTJCOzRHQUEzQiwyQkFBMkI7MkZBQTNCLDJCQUEyQjtrQkFKdkMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsc0JBQXNCO29CQUNoQyxVQUFVLEVBQUUsSUFBSTtpQkFDakI7dUlBR1UsS0FBSztzQkFBYixLQUFLO2dCQUtPLEtBQUs7c0JBQWpCLEtBQUs7Z0JBU1csU0FBUztzQkFBekIsS0FBSztnQkFFRyxLQUFLO3NCQUFiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIElucHV0LCBWaWV3Q29udGFpbmVyUmVmLCBPbkluaXQsIENoYW5nZURldGVjdG9yUmVmLCBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQG5yd2wvbngvZW5mb3JjZS1tb2R1bGUtYm91bmRhcmllc1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlLCBDcmlzcHJEaXNwbGF5RmllbGRDb21wb25lbnQgfSBmcm9tICdAdGZ0L2NyaXNwci1mb3Jtcy91dGlscyc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tjcmlzcHJEaXNwbGF5RmllbGRdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBDcmlzcHJEaXNwbGF5RmllbGREaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIEBJbnB1dCgpIGdyb3VwOiBGb3JtR3JvdXA7XG4gIC8qKlxuICAgKiB2YWx1ZSBzZXR0ZXIgdXBkYXRlcyB0aGUgY29udHJvbCdzIHZhbHVlIGFzIHdlbGxcbiAgICovXG4gIF92YWx1ZTogQ29udHJvbFZhbHVlIHwgYW55W11cbiAgQElucHV0KCkgc2V0IHZhbHVlKHZhbHVlOiBDb250cm9sVmFsdWUgfCBhbnlbXSkge1xuICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG4gICAgLy8gVGhpcyBpcyBuZWVkZWQgdG8ga2VlcCB0aGUgZ3JvdXAgbGlzdCBmcm9tIHJlc2V0dGluZyBjb250cm9sIHZhbHVlcyB0byB0aGUgaW5pdGlhbCBpbnB1dCB2YWx1ZVxuICAgIHRoaXMudXBkYXRlQ29tcG9uZW50VmFsdWUodmFsdWUpO1xuICB9O1xuICBnZXQgdmFsdWUoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlO1xuICB9XG5cbiAgQElucHV0KCkgcHJpdmF0ZSBjb21wb25lbnQ6IFR5cGU8Q3Jpc3ByRGlzcGxheUZpZWxkQ29tcG9uZW50PjtcblxuICBASW5wdXQoKSBpbmRleD86IG51bWJlcjtcblxuICBwcml2YXRlIGNvbXBvbmVudEluc3RhbmNlOiBDcmlzcHJEaXNwbGF5RmllbGRDb21wb25lbnQ7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBjb250YWluZXI6IFZpZXdDb250YWluZXJSZWYsXG4gICAgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmXG4gICkge31cblxuICBhc3luYyBuZ09uSW5pdCgpIHtcbiAgICBpZiAodGhpcy5jb21wb25lbnQpIHtcblxuICAgICAgLyoqXG4gICAgICAgKiBjcmVhdGUgY29tcG9uZW50IGFuZCBzZXQgdmFsdWVzIGZyb20gY29uZmlnIG9uIGl0cyBpbnN0YW5jZVxuICAgICAgICovXG4gICAgICBjb25zdCBjb21wb25lbnRSZWYgPSB0aGlzLmNvbnRhaW5lci5jcmVhdGVDb21wb25lbnQodGhpcy5jb21wb25lbnQpO1xuXG4gICAgICB0aGlzLmNvbXBvbmVudEluc3RhbmNlID0gY29tcG9uZW50UmVmLmluc3RhbmNlO1xuICAgICAgdGhpcy5jb21wb25lbnRJbnN0YW5jZS5pbmRleCA9IHRoaXMuaW5kZXhcbiAgICAgIHRoaXMudXBkYXRlQ29tcG9uZW50VmFsdWUodGhpcy52YWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgdXBkYXRlQ29tcG9uZW50VmFsdWUodmFsdWU6IENvbnRyb2xWYWx1ZSB8IGFueVtdKSB7XG4gICAgaWYoIXRoaXMuY29tcG9uZW50SW5zdGFuY2UpIHJldHVybjtcbiAgICB0aGlzLmNvbXBvbmVudEluc3RhbmNlLnZhbHVlID0gdmFsdWU7XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG59XG4iXX0=
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { isControlConfig, ControlType } from '@tft/crispr-forms/utils';
|
|
2
|
-
export const FIELD_COMPONENTS = {
|
|
3
|
-
groupList: () => import('./form-group-list').then(({ FormGroupListComponent }) => FormGroupListComponent),
|
|
4
|
-
subGroup: () => import('./sub-group').then(({ SubGroupComponent }) => SubGroupComponent),
|
|
5
|
-
button: () => import('@tft/crispr-forms/ui/button').then(({ ButtonComponent }) => ButtonComponent),
|
|
6
|
-
input: () => import('@tft/crispr-forms/ui/input-field').then(({ InputFieldComponent }) => InputFieldComponent),
|
|
7
|
-
select: () => import('@tft/crispr-forms/ui/select-field').then(({ SelectFieldComponent }) => SelectFieldComponent),
|
|
8
|
-
radio: () => import('@tft/crispr-forms/ui/radio-field').then(({ RadioFieldComponent }) => RadioFieldComponent),
|
|
9
|
-
autocomplete: () => import('@tft/crispr-forms/ui/autocomplete-field').then(({ AutocompleteFieldComponent }) => AutocompleteFieldComponent),
|
|
10
|
-
autocompleteChiplist: () => import('@tft/crispr-forms/ui/autocomplete-chiplist-field').then(({ AutocompleteChiplistFieldComponent }) => AutocompleteChiplistFieldComponent),
|
|
11
|
-
textarea: () => import('@tft/crispr-forms/ui/textarea-field').then(({ TextareaFieldComponent }) => TextareaFieldComponent),
|
|
12
|
-
checkbox: () => import('@tft/crispr-forms/ui/checkbox-field').then(({ CheckboxFieldComponent }) => CheckboxFieldComponent),
|
|
13
|
-
slider: () => import('@tft/crispr-forms/ui/slider-field').then(({ SliderFieldComponent }) => SliderFieldComponent),
|
|
14
|
-
datepicker: () => import('@tft/crispr-forms/ui/datepicker-field').then(({ DatepickerFieldComponent }) => DatepickerFieldComponent),
|
|
15
|
-
fileUpload: () => import('@tft/crispr-forms/ui/file-upload-field').then(({ FileUploadFieldComponent }) => FileUploadFieldComponent),
|
|
16
|
-
imageUpload: () => import('@tft/crispr-forms/ui/image-upload-field').then(({ ImageUploadFieldComponent }) => ImageUploadFieldComponent),
|
|
17
|
-
heading: () => import('@tft/crispr-forms/ui').then(({ HeadingComponent }) => HeadingComponent),
|
|
18
|
-
divider: () => import('@tft/crispr-forms/ui/divider').then(({ DividerComponent }) => DividerComponent),
|
|
19
|
-
unitConversion: () => import('@tft/crispr-forms/ui/unit-conversion-field').then(({ UnitConversionFieldComponent }) => UnitConversionFieldComponent)
|
|
20
|
-
};
|
|
21
|
-
export function isControlComponent(component) {
|
|
22
|
-
return component && isControlConfig(component.config) && 'value' in component; // || component.config.controlType === ControlType.BUTTON;
|
|
23
|
-
}
|
|
24
|
-
export function isControlOrButtonComponent(component) {
|
|
25
|
-
return isControlComponent(component) || component.config.controlType === ControlType.BUTTON;
|
|
26
|
-
}
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtY29tcG9uZW50LW1hcC5jb25zdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY3Jpc3ByLWZvcm1zL3NyYy9saWIvZmllbGQtY29tcG9uZW50LW1hcC5jb25zdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFxQkEsT0FBTyxFQUFFLGVBQWUsRUFBRSxXQUFXLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV2RSxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRztJQUM5QixTQUFTLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUMsSUFBSSxDQUFFLENBQUMsRUFBQyxzQkFBc0IsRUFBQyxFQUFFLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztJQUN4RyxRQUFRLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsaUJBQWlCLEVBQUMsRUFBRSxFQUFFLENBQUUsaUJBQWlCLENBQUM7SUFDeEYsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsZUFBZSxFQUFDLEVBQUUsRUFBRSxDQUFFLGVBQWUsQ0FBQztJQUNsRyxLQUFLLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLGtDQUFrQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxtQkFBbUIsRUFBQyxFQUFFLEVBQUUsQ0FBRSxtQkFBbUIsQ0FBQztJQUM5RyxNQUFNLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLG1DQUFtQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxvQkFBb0IsRUFBQyxFQUFFLEVBQUUsQ0FBRSxvQkFBb0IsQ0FBQztJQUNsSCxLQUFLLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLGtDQUFrQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxtQkFBbUIsRUFBQyxFQUFFLEVBQUUsQ0FBRSxtQkFBbUIsQ0FBQztJQUM5RyxZQUFZLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLHlDQUF5QyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSwwQkFBMEIsRUFBQyxFQUFFLEVBQUUsQ0FBRSwwQkFBMEIsQ0FBQztJQUMxSSxvQkFBb0IsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsa0RBQWtELENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLGtDQUFrQyxFQUFDLEVBQUUsRUFBRSxDQUFFLGtDQUFrQyxDQUFDO0lBQzNLLFFBQVEsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMscUNBQXFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLHNCQUFzQixFQUFDLEVBQUUsRUFBRSxDQUFFLHNCQUFzQixDQUFDO0lBQzFILFFBQVEsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMscUNBQXFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLHNCQUFzQixFQUFDLEVBQUUsRUFBRSxDQUFFLHNCQUFzQixDQUFDO0lBQzFILE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsbUNBQW1DLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLG9CQUFvQixFQUFDLEVBQUUsRUFBRSxDQUFFLG9CQUFvQixDQUFDO0lBQ2xILFVBQVUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsdUNBQXVDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLHdCQUF3QixFQUFDLEVBQUUsRUFBRSxDQUFFLHdCQUF3QixDQUFDO0lBQ2xJLFVBQVUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsd0NBQXdDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLHdCQUF3QixFQUFDLEVBQUUsRUFBRSxDQUFFLHdCQUF3QixDQUFDO0lBQ25JLFdBQVcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMseUNBQXlDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLHlCQUF5QixFQUFDLEVBQUUsRUFBRSxDQUFFLHlCQUF5QixDQUFDO0lBQ3ZJLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLGdCQUFnQixFQUFDLEVBQUUsRUFBRSxDQUFFLGdCQUFnQixDQUFDO0lBQzlGLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsOEJBQThCLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLGdCQUFnQixFQUFDLEVBQUUsRUFBRSxDQUFFLGdCQUFnQixDQUFDO0lBQ3RHLGNBQWMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsNENBQTRDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFLDRCQUE0QixFQUFDLEVBQUUsRUFBRSxDQUFFLDRCQUE0QixDQUFDO0NBQ3BKLENBQUM7QUFFRixNQUFNLFVBQVUsa0JBQWtCLENBQUMsU0FBbUM7SUFDcEUsT0FBTyxTQUFTLElBQUksZUFBZSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxPQUFPLElBQUksU0FBUyxDQUFBLENBQUMsMERBQTBEO0FBQzFJLENBQUM7QUFFRCxNQUFNLFVBQVUsMEJBQTBCLENBQUMsU0FBbUM7SUFDNUUsT0FBTyxrQkFBa0IsQ0FBQyxTQUFTLENBQUMsSUFBSSxTQUFTLENBQUMsTUFBTSxDQUFDLFdBQVcsS0FBSyxXQUFXLENBQUMsTUFBTSxDQUFDO0FBQzlGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAbnJ3bC9ueC9lbmZvcmNlLW1vZHVsZS1ib3VuZGFyaWVzICovXG4vLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IG1heC1saW5lLWxlbmd0aFxuaW1wb3J0IHR5cGUgeyBGb3JtR3JvdXBMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9mb3JtLWdyb3VwLWxpc3QvZm9ybS1ncm91cC1saXN0LmNvbXBvbmVudCc7XG5pbXBvcnQgdHlwZSB7IFN1Ykdyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi9zdWItZ3JvdXAvc3ViLWdyb3VwLmNvbXBvbmVudCc7XG5pbXBvcnQgdHlwZSB7IEhlYWRpbmdDb21wb25lbnQgfSBmcm9tICdAdGZ0L2NyaXNwci1mb3Jtcy91aSc7XG5pbXBvcnQgdHlwZSB7IEltYWdlVXBsb2FkRmllbGRDb21wb25lbnQgfSBmcm9tICdAdGZ0L2NyaXNwci1mb3Jtcy91aS9pbWFnZS11cGxvYWQtZmllbGQnO1xuaW1wb3J0IHR5cGUgeyBEYXRlcGlja2VyRmllbGRDb21wb25lbnQgfSBmcm9tICdAdGZ0L2NyaXNwci1mb3Jtcy91aS9kYXRlcGlja2VyLWZpZWxkJztcbmltcG9ydCB0eXBlIHsgQ2hlY2tib3hGaWVsZENvbXBvbmVudCB9IGZyb20gJ0B0ZnQvY3Jpc3ByLWZvcm1zL3VpL2NoZWNrYm94LWZpZWxkJztcbmltcG9ydCB0eXBlIHsgVGV4dGFyZWFGaWVsZENvbXBvbmVudCB9IGZyb20gJ0B0ZnQvY3Jpc3ByLWZvcm1zL3VpL3RleHRhcmVhLWZpZWxkJztcbmltcG9ydCB0eXBlIHsgQXV0b2NvbXBsZXRlRmllbGRDb21wb25lbnQgfSBmcm9tICdAdGZ0L2NyaXNwci1mb3Jtcy91aS9hdXRvY29tcGxldGUtZmllbGQnO1xuaW1wb3J0IHR5cGUgeyBTZWxlY3RGaWVsZENvbXBvbmVudCB9IGZyb20gJ0B0ZnQvY3Jpc3ByLWZvcm1zL3VpL3NlbGVjdC1maWVsZCc7XG5pbXBvcnQgdHlwZSB7IElucHV0RmllbGRDb21wb25lbnQsIH0gZnJvbSAnQHRmdC9jcmlzcHItZm9ybXMvdWkvaW5wdXQtZmllbGQnO1xuaW1wb3J0IHR5cGUgeyBSYWRpb0ZpZWxkQ29tcG9uZW50IH0gZnJvbSAnQHRmdC9jcmlzcHItZm9ybXMvdWkvcmFkaW8tZmllbGQnO1xuaW1wb3J0IHR5cGUgeyBGaWxlVXBsb2FkRmllbGRDb21wb25lbnQgfSBmcm9tICdAdGZ0L2NyaXNwci1mb3Jtcy91aS9maWxlLXVwbG9hZC1maWVsZCc7XG5pbXBvcnQgdHlwZSB7IFNsaWRlckZpZWxkQ29tcG9uZW50IH0gZnJvbSAnQHRmdC9jcmlzcHItZm9ybXMvdWkvc2xpZGVyLWZpZWxkJztcbmltcG9ydCB0eXBlIHsgRGl2aWRlckNvbXBvbmVudCB9IGZyb20gJ0B0ZnQvY3Jpc3ByLWZvcm1zL3VpL2RpdmlkZXInO1xuaW1wb3J0IHR5cGUgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICdAdGZ0L2NyaXNwci1mb3Jtcy91aS9idXR0b24nO1xuaW1wb3J0IHR5cGUgeyBVbml0Q29udmVyc2lvbkZpZWxkQ29tcG9uZW50IH0gZnJvbSAnQHRmdC9jcmlzcHItZm9ybXMvdWkvdW5pdC1jb252ZXJzaW9uLWZpZWxkJztcblxuaW1wb3J0IHR5cGUgeyBBdXRvY29tcGxldGVDaGlwbGlzdEZpZWxkQ29tcG9uZW50IH0gZnJvbSAnQHRmdC9jcmlzcHItZm9ybXMvdWkvYXV0b2NvbXBsZXRlLWNoaXBsaXN0LWZpZWxkJztcblxuaW1wb3J0IHsgaXNDb250cm9sQ29uZmlnLCBDb250cm9sVHlwZSB9IGZyb20gJ0B0ZnQvY3Jpc3ByLWZvcm1zL3V0aWxzJztcblxuZXhwb3J0IGNvbnN0IEZJRUxEX0NPTVBPTkVOVFMgPSB7XG4gIGdyb3VwTGlzdDogKCkgPT4gaW1wb3J0KCcuL2Zvcm0tZ3JvdXAtbGlzdCcpLnRoZW4gKCh7Rm9ybUdyb3VwTGlzdENvbXBvbmVudH0pID0+IEZvcm1Hcm91cExpc3RDb21wb25lbnQpLFxuICBzdWJHcm91cDogKCkgPT4gaW1wb3J0KCcuL3N1Yi1ncm91cCcpLnRoZW4oKHsgU3ViR3JvdXBDb21wb25lbnR9KSA9PiAgU3ViR3JvdXBDb21wb25lbnQpLFxuICBidXR0b246ICgpID0+IGltcG9ydCgnQHRmdC9jcmlzcHItZm9ybXMvdWkvYnV0dG9uJykudGhlbigoeyBCdXR0b25Db21wb25lbnR9KSA9PiAgQnV0dG9uQ29tcG9uZW50KSxcbiAgaW5wdXQ6ICgpID0+IGltcG9ydCgnQHRmdC9jcmlzcHItZm9ybXMvdWkvaW5wdXQtZmllbGQnKS50aGVuKCh7IElucHV0RmllbGRDb21wb25lbnR9KSA9PiAgSW5wdXRGaWVsZENvbXBvbmVudCksXG4gIHNlbGVjdDogKCkgPT4gaW1wb3J0KCdAdGZ0L2NyaXNwci1mb3Jtcy91aS9zZWxlY3QtZmllbGQnKS50aGVuKCh7IFNlbGVjdEZpZWxkQ29tcG9uZW50fSkgPT4gIFNlbGVjdEZpZWxkQ29tcG9uZW50KSxcbiAgcmFkaW86ICgpID0+IGltcG9ydCgnQHRmdC9jcmlzcHItZm9ybXMvdWkvcmFkaW8tZmllbGQnKS50aGVuKCh7IFJhZGlvRmllbGRDb21wb25lbnR9KSA9PiAgUmFkaW9GaWVsZENvbXBvbmVudCksXG4gIGF1dG9jb21wbGV0ZTogKCkgPT4gaW1wb3J0KCdAdGZ0L2NyaXNwci1mb3Jtcy91aS9hdXRvY29tcGxldGUtZmllbGQnKS50aGVuKCh7IEF1dG9jb21wbGV0ZUZpZWxkQ29tcG9uZW50fSkgPT4gIEF1dG9jb21wbGV0ZUZpZWxkQ29tcG9uZW50KSxcbiAgYXV0b2NvbXBsZXRlQ2hpcGxpc3Q6ICgpID0+IGltcG9ydCgnQHRmdC9jcmlzcHItZm9ybXMvdWkvYXV0b2NvbXBsZXRlLWNoaXBsaXN0LWZpZWxkJykudGhlbigoeyBBdXRvY29tcGxldGVDaGlwbGlzdEZpZWxkQ29tcG9uZW50fSkgPT4gIEF1dG9jb21wbGV0ZUNoaXBsaXN0RmllbGRDb21wb25lbnQpLFxuICB0ZXh0YXJlYTogKCkgPT4gaW1wb3J0KCdAdGZ0L2NyaXNwci1mb3Jtcy91aS90ZXh0YXJlYS1maWVsZCcpLnRoZW4oKHsgVGV4dGFyZWFGaWVsZENvbXBvbmVudH0pID0+ICBUZXh0YXJlYUZpZWxkQ29tcG9uZW50KSxcbiAgY2hlY2tib3g6ICgpID0+IGltcG9ydCgnQHRmdC9jcmlzcHItZm9ybXMvdWkvY2hlY2tib3gtZmllbGQnKS50aGVuKCh7IENoZWNrYm94RmllbGRDb21wb25lbnR9KSA9PiAgQ2hlY2tib3hGaWVsZENvbXBvbmVudCksXG4gIHNsaWRlcjogKCkgPT4gaW1wb3J0KCdAdGZ0L2NyaXNwci1mb3Jtcy91aS9zbGlkZXItZmllbGQnKS50aGVuKCh7IFNsaWRlckZpZWxkQ29tcG9uZW50fSkgPT4gIFNsaWRlckZpZWxkQ29tcG9uZW50KSxcbiAgZGF0ZXBpY2tlcjogKCkgPT4gaW1wb3J0KCdAdGZ0L2NyaXNwci1mb3Jtcy91aS9kYXRlcGlja2VyLWZpZWxkJykudGhlbigoeyBEYXRlcGlja2VyRmllbGRDb21wb25lbnR9KSA9PiAgRGF0ZXBpY2tlckZpZWxkQ29tcG9uZW50KSxcbiAgZmlsZVVwbG9hZDogKCkgPT4gaW1wb3J0KCdAdGZ0L2NyaXNwci1mb3Jtcy91aS9maWxlLXVwbG9hZC1maWVsZCcpLnRoZW4oKHsgRmlsZVVwbG9hZEZpZWxkQ29tcG9uZW50fSkgPT4gIEZpbGVVcGxvYWRGaWVsZENvbXBvbmVudCksXG4gIGltYWdlVXBsb2FkOiAoKSA9PiBpbXBvcnQoJ0B0ZnQvY3Jpc3ByLWZvcm1zL3VpL2ltYWdlLXVwbG9hZC1maWVsZCcpLnRoZW4oKHsgSW1hZ2VVcGxvYWRGaWVsZENvbXBvbmVudH0pID0+ICBJbWFnZVVwbG9hZEZpZWxkQ29tcG9uZW50KSxcbiAgaGVhZGluZzogKCkgPT4gaW1wb3J0KCdAdGZ0L2NyaXNwci1mb3Jtcy91aScpLnRoZW4oKHsgSGVhZGluZ0NvbXBvbmVudH0pID0+ICBIZWFkaW5nQ29tcG9uZW50KSxcbiAgZGl2aWRlcjogKCkgPT4gaW1wb3J0KCdAdGZ0L2NyaXNwci1mb3Jtcy91aS9kaXZpZGVyJykudGhlbigoeyBEaXZpZGVyQ29tcG9uZW50fSkgPT4gIERpdmlkZXJDb21wb25lbnQpLFxuICB1bml0Q29udmVyc2lvbjogKCkgPT4gaW1wb3J0KCdAdGZ0L2NyaXNwci1mb3Jtcy91aS91bml0LWNvbnZlcnNpb24tZmllbGQnKS50aGVuKCh7IFVuaXRDb252ZXJzaW9uRmllbGRDb21wb25lbnR9KSA9PiAgVW5pdENvbnZlcnNpb25GaWVsZENvbXBvbmVudClcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0NvbnRyb2xDb21wb25lbnQoY29tcG9uZW50OiBDcmlzcHJGaWVsZENvbXBvbmVudFR5cGUpOiBjb21wb25lbnQgaXMgQ3Jpc3ByQ29udHJvbENvbXBvbmVudFR5cGUge1xuICByZXR1cm4gY29tcG9uZW50ICYmIGlzQ29udHJvbENvbmZpZyhjb21wb25lbnQuY29uZmlnKSAmJiAndmFsdWUnIGluIGNvbXBvbmVudCAvLyB8fCBjb21wb25lbnQuY29uZmlnLmNvbnRyb2xUeXBlID09PSBDb250cm9sVHlwZS5CVVRUT047XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0NvbnRyb2xPckJ1dHRvbkNvbXBvbmVudChjb21wb25lbnQ6IENyaXNwckZpZWxkQ29tcG9uZW50VHlwZSk6IGNvbXBvbmVudCBpcyBDcmlzcHJDb250cm9sT3JCdXR0b24ge1xuICByZXR1cm4gaXNDb250cm9sQ29tcG9uZW50KGNvbXBvbmVudCkgfHwgY29tcG9uZW50LmNvbmZpZy5jb250cm9sVHlwZSA9PT0gQ29udHJvbFR5cGUuQlVUVE9OO1xufVxuXG5leHBvcnQgdHlwZSBDcmlzcHJDb250cm9sT3JCdXR0b24gPSBDcmlzcHJDb250cm9sQ29tcG9uZW50VHlwZSB8IEJ1dHRvbkNvbXBvbmVudDtcblxuZXhwb3J0IHR5cGUgQ3Jpc3ByQ29udHJvbENvbXBvbmVudFR5cGUgPSBJbnB1dEZpZWxkQ29tcG9uZW50IHxcbiAgU2VsZWN0RmllbGRDb21wb25lbnQgfFxuICBSYWRpb0ZpZWxkQ29tcG9uZW50IHxcbiAgU3ViR3JvdXBDb21wb25lbnQgfFxuICBGb3JtR3JvdXBMaXN0Q29tcG9uZW50IHxcbiAgQXV0b2NvbXBsZXRlRmllbGRDb21wb25lbnQgfFxuICBBdXRvY29tcGxldGVDaGlwbGlzdEZpZWxkQ29tcG9uZW50IHxcbiAgVGV4dGFyZWFGaWVsZENvbXBvbmVudCB8XG4gIENoZWNrYm94RmllbGRDb21wb25lbnQgfFxuICBTbGlkZXJGaWVsZENvbXBvbmVudCB8XG4gIEZpbGVVcGxvYWRGaWVsZENvbXBvbmVudCB8XG4gIEltYWdlVXBsb2FkRmllbGRDb21wb25lbnR8XG4gIERhdGVwaWNrZXJGaWVsZENvbXBvbmVudCB8XG4gIFVuaXRDb252ZXJzaW9uRmllbGRDb21wb25lbnQ7XG5cbmV4cG9ydCB0eXBlIENvbXBvbmVudEtleXMgPSBrZXlvZiB0eXBlb2YgRklFTERfQ09NUE9ORU5UUztcbi8vIGV4cG9ydCB0eXBlIENyaXNwckZpZWxkQ29tcG9uZW50ID0gRklFTERfQ09NUE9ORU5UU1tDb21wb25lbnRLZXlzXTtcblxuZXhwb3J0IHR5cGUgQ3Jpc3ByRmllbGRDb21wb25lbnRUeXBlID0gQ3Jpc3ByQ29udHJvbENvbXBvbmVudFR5cGUgfFxuICBIZWFkaW5nQ29tcG9uZW50IHxcbiAgRGl2aWRlckNvbXBvbmVudCB8XG4gIEJ1dHRvbkNvbXBvbmVudDtcblxuIl19
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
import { Directive, Input, ViewContainerRef, Renderer2, ChangeDetectorRef } from '@angular/core';
|
|
2
|
-
import { FormGroup } from '@angular/forms';
|
|
3
|
-
import { FIELD_COMPONENTS, isControlComponent, isControlOrButtonComponent } from './field-component-map.const';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
export class CrisprFieldDirective {
|
|
6
|
-
constructor(container, renderer, cdr) {
|
|
7
|
-
this.container = container;
|
|
8
|
-
this.renderer = renderer;
|
|
9
|
-
this.cdr = cdr;
|
|
10
|
-
}
|
|
11
|
-
set value(value) {
|
|
12
|
-
this._value = value;
|
|
13
|
-
// This is needed to keep the group list from resetting control values to the initial input value
|
|
14
|
-
this.updateComponentValue(value);
|
|
15
|
-
}
|
|
16
|
-
;
|
|
17
|
-
get value() {
|
|
18
|
-
return this._value;
|
|
19
|
-
}
|
|
20
|
-
async ngOnInit() {
|
|
21
|
-
/**
|
|
22
|
-
* create component and set values from config on its instance
|
|
23
|
-
*/
|
|
24
|
-
const component = this.config.component || await FIELD_COMPONENTS[this.config.controlType]();
|
|
25
|
-
const componentRef = this.container.createComponent(component);
|
|
26
|
-
this.component = componentRef.instance;
|
|
27
|
-
this.component.config = this.config;
|
|
28
|
-
if (isControlOrButtonComponent(this.component)) {
|
|
29
|
-
this.component.group = this.group;
|
|
30
|
-
}
|
|
31
|
-
this.updateComponentValue(this.value);
|
|
32
|
-
// adds any config classes to the dynamically generated component
|
|
33
|
-
// doing this here keeps us from having to extend a base component into each field component individually
|
|
34
|
-
if (!this.config.classes)
|
|
35
|
-
return;
|
|
36
|
-
this.config.classes.forEach((klass) => {
|
|
37
|
-
// check for passing multiple classes in one array element
|
|
38
|
-
if (klass.includes(' ')) {
|
|
39
|
-
throw Error(`Improperly formatted class. '${klass}' cannot contain spaces.`);
|
|
40
|
-
}
|
|
41
|
-
else {
|
|
42
|
-
this.renderer.addClass(componentRef.location.nativeElement, klass);
|
|
43
|
-
}
|
|
44
|
-
});
|
|
45
|
-
}
|
|
46
|
-
updateComponentValue(value) {
|
|
47
|
-
if (isControlComponent(this.component)) {
|
|
48
|
-
this.component.value = value;
|
|
49
|
-
// SubGroups won't populate without this detectChanges
|
|
50
|
-
this.cdr.detectChanges();
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
CrisprFieldDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: CrisprFieldDirective, deps: [{ token: i0.ViewContainerRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
55
|
-
CrisprFieldDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.1", type: CrisprFieldDirective, isStandalone: true, selector: "[crisprField]", inputs: { config: "config", group: "group", value: "value" }, ngImport: i0 });
|
|
56
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: CrisprFieldDirective, decorators: [{
|
|
57
|
-
type: Directive,
|
|
58
|
-
args: [{
|
|
59
|
-
selector: '[crisprField]',
|
|
60
|
-
standalone: true
|
|
61
|
-
}]
|
|
62
|
-
}], ctorParameters: function () { return [{ type: i0.ViewContainerRef }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { config: [{
|
|
63
|
-
type: Input
|
|
64
|
-
}], group: [{
|
|
65
|
-
type: Input
|
|
66
|
-
}], value: [{
|
|
67
|
-
type: Input
|
|
68
|
-
}] } });
|
|
69
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jcmlzcHItZm9ybXMvc3JjL2xpYi9maWVsZC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsU0FBUyxFQUFVLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pHLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQTRCLGdCQUFnQixFQUFFLGtCQUFrQixFQUFFLDBCQUEwQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7O0FBUXpJLE1BQU0sT0FBTyxvQkFBb0I7SUFtQi9CLFlBQ1UsU0FBMkIsRUFDM0IsUUFBbUIsRUFDbkIsR0FBc0I7UUFGdEIsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFDM0IsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUNuQixRQUFHLEdBQUgsR0FBRyxDQUFtQjtJQUM3QixDQUFDO0lBZkosSUFBYSxLQUFLLENBQUMsS0FBMkI7UUFDNUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDcEIsaUdBQWlHO1FBQ2pHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBQUEsQ0FBQztJQUNGLElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBVUQsS0FBSyxDQUFDLFFBQVE7UUFDWjs7V0FFRztRQUNILE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxJQUFJLE1BQU0sZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO1FBQzdGLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsZUFBZSxDQUEyQixTQUFTLENBQUMsQ0FBQztRQUV6RixJQUFJLENBQUMsU0FBUyxHQUFHLFlBQVksQ0FBQyxRQUFRLENBQUM7UUFDdkMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUNwQyxJQUFJLDBCQUEwQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUM5QyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1NBQ25DO1FBQ0QsSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN0QyxpRUFBaUU7UUFDakUseUdBQXlHO1FBQ3pHLElBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU87WUFBRSxPQUFPO1FBQ2hDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ3BDLDBEQUEwRDtZQUMxRCxJQUFHLEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ3RCLE1BQU0sS0FBSyxDQUFDLGdDQUFnQyxLQUFLLDBCQUEwQixDQUFDLENBQUM7YUFDOUU7aUJBQU07Z0JBQ0wsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLENBQUM7YUFDcEU7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxLQUEyQjtRQUM5QyxJQUFHLGtCQUFrQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUNyQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7WUFDN0Isc0RBQXNEO1lBQ3RELElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7U0FDMUI7SUFDSCxDQUFDOztpSEF6RFUsb0JBQW9CO3FHQUFwQixvQkFBb0I7MkZBQXBCLG9CQUFvQjtrQkFKaEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsZUFBZTtvQkFDekIsVUFBVSxFQUFFLElBQUk7aUJBQ2pCOytKQUdVLE1BQU07c0JBQWQsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBS08sS0FBSztzQkFBakIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQsIFZpZXdDb250YWluZXJSZWYsIFJlbmRlcmVyMiwgT25Jbml0LCBDaGFuZ2VEZXRlY3RvclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ3Jpc3ByRmllbGRDb21wb25lbnRUeXBlLCBGSUVMRF9DT01QT05FTlRTLCBpc0NvbnRyb2xDb21wb25lbnQsIGlzQ29udHJvbE9yQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi9maWVsZC1jb21wb25lbnQtbWFwLmNvbnN0Jztcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAbnJ3bC9ueC9lbmZvcmNlLW1vZHVsZS1ib3VuZGFyaWVzXG5pbXBvcnQgeyBBbnlGaWVsZENvbmZpZywgQ29udHJvbFZhbHVlIH0gZnJvbSAnQHRmdC9jcmlzcHItZm9ybXMvdXRpbHMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbY3Jpc3ByRmllbGRdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBDcmlzcHJGaWVsZERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgQElucHV0KCkgY29uZmlnOiBBbnlGaWVsZENvbmZpZztcbiAgQElucHV0KCkgZ3JvdXA6IEZvcm1Hcm91cDtcbiAgLyoqXG4gICAqIHZhbHVlIHNldHRlciB1cGRhdGVzIHRoZSBjb250cm9sJ3MgdmFsdWUgYXMgd2VsbFxuICAgKi9cbiAgX3ZhbHVlOiBDb250cm9sVmFsdWUgfCBhbnlbXVxuICBASW5wdXQoKSBzZXQgdmFsdWUodmFsdWU6IENvbnRyb2xWYWx1ZSB8IGFueVtdKSB7XG4gICAgdGhpcy5fdmFsdWUgPSB2YWx1ZTtcbiAgICAvLyBUaGlzIGlzIG5lZWRlZCB0byBrZWVwIHRoZSBncm91cCBsaXN0IGZyb20gcmVzZXR0aW5nIGNvbnRyb2wgdmFsdWVzIHRvIHRoZSBpbml0aWFsIGlucHV0IHZhbHVlXG4gICAgdGhpcy51cGRhdGVDb21wb25lbnRWYWx1ZSh2YWx1ZSk7XG4gIH07XG4gIGdldCB2YWx1ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fdmFsdWU7XG4gIH1cblxuIGNvbXBvbmVudDogQ3Jpc3ByRmllbGRDb21wb25lbnRUeXBlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgY29udGFpbmVyOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgKSB7fVxuXG4gIGFzeW5jIG5nT25Jbml0KCkge1xuICAgIC8qKlxuICAgICAqIGNyZWF0ZSBjb21wb25lbnQgYW5kIHNldCB2YWx1ZXMgZnJvbSBjb25maWcgb24gaXRzIGluc3RhbmNlXG4gICAgICovXG4gICAgY29uc3QgY29tcG9uZW50ID0gdGhpcy5jb25maWcuY29tcG9uZW50IHx8IGF3YWl0IEZJRUxEX0NPTVBPTkVOVFNbdGhpcy5jb25maWcuY29udHJvbFR5cGVdKCk7XG4gICAgY29uc3QgY29tcG9uZW50UmVmID0gdGhpcy5jb250YWluZXIuY3JlYXRlQ29tcG9uZW50PENyaXNwckZpZWxkQ29tcG9uZW50VHlwZT4oY29tcG9uZW50KTtcblxuICAgIHRoaXMuY29tcG9uZW50ID0gY29tcG9uZW50UmVmLmluc3RhbmNlO1xuICAgIHRoaXMuY29tcG9uZW50LmNvbmZpZyA9IHRoaXMuY29uZmlnO1xuICAgIGlmIChpc0NvbnRyb2xPckJ1dHRvbkNvbXBvbmVudCh0aGlzLmNvbXBvbmVudCkpIHtcbiAgICAgIHRoaXMuY29tcG9uZW50Lmdyb3VwID0gdGhpcy5ncm91cDtcbiAgICB9XG4gICAgdGhpcy51cGRhdGVDb21wb25lbnRWYWx1ZSh0aGlzLnZhbHVlKTtcbiAgICAvLyBhZGRzIGFueSBjb25maWcgY2xhc3NlcyB0byB0aGUgZHluYW1pY2FsbHkgZ2VuZXJhdGVkIGNvbXBvbmVudFxuICAgIC8vIGRvaW5nIHRoaXMgaGVyZSBrZWVwcyB1cyBmcm9tIGhhdmluZyB0byBleHRlbmQgYSBiYXNlIGNvbXBvbmVudCBpbnRvIGVhY2ggZmllbGQgY29tcG9uZW50IGluZGl2aWR1YWxseVxuICAgIGlmKCF0aGlzLmNvbmZpZy5jbGFzc2VzKSByZXR1cm47XG4gICAgdGhpcy5jb25maWcuY2xhc3Nlcy5mb3JFYWNoKChrbGFzcykgPT4ge1xuICAgICAgLy8gY2hlY2sgZm9yIHBhc3NpbmcgbXVsdGlwbGUgY2xhc3NlcyBpbiBvbmUgYXJyYXkgZWxlbWVudFxuICAgICAgaWYoa2xhc3MuaW5jbHVkZXMoJyAnKSkge1xuICAgICAgICB0aHJvdyBFcnJvcihgSW1wcm9wZXJseSBmb3JtYXR0ZWQgY2xhc3MuICcke2tsYXNzfScgY2Fubm90IGNvbnRhaW4gc3BhY2VzLmApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyhjb21wb25lbnRSZWYubG9jYXRpb24ubmF0aXZlRWxlbWVudCwga2xhc3MpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgdXBkYXRlQ29tcG9uZW50VmFsdWUodmFsdWU6IENvbnRyb2xWYWx1ZSB8IGFueVtdKSB7XG4gICAgaWYoaXNDb250cm9sQ29tcG9uZW50KHRoaXMuY29tcG9uZW50KSkge1xuICAgICAgdGhpcy5jb21wb25lbnQudmFsdWUgPSB2YWx1ZTtcbiAgICAgIC8vIFN1Ykdyb3VwcyB3b24ndCBwb3B1bGF0ZSB3aXRob3V0IHRoaXMgZGV0ZWN0Q2hhbmdlc1xuICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
import { Component, Input, Output, EventEmitter, ViewChild, ElementRef } from '@angular/core';
|
|
2
|
-
import { ReactiveFormsModule, FormGroup } from '@angular/forms';
|
|
3
|
-
import { Observable } from 'rxjs';
|
|
4
|
-
import { CommonModule } from '@angular/common';
|
|
5
|
-
import { CrisprFieldDirective } from '../field.directive';
|
|
6
|
-
import { FormValidationHandlerModule } from '@tft/form-validation-handler';
|
|
7
|
-
import { CrisprPipesModule } from '../pipes/crispr-pipes.module';
|
|
8
|
-
// eslint-disable-next-line @nrwl/nx/enforce-module-boundaries
|
|
9
|
-
import { buildFormGroupFromConfig } from '@tft/crispr-forms/utils';
|
|
10
|
-
import * as i0 from "@angular/core";
|
|
11
|
-
import * as i1 from "@angular/common";
|
|
12
|
-
import * as i2 from "@angular/forms";
|
|
13
|
-
import * as i3 from "@tft/form-validation-handler";
|
|
14
|
-
import * as i4 from "../pipes/initial-control-value.pipe";
|
|
15
|
-
export class CrisprFormComponent {
|
|
16
|
-
constructor() {
|
|
17
|
-
this.form = new FormGroup({});
|
|
18
|
-
this.value = null;
|
|
19
|
-
this.submitted = new EventEmitter();
|
|
20
|
-
// proxy value and status change events through to consuming component
|
|
21
|
-
this.valueChanges = this.form.valueChanges;
|
|
22
|
-
this.statusChanges = this.form.statusChanges;
|
|
23
|
-
}
|
|
24
|
-
ngOnInit() {
|
|
25
|
-
// build out the form, note that we pass in the form as the third argument and the function modifies it
|
|
26
|
-
buildFormGroupFromConfig(this.config, this.value, this.form);
|
|
27
|
-
}
|
|
28
|
-
handleSubmit() {
|
|
29
|
-
this.form.markAllAsTouched();
|
|
30
|
-
this.submitted.emit(this.form);
|
|
31
|
-
}
|
|
32
|
-
triggerSubmit() {
|
|
33
|
-
this.submitTrigger.nativeElement.click();
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
CrisprFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: CrisprFormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
37
|
-
CrisprFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.1", type: CrisprFormComponent, isStandalone: true, selector: "crispr-form", inputs: { config: "config", form: "form", value: "value" }, outputs: { submitted: "submitted", valueChanges: "valueChanges", statusChanges: "statusChanges" }, viewQueries: [{ propertyName: "submitTrigger", first: true, predicate: ["submitTrigger"], descendants: true }], ngImport: i0, template: "<form\n class=\"crispr-form\"\n [ngClass]=\"config.classes\"\n [formGroup]=\"form\"\n (ngSubmit)=\"handleSubmit()\"\n [autocomplete]=\"config.autocomplete || 'off'\"\n [errorDictionary]=\"config.errorDictionary\"\n #ngFormElement=\"ngForm\">\n\n <ng-container\n *ngFor=\"let field of config.fields;\"\n crisprField\n [value]=\"value | initialControlValue : field\"\n [config]=\"field\"\n [group]=\"form\">\n </ng-container>\n <!-- Hidden button, programmatically clicked when crispr form triggerSubmit function called.\n Uses a hidden button with type=\"submit\" because it will trigger both native form submit event\n (which the error handler has to listen for) and ngSubmit event -->\n <button #submitTrigger class=\"submit-trigger\" type=\"submit\">\n </button>\n</form>\n", styles: [".submit-trigger{display:none}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: CrisprFieldDirective, selector: "[crisprField]", inputs: ["config", "group", "value"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: FormValidationHandlerModule }, { kind: "directive", type: i3.ControlErrorsFormDirective, selector: "form", inputs: ["errorDictionary"] }, { kind: "directive", type: i3.ControlErrorContainerDirective, selector: "[controlErrorContainer], [formGroup]" }, { kind: "ngmodule", type: CrisprPipesModule }, { kind: "pipe", type: i4.InitialControlValuePipe, name: "initialControlValue" }], preserveWhitespaces: true });
|
|
38
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: CrisprFormComponent, decorators: [{
|
|
39
|
-
type: Component,
|
|
40
|
-
args: [{ selector: 'crispr-form', standalone: true, imports: [
|
|
41
|
-
CommonModule,
|
|
42
|
-
CrisprFieldDirective,
|
|
43
|
-
ReactiveFormsModule,
|
|
44
|
-
FormValidationHandlerModule,
|
|
45
|
-
CrisprPipesModule
|
|
46
|
-
], template: "<form\n class=\"crispr-form\"\n [ngClass]=\"config.classes\"\n [formGroup]=\"form\"\n (ngSubmit)=\"handleSubmit()\"\n [autocomplete]=\"config.autocomplete || 'off'\"\n [errorDictionary]=\"config.errorDictionary\"\n #ngFormElement=\"ngForm\">\n\n <ng-container\n *ngFor=\"let field of config.fields;\"\n crisprField\n [value]=\"value | initialControlValue : field\"\n [config]=\"field\"\n [group]=\"form\">\n </ng-container>\n <!-- Hidden button, programmatically clicked when crispr form triggerSubmit function called.\n Uses a hidden button with type=\"submit\" because it will trigger both native form submit event\n (which the error handler has to listen for) and ngSubmit event -->\n <button #submitTrigger class=\"submit-trigger\" type=\"submit\">\n </button>\n</form>\n", styles: [".submit-trigger{display:none}\n"] }]
|
|
47
|
-
}], propDecorators: { config: [{
|
|
48
|
-
type: Input
|
|
49
|
-
}], form: [{
|
|
50
|
-
type: Input
|
|
51
|
-
}], value: [{
|
|
52
|
-
type: Input
|
|
53
|
-
}], submitted: [{
|
|
54
|
-
type: Output
|
|
55
|
-
}], valueChanges: [{
|
|
56
|
-
type: Output
|
|
57
|
-
}], statusChanges: [{
|
|
58
|
-
type: Output
|
|
59
|
-
}], submitTrigger: [{
|
|
60
|
-
type: ViewChild,
|
|
61
|
-
args: ['submitTrigger']
|
|
62
|
-
}] } });
|
|
63
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NyaXNwci1mb3Jtcy9zcmMvbGliL2Zvcm0vZm9ybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NyaXNwci1mb3Jtcy9zcmMvbGliL2Zvcm0vZm9ybS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDdEcsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzFELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzNFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2pFLDhEQUE4RDtBQUM5RCxPQUFPLEVBQWlDLHdCQUF3QixFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7OztBQWdCbEcsTUFBTSxPQUFPLG1CQUFtQjtJQWRoQztRQWlCVyxTQUFJLEdBQWMsSUFBSSxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDcEMsVUFBSyxHQUFzQixJQUFJLENBQUM7UUFHL0IsY0FBUyxHQUFHLElBQUksWUFBWSxFQUFhLENBQUM7UUFDcEQsc0VBQXNFO1FBQzVELGlCQUFZLEdBQW9CLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDO1FBQ3ZELGtCQUFhLEdBQXVCLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDO0tBaUJ2RTtJQWJDLFFBQVE7UUFDTix1R0FBdUc7UUFDdkcsd0JBQXdCLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQsWUFBWTtRQUNWLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUM3QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUMzQyxDQUFDOztnSEExQlUsbUJBQW1CO29HQUFuQixtQkFBbUIsc1ZDeEJoQywyeUJBc0JBLHdGRExJLFlBQVksMFBBQ1osb0JBQW9CLCtGQUNwQixtQkFBbUIsb2JBQ25CLDJCQUEyQiwyUEFDM0IsaUJBQWlCOzJGQUdSLG1CQUFtQjtrQkFkL0IsU0FBUzsrQkFDRSxhQUFhLGNBSVgsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osb0JBQW9CO3dCQUNwQixtQkFBbUI7d0JBQ25CLDJCQUEyQjt3QkFDM0IsaUJBQWlCO3FCQUNsQjs4QkFJUSxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFHSSxTQUFTO3NCQUFsQixNQUFNO2dCQUVHLFlBQVk7c0JBQXJCLE1BQU07Z0JBQ0csYUFBYTtzQkFBdEIsTUFBTTtnQkFFcUIsYUFBYTtzQkFBeEMsU0FBUzt1QkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIFZpZXdDaGlsZCwgRWxlbWVudFJlZiwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ3Jpc3ByRmllbGREaXJlY3RpdmUgfSBmcm9tICcuLi9maWVsZC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRm9ybVZhbGlkYXRpb25IYW5kbGVyTW9kdWxlIH0gZnJvbSAnQHRmdC9mb3JtLXZhbGlkYXRpb24taGFuZGxlcic7XG5pbXBvcnQgeyBDcmlzcHJQaXBlc01vZHVsZSB9IGZyb20gJy4uL3BpcGVzL2NyaXNwci1waXBlcy5tb2R1bGUnO1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBucndsL254L2VuZm9yY2UtbW9kdWxlLWJvdW5kYXJpZXNcbmltcG9ydCB7IENvbnRyb2xHcm91cFZhbHVlLCBGb3JtQ29uZmlnLCBidWlsZEZvcm1Hcm91cEZyb21Db25maWcgfSBmcm9tICdAdGZ0L2NyaXNwci1mb3Jtcy91dGlscyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NyaXNwci1mb3JtJyxcbiAgc3R5bGVVcmxzOiBbJ2Zvcm0uY29tcG9uZW50LnNjc3MnXSxcbiAgdGVtcGxhdGVVcmw6ICdmb3JtLmNvbXBvbmVudC5odG1sJyxcbiAgLy8gY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgQ3Jpc3ByRmllbGREaXJlY3RpdmUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBGb3JtVmFsaWRhdGlvbkhhbmRsZXJNb2R1bGUsXG4gICAgQ3Jpc3ByUGlwZXNNb2R1bGVcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQ3Jpc3ByRm9ybUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIC8vIGlmIG5vIGZvcm0gaGFzIGJlZW4gcGFzc2VkIGluIGJ5IGNvbnN1bWluZyBjb21wb25lbnQsIHdlIGNyZWF0ZSBhbiBlbXB0eSBncm91cCB0byBidWlsZCBvdXRcbiAgQElucHV0KCkgY29uZmlnOiBGb3JtQ29uZmlnO1xuICBASW5wdXQoKSBmb3JtOiBGb3JtR3JvdXAgPSBuZXcgRm9ybUdyb3VwKHt9KTtcbiAgQElucHV0KCkgdmFsdWU6IENvbnRyb2xHcm91cFZhbHVlID0gbnVsbDtcblxuXG4gIEBPdXRwdXQoKSBzdWJtaXR0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEZvcm1Hcm91cD4oKTtcbiAgLy8gcHJveHkgdmFsdWUgYW5kIHN0YXR1cyBjaGFuZ2UgZXZlbnRzIHRocm91Z2ggdG8gY29uc3VtaW5nIGNvbXBvbmVudFxuICBAT3V0cHV0KCkgdmFsdWVDaGFuZ2VzOiBPYnNlcnZhYmxlPGFueT4gPSB0aGlzLmZvcm0udmFsdWVDaGFuZ2VzO1xuICBAT3V0cHV0KCkgc3RhdHVzQ2hhbmdlczogT2JzZXJ2YWJsZTxzdHJpbmc+ID0gdGhpcy5mb3JtLnN0YXR1c0NoYW5nZXM7XG5cbiAgQFZpZXdDaGlsZCgnc3VibWl0VHJpZ2dlcicpIHN1Ym1pdFRyaWdnZXI6IEVsZW1lbnRSZWY8SFRNTEJ1dHRvbkVsZW1lbnQ+O1xuXG4gIG5nT25Jbml0KCkge1xuICAgIC8vIGJ1aWxkIG91dCB0aGUgZm9ybSwgbm90ZSB0aGF0IHdlIHBhc3MgaW4gdGhlIGZvcm0gYXMgdGhlIHRoaXJkIGFyZ3VtZW50IGFuZCB0aGUgZnVuY3Rpb24gbW9kaWZpZXMgaXRcbiAgICBidWlsZEZvcm1Hcm91cEZyb21Db25maWcodGhpcy5jb25maWcsIHRoaXMudmFsdWUsIHRoaXMuZm9ybSk7XG4gIH1cblxuICBoYW5kbGVTdWJtaXQoKSB7XG4gICAgdGhpcy5mb3JtLm1hcmtBbGxBc1RvdWNoZWQoKTtcbiAgICB0aGlzLnN1Ym1pdHRlZC5lbWl0KHRoaXMuZm9ybSk7XG4gIH1cblxuICB0cmlnZ2VyU3VibWl0KCkge1xuICAgIHRoaXMuc3VibWl0VHJpZ2dlci5uYXRpdmVFbGVtZW50LmNsaWNrKCk7XG4gIH1cbn1cbiIsIjxmb3JtXG4gIGNsYXNzPVwiY3Jpc3ByLWZvcm1cIlxuICBbbmdDbGFzc109XCJjb25maWcuY2xhc3Nlc1wiXG4gIFtmb3JtR3JvdXBdPVwiZm9ybVwiXG4gIChuZ1N1Ym1pdCk9XCJoYW5kbGVTdWJtaXQoKVwiXG4gIFthdXRvY29tcGxldGVdPVwiY29uZmlnLmF1dG9jb21wbGV0ZSB8fCAnb2ZmJ1wiXG4gIFtlcnJvckRpY3Rpb25hcnldPVwiY29uZmlnLmVycm9yRGljdGlvbmFyeVwiXG4gICNuZ0Zvcm1FbGVtZW50PVwibmdGb3JtXCI+XG5cbiAgPG5nLWNvbnRhaW5lclxuICAgICpuZ0Zvcj1cImxldCBmaWVsZCBvZiBjb25maWcuZmllbGRzO1wiXG4gICAgY3Jpc3ByRmllbGRcbiAgICBbdmFsdWVdPVwidmFsdWUgfCBpbml0aWFsQ29udHJvbFZhbHVlIDogZmllbGRcIlxuICAgIFtjb25maWddPVwiZmllbGRcIlxuICAgIFtncm91cF09XCJmb3JtXCI+XG4gIDwvbmctY29udGFpbmVyPlxuICA8IS0tIEhpZGRlbiBidXR0b24sIHByb2dyYW1tYXRpY2FsbHkgY2xpY2tlZCB3aGVuIGNyaXNwciBmb3JtIHRyaWdnZXJTdWJtaXQgZnVuY3Rpb24gY2FsbGVkLlxuICAgIFVzZXMgYSBoaWRkZW4gYnV0dG9uIHdpdGggdHlwZT1cInN1Ym1pdFwiIGJlY2F1c2UgaXQgd2lsbCB0cmlnZ2VyIGJvdGggbmF0aXZlIGZvcm0gc3VibWl0IGV2ZW50XG4gICAgKHdoaWNoIHRoZSBlcnJvciBoYW5kbGVyIGhhcyB0byBsaXN0ZW4gZm9yKSBhbmQgbmdTdWJtaXQgZXZlbnQgIC0tPlxuICA8YnV0dG9uICNzdWJtaXRUcmlnZ2VyIGNsYXNzPVwic3VibWl0LXRyaWdnZXJcIiB0eXBlPVwic3VibWl0XCI+XG4gIDwvYnV0dG9uPlxuPC9mb3JtPlxuIl19
|
|
@@ -1,99 +0,0 @@
|
|
|
1
|
-
import { Component, ChangeDetectionStrategy, ChangeDetectorRef } from '@angular/core';
|
|
2
|
-
import { MatButtonModule } from '@angular/material/button';
|
|
3
|
-
import { MatIconModule } from '@angular/material/icon';
|
|
4
|
-
import { CrisprFieldDirective } from '../field.directive';
|
|
5
|
-
import { CrisprPipesModule } from '../pipes/crispr-pipes.module';
|
|
6
|
-
import { ReactiveFormsModule } from '@angular/forms';
|
|
7
|
-
import { CommonModule } from '@angular/common';
|
|
8
|
-
import { FormValidationHandlerModule } from '@tft/form-validation-handler';
|
|
9
|
-
// eslint-disable-next-line @nrwl/nx/enforce-module-boundaries
|
|
10
|
-
import { CrisprFieldComponent, crisprControlMixin, createControlForType } from '@tft/crispr-forms/utils';
|
|
11
|
-
// eslint-disable-next-line @nrwl/nx/enforce-module-boundaries
|
|
12
|
-
import { FieldContainerComponent } from '@tft/crispr-forms/ui';
|
|
13
|
-
import { CrisprDisplayFieldDirective } from '../display-field.directive';
|
|
14
|
-
import * as i0 from "@angular/core";
|
|
15
|
-
import * as i1 from "@angular/common";
|
|
16
|
-
import * as i2 from "@angular/material/button";
|
|
17
|
-
import * as i3 from "@angular/material/icon";
|
|
18
|
-
import * as i4 from "@angular/forms";
|
|
19
|
-
import * as i5 from "../pipes/initial-control-value.pipe";
|
|
20
|
-
import * as i6 from "@tft/form-validation-handler";
|
|
21
|
-
const defaultConfig = {
|
|
22
|
-
addButtonLabel: 'ADD ITEM',
|
|
23
|
-
minListLength: 1,
|
|
24
|
-
};
|
|
25
|
-
const FormGroupListMixin = crisprControlMixin(CrisprFieldComponent);
|
|
26
|
-
export class FormGroupListComponent extends FormGroupListMixin {
|
|
27
|
-
constructor(cdr) {
|
|
28
|
-
super();
|
|
29
|
-
this.cdr = cdr;
|
|
30
|
-
this.defaultConfig = defaultConfig;
|
|
31
|
-
/**
|
|
32
|
-
* By setting this to true when adding/removing items from array,
|
|
33
|
-
* we can block original values from overwriting form values
|
|
34
|
-
* */
|
|
35
|
-
this.blockValue = false;
|
|
36
|
-
this.selectedIndex = null;
|
|
37
|
-
}
|
|
38
|
-
ngOnInit() {
|
|
39
|
-
super.ngOnInit();
|
|
40
|
-
// TODO: this is required to ngFor of controls in template, must be a better way
|
|
41
|
-
}
|
|
42
|
-
setControlValue(values) {
|
|
43
|
-
if (this.control) {
|
|
44
|
-
if (values?.length > 0) {
|
|
45
|
-
// clear any existing values so that new values don't concatenate onto the old
|
|
46
|
-
const currentValues = this.control.value;
|
|
47
|
-
if (currentValues.length) {
|
|
48
|
-
this.control.clear();
|
|
49
|
-
}
|
|
50
|
-
values.forEach(value => this.addGroup(value));
|
|
51
|
-
}
|
|
52
|
-
else if (this.config.displayInitialItem) {
|
|
53
|
-
this.addGroup();
|
|
54
|
-
}
|
|
55
|
-
// needed to ensure new array items render
|
|
56
|
-
setTimeout(() => {
|
|
57
|
-
this.cdr.detectChanges();
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
clickDelete(index) {
|
|
62
|
-
this.blockValue = true;
|
|
63
|
-
this.deleteGroup(index);
|
|
64
|
-
}
|
|
65
|
-
clickAdd() {
|
|
66
|
-
this.blockValue = true;
|
|
67
|
-
this.addGroup();
|
|
68
|
-
}
|
|
69
|
-
addGroup(value = null) {
|
|
70
|
-
this.control.push(createControlForType(this.config.itemConfig, value));
|
|
71
|
-
// needed to ensure new array items render
|
|
72
|
-
setTimeout(() => {
|
|
73
|
-
this.cdr.detectChanges();
|
|
74
|
-
});
|
|
75
|
-
}
|
|
76
|
-
deleteGroup(index) {
|
|
77
|
-
this.control.removeAt(index);
|
|
78
|
-
}
|
|
79
|
-
clickEditItem(index) {
|
|
80
|
-
this.selectedIndex = index;
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
FormGroupListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: FormGroupListComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
84
|
-
FormGroupListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.1", type: FormGroupListComponent, isStandalone: true, selector: "crispr-form-group-list", usesInheritance: true, ngImport: i0, template: "\n<crispr-field-container\n [config]=\"config\"\n [group]=\"group\"\n [formGroup]=\"group\">\n\n <div [formArrayName]=\"config.controlName\">\n\n <!-- Don't add trackBy function, it confuses the state of the array -->\n <ng-container *ngFor=\"let itemControl of control?.controls; let i = index; let last = last\">\n <ng-container *ngIf=\"!config.displayItemComponent || i === selectedIndex || (last && selectedIndex ?? true); else display\">\n <!-- TODO: use content projection to allow custom item label component -->\n <div class=\"item-header\">\n <span class=\"mat-h2\"> {{ config.itemLabelBuilder ? config.itemLabelBuilder(i) : 'Item ' + (i + 1) }} </span>\n <button\n mat-icon-button\n type=\"button\"\n *ngIf=\"i + 1 > config.minListLength\">\n <mat-icon (click)=\"clickDelete(i)\">delete</mat-icon>\n </button>\n </div>\n <div\n [formGroup]=\"itemControl\">\n <!-- TODO: if chiplists didn't need to have labels mixed in with their values we could use [value]=\"control.value\" below -->\n <ng-container\n *ngFor=\"let field of config.itemConfig.fields;\"\n crisprField\n [value]=\"blockValue ? null : value && value[i] | initialControlValue : field\"\n [config]=\"field\"\n [group]=\"itemControl\">\n </ng-container>\n </div>\n </ng-container>\n <ng-template #display>\n <div\n class=\"display-field-container\"\n crisprDisplayField\n [component]=\"config.displayItemComponent\"\n [value]=\"itemControl.value\"\n [index]=\"i\">\n <button mat-icon-button (click)=\"clickEditItem(i)\">\n <mat-icon>edit</mat-icon>\n </button>\n </div>\n </ng-template>\n </ng-container>\n </div>\n <div class=\"group-footer\">\n <button\n type=\"button\"\n class=\"add\"\n mat-raised-button\n [color]=\"config.addButtonColor\"\n (click)=\"clickAdd()\">\n {{config.addItemLabel || config.addButtonLabel}}\n </button>\n </div>\n\n</crispr-field-container>\n", styles: [".item-header{display:flex;justify-content:space-between}.group-footer{display:flex;justify-content:flex-end}.group-footer button.add{margin-bottom:16px}.display-field-container{position:relative}.display-field-container button{position:absolute;top:0;right:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: FieldContainerComponent, selector: "crispr-field-container", inputs: ["config", "group", "inlineField"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "directive", type: CrisprFieldDirective, selector: "[crisprField]", inputs: ["config", "group", "value"] }, { kind: "directive", type: CrisprDisplayFieldDirective, selector: "[crisprDisplayField]", inputs: ["group", "value", "component", "index"] }, { kind: "ngmodule", type: CrisprPipesModule }, { kind: "pipe", type: i5.InitialControlValuePipe, name: "initialControlValue" }, { kind: "ngmodule", type: FormValidationHandlerModule }, { kind: "directive", type: i6.ControlErrorContainerDirective, selector: "[controlErrorContainer], [formGroup]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, preserveWhitespaces: true });
|
|
85
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: FormGroupListComponent, decorators: [{
|
|
86
|
-
type: Component,
|
|
87
|
-
args: [{ selector: 'crispr-form-group-list', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
88
|
-
CommonModule,
|
|
89
|
-
MatButtonModule,
|
|
90
|
-
MatIconModule,
|
|
91
|
-
FieldContainerComponent,
|
|
92
|
-
ReactiveFormsModule,
|
|
93
|
-
CrisprFieldDirective,
|
|
94
|
-
CrisprDisplayFieldDirective,
|
|
95
|
-
CrisprPipesModule,
|
|
96
|
-
FormValidationHandlerModule
|
|
97
|
-
], template: "\n<crispr-field-container\n [config]=\"config\"\n [group]=\"group\"\n [formGroup]=\"group\">\n\n <div [formArrayName]=\"config.controlName\">\n\n <!-- Don't add trackBy function, it confuses the state of the array -->\n <ng-container *ngFor=\"let itemControl of control?.controls; let i = index; let last = last\">\n <ng-container *ngIf=\"!config.displayItemComponent || i === selectedIndex || (last && selectedIndex ?? true); else display\">\n <!-- TODO: use content projection to allow custom item label component -->\n <div class=\"item-header\">\n <span class=\"mat-h2\"> {{ config.itemLabelBuilder ? config.itemLabelBuilder(i) : 'Item ' + (i + 1) }} </span>\n <button\n mat-icon-button\n type=\"button\"\n *ngIf=\"i + 1 > config.minListLength\">\n <mat-icon (click)=\"clickDelete(i)\">delete</mat-icon>\n </button>\n </div>\n <div\n [formGroup]=\"itemControl\">\n <!-- TODO: if chiplists didn't need to have labels mixed in with their values we could use [value]=\"control.value\" below -->\n <ng-container\n *ngFor=\"let field of config.itemConfig.fields;\"\n crisprField\n [value]=\"blockValue ? null : value && value[i] | initialControlValue : field\"\n [config]=\"field\"\n [group]=\"itemControl\">\n </ng-container>\n </div>\n </ng-container>\n <ng-template #display>\n <div\n class=\"display-field-container\"\n crisprDisplayField\n [component]=\"config.displayItemComponent\"\n [value]=\"itemControl.value\"\n [index]=\"i\">\n <button mat-icon-button (click)=\"clickEditItem(i)\">\n <mat-icon>edit</mat-icon>\n </button>\n </div>\n </ng-template>\n </ng-container>\n </div>\n <div class=\"group-footer\">\n <button\n type=\"button\"\n class=\"add\"\n mat-raised-button\n [color]=\"config.addButtonColor\"\n (click)=\"clickAdd()\">\n {{config.addItemLabel || config.addButtonLabel}}\n </button>\n </div>\n\n</crispr-field-container>\n", styles: [".item-header{display:flex;justify-content:space-between}.group-footer{display:flex;justify-content:flex-end}.group-footer button.add{margin-bottom:16px}.display-field-container{position:relative}.display-field-container button{position:absolute;top:0;right:0}\n"] }]
|
|
98
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; } });
|
|
99
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1ncm91cC1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY3Jpc3ByLWZvcm1zL3NyYy9saWIvZm9ybS1ncm91cC1saXN0L2Zvcm0tZ3JvdXAtbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NyaXNwci1mb3Jtcy9zcmMvbGliL2Zvcm0tZ3JvdXAtbGlzdC9mb3JtLWdyb3VwLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSx1QkFBdUIsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU5RixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzFELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMzRSw4REFBOEQ7QUFDOUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLGtCQUFrQixFQUFFLG9CQUFvQixFQUF1QixNQUFNLHlCQUF5QixDQUFDO0FBQzlILDhEQUE4RDtBQUM5RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7Ozs7Ozs7QUFFekUsTUFBTSxhQUFhLEdBQWlDO0lBQ2xELGNBQWMsRUFBRSxVQUFVO0lBQzFCLGFBQWEsRUFBRSxDQUFDO0NBQ2pCLENBQUM7QUFFRixNQUFNLGtCQUFrQixHQUFHLGtCQUFrQixDQUFzQixvQkFBb0IsQ0FBQyxDQUFDO0FBbUJ6RixNQUFNLE9BQU8sc0JBQXVCLFNBQVEsa0JBQWtCO0lBYTVELFlBQW9CLEdBQXNCO1FBQ3hDLEtBQUssRUFBRSxDQUFDO1FBRFUsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFYMUMsa0JBQWEsR0FBRyxhQUFhLENBQUE7UUFHN0I7OzthQUdLO1FBQ0wsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUVuQixrQkFBYSxHQUFXLElBQUksQ0FBQztJQUk3QixDQUFDO0lBRUQsUUFBUTtRQUNOLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixnRkFBZ0Y7SUFDbEYsQ0FBQztJQUVELGVBQWUsQ0FBQyxNQUFhO1FBQzNCLElBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNmLElBQUcsTUFBTSxFQUFFLE1BQU0sR0FBRyxDQUFDLEVBQUU7Z0JBQ3JCLDhFQUE4RTtnQkFDOUUsTUFBTSxhQUFhLEdBQU0sSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7Z0JBQzVDLElBQUcsYUFBYSxDQUFDLE1BQU0sRUFBRTtvQkFDdkIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztpQkFDdEI7Z0JBQ0QsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQzthQUUvQztpQkFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsa0JBQWtCLEVBQUU7Z0JBQ3pDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQTthQUNoQjtZQUNELDBDQUEwQztZQUMxQyxVQUFVLENBQUMsR0FBRyxFQUFFO2dCQUNkLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDM0IsQ0FBQyxDQUFDLENBQUE7U0FDSDtJQUNILENBQUM7SUFFRCxXQUFXLENBQUMsS0FBYTtRQUN2QixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztRQUN2QixJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7UUFDdkIsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2xCLENBQUM7SUFFRCxRQUFRLENBQUMsS0FBSyxHQUFHLElBQUk7UUFDbkIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUN2RSwwQ0FBMEM7UUFDMUMsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDM0IsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQsV0FBVyxDQUFDLEtBQWE7UUFDdkIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVELGFBQWEsQ0FBQyxLQUFhO1FBQ3pCLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDO0lBQzdCLENBQUM7O21IQWxFVSxzQkFBc0I7dUdBQXRCLHNCQUFzQix5R0N2Q25DLDZwRUEyREEsOFREL0JJLFlBQVksK1BBQ1osZUFBZSwwVkFDZixhQUFhLG9MQUNiLHVCQUF1Qiw4R0FDdkIsbUJBQW1CLG1iQUNuQixvQkFBb0IsZ0dBQ3BCLDJCQUEyQixrSEFDM0IsaUJBQWlCLCtHQUNqQiwyQkFBMkI7MkZBR2xCLHNCQUFzQjtrQkFsQmxDLFNBQVM7K0JBQ0Usd0JBQXdCLG1CQUdqQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLGVBQWU7d0JBQ2YsYUFBYTt3QkFDYix1QkFBdUI7d0JBQ3ZCLG1CQUFtQjt3QkFDbkIsb0JBQW9CO3dCQUNwQiwyQkFBMkI7d0JBQzNCLGlCQUFpQjt3QkFDakIsMkJBQTJCO3FCQUM1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1Hcm91cCwgRm9ybUFycmF5IH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IENyaXNwckZpZWxkRGlyZWN0aXZlIH0gZnJvbSAnLi4vZmllbGQuZGlyZWN0aXZlJztcbmltcG9ydCB7IENyaXNwclBpcGVzTW9kdWxlIH0gZnJvbSAnLi4vcGlwZXMvY3Jpc3ByLXBpcGVzLm1vZHVsZSc7XG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEZvcm1WYWxpZGF0aW9uSGFuZGxlck1vZHVsZSB9IGZyb20gJ0B0ZnQvZm9ybS12YWxpZGF0aW9uLWhhbmRsZXInO1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBucndsL254L2VuZm9yY2UtbW9kdWxlLWJvdW5kYXJpZXNcbmltcG9ydCB7IENyaXNwckZpZWxkQ29tcG9uZW50LCBjcmlzcHJDb250cm9sTWl4aW4sIGNyZWF0ZUNvbnRyb2xGb3JUeXBlLCBGb3JtR3JvdXBMaXN0Q29uZmlnIH0gZnJvbSAnQHRmdC9jcmlzcHItZm9ybXMvdXRpbHMnO1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBucndsL254L2VuZm9yY2UtbW9kdWxlLWJvdW5kYXJpZXNcbmltcG9ydCB7IEZpZWxkQ29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnQHRmdC9jcmlzcHItZm9ybXMvdWknO1xuaW1wb3J0IHsgQ3Jpc3ByRGlzcGxheUZpZWxkRGlyZWN0aXZlIH0gZnJvbSAnLi4vZGlzcGxheS1maWVsZC5kaXJlY3RpdmUnO1xuXG5jb25zdCBkZWZhdWx0Q29uZmlnOiBQYXJ0aWFsPEZvcm1Hcm91cExpc3RDb25maWc+ID0ge1xuICBhZGRCdXR0b25MYWJlbDogJ0FERCBJVEVNJyxcbiAgbWluTGlzdExlbmd0aDogMSxcbn07XG5cbmNvbnN0IEZvcm1Hcm91cExpc3RNaXhpbiA9IGNyaXNwckNvbnRyb2xNaXhpbjxGb3JtR3JvdXBMaXN0Q29uZmlnPihDcmlzcHJGaWVsZENvbXBvbmVudCk7XG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjcmlzcHItZm9ybS1ncm91cC1saXN0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Zvcm0tZ3JvdXAtbGlzdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Zvcm0tZ3JvdXAtbGlzdC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBGaWVsZENvbnRhaW5lckNvbXBvbmVudCxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIENyaXNwckZpZWxkRGlyZWN0aXZlLFxuICAgIENyaXNwckRpc3BsYXlGaWVsZERpcmVjdGl2ZSxcbiAgICBDcmlzcHJQaXBlc01vZHVsZSxcbiAgICBGb3JtVmFsaWRhdGlvbkhhbmRsZXJNb2R1bGVcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRm9ybUdyb3VwTGlzdENvbXBvbmVudCBleHRlbmRzIEZvcm1Hcm91cExpc3RNaXhpbiBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgZGVmYXVsdENvbmZpZyA9IGRlZmF1bHRDb25maWdcbiAgZ3JvdXA6IEZvcm1Hcm91cDtcbiAgY29udHJvbDogRm9ybUFycmF5O1xuICAvKipcbiAgICogQnkgc2V0dGluZyB0aGlzIHRvIHRydWUgd2hlbiBhZGRpbmcvcmVtb3ZpbmcgaXRlbXMgZnJvbSBhcnJheSxcbiAgICogd2UgY2FuIGJsb2NrIG9yaWdpbmFsIHZhbHVlcyBmcm9tIG92ZXJ3cml0aW5nIGZvcm0gdmFsdWVzXG4gICAqICovXG4gIGJsb2NrVmFsdWUgPSBmYWxzZTtcblxuICBzZWxlY3RlZEluZGV4OiBudW1iZXIgPSBudWxsO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgIC8vIFRPRE86IHRoaXMgaXMgcmVxdWlyZWQgdG8gbmdGb3Igb2YgY29udHJvbHMgaW4gdGVtcGxhdGUsIG11c3QgYmUgYSBiZXR0ZXIgd2F5XG4gIH1cblxuICBzZXRDb250cm9sVmFsdWUodmFsdWVzOiBhbnlbXSkge1xuICAgIGlmKHRoaXMuY29udHJvbCkge1xuICAgICAgaWYodmFsdWVzPy5sZW5ndGggPiAwKSB7XG4gICAgICAgIC8vIGNsZWFyIGFueSBleGlzdGluZyB2YWx1ZXMgc28gdGhhdCBuZXcgdmFsdWVzIGRvbid0IGNvbmNhdGVuYXRlIG9udG8gdGhlIG9sZFxuICAgICAgICBjb25zdCBjdXJyZW50VmFsdWVzOltdID0gdGhpcy5jb250cm9sLnZhbHVlO1xuICAgICAgICBpZihjdXJyZW50VmFsdWVzLmxlbmd0aCkge1xuICAgICAgICAgIHRoaXMuY29udHJvbC5jbGVhcigpO1xuICAgICAgICB9XG4gICAgICAgIHZhbHVlcy5mb3JFYWNoKHZhbHVlID0+IHRoaXMuYWRkR3JvdXAodmFsdWUpKTtcblxuICAgICAgfSBlbHNlIGlmICh0aGlzLmNvbmZpZy5kaXNwbGF5SW5pdGlhbEl0ZW0pIHtcbiAgICAgICAgdGhpcy5hZGRHcm91cCgpXG4gICAgICB9XG4gICAgICAvLyBuZWVkZWQgdG8gZW5zdXJlIG5ldyBhcnJheSBpdGVtcyByZW5kZXJcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICB9KVxuICAgIH1cbiAgfVxuXG4gIGNsaWNrRGVsZXRlKGluZGV4OiBudW1iZXIpIHtcbiAgICB0aGlzLmJsb2NrVmFsdWUgPSB0cnVlO1xuICAgIHRoaXMuZGVsZXRlR3JvdXAoaW5kZXgpO1xuICB9XG5cbiAgY2xpY2tBZGQoKSB7XG4gICAgdGhpcy5ibG9ja1ZhbHVlID0gdHJ1ZTtcbiAgICB0aGlzLmFkZEdyb3VwKCk7XG4gIH1cblxuICBhZGRHcm91cCh2YWx1ZSA9IG51bGwpIHtcbiAgICB0aGlzLmNvbnRyb2wucHVzaChjcmVhdGVDb250cm9sRm9yVHlwZSh0aGlzLmNvbmZpZy5pdGVtQ29uZmlnLCB2YWx1ZSkpO1xuICAgIC8vIG5lZWRlZCB0byBlbnN1cmUgbmV3IGFycmF5IGl0ZW1zIHJlbmRlclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH0pXG4gIH1cblxuICBkZWxldGVHcm91cChpbmRleDogbnVtYmVyKSB7XG4gICAgdGhpcy5jb250cm9sLnJlbW92ZUF0KGluZGV4KTtcbiAgfVxuXG4gIGNsaWNrRWRpdEl0ZW0oaW5kZXg6IG51bWJlcikge1xuICAgIHRoaXMuc2VsZWN0ZWRJbmRleCA9IGluZGV4O1xuICB9XG59XG4iLCJcbjxjcmlzcHItZmllbGQtY29udGFpbmVyXG4gIFtjb25maWddPVwiY29uZmlnXCJcbiAgW2dyb3VwXT1cImdyb3VwXCJcbiAgW2Zvcm1Hcm91cF09XCJncm91cFwiPlxuXG4gIDxkaXYgW2Zvcm1BcnJheU5hbWVdPVwiY29uZmlnLmNvbnRyb2xOYW1lXCI+XG5cbiAgICA8IS0tIERvbid0IGFkZCB0cmFja0J5IGZ1bmN0aW9uLCBpdCBjb25mdXNlcyB0aGUgc3RhdGUgb2YgdGhlIGFycmF5IC0tPlxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW1Db250cm9sIG9mIGNvbnRyb2w/LmNvbnRyb2xzOyBsZXQgaSA9IGluZGV4OyBsZXQgbGFzdCA9IGxhc3RcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhY29uZmlnLmRpc3BsYXlJdGVtQ29tcG9uZW50IHx8IGkgPT09IHNlbGVjdGVkSW5kZXggfHwgKGxhc3QgJiYgc2VsZWN0ZWRJbmRleCA/PyB0cnVlKTsgZWxzZSBkaXNwbGF5XCI+XG4gICAgICAgIDwhLS0gVE9ETzogdXNlIGNvbnRlbnQgcHJvamVjdGlvbiB0byBhbGxvdyBjdXN0b20gaXRlbSBsYWJlbCBjb21wb25lbnQgLS0+XG4gICAgICAgIDxkaXYgIGNsYXNzPVwiaXRlbS1oZWFkZXJcIj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1hdC1oMlwiPiB7eyBjb25maWcuaXRlbUxhYmVsQnVpbGRlciA/IGNvbmZpZy5pdGVtTGFiZWxCdWlsZGVyKGkpIDogJ0l0ZW0gJyArIChpICsgMSkgfX0gPC9zcGFuPlxuICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAqbmdJZj1cImkgKyAxID4gY29uZmlnLm1pbkxpc3RMZW5ndGhcIj5cbiAgICAgICAgICAgIDxtYXQtaWNvbiAoY2xpY2spPVwiY2xpY2tEZWxldGUoaSlcIj5kZWxldGU8L21hdC1pY29uPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIFtmb3JtR3JvdXBdPVwiaXRlbUNvbnRyb2xcIj5cbiAgICAgICAgICA8IS0tIFRPRE86IGlmIGNoaXBsaXN0cyBkaWRuJ3QgbmVlZCB0byBoYXZlIGxhYmVscyBtaXhlZCBpbiB3aXRoIHRoZWlyIHZhbHVlcyB3ZSBjb3VsZCB1c2UgW3ZhbHVlXT1cImNvbnRyb2wudmFsdWVcIiBiZWxvdyAtLT5cbiAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgZmllbGQgb2YgY29uZmlnLml0ZW1Db25maWcuZmllbGRzO1wiXG4gICAgICAgICAgICBjcmlzcHJGaWVsZFxuICAgICAgICAgICAgW3ZhbHVlXT1cImJsb2NrVmFsdWUgPyBudWxsIDogdmFsdWUgJiYgdmFsdWVbaV0gfCBpbml0aWFsQ29udHJvbFZhbHVlIDogZmllbGRcIlxuICAgICAgICAgICAgW2NvbmZpZ109XCJmaWVsZFwiXG4gICAgICAgICAgICBbZ3JvdXBdPVwiaXRlbUNvbnRyb2xcIj5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjZGlzcGxheT5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzPVwiZGlzcGxheS1maWVsZC1jb250YWluZXJcIlxuICAgICAgICAgIGNyaXNwckRpc3BsYXlGaWVsZFxuICAgICAgICAgIFtjb21wb25lbnRdPVwiY29uZmlnLmRpc3BsYXlJdGVtQ29tcG9uZW50XCJcbiAgICAgICAgICBbdmFsdWVdPVwiaXRlbUNvbnRyb2wudmFsdWVcIlxuICAgICAgICAgIFtpbmRleF09XCJpXCI+XG4gICAgICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cImNsaWNrRWRpdEl0ZW0oaSlcIj5cbiAgICAgICAgICAgIDxtYXQtaWNvbj5lZGl0PC9tYXQtaWNvbj5cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImdyb3VwLWZvb3RlclwiPlxuICAgIDxidXR0b25cbiAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgY2xhc3M9XCJhZGRcIlxuICAgICAgbWF0LXJhaXNlZC1idXR0b25cbiAgICAgIFtjb2xvcl09XCJjb25maWcuYWRkQnV0dG9uQ29sb3JcIlxuICAgICAgKGNsaWNrKT1cImNsaWNrQWRkKClcIj5cbiAgICAgIHt7Y29uZmlnLmFkZEl0ZW1MYWJlbCB8fCBjb25maWcuYWRkQnV0dG9uTGFiZWx9fVxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cblxuPC9jcmlzcHItZmllbGQtY29udGFpbmVyPlxuIl19
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { Pipe } from '@angular/core';
|
|
2
|
-
// eslint-disable-next-line @nrwl/nx/enforce-module-boundaries
|
|
3
|
-
import { isControlConfig } from '@tft/crispr-forms/utils';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
export class InitialControlValuePipe {
|
|
6
|
-
// TODO: does changing any to unknown break anything?
|
|
7
|
-
transform(initialFormValue, fieldConfig) {
|
|
8
|
-
return (initialFormValue && isControlConfig(fieldConfig))
|
|
9
|
-
? initialFormValue[fieldConfig.controlName] || null
|
|
10
|
-
: null;
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
InitialControlValuePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: InitialControlValuePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
14
|
-
InitialControlValuePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.1", ngImport: i0, type: InitialControlValuePipe, name: "initialControlValue" });
|
|
15
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.1", ngImport: i0, type: InitialControlValuePipe, decorators: [{
|
|
16
|
-
type: Pipe,
|
|
17
|
-
args: [{
|
|
18
|
-
name: 'initialControlValue'
|
|
19
|
-
}]
|
|
20
|
-
}] });
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5pdGlhbC1jb250cm9sLXZhbHVlLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NyaXNwci1mb3Jtcy9zcmMvbGliL3BpcGVzL2luaXRpYWwtY29udHJvbC12YWx1ZS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ3BELDhEQUE4RDtBQUM5RCxPQUFPLEVBQWdDLGVBQWUsRUFBRSxNQUFNLHlCQUF5QixDQUFDOztBQUt4RixNQUFNLE9BQU8sdUJBQXVCO0lBQ2xDLHFEQUFxRDtJQUNyRCxTQUFTLENBQUMsZ0JBQXFELEVBQUUsV0FBMkI7UUFDMUYsT0FBTyxDQUFDLGdCQUFnQixJQUFJLGVBQWUsQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUN2RCxDQUFDLENBQUMsZ0JBQWdCLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxJQUFJLElBQUk7WUFDbkQsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUNYLENBQUM7O29IQU5VLHVCQUF1QjtrSEFBdkIsdUJBQXVCOzJGQUF2Qix1QkFBdUI7a0JBSG5DLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLHFCQUFxQjtpQkFDNUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQG5yd2wvbngvZW5mb3JjZS1tb2R1bGUtYm91bmRhcmllc1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlLCBBbnlGaWVsZENvbmZpZywgaXNDb250cm9sQ29uZmlnIH0gZnJvbSAnQHRmdC9jcmlzcHItZm9ybXMvdXRpbHMnO1xuXG5AUGlwZSh7XG4gIG5hbWU6ICdpbml0aWFsQ29udHJvbFZhbHVlJ1xufSlcbmV4cG9ydCBjbGFzcyBJbml0aWFsQ29udHJvbFZhbHVlUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAvLyBUT0RPOiBkb2VzIGNoYW5naW5nIGFueSB0byB1bmtub3duIGJyZWFrIGFueXRoaW5nP1xuICB0cmFuc2Zvcm0oaW5pdGlhbEZvcm1WYWx1ZToge1trZXk6IHN0cmluZ106IENvbnRyb2xWYWx1ZSB8IGFueX0sIGZpZWxkQ29uZmlnOiBBbnlGaWVsZENvbmZpZyk6IHVua25vd24ge1xuICAgIHJldHVybiAoaW5pdGlhbEZvcm1WYWx1ZSAmJiBpc0NvbnRyb2xDb25maWcoZmllbGRDb25maWcpKVxuICAgICAgPyBpbml0aWFsRm9ybVZhbHVlW2ZpZWxkQ29uZmlnLmNvbnRyb2xOYW1lXSB8fCBudWxsXG4gICAgICA6IG51bGw7XG4gIH1cbn1cbiJdfQ==
|