@rxap/schematics-ts-morph 16.0.0-dev.1 → 16.0.0-dev.11
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/CHANGELOG.md +135 -242
- package/{LICENSE → LICENSE.md} +3 -12
- package/README.md +7 -6
- package/package.json +47 -26
- package/src/index.d.ts +133 -47
- package/src/index.js +150 -59
- package/src/index.js.map +1 -1
- package/src/lib/add-class-method.js +5 -6
- package/src/lib/add-class-method.js.map +1 -1
- package/src/lib/add-dir.js +4 -8
- package/src/lib/add-dir.js.map +1 -1
- package/src/lib/add-fake-provider.js +21 -25
- package/src/lib/add-fake-provider.js.map +1 -1
- package/src/lib/add-method-class.d.ts +1 -0
- package/src/lib/add-method-class.js +31 -23
- package/src/lib/add-method-class.js.map +1 -1
- package/src/lib/add-provider-to-array.js +13 -14
- package/src/lib/add-provider-to-array.js.map +1 -1
- package/src/lib/add-to-array.js +6 -10
- package/src/lib/add-to-array.js.map +1 -1
- package/src/lib/add-variable-fake-provider.d.ts +1 -1
- package/src/lib/add-variable-fake-provider.js +5 -9
- package/src/lib/add-variable-fake-provider.js.map +1 -1
- package/src/lib/add-variable-provider.d.ts +1 -1
- package/src/lib/add-variable-provider.js +12 -15
- package/src/lib/add-variable-provider.js.map +1 -1
- package/src/lib/angular/add-component-animations.js +15 -0
- package/src/lib/angular/add-component-animations.js.map +1 -0
- package/src/lib/{add-component-fake-provider.d.ts → angular/add-component-fake-provider.d.ts} +2 -2
- package/src/lib/angular/add-component-fake-provider.js +20 -0
- package/src/lib/angular/add-component-fake-provider.js.map +1 -0
- package/src/lib/angular/add-component-import.d.ts +2 -0
- package/src/lib/angular/add-component-import.js +17 -0
- package/src/lib/angular/add-component-import.js.map +1 -0
- package/src/lib/{add-component-input.js → angular/add-component-input.js} +14 -15
- package/src/lib/angular/add-component-input.js.map +1 -0
- package/src/lib/{add-component-provider.d.ts → angular/add-component-provider.d.ts} +2 -2
- package/src/lib/angular/add-component-provider.js +11 -0
- package/src/lib/angular/add-component-provider.js.map +1 -0
- package/src/lib/{add-control-validator.js → angular/add-control-validator.js} +6 -11
- package/src/lib/angular/add-control-validator.js.map +1 -0
- package/src/lib/angular/add-dependency-injection.js +52 -0
- package/src/lib/angular/add-dependency-injection.js.map +1 -0
- package/src/lib/angular/add-ng-module-export.d.ts +2 -0
- package/src/lib/angular/add-ng-module-export.js +17 -0
- package/src/lib/angular/add-ng-module-export.js.map +1 -0
- package/src/lib/angular/add-ng-module-import.js +17 -0
- package/src/lib/angular/add-ng-module-import.js.map +1 -0
- package/src/lib/{add-ng-module-provider.d.ts → angular/add-ng-module-provider.d.ts} +2 -2
- package/src/lib/angular/add-ng-module-provider.js +11 -0
- package/src/lib/angular/add-ng-module-provider.js.map +1 -0
- package/src/lib/angular/build-angular-base-path.d.ts +8 -0
- package/src/lib/angular/build-angular-base-path.js +16 -0
- package/src/lib/angular/build-angular-base-path.js.map +1 -0
- package/src/lib/angular/coerce-accordion-component.d.ts +7 -0
- package/src/lib/angular/coerce-accordion-component.js +18 -0
- package/src/lib/angular/coerce-accordion-component.js.map +1 -0
- package/src/lib/angular/coerce-component-class.d.ts +8 -0
- package/src/lib/angular/coerce-component-class.js +35 -0
- package/src/lib/angular/coerce-component-class.js.map +1 -0
- package/src/lib/angular/coerce-component.d.ts +15 -0
- package/src/lib/angular/coerce-component.js +82 -0
- package/src/lib/angular/coerce-component.js.map +1 -0
- package/src/lib/angular/coerce-data-source-class.d.ts +21 -0
- package/src/lib/angular/coerce-data-source-class.js +69 -0
- package/src/lib/angular/coerce-data-source-class.js.map +1 -0
- package/src/lib/angular/coerce-dialog-component.d.ts +14 -0
- package/src/lib/angular/coerce-dialog-component.js +79 -0
- package/src/lib/angular/coerce-dialog-component.js.map +1 -0
- package/src/lib/angular/coerce-dialog-table-action-component.d.ts +8 -0
- package/src/lib/angular/coerce-dialog-table-action-component.js +98 -0
- package/src/lib/angular/coerce-dialog-table-action-component.js.map +1 -0
- package/src/lib/angular/coerce-dialog-table-action.d.ts +3 -0
- package/src/lib/angular/coerce-dialog-table-action.js +42 -0
- package/src/lib/angular/coerce-dialog-table-action.js.map +1 -0
- package/src/lib/angular/coerce-form-builder-provider.d.ts +10 -0
- package/src/lib/angular/coerce-form-builder-provider.js +30 -0
- package/src/lib/angular/coerce-form-builder-provider.js.map +1 -0
- package/src/lib/angular/coerce-form-component-provider.d.ts +10 -0
- package/src/lib/angular/coerce-form-component-provider.js +32 -0
- package/src/lib/angular/coerce-form-component-provider.js.map +1 -0
- package/src/lib/angular/coerce-form-definition-control.d.ts +20 -0
- package/src/lib/angular/coerce-form-definition-control.js +133 -0
- package/src/lib/angular/coerce-form-definition-control.js.map +1 -0
- package/src/lib/angular/coerce-form-definition-type.d.ts +10 -0
- package/src/lib/angular/coerce-form-definition-type.js +25 -0
- package/src/lib/angular/coerce-form-definition-type.js.map +1 -0
- package/src/lib/angular/coerce-form-definition.d.ts +13 -0
- package/src/lib/angular/coerce-form-definition.js +70 -0
- package/src/lib/angular/coerce-form-definition.js.map +1 -0
- package/src/lib/angular/coerce-form-provider.d.ts +10 -0
- package/src/lib/angular/coerce-form-provider.js +31 -0
- package/src/lib/angular/coerce-form-provider.js.map +1 -0
- package/src/lib/angular/coerce-form-providers-file.d.ts +7 -0
- package/src/lib/angular/coerce-form-providers-file.js +80 -0
- package/src/lib/angular/coerce-form-providers-file.js.map +1 -0
- package/src/lib/angular/coerce-form-table-action.d.ts +6 -0
- package/src/lib/angular/coerce-form-table-action.js +91 -0
- package/src/lib/angular/coerce-form-table-action.js.map +1 -0
- package/src/lib/angular/coerce-method-class.d.ts +9 -0
- package/src/lib/angular/coerce-method-class.js +48 -0
- package/src/lib/angular/coerce-method-class.js.map +1 -0
- package/src/lib/angular/coerce-navigation-table-action.d.ts +5 -0
- package/src/lib/angular/coerce-navigation-table-action.js +68 -0
- package/src/lib/angular/coerce-navigation-table-action.js.map +1 -0
- package/src/lib/angular/coerce-operation-table-action.d.ts +6 -0
- package/src/lib/angular/coerce-operation-table-action.js +36 -0
- package/src/lib/angular/coerce-operation-table-action.js.map +1 -0
- package/src/lib/angular/coerce-options-data-source.d.ts +6 -0
- package/src/lib/angular/coerce-options-data-source.js +43 -0
- package/src/lib/angular/coerce-options-data-source.js.map +1 -0
- package/src/lib/angular/coerce-project-feature.d.ts +4 -0
- package/src/lib/angular/coerce-project-feature.js +30 -0
- package/src/lib/angular/coerce-project-feature.js.map +1 -0
- package/src/lib/angular/coerce-proxy-remote-method-class.d.ts +11 -0
- package/src/lib/angular/coerce-proxy-remote-method-class.js +99 -0
- package/src/lib/angular/coerce-proxy-remote-method-class.js.map +1 -0
- package/src/lib/angular/coerce-table-action-index-provider.d.ts +5 -0
- package/src/lib/angular/coerce-table-action-index-provider.js +21 -0
- package/src/lib/angular/coerce-table-action-index-provider.js.map +1 -0
- package/src/lib/angular/coerce-table-action-index.d.ts +3 -0
- package/src/lib/angular/coerce-table-action-index.js +12 -0
- package/src/lib/angular/coerce-table-action-index.js.map +1 -0
- package/src/lib/angular/coerce-table-action-provider.d.ts +8 -0
- package/src/lib/angular/coerce-table-action-provider.js +44 -0
- package/src/lib/angular/coerce-table-action-provider.js.map +1 -0
- package/src/lib/angular/coerce-table-action.d.ts +13 -0
- package/src/lib/angular/coerce-table-action.js +82 -0
- package/src/lib/angular/coerce-table-action.js.map +1 -0
- package/src/lib/angular/coerce-table-data-source.d.ts +9 -0
- package/src/lib/angular/coerce-table-data-source.js +51 -0
- package/src/lib/angular/coerce-table-data-source.js.map +1 -0
- package/src/lib/angular/coerce-table-header-button-method.d.ts +13 -0
- package/src/lib/angular/coerce-table-header-button-method.js +78 -0
- package/src/lib/angular/coerce-table-header-button-method.js.map +1 -0
- package/src/lib/angular/coerce-table-parameters-from-route.d.ts +6 -0
- package/src/lib/angular/coerce-table-parameters-from-route.js +48 -0
- package/src/lib/angular/coerce-table-parameters-from-route.js.map +1 -0
- package/src/lib/angular/coerce-table-select-resolve-value-method.d.ts +6 -0
- package/src/lib/angular/coerce-table-select-resolve-value-method.js +30 -0
- package/src/lib/angular/coerce-table-select-resolve-value-method.js.map +1 -0
- package/src/lib/angular/coerce-tree-table-children-proxy-remote-method-class.d.ts +6 -0
- package/src/lib/angular/coerce-tree-table-children-proxy-remote-method-class.js +34 -0
- package/src/lib/angular/coerce-tree-table-children-proxy-remote-method-class.js.map +1 -0
- package/src/lib/angular/coerce-tree-table-root-proxy-remote-method-class.d.ts +6 -0
- package/src/lib/angular/coerce-tree-table-root-proxy-remote-method-class.js +34 -0
- package/src/lib/angular/coerce-tree-table-root-proxy-remote-method-class.js.map +1 -0
- package/src/lib/angular/enforce-use-form-control-order.d.ts +5 -0
- package/src/lib/angular/enforce-use-form-control-order.js +29 -0
- package/src/lib/angular/enforce-use-form-control-order.js.map +1 -0
- package/src/lib/angular/find-component-module-source-file.js +5 -0
- package/src/lib/angular/find-component-module-source-file.js.map +1 -0
- package/src/lib/angular/find-component-source-file.js +15 -0
- package/src/lib/angular/find-component-source-file.js.map +1 -0
- package/src/lib/angular/find-routing-module.js +12 -0
- package/src/lib/angular/find-routing-module.js.map +1 -0
- package/src/lib/angular/form-definition-utilities.d.ts +13 -0
- package/src/lib/angular/form-definition-utilities.js +21 -0
- package/src/lib/angular/form-definition-utilities.js.map +1 -0
- package/src/lib/{get-component-class.d.ts → angular/get-component-class.d.ts} +1 -1
- package/src/lib/angular/get-component-class.js +8 -0
- package/src/lib/angular/get-component-class.js.map +1 -0
- package/src/lib/{get-component-options-object.d.ts → angular/get-component-options-object.d.ts} +1 -1
- package/src/lib/{get-component-options-object.js → angular/get-component-options-object.js} +4 -8
- package/src/lib/angular/get-component-options-object.js.map +1 -0
- package/src/lib/{get-ng-module-options-object.d.ts → angular/get-ng-module-options-object.d.ts} +1 -1
- package/src/lib/{get-ng-module-options-object.js → angular/get-ng-module-options-object.js} +4 -8
- package/src/lib/angular/get-ng-module-options-object.js.map +1 -0
- package/src/lib/{handle-component-module.d.ts → angular/handle-component-module.d.ts} +1 -1
- package/src/lib/angular/handle-component-module.js +2 -0
- package/src/lib/angular/handle-component-module.js.map +1 -0
- package/src/lib/{handle-component.d.ts → angular/handle-component.d.ts} +1 -1
- package/src/lib/angular/handle-component.js +2 -0
- package/src/lib/angular/handle-component.js.map +1 -0
- package/src/lib/angular/has-accordion-component.d.ts +7 -0
- package/src/lib/angular/has-accordion-component.js +21 -0
- package/src/lib/angular/has-accordion-component.js.map +1 -0
- package/src/lib/angular/has-component.d.ts +8 -0
- package/src/lib/angular/has-component.js +22 -0
- package/src/lib/angular/has-component.js.map +1 -0
- package/src/lib/angular/has-dialog-component.d.ts +5 -0
- package/src/lib/angular/has-dialog-component.js +13 -0
- package/src/lib/angular/has-dialog-component.js.map +1 -0
- package/src/lib/angular/has-project-feature.d.ts +6 -0
- package/src/lib/angular/has-project-feature.js +15 -0
- package/src/lib/angular/has-project-feature.js.map +1 -0
- package/src/lib/angular/has-table-component.d.ts +5 -0
- package/src/lib/angular/has-table-component.js +18 -0
- package/src/lib/angular/has-table-component.js.map +1 -0
- package/src/lib/angular/index.d.ts +26 -0
- package/src/lib/angular/index.js +27 -0
- package/src/lib/angular/index.js.map +1 -0
- package/src/lib/auto-import.js +12 -14
- package/src/lib/auto-import.js.map +1 -1
- package/src/lib/coerce-class-constructor.js +1 -5
- package/src/lib/coerce-class-constructor.js.map +1 -1
- package/src/lib/coerce-class-method.d.ts +1 -1
- package/src/lib/coerce-class-method.js +3 -6
- package/src/lib/coerce-class-method.js.map +1 -1
- package/src/lib/coerce-class.js +5 -6
- package/src/lib/coerce-class.js.map +1 -1
- package/src/lib/coerce-property-key.js +1 -5
- package/src/lib/coerce-property-key.js.map +1 -1
- package/src/lib/coerce-source-file.js +1 -5
- package/src/lib/coerce-source-file.js.map +1 -1
- package/src/lib/coerce-variable-declaration.d.ts +2 -2
- package/src/lib/coerce-variable-declaration.js +14 -10
- package/src/lib/coerce-variable-declaration.js.map +1 -1
- package/src/lib/fix-missing-imports.js +9 -13
- package/src/lib/fix-missing-imports.js.map +1 -1
- package/src/lib/get-array-declaration.js +6 -10
- package/src/lib/get-array-declaration.js.map +1 -1
- package/src/lib/get-class-decorator-arguments.js +2 -7
- package/src/lib/get-class-decorator-arguments.js.map +1 -1
- package/src/lib/get-coerce-array-literal-form-object-literal.d.ts +1 -1
- package/src/lib/get-coerce-array-literal-form-object-literal.js +5 -9
- package/src/lib/get-coerce-array-literal-form-object-literal.js.map +1 -1
- package/src/lib/get-form-providers-source-file.js +9 -13
- package/src/lib/get-form-providers-source-file.js.map +1 -1
- package/src/lib/get-variable-declaration.js +2 -7
- package/src/lib/get-variable-declaration.js.map +1 -1
- package/src/lib/is-array-literal-expression.js +4 -9
- package/src/lib/is-array-literal-expression.js.map +1 -1
- package/src/lib/merge-ts-morph-project.js +3 -7
- package/src/lib/merge-ts-morph-project.js.map +1 -1
- package/src/lib/nest/add-nest-controller.js +44 -0
- package/src/lib/nest/add-nest-controller.js.map +1 -0
- package/src/lib/nest/add-nest-module-controller.js +11 -0
- package/src/lib/nest/add-nest-module-controller.js.map +1 -0
- package/src/lib/nest/add-nest-module-import.js +16 -0
- package/src/lib/nest/add-nest-module-import.js.map +1 -0
- package/src/lib/nest/add-nest-module-provider.js +11 -0
- package/src/lib/nest/add-nest-module-provider.js.map +1 -0
- package/src/lib/nest/add-nest-module-to-app-module.d.ts +7 -0
- package/src/lib/nest/add-nest-module-to-app-module.js +26 -0
- package/src/lib/nest/add-nest-module-to-app-module.js.map +1 -0
- package/src/lib/nest/add-nest-provider-to-array.js +37 -0
- package/src/lib/nest/add-nest-provider-to-array.js.map +1 -0
- package/src/lib/nest/add-operation-to-controller.d.ts +37 -0
- package/src/lib/nest/add-operation-to-controller.js +221 -0
- package/src/lib/nest/add-operation-to-controller.js.map +1 -0
- package/src/lib/nest/assert-nest-project.d.ts +7 -0
- package/src/lib/nest/assert-nest-project.js +11 -0
- package/src/lib/nest/assert-nest-project.js.map +1 -0
- package/src/lib/nest/build-nest-base-path.d.ts +8 -0
- package/src/lib/nest/build-nest-base-path.js +13 -0
- package/src/lib/nest/build-nest-base-path.js.map +1 -0
- package/src/lib/nest/build-nest-controller-name.d.ts +6 -0
- package/src/lib/nest/build-nest-controller-name.js +23 -0
- package/src/lib/nest/build-nest-controller-name.js.map +1 -0
- package/src/lib/nest/coerce-dto-class.d.ts +23 -0
- package/src/lib/nest/coerce-dto-class.js +175 -0
- package/src/lib/nest/coerce-dto-class.js.map +1 -0
- package/src/lib/nest/coerce-form-submit-operation.d.ts +7 -0
- package/src/lib/nest/coerce-form-submit-operation.js +31 -0
- package/src/lib/nest/coerce-form-submit-operation.js.map +1 -0
- package/src/lib/nest/coerce-get-by-id-operation.d.ts +7 -0
- package/src/lib/nest/coerce-get-by-id-operation.js +68 -0
- package/src/lib/nest/coerce-get-by-id-operation.js.map +1 -0
- package/src/lib/nest/coerce-get-children-operation.d.ts +3 -0
- package/src/lib/nest/coerce-get-children-operation.js +63 -0
- package/src/lib/nest/coerce-get-children-operation.js.map +1 -0
- package/src/lib/nest/coerce-get-data-grid-operation.d.ts +7 -0
- package/src/lib/nest/coerce-get-data-grid-operation.js +33 -0
- package/src/lib/nest/coerce-get-data-grid-operation.js.map +1 -0
- package/src/lib/nest/coerce-get-page-operation.d.ts +39 -0
- package/src/lib/nest/coerce-get-page-operation.js +248 -0
- package/src/lib/nest/coerce-get-page-operation.js.map +1 -0
- package/src/lib/nest/coerce-get-root-operation.d.ts +3 -0
- package/src/lib/nest/coerce-get-root-operation.js +56 -0
- package/src/lib/nest/coerce-get-root-operation.js.map +1 -0
- package/src/lib/nest/coerce-nest-controller.d.ts +13 -0
- package/src/lib/nest/coerce-nest-controller.js +73 -0
- package/src/lib/nest/coerce-nest-controller.js.map +1 -0
- package/src/lib/nest/coerce-nest-module.d.ts +8 -0
- package/src/lib/nest/coerce-nest-module.js +51 -0
- package/src/lib/nest/coerce-nest-module.js.map +1 -0
- package/src/lib/nest/coerce-nest-service-project.d.ts +10 -0
- package/src/lib/nest/coerce-nest-service-project.js +33 -0
- package/src/lib/nest/coerce-nest-service-project.js.map +1 -0
- package/src/lib/nest/coerce-operation.d.ts +23 -0
- package/src/lib/nest/coerce-operation.js +100 -0
- package/src/lib/nest/coerce-operation.js.map +1 -0
- package/src/lib/nest/coerce-options-operation.d.ts +8 -0
- package/src/lib/nest/coerce-options-operation.js +51 -0
- package/src/lib/nest/coerce-options-operation.js.map +1 -0
- package/src/lib/nest/coerce-page-dto-class.d.ts +12 -0
- package/src/lib/nest/coerce-page-dto-class.js +33 -0
- package/src/lib/nest/coerce-page-dto-class.js.map +1 -0
- package/src/lib/nest/coerce-row-dto-class.d.ts +9 -0
- package/src/lib/nest/coerce-row-dto-class.js +18 -0
- package/src/lib/nest/coerce-row-dto-class.js.map +1 -0
- package/src/lib/nest/coerce-submit-data-grid-operation.d.ts +5 -0
- package/src/lib/nest/coerce-submit-data-grid-operation.js +14 -0
- package/src/lib/nest/coerce-submit-data-grid-operation.js.map +1 -0
- package/src/lib/nest/coerce-table-select-operation.d.ts +6 -0
- package/src/lib/nest/coerce-table-select-operation.js +23 -0
- package/src/lib/nest/coerce-table-select-operation.js.map +1 -0
- package/src/lib/nest/coerce-table-select-value-resolve-operation.d.ts +8 -0
- package/src/lib/nest/coerce-table-select-value-resolve-operation.js +39 -0
- package/src/lib/nest/coerce-table-select-value-resolve-operation.js.map +1 -0
- package/src/lib/nest/coerce-tree-operation.d.ts +6 -0
- package/src/lib/nest/coerce-tree-operation.js +59 -0
- package/src/lib/nest/coerce-tree-operation.js.map +1 -0
- package/src/lib/nest/create-dto-class.d.ts +19 -0
- package/src/lib/nest/create-dto-class.js +192 -0
- package/src/lib/nest/create-dto-class.js.map +1 -0
- package/src/lib/nest/find-nest-module-declaration.js +7 -0
- package/src/lib/nest/find-nest-module-declaration.js.map +1 -0
- package/src/lib/nest/find-nest-module-source-file.js +6 -0
- package/src/lib/nest/find-nest-module-source-file.js.map +1 -0
- package/src/lib/nest/get-nest-module-metadata.js +15 -0
- package/src/lib/nest/get-nest-module-metadata.js.map +1 -0
- package/src/lib/nest/has-nest-controller.d.ts +9 -0
- package/src/lib/nest/has-nest-controller.js +12 -0
- package/src/lib/nest/has-nest-controller.js.map +1 -0
- package/src/lib/nest/has-nest-module-class.js +7 -0
- package/src/lib/nest/has-nest-module-class.js.map +1 -0
- package/src/lib/nest/has-nest-module.d.ts +8 -0
- package/src/lib/nest/has-nest-module.js +14 -0
- package/src/lib/nest/has-nest-module.js.map +1 -0
- package/src/lib/nest/is-nest-module-class.js +4 -0
- package/src/lib/nest/is-nest-module-class.js.map +1 -0
- package/src/lib/nest/nest-provider-object.js +2 -0
- package/src/lib/nest/nest-provider-object.js.map +1 -0
- package/src/lib/nest/operation-id-utilities.d.ts +16 -0
- package/src/lib/nest/operation-id-utilities.js +89 -0
- package/src/lib/nest/operation-id-utilities.js.map +1 -0
- package/src/lib/nest/project-utilities.d.ts +13 -0
- package/src/lib/nest/project-utilities.js +19 -0
- package/src/lib/nest/project-utilities.js.map +1 -0
- package/src/lib/nest/remove-nest-module-provider.d.ts +3 -0
- package/src/lib/nest/remove-nest-module-provider.js +9 -0
- package/src/lib/nest/remove-nest-module-provider.js.map +1 -0
- package/src/lib/nest/remove-nest-provider-to-array.d.ts +3 -0
- package/src/lib/nest/remove-nest-provider-to-array.js +24 -0
- package/src/lib/nest/remove-nest-provider-to-array.js.map +1 -0
- package/src/lib/organize-imports.js +7 -11
- package/src/lib/organize-imports.js.map +1 -1
- package/src/lib/overwrite-decorator.d.ts +1 -1
- package/src/lib/overwrite-decorator.js +2 -6
- package/src/lib/overwrite-decorator.js.map +1 -1
- package/src/lib/overwrite-property.js +3 -7
- package/src/lib/overwrite-property.js.map +1 -1
- package/src/lib/provider-object.js +1 -2
- package/src/lib/provider-object.js.map +1 -1
- package/src/lib/to-value-context.js +1 -2
- package/src/lib/to-value-context.js.map +1 -1
- package/src/lib/ts-morph/apply-ts-morph-project.d.ts +3 -0
- package/src/lib/ts-morph/apply-ts-morph-project.js +5 -0
- package/src/lib/ts-morph/apply-ts-morph-project.js.map +1 -0
- package/src/lib/ts-morph/coerce-class-implementation.d.ts +2 -0
- package/src/lib/ts-morph/coerce-class-implementation.js +6 -0
- package/src/lib/ts-morph/coerce-class-implementation.js.map +1 -0
- package/src/lib/ts-morph/coerce-class-property.d.ts +2 -0
- package/src/lib/ts-morph/coerce-class-property.js +11 -0
- package/src/lib/ts-morph/coerce-class-property.js.map +1 -0
- package/src/lib/ts-morph/coerce-decorator.d.ts +9 -0
- package/src/lib/ts-morph/coerce-decorator.js +21 -0
- package/src/lib/ts-morph/coerce-decorator.js.map +1 -0
- package/src/lib/ts-morph/coerce-function.d.ts +2 -0
- package/src/lib/ts-morph/coerce-function.js +6 -0
- package/src/lib/ts-morph/coerce-function.js.map +1 -0
- package/src/lib/ts-morph/coerce-imports.d.ts +2 -0
- package/src/lib/ts-morph/coerce-imports.js +21 -0
- package/src/lib/ts-morph/coerce-imports.js.map +1 -0
- package/src/lib/ts-morph/coerce-interface.d.ts +9 -0
- package/src/lib/ts-morph/coerce-interface.js +28 -0
- package/src/lib/ts-morph/coerce-interface.js.map +1 -0
- package/src/lib/ts-morph/coerce-parameter-declaration.d.ts +2 -0
- package/src/lib/ts-morph/coerce-parameter-declaration.js +10 -0
- package/src/lib/ts-morph/coerce-parameter-declaration.js.map +1 -0
- package/src/lib/ts-morph/coerce-statements.d.ts +2 -0
- package/src/lib/ts-morph/coerce-statements.js +7 -0
- package/src/lib/ts-morph/coerce-statements.js.map +1 -0
- package/src/lib/ts-morph/coerce-type-alias.d.ts +4 -0
- package/src/lib/ts-morph/coerce-type-alias.js +12 -0
- package/src/lib/ts-morph/coerce-type-alias.js.map +1 -0
- package/src/lib/ts-morph/find-function.d.ts +6 -0
- package/src/lib/ts-morph/find-function.js +4 -0
- package/src/lib/ts-morph/find-function.js.map +1 -0
- package/src/lib/ts-morph/write-type.d.ts +6 -0
- package/src/lib/ts-morph/write-type.js +30 -0
- package/src/lib/ts-morph/write-type.js.map +1 -0
- package/src/lib/ts-morph-transform.d.ts +28 -0
- package/src/lib/ts-morph-transform.js +11 -0
- package/src/lib/ts-morph-transform.js.map +1 -0
- package/src/lib/types/form-definition-control.d.ts +9 -0
- package/src/lib/types/form-definition-control.js +2 -0
- package/src/lib/types/form-definition-control.js.map +1 -0
- package/migration.json +0 -4
- package/src/lib/add-component-animations.js +0 -18
- package/src/lib/add-component-animations.js.map +0 -1
- package/src/lib/add-component-fake-provider.js +0 -24
- package/src/lib/add-component-fake-provider.js.map +0 -1
- package/src/lib/add-component-input.js.map +0 -1
- package/src/lib/add-component-provider.js +0 -14
- package/src/lib/add-component-provider.js.map +0 -1
- package/src/lib/add-control-validator.js.map +0 -1
- package/src/lib/add-dependency-injection.js +0 -56
- package/src/lib/add-dependency-injection.js.map +0 -1
- package/src/lib/add-ng-module-import.js +0 -20
- package/src/lib/add-ng-module-import.js.map +0 -1
- package/src/lib/add-ng-module-provider.js +0 -14
- package/src/lib/add-ng-module-provider.js.map +0 -1
- package/src/lib/apply-ts-morph-project.d.ts +0 -3
- package/src/lib/apply-ts-morph-project.js +0 -71
- package/src/lib/apply-ts-morph-project.js.map +0 -1
- package/src/lib/coerce-method-class.d.ts +0 -3
- package/src/lib/coerce-method-class.js +0 -14
- package/src/lib/coerce-method-class.js.map +0 -1
- package/src/lib/find-component-module-source-file.js +0 -9
- package/src/lib/find-component-module-source-file.js.map +0 -1
- package/src/lib/find-component-source-file.js +0 -19
- package/src/lib/find-component-source-file.js.map +0 -1
- package/src/lib/find-routing-module.js +0 -17
- package/src/lib/find-routing-module.js.map +0 -1
- package/src/lib/get-component-class.js +0 -12
- package/src/lib/get-component-class.js.map +0 -1
- package/src/lib/get-component-options-object.js.map +0 -1
- package/src/lib/get-ng-module-options-object.js.map +0 -1
- package/src/lib/handle-component-module.js +0 -3
- package/src/lib/handle-component-module.js.map +0 -1
- package/src/lib/handle-component.js +0 -3
- package/src/lib/handle-component.js.map +0 -1
- package/src/lib/nestjs/add-nest-controller.js +0 -48
- package/src/lib/nestjs/add-nest-controller.js.map +0 -1
- package/src/lib/nestjs/add-nest-module-controller.js +0 -14
- package/src/lib/nestjs/add-nest-module-controller.js.map +0 -1
- package/src/lib/nestjs/add-nest-module-import.js +0 -19
- package/src/lib/nestjs/add-nest-module-import.js.map +0 -1
- package/src/lib/nestjs/add-nest-module-provider.js +0 -14
- package/src/lib/nestjs/add-nest-module-provider.js.map +0 -1
- package/src/lib/nestjs/add-nest-provider-to-array.js +0 -40
- package/src/lib/nestjs/add-nest-provider-to-array.js.map +0 -1
- package/src/lib/nestjs/find-nest-module-declaration.js +0 -11
- package/src/lib/nestjs/find-nest-module-declaration.js.map +0 -1
- package/src/lib/nestjs/find-nest-module-source-file.js +0 -10
- package/src/lib/nestjs/find-nest-module-source-file.js.map +0 -1
- package/src/lib/nestjs/get-nest-module-metadata.js +0 -19
- package/src/lib/nestjs/get-nest-module-metadata.js.map +0 -1
- package/src/lib/nestjs/has-nest-module-class.js +0 -11
- package/src/lib/nestjs/has-nest-module-class.js.map +0 -1
- package/src/lib/nestjs/is-nest-module-class.js +0 -8
- package/src/lib/nestjs/is-nest-module-class.js.map +0 -1
- package/src/lib/nestjs/nest-provider-object.js +0 -3
- package/src/lib/nestjs/nest-provider-object.js.map +0 -1
- /package/src/lib/{add-component-animations.d.ts → angular/add-component-animations.d.ts} +0 -0
- /package/src/lib/{add-component-input.d.ts → angular/add-component-input.d.ts} +0 -0
- /package/src/lib/{add-control-validator.d.ts → angular/add-control-validator.d.ts} +0 -0
- /package/src/lib/{add-dependency-injection.d.ts → angular/add-dependency-injection.d.ts} +0 -0
- /package/src/lib/{add-ng-module-import.d.ts → angular/add-ng-module-import.d.ts} +0 -0
- /package/src/lib/{find-component-module-source-file.d.ts → angular/find-component-module-source-file.d.ts} +0 -0
- /package/src/lib/{find-component-source-file.d.ts → angular/find-component-source-file.d.ts} +0 -0
- /package/src/lib/{find-routing-module.d.ts → angular/find-routing-module.d.ts} +0 -0
- /package/src/lib/{nestjs → nest}/add-nest-controller.d.ts +0 -0
- /package/src/lib/{nestjs → nest}/add-nest-module-controller.d.ts +0 -0
- /package/src/lib/{nestjs → nest}/add-nest-module-import.d.ts +0 -0
- /package/src/lib/{nestjs → nest}/add-nest-module-provider.d.ts +0 -0
- /package/src/lib/{nestjs → nest}/add-nest-provider-to-array.d.ts +0 -0
- /package/src/lib/{nestjs → nest}/find-nest-module-declaration.d.ts +0 -0
- /package/src/lib/{nestjs → nest}/find-nest-module-source-file.d.ts +0 -0
- /package/src/lib/{nestjs → nest}/get-nest-module-metadata.d.ts +0 -0
- /package/src/lib/{nestjs → nest}/has-nest-module-class.d.ts +0 -0
- /package/src/lib/{nestjs → nest}/is-nest-module-class.d.ts +0 -0
- /package/src/lib/{nestjs → nest}/nest-provider-object.d.ts +0 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { TsMorphAngularProjectTransformRule, } from '../ts-morph-transform';
|
|
2
|
+
import { CoerceImports } from '../ts-morph/coerce-imports';
|
|
3
|
+
import { AddComponentProvider } from './add-component-provider';
|
|
4
|
+
export function CoerceTableActionIndexProviderRule(options) {
|
|
5
|
+
let { tableName, directory, project, feature, } = options;
|
|
6
|
+
if (directory?.endsWith('/methods/action')) {
|
|
7
|
+
directory = directory.replace('/methods/action', '');
|
|
8
|
+
}
|
|
9
|
+
return TsMorphAngularProjectTransformRule({
|
|
10
|
+
project,
|
|
11
|
+
feature,
|
|
12
|
+
directory,
|
|
13
|
+
}, (project, [sourceFile]) => {
|
|
14
|
+
AddComponentProvider(sourceFile, 'TABLE_ROW_ACTION_METHODS');
|
|
15
|
+
CoerceImports(sourceFile, {
|
|
16
|
+
namedImports: ['TABLE_ROW_ACTION_METHODS'],
|
|
17
|
+
moduleSpecifier: './methods/action',
|
|
18
|
+
});
|
|
19
|
+
}, [`${tableName}.component.ts`]);
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=coerce-table-action-index-provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coerce-table-action-index-provider.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/angular/coerce-table-action-index-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,kCAAkC,GACnC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAMhE,MAAM,UAAU,kCAAkC,CAAC,OAAwD;IACzG,IAAI,EACF,SAAS,EACT,SAAS,EACT,OAAO,EACP,OAAO,GACR,GAAG,OAAO,CAAC;IACZ,IAAI,SAAS,EAAE,QAAQ,CAAC,iBAAiB,CAAC,EAAE;QAC1C,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC;KACtD;IACD,OAAO,kCAAkC,CAAC;QACxC,OAAO;QACP,OAAO;QACP,SAAS;KACV,EAAE,CAAC,OAAO,EAAE,CAAE,UAAU,CAAE,EAAE,EAAE;QAE7B,oBAAoB,CAAC,UAAU,EAAE,0BAA0B,CAAC,CAAC;QAC7D,aAAa,CAAC,UAAU,EAAE;YACxB,YAAY,EAAE,CAAE,0BAA0B,CAAE;YAC5C,eAAe,EAAE,kBAAkB;SACpC,CAAC,CAAC;IAEL,CAAC,EAAE,CAAE,GAAI,SAAU,eAAe,CAAE,CAAC,CAAC;AAExC,CAAC"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { TsMorphAngularProjectTransformOptions } from '../ts-morph-transform';
|
|
2
|
+
export type CoerceTableActionIndexOptions = TsMorphAngularProjectTransformOptions;
|
|
3
|
+
export declare function CoerceTableActionIndexRule(options: CoerceTableActionIndexOptions): import("@angular-devkit/schematics").Rule;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { CoerceSourceFile } from '../coerce-source-file';
|
|
2
|
+
import { CoerceVariableDeclaration } from '../coerce-variable-declaration';
|
|
3
|
+
import { TsMorphAngularProjectTransformRule, } from '../ts-morph-transform';
|
|
4
|
+
export function CoerceTableActionIndexRule(options) {
|
|
5
|
+
return TsMorphAngularProjectTransformRule(options, (project) => {
|
|
6
|
+
const sourceFile = CoerceSourceFile(project, 'index.ts');
|
|
7
|
+
CoerceVariableDeclaration(sourceFile, 'TABLE_ROW_ACTION_METHODS', {
|
|
8
|
+
initializer: '[]',
|
|
9
|
+
});
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=coerce-table-action-index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coerce-table-action-index.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/angular/coerce-table-action-index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAEL,kCAAkC,GACnC,MAAM,uBAAuB,CAAC;AAI/B,MAAM,UAAU,0BAA0B,CAAC,OAAsC;IAE/E,OAAO,kCAAkC,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE;QAE7D,MAAM,UAAU,GAAG,gBAAgB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QAEzD,yBAAyB,CAAC,UAAU,EAAE,0BAA0B,EAAE;YAChE,WAAW,EAAE,IAAI;SAClB,CAAC,CAAC;IAGL,CAAC,CAAC,CAAC;AAEL,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export interface CoerceTableActionProviderOptions {
|
|
2
|
+
project: string;
|
|
3
|
+
feature?: string | null;
|
|
4
|
+
directory?: string | null;
|
|
5
|
+
type: string;
|
|
6
|
+
tableName: string;
|
|
7
|
+
}
|
|
8
|
+
export declare function CoerceTableActionProviderRule(options: CoerceTableActionProviderOptions): import("@angular-devkit/schematics").Rule;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { classify, CoerceSuffix, } from '@rxap/schematics-utilities';
|
|
2
|
+
import { ArrayLiteralExpression, PropertyAssignment, } from 'ts-morph';
|
|
3
|
+
import { AddProviderToArray } from '../add-provider-to-array';
|
|
4
|
+
import { CoerceSourceFile } from '../coerce-source-file';
|
|
5
|
+
import { CoerceVariableDeclaration } from '../coerce-variable-declaration';
|
|
6
|
+
import { TsMorphAngularProjectTransformRule } from '../ts-morph-transform';
|
|
7
|
+
import { CoerceImports } from '../ts-morph/coerce-imports';
|
|
8
|
+
export function CoerceTableActionProviderRule(options) {
|
|
9
|
+
const { type, tableName, } = options;
|
|
10
|
+
return TsMorphAngularProjectTransformRule(options, project => {
|
|
11
|
+
const sourceFile = CoerceSourceFile(project, 'index.ts');
|
|
12
|
+
const variableDeclaration = CoerceVariableDeclaration(sourceFile, 'TABLE_ROW_ACTION_METHODS', {
|
|
13
|
+
initializer: `[]`,
|
|
14
|
+
});
|
|
15
|
+
const formProviderArray = variableDeclaration.getInitializer();
|
|
16
|
+
if (!(formProviderArray instanceof
|
|
17
|
+
ArrayLiteralExpression)) {
|
|
18
|
+
throw new Error('FormProviders initializer is not an array literal expression');
|
|
19
|
+
}
|
|
20
|
+
const className = CoerceSuffix(classify(type), 'TableRowActionMethod');
|
|
21
|
+
AddProviderToArray({
|
|
22
|
+
provide: 'RXAP_TABLE_ROW_ACTION_METHOD',
|
|
23
|
+
useClass: className,
|
|
24
|
+
multi: true,
|
|
25
|
+
}, formProviderArray, false, (ole, po) => {
|
|
26
|
+
const provideProperty = ole.getProperty('useClass');
|
|
27
|
+
if (provideProperty instanceof
|
|
28
|
+
PropertyAssignment) {
|
|
29
|
+
return provideProperty.getInitializer()?.getFullText().trim() ===
|
|
30
|
+
po.useClass;
|
|
31
|
+
}
|
|
32
|
+
return false;
|
|
33
|
+
});
|
|
34
|
+
CoerceImports(sourceFile, {
|
|
35
|
+
moduleSpecifier: `./${CoerceSuffix(type, '-table-row-action')}.method`,
|
|
36
|
+
namedImports: [className],
|
|
37
|
+
});
|
|
38
|
+
CoerceImports(sourceFile, {
|
|
39
|
+
moduleSpecifier: '@rxap/material-table-system',
|
|
40
|
+
namedImports: ['RXAP_TABLE_ROW_ACTION_METHOD'],
|
|
41
|
+
});
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=coerce-table-action-provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coerce-table-action-provider.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/angular/coerce-table-action-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,YAAY,GACb,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,sBAAsB,EACtB,kBAAkB,GACnB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,kCAAkC,EAAE,MAAM,uBAAuB,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAU3D,MAAM,UAAU,6BAA6B,CAAC,OAAyC;IACrF,MAAM,EACJ,IAAI,EACJ,SAAS,GACV,GAAG,OAAO,CAAC;IAEZ,OAAO,kCAAkC,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;QAE3D,MAAM,UAAU,GAAG,gBAAgB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QAEzD,MAAM,mBAAmB,GAAG,yBAAyB,CAAC,UAAU,EAAE,0BAA0B,EAAE;YAC5F,WAAW,EAAE,IAAI;SAClB,CAAC,CAAC;QAEH,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,cAAc,EAAE,CAAC;QAE/D,IAAI,CAAC,CAAC,iBAAiB;YACrB,sBAAsB,CAAC,EAAE;YACzB,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;SACjF;QAED,MAAM,SAAS,GAAG,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,sBAAsB,CAAC,CAAC;QAEvE,kBAAkB,CAAC;YACjB,OAAO,EAAE,8BAA8B;YACvC,QAAQ,EAAE,SAAS;YACnB,KAAK,EAAE,IAAI;SACZ,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE;YACvC,MAAM,eAAe,GAAG,GAAG,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;YAEpD,IAAI,eAAe;gBACjB,kBAAkB,EAAE;gBAEpB,OAAO,eAAe,CAAC,cAAc,EAAE,EAAE,WAAW,EAAE,CAAC,IAAI,EAAE;oBAC3D,EAAE,CAAC,QAAQ,CAAC;aAEf;YACD,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CAAC;QAEH,aAAa,CAAC,UAAU,EAAE;YACxB,eAAe,EAAE,KAAM,YAAY,CAAC,IAAI,EAAE,mBAAmB,CAAE,SAAS;YACxE,YAAY,EAAE,CAAE,SAAS,CAAE;SAC5B,CAAC,CAAC;QACH,aAAa,CAAC,UAAU,EAAE;YACxB,eAAe,EAAE,6BAA6B;YAC9C,YAAY,EAAE,CAAE,8BAA8B,CAAE;SACjD,CAAC,CAAC;IAEL,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { CoerceMethodClassOptions } from './coerce-method-class';
|
|
2
|
+
export interface CoerceTableActionOptions extends Omit<CoerceMethodClassOptions, 'name'> {
|
|
3
|
+
type: string;
|
|
4
|
+
tableName: string;
|
|
5
|
+
refresh?: boolean;
|
|
6
|
+
confirm?: boolean;
|
|
7
|
+
tooltip?: string | null;
|
|
8
|
+
errorMessage?: string | null;
|
|
9
|
+
successMessage?: string | null;
|
|
10
|
+
priority?: number | null;
|
|
11
|
+
checkFunction?: string | null;
|
|
12
|
+
}
|
|
13
|
+
export declare function CoerceTableActionRule(options: CoerceTableActionOptions): import("@angular-devkit/schematics").Rule;
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { Writers, } from 'ts-morph';
|
|
2
|
+
import { CoerceMethodClass, } from './coerce-method-class';
|
|
3
|
+
import { classify, CoerceSuffix, } from '@rxap/schematics-utilities';
|
|
4
|
+
import { CoerceClassImplementation } from '../ts-morph/coerce-class-implementation';
|
|
5
|
+
import { chain } from '@angular-devkit/schematics';
|
|
6
|
+
import { CoerceTableActionIndexRule } from './coerce-table-action-index';
|
|
7
|
+
import { CoerceTableActionIndexProviderRule } from './coerce-table-action-index-provider';
|
|
8
|
+
import { CoerceTableActionProviderRule } from './coerce-table-action-provider';
|
|
9
|
+
import { CoerceDecorator } from '../ts-morph/coerce-decorator';
|
|
10
|
+
import { CoerceImports } from '../ts-morph/coerce-imports';
|
|
11
|
+
export function CoerceTableActionRule(options) {
|
|
12
|
+
let { tableName, type, refresh, confirm, tooltip, errorMessage, successMessage, priority, checkFunction, tsMorphTransform, } = options;
|
|
13
|
+
tsMorphTransform ??= () => ({});
|
|
14
|
+
refresh ??= false;
|
|
15
|
+
confirm ??= false;
|
|
16
|
+
priority ??= 0;
|
|
17
|
+
return chain([
|
|
18
|
+
CoerceTableActionIndexProviderRule(options),
|
|
19
|
+
CoerceTableActionIndexRule(options),
|
|
20
|
+
CoerceTableActionProviderRule(options),
|
|
21
|
+
CoerceMethodClass({
|
|
22
|
+
...options,
|
|
23
|
+
name: CoerceSuffix(type, '-table-row-action'),
|
|
24
|
+
tsMorphTransform: (project, sourceFile, classDeclaration) => {
|
|
25
|
+
const tableInterfaceName = `I${classify(tableName)}`;
|
|
26
|
+
const optionsObj = {
|
|
27
|
+
type: w => w.quote(type),
|
|
28
|
+
refresh: refresh ? 'true' : 'false',
|
|
29
|
+
confirm: confirm ? 'true' : 'false',
|
|
30
|
+
priority: priority?.toFixed(0) ?? '0',
|
|
31
|
+
};
|
|
32
|
+
if (tooltip) {
|
|
33
|
+
optionsObj['tooltip'] = `$localize\`${tooltip}\``;
|
|
34
|
+
}
|
|
35
|
+
if (errorMessage) {
|
|
36
|
+
optionsObj['errorMessage'] = w => w.quote(errorMessage);
|
|
37
|
+
}
|
|
38
|
+
if (successMessage) {
|
|
39
|
+
optionsObj['successMessage'] = w => w.quote(successMessage);
|
|
40
|
+
}
|
|
41
|
+
if (checkFunction) {
|
|
42
|
+
if (checkFunction.match(/^\([^)]+\)\s*=>/)) {
|
|
43
|
+
optionsObj['checkFunction'] = checkFunction;
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
optionsObj['checkFunction'] =
|
|
47
|
+
`(element: ${tableInterfaceName}, index: number, array: ${tableInterfaceName}[]) => ${checkFunction}`;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
CoerceDecorator(classDeclaration, 'TableActionMethod').set({
|
|
51
|
+
arguments: [Writers.object(optionsObj)],
|
|
52
|
+
});
|
|
53
|
+
CoerceImports(sourceFile, {
|
|
54
|
+
moduleSpecifier: '@rxap/material-table-system',
|
|
55
|
+
namedImports: ['TableActionMethod', 'TableRowActionTypeMethod'],
|
|
56
|
+
});
|
|
57
|
+
CoerceImports(sourceFile, {
|
|
58
|
+
moduleSpecifier: `../../${tableName}`,
|
|
59
|
+
namedImports: [tableInterfaceName],
|
|
60
|
+
});
|
|
61
|
+
CoerceClassImplementation(classDeclaration, `TableRowActionTypeMethod<${tableInterfaceName}>`);
|
|
62
|
+
return {
|
|
63
|
+
statements: [
|
|
64
|
+
`console.log(\`action row type: ${type}\`, parameters);`,
|
|
65
|
+
`return parameters;`,
|
|
66
|
+
],
|
|
67
|
+
isAsync: true,
|
|
68
|
+
parameters: [
|
|
69
|
+
{
|
|
70
|
+
name: 'parameters',
|
|
71
|
+
type: tableInterfaceName,
|
|
72
|
+
hasQuestionToken: false,
|
|
73
|
+
},
|
|
74
|
+
],
|
|
75
|
+
returnType: `Promise<unknown>`,
|
|
76
|
+
...tsMorphTransform(project, sourceFile, classDeclaration),
|
|
77
|
+
};
|
|
78
|
+
},
|
|
79
|
+
}),
|
|
80
|
+
]);
|
|
81
|
+
}
|
|
82
|
+
//# sourceMappingURL=coerce-table-action.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coerce-table-action.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/angular/coerce-table-action.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { CoerceDataSourceClassOptions } from './coerce-data-source-class';
|
|
2
|
+
export interface CoerceTableDataSourceOptions extends CoerceDataSourceClassOptions {
|
|
3
|
+
/**
|
|
4
|
+
* The operation id to request a table page
|
|
5
|
+
*/
|
|
6
|
+
operationId: string;
|
|
7
|
+
scope?: string | null;
|
|
8
|
+
}
|
|
9
|
+
export declare function CoerceTableDataSourceRule(options: Readonly<CoerceTableDataSourceOptions>): import("@angular-devkit/schematics").Rule;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { CoerceSuffix } from '@rxap/schematics-utilities';
|
|
2
|
+
import { CoerceClassConstructor } from '../coerce-class-constructor';
|
|
3
|
+
import { OperationIdToClassImportPath, OperationIdToClassName, } from '../nest/operation-id-utilities';
|
|
4
|
+
import { CoerceDecorator } from '../ts-morph/coerce-decorator';
|
|
5
|
+
import { CoerceImports } from '../ts-morph/coerce-imports';
|
|
6
|
+
import { CoerceParameterDeclaration } from '../ts-morph/coerce-parameter-declaration';
|
|
7
|
+
import { CoerceDataSourceClass, } from './coerce-data-source-class';
|
|
8
|
+
export function CoerceTableDataSourceRule(options) {
|
|
9
|
+
let { name, operationId, scope, } = options;
|
|
10
|
+
name = CoerceSuffix(name, '-table');
|
|
11
|
+
return CoerceDataSourceClass({
|
|
12
|
+
...options,
|
|
13
|
+
coerceExtends: (sourceFile, classDeclaration, options) => {
|
|
14
|
+
classDeclaration.setExtends('DynamicTableDataSource');
|
|
15
|
+
CoerceImports(sourceFile, {
|
|
16
|
+
moduleSpecifier: '@rxap/data-source/table',
|
|
17
|
+
namedImports: ['DynamicTableDataSource'],
|
|
18
|
+
});
|
|
19
|
+
},
|
|
20
|
+
tsMorphTransform: (project, sourceFile, classDeclaration) => {
|
|
21
|
+
const [constructorDeclaration] = CoerceClassConstructor(classDeclaration);
|
|
22
|
+
constructorDeclaration.set({
|
|
23
|
+
statements: [
|
|
24
|
+
'super(new GetPageAdapterRemoteMethod(getByFilter));',
|
|
25
|
+
],
|
|
26
|
+
});
|
|
27
|
+
const propertyDeclaration = CoerceParameterDeclaration(constructorDeclaration, 'getByFilter').set({
|
|
28
|
+
type: OperationIdToClassName(operationId),
|
|
29
|
+
});
|
|
30
|
+
CoerceDecorator(propertyDeclaration, 'Inject').set({
|
|
31
|
+
arguments: [OperationIdToClassName(operationId)],
|
|
32
|
+
});
|
|
33
|
+
CoerceImports(sourceFile, [
|
|
34
|
+
{
|
|
35
|
+
moduleSpecifier: '@angular/core',
|
|
36
|
+
namedImports: ['Inject'],
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
moduleSpecifier: OperationIdToClassImportPath(operationId, scope),
|
|
40
|
+
namedImports: [OperationIdToClassName(operationId)],
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
moduleSpecifier: '@rxap/open-api/remote-method',
|
|
44
|
+
namedImports: ['GetPageAdapterRemoteMethod'],
|
|
45
|
+
},
|
|
46
|
+
]);
|
|
47
|
+
},
|
|
48
|
+
name,
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=coerce-table-data-source.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coerce-table-data-source.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/angular/coerce-table-data-source.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAM1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EACL,4BAA4B,EAC5B,sBAAsB,GACvB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,0BAA0B,EAAE,MAAM,0CAA0C,CAAC;AACtF,OAAO,EACL,qBAAqB,GAEtB,MAAM,4BAA4B,CAAC;AAUpC,MAAM,UAAU,yBAAyB,CAAC,OAA+C;IACvF,IAAI,EACF,IAAI,EACJ,WAAW,EACX,KAAK,GACN,GAAG,OAAO,CAAC;IACZ,IAAI,GAAG,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAEpC,OAAO,qBAAqB,CAAC;QAC3B,GAAG,OAAO;QACV,aAAa,EAAE,CACb,UAAsB,EACtB,gBAAkC,EAClC,OAAqC,EACrC,EAAE;YACF,gBAAgB,CAAC,UAAU,CAAC,wBAAwB,CAAC,CAAC;YACtD,aAAa,CAAC,UAAU,EAAE;gBACxB,eAAe,EAAE,yBAAyB;gBAC1C,YAAY,EAAE,CAAE,wBAAwB,CAAE;aAC3C,CAAC,CAAC;QACL,CAAC;QACD,gBAAgB,EAAE,CAAC,OAAgB,EAAE,UAAsB,EAAE,gBAAkC,EAAE,EAAE;YACjG,MAAM,CAAE,sBAAsB,CAAE,GAAG,sBAAsB,CAAC,gBAAgB,CAAC,CAAC;YAE5E,sBAAsB,CAAC,GAAG,CAAC;gBACzB,UAAU,EAAE;oBACV,qDAAqD;iBACtD;aACF,CAAC,CAAC;YAEH,MAAM,mBAAmB,GAAG,0BAA0B,CAAC,sBAAsB,EAAE,aAAa,CAAC,CAAC,GAAG,CAAC;gBAChG,IAAI,EAAE,sBAAsB,CAAC,WAAW,CAAC;aAC1C,CAAC,CAAC;YAEH,eAAe,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAC,GAAG,CAAC;gBACjD,SAAS,EAAE,CAAE,sBAAsB,CAAC,WAAW,CAAC,CAAE;aACnD,CAAC,CAAC;YAEH,aAAa,CAAC,UAAU,EAAE;gBACxB;oBACE,eAAe,EAAE,eAAe;oBAChC,YAAY,EAAE,CAAE,QAAQ,CAAE;iBAC3B;gBACD;oBACE,eAAe,EAAE,4BAA4B,CAAC,WAAW,EAAE,KAAK,CAAC;oBACjE,YAAY,EAAE,CAAE,sBAAsB,CAAC,WAAW,CAAC,CAAE;iBACtD;gBACD;oBACE,eAAe,EAAE,8BAA8B;oBAC/C,YAAY,EAAE,CAAE,4BAA4B,CAAE;iBAC/C;aACF,CAAC,CAAC;QAEL,CAAC;QACD,IAAI;KACL,CAAC,CAAC;AAEL,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { ClassDeclaration, Project, SourceFile } from 'ts-morph';
|
|
2
|
+
import { CoerceComponentOptions } from './coerce-component';
|
|
3
|
+
import { CoerceMethodClassOptions } from './coerce-method-class';
|
|
4
|
+
export interface CoerceTableHeaderButtonMethodOptions extends Omit<CoerceMethodClassOptions, 'name'> {
|
|
5
|
+
tableName: string;
|
|
6
|
+
tsMorphTransformComponent?: (project: Project, [componentSourceFile]: [SourceFile], [componentClass]: [ClassDeclaration], options: CoerceComponentOptions) => void;
|
|
7
|
+
refresh?: boolean;
|
|
8
|
+
confirm?: boolean;
|
|
9
|
+
tooltip?: string | null;
|
|
10
|
+
errorMessage?: string | null;
|
|
11
|
+
successMessage?: string | null;
|
|
12
|
+
}
|
|
13
|
+
export declare function CoerceTableHeaderButtonMethodRule(options: CoerceTableHeaderButtonMethodOptions): import("@angular-devkit/schematics").Rule;
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { chain } from '@angular-devkit/schematics';
|
|
2
|
+
import { join } from 'path';
|
|
3
|
+
import { Writers, } from 'ts-morph';
|
|
4
|
+
import { CoerceDecorator } from '../ts-morph/coerce-decorator';
|
|
5
|
+
import { CoerceImports } from '../ts-morph/coerce-imports';
|
|
6
|
+
import { AddComponentProvider } from './add-component-provider';
|
|
7
|
+
import { CoerceComponentRule, } from './coerce-component';
|
|
8
|
+
import { CoerceMethodClass, } from './coerce-method-class';
|
|
9
|
+
export function CoerceTableHeaderButtonMethodRule(options) {
|
|
10
|
+
let { refresh, confirm, tooltip, errorMessage, successMessage, tsMorphTransformComponent, tableName, project, feature, shared, overwrite, directory, tsMorphTransform, } = options;
|
|
11
|
+
tsMorphTransform ??= () => ({});
|
|
12
|
+
tsMorphTransformComponent ??= () => ({});
|
|
13
|
+
return chain([
|
|
14
|
+
CoerceMethodClass({
|
|
15
|
+
project,
|
|
16
|
+
feature,
|
|
17
|
+
shared,
|
|
18
|
+
overwrite,
|
|
19
|
+
directory: join(directory ?? '', 'methods'),
|
|
20
|
+
name: 'header-button',
|
|
21
|
+
tsMorphTransform: (project, sourceFile, classDeclaration) => {
|
|
22
|
+
CoerceImports(sourceFile, [
|
|
23
|
+
{
|
|
24
|
+
moduleSpecifier: '@rxap/material-table-system',
|
|
25
|
+
namedImports: ['TableHeaderButtonMethod'],
|
|
26
|
+
},
|
|
27
|
+
]);
|
|
28
|
+
const buttonOptions = {};
|
|
29
|
+
if (refresh) {
|
|
30
|
+
buttonOptions['refresh'] = 'true';
|
|
31
|
+
}
|
|
32
|
+
if (confirm) {
|
|
33
|
+
buttonOptions['confirm'] = 'true';
|
|
34
|
+
}
|
|
35
|
+
if (tooltip) {
|
|
36
|
+
buttonOptions['tooltip'] = `$localize\`${tooltip}\``;
|
|
37
|
+
}
|
|
38
|
+
if (errorMessage) {
|
|
39
|
+
buttonOptions['errorMessage'] = `$localize\`${errorMessage}\``;
|
|
40
|
+
}
|
|
41
|
+
if (successMessage) {
|
|
42
|
+
buttonOptions['successMessage'] = `$localize\`${successMessage}\``;
|
|
43
|
+
}
|
|
44
|
+
CoerceDecorator(classDeclaration, 'TableHeaderButtonMethod', {
|
|
45
|
+
arguments: [Writers.object(buttonOptions)],
|
|
46
|
+
});
|
|
47
|
+
return {
|
|
48
|
+
...tsMorphTransform(project, sourceFile, classDeclaration),
|
|
49
|
+
};
|
|
50
|
+
},
|
|
51
|
+
}),
|
|
52
|
+
CoerceComponentRule({
|
|
53
|
+
project,
|
|
54
|
+
feature,
|
|
55
|
+
shared,
|
|
56
|
+
name: tableName,
|
|
57
|
+
directory,
|
|
58
|
+
overwrite,
|
|
59
|
+
tsMorphTransform: (project, [sourceFile], [componentClass], options) => {
|
|
60
|
+
AddComponentProvider(sourceFile, {
|
|
61
|
+
provide: 'TABLE_HEADER_BUTTON_METHOD',
|
|
62
|
+
useClass: 'HeaderButtonMethod',
|
|
63
|
+
}, [
|
|
64
|
+
{
|
|
65
|
+
moduleSpecifier: '@rxap/material-table-system',
|
|
66
|
+
namedImports: ['TABLE_HEADER_BUTTON_METHOD'],
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
moduleSpecifier: './methods/header-button.method',
|
|
70
|
+
namedImports: ['HeaderButtonMethod'],
|
|
71
|
+
},
|
|
72
|
+
]);
|
|
73
|
+
tsMorphTransformComponent(project, [sourceFile], [componentClass], options);
|
|
74
|
+
},
|
|
75
|
+
}),
|
|
76
|
+
]);
|
|
77
|
+
}
|
|
78
|
+
//# sourceMappingURL=coerce-table-header-button-method.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coerce-table-header-button-method.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/angular/coerce-table-header-button-method.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAKL,OAAO,GACR,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAEL,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,iBAAiB,GAElB,MAAM,uBAAuB,CAAC;AAiB/B,MAAM,UAAU,iCAAiC,CAAC,OAA6C;IAE7F,IAAI,EACF,OAAO,EACP,OAAO,EACP,OAAO,EACP,YAAY,EACZ,cAAc,EACd,yBAAyB,EACzB,SAAS,EACT,OAAO,EACP,OAAO,EACP,MAAM,EACN,SAAS,EACT,SAAS,EACT,gBAAgB,GACjB,GAAG,OAAO,CAAC;IAEZ,gBAAgB,KAAK,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAChC,yBAAyB,KAAK,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAEzC,OAAO,KAAK,CAAC;QACX,iBAAiB,CAAC;YAChB,OAAO;YACP,OAAO;YACP,MAAM;YACN,SAAS;YACT,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,EAAE,EAAE,SAAS,CAAC;YAC3C,IAAI,EAAE,eAAe;YACrB,gBAAgB,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,EAAE;gBAC1D,aAAa,CAAC,UAAU,EAAE;oBACxB;wBACE,eAAe,EAAE,6BAA6B;wBAC9C,YAAY,EAAE,CAAE,yBAAyB,CAAE;qBAC5C;iBACF,CAAC,CAAC;gBACH,MAAM,aAAa,GAA4C,EAAE,CAAC;gBAClE,IAAI,OAAO,EAAE;oBACX,aAAa,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;iBACnC;gBACD,IAAI,OAAO,EAAE;oBACX,aAAa,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;iBACnC;gBACD,IAAI,OAAO,EAAE;oBACX,aAAa,CAAC,SAAS,CAAC,GAAG,cAAe,OAAQ,IAAI,CAAC;iBACxD;gBACD,IAAI,YAAY,EAAE;oBAChB,aAAa,CAAC,cAAc,CAAC,GAAG,cAAe,YAAa,IAAI,CAAC;iBAClE;gBACD,IAAI,cAAc,EAAE;oBAClB,aAAa,CAAC,gBAAgB,CAAC,GAAG,cAAe,cAAe,IAAI,CAAC;iBACtE;gBACD,eAAe,CAAC,gBAAgB,EAAE,yBAAyB,EAAE;oBAC3D,SAAS,EAAE,CAAE,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAE;iBAC7C,CAAC,CAAC;gBACH,OAAO;oBACL,GAAG,gBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,gBAAgB,CAAC;iBAC5D,CAAC;YACJ,CAAC;SACF,CAAC;QACF,mBAAmB,CAAC;YAClB,OAAO;YACP,OAAO;YACP,MAAM;YACN,IAAI,EAAE,SAAS;YACf,SAAS;YACT,SAAS;YACT,gBAAgB,EAAE,CAChB,OAAgB,EAChB,CAAE,UAAU,CAAkB,EAC9B,CAAE,cAAc,CAAwB,EACxC,OAA+B,EAC/B,EAAE;gBACF,oBAAoB,CAClB,UAAU,EACV;oBACE,OAAO,EAAE,4BAA4B;oBACrC,QAAQ,EAAE,oBAAoB;iBAC/B,EACD;oBACE;wBACE,eAAe,EAAE,6BAA6B;wBAC9C,YAAY,EAAE,CAAE,4BAA4B,CAAE;qBAC/C;oBACD;wBACE,eAAe,EAAE,gCAAgC;wBACjD,YAAY,EAAE,CAAE,oBAAoB,CAAE;qBACvC;iBACF,CACF,CAAC;gBACF,yBAA0B,CAAC,OAAO,EAAE,CAAE,UAAU,CAAE,EAAE,CAAE,cAAc,CAAE,EAAE,OAAO,CAAC,CAAC;YACnF,CAAC;SACF,CAAC;KACH,CAAC,CAAC;AAEL,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { TsMorphAngularProjectTransformOptions } from '../ts-morph-transform';
|
|
2
|
+
export interface CoerceTableParametersFromRouteRuleOptions extends TsMorphAngularProjectTransformOptions {
|
|
3
|
+
parameterList: string[];
|
|
4
|
+
tableName: string;
|
|
5
|
+
}
|
|
6
|
+
export declare function CoerceTableParametersFromRouteRule(options: CoerceTableParametersFromRouteRuleOptions): import("@angular-devkit/schematics").Rule;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { classify } from '@rxap/schematics-utilities';
|
|
2
|
+
import { Scope } from 'ts-morph';
|
|
3
|
+
import { CoerceClassConstructor } from '../coerce-class-constructor';
|
|
4
|
+
import { CoercePropertyDeclaration } from '../nest/coerce-dto-class';
|
|
5
|
+
import { TsMorphAngularProjectTransformRule, } from '../ts-morph-transform';
|
|
6
|
+
import { CoerceImports } from '../ts-morph/coerce-imports';
|
|
7
|
+
import { CoerceParameterDeclaration } from '../ts-morph/coerce-parameter-declaration';
|
|
8
|
+
export function CoerceTableParametersFromRouteRule(options) {
|
|
9
|
+
const { parameterList, tableName, } = options;
|
|
10
|
+
return TsMorphAngularProjectTransformRule(options, (project) => {
|
|
11
|
+
const sourceFile = project.getSourceFileOrThrow(`${tableName}.component.ts`);
|
|
12
|
+
const classDeclaration = sourceFile.getClassOrThrow(`${classify(tableName)}Component`);
|
|
13
|
+
const [constructorDeclaration] = CoerceClassConstructor(classDeclaration);
|
|
14
|
+
CoerceParameterDeclaration(constructorDeclaration, 'route', {
|
|
15
|
+
type: 'ActivatedRoute',
|
|
16
|
+
isReadonly: true,
|
|
17
|
+
scope: Scope.Private,
|
|
18
|
+
});
|
|
19
|
+
CoerceImports(sourceFile, {
|
|
20
|
+
namedImports: ['ActivatedRoute'],
|
|
21
|
+
moduleSpecifier: '@angular/router',
|
|
22
|
+
});
|
|
23
|
+
CoercePropertyDeclaration(classDeclaration, 'parameters').set({
|
|
24
|
+
type: 'Observable<Record<string, string>>',
|
|
25
|
+
initializer: `this.route.params.map(params => ({${parameterList.map(parameter => `${parameter}: params.${parameter}`)
|
|
26
|
+
.join(', ')}}))`,
|
|
27
|
+
decorators: [
|
|
28
|
+
{
|
|
29
|
+
name: 'Input',
|
|
30
|
+
arguments: [],
|
|
31
|
+
},
|
|
32
|
+
],
|
|
33
|
+
});
|
|
34
|
+
CoerceImports(sourceFile, {
|
|
35
|
+
namedImports: ['Observable'],
|
|
36
|
+
moduleSpecifier: 'rxjs',
|
|
37
|
+
});
|
|
38
|
+
CoerceImports(sourceFile, {
|
|
39
|
+
namedImports: ['map'],
|
|
40
|
+
moduleSpecifier: 'rxjs/operators',
|
|
41
|
+
});
|
|
42
|
+
CoerceImports(sourceFile, {
|
|
43
|
+
namedImports: ['Input'],
|
|
44
|
+
moduleSpecifier: '@angular/core',
|
|
45
|
+
});
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=coerce-table-parameters-from-route.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coerce-table-parameters-from-route.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/angular/coerce-table-parameters-from-route.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AACtD,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAEL,kCAAkC,GACnC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,0BAA0B,EAAE,MAAM,0CAA0C,CAAC;AAOtF,MAAM,UAAU,kCAAkC,CAAC,OAAkD;IACnG,MAAM,EACJ,aAAa,EACb,SAAS,GACV,GAAG,OAAO,CAAC;IACZ,OAAO,kCAAkC,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE;QAE7D,MAAM,UAAU,GAAG,OAAO,CAAC,oBAAoB,CAAC,GAAI,SAAU,eAAe,CAAC,CAAC;QAC/E,MAAM,gBAAgB,GAAG,UAAU,CAAC,eAAe,CAAC,GAAI,QAAQ,CAAC,SAAS,CAAE,WAAW,CAAC,CAAC;QAEzF,MAAM,CAAE,sBAAsB,CAAE,GAAG,sBAAsB,CAAC,gBAAgB,CAAC,CAAC;QAC5E,0BAA0B,CACxB,sBAAsB,EACtB,OAAO,EACP;YACE,IAAI,EAAE,gBAAgB;YACtB,UAAU,EAAE,IAAI;YAChB,KAAK,EAAE,KAAK,CAAC,OAAO;SACrB,CACF,CAAC;QACF,aAAa,CAAC,UAAU,EAAE;YACxB,YAAY,EAAE,CAAE,gBAAgB,CAAE;YAClC,eAAe,EAAE,iBAAiB;SACnC,CAAC,CAAC;QACH,yBAAyB,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAC,GAAG,CAAC;YAC5D,IAAI,EAAE,oCAAoC;YAC1C,WAAW,EAAE,qCAAsC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,GAAI,SAAU,YAAa,SAAU,EAAE,CAAC;iBACzD,IAAI,CAAC,IAAI,CAAE,KAAK;YACjF,UAAU,EAAE;gBACV;oBACE,IAAI,EAAE,OAAO;oBACb,SAAS,EAAE,EAAE;iBACd;aACF;SACF,CAAC,CAAC;QACH,aAAa,CAAC,UAAU,EAAE;YACxB,YAAY,EAAE,CAAE,YAAY,CAAE;YAC9B,eAAe,EAAE,MAAM;SACxB,CAAC,CAAC;QACH,aAAa,CAAC,UAAU,EAAE;YACxB,YAAY,EAAE,CAAE,KAAK,CAAE;YACvB,eAAe,EAAE,gBAAgB;SAClC,CAAC,CAAC;QACH,aAAa,CAAC,UAAU,EAAE;YACxB,YAAY,EAAE,CAAE,OAAO,CAAE;YACzB,eAAe,EAAE,eAAe;SACjC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { CoerceMethodClassOptions } from './coerce-method-class';
|
|
2
|
+
export interface CoerceTableSelectResolveValueMethodOptions extends CoerceMethodClassOptions {
|
|
3
|
+
operationId: string;
|
|
4
|
+
scope?: string | null;
|
|
5
|
+
}
|
|
6
|
+
export declare function CoerceTableSelectResolveValueMethodRule(options: CoerceTableSelectResolveValueMethodOptions): import("@angular-devkit/schematics").Rule;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { Scope } from 'ts-morph';
|
|
2
|
+
import { CoerceClassConstructor } from '../coerce-class-constructor';
|
|
3
|
+
import { OperationIdToClassImportPath, OperationIdToClassName, } from '../nest/operation-id-utilities';
|
|
4
|
+
import { CoerceImports } from '../ts-morph/coerce-imports';
|
|
5
|
+
import { CoerceParameterDeclaration } from '../ts-morph/coerce-parameter-declaration';
|
|
6
|
+
import { CoerceMethodClass, } from './coerce-method-class';
|
|
7
|
+
export function CoerceTableSelectResolveValueMethodRule(options) {
|
|
8
|
+
const { operationId, scope } = options;
|
|
9
|
+
return CoerceMethodClass({
|
|
10
|
+
...options,
|
|
11
|
+
tsMorphTransform: (project, sourceFile, classDeclaration) => {
|
|
12
|
+
const [constructorDeclaration] = CoerceClassConstructor(classDeclaration);
|
|
13
|
+
CoerceParameterDeclaration(constructorDeclaration, 'remoteMethod').set({
|
|
14
|
+
type: OperationIdToClassName(operationId),
|
|
15
|
+
isReadonly: true,
|
|
16
|
+
scope: Scope.Private,
|
|
17
|
+
});
|
|
18
|
+
CoerceImports(sourceFile, {
|
|
19
|
+
namedImports: [OperationIdToClassName(operationId)],
|
|
20
|
+
moduleSpecifier: OperationIdToClassImportPath(operationId, scope),
|
|
21
|
+
});
|
|
22
|
+
return {
|
|
23
|
+
statements: [
|
|
24
|
+
'return this.remoteMethod.call({ parameters: { ...(parameters.context ?? {}), value: parameters.value } });',
|
|
25
|
+
],
|
|
26
|
+
};
|
|
27
|
+
},
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=coerce-table-select-resolve-value-method.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coerce-table-select-resolve-value-method.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/angular/coerce-table-select-resolve-value-method.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EACL,4BAA4B,EAC5B,sBAAsB,GACvB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,0BAA0B,EAAE,MAAM,0CAA0C,CAAC;AACtF,OAAO,EACL,iBAAiB,GAElB,MAAM,uBAAuB,CAAC;AAO/B,MAAM,UAAU,uCAAuC,CAAC,OAAmD;IACzG,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;IAEvC,OAAO,iBAAiB,CAAC;QACvB,GAAG,OAAO;QACV,gBAAgB,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,EAAE;YAC1D,MAAM,CAAE,sBAAsB,CAAE,GAAG,sBAAsB,CAAC,gBAAgB,CAAC,CAAC;YAE5E,0BAA0B,CAAC,sBAAsB,EAAE,cAAc,CAAC,CAAC,GAAG,CAAC;gBACrE,IAAI,EAAE,sBAAsB,CAAC,WAAW,CAAC;gBACzC,UAAU,EAAE,IAAI;gBAChB,KAAK,EAAE,KAAK,CAAC,OAAO;aACrB,CAAC,CAAC;YACH,aAAa,CAAC,UAAU,EAAE;gBACxB,YAAY,EAAE,CAAE,sBAAsB,CAAC,WAAW,CAAC,CAAE;gBACrD,eAAe,EAAE,4BAA4B,CAAC,WAAW,EAAE,KAAK,CAAC;aAClE,CAAC,CAAC;YAEH,OAAO;gBACL,UAAU,EAAE;oBACV,4GAA4G;iBAC7G;aACF,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { CoerceProxyRemoteMethodClassOptions } from './coerce-proxy-remote-method-class';
|
|
2
|
+
export interface CoerceTreeTableChildrenProxyRemoteMethodClassOptions extends Omit<Omit<Omit<Omit<CoerceProxyRemoteMethodClassOptions, 'name'>, 'sourceType'>, 'targetType'>, 'proxyMethod'> {
|
|
3
|
+
getChildrenOperationId: string;
|
|
4
|
+
scope?: string | null;
|
|
5
|
+
}
|
|
6
|
+
export declare function CoerceTreeTableChildrenProxyRemoteMethodClass(options: CoerceTreeTableChildrenProxyRemoteMethodClassOptions): import("@angular-devkit/schematics").Rule;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { OperationIdToClassImportPath, OperationIdToClassName, OperationIdToParameterClassImportPath, OperationIdToParameterClassName, } from '../nest/operation-id-utilities';
|
|
2
|
+
import { CoerceImports } from '../ts-morph/coerce-imports';
|
|
3
|
+
import { CoerceProxyRemoteMethodClass, } from './coerce-proxy-remote-method-class';
|
|
4
|
+
export function CoerceTreeTableChildrenProxyRemoteMethodClass(options) {
|
|
5
|
+
let { tsMorphTransform, getChildrenOperationId, scope, } = options;
|
|
6
|
+
tsMorphTransform ??= () => ({});
|
|
7
|
+
return CoerceProxyRemoteMethodClass({
|
|
8
|
+
...options,
|
|
9
|
+
name: 'tree-table-children',
|
|
10
|
+
sourceType: 'Node<unknown>',
|
|
11
|
+
targetType: `OpenApiRemoteMethodParameter<${OperationIdToParameterClassName(getChildrenOperationId)}>`,
|
|
12
|
+
proxyMethod: OperationIdToClassName(getChildrenOperationId),
|
|
13
|
+
tsMorphTransform: (project, sourceFile, classDeclaration) => {
|
|
14
|
+
CoerceImports(sourceFile, {
|
|
15
|
+
namedImports: [OperationIdToClassName(getChildrenOperationId)],
|
|
16
|
+
moduleSpecifier: OperationIdToClassImportPath(getChildrenOperationId, scope),
|
|
17
|
+
});
|
|
18
|
+
CoerceImports(sourceFile, {
|
|
19
|
+
namedImports: ['Node'],
|
|
20
|
+
moduleSpecifier: '@rxap/data-structure-tree',
|
|
21
|
+
});
|
|
22
|
+
CoerceImports(sourceFile, {
|
|
23
|
+
namedImports: ['OpenApiRemoteMethodParameter'],
|
|
24
|
+
moduleSpecifier: '@rxap/open-api/remote-method',
|
|
25
|
+
});
|
|
26
|
+
CoerceImports(sourceFile, {
|
|
27
|
+
namedImports: [OperationIdToParameterClassName(getChildrenOperationId)],
|
|
28
|
+
moduleSpecifier: OperationIdToParameterClassImportPath(getChildrenOperationId, scope),
|
|
29
|
+
});
|
|
30
|
+
return tsMorphTransform(project, sourceFile, classDeclaration);
|
|
31
|
+
},
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=coerce-tree-table-children-proxy-remote-method-class.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coerce-tree-table-children-proxy-remote-method-class.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/angular/coerce-tree-table-children-proxy-remote-method-class.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,4BAA4B,EAC5B,sBAAsB,EACtB,qCAAqC,EACrC,+BAA+B,GAChC,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EACL,4BAA4B,GAE7B,MAAM,oCAAoC,CAAC;AAQ5C,MAAM,UAAU,6CAA6C,CAAC,OAA6D;IACzH,IAAI,EACF,gBAAgB,EAChB,sBAAsB,EACtB,KAAK,GACN,GAAG,OAAO,CAAC;IACZ,gBAAgB,KAAK,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAChC,OAAO,4BAA4B,CAAC;QAClC,GAAG,OAAO;QACV,IAAI,EAAE,qBAAqB;QAC3B,UAAU,EAAE,eAAe;QAC3B,UAAU,EAAE,gCAAiC,+BAA+B,CAAC,sBAAsB,CAAE,GAAG;QACxG,WAAW,EAAE,sBAAsB,CAAC,sBAAsB,CAAC;QAC3D,gBAAgB,EAAE,CAAC,OAAgB,EAAE,UAAsB,EAAE,gBAAkC,EAAE,EAAE;YACjG,aAAa,CAAC,UAAU,EAAE;gBACxB,YAAY,EAAE,CAAE,sBAAsB,CAAC,sBAAsB,CAAC,CAAE;gBAChE,eAAe,EAAE,4BAA4B,CAAC,sBAAsB,EAAE,KAAK,CAAC;aAC7E,CAAC,CAAC;YACH,aAAa,CAAC,UAAU,EAAE;gBACxB,YAAY,EAAE,CAAE,MAAM,CAAE;gBACxB,eAAe,EAAE,2BAA2B;aAC7C,CAAC,CAAC;YACH,aAAa,CAAC,UAAU,EAAE;gBACxB,YAAY,EAAE,CAAE,8BAA8B,CAAE;gBAChD,eAAe,EAAE,8BAA8B;aAChD,CAAC,CAAC;YACH,aAAa,CAAC,UAAU,EAAE;gBACxB,YAAY,EAAE,CAAE,+BAA+B,CAAC,sBAAsB,CAAC,CAAE;gBACzE,eAAe,EAAE,qCAAqC,CAAC,sBAAsB,EAAE,KAAK,CAAC;aACtF,CAAC,CAAC;YACH,OAAO,gBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,gBAAgB,CAAC,CAAC;QAClE,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { CoerceProxyRemoteMethodClassOptions } from './coerce-proxy-remote-method-class';
|
|
2
|
+
export interface CoerceTreeTableRootProxyRemoteMethodClassOptions extends Omit<Omit<Omit<Omit<CoerceProxyRemoteMethodClassOptions, 'name'>, 'sourceType'>, 'targetType'>, 'proxyMethod'> {
|
|
3
|
+
getRootOperationId: string;
|
|
4
|
+
scope?: string | null;
|
|
5
|
+
}
|
|
6
|
+
export declare function CoerceTreeTableRootProxyRemoteMethodClass(options: CoerceTreeTableRootProxyRemoteMethodClassOptions): import("@angular-devkit/schematics").Rule;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { OperationIdToClassImportPath, OperationIdToClassName, OperationIdToParameterClassImportPath, OperationIdToParameterClassName, } from '../nest/operation-id-utilities';
|
|
2
|
+
import { CoerceImports } from '../ts-morph/coerce-imports';
|
|
3
|
+
import { CoerceProxyRemoteMethodClass, } from './coerce-proxy-remote-method-class';
|
|
4
|
+
export function CoerceTreeTableRootProxyRemoteMethodClass(options) {
|
|
5
|
+
let { tsMorphTransform, getRootOperationId, scope, } = options;
|
|
6
|
+
tsMorphTransform ??= () => ({});
|
|
7
|
+
return CoerceProxyRemoteMethodClass({
|
|
8
|
+
...options,
|
|
9
|
+
name: 'tree-table-root',
|
|
10
|
+
sourceType: 'Node<unknown>',
|
|
11
|
+
targetType: `OpenApiRemoteMethodParameter<${OperationIdToParameterClassName(getRootOperationId)}>`,
|
|
12
|
+
proxyMethod: OperationIdToClassName(getRootOperationId),
|
|
13
|
+
tsMorphTransform: (project, sourceFile, classDeclaration) => {
|
|
14
|
+
CoerceImports(sourceFile, {
|
|
15
|
+
namedImports: [OperationIdToClassName(getRootOperationId)],
|
|
16
|
+
moduleSpecifier: OperationIdToClassImportPath(getRootOperationId, scope),
|
|
17
|
+
});
|
|
18
|
+
CoerceImports(sourceFile, {
|
|
19
|
+
namedImports: ['Node'],
|
|
20
|
+
moduleSpecifier: '@rxap/data-structure-tree',
|
|
21
|
+
});
|
|
22
|
+
CoerceImports(sourceFile, {
|
|
23
|
+
namedImports: ['OpenApiRemoteMethodParameter'],
|
|
24
|
+
moduleSpecifier: '@rxap/open-api/remote-method',
|
|
25
|
+
});
|
|
26
|
+
CoerceImports(sourceFile, {
|
|
27
|
+
namedImports: [OperationIdToParameterClassName(getRootOperationId)],
|
|
28
|
+
moduleSpecifier: OperationIdToParameterClassImportPath(getRootOperationId, scope),
|
|
29
|
+
});
|
|
30
|
+
return tsMorphTransform(project, sourceFile, classDeclaration);
|
|
31
|
+
},
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=coerce-tree-table-root-proxy-remote-method-class.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coerce-tree-table-root-proxy-remote-method-class.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/angular/coerce-tree-table-root-proxy-remote-method-class.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,4BAA4B,EAC5B,sBAAsB,EACtB,qCAAqC,EACrC,+BAA+B,GAChC,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EACL,4BAA4B,GAE7B,MAAM,oCAAoC,CAAC;AAQ5C,MAAM,UAAU,yCAAyC,CAAC,OAAyD;IACjH,IAAI,EACF,gBAAgB,EAChB,kBAAkB,EAClB,KAAK,GACN,GAAG,OAAO,CAAC;IACZ,gBAAgB,KAAK,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAChC,OAAO,4BAA4B,CAAC;QAClC,GAAG,OAAO;QACV,IAAI,EAAE,iBAAiB;QACvB,UAAU,EAAE,eAAe;QAC3B,UAAU,EAAE,gCAAiC,+BAA+B,CAAC,kBAAkB,CAAE,GAAG;QACpG,WAAW,EAAE,sBAAsB,CAAC,kBAAkB,CAAC;QACvD,gBAAgB,EAAE,CAAC,OAAgB,EAAE,UAAsB,EAAE,gBAAkC,EAAE,EAAE;YACjG,aAAa,CAAC,UAAU,EAAE;gBACxB,YAAY,EAAE,CAAE,sBAAsB,CAAC,kBAAkB,CAAC,CAAE;gBAC5D,eAAe,EAAE,4BAA4B,CAAC,kBAAkB,EAAE,KAAK,CAAC;aACzE,CAAC,CAAC;YACH,aAAa,CAAC,UAAU,EAAE;gBACxB,YAAY,EAAE,CAAE,MAAM,CAAE;gBACxB,eAAe,EAAE,2BAA2B;aAC7C,CAAC,CAAC;YACH,aAAa,CAAC,UAAU,EAAE;gBACxB,YAAY,EAAE,CAAE,8BAA8B,CAAE;gBAChD,eAAe,EAAE,8BAA8B;aAChD,CAAC,CAAC;YACH,aAAa,CAAC,UAAU,EAAE;gBACxB,YAAY,EAAE,CAAE,+BAA+B,CAAC,kBAAkB,CAAC,CAAE;gBACrE,eAAe,EAAE,qCAAqC,CAAC,kBAAkB,EAAE,KAAK,CAAC;aAClF,CAAC,CAAC;YACH,OAAO,gBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,gBAAgB,CAAC,CAAC;QAClE,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { TsMorphAngularProjectTransformOptions } from '../ts-morph-transform';
|
|
2
|
+
export interface EnforceUseFormControlOrderRuleOptions extends TsMorphAngularProjectTransformOptions {
|
|
3
|
+
formName: string;
|
|
4
|
+
}
|
|
5
|
+
export declare function EnforceUseFormControlOrderRule(options: EnforceUseFormControlOrderRuleOptions): import("@angular-devkit/schematics").Rule;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { classify, CoerceSuffix, } from '@rxap/schematics-utilities';
|
|
2
|
+
import { TsMorphAngularProjectTransformRule, } from '../ts-morph-transform';
|
|
3
|
+
export function EnforceUseFormControlOrderRule(options) {
|
|
4
|
+
const { formName } = options;
|
|
5
|
+
const className = CoerceSuffix(classify(formName), 'Form');
|
|
6
|
+
return TsMorphAngularProjectTransformRule(options, (project) => {
|
|
7
|
+
const sourceFile = project.getSourceFileOrThrow('/' + CoerceSuffix(formName, '.form.ts'));
|
|
8
|
+
const classDeclaration = sourceFile.getClassOrThrow(className);
|
|
9
|
+
for (const propertyDeclaration of classDeclaration.getProperties()) {
|
|
10
|
+
const decoratorCount = propertyDeclaration.getDecorators().length;
|
|
11
|
+
if (decoratorCount === 1) {
|
|
12
|
+
continue;
|
|
13
|
+
}
|
|
14
|
+
const useFormControlDecorator = propertyDeclaration.getDecorator('UseFormControl');
|
|
15
|
+
if (useFormControlDecorator) {
|
|
16
|
+
const useFormControlIndex = useFormControlDecorator.getChildIndex();
|
|
17
|
+
if (useFormControlIndex !== decoratorCount - 1) {
|
|
18
|
+
const args = useFormControlDecorator.getArguments().map((a) => a.getText());
|
|
19
|
+
useFormControlDecorator.remove();
|
|
20
|
+
propertyDeclaration.addDecorator({
|
|
21
|
+
name: 'UseFormControl',
|
|
22
|
+
arguments: args,
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=enforce-use-form-control-order.js.map
|