@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,80 @@
|
|
|
1
|
+
import { classify, CoerceSuffix, } from '@rxap/schematics-utilities';
|
|
2
|
+
import { Writers } from 'ts-morph';
|
|
3
|
+
import { CoerceSourceFile } from '../coerce-source-file';
|
|
4
|
+
import { TsMorphAngularProjectTransformRule } from '../ts-morph-transform';
|
|
5
|
+
import { CoerceFunction } from '../ts-morph/coerce-function';
|
|
6
|
+
import { CoerceImports } from '../ts-morph/coerce-imports';
|
|
7
|
+
import { CoerceStatements } from '../ts-morph/coerce-statements';
|
|
8
|
+
import { CoerceFormBuilderProvider } from './coerce-form-builder-provider';
|
|
9
|
+
import { CoerceFormComponentProvider } from './coerce-form-component-provider';
|
|
10
|
+
import { CoerceFormProvider } from './coerce-form-provider';
|
|
11
|
+
export function CoerceFormProvidersFile(options) {
|
|
12
|
+
const { name } = options;
|
|
13
|
+
const className = CoerceSuffix(classify(name), 'Form');
|
|
14
|
+
const interfaceName = `I${className}`;
|
|
15
|
+
return TsMorphAngularProjectTransformRule(options, (project) => {
|
|
16
|
+
const sourceFile = CoerceSourceFile(project, '/form.providers.ts');
|
|
17
|
+
CoerceFormProvider(sourceFile, className);
|
|
18
|
+
CoerceFormComponentProvider(sourceFile, {
|
|
19
|
+
provide: 'RXAP_FORM_DEFINITION',
|
|
20
|
+
useFactory: 'FormFactory',
|
|
21
|
+
deps: ['INJECTOR', '[ new Optional(), RXAP_FORM_INITIAL_STATE ]'],
|
|
22
|
+
});
|
|
23
|
+
CoerceFormBuilderProvider(sourceFile, {
|
|
24
|
+
provide: 'RXAP_FORM_DEFINITION_BUILDER',
|
|
25
|
+
useFactory: 'FormBuilderFactory',
|
|
26
|
+
deps: ['INJECTOR'],
|
|
27
|
+
});
|
|
28
|
+
const formFactoryFunctionDeclaration = CoerceFunction(sourceFile, 'FormFactory', {
|
|
29
|
+
parameters: [
|
|
30
|
+
{
|
|
31
|
+
name: 'injector',
|
|
32
|
+
type: 'Injector',
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
name: 'state',
|
|
36
|
+
type: Writers.unionType(interfaceName, 'null'),
|
|
37
|
+
},
|
|
38
|
+
],
|
|
39
|
+
returnType: className,
|
|
40
|
+
isExported: true,
|
|
41
|
+
});
|
|
42
|
+
CoerceStatements(formFactoryFunctionDeclaration, [
|
|
43
|
+
`return new RxapFormBuilder<${interfaceName}>(${className}, injector).build(state ?? {});`,
|
|
44
|
+
]);
|
|
45
|
+
const formBuilderFactoryDeclaration = CoerceFunction(sourceFile, 'FormBuilderFactory', {
|
|
46
|
+
parameters: [
|
|
47
|
+
{
|
|
48
|
+
name: 'injector',
|
|
49
|
+
type: 'Injector',
|
|
50
|
+
},
|
|
51
|
+
],
|
|
52
|
+
returnType: `RxapFormBuilder<I${className}>`,
|
|
53
|
+
});
|
|
54
|
+
CoerceStatements(formBuilderFactoryDeclaration, [
|
|
55
|
+
`return new RxapFormBuilder<${interfaceName}>(${className}, injector);`,
|
|
56
|
+
]);
|
|
57
|
+
CoerceImports(sourceFile, {
|
|
58
|
+
namedImports: [className, interfaceName],
|
|
59
|
+
moduleSpecifier: `./${name}.form`,
|
|
60
|
+
});
|
|
61
|
+
CoerceImports(sourceFile, {
|
|
62
|
+
namedImports: [
|
|
63
|
+
'INJECTOR',
|
|
64
|
+
'Injector',
|
|
65
|
+
'Optional',
|
|
66
|
+
],
|
|
67
|
+
moduleSpecifier: '@angular/core',
|
|
68
|
+
});
|
|
69
|
+
CoerceImports(sourceFile, {
|
|
70
|
+
namedImports: [
|
|
71
|
+
'RxapFormBuilder',
|
|
72
|
+
'RXAP_FORM_DEFINITION_BUILDER',
|
|
73
|
+
'RXAP_FORM_DEFINITION',
|
|
74
|
+
'RXAP_FORM_INITIAL_STATE',
|
|
75
|
+
],
|
|
76
|
+
moduleSpecifier: '@rxap/forms',
|
|
77
|
+
});
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=coerce-form-providers-file.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coerce-form-providers-file.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/angular/coerce-form-providers-file.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { CoerceTableActionOptions } from './coerce-table-action';
|
|
2
|
+
export interface CoerceFormTableActionOptions extends CoerceTableActionOptions {
|
|
3
|
+
loadOperationId?: string;
|
|
4
|
+
scope?: string | null;
|
|
5
|
+
}
|
|
6
|
+
export declare function CoerceFormTableActionRule(options: CoerceFormTableActionOptions): import("@angular-devkit/schematics").Rule;
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { classify } from '@rxap/schematics-utilities';
|
|
2
|
+
import { Scope, } from 'ts-morph';
|
|
3
|
+
import { CoerceClassConstructor } from '../coerce-class-constructor';
|
|
4
|
+
import { OperationIdToClassImportPath, OperationIdToClassName, } from '../nest/operation-id-utilities';
|
|
5
|
+
import { CoerceImports } from '../ts-morph/coerce-imports';
|
|
6
|
+
import { CoerceParameterDeclaration } from '../ts-morph/coerce-parameter-declaration';
|
|
7
|
+
import { CoerceTableActionRule, } from './coerce-table-action';
|
|
8
|
+
export function CoerceFormTableActionRule(options) {
|
|
9
|
+
let { type, loadOperationId, tsMorphTransform, scope, } = options;
|
|
10
|
+
tsMorphTransform ??= () => ({});
|
|
11
|
+
return CoerceTableActionRule({
|
|
12
|
+
...options,
|
|
13
|
+
tsMorphTransform: (project, sourceFile, classDeclaration) => {
|
|
14
|
+
CoerceImports(sourceFile, {
|
|
15
|
+
moduleSpecifier: '@angular/core',
|
|
16
|
+
namedImports: ['ChangeDetectorRef', 'Inject', 'INJECTOR', 'Injector'],
|
|
17
|
+
});
|
|
18
|
+
const openFormWindowMethod = `Open${classify(type)}FormWindowMethod`;
|
|
19
|
+
CoerceImports(sourceFile, {
|
|
20
|
+
moduleSpecifier: `../../${type}-form/open-${type}-form-window.method`,
|
|
21
|
+
namedImports: [openFormWindowMethod],
|
|
22
|
+
});
|
|
23
|
+
CoerceImports(sourceFile, {
|
|
24
|
+
namedImports: ['firstValueFrom'],
|
|
25
|
+
moduleSpecifier: 'rxjs',
|
|
26
|
+
});
|
|
27
|
+
if (loadOperationId) {
|
|
28
|
+
CoerceImports(sourceFile, {
|
|
29
|
+
moduleSpecifier: OperationIdToClassImportPath(loadOperationId, scope),
|
|
30
|
+
namedImports: [OperationIdToClassName(loadOperationId)],
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
const [constructorDeclaration] = CoerceClassConstructor(classDeclaration);
|
|
34
|
+
CoerceParameterDeclaration(constructorDeclaration, 'openFormWindow').set({
|
|
35
|
+
name: 'openFormWindow',
|
|
36
|
+
type: openFormWindowMethod,
|
|
37
|
+
isReadonly: true,
|
|
38
|
+
scope: Scope.Private,
|
|
39
|
+
decorators: [
|
|
40
|
+
{
|
|
41
|
+
name: 'Inject',
|
|
42
|
+
arguments: [openFormWindowMethod],
|
|
43
|
+
},
|
|
44
|
+
],
|
|
45
|
+
});
|
|
46
|
+
CoerceParameterDeclaration(constructorDeclaration, 'injector').set({
|
|
47
|
+
type: 'Injector',
|
|
48
|
+
isReadonly: true,
|
|
49
|
+
scope: Scope.Private,
|
|
50
|
+
decorators: [
|
|
51
|
+
{
|
|
52
|
+
name: 'Inject',
|
|
53
|
+
arguments: ['INJECTOR'],
|
|
54
|
+
},
|
|
55
|
+
],
|
|
56
|
+
});
|
|
57
|
+
CoerceParameterDeclaration(constructorDeclaration, 'cdr').set({
|
|
58
|
+
type: 'ChangeDetectorRef',
|
|
59
|
+
isReadonly: true,
|
|
60
|
+
scope: Scope.Private,
|
|
61
|
+
});
|
|
62
|
+
if (loadOperationId) {
|
|
63
|
+
CoerceParameterDeclaration(constructorDeclaration, 'getInitial').set({
|
|
64
|
+
isReadonly: true,
|
|
65
|
+
scope: Scope.Private,
|
|
66
|
+
type: OperationIdToClassName(loadOperationId),
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
const statements = [];
|
|
70
|
+
statements.push(`console.log(\`action row type: ${type}\`, parameters);`);
|
|
71
|
+
if (loadOperationId) {
|
|
72
|
+
statements.push(`const { __rowId: rowId } = parameters;`);
|
|
73
|
+
statements.push(`if (!rowId) { throw new Error('The table action ${type} is called with a row object that does not have the property __rowId.'); }`);
|
|
74
|
+
statements.push(`const initial = await this.getInitial.call({parameters: { rowId }});`);
|
|
75
|
+
}
|
|
76
|
+
else {
|
|
77
|
+
statements.push(`const initial = parameters;`);
|
|
78
|
+
}
|
|
79
|
+
statements.push(`this.cdr.markForCheck();`);
|
|
80
|
+
statements.push(`return firstValueFrom(this.openFormWindow.call(initial, {injector: this.injector, context: { rowId }}));`);
|
|
81
|
+
return {
|
|
82
|
+
statements,
|
|
83
|
+
isAsync: true,
|
|
84
|
+
scope: Scope.Public,
|
|
85
|
+
returnType: 'Promise<any>',
|
|
86
|
+
...tsMorphTransform(project, sourceFile, classDeclaration),
|
|
87
|
+
};
|
|
88
|
+
},
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
//# sourceMappingURL=coerce-form-table-action.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coerce-form-table-action.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/angular/coerce-form-table-action.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AACtD,OAAO,EACL,KAAK,GAGN,MAAM,UAAU,CAAC;AAClB,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,EAEL,qBAAqB,GACtB,MAAM,uBAAuB,CAAC;AAO/B,MAAM,UAAU,yBAAyB,CAAC,OAAqC;IAC7E,IAAI,EACF,IAAI,EACJ,eAAe,EACf,gBAAgB,EAChB,KAAK,GACN,GAAG,OAAO,CAAC;IACZ,gBAAgB,KAAK,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAEhC,OAAO,qBAAqB,CAAC;QAC3B,GAAG,OAAO;QACV,gBAAgB,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,EAAE;YAE1D,aAAa,CAAC,UAAU,EAAE;gBACxB,eAAe,EAAE,eAAe;gBAChC,YAAY,EAAE,CAAE,mBAAmB,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,CAAE;aACxE,CAAC,CAAC;YACH,MAAM,oBAAoB,GAAG,OAAQ,QAAQ,CAAC,IAAI,CAAE,kBAAkB,CAAC;YACvE,aAAa,CAAC,UAAU,EAAE;gBACxB,eAAe,EAAE,SAAU,IAAK,cAAe,IAAK,qBAAqB;gBACzE,YAAY,EAAE,CAAE,oBAAoB,CAAE;aACvC,CAAC,CAAC;YACH,aAAa,CAAC,UAAU,EAAE;gBACxB,YAAY,EAAE,CAAE,gBAAgB,CAAE;gBAClC,eAAe,EAAE,MAAM;aACxB,CAAC,CAAC;YACH,IAAI,eAAe,EAAE;gBACnB,aAAa,CAAC,UAAU,EAAE;oBACxB,eAAe,EAAE,4BAA4B,CAAC,eAAe,EAAE,KAAK,CAAC;oBACrE,YAAY,EAAE,CAAE,sBAAsB,CAAC,eAAe,CAAC,CAAE;iBAC1D,CAAC,CAAC;aACJ;YAED,MAAM,CAAE,sBAAsB,CAAE,GAAG,sBAAsB,CAAC,gBAAgB,CAAC,CAAC;YAC5E,0BAA0B,CAAC,sBAAsB,EAAE,gBAAgB,CAAC,CAAC,GAAG,CAAC;gBACvE,IAAI,EAAE,gBAAgB;gBACtB,IAAI,EAAE,oBAAoB;gBAC1B,UAAU,EAAE,IAAI;gBAChB,KAAK,EAAE,KAAK,CAAC,OAAO;gBACpB,UAAU,EAAE;oBACV;wBACE,IAAI,EAAE,QAAQ;wBACd,SAAS,EAAE,CAAE,oBAAoB,CAAE;qBACpC;iBACF;aACF,CAAC,CAAC;YACH,0BAA0B,CAAC,sBAAsB,EAAE,UAAU,CAAC,CAAC,GAAG,CAAC;gBACjE,IAAI,EAAE,UAAU;gBAChB,UAAU,EAAE,IAAI;gBAChB,KAAK,EAAE,KAAK,CAAC,OAAO;gBACpB,UAAU,EAAE;oBACV;wBACE,IAAI,EAAE,QAAQ;wBACd,SAAS,EAAE,CAAE,UAAU,CAAE;qBAC1B;iBACF;aACF,CAAC,CAAC;YACH,0BAA0B,CAAC,sBAAsB,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC;gBAC5D,IAAI,EAAE,mBAAmB;gBACzB,UAAU,EAAE,IAAI;gBAChB,KAAK,EAAE,KAAK,CAAC,OAAO;aACrB,CAAC,CAAC;YACH,IAAI,eAAe,EAAE;gBACnB,0BAA0B,CAAC,sBAAsB,EAAE,YAAY,CAAC,CAAC,GAAG,CAAC;oBACnE,UAAU,EAAE,IAAI;oBAChB,KAAK,EAAE,KAAK,CAAC,OAAO;oBACpB,IAAI,EAAE,sBAAsB,CAAC,eAAe,CAAC;iBAC9C,CAAC,CAAC;aACJ;YACD,MAAM,UAAU,GAAsD,EAAE,CAAC;YACzE,UAAU,CAAC,IAAI,CAAC,kCAAmC,IAAK,kBAAkB,CAAC,CAAC;YAC5E,IAAI,eAAe,EAAE;gBACnB,UAAU,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;gBAC1D,UAAU,CAAC,IAAI,CAAC,mDAAoD,IAAK,4EAA4E,CAAC,CAAC;gBACvJ,UAAU,CAAC,IAAI,CAAC,sEAAsE,CAAC,CAAC;aACzF;iBAAM;gBACL,UAAU,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;aAChD;YACD,UAAU,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;YAC5C,UAAU,CAAC,IAAI,CAAC,0GAA0G,CAAC,CAAC;YAE5H,OAAO;gBACL,UAAU;gBACV,OAAO,EAAE,IAAI;gBACb,KAAK,EAAE,KAAK,CAAC,MAAM;gBACnB,UAAU,EAAE,cAAc;gBAC1B,GAAG,gBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,gBAAgB,CAAC;aAC5D,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AAEL,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ClassDeclaration, MethodDeclarationStructure, OptionalKind, Project, SourceFile } from 'ts-morph';
|
|
2
|
+
import { TsMorphAngularProjectTransformOptions } from '../ts-morph-transform';
|
|
3
|
+
export interface CoerceMethodClassOptions extends TsMorphAngularProjectTransformOptions {
|
|
4
|
+
name: string;
|
|
5
|
+
overwrite?: boolean;
|
|
6
|
+
providedIn?: string;
|
|
7
|
+
tsMorphTransform?: (project: Project, sourceFile: SourceFile, classDeclaration: ClassDeclaration) => Partial<Omit<OptionalKind<MethodDeclarationStructure>, 'name'>>;
|
|
8
|
+
}
|
|
9
|
+
export declare function CoerceMethodClass(options: CoerceMethodClassOptions): import("@angular-devkit/schematics").Rule;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { classify, CoerceSuffix, } from '@rxap/schematics-utilities';
|
|
2
|
+
import { Writers, } from 'ts-morph';
|
|
3
|
+
import { CoerceClass } from '../coerce-class';
|
|
4
|
+
import { CoerceClassMethod } from '../coerce-class-method';
|
|
5
|
+
import { CoerceSourceFile } from '../coerce-source-file';
|
|
6
|
+
import { TsMorphAngularProjectTransformRule, } from '../ts-morph-transform';
|
|
7
|
+
import { CoerceImports } from '../ts-morph/coerce-imports';
|
|
8
|
+
export function CoerceMethodClass(options) {
|
|
9
|
+
let { overwrite, name, tsMorphTransform, providedIn, } = options;
|
|
10
|
+
tsMorphTransform ??= () => ({});
|
|
11
|
+
const className = classify(CoerceSuffix(name, 'Method'));
|
|
12
|
+
const fileName = CoerceSuffix(name, '.method.ts');
|
|
13
|
+
return TsMorphAngularProjectTransformRule(options, (project) => {
|
|
14
|
+
const sourceFile = CoerceSourceFile(project, fileName);
|
|
15
|
+
const classDeclaration = CoerceClass(sourceFile, className, {
|
|
16
|
+
isExported: true,
|
|
17
|
+
decorators: [
|
|
18
|
+
{
|
|
19
|
+
name: 'Injectable',
|
|
20
|
+
arguments: providedIn ? [Writers.object({ providedIn })] : [],
|
|
21
|
+
},
|
|
22
|
+
],
|
|
23
|
+
implements: ['Method'],
|
|
24
|
+
});
|
|
25
|
+
CoerceImports(sourceFile, {
|
|
26
|
+
moduleSpecifier: '@rxap/pattern',
|
|
27
|
+
namedImports: ['Method'],
|
|
28
|
+
});
|
|
29
|
+
CoerceImports(sourceFile, {
|
|
30
|
+
moduleSpecifier: '@angular/core',
|
|
31
|
+
namedImports: ['Injectable'],
|
|
32
|
+
});
|
|
33
|
+
const methodStructure = tsMorphTransform(project, sourceFile, classDeclaration);
|
|
34
|
+
methodStructure.parameters ??= [
|
|
35
|
+
{
|
|
36
|
+
name: 'parameters',
|
|
37
|
+
hasQuestionToken: true,
|
|
38
|
+
type: 'any',
|
|
39
|
+
},
|
|
40
|
+
];
|
|
41
|
+
methodStructure.returnType ??= 'any';
|
|
42
|
+
const methodDeclaration = CoerceClassMethod(classDeclaration, 'call', methodStructure);
|
|
43
|
+
if (overwrite) {
|
|
44
|
+
methodDeclaration.set(methodStructure);
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=coerce-method-class.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coerce-method-class.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/angular/coerce-method-class.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,YAAY,GACb,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAML,OAAO,GACR,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAEL,kCAAkC,GACnC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAa3D,MAAM,UAAU,iBAAiB,CAAC,OAAiC;IACjE,IAAI,EACF,SAAS,EACT,IAAI,EACJ,gBAAgB,EAChB,UAAU,GACX,GAAG,OAAO,CAAC;IACZ,gBAAgB,KAAK,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAChC,MAAM,SAAS,GAAG,QAAQ,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;IACzD,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;IAClD,OAAO,kCAAkC,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE;QAE7D,MAAM,UAAU,GAAG,gBAAgB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QACvD,MAAM,gBAAgB,GAAG,WAAW,CAAC,UAAU,EAAE,SAAS,EAAE;YAC1D,UAAU,EAAE,IAAI;YAChB,UAAU,EAAE;gBACV;oBACE,IAAI,EAAE,YAAY;oBAClB,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC,CAAE,OAAO,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC,CAAE,CAAC,CAAC,CAAC,EAAE;iBAChE;aACF;YACD,UAAU,EAAE,CAAE,QAAQ,CAAE;SACzB,CAAC,CAAC;QACH,aAAa,CAAC,UAAU,EAAE;YACxB,eAAe,EAAE,eAAe;YAChC,YAAY,EAAE,CAAE,QAAQ,CAAE;SAC3B,CAAC,CAAC;QACH,aAAa,CAAC,UAAU,EAAE;YACxB,eAAe,EAAE,eAAe;YAChC,YAAY,EAAE,CAAE,YAAY,CAAE;SAC/B,CAAC,CAAC;QACH,MAAM,eAAe,GAAG,gBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,gBAAgB,CAAC,CAAC;QACjF,eAAe,CAAC,UAAU,KAAK;YAC7B;gBACE,IAAI,EAAE,YAAY;gBAClB,gBAAgB,EAAE,IAAI;gBACtB,IAAI,EAAE,KAAK;aACZ;SACF,CAAC;QACF,eAAe,CAAC,UAAU,KAAK,KAAK,CAAC;QACrC,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,gBAAgB,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;QACvF,IAAI,SAAS,EAAE;YACb,iBAAiB,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;SACxC;IACH,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { CoerceTableActionOptions } from './coerce-table-action';
|
|
2
|
+
export interface CoerceLinkTableActionRuleOptions extends CoerceTableActionOptions {
|
|
3
|
+
route?: string | null;
|
|
4
|
+
}
|
|
5
|
+
export declare function CoerceNavigationTableActionRule(options: CoerceLinkTableActionRuleOptions): import("@angular-devkit/schematics").Rule;
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { CoerceTableActionRule, } from './coerce-table-action';
|
|
2
|
+
import { CoerceClassConstructor } from '../coerce-class-constructor';
|
|
3
|
+
import { Scope, } from 'ts-morph';
|
|
4
|
+
import { CoerceParameterDeclaration } from '../ts-morph/coerce-parameter-declaration';
|
|
5
|
+
import { CoerceImports } from '../ts-morph/coerce-imports';
|
|
6
|
+
function extractAllProperties(route) {
|
|
7
|
+
const match = route.match(/\{\{([^}]+)}}/g);
|
|
8
|
+
if (!match) {
|
|
9
|
+
return [];
|
|
10
|
+
}
|
|
11
|
+
return Array.from(match).map(m => m.replace('{{', '').replace('}}', ''));
|
|
12
|
+
}
|
|
13
|
+
function buildDynamicRoute(route) {
|
|
14
|
+
const properties = extractAllProperties(route);
|
|
15
|
+
if (!properties.length) {
|
|
16
|
+
return route;
|
|
17
|
+
}
|
|
18
|
+
for (const property of properties) {
|
|
19
|
+
route = route.replace(`{{${property}}}`, `\${${property}}`);
|
|
20
|
+
}
|
|
21
|
+
return route;
|
|
22
|
+
}
|
|
23
|
+
export function CoerceNavigationTableActionRule(options) {
|
|
24
|
+
let { tsMorphTransform, tableName, type, route, } = options;
|
|
25
|
+
tsMorphTransform ??= () => ({});
|
|
26
|
+
route ??= '{{uuid}}';
|
|
27
|
+
return CoerceTableActionRule({
|
|
28
|
+
...options,
|
|
29
|
+
tsMorphTransform: (project, sourceFile, classDeclaration) => {
|
|
30
|
+
CoerceImports(sourceFile, {
|
|
31
|
+
namedImports: ['Router', 'ActivatedRoute'],
|
|
32
|
+
moduleSpecifier: '@angular/router',
|
|
33
|
+
});
|
|
34
|
+
const [constructorDeclaration] = CoerceClassConstructor(classDeclaration);
|
|
35
|
+
CoerceParameterDeclaration(constructorDeclaration, 'router').set({
|
|
36
|
+
name: 'router',
|
|
37
|
+
type: 'Router',
|
|
38
|
+
isReadonly: true,
|
|
39
|
+
scope: Scope.Private,
|
|
40
|
+
});
|
|
41
|
+
CoerceParameterDeclaration(constructorDeclaration, 'route').set({
|
|
42
|
+
type: 'ActivatedRoute',
|
|
43
|
+
isReadonly: true,
|
|
44
|
+
scope: Scope.Private,
|
|
45
|
+
});
|
|
46
|
+
const properties = extractAllProperties(route);
|
|
47
|
+
const statements = [];
|
|
48
|
+
statements.push(`console.log(\`action row type: ${type}\`, parameters);`);
|
|
49
|
+
if (properties.length) {
|
|
50
|
+
statements.push(`const { ${properties.join(', ')} } = parameters;`);
|
|
51
|
+
for (const property of properties) {
|
|
52
|
+
statements.push(`if (!${property}) { throw new Error('The table action ${type} is called with a row object that does not have the property ${property}.'); }`);
|
|
53
|
+
}
|
|
54
|
+
statements.push(`return this.router.navigate([ \`${buildDynamicRoute(route)}\` ], { relativeTo: this.route } );`);
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
statements.push(`return this.router.navigate([ '${route}' ], { relativeTo: this.route } );`);
|
|
58
|
+
}
|
|
59
|
+
return {
|
|
60
|
+
statements,
|
|
61
|
+
scope: Scope.Public,
|
|
62
|
+
returnType: 'Promise<any>',
|
|
63
|
+
...tsMorphTransform(project, sourceFile, classDeclaration),
|
|
64
|
+
};
|
|
65
|
+
},
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
//# sourceMappingURL=coerce-navigation-table-action.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coerce-navigation-table-action.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/angular/coerce-navigation-table-action.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { CoerceTableActionOptions } from './coerce-table-action';
|
|
2
|
+
export interface CoerceOperationTableActionRuleOptions extends CoerceTableActionOptions {
|
|
3
|
+
operationId: string;
|
|
4
|
+
scope?: string | null;
|
|
5
|
+
}
|
|
6
|
+
export declare function CoerceOperationTableActionRule(options: CoerceOperationTableActionRuleOptions): import("@angular-devkit/schematics").Rule;
|
|
@@ -0,0 +1,36 @@
|
|
|
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 { CoerceTableActionRule, } from './coerce-table-action';
|
|
7
|
+
export function CoerceOperationTableActionRule(options) {
|
|
8
|
+
let { tsMorphTransform, operationId, tableName, type, scope, } = options;
|
|
9
|
+
tsMorphTransform ??= () => ({});
|
|
10
|
+
return CoerceTableActionRule({
|
|
11
|
+
...options,
|
|
12
|
+
tsMorphTransform: (project, sourceFile, classDeclaration) => {
|
|
13
|
+
const [constructorDeclaration] = CoerceClassConstructor(classDeclaration);
|
|
14
|
+
CoerceParameterDeclaration(constructorDeclaration, 'method').set({
|
|
15
|
+
type: OperationIdToClassName(operationId),
|
|
16
|
+
isReadonly: true,
|
|
17
|
+
scope: Scope.Private,
|
|
18
|
+
});
|
|
19
|
+
CoerceImports(sourceFile, {
|
|
20
|
+
namedImports: [OperationIdToClassName(operationId)],
|
|
21
|
+
moduleSpecifier: OperationIdToClassImportPath(operationId, scope),
|
|
22
|
+
});
|
|
23
|
+
return {
|
|
24
|
+
statements: [
|
|
25
|
+
`console.log(\`action row type: ${type}\`, parameters);`,
|
|
26
|
+
`const { __rowId: rowId } = parameters;`,
|
|
27
|
+
`if (!rowId) { throw new Error('The table action ${type} is called with a row object that does not have the property rowId.'); }`,
|
|
28
|
+
`return this.method.call({ parameters: { rowId } });`,
|
|
29
|
+
],
|
|
30
|
+
returnType: `Promise<void>`,
|
|
31
|
+
...tsMorphTransform(project, sourceFile, classDeclaration),
|
|
32
|
+
};
|
|
33
|
+
},
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=coerce-operation-table-action.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coerce-operation-table-action.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/angular/coerce-operation-table-action.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,EAEL,qBAAqB,GACtB,MAAM,uBAAuB,CAAC;AAO/B,MAAM,UAAU,8BAA8B,CAAC,OAA8C;IAC3F,IAAI,EACF,gBAAgB,EAChB,WAAW,EACX,SAAS,EACT,IAAI,EACJ,KAAK,GACN,GAAG,OAAO,CAAC;IACZ,gBAAgB,KAAK,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAGhC,OAAO,qBAAqB,CAAC;QAC3B,GAAG,OAAO;QACV,gBAAgB,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,EAAE;YAE1D,MAAM,CAAE,sBAAsB,CAAE,GAAG,sBAAsB,CAAC,gBAAgB,CAAC,CAAC;YAE5E,0BAA0B,CAAC,sBAAsB,EAAE,QAAQ,CAAC,CAAC,GAAG,CAAC;gBAC/D,IAAI,EAAE,sBAAsB,CAAC,WAAW,CAAC;gBACzC,UAAU,EAAE,IAAI;gBAChB,KAAK,EAAE,KAAK,CAAC,OAAO;aACrB,CAAC,CAAC;YAEH,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,kCAAmC,IAAK,kBAAkB;oBAC1D,wCAAwC;oBACxC,mDAAoD,IAAK,0EAA0E;oBACnI,qDAAqD;iBACtD;gBACD,UAAU,EAAE,eAAe;gBAC3B,GAAG,gBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,gBAAgB,CAAC;aAC5D,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AAEL,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { TsMorphAngularProjectTransformOptions } from '../ts-morph-transform';
|
|
2
|
+
import { Rule } from '@angular-devkit/schematics';
|
|
3
|
+
export interface CoerceOptionsDataSourceRuleOptions extends TsMorphAngularProjectTransformOptions {
|
|
4
|
+
name: string;
|
|
5
|
+
}
|
|
6
|
+
export declare function CoerceOptionsDataSourceRule(options: Readonly<CoerceOptionsDataSourceRuleOptions>): Rule;
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { CoerceDataSourceClass } from './coerce-data-source-class';
|
|
2
|
+
import { CoerceImports } from '../ts-morph/coerce-imports';
|
|
3
|
+
import { CoerceDecorator } from '../ts-morph/coerce-decorator';
|
|
4
|
+
import { Writers } from 'ts-morph';
|
|
5
|
+
import { dasherize } from '@rxap/schematics-utilities';
|
|
6
|
+
export function CoerceOptionsDataSourceRule(options) {
|
|
7
|
+
const { name, project, feature, directory, shared, } = options;
|
|
8
|
+
return CoerceDataSourceClass({
|
|
9
|
+
project,
|
|
10
|
+
feature,
|
|
11
|
+
directory,
|
|
12
|
+
shared,
|
|
13
|
+
name,
|
|
14
|
+
coerceExtends: (sourceFile, classDeclaration, options) => {
|
|
15
|
+
classDeclaration.setExtends(`StaticDataSource<ControlOptions>`);
|
|
16
|
+
CoerceImports(sourceFile, [
|
|
17
|
+
{
|
|
18
|
+
moduleSpecifier: '@rxap/data-source',
|
|
19
|
+
namedImports: ['StaticDataSource'],
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
moduleSpecifier: '@rxap/utilities',
|
|
23
|
+
namedImports: ['ControlOptions'],
|
|
24
|
+
},
|
|
25
|
+
]);
|
|
26
|
+
},
|
|
27
|
+
coerceDecorator: (sourceFile, classDeclaration, options) => {
|
|
28
|
+
CoerceDecorator(classDeclaration, 'RxapStaticDataSource', {
|
|
29
|
+
arguments: [
|
|
30
|
+
Writers.object({
|
|
31
|
+
id: w => w.quote(dasherize(name)),
|
|
32
|
+
data: '[]',
|
|
33
|
+
}),
|
|
34
|
+
],
|
|
35
|
+
});
|
|
36
|
+
CoerceImports(sourceFile, {
|
|
37
|
+
moduleSpecifier: '@rxap/data-source',
|
|
38
|
+
namedImports: ['RxapStaticDataSource'],
|
|
39
|
+
});
|
|
40
|
+
},
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=coerce-options-data-source.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coerce-options-data-source.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/angular/coerce-options-data-source.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACnC,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAMvD,MAAM,UAAU,2BAA2B,CAAC,OAAqD;IAC/F,MAAM,EACJ,IAAI,EACJ,OAAO,EACP,OAAO,EACP,SAAS,EACT,MAAM,GACP,GAAG,OAAO,CAAC;IACZ,OAAO,qBAAqB,CAAC;QAC3B,OAAO;QACP,OAAO;QACP,SAAS;QACT,MAAM;QACN,IAAI;QACJ,aAAa,EAAE,CAAC,UAAU,EAAE,gBAAgB,EAAE,OAAO,EAAE,EAAE;YACvD,gBAAgB,CAAC,UAAU,CAAC,kCAAkC,CAAC,CAAC;YAChE,aAAa,CAAC,UAAU,EAAE;gBACxB;oBACE,eAAe,EAAE,mBAAmB;oBACpC,YAAY,EAAE,CAAE,kBAAkB,CAAE;iBACrC;gBACD;oBACE,eAAe,EAAE,iBAAiB;oBAClC,YAAY,EAAE,CAAE,gBAAgB,CAAE;iBACnC;aACF,CAAC,CAAC;QACL,CAAC;QACD,eAAe,EAAE,CAAC,UAAU,EAAE,gBAAgB,EAAE,OAAO,EAAE,EAAE;YACzD,eAAe,CAAC,gBAAgB,EAAE,sBAAsB,EAAE;gBACxD,SAAS,EAAE;oBACT,OAAO,CAAC,MAAM,CAAC;wBACb,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;wBACjC,IAAI,EAAE,IAAI;qBACX,CAAC;iBACH;aACF,CAAC,CAAC;YACH,aAAa,CAAC,UAAU,EAAE;gBACxB,eAAe,EAAE,mBAAmB;gBACpC,YAAY,EAAE,CAAE,sBAAsB,CAAE;aACzC,CAAC,CAAC;QACL,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { Rule } from '@angular-devkit/schematics';
|
|
2
|
+
import { TsMorphAngularProjectTransformOptions } from '../ts-morph-transform';
|
|
3
|
+
export type CoerceProjectFeatureOptions = Omit<TsMorphAngularProjectTransformOptions, 'directory' | 'shared'>;
|
|
4
|
+
export declare function CoerceProjectFeature(options: CoerceProjectFeatureOptions): Rule;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { CoerceVariableDeclaration } from '../coerce-variable-declaration';
|
|
2
|
+
import { TsMorphAngularProjectTransformRule, } from '../ts-morph-transform';
|
|
3
|
+
import { CoerceImports } from '../ts-morph/coerce-imports';
|
|
4
|
+
import { HasProjectFeature } from './has-project-feature';
|
|
5
|
+
export function CoerceProjectFeature(options) {
|
|
6
|
+
const { project, feature, } = options;
|
|
7
|
+
return tree => {
|
|
8
|
+
if (!HasProjectFeature(tree, { project, feature })) {
|
|
9
|
+
console.log(`The project '${project}' does not have the feature '${feature}'. The feature will new be created ...`);
|
|
10
|
+
return TsMorphAngularProjectTransformRule({
|
|
11
|
+
project,
|
|
12
|
+
feature,
|
|
13
|
+
}, (project, [sourceFile]) => {
|
|
14
|
+
CoerceVariableDeclaration(sourceFile, 'ROUTES', {
|
|
15
|
+
initializer: `[]`,
|
|
16
|
+
type: 'Route[]',
|
|
17
|
+
});
|
|
18
|
+
CoerceVariableDeclaration(sourceFile, 'ROUTES', {}, {
|
|
19
|
+
isDefaultExport: true,
|
|
20
|
+
});
|
|
21
|
+
CoerceImports(sourceFile, {
|
|
22
|
+
moduleSpecifier: '@angular/router',
|
|
23
|
+
namedImports: ['Route'],
|
|
24
|
+
});
|
|
25
|
+
}, [`feature/${feature}/routes.ts`]);
|
|
26
|
+
}
|
|
27
|
+
return undefined;
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=coerce-project-feature.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coerce-project-feature.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/angular/coerce-project-feature.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAEL,kCAAkC,GACnC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAI1D,MAAM,UAAU,oBAAoB,CAAC,OAAoC;IACvE,MAAM,EACJ,OAAO,EACP,OAAO,GACR,GAAG,OAAO,CAAC;IACZ,OAAO,IAAI,CAAC,EAAE;QACZ,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE;YAClD,OAAO,CAAC,GAAG,CAAC,gBAAiB,OAAQ,gCAAiC,OAAQ,wCAAwC,CAAC,CAAC;YACxH,OAAO,kCAAkC,CACvC;gBACE,OAAO;gBACP,OAAO;aACR,EACD,CAAC,OAAO,EAAE,CAAE,UAAU,CAAE,EAAE,EAAE;gBAC1B,yBAAyB,CAAC,UAAU,EAAE,QAAQ,EAAE;oBAC9C,WAAW,EAAE,IAAI;oBACjB,IAAI,EAAE,SAAS;iBAChB,CAAC,CAAC;gBACH,yBAAyB,CACvB,UAAU,EACV,QAAQ,EACR,EAAE,EACF;oBACE,eAAe,EAAE,IAAI;iBACtB,CACF,CAAC;gBACF,aAAa,CAAC,UAAU,EAAE;oBACxB,eAAe,EAAE,iBAAiB;oBAClC,YAAY,EAAE,CAAE,OAAO,CAAE;iBAC1B,CAAC,CAAC;YACL,CAAC,EACD,CAAE,WAAY,OAAQ,YAAY,CAAE,CACrC,CAAC;SACH;QACD,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { ClassDeclaration, MethodDeclarationStructure, Project, SourceFile, WriterFunction } from 'ts-morph';
|
|
2
|
+
import { TsMorphAngularProjectTransformOptions } from '../ts-morph-transform';
|
|
3
|
+
export interface CoerceProxyRemoteMethodClassOptions extends TsMorphAngularProjectTransformOptions {
|
|
4
|
+
name: string;
|
|
5
|
+
override?: boolean;
|
|
6
|
+
tsMorphTransform?: (project: Project, sourceFile: SourceFile, classDeclaration: ClassDeclaration) => Partial<MethodDeclarationStructure>;
|
|
7
|
+
sourceType: string | WriterFunction;
|
|
8
|
+
targetType: string | WriterFunction;
|
|
9
|
+
proxyMethod: string | WriterFunction;
|
|
10
|
+
}
|
|
11
|
+
export declare function CoerceProxyRemoteMethodClass(options: CoerceProxyRemoteMethodClassOptions): import("@angular-devkit/schematics").Rule;
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import { classify, CoerceSuffix, } from '@rxap/schematics-utilities';
|
|
2
|
+
import { CoerceClass } from '../coerce-class';
|
|
3
|
+
import { CoerceClassMethod } from '../coerce-class-method';
|
|
4
|
+
import { CoerceSourceFile } from '../coerce-source-file';
|
|
5
|
+
import { TsMorphAngularProjectTransformRule, } from '../ts-morph-transform';
|
|
6
|
+
import { CoerceImports } from '../ts-morph/coerce-imports';
|
|
7
|
+
export function CoerceProxyRemoteMethodClass(options) {
|
|
8
|
+
let { override, name, tsMorphTransform, sourceType, targetType, proxyMethod, } = options;
|
|
9
|
+
tsMorphTransform ??= () => ({});
|
|
10
|
+
const className = classify(CoerceSuffix(name, 'ProxyMethod'));
|
|
11
|
+
const fileName = CoerceSuffix(name, '-proxy.method.ts');
|
|
12
|
+
return TsMorphAngularProjectTransformRule(options, (project) => {
|
|
13
|
+
const sourceFile = CoerceSourceFile(project, fileName);
|
|
14
|
+
const classDeclaration = CoerceClass(sourceFile, className, {
|
|
15
|
+
isExported: true,
|
|
16
|
+
decorators: [
|
|
17
|
+
{
|
|
18
|
+
name: 'Injectable',
|
|
19
|
+
arguments: [],
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
name: 'RxapRemoteMethod',
|
|
23
|
+
arguments: [w => w.quote(CoerceSuffix(name, '-proxy'))],
|
|
24
|
+
},
|
|
25
|
+
],
|
|
26
|
+
ctors: [
|
|
27
|
+
{
|
|
28
|
+
parameters: [
|
|
29
|
+
{
|
|
30
|
+
name: 'method',
|
|
31
|
+
type: proxyMethod,
|
|
32
|
+
decorators: [
|
|
33
|
+
{
|
|
34
|
+
name: 'Inject',
|
|
35
|
+
arguments: [proxyMethod],
|
|
36
|
+
},
|
|
37
|
+
],
|
|
38
|
+
},
|
|
39
|
+
],
|
|
40
|
+
statements: ['super(method);'],
|
|
41
|
+
},
|
|
42
|
+
],
|
|
43
|
+
extends: w => {
|
|
44
|
+
w.write('ProxyRemoteMethod<');
|
|
45
|
+
if (typeof sourceType === 'string') {
|
|
46
|
+
w.write(sourceType);
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
sourceType(w);
|
|
50
|
+
}
|
|
51
|
+
w.write(', ');
|
|
52
|
+
if (typeof targetType === 'string') {
|
|
53
|
+
w.write(targetType);
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
targetType(w);
|
|
57
|
+
}
|
|
58
|
+
w.write('>');
|
|
59
|
+
},
|
|
60
|
+
});
|
|
61
|
+
CoerceImports(sourceFile, {
|
|
62
|
+
moduleSpecifier: '@rxap/pattern',
|
|
63
|
+
namedImports: ['Method'],
|
|
64
|
+
});
|
|
65
|
+
CoerceImports(sourceFile, {
|
|
66
|
+
moduleSpecifier: '@angular/core',
|
|
67
|
+
namedImports: ['Injectable', 'Inject'],
|
|
68
|
+
});
|
|
69
|
+
CoerceImports(sourceFile, {
|
|
70
|
+
moduleSpecifier: '@rxap/remote-method',
|
|
71
|
+
namedImports: ['RxapRemoteMethod', 'ProxyRemoteMethod'],
|
|
72
|
+
});
|
|
73
|
+
const methodStructure = tsMorphTransform(project, sourceFile, classDeclaration);
|
|
74
|
+
methodStructure.parameters ??= [
|
|
75
|
+
{
|
|
76
|
+
name: 'source',
|
|
77
|
+
type: sourceType,
|
|
78
|
+
},
|
|
79
|
+
];
|
|
80
|
+
methodStructure.statements ??= ['return source as any'];
|
|
81
|
+
methodStructure.returnType ??= w => {
|
|
82
|
+
w.write('Promise<');
|
|
83
|
+
if (typeof targetType ===
|
|
84
|
+
'string') {
|
|
85
|
+
w.write(targetType);
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
targetType(w);
|
|
89
|
+
}
|
|
90
|
+
w.write('>');
|
|
91
|
+
};
|
|
92
|
+
methodStructure.isAsync ??= true;
|
|
93
|
+
const methodDeclaration = CoerceClassMethod(classDeclaration, 'transformParameters', methodStructure);
|
|
94
|
+
if (override) {
|
|
95
|
+
methodDeclaration.set(methodStructure);
|
|
96
|
+
}
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
//# sourceMappingURL=coerce-proxy-remote-method-class.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coerce-proxy-remote-method-class.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/angular/coerce-proxy-remote-method-class.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { TsMorphAngularProjectTransformOptions } from '../ts-morph-transform';
|
|
2
|
+
export interface CoerceTableActionIndexProviderOptions extends TsMorphAngularProjectTransformOptions {
|
|
3
|
+
tableName: string;
|
|
4
|
+
}
|
|
5
|
+
export declare function CoerceTableActionIndexProviderRule(options: Readonly<CoerceTableActionIndexProviderOptions>): import("@angular-devkit/schematics").Rule;
|