@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 @@
|
|
|
1
|
+
{"version":3,"file":"coerce-nest-module.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-nest-module.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EACL,IAAI,GAEL,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,QAAQ,EACR,SAAS,GACV,MAAM,iBAAiB,CAAC;AAMzB,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAEL,+BAA+B,GAChC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAO1D,MAAM,UAAU,gBAAgB,CAAC,OAAgC;IAC/D,MAAM,EACJ,IAAI,EACJ,OAAO,EACP,OAAO,EACP,MAAM,EACN,SAAS,GACV,GAAG,OAAO,CAAC;IACZ,IAAI,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC;IACnC,gEAAgE;IAChE,gBAAgB,KAAK,GAAG,EAAE,GAAE,CAAC,CAAC;IAC9B,OAAO,KAAK,CAAC;QACX,iBAAiB,CAAC;YAChB,OAAO;YACP,OAAO;YACP,MAAM;SACP,CAAC;QACF,+BAA+B,CAC7B;YACE,OAAO;YACP,OAAO;YACP,MAAM;YACN,SAAS;SACV,EACD,CAAC,OAAO,EAAE,CAAE,UAAU,CAAE,EAAE,EAAE;YAC1B,MAAM,gBAAgB,GAAG,WAAW,CAAC,UAAU,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,QAAQ,EAAE;gBAC1E,UAAU,EAAE,IAAI;gBAChB,UAAU,EAAE;oBACV;wBACE,IAAI,EAAE,QAAQ;wBACd,SAAS,EAAE,CAAE,IAAI,CAAE;qBACpB;iBACF;aACF,CAAC,CAAC;YACH,aAAa,CAAC,UAAU,EAAE;gBACxB;oBACE,YAAY,EAAE,CAAE,QAAQ,CAAE;oBAC1B,eAAe,EAAE,gBAAgB;iBAClC;aACF,CAAC,CAAC;YAEH,gBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,gBAAgB,CAAC,CAAC;QAC3D,CAAC,EACD,CAAE,GAAI,SAAS,CAAC,IAAI,CAAE,aAAa,CAAE,CACtC;QACD,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,wBAAwB,CAAC;YACxC,OAAO;YACP,OAAO;YACP,MAAM;YACN,IAAI;YACJ,SAAS;SACV,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;KACZ,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Rule } from '@angular-devkit/schematics';
|
|
2
|
+
export interface CoerceNestServiceProjectOptions {
|
|
3
|
+
project: string;
|
|
4
|
+
feature?: string | null;
|
|
5
|
+
shared?: boolean;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* @deprecated removed use the AssertNestProject function Rule
|
|
9
|
+
*/
|
|
10
|
+
export declare function CoerceNestServiceProject(options: CoerceNestServiceProjectOptions): Rule;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { buildNestProjectName, HasNestServiceProject, } from './project-utilities';
|
|
2
|
+
import { ExecuteSchematic } from '@rxap/schematics-utilities';
|
|
3
|
+
/**
|
|
4
|
+
* @deprecated removed use the AssertNestProject function Rule
|
|
5
|
+
*/
|
|
6
|
+
export function CoerceNestServiceProject(options) {
|
|
7
|
+
const { project, feature, shared, } = options;
|
|
8
|
+
return tree => {
|
|
9
|
+
if (!HasNestServiceProject(tree, options)) {
|
|
10
|
+
console.log(`The nest service project '${buildNestProjectName(options)}' does not exists. Project will now be created ...`);
|
|
11
|
+
if (feature) {
|
|
12
|
+
if (shared) {
|
|
13
|
+
return ExecuteSchematic('feature-microservice', {
|
|
14
|
+
feature,
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
else {
|
|
18
|
+
return ExecuteSchematic('frontend-microservice', {
|
|
19
|
+
frontend: project,
|
|
20
|
+
feature,
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
return ExecuteSchematic('microservice', {
|
|
26
|
+
project,
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
return undefined;
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=coerce-nest-service-project.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coerce-nest-service-project.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-nest-service-project.ts"],"names":[],"mappings":"AACA,OAAO,EACL,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAQ9D;;GAEG;AACH,MAAM,UAAU,wBAAwB,CAAC,OAAwC;IAC/E,MAAM,EACJ,OAAO,EACP,OAAO,EACP,MAAM,GACP,GAAG,OAAO,CAAC;IACZ,OAAO,IAAI,CAAC,EAAE;QACZ,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE;YACzC,OAAO,CAAC,GAAG,CAAC,6BAA8B,oBAAoB,CAAC,OAAO,CAAE,oDAAoD,CAAC,CAAC;YAC9H,IAAI,OAAO,EAAE;gBACX,IAAI,MAAM,EAAE;oBACV,OAAO,gBAAgB,CACrB,sBAAsB,EACtB;wBACE,OAAO;qBACR,CACF,CAAC;iBACH;qBAAM;oBACL,OAAO,gBAAgB,CACrB,uBAAuB,EACvB;wBACE,QAAQ,EAAE,OAAO;wBACjB,OAAO;qBACR,CACF,CAAC;iBACH;aACF;iBAAM;gBACL,OAAO,gBAAgB,CACrB,cAAc,EACd;oBACE,OAAO;iBACR,CACF,CAAC;aACH;SACF;QACD,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Rule } from '@angular-devkit/schematics';
|
|
2
|
+
import { ClassDeclaration, Project, SourceFile } from 'ts-morph';
|
|
3
|
+
import { TsMorphNestProjectTransformOptions } from '../ts-morph-transform';
|
|
4
|
+
import { OperationOptions, OperationParameter } from './add-operation-to-controller';
|
|
5
|
+
export interface CoerceOperationOptions extends TsMorphNestProjectTransformOptions {
|
|
6
|
+
controllerName: string;
|
|
7
|
+
shared?: boolean;
|
|
8
|
+
nestModule?: string | null;
|
|
9
|
+
skipCoerce?: boolean;
|
|
10
|
+
paramList?: OperationParameter[];
|
|
11
|
+
queryList?: OperationParameter[];
|
|
12
|
+
tsMorphTransform?: (project: Project, sourceFile: SourceFile, classDeclaration: ClassDeclaration, controllerName: string) => Partial<OperationOptions>;
|
|
13
|
+
operationName: string;
|
|
14
|
+
path?: string;
|
|
15
|
+
controllerPath?: string;
|
|
16
|
+
/**
|
|
17
|
+
* true - the control path is overwritten with
|
|
18
|
+
*/
|
|
19
|
+
overwriteControllerPath?: boolean;
|
|
20
|
+
context?: string | null;
|
|
21
|
+
}
|
|
22
|
+
export declare function CoerceOperationParamList(paramList: OperationParameter[], classDeclaration: ClassDeclaration): void;
|
|
23
|
+
export declare function CoerceOperation(options: CoerceOperationOptions): Rule;
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { chain, } from '@angular-devkit/schematics';
|
|
2
|
+
import { classify } from '@rxap/schematics-utilities';
|
|
3
|
+
import { join } from 'path';
|
|
4
|
+
import { TsMorphNestProjectTransformRule, } from '../ts-morph-transform';
|
|
5
|
+
import { AddOperationToController, } from './add-operation-to-controller';
|
|
6
|
+
import { BuildNestControllerName } from './build-nest-controller-name';
|
|
7
|
+
import { CoerceNestController } from './coerce-nest-controller';
|
|
8
|
+
export function CoerceOperationParamList(paramList, classDeclaration) {
|
|
9
|
+
const currentControllerPath = classDeclaration.getDecoratorOrThrow('Controller').getArguments()[0]?.getText() ?? '';
|
|
10
|
+
const fragments = currentControllerPath.split('/');
|
|
11
|
+
const parameters = fragments.filter(fragment => fragment.startsWith(':'));
|
|
12
|
+
for (const parameter of parameters) {
|
|
13
|
+
if (!paramList.some(param => param.name === parameter.substr(1))) {
|
|
14
|
+
paramList.push({ name: parameter.substr(1) });
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
export function CoerceOperation(options) {
|
|
19
|
+
let { nestModule, controllerName, project, paramList, feature, shared, tsMorphTransform, operationName, skipCoerce, controllerPath, queryList, path, overwriteControllerPath, directory, } = options;
|
|
20
|
+
tsMorphTransform ??= () => ({});
|
|
21
|
+
paramList ??= [];
|
|
22
|
+
queryList ??= [];
|
|
23
|
+
/**
|
|
24
|
+
* If the module is not specified. This controller has an own module. Else the
|
|
25
|
+
* module is originated by another controller.
|
|
26
|
+
*
|
|
27
|
+
* **Example**
|
|
28
|
+
* true:
|
|
29
|
+
* The controller ReportDetailsController should be extended with getById Operation.
|
|
30
|
+
* And the controller is used in the module ReportDetailsModule
|
|
31
|
+
*
|
|
32
|
+
* name = "report-details"
|
|
33
|
+
* module = undefined
|
|
34
|
+
*
|
|
35
|
+
* false:
|
|
36
|
+
* The controller ReportDetailsNotificationController should be extend with getById Operation.
|
|
37
|
+
* And the controller ise used in the module ReportDetailsModule
|
|
38
|
+
*
|
|
39
|
+
* name = "notification"
|
|
40
|
+
* module = "report-details"
|
|
41
|
+
*/
|
|
42
|
+
const isFirstBornSibling = !nestModule || nestModule === controllerName;
|
|
43
|
+
const nestController = BuildNestControllerName({
|
|
44
|
+
controllerName,
|
|
45
|
+
nestModule,
|
|
46
|
+
});
|
|
47
|
+
if (!nestModule || isFirstBornSibling) {
|
|
48
|
+
nestModule = nestController;
|
|
49
|
+
}
|
|
50
|
+
directory = join(directory ?? '', nestModule);
|
|
51
|
+
return chain([
|
|
52
|
+
() => console.log(`Coerce Operation '${operationName}' with path '${path}' in the controller '${nestController}' in the module '${nestModule}'`),
|
|
53
|
+
CoerceNestController({
|
|
54
|
+
project,
|
|
55
|
+
feature,
|
|
56
|
+
shared,
|
|
57
|
+
directory,
|
|
58
|
+
coerceModule: !skipCoerce,
|
|
59
|
+
name: nestController,
|
|
60
|
+
nestModule,
|
|
61
|
+
}),
|
|
62
|
+
// IMPORTANT: the use of the filePath parameter for the narrow loading of the source file CAN NOT BE USED here
|
|
63
|
+
// because sub functions may need to load other source files that are then not loaded into the
|
|
64
|
+
// project instance!
|
|
65
|
+
TsMorphNestProjectTransformRule({
|
|
66
|
+
project,
|
|
67
|
+
feature,
|
|
68
|
+
shared,
|
|
69
|
+
directory,
|
|
70
|
+
}, project => {
|
|
71
|
+
const sourceFile = project.getSourceFileOrThrow(`${nestController}.controller.ts`);
|
|
72
|
+
const classDeclaration = sourceFile.getClassOrThrow(`${classify(nestController)}Controller`);
|
|
73
|
+
const operationOptions = tsMorphTransform(project, sourceFile, classDeclaration, nestController);
|
|
74
|
+
if (controllerPath) {
|
|
75
|
+
classDeclaration.getDecoratorOrThrow('Controller').set({
|
|
76
|
+
arguments: [w => w.quote(controllerPath)],
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
else if (!isFirstBornSibling) {
|
|
80
|
+
const parentParamList = paramList.filter(p => p.fromParent);
|
|
81
|
+
classDeclaration.getDecoratorOrThrow('Controller').set({
|
|
82
|
+
arguments: [
|
|
83
|
+
w => w.quote(`${nestModule}/${parentParamList.length ?
|
|
84
|
+
parentParamList.map(param => `:${param.name}`).join('/') + '/' :
|
|
85
|
+
''}${controllerName.replace(nestModule + '-', '')}`),
|
|
86
|
+
],
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
CoerceOperationParamList(paramList, classDeclaration);
|
|
90
|
+
AddOperationToController(sourceFile, classDeclaration, operationName, {
|
|
91
|
+
isAsync: true,
|
|
92
|
+
paramList,
|
|
93
|
+
queryList,
|
|
94
|
+
path,
|
|
95
|
+
...operationOptions,
|
|
96
|
+
});
|
|
97
|
+
}),
|
|
98
|
+
]);
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=coerce-operation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coerce-operation.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-operation.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Rule } from '@angular-devkit/schematics';
|
|
2
|
+
import { FormDefinitionControl } from '../types/form-definition-control';
|
|
3
|
+
import { CoerceOperationOptions } from './coerce-operation';
|
|
4
|
+
export interface CoerceOptionsOperationRuleOptions extends CoerceOperationOptions {
|
|
5
|
+
control: Required<FormDefinitionControl>;
|
|
6
|
+
responseDtoName?: string;
|
|
7
|
+
}
|
|
8
|
+
export declare function CoerceOptionsOperationRule(options: Readonly<CoerceOptionsOperationRuleOptions>): Rule;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { joinWithDash } from '@rxap/utilities';
|
|
2
|
+
import { CoerceImports } from '../ts-morph/coerce-imports';
|
|
3
|
+
import { WriteType } from '../ts-morph/write-type';
|
|
4
|
+
import { CoerceDtoClass } from './coerce-dto-class';
|
|
5
|
+
import { CoerceOperation, } from './coerce-operation';
|
|
6
|
+
export function CoerceOptionsOperationRule(options) {
|
|
7
|
+
let { responseDtoName, control, context, } = options;
|
|
8
|
+
responseDtoName ??= joinWithDash([context, control.name, 'options']);
|
|
9
|
+
return CoerceOperation({
|
|
10
|
+
...options,
|
|
11
|
+
tsMorphTransform: (project, sourceFile, classDeclaration, controllerName) => {
|
|
12
|
+
const { className, filePath, } = CoerceDtoClass({
|
|
13
|
+
project,
|
|
14
|
+
name: responseDtoName,
|
|
15
|
+
propertyList: [
|
|
16
|
+
{
|
|
17
|
+
name: 'display',
|
|
18
|
+
type: 'string',
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
name: 'value',
|
|
22
|
+
type: WriteType(control),
|
|
23
|
+
},
|
|
24
|
+
],
|
|
25
|
+
});
|
|
26
|
+
CoerceImports(sourceFile, {
|
|
27
|
+
namedImports: [className],
|
|
28
|
+
moduleSpecifier: filePath,
|
|
29
|
+
});
|
|
30
|
+
CoerceImports(sourceFile, {
|
|
31
|
+
namedImports: ['plainToInstance'],
|
|
32
|
+
moduleSpecifier: 'class-transformer',
|
|
33
|
+
});
|
|
34
|
+
CoerceImports(sourceFile, {
|
|
35
|
+
namedImports: ['classTransformOptions'],
|
|
36
|
+
moduleSpecifier: '@rxap/nest-utilities',
|
|
37
|
+
});
|
|
38
|
+
return {
|
|
39
|
+
returnType: `Array<${className}>`,
|
|
40
|
+
statements: [
|
|
41
|
+
'return plainToInstance(',
|
|
42
|
+
className + ',',
|
|
43
|
+
'[],',
|
|
44
|
+
'classTransformOptions',
|
|
45
|
+
');',
|
|
46
|
+
],
|
|
47
|
+
};
|
|
48
|
+
},
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=coerce-options-operation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coerce-options-operation.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-options-operation.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEnD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EACL,eAAe,GAEhB,MAAM,oBAAoB,CAAC;AAO5B,MAAM,UAAU,0BAA0B,CAAC,OAAoD;IAC7F,IAAI,EACF,eAAe,EACf,OAAO,EACP,OAAO,GACR,GAAG,OAAO,CAAC;IACZ,eAAe,KAAK,YAAY,CAAC,CAAE,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,SAAS,CAAE,CAAC,CAAC;IACvE,OAAO,eAAe,CAAC;QACrB,GAAG,OAAO;QACV,gBAAgB,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,cAAc,EAAE,EAAE;YAE1E,MAAM,EACJ,SAAS,EACT,QAAQ,GACT,GAAG,cAAc,CAAC;gBACjB,OAAO;gBACP,IAAI,EAAE,eAAgB;gBACtB,YAAY,EAAE;oBACZ;wBACE,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,QAAQ;qBACf;oBACD;wBACE,IAAI,EAAE,OAAO;wBACb,IAAI,EAAE,SAAS,CAAC,OAAO,CAAC;qBACzB;iBACF;aACF,CAAC,CAAC;YAEH,aAAa,CAAC,UAAU,EAAE;gBACxB,YAAY,EAAE,CAAE,SAAS,CAAE;gBAC3B,eAAe,EAAE,QAAQ;aAC1B,CAAC,CAAC;YACH,aAAa,CAAC,UAAU,EAAE;gBACxB,YAAY,EAAE,CAAE,iBAAiB,CAAE;gBACnC,eAAe,EAAE,mBAAmB;aACrC,CAAC,CAAC;YACH,aAAa,CAAC,UAAU,EAAE;gBACxB,YAAY,EAAE,CAAE,uBAAuB,CAAE;gBACzC,eAAe,EAAE,sBAAsB;aACxC,CAAC,CAAC;YAEH,OAAO;gBACL,UAAU,EAAE,SAAU,SAAU,GAAG;gBACnC,UAAU,EAAE;oBACV,yBAAyB;oBACzB,SAAS,GAAG,GAAG;oBACf,KAAK;oBACL,uBAAuB;oBACvB,IAAI;iBACL;aACF,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ClassDeclarationStructure, ImportDeclarationStructure, OptionalKind, Project } from 'ts-morph';
|
|
2
|
+
import { DtoClassProperty } from './create-dto-class';
|
|
3
|
+
export interface CoercePageDtoClassOptions {
|
|
4
|
+
project: Project;
|
|
5
|
+
name: string;
|
|
6
|
+
propertyList?: DtoClassProperty[];
|
|
7
|
+
classStructure?: Omit<OptionalKind<ClassDeclarationStructure>, 'name'>;
|
|
8
|
+
importStructureList?: Array<OptionalKind<ImportDeclarationStructure>>;
|
|
9
|
+
rowClassName: string;
|
|
10
|
+
rowFilePath: string;
|
|
11
|
+
}
|
|
12
|
+
export declare function CoercePageDtoClass(options: CoercePageDtoClassOptions): import("./coerce-dto-class").CoerceDtoClassOutput;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { CoerceSuffix } from '@rxap/schematics-utilities';
|
|
2
|
+
import { basename } from 'path';
|
|
3
|
+
import { CoerceDtoClass } from './coerce-dto-class';
|
|
4
|
+
export function CoercePageDtoClass(options) {
|
|
5
|
+
let { project, name, propertyList, classStructure, importStructureList, rowClassName, rowFilePath, } = options;
|
|
6
|
+
importStructureList ??= [];
|
|
7
|
+
importStructureList.push({
|
|
8
|
+
namedImports: ['PageDto'],
|
|
9
|
+
moduleSpecifier: '@rxap/nest-utilities',
|
|
10
|
+
}, {
|
|
11
|
+
namedImports: [rowClassName],
|
|
12
|
+
moduleSpecifier: `./${basename(rowFilePath)}`,
|
|
13
|
+
});
|
|
14
|
+
classStructure ??= {};
|
|
15
|
+
classStructure.extends = `PageDto<${rowClassName}>`;
|
|
16
|
+
propertyList ??= [
|
|
17
|
+
{
|
|
18
|
+
name: 'rows',
|
|
19
|
+
type: rowClassName,
|
|
20
|
+
isArray: true,
|
|
21
|
+
isType: true,
|
|
22
|
+
},
|
|
23
|
+
];
|
|
24
|
+
propertyList.push();
|
|
25
|
+
return CoerceDtoClass({
|
|
26
|
+
project,
|
|
27
|
+
name: CoerceSuffix(name, '-page'),
|
|
28
|
+
propertyList,
|
|
29
|
+
classStructure,
|
|
30
|
+
importStructureList,
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=coerce-page-dto-class.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coerce-page-dto-class.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-page-dto-class.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAOhC,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAapD,MAAM,UAAU,kBAAkB,CAAC,OAAkC;IACnE,IAAI,EACF,OAAO,EACP,IAAI,EACJ,YAAY,EACZ,cAAc,EACd,mBAAmB,EACnB,YAAY,EACZ,WAAW,GACZ,GAAG,OAAO,CAAC;IACZ,mBAAmB,KAAK,EAAE,CAAC;IAC3B,mBAAmB,CAAC,IAAI,CACtB;QACE,YAAY,EAAE,CAAE,SAAS,CAAE;QAC3B,eAAe,EAAE,sBAAsB;KACxC,EACD;QACE,YAAY,EAAE,CAAE,YAAY,CAAE;QAC9B,eAAe,EAAE,KAAM,QAAQ,CAAC,WAAW,CAAE,EAAE;KAChD,CACF,CAAC;IACF,cAAc,KAAK,EAAE,CAAC;IACtB,cAAc,CAAC,OAAO,GAAG,WAAY,YAAa,GAAG,CAAC;IACtD,YAAY,KAAK;QACf;YACE,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,YAAY;YAClB,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,IAAI;SACb;KACF,CAAC;IACF,YAAY,CAAC,IAAI,EAAE,CAAC;IACpB,OAAO,cAAc,CAAC;QACpB,OAAO;QACP,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC;QACjC,YAAY;QACZ,cAAc;QACd,mBAAmB;KACpB,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { CoerceDtoClassOptions } from './coerce-dto-class';
|
|
2
|
+
export interface CoerceRowDtoClassOptions extends CoerceDtoClassOptions {
|
|
3
|
+
/**
|
|
4
|
+
* the type of the property used as row id type. defaults to the type 'string'. If null the type will be
|
|
5
|
+
* set to number
|
|
6
|
+
*/
|
|
7
|
+
rowIdType?: string | null;
|
|
8
|
+
}
|
|
9
|
+
export declare function CoerceRowDtoClass(options: CoerceRowDtoClassOptions): import("./coerce-dto-class").CoerceDtoClassOutput;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { CoerceSuffix } from '@rxap/schematics-utilities';
|
|
2
|
+
import { CoerceDtoClass, } from './coerce-dto-class';
|
|
3
|
+
export function CoerceRowDtoClass(options) {
|
|
4
|
+
let { rowIdType, project, name, propertyList, classStructure, importStructureList, } = options;
|
|
5
|
+
propertyList ??= [];
|
|
6
|
+
propertyList.unshift({
|
|
7
|
+
name: '__rowId',
|
|
8
|
+
type: rowIdType === null ? 'number' : rowIdType ?? 'string',
|
|
9
|
+
});
|
|
10
|
+
return CoerceDtoClass({
|
|
11
|
+
project,
|
|
12
|
+
name: CoerceSuffix(name, '-row'),
|
|
13
|
+
propertyList,
|
|
14
|
+
classStructure,
|
|
15
|
+
importStructureList,
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=coerce-row-dto-class.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coerce-row-dto-class.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-row-dto-class.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EACL,cAAc,GAEf,MAAM,oBAAoB,CAAC;AAU5B,MAAM,UAAU,iBAAiB,CAAC,OAAiC;IACjE,IAAI,EACF,SAAS,EACT,OAAO,EACP,IAAI,EACJ,YAAY,EACZ,cAAc,EACd,mBAAmB,GACpB,GAAG,OAAO,CAAC;IACZ,YAAY,KAAK,EAAE,CAAC;IACpB,YAAY,CAAC,OAAO,CAClB;QACE,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,IAAI,QAAQ;KAC5D,CACF,CAAC;IACF,OAAO,cAAc,CAAC;QACpB,OAAO;QACP,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC;QAChC,YAAY;QACZ,cAAc;QACd,mBAAmB;KACpB,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { CoerceFormSubmitOperationOptions } from './coerce-form-submit-operation';
|
|
2
|
+
export interface CoerceSubmitDataGridOperationOptions extends Omit<CoerceFormSubmitOperationOptions, 'operationName'> {
|
|
3
|
+
collection?: boolean;
|
|
4
|
+
}
|
|
5
|
+
export declare function CoerceSubmitDataGridOperation(options: Readonly<CoerceSubmitDataGridOperationOptions>): import("@angular-devkit/schematics").Rule;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { CoerceSuffix } from '@rxap/schematics-utilities';
|
|
2
|
+
import { CoerceFormSubmitOperation, } from './coerce-form-submit-operation';
|
|
3
|
+
export function CoerceSubmitDataGridOperation(options) {
|
|
4
|
+
let { paramList, collection, controllerName, } = options;
|
|
5
|
+
collection ??= false;
|
|
6
|
+
paramList ??= [];
|
|
7
|
+
controllerName = CoerceSuffix(controllerName, '-data-grid');
|
|
8
|
+
return CoerceFormSubmitOperation({
|
|
9
|
+
...options,
|
|
10
|
+
controllerName,
|
|
11
|
+
paramList,
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=coerce-submit-data-grid-operation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coerce-submit-data-grid-operation.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-submit-data-grid-operation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EACL,yBAAyB,GAE1B,MAAM,gCAAgC,CAAC;AAMxC,MAAM,UAAU,6BAA6B,CAAC,OAAuD;IACnG,IAAI,EACF,SAAS,EACT,UAAU,EACV,cAAc,GACf,GAAG,OAAO,CAAC;IACZ,UAAU,KAAK,KAAK,CAAC;IACrB,SAAS,KAAK,EAAE,CAAC;IACjB,cAAc,GAAG,YAAY,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;IAE5D,OAAO,yBAAyB,CAAC;QAC/B,GAAG,OAAO;QACV,cAAc;QACd,SAAS;KACV,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { CoerceGetPageOperationOptions } from './coerce-get-page-operation';
|
|
2
|
+
export interface CoerceTableSelectOperationOptions extends CoerceGetPageOperationOptions {
|
|
3
|
+
rowDisplayProperty?: string;
|
|
4
|
+
rowValueProperty?: string;
|
|
5
|
+
}
|
|
6
|
+
export declare function CoerceTableSelectOperationRule(options: CoerceTableSelectOperationOptions): import("@angular-devkit/schematics").Rule;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { CoerceGetPageOperation, } from './coerce-get-page-operation';
|
|
2
|
+
export function CoerceTableSelectOperationRule(options) {
|
|
3
|
+
let { columnList, rowIdProperty, rowDisplayProperty, rowValueProperty, } = options;
|
|
4
|
+
rowIdProperty ??= 'uuid';
|
|
5
|
+
rowDisplayProperty ??= 'name';
|
|
6
|
+
rowValueProperty ??= rowIdProperty;
|
|
7
|
+
columnList.unshift({
|
|
8
|
+
name: '__display',
|
|
9
|
+
type: 'string',
|
|
10
|
+
source: rowDisplayProperty,
|
|
11
|
+
});
|
|
12
|
+
columnList.unshift({
|
|
13
|
+
name: '__value',
|
|
14
|
+
type: 'string',
|
|
15
|
+
source: rowValueProperty,
|
|
16
|
+
});
|
|
17
|
+
return CoerceGetPageOperation({
|
|
18
|
+
...options,
|
|
19
|
+
columnList,
|
|
20
|
+
rowIdProperty,
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=coerce-table-select-operation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coerce-table-select-operation.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-table-select-operation.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,GAEvB,MAAM,6BAA6B,CAAC;AAOrC,MAAM,UAAU,8BAA8B,CAAC,OAA0C;IACvF,IAAI,EACF,UAAU,EACV,aAAa,EACb,kBAAkB,EAClB,gBAAgB,GACjB,GAAG,OAAO,CAAC;IAEZ,aAAa,KAAK,MAAM,CAAC;IACzB,kBAAkB,KAAK,MAAM,CAAC;IAC9B,gBAAgB,KAAK,aAAa,CAAC;IAEnC,UAAU,CAAC,OAAO,CAAC;QACjB,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,kBAAkB;KAC3B,CAAC,CAAC;IACH,UAAU,CAAC,OAAO,CAAC;QACjB,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,gBAAgB;KACzB,CAAC,CAAC;IAEH,OAAO,sBAAsB,CAAC;QAC5B,GAAG,OAAO;QACV,UAAU;QACV,aAAa;KACd,CAAC,CAAC;AAEL,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { CoerceOperationOptions } from './coerce-operation';
|
|
2
|
+
export interface CoerceTableSelectValueResolveOperationOptions extends Omit<CoerceOperationOptions, 'tsMorphTransform'> {
|
|
3
|
+
/**
|
|
4
|
+
* The base name of the page and row DTO class name. Defaults to the controller name
|
|
5
|
+
*/
|
|
6
|
+
responseDtoName?: string;
|
|
7
|
+
}
|
|
8
|
+
export declare function CoerceTableSelectValueResolveOperationRule(options: CoerceTableSelectValueResolveOperationOptions): import("@angular-devkit/schematics").Rule;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { CoerceImports } from '../ts-morph/coerce-imports';
|
|
2
|
+
import { CoerceOperation, } from './coerce-operation';
|
|
3
|
+
import { CoercePageDtoClass } from './coerce-page-dto-class';
|
|
4
|
+
import { CoerceRowDtoClass } from './coerce-row-dto-class';
|
|
5
|
+
export function CoerceTableSelectValueResolveOperationRule(options) {
|
|
6
|
+
let { responseDtoName, controllerName, } = options;
|
|
7
|
+
responseDtoName ??= controllerName;
|
|
8
|
+
return CoerceOperation({
|
|
9
|
+
...options,
|
|
10
|
+
tsMorphTransform: (project, sourceFile, classDeclaration, controllerName) => {
|
|
11
|
+
const { className: rowClassName, filePath: rowFilePath, } = CoerceRowDtoClass({
|
|
12
|
+
project,
|
|
13
|
+
name: responseDtoName,
|
|
14
|
+
});
|
|
15
|
+
const { className: pageClassName, filePath: pageFilePath, } = CoercePageDtoClass({
|
|
16
|
+
project,
|
|
17
|
+
name: responseDtoName,
|
|
18
|
+
rowClassName,
|
|
19
|
+
rowFilePath,
|
|
20
|
+
});
|
|
21
|
+
CoerceImports(sourceFile, {
|
|
22
|
+
moduleSpecifier: rowFilePath,
|
|
23
|
+
namedImports: [rowClassName],
|
|
24
|
+
});
|
|
25
|
+
return {
|
|
26
|
+
returnType: rowClassName,
|
|
27
|
+
statements: [
|
|
28
|
+
'const item = {} as any',
|
|
29
|
+
'return plainToInstance(',
|
|
30
|
+
rowClassName + ',',
|
|
31
|
+
`this.to${rowClassName}(item),`,
|
|
32
|
+
'classTransformOptions',
|
|
33
|
+
')',
|
|
34
|
+
],
|
|
35
|
+
};
|
|
36
|
+
},
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=coerce-table-select-value-resolve-operation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coerce-table-select-value-resolve-operation.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-table-select-value-resolve-operation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EACL,eAAe,GAEhB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAU3D,MAAM,UAAU,0CAA0C,CAAC,OAAsD;IAC/G,IAAI,EACF,eAAe,EACf,cAAc,GACf,GAAG,OAAO,CAAC;IACZ,eAAe,KAAK,cAAc,CAAC;IAEnC,OAAO,eAAe,CAAC;QACrB,GAAG,OAAO;QACV,gBAAgB,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,cAAc,EAAE,EAAE;YAE1E,MAAM,EACJ,SAAS,EAAE,YAAY,EACvB,QAAQ,EAAE,WAAW,GACtB,GAAG,iBAAiB,CAAC;gBACpB,OAAO;gBACP,IAAI,EAAE,eAAgB;aACvB,CAAC,CAAC;YAEH,MAAM,EACJ,SAAS,EAAE,aAAa,EACxB,QAAQ,EAAE,YAAY,GACvB,GAAG,kBAAkB,CAAC;gBACrB,OAAO;gBACP,IAAI,EAAE,eAAgB;gBACtB,YAAY;gBACZ,WAAW;aACZ,CAAC,CAAC;YAEH,aAAa,CAAC,UAAU,EAAE;gBACxB,eAAe,EAAE,WAAW;gBAC5B,YAAY,EAAE,CAAE,YAAY,CAAE;aAC/B,CAAC,CAAC;YAEH,OAAO;gBACL,UAAU,EAAE,YAAY;gBACxB,UAAU,EAAE;oBACV,wBAAwB;oBACxB,yBAAyB;oBACzB,YAAY,GAAG,GAAG;oBAClB,UAAW,YAAa,SAAS;oBACjC,uBAAuB;oBACvB,GAAG;iBACJ;aACF,CAAC;QAEJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { CoerceOperationOptions } from './coerce-operation';
|
|
2
|
+
export interface CoerceTreeOperationOptions extends Omit<CoerceOperationOptions, 'operationName'> {
|
|
3
|
+
operationName?: string;
|
|
4
|
+
fullTree?: boolean;
|
|
5
|
+
}
|
|
6
|
+
export declare function CoerceTreeOperationRule(options: CoerceTreeOperationOptions): import("@angular-devkit/schematics").Rule;
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { CoerceImports } from '../ts-morph/coerce-imports';
|
|
2
|
+
import { CoerceDtoClass } from './coerce-dto-class';
|
|
3
|
+
import { CoerceOperation, } from './coerce-operation';
|
|
4
|
+
export function CoerceTreeOperationRule(options) {
|
|
5
|
+
let { tsMorphTransform, operationName, fullTree, path, } = options;
|
|
6
|
+
operationName ??= 'tree';
|
|
7
|
+
fullTree ??= false;
|
|
8
|
+
path ??= 'tree';
|
|
9
|
+
tsMorphTransform ??= () => ({});
|
|
10
|
+
if (!fullTree) {
|
|
11
|
+
throw new Error('non full tree not implemented yet');
|
|
12
|
+
}
|
|
13
|
+
return CoerceOperation({
|
|
14
|
+
...options,
|
|
15
|
+
path,
|
|
16
|
+
operationName,
|
|
17
|
+
tsMorphTransform: (project, sourceFile, classDeclaration, controllerName) => {
|
|
18
|
+
const { className, filePath, } = CoerceDtoClass({
|
|
19
|
+
project,
|
|
20
|
+
name: 'TreeNode',
|
|
21
|
+
propertyList: [
|
|
22
|
+
{
|
|
23
|
+
name: 'id',
|
|
24
|
+
type: 'string',
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
name: 'name',
|
|
28
|
+
type: 'string',
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
name: 'type',
|
|
32
|
+
type: 'string',
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
name: 'icon',
|
|
36
|
+
type: 'IconConfigDto',
|
|
37
|
+
isType: true,
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
name: 'children',
|
|
41
|
+
isOptional: true,
|
|
42
|
+
isArray: true,
|
|
43
|
+
isType: true,
|
|
44
|
+
type: '<self>',
|
|
45
|
+
},
|
|
46
|
+
]
|
|
47
|
+
});
|
|
48
|
+
CoerceImports(sourceFile, {
|
|
49
|
+
namedImports: [className],
|
|
50
|
+
moduleSpecifier: filePath,
|
|
51
|
+
});
|
|
52
|
+
return {
|
|
53
|
+
returnType: className + '[]',
|
|
54
|
+
...tsMorphTransform(project, sourceFile, classDeclaration, controllerName),
|
|
55
|
+
};
|
|
56
|
+
},
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=coerce-tree-operation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coerce-tree-operation.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-tree-operation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EACL,eAAe,GAEhB,MAAM,oBAAoB,CAAC;AAO5B,MAAM,UAAU,uBAAuB,CAAC,OAAmC;IACzE,IAAI,EACF,gBAAgB,EAChB,aAAa,EACb,QAAQ,EACR,IAAI,GACL,GAAG,OAAO,CAAC;IACZ,aAAa,KAAK,MAAM,CAAC;IACzB,QAAQ,KAAK,KAAK,CAAC;IACnB,IAAI,KAAK,MAAM,CAAC;IAChB,gBAAgB,KAAK,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAEhC,IAAI,CAAC,QAAQ,EAAE;QACb,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;KACtD;IAED,OAAO,eAAe,CAAC;QACrB,GAAG,OAAO;QACV,IAAI;QACJ,aAAa;QACb,gBAAgB,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,cAAc,EAAE,EAAE;YAE1E,MAAM,EACJ,SAAS,EACT,QAAQ,GACT,GAAG,cAAc,CAAC;gBACjB,OAAO;gBACP,IAAI,EAAE,UAAU;gBAChB,YAAY,EAAE;oBACd;wBACE,IAAI,EAAE,IAAI;wBACV,IAAI,EAAE,QAAQ;qBACf;oBACD;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,QAAQ;qBACf;oBACD;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,QAAQ;qBACf;oBACD;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,eAAe;wBACrB,MAAM,EAAE,IAAI;qBACb;oBACD;wBACE,IAAI,EAAE,UAAU;wBAChB,UAAU,EAAE,IAAI;wBAChB,OAAO,EAAE,IAAI;wBACb,MAAM,EAAE,IAAI;wBACZ,IAAI,EAAE,QAAQ;qBACf;iBACA;aACF,CAAC,CAAC;YAEH,aAAa,CACX,UAAU,EACV;gBACE,YAAY,EAAE,CAAE,SAAS,CAAE;gBAC3B,eAAe,EAAE,QAAQ;aAC1B,CACF,CAAC;YAEF,OAAO;gBACL,UAAU,EAAE,SAAS,GAAG,IAAI;gBAC5B,GAAG,gBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,cAAc,CAAC;aAC5E,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { ClassDeclaration, ClassDeclarationStructure, ImportDeclarationStructure, OptionalKind, SourceFile, WriterFunction } from 'ts-morph';
|
|
2
|
+
export interface DtoClassProperty {
|
|
3
|
+
name: string;
|
|
4
|
+
/**
|
|
5
|
+
* The type of the property
|
|
6
|
+
*
|
|
7
|
+
* if type = '<self>' the type will be the name of the class
|
|
8
|
+
*/
|
|
9
|
+
type: string | WriterFunction;
|
|
10
|
+
isArray?: boolean;
|
|
11
|
+
isType?: boolean;
|
|
12
|
+
isOptional?: boolean;
|
|
13
|
+
/**
|
|
14
|
+
* Use to import the type
|
|
15
|
+
*/
|
|
16
|
+
moduleSpecifier?: string;
|
|
17
|
+
}
|
|
18
|
+
export declare function CreateDtoClass(sourceFile: SourceFile, className: string, propertyList: DtoClassProperty[], classStructure?: Omit<OptionalKind<ClassDeclarationStructure>, 'name'>, structures?: Array<OptionalKind<ImportDeclarationStructure>>): ClassDeclaration;
|
|
19
|
+
export declare function CreatePageDtoClass(sourceFile: SourceFile, className: string, rowType: string | WriterFunction, classStructure?: Omit<OptionalKind<ClassDeclarationStructure>, 'name'>, structures?: Array<OptionalKind<ImportDeclarationStructure>>): ClassDeclaration;
|